*,:before,:after{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.55}a{color:var(--link);text-underline-offset:3px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.stra-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.stra-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stra-btn{--h:var(--control-md);--px:16px;min-height:var(--h);padding:8px var(--px);font:600 var(--text-button)/1 var(--font-sans);letter-spacing:.005em;border-radius:var(--radius-button);cursor:pointer;white-space:nowrap;transition:var(--transition-ui);-webkit-user-select:none;user-select:none;border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.stra-btn:focus-visible{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--accent);outline:none}.stra-btn[data-size=sm]{--h:var(--control-sm);--px:12px;font-size:var(--text-button-sm);border-radius:11px}.stra-btn[data-size=lg]{--h:var(--control-lg);--px:22px;font-size:var(--text-button-lg)}.stra-btn:disabled,.stra-btn[aria-disabled=true]{cursor:not-allowed;opacity:.45}.stra-btn[data-variant=primary]{background:var(--accent);color:var(--text-on-fill)}.stra-btn[data-variant=primary]:not(:disabled):not([aria-disabled=true]):hover{background:var(--accent-hover)}.stra-btn[data-variant=secondary]{background:var(--surface);color:var(--text-strong);border-color:var(--border-strong)}.stra-btn[data-variant=secondary]:not(:disabled):not([aria-disabled=true]):hover{background:var(--surface-2);border-color:var(--text-subtle)}.stra-btn[data-variant=ghost]{color:var(--text);background:0 0}.stra-btn[data-variant=ghost]:not(:disabled):not([aria-disabled=true]):hover{background:var(--hover);color:var(--text-strong)}.stra-btn[data-variant=danger]{background:var(--neg);color:#fff}.stra-btn[data-variant=danger]:not(:disabled):not([aria-disabled=true]):hover{filter:brightness(.93)}.stra-btn:not(:disabled):not([aria-disabled=true]):active{transform:translateY(1px)}.stra-icon-btn{width:var(--control-md);height:var(--control-md);border:1px solid var(--border);border-radius:var(--radius-button);background:var(--hover);color:var(--text);cursor:pointer;transition:var(--transition-ui);place-items:center;display:inline-grid}.stra-icon-btn:hover{border-color:var(--text-subtle);color:var(--text-strong)}.stra-badge{--c:var(--text-muted);border:1px solid color-mix(in srgb, var(--c) 28%, transparent);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--c) 12%, transparent);min-height:22px;color:var(--c);font:500 12px/1 var(--font-sans);white-space:nowrap;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.stra-badge[data-tone=info]{--c:var(--accent)}.stra-badge[data-tone=pos]{--c:var(--pos)}.stra-badge[data-tone=neg]{--c:var(--neg)}.stra-badge[data-tone=warn]{--c:var(--warn)}.stra-badge-dot{background:var(--c);border-radius:50%;flex:none;width:6px;height:6px}.stra-badge[data-pulse=true] .stra-badge-dot{animation:stra-pulse 1.6s var(--ease-standard) infinite}@keyframes stra-pulse{0%,to{opacity:1}50%{opacity:.3}}.stra-tag{border:1px solid var(--border);background:var(--surface-2);height:22px;color:var(--text-strong);font:500 12px/1 var(--font-mono);white-space:nowrap;border-radius:7px;align-items:center;gap:6px;padding:0 7px;display:inline-flex}.stra-page{gap:var(--space-6);width:100%;max-width:var(--content-width);padding:var(--space-8) clamp(16px, 3vw, 40px) var(--space-16);grid-template-columns:minmax(0,1fr);margin:0 auto;display:grid}.stra-page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4) var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.stra-page-header-copy{gap:var(--space-2);max-width:72ch;display:grid}.stra-breadcrumb{color:var(--text-subtle);font-size:var(--text-xs);flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.stra-breadcrumb li+li:before{content:"/";opacity:.6;margin-right:6px}.stra-breadcrumb a{color:inherit;text-decoration:none}.stra-breadcrumb a:hover{color:var(--text-strong)}.stra-page-title{color:var(--text-strong);font-size:var(--text-display);letter-spacing:-.035em;margin:0;font-weight:400;line-height:1.08}.stra-page-lead{color:var(--text-muted);margin:0;font-size:16px;line-height:1.6}.stra-page-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.stra-grid{gap:var(--space-4);display:grid}.stra-grid[data-cols="2"]{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.stra-grid[data-cols="3"]{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.stra-grid[data-cols="4"]{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.stra-panel{gap:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:minmax(0,1fr);min-width:0;padding:clamp(18px,2vw,26px);display:grid}.stra-panel[data-tone=inset]{background:var(--surface-inset)}.stra-panel[data-tone=accent]{background:radial-gradient(ellipse at 90% 0%, var(--accent-soft), transparent 65%), var(--surface)}.stra-panel[data-flush=true]{padding:0;overflow:hidden}.stra-panel-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.stra-panel[data-flush=true]>.stra-panel-head{padding:clamp(18px,2vw,26px) clamp(18px,2vw,26px) 0}.stra-panel-title{color:var(--text-strong);font-size:var(--text-h3);letter-spacing:-.015em;align-items:center;gap:10px;margin:0;font-weight:500;display:flex}.stra-panel-title svg{color:var(--accent);flex:none}.stra-panel-note{color:var(--text-muted);font-size:var(--text-sm);margin:0}.stra-metric{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0;color:inherit;transition:var(--transition-ui);gap:6px;padding:18px 20px;text-decoration:none;display:grid}a.stra-metric:hover{border-color:var(--border-strong);background:var(--surface-2)}.stra-metric-label{color:var(--text-muted);font-size:var(--text-sm)}.stra-metric-value{color:var(--text-strong);font:400 var(--text-data-lg)/1.1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stra-metric-detail{color:var(--text-subtle);font-size:var(--text-xs);align-items:center;gap:8px;display:flex}.stra-metric-detail svg{flex:none}.stra-table-wrap{width:100%;overflow-x:auto}.stra-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.stra-table :is(th,td){border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:11px 14px}.stra-table th{color:var(--text-subtle);font-size:var(--text-xs);white-space:nowrap;background:var(--surface);font-weight:500;position:sticky;top:0}.stra-table td{color:var(--text)}.stra-table tbody tr{transition:background-color var(--dur-fast) var(--ease-standard)}.stra-table tbody tr:hover{background:var(--hover)}.stra-table tbody tr:last-child td{border-bottom:0}.stra-table td[data-num],.stra-table th[data-num]{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.stra-table td[data-mono]{font-family:var(--font-mono);font-size:var(--text-xs)}.stra-table caption{caption-side:bottom;color:var(--text-subtle);font-size:var(--text-xs);text-align:left;padding:10px 14px}.stra-form{gap:var(--space-4);max-width:560px;display:grid}.stra-field{gap:6px;display:grid}.stra-label{color:var(--text-muted);font-size:var(--text-sm);font-weight:500}.stra-hint{color:var(--text-subtle);font-size:var(--text-xs)}.stra-input,.stra-select,.stra-textarea{width:100%;min-height:var(--control-md);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-inset);color:var(--text-strong);font:400 var(--text-body)/1.4 var(--font-sans);transition:var(--transition-ui);padding:9px 13px}.stra-textarea{resize:vertical;min-height:96px}.stra-input:focus,.stra-select:focus,.stra-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint);outline:none}.stra-input::placeholder,.stra-textarea::placeholder{color:var(--text-subtle)}.stra-notice{border:1px solid color-mix(in srgb, var(--c,var(--accent)) 30%, transparent);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--c,var(--accent)) 10%, transparent);color:var(--text-strong);font-size:var(--text-sm);padding:12px 14px}.stra-notice[data-tone=pos]{--c:var(--pos)}.stra-notice[data-tone=neg]{--c:var(--neg)}.stra-notice[data-tone=warn]{--c:var(--warn)}.stra-empty{justify-items:start;gap:var(--space-2);padding:var(--space-8) var(--space-6);border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-muted);display:grid}.stra-empty strong{color:var(--text-strong);font-weight:500}.stra-empty p{max-width:60ch;font-size:var(--text-sm);margin:0}.stra-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);grid-template-rows:var(--topbar-height) minmax(0, 1fr);min-height:100dvh;display:grid}.stra-shell[data-collapsed=true]{grid-template-columns:var(--sidebar-collapsed) minmax(0, 1fr)}.stra-topbar{z-index:40;justify-content:space-between;align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border);background:var(--glass);-webkit-backdrop-filter:blur(20px)saturate(150%);grid-column:1/-1;padding:0 clamp(12px,2vw,24px);display:flex;position:sticky;top:0}.stra-topbar-start,.stra-topbar-end{align-items:center;gap:var(--space-3);min-width:0;display:flex}.stra-brand{color:var(--text-strong);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.stra-brand-mark{width:24px;height:24px;color:var(--accent);transition:transform .6s var(--ease-out)}.stra-brand:hover .stra-brand-mark{transform:rotate(90deg)}.stra-brand-word{letter-spacing:.24em;font-size:15px;font-weight:600}.stra-brand-sub{color:var(--text-subtle);font-size:var(--text-xs);letter-spacing:.01em}.stra-workspace{border:1px solid var(--border);border-radius:var(--radius-pill);min-width:0;color:var(--text);font-size:var(--text-sm);align-items:center;gap:8px;padding:6px 12px;display:inline-flex}.stra-workspace strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.stra-sidebar{top:var(--topbar-height);align-self:start;gap:var(--space-4);height:calc(100dvh - var(--topbar-height));scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;padding:var(--space-4) var(--space-3);border-right:1px solid var(--border);background:var(--bg-raised);flex-direction:column;display:flex;position:sticky;overflow-y:auto}.stra-nav-section{gap:2px;display:grid}.stra-nav-heading{cursor:pointer;width:100%;color:var(--text-subtle);font:500 var(--text-xs)/1.4 var(--font-sans);letter-spacing:.02em;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.stra-nav-heading:hover{color:var(--text-strong)}.stra-nav-heading svg{transition:transform var(--dur-base) var(--ease-out)}.stra-nav-section[data-open=false]>.stra-nav-heading svg{transform:rotate(-90deg)}.stra-nav-section[data-open=false]>.stra-nav-list{display:none}.stra-nav-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.stra-nav-link{cursor:pointer;width:100%;min-height:36px;color:var(--text-muted);font:400 14px/1.3 var(--font-sans);text-align:left;transition:var(--transition-ui);background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:7px 10px;text-decoration:none;display:flex}.stra-nav-link:hover{background:var(--hover);color:var(--text-strong)}.stra-nav-link[aria-current]{background:var(--accent-tint);color:var(--text-strong)}.stra-nav-link[aria-current]>svg:first-child{color:var(--accent)}.stra-nav-link>svg{flex:none}.stra-nav-link .stra-nav-chevron{transition:transform var(--dur-base) var(--ease-out);margin-left:auto}.stra-nav-group[data-open=true]>.stra-nav-link .stra-nav-chevron{transform:rotate(90deg)}.stra-nav-sublist{border-left:1px solid var(--border);gap:2px;margin:2px 0 4px 21px;padding:0 0 0 10px;list-style:none;display:grid}.stra-nav-group[data-open=false]>.stra-nav-sublist{display:none}.stra-nav-sublist .stra-nav-link{min-height:32px;font-size:13.5px}@media (min-width:901px){.stra-shell[data-collapsed=true] .stra-nav-heading,.stra-shell[data-collapsed=true] .stra-nav-label,.stra-shell[data-collapsed=true] .stra-nav-chevron,.stra-shell[data-collapsed=true] .stra-nav-sublist{display:none}.stra-shell[data-collapsed=true] .stra-nav-link{justify-content:center;padding:9px}.stra-shell[data-collapsed=true] .stra-nav-section[data-open=false]>.stra-nav-list{display:grid}}.stra-main{min-width:0}.stra-theme-switch{isolation:isolate;border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--hover);width:62px;height:34px;color:var(--text-subtle);cursor:pointer;flex:none;padding:0;position:relative}.stra-theme-switch:hover{border-color:var(--text-subtle)}.stra-theme-switch svg{pointer-events:none;width:14px;height:14px;position:absolute;top:50%;transform:translateY(-50%)}.stra-theme-switch .stra-theme-sun{left:9px}.stra-theme-switch .stra-theme-moon{color:var(--text-on-fill);right:9px}.stra-theme-knob{z-index:-1;background:var(--accent);width:26px;height:26px;transition:transform .3s var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px;transform:translate(28px);box-shadow:0 2px 6px #00000038}:root[data-theme=light] .stra-theme-knob{transform:translate(0)}:root[data-theme=light] .stra-theme-switch .stra-theme-sun{color:var(--text-on-fill)}:root[data-theme=light] .stra-theme-switch .stra-theme-moon{color:var(--text-subtle)}@media (max-width:900px){.stra-shell,.stra-shell[data-collapsed=true]{grid-template-columns:minmax(0,1fr)}.stra-sidebar{inset:var(--topbar-height) auto 0 0;z-index:35;width:min(300px,86vw);height:auto;transition:transform var(--dur-base) var(--ease-out);box-shadow:var(--shadow-dark);position:fixed;transform:translate(-102%)}.stra-shell[data-mobile-open=true] .stra-sidebar{transform:none}.stra-brand-sub,.stra-workspace{display:none}}.stra-chart{gap:var(--space-3);min-width:0;display:grid}.stra-chart svg{width:100%;height:auto;display:block;overflow:visible}.stra-chart-grid{stroke:var(--grid-line);stroke-width:1px}.stra-chart-axis{fill:var(--text-subtle);font:400 11px var(--font-mono)}.stra-chart-line{fill:none;stroke:var(--series,var(--accent));stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.stra-chart-area{fill:var(--series,var(--accent));opacity:.12}.stra-chart-bar{fill:var(--series,var(--accent))}.stra-chart-bar[data-tone=pos]{fill:var(--pos)}.stra-chart-bar[data-tone=neg]{fill:var(--neg)}.stra-chart-bar[data-tone=warn]{fill:var(--warn)}.stra-chart-bar[data-tone=muted]{fill:var(--border-strong)}.stra-chart-point{fill:var(--surface);stroke:var(--series,var(--accent));stroke-width:2px}.stra-chart-legend{color:var(--text-muted);font-size:var(--text-xs);flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;list-style:none;display:flex}.stra-chart-legend li{align-items:center;gap:6px;display:inline-flex}.stra-chart-legend i{background:var(--series,var(--accent));border-radius:3px;width:10px;height:10px}.stra-sparkline{vertical-align:middle;width:96px;height:28px;display:inline-block}.stra-sparkline polyline{fill:none;stroke:var(--series,var(--accent));stroke-width:1.6px;vector-effect:non-scaling-stroke}.stra-heat{gap:3px;display:grid}.stra-heat-row{grid-template-columns:minmax(110px, 160px) repeat(var(--cols), minmax(10px, 1fr));align-items:center;gap:3px;display:grid}.stra-heat-label{color:var(--text-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stra-heat-cell{background:var(--surface-inset);border-radius:4px;height:18px}.stra-heat-cell[data-tone=pos]{background:color-mix(in srgb, var(--pos) 70%, transparent)}.stra-heat-cell[data-tone=warn]{background:color-mix(in srgb, var(--warn) 70%, transparent)}.stra-heat-cell[data-tone=neg]{background:color-mix(in srgb, var(--neg) 70%, transparent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html[data-theme-switching] :not(.stra-theme-knob),html[data-theme-switching] :before,html[data-theme-switching] :after{transition:none!important}.stra-toolbar,.stra-pagination,.stra-copy-field{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.stra-filter-bar{gap:var(--space-3);display:grid}.stra-toolbar{align-items:end}.stra-pagination{justify-content:space-between}.stra-pagination [aria-disabled=true]{color:var(--text-subtle)}.stra-json{max-width:100%;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-inset);color:var(--text);font-family:var(--font-mono);white-space:pre;overflow:auto}.stra-key-values{gap:var(--space-4);margin:0;display:grid}.stra-key-values[data-columns="2"]{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.stra-key-values dt{color:var(--text-muted)}.stra-key-values dd{overflow-wrap:anywhere;margin:0}.stra-key-values [data-mono],.stra-copy-field [data-mono]{font-family:var(--font-mono)}.stra-modal-scrim{z-index:100;padding:var(--space-4);background:color-mix(in srgb, var(--bg-sunken) 70%, transparent);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.stra-confirm-dialog,.stra-drawer{gap:var(--space-4);padding:var(--space-6);background:var(--surface);max-height:100dvh;color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);display:grid;overflow:auto}.stra-confirm-dialog{width:min(100%,560px);max-height:calc(100dvh - var(--space-8));border-radius:var(--radius-lg)}.stra-confirm-dialog h2,.stra-drawer h2{color:var(--text-strong);margin:0}.stra-confirm-dialog .stra-btn[data-variant=danger]{color:var(--bg-sunken)}.stra-drawer{align-content:start;width:min(100%,560px);position:absolute;inset:0 0 0 auto}.stra-drawer[data-side=left]{inset:0 auto 0 0}.stra-toast-region{bottom:var(--space-4);right:var(--space-4);z-index:110;gap:var(--space-3);max-width:min(480px, calc(100vw - var(--space-8)));max-height:80dvh;display:grid;position:fixed;overflow:auto}.stra-toast{background:var(--surface);box-shadow:var(--shadow-md);overflow-wrap:anywhere;margin:0}
