:root{--bg:#f3f5f8;--surface:#fff;--surface2:#eef2f6;--line:#d6dde6;--ink:#152235;--muted:#56657a;--nav:#14243b;--navink:#c9d4e3;--navhi:#fff;--accent:#1a5fa8;--accent-ink:#fff;--ok:#1e7a46;--warn:#9a6200;--bad:#b42318;--info:#5b3fa6;--ok-bg:#e6f4ec;--warn-bg:#fdf3e1;--bad-bg:#fdecea;--info-bg:#efeafb;--neutral-bg:#eef2f6;--sans:"Public Sans", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--r:8px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1622;--surface:#172131;--surface2:#1d2a3d;--line:#2c3b52;--ink:#e6ecf4;--muted:#9fb0c6;--nav:#0b111b;--navink:#9fb0c6;--navhi:#fff;--accent:#5b9be0;--accent-ink:#0b111b;--ok:#5fc98a;--warn:#e8b54f;--bad:#f07a6e;--info:#b39cf0;--ok-bg:#12301f;--warn-bg:#33270f;--bad-bg:#3a1714;--info-bg:#241b3d;--neutral-bg:#1d2a3d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1622;--surface:#172131;--surface2:#1d2a3d;--line:#2c3b52;--ink:#e6ecf4;--muted:#9fb0c6;--nav:#0b111b;--navink:#9fb0c6;--navhi:#fff;--accent:#5b9be0;--accent-ink:#0b111b;--ok:#5fc98a;--warn:#e8b54f;--bad:#f07a6e;--info:#b39cf0;--ok-bg:#12301f;--warn-bg:#33270f;--bad-bg:#3a1714;--info-bg:#241b3d;--neutral-bg:#1d2a3d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--sans);margin:0}a{color:var(--accent)}code{font-family:var(--mono);font-size:.9em}h1{margin:0 0 4px;font-size:1.5rem}h2{margin:0;font-size:1.05rem}h3{font-size:.95rem}.muted{color:var(--muted)}.small{font-size:.85rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--accent);color:var(--accent-ink);z-index:10;padding:8px 12px;position:absolute;top:0;left:-999px}.skip:focus{left:8px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}main:focus{outline:none}.shell{grid-template-rows:56px 1fr;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.topbar{background:var(--nav);color:var(--navhi);grid-column:1/-1;align-items:center;gap:16px;padding:0 16px;display:flex}.brand{letter-spacing:.04em;color:var(--navhi);align-items:center;gap:8px;font-weight:700;display:flex}.brand svg{color:#5b9be0}.topbar-right{color:var(--navink);align-items:center;gap:12px;margin-left:auto;font-size:.85rem;display:flex}.topbar .btn-ghost{color:var(--navhi)}.roles{opacity:.8}.nav-toggle{display:none}.nav{background:var(--nav);color:var(--navink);padding:8px 8px 24px;overflow-y:auto}.nav-group-title{text-transform:uppercase;letter-spacing:.08em;opacity:.7;padding:14px 10px 4px;font-size:.7rem}.nav-link{color:var(--navink);border-radius:6px;justify-content:space-between;align-items:center;padding:7px 10px;text-decoration:none;display:flex}.nav-link:hover{color:var(--navhi);background:#ffffff0f}.nav-link.active{background:var(--accent);color:#fff}.nav-view{opacity:.8;border:1px solid;border-radius:4px;padding:0 4px;font-size:.65rem}.main{width:100%;max-width:1280px;padding:24px}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.page-actions,.row-actions{flex-wrap:wrap;gap:8px;display:flex}.code-tag{font-family:var(--mono);opacity:.7;font-size:.75rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);margin-bottom:16px;padding:16px}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.grid2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:var(--r);padding:12px 14px}.stat-ok{border-left-color:var(--ok)}.stat-warn{border-left-color:var(--warn)}.stat-bad{border-left-color:var(--bad)}.stat-info{border-left-color:var(--info)}.stat-label{color:var(--muted);font-size:.8rem}.stat-value{font-size:1.6rem;font-weight:700}.stat-hint{color:var(--muted);font-size:.75rem}.shortcuts{columns:2;margin:0;padding-left:18px}.shortcuts li{margin:6px 0}.help{background:var(--surface2);border-radius:var(--r);margin-bottom:16px;padding:8px 12px}.help summary{cursor:pointer;font-weight:600}.btn{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:6px;padding:7px 14px;font-size:.9rem}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-danger{background:var(--bad);border-color:var(--bad);color:#fff}.btn-ghost{background:0 0;border-color:#0000}.chip{font:inherit;border:1px solid var(--line);background:var(--surface2);color:var(--ink);cursor:pointer;border-radius:999px;margin:2px;padding:3px 10px;font-size:.8rem}.badge{white-space:nowrap;border-radius:999px;margin-right:4px;padding:1px 8px;font-size:.75rem;font-weight:600;display:inline-block}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.badge-bad{background:var(--bad-bg);color:var(--bad)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-neutral{background:var(--neutral-bg);color:var(--muted)}.alert{border-radius:var(--r);border:1px solid;margin-bottom:12px;padding:10px 14px}.alert-ok{background:var(--ok-bg);color:var(--ok)}.alert-warn{background:var(--warn-bg);color:var(--warn)}.alert-bad{background:var(--bad-bg);color:var(--bad)}.alert-info{background:var(--info-bg);color:var(--info)}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.search input,.filter input,.filter select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:6px;padding:6px 10px}.search input{width:260px}.filter{color:var(--muted);flex-direction:column;gap:2px;font-size:.8rem;display:flex}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.9rem}.table th{text-align:left;color:var(--muted);border-bottom:2px solid var(--line);white-space:nowrap;padding:8px;font-weight:600}.table td{border-bottom:1px solid var(--line);vertical-align:top;padding:8px}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--surface2)}.empty{text-align:center;color:var(--muted);padding:24px}.pager{justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.spinner{color:var(--muted);align-items:center;gap:8px;padding:12px;display:flex}.spinner-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;animation:1s infinite alternate pulse}@keyframes pulse{0%{opacity:.3}to{opacity:1}}@media (prefers-reduced-motion:reduce){.spinner-dot{animation:none}}.form{flex-direction:column;gap:12px;display:flex}.field{flex-direction:column;gap:4px;display:flex}.field label{font-size:.9rem;font-weight:600}.field input,.field textarea,.field select{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:6px;padding:8px 10px}.field input[aria-invalid],.field textarea[aria-invalid],.field select[aria-invalid]{border-color:var(--bad)}.field-check label,label.field-check{align-items:center;gap:8px;font-weight:400;display:flex}.req{color:var(--bad)}.hint{color:var(--muted);font-size:.8rem}.field-error{color:var(--bad);font-size:.8rem}.form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.examples{margin-right:auto}.modal{border:1px solid var(--line);background:var(--surface);width:min(720px,94vw);color:var(--ink);border-radius:10px;padding:0}.modal::backdrop{background:#0a121e8c}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.modal-body{max-height:70vh;padding:18px;overflow-y:auto}.modal-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.details{grid-template-columns:1fr 1fr;gap:8px 16px;margin:0;display:grid}.details dt{color:var(--muted);font-size:.8rem}.details dd{margin:0}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:16px;display:flex}.tab{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:8px 14px}.tab-on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.detail{margin-top:12px}.pre{white-space:pre-wrap}.answer-text{white-space:pre-wrap;font-size:1rem}.answer-meta{margin-bottom:8px}.sources{color:var(--muted);padding-left:18px;font-size:.85rem}.sources li.cited{color:var(--ink)}.heatmap{border-collapse:separate;border-spacing:3px}.heatmap th{color:var(--muted);padding:4px;font-size:.75rem;font-weight:600}.hm{text-align:center;border-radius:4px;width:46px;height:36px;font-weight:700}.hm-ok{background:var(--ok-bg);color:var(--ok)}.hm-warn{background:var(--warn-bg);color:var(--warn)}.hm-bad{background:var(--bad-bg);color:var(--bad)}.bars{margin:0;padding:0;list-style:none}.bars li{grid-template-columns:80px 1fr 40px;align-items:center;gap:8px;margin:8px 0;display:grid}.bar-track{background:var(--surface2);border-radius:4px;height:14px;overflow:hidden}.bar-fill{background:var(--accent);height:100%;display:block}.sev-critical,.sev-high{background:var(--bad)}.sev-medium{background:var(--warn)}.sev-low{background:var(--muted)}.bar-n{text-align:right;font-variant-numeric:tabular-nums}.signin{place-items:center;min-height:100vh;padding:16px;display:grid}.signin-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:14px;width:min(520px,100%);padding:28px;display:flex}.notice{background:var(--surface2);border-radius:var(--r);padding:12px 14px;font-size:.88rem}.notice h2{margin-bottom:4px;font-size:.95rem}.dev textarea{width:100%;font-family:var(--mono);font-size:.75rem}@media (max-width:860px){.shell{grid-template-columns:1fr}.nav{z-index:5;width:260px;display:none;position:fixed;top:56px;bottom:0;left:0}.nav-open{display:block}.nav-toggle{display:inline-block}.roles,.who .muted{display:none}.grid2,.details{grid-template-columns:1fr}.main{padding:16px}.search input{width:100%}.shortcuts{columns:1}}.field-label{margin-bottom:.35rem;font-weight:600;display:block}.modal textarea{width:100%}.logo{color:#5b9be0}.theme-toggle{padding:4px 10px;font-size:1rem}.btn-sm{padding:3px 10px;font-size:.8rem}.tags{flex-wrap:wrap;gap:4px;display:inline-flex}.tab-count{background:var(--neutral-bg);color:var(--muted);border-radius:999px;margin-left:6px;padding:0 7px;font-size:.72rem}.alert-title{margin-bottom:2px;display:block}.stat-link{margin-top:6px;font-size:.8rem}.stat-link a{text-decoration:none}.filter label{color:var(--muted);font-size:.8rem}.th-sort{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:600;display:inline-flex}.sort-ind{opacity:.55;font-size:.7rem}th[aria-sort] .sort-ind{opacity:1;color:var(--accent)}.pager{flex-wrap:wrap}.modal-wide{width:min(1040px,96vw)}.details-row{display:contents}.citations{margin:6px 0;padding-left:0;font-size:.88rem;list-style:none}.citations li{margin:3px 0}.cite-key{color:var(--accent);margin-right:4px}.advisory{background:var(--info-bg);color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--info);border-radius:var(--r);align-items:flex-start;gap:10px;margin-bottom:12px;padding:10px 14px;font-size:.9rem;display:flex}.advisory-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--info);white-space:nowrap;border:1px solid;border-radius:4px;padding:1px 6px;font-size:.7rem;font-weight:700}.env-banner{background:var(--warn-bg);color:var(--warn);border:1px solid var(--line);border-radius:var(--r);margin-bottom:14px;padding:6px 12px;font-size:.85rem}.grid3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.grid2>.card,.grid3>.card{margin-bottom:0}.section-gap{margin-bottom:16px}.link-btn{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.stepper ol{flex-wrap:wrap;gap:0;margin:0;padding:0;list-style:none;display:flex}.step{flex:1 1 0;align-items:flex-start;gap:8px;min-width:110px;padding:4px 12px 4px 0;display:flex;position:relative}.step:not(:last-child):after{content:"";background:var(--line);height:2px;position:absolute;top:15px;left:34px;right:8px}.step-done:not(:last-child):after{background:var(--ok)}.step-dot{z-index:1;background:var(--surface2);width:26px;height:26px;color:var(--muted);border:2px solid var(--line);border-radius:50%;flex:none;place-items:center;font-size:.75rem;font-weight:700;display:grid;position:relative}.step-done .step-dot{background:var(--ok);border-color:var(--ok);color:#fff}.step-current .step-dot{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 4px var(--info-bg)}.step-failed .step-dot{background:var(--bad);border-color:var(--bad);color:#fff}.step-text{z-index:1;background:var(--surface);flex-direction:column;margin-top:3px;padding-right:6px;display:flex;position:relative}.step-label{font-size:.85rem;font-weight:600}.step-todo .step-label{color:var(--muted);font-weight:400}.step-actor{color:var(--muted);font-size:.72rem}.stepper-compact .step{min-width:70px}.stepper-compact .step-dot{width:20px;height:20px;font-size:.65rem}.stepper-compact .step:not(:last-child):after{top:12px;left:26px}.stepper-compact .step-label{font-size:.75rem}.stepper-foot{color:var(--muted);margin-top:8px;font-size:.85rem}.bars li{grid-template-columns:minmax(90px,160px) 1fr 52px}.bar-label{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.fill-ok{background:var(--ok)}.fill-warn{background:var(--warn)}.fill-bad{background:var(--bad)}.fill-info{background:var(--info)}.fill-neutral{background:var(--muted)}.columns{margin:0}.columns-plot{border-bottom:1px solid var(--line);align-items:flex-end;gap:6px;height:150px;padding-top:18px;display:flex}.col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:0;height:100%;display:flex}.col-bar{background:var(--accent);border-radius:3px 3px 0 0;width:70%;max-width:44px}.col-n{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem}.col-label{color:var(--muted);white-space:nowrap;margin-top:4px;font-size:.7rem;position:relative;top:18px}.columns{padding-bottom:20px}.meter{grid-template-columns:90px auto;align-items:center;gap:6px;display:inline-grid}.meter .bar-track{height:8px}.meter-n{font-variant-numeric:tabular-nums;font-size:.8rem}.task-list{margin:0;padding:0;list-style:none}.task{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 4px;display:grid}.task:last-child{border-bottom:0}.task-title{font-weight:600}.task-meta{color:var(--muted);font-size:.8rem}.wf-tag{font-family:var(--mono);color:var(--info);background:var(--info-bg);white-space:nowrap;border-radius:4px;padding:1px 6px;font-size:.72rem}.role-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.role-btn{font:inherit;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;padding:8px 10px}.role-btn:hover:not(:disabled){border-color:var(--accent)}.role-btn:disabled{opacity:.5;cursor:not-allowed}.role-btn small{color:var(--muted);font-size:.75rem;display:block}.gallery-section{margin-bottom:28px}.gallery-section>h2{margin-bottom:8px;font-size:1.1rem}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{border:1px solid var(--line);border-radius:6px;width:120px;font-size:.72rem;overflow:hidden}.swatch span{height:36px;display:block}.swatch code{padding:4px 6px;display:block}.w-0{width:0%}.h-0{height:0%}.w-1{width:5%}.h-1{height:5%}.w-2{width:10%}.h-2{height:10%}.w-3{width:15%}.h-3{height:15%}.w-4{width:20%}.h-4{height:20%}.w-5{width:25%}.h-5{height:25%}.w-6{width:30%}.h-6{height:30%}.w-7{width:35%}.h-7{height:35%}.w-8{width:40%}.h-8{height:40%}.w-9{width:45%}.h-9{height:45%}.w-10{width:50%}.h-10{height:50%}.w-11{width:55%}.h-11{height:55%}.w-12{width:60%}.h-12{height:60%}.w-13{width:65%}.h-13{height:65%}.w-14{width:70%}.h-14{height:70%}.w-15{width:75%}.h-15{height:75%}.w-16{width:80%}.h-16{height:80%}.w-17{width:85%}.h-17{height:85%}.w-18{width:90%}.h-18{height:90%}.w-19{width:95%}.h-19{height:95%}.w-20{width:100%}.h-20{height:100%}@media (max-width:860px){.grid3,.task,.role-grid{grid-template-columns:1fr}.step{min-width:45%}}.sw-accent{background:var(--accent)}.sw-ok{background:var(--ok)}.sw-warn{background:var(--warn)}.sw-bad{background:var(--bad)}.sw-info{background:var(--info)}.sw-nav{background:var(--nav)}.sw-surface2{background:var(--surface2)}.sw-line{background:var(--line)}.nav-count{background:var(--bad);color:#fff;border-radius:999px;padding:0 7px;font-size:.7rem;font-weight:700}.brand-signin{color:var(--ink)}.brand-signin h1{margin:0}.dev{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:12px;display:flex}.dev h2{font-size:.95rem}a.btn{text-decoration:none;display:inline-block}.step:not(:last-child):after{left:26px}.stepper-compact .step:not(:last-child):after{left:20px}.step-text{margin-left:-6px;padding:0 6px}.details{grid-template-columns:minmax(150px,max-content) 1fr;margin:12px 0}.stepper{margin-bottom:14px}:root{--cat0:#2a78d6;--cat1:#eb6834;--cat2:#1baf7a;--cat3:#eda100;--cat4:#e87ba4;--cat5:#6250d6;--gold:#b08d3c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--cat0:#3987e5;--cat1:#d95926;--cat2:#199e70;--cat3:#c98500;--cat4:#d55181;--cat5:#9085e9;--gold:#d4b26a}}:root[data-theme=dark]{--cat0:#3987e5;--cat1:#d95926;--cat2:#199e70;--cat3:#c98500;--cat4:#d55181;--cat5:#9085e9;--gold:#d4b26a}.seg-ok{stroke:var(--ok);background:var(--ok)}.seg-warn{stroke:var(--warn);background:var(--warn)}.seg-bad{stroke:var(--bad);background:var(--bad)}.seg-info{stroke:var(--info);background:var(--info)}.seg-neutral{stroke:var(--muted);background:var(--muted)}.seg-cat0{stroke:var(--cat0);background:var(--cat0)}.seg-cat1{stroke:var(--cat1);background:var(--cat1)}.seg-cat2{stroke:var(--cat2);background:var(--cat2)}.seg-cat3{stroke:var(--cat3);background:var(--cat3)}.seg-cat4{stroke:var(--cat4);background:var(--cat4)}.seg-cat5{stroke:var(--cat5);background:var(--cat5)}.donut{flex-wrap:wrap;align-items:center;gap:18px;margin:0;display:flex}.donut-svg{flex:none;width:150px;height:150px}.donut-track{fill:none;stroke:var(--surface2);stroke-width:18px}.donut-seg{fill:none;stroke-width:18px;transition:stroke-width .15s}.seg-click{cursor:pointer}.seg-click:hover{stroke-width:22px}.donut-total{font:700 26px var(--sans);fill:var(--ink)}.donut-caption{font:11px var(--sans);fill:var(--muted);text-transform:uppercase;letter-spacing:.06em}.legend{gap:6px;min-width:160px;margin:0;padding:0;font-size:.88rem;list-style:none;display:grid}.legend li{grid-template-columns:12px 1fr auto;align-items:center;gap:8px;display:grid}.swatch{border-radius:3px;width:12px;height:12px;display:inline-block}.legend-n{font-variant-numeric:tabular-nums;color:var(--muted)}.bars-click .bar-label{text-align:left;text-decoration:none}.bars-click .bar-label:hover{text-decoration:underline}.heat-wrap{align-items:center;gap:6px;display:flex}.heat-axis-y{writing-mode:vertical-rl;color:var(--muted);letter-spacing:.05em;font-size:.75rem;font-weight:600;transform:rotate(180deg)}.heat-axis-x{text-align:center}.heatmap-lg .hm{width:58px;height:44px;padding:0;font-size:1rem}.hm-empty{opacity:.45}.hm-btn{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;width:100%;height:100%;font-weight:700}.hm-btn:hover{box-shadow:inset 0 0 0 2px}.kpis{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:16px;display:grid}.kpi{text-align:left;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--line);border-radius:var(--r);flex-direction:column;gap:2px;min-height:108px;padding:12px 14px;display:flex}.kpi-ok{border-top-color:var(--ok)}.kpi-warn{border-top-color:var(--warn)}.kpi-bad{border-top-color:var(--bad)}.kpi-info{border-top-color:var(--info)}.kpi-click{cursor:pointer;transition:box-shadow .15s,transform .15s}.kpi-click:hover{transform:translateY(-1px);box-shadow:0 4px 14px #0a121e1f}.kpi-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.kpi-value{font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700;line-height:1.2}.kpi-unit{color:var(--muted);margin-left:2px;font-size:.9rem;font-weight:600}.kpi-hint{color:var(--muted);font-size:.78rem}.kpi-open{color:var(--accent);margin-top:auto;font-size:.75rem;font-weight:600}@media (prefers-reduced-motion:reduce){.kpi-click,.donut-seg{transition:none}.kpi-click:hover{transform:none}}.marking{text-align:center;letter-spacing:.12em;background:var(--nav);color:#fff;border-radius:4px;margin-bottom:12px;padding:3px;font-size:.78rem;font-weight:700}.dash-hero{background:linear-gradient(120deg, var(--nav) 0%, #1d3a63 100%);color:#fff;border-bottom:3px solid var(--gold);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;padding:20px 24px;display:flex}.dash-hero h1{color:#fff;letter-spacing:.01em;font-size:1.6rem}.dash-hero .dash-sub{color:#c9d4e3;margin:2px 0 0;font-size:.9rem}.dash-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-size:.72rem;font-weight:700}.dash-meta{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.live{color:#c9d4e3;align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.live-dot{background:#5fc98a;border-radius:50%;width:9px;height:9px;animation:1.6s infinite alternate pulse;box-shadow:0 0 0 3px #5fc98a40}.live-off .live-dot{box-shadow:none;background:#9fb0c6;animation:none}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}.dash-hero .btn-ghost{color:#fff;background:0 0;border:1px solid #ffffff59}.dash-hero .btn-ghost:hover{background:#ffffff1f}.dash-hero .btn-ghost:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.export-bar{flex-wrap:wrap;gap:6px;display:flex}.export-bar .btn{color:#fff;background:#ffffff14;border-color:#ffffff4d}.export-bar .btn:hover:not(:disabled){background:#ffffff2e;border-color:#fff}.highlights{gap:8px;margin:0;padding-left:0;list-style:none;display:grid}.highlights li{padding-left:22px;position:relative}.highlights li:before{content:"";background:var(--gold);border-radius:2px;width:8px;height:8px;position:absolute;top:.55em;left:4px;transform:rotate(45deg)}.drill-bar{background:var(--info-bg);border:1px solid var(--line);border-radius:var(--r);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;font-size:.88rem;display:flex}.timeline{border-left:2px solid var(--line);margin:0;padding:0 0 0 18px;list-style:none}.timeline li{padding:0 0 14px 10px;position:relative}.timeline li:before{content:"";background:var(--surface);border:2px solid var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-25px}.timeline .tl-head{font-weight:600}.timeline .tl-meta{color:var(--muted);font-size:.8rem}.timeline .tl-why{margin:2px 0 0}.action-row{flex-wrap:wrap;gap:8px;display:flex}.plan{background:var(--surface2);border-radius:var(--r);padding:10px 14px}.plan ul{margin:4px 0 8px}.score{text-align:center;border-radius:6px;min-width:30px;padding:1px 6px;font-weight:700;display:inline-block}.score-bad{background:var(--bad-bg);color:var(--bad)}.score-warn{background:var(--warn-bg);color:var(--warn)}.score-ok{background:var(--ok-bg);color:var(--ok)}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:16px;margin-bottom:16px;display:grid}.dash-grid>.card{margin-bottom:0}@media (max-width:860px){.dash-grid{grid-template-columns:1fr}.dash-meta{align-items:flex-start}}
/*$vite$:1*/