:root{--bg:#0d0e12;--surface:#15161c;--surface2:#1b1c23;--line:#292b34;--text:#f2f2f5;--muted:#999ca8;--violet:#7c5cff;--violet2:#a991ff;--cyan:#31c7d9;--green:#35d07f;--orange:#ff9f43;--red:#ff6174}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,sans-serif;font-size:13px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.topbar{height:60px;position:sticky;top:0;z-index:20;background:#0d0e12ee;backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;gap:34px}.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:700;font-size:11px;line-height:1.05;letter-spacing:.04em}.brand small{font-size:8px;color:var(--muted)}.mark{width:31px;height:31px;border-radius:7px;background:linear-gradient(135deg,var(--violet),#4f32c7);display:grid;place-items:center;font-size:17px}.topbar nav{display:flex;align-self:stretch;gap:4px}.topbar nav a{color:var(--muted);text-decoration:none;padding:0 13px;display:flex;align-items:center;border-bottom:2px solid transparent;font-size:12px}.topbar nav a:hover,.topbar nav a.active{color:var(--text);border-color:var(--violet)}.header-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.header-actions>a{color:var(--text);text-decoration:none;border:1px solid var(--line);padding:8px 11px;border-radius:6px}.fresh{display:flex;align-items:center;gap:7px;color:var(--muted);font:10px "DM Mono"}.fresh i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green)}.fresh.stale i{background:var(--red);box-shadow:0 0 10px var(--red)}.refresh-button{height:32px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:6px;padding:0 10px;background:var(--surface);color:var(--muted);font:500 9px "DM Mono";cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.refresh-button:hover{border-color:#4c4f5c;color:var(--text);background:var(--surface2)}.refresh-button:disabled{cursor:wait;opacity:.76}.refresh-button[data-state="success"]{border-color:#276744;color:var(--green);background:#10241a}.refresh-button[data-state="error"]{border-color:#74303a;color:var(--red);background:#281217}.refresh-icon{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.refresh-button.is-refreshing .refresh-icon{animation:refresh-spin .8s linear infinite}@keyframes refresh-spin{to{transform:rotate(360deg)}}main{width:min(1440px,calc(100% - 48px));margin:auto;padding-bottom:80px}.dashboard-head{padding:36px 0 24px;display:flex;justify-content:space-between;align-items:flex-end}.crumb{font-size:11px;color:var(--muted);margin-bottom:15px}.dashboard-head h1{font-size:30px;letter-spacing:-.04em;margin:0 0 7px}.dashboard-head p{color:var(--muted);margin:0}.controls{display:flex;gap:12px;align-items:flex-end}.controls label{font-size:10px;color:var(--muted);display:grid;gap:6px}.controls select{background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--text);padding:9px 34px 9px 10px}.range{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:3px}.range button,.tabs button{border:0;background:transparent;color:var(--muted);font:500 10px "DM Mono";padding:7px 10px;border-radius:4px;cursor:pointer}.range button.active,.tabs button.active{background:var(--violet);color:white}.notice{background:#181525;border:1px solid #342b5a;color:#c9c0ec;padding:11px 14px;border-radius:7px;font-size:11px;line-height:1.5}.anchor{scroll-margin-top:76px;padding-top:36px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-title>div{display:flex;align-items:center;gap:10px}.section-title span{font:10px "DM Mono";color:var(--violet2);background:#211c38;padding:5px 7px;border-radius:4px}.section-title h2{margin:0;font-size:17px}.section-title>p{margin:0;color:var(--muted);font:10px "DM Mono"}.kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:10px}.kpi-grid.small{grid-template-columns:repeat(4,1fr)}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px;min-height:112px}.kpi label{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;min-height:28px}.kpi strong{display:block;font-size:24px;letter-spacing:-.04em;margin:6px 0}.kpi small{color:var(--muted);font:9px "DM Mono"}.grid{display:grid;gap:10px}.grid.two{grid-template-columns:1.45fr 1fr}.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:0}.panel.wide{grid-column:auto}.panel-head{height:65px;padding:14px 16px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start}.panel-head h3,.method h3{font-size:13px;margin:0 0 5px}.panel-head p{font-size:10px;color:var(--muted);margin:0}.legend{display:flex;gap:12px;color:var(--muted);font:9px "DM Mono"}.legend span{display:flex;align-items:center}.legend i{width:7px;height:7px;border-radius:2px;display:inline-block;margin-right:5px}.violet{background:var(--violet)}.cyan{background:var(--cyan)}.chart{height:290px;padding:16px}.chart.compact{height:240px}.chart svg{width:100%;height:100%;overflow:visible}.gridline{stroke:#292b34;stroke-width:1}.axis-label{fill:#777b88;font:9px "DM Mono"}.chart-line{fill:none;stroke:var(--violet);stroke-width:2}.chart-area{fill:url(#area)}.chart-bar{fill:var(--violet)}.chart-bar.alt{fill:var(--cyan)}.hover-zone{fill:transparent;cursor:crosshair}.bars{padding:16px;display:grid;gap:13px;min-height:290px;align-content:start}.bar-row{display:grid;grid-template-columns:52px 1fr 90px;gap:10px;align-items:center;font:10px "DM Mono"}.bar-row>span{color:var(--muted)}.bar-track{height:8px;background:#24262e;border-radius:8px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--violet),var(--violet2));border-radius:8px}.bar-row b{text-align:right;font-weight:500}.donut-wrap{height:290px;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:25px}.donut{width:160px;aspect-ratio:1;border-radius:50%;margin:auto;display:grid;place-items:center}.donut:after{content:"";width:100px;aspect-ratio:1;border-radius:50%;background:var(--surface)}.donut-legend{display:grid;gap:18px}.donut-legend div{border-left:3px solid;padding-left:10px}.donut-legend span{display:block;color:var(--muted);font-size:10px}.donut-legend b{font-size:20px}.tabs{display:flex;gap:4px;margin-bottom:10px}.tabs button{background:var(--surface);border:1px solid var(--line);padding:9px 14px}.table-panel{overflow:hidden}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:var(--muted);font:9px "DM Mono";letter-spacing:.03em;padding:12px 14px;background:var(--surface2);border-bottom:1px solid var(--line)}td{padding:12px 14px;border-bottom:1px solid var(--line);font-size:11px}td a{color:#b7a9ff;text-decoration:none}td small{display:block;color:var(--muted);margin-top:3px}.tag{display:inline-flex;padding:4px 6px;border-radius:4px;background:#211c38;color:#c5b9ff;font:9px "DM Mono"}.more{margin:12px;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:5px;padding:8px 12px;font-size:10px;cursor:pointer}.method{padding:18px}.method>h3{padding-bottom:14px;border-bottom:1px solid var(--line)}.method-row{padding:12px 0;border-bottom:1px solid var(--line)}.method-row:last-child{border:0}.method-row b{display:block;font-size:11px;margin-bottom:5px}.method-row p{color:var(--muted);font-size:10px;line-height:1.55;margin:0}.method-row a{color:#b7a9ff;text-decoration:none;font:10px "DM Mono"}.evidence-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.evidence-links a{border:1px solid var(--line);background:var(--surface);color:var(--muted);text-decoration:none;padding:9px 11px;border-radius:5px;font:9px "DM Mono"}.evidence-links a:hover{color:var(--text);border-color:var(--violet)}#tooltip{position:fixed;z-index:30;pointer-events:none;opacity:0;background:#090a0dcc;border:1px solid #363844;border-radius:6px;padding:9px 10px;box-shadow:0 8px 28px #0008;font:10px "DM Mono";line-height:1.6;transform:translate(12px,12px)}#tooltip.show{opacity:1}footer{border-top:1px solid var(--line);padding:24px;display:flex;justify-content:space-between;color:var(--muted);font:9px "DM Mono"}@media(max-width:1050px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.grid.two{grid-template-columns:1fr}.topbar nav{display:none}}@media(max-width:650px){.topbar{height:54px;padding:0 14px;gap:14px}.header-actions{gap:7px}.header-actions .fresh{display:none}.refresh-button{width:32px;padding:0;justify-content:center}.refresh-label{display:none}main{width:calc(100% - 24px)}.dashboard-head{align-items:flex-start;gap:22px;flex-direction:column}.controls{width:100%;justify-content:space-between}.controls label{flex:1}.controls select{width:100%}.kpi-grid,.kpi-grid.small{grid-template-columns:repeat(2,1fr)}.kpi{min-height:105px;padding:13px}.kpi strong{font-size:20px}.section-title{align-items:flex-start}.section-title>p{display:none}.panel-head{height:auto;min-height:65px}.chart{height:245px;padding:12px}.bars{min-height:245px;padding:13px}.bar-row{grid-template-columns:42px 1fr 72px}.donut-wrap{height:250px;padding:14px;grid-template-columns:1fr 1fr}.donut{width:125px}.donut:after{width:78px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}footer{flex-direction:column;gap:8px}.notice{font-size:10px}}
footer a{color:var(--violet2);text-decoration:none}footer a:hover,footer a:focus-visible{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.range button:focus-visible,.tabs button:focus-visible,.controls select:focus-visible,.more:focus-visible,.topbar a:focus-visible,.refresh-button:focus-visible,.evidence-links a:focus-visible{outline:2px solid var(--violet2);outline-offset:2px}
.hover-zone:focus-visible{stroke:var(--violet2);stroke-width:2}
.empty-state{height:100%;margin:0;display:grid;place-items:center;color:var(--muted);font:10px "DM Mono"}
.table-scroll{scrollbar-color:#626674 #15161c;scrollbar-width:thin}
#tooltip{transform:none;transition:opacity .1s ease}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#tooltip,.refresh-button{transition:none}.refresh-button.is-refreshing .refresh-icon{animation:none}}
@media(max-width:650px){.header-actions .fresh{display:flex}.header-actions .fresh span{display:none}}
