.cp-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:20px}.cp-list{display:grid;gap:12px}.cp-card{border:1px solid var(--border-medium);border-radius:10px;transition:background .15s,box-shadow .15s;overflow:hidden}.cp-card:hover{box-shadow:0 2px 8px #0f172a14}.cp-card--losing{border-color:var(--brand-danger)}.cp-card--expanded{background:var(--bg-main)}.cp-card[data-status=profitable]{border-left:4px solid #10B981}.cp-card[data-status=breakeven]{border-left:4px solid #F59E0B}.cp-card[data-status=losing]{border-left:4px solid #EF4444}.cp-card__header{padding:14px 16px;cursor:pointer;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.cp-card__title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cp-card__building{font-weight:700;color:var(--text-primary);font-size:var(--font-size-base)}.cp-card__customer{font-size:var(--font-size-sm);color:var(--text-secondary)}.cp-card__profit-hero{font-size:clamp(1.25rem,1.8vw,1.5rem);font-weight:800;letter-spacing:-.03em;line-height:1}.cp-card__profit-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.cp-card__summary{display:flex;align-items:center;gap:16px;padding:0 16px 12px;flex-wrap:wrap}.cp-card__summary-stat{display:flex;align-items:center;gap:5px;font-size:var(--font-size-sm);color:var(--text-secondary)}.cp-card__summary-stat strong{color:var(--text-primary);font-weight:600}.cp-card__body{padding:0 16px 16px;border-top:1px solid var(--border-light)}.cp-card__kpi-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:14px 0}.cp-card__kpi{text-align:center}.cp-card__kpi-value{font-size:clamp(1rem,1.4vw,1.125rem);font-weight:700;color:var(--text-primary);line-height:1.2}.cp-card__kpi-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-top:2px}.cp-card__perf-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px 0;border-top:1px solid var(--border-light)}.cp-card__perf-item{display:flex;align-items:center;gap:6px}.cp-card__perf-item .icon{flex-shrink:0}.cp-card__perf-value{font-weight:600;font-size:var(--font-size-sm);color:var(--text-primary)}.cp-card__perf-label{font-size:11px;color:var(--text-muted)}.cp-card__profit-bar-wrap{padding:12px 0;border-top:1px solid var(--border-light)}.cp-card__profit-bar-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.cp-card__profit-bar-pct{font-size:clamp(1rem,1.4vw,1.125rem);font-weight:700}.cp-card__profit-bar{width:100%;height:10px;background:var(--bg-tertiary);border-radius:5px;overflow:hidden;position:relative}.cp-card__profit-bar-fill{height:100%;border-radius:5px;transition:width .3s ease}.cp-card__issues{padding:10px 0;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:6px}.cp-card__issue{display:flex;align-items:flex-start;gap:6px;font-size:var(--font-size-sm);color:var(--text-secondary)}.cp-card__issue .icon{flex-shrink:0;margin-top:2px}.cp-card__actions{display:flex;gap:10px;padding-top:14px;border-top:1px solid var(--border-light);flex-wrap:wrap}.cp-card__renewal-delta{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-sm);font-weight:600;padding:3px 8px;border-radius:6px;background:color-mix(in srgb,var(--brand-warning) 10%,transparent);color:var(--brand-warning)}@media (max-width: 900px){.cp-card__kpi-row{grid-template-columns:repeat(3,1fr)}.cp-card__perf-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.cp-card__kpi-row{grid-template-columns:repeat(2,1fr)}.cp-card__perf-row{grid-template-columns:1fr 1fr}.cp-card__actions{flex-direction:column}}.rlp-hero-numbers{display:flex;gap:32px;margin-top:12px;flex-wrap:wrap}.rlp-hero-stat{display:flex;flex-direction:column}.rlp-hero-value{font-size:clamp(1.75rem,2.4vw,2.5rem);font-weight:800;letter-spacing:-.03em;line-height:1}.rlp-hero-value--danger{color:#dc2626}.rlp-hero-value--success{color:#059669}.rlp-hero-value--warning{color:#d97706}.rlp-hero-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:4px}.rlp-hero-label--danger{color:#b91c1c}.rlp-hero-label--success{color:#059669}.rlp-hero-label--warning{color:#92400e}.rlp-card-list{display:grid;gap:14px}.rlp-card{border:1px solid var(--border-medium);border-radius:10px;padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:flex-start;transition:box-shadow .15s}.rlp-card:hover{box-shadow:0 2px 8px #0f172a14}.rlp-card--detected{border-left:4px solid #DC2626}.rlp-card--reviewed{border-left:4px solid var(--color-primary)}.rlp-card--recovered{border-left:4px solid #10B981;opacity:.85}.rlp-card--lost{border-left:4px solid #9CA3AF;opacity:.75}.rlp-card__head{display:flex;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}.rlp-card__icon-wrap{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rlp-card__type-label{font-size:var(--font-size-base);font-weight:700;color:var(--text-primary)}.rlp-card__meta{font-size:var(--font-size-sm);color:var(--text-secondary)}.rlp-card__issue-box{background:color-mix(in srgb,var(--brand-warning) 8%,transparent);border:1px solid color-mix(in srgb,var(--brand-warning) 20%,transparent);border-radius:8px;padding:10px 14px;margin-bottom:10px}.rlp-card__issue-label{font-size:10px;font-weight:700;color:var(--brand-warning);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.rlp-card__issue-text{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:4px}.rlp-card__issue-detail{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5}.rlp-card__footer{display:flex;align-items:center;gap:12px;font-size:var(--font-size-sm);color:var(--text-secondary)}.rlp-card__right{text-align:right;min-width:160px;display:flex;flex-direction:column;align-items:flex-end}.rlp-card__loss-amount{font-size:clamp(1.25rem,1.8vw,1.625rem);font-weight:800;letter-spacing:-.02em;line-height:1;margin-bottom:4px}.rlp-card__loss-amount--danger{color:#dc2626}.rlp-card__loss-amount--success{color:#10b981}.rlp-card__loss-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px}.rlp-card__actions{display:flex;flex-direction:column;gap:6px}@media (max-width: 700px){.rlp-card{grid-template-columns:1fr}.rlp-card__right{flex-direction:row;align-items:center;gap:16px;text-align:left;min-width:0}.rlp-hero-numbers{gap:20px}}
