.dashboard-page { max-width: 1500px; }
.dashboard-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:1.5rem; }
.dashboard-heading h1 { margin:0; }
.dashboard-generated { margin:.35rem 0 0; color:var(--ink-muted); font-size:.82rem; }
.dashboard-information { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr); gap:1.5rem; border-block:1px solid var(--line); padding:1.1rem 0 1.35rem; }
.dashboard-section-heading h2, .dashboard-rules h2, .dashboard-workbench-heading h2 { margin:0; font-size:1.1rem; }
.dashboard-section-heading p, .dashboard-workbench-heading p { margin:.3rem 0 0; color:var(--ink-muted); font-size:.84rem; }
.dashboard-donut-layout { display:flex; align-items:center; gap:2rem; margin-top:1rem; }
.dashboard-donut { width:176px; height:176px; position:relative; flex:0 0 176px; }
.dashboard-donut svg { width:100%; height:100%; transform:rotate(-90deg); }
.dashboard-donut circle { fill:none; stroke-width:14; }
.dashboard-donut-base { stroke:var(--line); }
.dashboard-donut-segment { stroke-linecap:butt; }
.dashboard-band-1 { stroke:#fff; }
.dashboard-band-2 { stroke:#c9ad58; }
.dashboard-band-3 { stroke:#d77a31; }
.dashboard-band-4 { stroke:#b42318; }
.dashboard-donut-centre { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.dashboard-donut-centre strong { font-size:2.25rem; line-height:1; font-variant-numeric:tabular-nums; }
.dashboard-donut-centre span { margin-top:.3rem; color:var(--ink-muted); font-size:.78rem; }
.dashboard-band-list { min-width:240px; flex:1; }
.dashboard-band { display:grid; grid-template-columns:12px minmax(0,1fr) auto; gap:.65rem; align-items:center; padding:.55rem .6rem; color:var(--ink); text-decoration:none; border-block:1px solid transparent; }
.dashboard-band:hover, .dashboard-band.is-selected { background:var(--surface-subtle); border-color:var(--line); }
.dashboard-band-swatch { width:10px; height:10px; border-radius:50%; border:1px solid var(--line-strong); }
.dashboard-band-copy, .dashboard-band-stat { display:flex; flex-direction:column; }
.dashboard-band-copy span, .dashboard-band-stat span { color:var(--ink-muted); font-size:.75rem; }
.dashboard-band-stat { align-items:end; font-variant-numeric:tabular-nums; }
.dashboard-rules { border-left:1px solid var(--line); padding-left:1.25rem; }
.dashboard-rules dl { margin:1rem 0 0; }
.dashboard-rules dl div { padding:.7rem 0; border-top:1px solid var(--line); }
.dashboard-rules dt { font-weight:600; font-size:.84rem; }
.dashboard-rules dd { margin:.2rem 0 0; color:var(--ink-muted); font-size:.8rem; }
.dashboard-workbench { margin-top:2rem; }
.dashboard-page[aria-busy="true"] { cursor:progress; }
.dashboard-live-status { margin:.75rem 0; color:var(--ink-muted); font-size:.82rem; }
.dashboard-workbench-heading { display:flex; justify-content:space-between; align-items:end; gap:1rem; }
.dashboard-result-count { color:var(--ink-muted); font-size:.82rem; font-variant-numeric:tabular-nums; }
.dashboard-filters { display:flex; align-items:end; gap:.7rem; flex-wrap:wrap; margin:1rem 0; padding-bottom:1rem; border-bottom:1px solid var(--line); }
.dashboard-filters > div { min-width:180px; }
.dashboard-filters .dashboard-search-field { min-width:min(420px,100%); flex:1; }
.dashboard-filters label { display:block; margin-bottom:.25rem; font-size:.78rem; font-weight:600; }
.dashboard-split-view { display:grid; grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr); min-height:430px; border-top:2px solid var(--ink); }
.dashboard-case-list { border-right:1px solid var(--line); }
.dashboard-case-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.6rem; padding:.9rem .8rem; color:var(--ink); text-decoration:none; border-bottom:1px solid var(--line); }
.dashboard-case-row:hover, .dashboard-case-row:focus-visible, .dashboard-case-row.is-selected { background:var(--surface-subtle); }
.dashboard-case-row.is-selected { box-shadow:inset 3px 0 0 var(--ink); }
.dashboard-case-primary, .dashboard-case-secondary { display:flex; flex-direction:column; min-width:0; }
.dashboard-case-primary strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dashboard-case-primary span, .dashboard-case-secondary span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--ink-muted); font-size:.78rem; }
.dashboard-case-metric { display:flex; flex-direction:column; align-items:end; font-variant-numeric:tabular-nums; }
.dashboard-case-metric span { color:var(--ink-muted); font-size:.72rem; }
.dashboard-case-secondary { grid-column:1 / -1; flex-direction:row; justify-content:space-between; gap:.6rem; }
.dashboard-tier { font-weight:600; }
.dashboard-tier-watch { color:#806512; }.dashboard-tier-elevated { color:#a24c0a; }.dashboard-tier-critical { color:var(--danger); }.dashboard-tier-current { color:var(--ink-muted); }
.dashboard-preview { padding:1.1rem 1.25rem; }
.dashboard-preview-heading { display:flex; justify-content:space-between; gap:1rem; padding-bottom:.9rem; border-bottom:1px solid var(--line); }
.dashboard-preview-heading h3 { margin:.1rem 0; font-size:1.3rem; }
.dashboard-preview-heading p { margin:0; color:var(--ink-muted); font-size:.8rem; }
.dashboard-preview-case { font-variant-numeric:tabular-nums; }
.dashboard-preview-status { align-self:start; padding:.2rem .45rem; border:1px solid var(--line-strong); font-size:.75rem; font-weight:600; }
.dashboard-preview-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 1rem; margin:0; }
.dashboard-preview-facts div { padding:.7rem 0; border-bottom:1px solid var(--line); min-width:0; }
.dashboard-preview-facts dt { color:var(--ink-muted); font-size:.72rem; }
.dashboard-preview-facts dd { margin:.18rem 0 0; overflow-wrap:anywhere; font-size:.86rem; }
.dashboard-preview-vor { font-size:1.35rem !important; font-weight:600; font-variant-numeric:tabular-nums; }
.dashboard-timeline { margin-top:1rem; }
.dashboard-timeline h4 { margin:0 0 .5rem; font-size:.9rem; }
.dashboard-timeline ol { list-style:none; padding:0; margin:0; }
.dashboard-timeline li { display:flex; flex-direction:column; gap:.15rem; padding:.55rem 0; border-top:1px solid var(--line); }
.dashboard-timeline li span { color:var(--ink-muted); font-size:.75rem; }
.dashboard-preview-actions { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1rem; }
.dashboard-empty { padding:2.5rem 1rem; text-align:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.dashboard-empty h3 { margin:0; font-size:1rem; }.dashboard-empty p { color:var(--ink-muted); }
@media (max-width:800px) { .dashboard-information { grid-template-columns:1fr; } .dashboard-rules { border-left:0; border-top:1px solid var(--line); padding:1rem 0 0; } .dashboard-split-view { grid-template-columns:1fr; } .dashboard-case-list { border-right:0; } .dashboard-preview { border-top:2px solid var(--ink); padding-inline:.75rem; } }
@media (max-width:520px) { .dashboard-donut-layout { align-items:flex-start; flex-direction:column; gap:1rem; } .dashboard-donut { width:150px; height:150px; flex-basis:150px; align-self:center; } .dashboard-preview-facts { grid-template-columns:repeat(2,minmax(0,1fr)); } .dashboard-filters > div, .dashboard-filters .button { width:100%; } .dashboard-preview-actions .button { width:100%; text-align:center; } }
