/* Portfolio dashboard and sector news desk */
.workspace[data-view="portfolio"] .page-heading,.workspace[data-view="portfolio"] .quick-metrics,
.workspace[data-view="portfolio"] .tabs,
.workspace[data-view="sectornews"] .page-heading,.workspace[data-view="sectornews"] .quick-metrics,
.workspace[data-view="sectornews"] .tabs {display:none}
.workspace[data-view="portfolio"] .page-content,.workspace[data-view="sectornews"] .page-content {padding-top:42px}
.workspace[data-view="portfolio"] .panel,.workspace[data-view="sectornews"] .panel {padding-top:0}

.pf-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}
.pf-tiles .metric-tile{min-height:112px}
.pf-tiles .metric-value{white-space:normal;overflow-wrap:break-word}
.pf-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}
.pf-card-gap{margin-bottom:16px}
.pf-total-form{margin:12px 0 0}
.pf-total-form label{flex:0 1 260px}
.pf-hint{font-size:11px;color:var(--muted);margin:4px 0 0}

/* Horizontal bars share one 0–100% scale of the total portfolio value. */
.pf-bars{display:flex;flex-direction:column;gap:12px;margin-top:6px}
.pf-bar-row{display:grid;grid-template-columns:minmax(110px,190px) minmax(0,1fr) 56px;gap:12px;align-items:center;
  padding:4px 6px;margin:0 -6px;border-radius:8px}
.pf-bar-row:hover{background:var(--ct-hover)}
.pf-bar-label{font-size:11px;font-weight:700;color:var(--text);min-width:0;overflow-wrap:anywhere}
.pf-bar-label small{display:block;font-weight:500;color:var(--muted);font-size:10px;margin-top:2px}
.pf-bar-track{height:12px;border-radius:4px;background:var(--surface2);overflow:hidden}
.pf-bar-fill{display:block;height:100%;min-width:2px;background:var(--primary);border-radius:0 4px 4px 0}
.pf-bar-value{font-size:11px;font-weight:800;color:var(--text);text-align:right;font-variant-numeric:tabular-nums}

.pf-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-top:6px}
.pf-stat{border-top:1px solid var(--edge);padding-top:10px}
.pf-stat span{display:block;font-size:10px;color:var(--muted)}
.pf-stat strong{display:block;font-size:15px;font-weight:800;margin-top:3px;font-variant-numeric:tabular-nums}
.pf-stat small{display:block;font-size:10px;color:var(--soft);margin-top:2px}
.pf-warnings{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-direction:column;gap:8px}
.pf-warnings li{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.55;color:var(--text);
  background:var(--surface2);border:1px solid var(--edge);border-radius:10px;padding:9px 11px}
.pf-warnings li .pf-icon{flex:none;font-weight:800}
.pf-ok{font-size:11px;color:var(--muted);margin-top:12px}

.pf-sector-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pf-sector{border:1px solid var(--edge);border-radius:13px;padding:15px;background:var(--surface)}
.pf-sector h4{margin:0;font-size:13px;font-weight:800;display:flex;justify-content:space-between;gap:10px}
.pf-sector p{font-size:11px;color:var(--muted);margin:6px 0 10px;line-height:1.55}
.pf-sector ul{margin:0;padding-left:17px;font-size:11px;line-height:1.6;color:var(--text)}
.pf-sector li span{color:var(--muted)}
.pf-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.pf-chip{border-radius:999px;background:var(--surface2);color:var(--muted);padding:4px 9px;font-size:10px;font-weight:700}
.pf-overlap{border-top:1px solid var(--edge);padding:11px 0;font-size:11px;line-height:1.6}
.pf-overlap:first-of-type{border-top:0}
.pf-overlap strong{font-size:12px}

.pf-table td:first-child small{display:block;color:var(--muted);font-size:10px;white-space:normal;max-width:220px}
.pf-table .pf-actions{display:flex;gap:6px;justify-content:flex-end}
.pf-source{display:block;font-size:9px;color:var(--soft);margin-top:2px}
.pf-table td.pf-sector-cell{text-align:left}

.sn-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.sn-head h3{margin:0}
.sn-section{margin-bottom:16px}

@media(max-width:1100px){.pf-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-grid,.pf-sector-list{grid-template-columns:1fr}}
@media(max-width:660px){
  .workspace[data-view="portfolio"] .page-content,.workspace[data-view="sectornews"] .page-content{padding-top:21px}
  .pf-bar-row{grid-template-columns:minmax(0,1fr) 48px;gap:6px 10px}
  .pf-bar-track{grid-column:1 / -1;grid-row:2}
  .pf-stats{grid-template-columns:1fr}
  .pf-tiles .metric-value{font-size:17px}
}
