@import "https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-50:#eef0ff;--brand-100:#dde1ff;--brand-200:#b9c0ff;--brand-300:#8a92f5;--brand-400:#6e6fe6;--brand-500:#5b54d6;--brand-600:#4a3fbf;--brand-700:#3a2f9c;--brand-800:#28206b;--brand-900:#181244;--accent-500:#8b5cf6;--accent-600:#7c3aed;--accent-700:#6d28d9;--bg:#f4f5fb;--surface:#fff;--surface-2:#f9faff;--surface-3:#eef0fa;--surface-inv:#181244;--text:#14112e;--text-muted:#5b6079;--text-soft:#8a90ab;--text-on-brand:#fff;--border:#1812441a;--border-strong:#1812442e;--divider:#1812440f;--ok:#16a34a;--ok-bg:#dcfce7;--warn:#f59e0b;--warn-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:var(--brand-500);--info-bg:var(--brand-50);--chart-1:var(--brand-600);--chart-2:var(--accent-600);--chart-3:#2dd4bf;--chart-4:#f59e0b;--chart-5:#ec4899;--chart-6:#38bdf8;--chart-grid:#18124412;--chart-axis:#18124473;--chart-tooltip-bg:#fff;--chart-tooltip-border:#1812441a;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--shadow-sm:0 1px 2px #1812440f, 0 1px 1px #1812440a;--shadow-md:0 4px 14px #18124414, 0 1px 3px #1812440d;--shadow-lg:0 18px 40px #1812441f, 0 4px 10px #1812440f;--ring:0 0 0 3px #5b54d64d;--brand-gradient:linear-gradient(135deg, #181244 0%, #3a2f9c 45%, #7c3aed 100%);--brand-gradient-soft:linear-gradient(135deg, #1812440f, #7c3aed0f)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-50:#1a1546;--brand-100:#221b5c;--brand-200:#2d2575;--brand-300:#3d3399;--brand-400:#5b54d6;--brand-500:#7c75ec;--brand-600:#9a92ff;--brand-700:#b9b3ff;--brand-800:#d6d2ff;--brand-900:#ebe9ff;--accent-500:#a78bfa;--accent-600:#b692fb;--accent-700:#c4a8fc;--bg:#0a0820;--surface:#11102b;--surface-2:#16153a;--surface-3:#1c1b48;--surface-inv:#fff;--text:#ecebff;--text-muted:#a8a6c9;--text-soft:#7d7ba0;--text-on-brand:#fff;--border:#b4afff1f;--border-strong:#b4afff38;--divider:#b4afff0f;--ok:#4ade80;--ok-bg:#4ade801f;--warn:#fbbf24;--warn-bg:#fbbf241f;--danger:#f87171;--danger-bg:#f8717124;--info:var(--brand-500);--info-bg:#7c75ec24;--chart-1:#8a92f5;--chart-2:#c4a8fc;--chart-3:#5eead4;--chart-4:#fbbf24;--chart-5:#f472b6;--chart-6:#7dd3fc;--chart-grid:#b4afff1a;--chart-axis:#b4afff8c;--chart-tooltip-bg:#1c1b48;--chart-tooltip-border:#b4afff2e;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 6px 16px #00000073, 0 1px 3px #00000059;--shadow-lg:0 22px 50px #0000008c, 0 6px 14px #0006;--ring:0 0 0 3px #9a92ff66;--brand-gradient:linear-gradient(135deg, #1a1546 0%, #4a3fbf 45%, #a78bfa 100%);--brand-gradient-soft:linear-gradient(135deg, #9a92ff1a, #a78bfa1a)}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0;padding:0}html{background:var(--bg)}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"ss01", "cv11";font-family:Manrope,system-ui,-apple-system,Segoe UI,sans-serif;transition:background-color .2s,color .2s}a{color:var(--brand-500);text-decoration:none}a:hover{color:var(--brand-600)}button{cursor:pointer;font-family:inherit}input,select,textarea{color:inherit;font-family:inherit}::selection{background:var(--brand-200);color:var(--brand-900)}[data-theme=dark] ::selection{background:var(--brand-300);color:var(--brand-900)}.num,.qo-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--brand-300)}::-webkit-scrollbar-track{background:0 0}.qo-app{background:var(--bg);grid-template:"sidebar topbar"64px"sidebar main"1fr/248px 1fr;min-height:100vh;display:grid}.qo-sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;grid-area:sidebar;gap:18px;height:100vh;padding:18px 14px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.qo-brand{border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:6px 8px 14px;display:flex}.qo-brand-mark{background:var(--brand-gradient);color:#fff;letter-spacing:.02em;width:36px;height:36px;box-shadow:var(--shadow-sm);border-radius:10px;flex-shrink:0;place-items:center;font-weight:800;display:grid}.qo-brand-text{flex-direction:column;line-height:1.05;display:flex}.qo-brand-text .qo-brand-name{letter-spacing:.08em;text-transform:uppercase;color:var(--text);font-size:.92rem;font-weight:800}.qo-brand-text .qo-brand-sub{color:var(--text-soft);letter-spacing:.16em;text-transform:uppercase;margin-top:2px;font-size:.68rem}.qo-nav{flex-direction:column;gap:4px;display:flex}.qo-nav-section{letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft);padding:14px 10px 6px;font-size:.62rem;font-weight:700}.qo-nav-link{border-radius:var(--radius-sm);color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:.86rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:flex}.qo-nav-link:hover{background:var(--surface-3);color:var(--text)}.qo-nav-link.active{background:var(--brand-gradient-soft);color:var(--text);border-color:var(--border);box-shadow:inset 3px 0 0 var(--brand-500)}.qo-nav-link .qo-nav-ico{width:18px;height:18px;color:var(--brand-500);flex-shrink:0;place-items:center;display:grid}.qo-nav-link.active .qo-nav-ico{color:var(--accent-600)}.qo-sidebar-footer{color:var(--text-soft);border-top:1px solid var(--divider);justify-content:space-between;align-items:center;margin-top:auto;padding:10px;font-size:.7rem;display:flex}.qo-topbar{z-index:20;background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);grid-area:topbar;justify-content:space-between;align-items:center;gap:16px;padding:0 24px;display:flex;position:sticky;top:0}.qo-topbar-title{flex-direction:column;line-height:1.1;display:flex}.qo-topbar-title .qo-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft);font-size:.66rem;font-weight:700}.qo-topbar-title .qo-page-name{color:var(--text);font-size:1.02rem;font-weight:700}.qo-topbar-actions{align-items:center;gap:8px;display:flex}.qo-main{grid-area:main;min-width:0;padding:24px clamp(20px,3vw,36px) 40px}@media (max-width:900px){.qo-app{grid-template:"sidebar""topbar"64px"main"1fr/1fr}.qo-sidebar{flex-direction:row;align-items:center;gap:10px;height:auto;padding:10px 14px;position:static;overflow-x:auto}.qo-brand{border-bottom:none;padding:0 8px 0 0}.qo-nav{flex-direction:row;gap:4px}.qo-nav-section,.qo-sidebar-footer{display:none}.qo-nav-link{padding:7px 10px}}.qo-theme-toggle{background:var(--surface-3);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-size:.78rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.qo-theme-toggle:hover{background:var(--surface-2);transform:translateY(-1px)}.qo-theme-toggle:active{transform:translateY(0)}.qo-theme-toggle .qo-theme-ico{color:var(--brand-500);place-items:center;display:grid}.qo-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);gap:14px;padding:18px 20px;display:grid}.qo-card.qo-card-flush{padding:0}.qo-card.qo-card-glow{position:relative;overflow:hidden}.qo-card.qo-card-glow:before{content:"";border-radius:inherit;background:var(--brand-gradient);-webkit-mask-composite:xor;opacity:.35;pointer-events:none;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.qo-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.qo-card-head h2,.qo-card-head h3{letter-spacing:-.005em;color:var(--text);margin:0;font-size:1rem;font-weight:700}.qo-card-head .qo-card-sub{color:var(--text-muted);margin-top:3px;font-size:.78rem}.qo-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.qo-page-title{letter-spacing:-.02em;background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(1.5rem,2.2vw,1.95rem);font-weight:800}.qo-page-subtitle{color:var(--text-muted);max-width:720px;margin:6px 0 0;font-size:.92rem}.qo-page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.qo-section,.qo-grid{gap:14px;display:grid}.qo-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.qo-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.qo-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.qo-grid-12{grid-template-columns:repeat(12,minmax(0,1fr))}@media (max-width:1100px){.qo-grid-4,.qo-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.qo-grid-4,.qo-grid-3,.qo-grid-2{grid-template-columns:1fr}}.qo-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:4px;padding:14px 16px;transition:transform .12s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.qo-kpi:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-1px)}.qo-kpi-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-soft);font-size:.7rem;font-weight:700}.qo-kpi-value{letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:800}.qo-kpi-foot{color:var(--text-muted);align-items:center;gap:6px;font-size:.74rem;display:flex}.qo-kpi-accent{background:var(--brand-gradient);width:3px;position:absolute;top:0;bottom:0;left:0}.qo-kpi.is-positive .qo-kpi-accent{background:linear-gradient(180deg, var(--ok), color-mix(in srgb, var(--ok) 70%, var(--brand-500)))}.qo-kpi.is-negative .qo-kpi-accent{background:linear-gradient(180deg, var(--danger), color-mix(in srgb, var(--danger) 70%, var(--accent-600)))}.qo-kpi.is-neutral .qo-kpi-accent{background:var(--brand-gradient)}.qo-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:600;line-height:1.2;transition:background .12s,border-color .12s,transform 80ms,box-shadow .12s,color .12s;display:inline-flex}.qo-btn:hover{background:var(--surface-3);border-color:var(--border-strong)}.qo-btn:active{transform:translateY(1px)}.qo-btn:focus-visible{box-shadow:var(--ring);outline:none}.qo-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.qo-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);box-shadow:var(--shadow-sm);border-color:#0000}.qo-btn-primary:hover{background:var(--brand-gradient);filter:brightness(1.06);border-color:#0000}.qo-btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.qo-btn-ghost:hover{background:var(--surface-3);color:var(--text)}.qo-btn-danger{background:var(--danger-bg);border-color:color-mix(in srgb, var(--danger) 30%, transparent);color:var(--danger)}.qo-btn-danger:hover{background:color-mix(in srgb, var(--danger) 15%, var(--surface))}.qo-btn-sm{padding:5px 10px;font-size:.74rem}.qo-btn-group{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);gap:2px;padding:3px;display:inline-flex}.qo-btn-group .qo-btn{color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:5px 10px;font-size:.78rem}.qo-btn-group .qo-btn.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.qo-field{gap:4px;display:grid}.qo-field-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-soft);font-size:.7rem;font-weight:700}.qo-input,.qo-select,.qo-textarea{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);width:100%;min-height:36px;padding:8px 10px;font-size:.85rem;font-weight:500;transition:border-color .12s,box-shadow .12s,background .12s}.qo-input:hover,.qo-select:hover{border-color:var(--border-strong)}.qo-input:focus,.qo-select:focus,.qo-textarea:focus{border-color:var(--brand-500);box-shadow:var(--ring);outline:none}.qo-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}.qo-toolbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:end;gap:10px;padding:12px 14px;display:flex}.qo-toolbar>*{min-width:0}.qo-badge{letter-spacing:.04em;text-transform:uppercase;background:var(--surface-3);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:.7rem;font-weight:700;display:inline-flex}.qo-badge.is-ok{background:var(--ok-bg);color:var(--ok);border-color:color-mix(in srgb, var(--ok) 25%, transparent)}.qo-badge.is-warn{background:var(--warn-bg);color:var(--warn);border-color:color-mix(in srgb, var(--warn) 25%, transparent)}.qo-badge.is-danger{background:var(--danger-bg);color:var(--danger);border-color:color-mix(in srgb, var(--danger) 25%, transparent)}.qo-badge.is-info{background:var(--info-bg);color:var(--info);border-color:color-mix(in srgb, var(--info) 25%, transparent)}.qo-badge.is-brand{background:var(--brand-gradient-soft);color:var(--brand-700);border-color:var(--border)}[data-theme=dark] .qo-badge.is-brand{color:var(--brand-700)}.qo-dot{background:var(--text-soft);border-radius:999px;width:7px;height:7px;display:inline-block}.qo-dot.is-ok{background:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 25%, transparent)}.qo-dot.is-warn{background:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb, var(--warn) 25%, transparent)}.qo-dot.is-danger{background:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 25%, transparent)}.qo-table-wrap{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);overflow:hidden}.qo-table-scroll{max-height:var(--qo-table-max-h,480px);overflow:auto}.qo-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.82rem}.qo-table thead th{background:var(--surface-2);color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;z-index:1;padding:10px 12px;font-size:.7rem;font-weight:700;position:sticky;top:0}.qo-table tbody td{border-bottom:1px solid var(--divider);color:var(--text);vertical-align:middle;padding:9px 12px}.qo-table tbody tr:hover{background:var(--surface-2)}.qo-table tbody tr:last-child td{border-bottom:none}.qo-table .qo-num-cell{text-align:right;font-feature-settings:"tnum"}.qo-table .qo-mono{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.qo-status{border-radius:var(--radius-sm);background:var(--surface-3);border:1px solid var(--border);color:var(--text);align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;display:inline-flex}.qo-status.is-busy{color:var(--brand-700);background:var(--brand-gradient-soft)}.qo-status.is-error{color:var(--danger);background:var(--danger-bg);border-color:color-mix(in srgb, var(--danger) 25%, transparent)}.qo-spinner{border:2px solid color-mix(in srgb, var(--brand-500) 35%, transparent);border-top-color:var(--brand-500);border-radius:999px;width:14px;height:14px;animation:.7s linear infinite qo-spin;display:inline-block}@keyframes qo-spin{to{transform:rotate(360deg)}}.qo-skeleton{background:linear-gradient(90deg, var(--surface-3) 0%, var(--surface-2) 50%, var(--surface-3) 100%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite qo-shimmer}@keyframes qo-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.qo-empty{text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-2);padding:28px;font-size:.88rem}.recharts-cartesian-grid line{stroke:var(--chart-grid)}.recharts-cartesian-axis-line,.recharts-cartesian-axis-tick-line{stroke:var(--chart-axis);opacity:.5}.recharts-cartesian-axis-tick text{fill:var(--text-muted);font-size:11px}.recharts-legend-item-text{font-size:12px;color:var(--text-muted)!important}.recharts-tooltip-wrapper{z-index:30}.qo-tooltip{background:var(--chart-tooltip-bg);border:1px solid var(--chart-tooltip-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:8px 10px;font-size:.78rem}.qo-tooltip-label{color:var(--text);margin-bottom:4px;font-size:.78rem;font-weight:700}.qo-tooltip-row{color:var(--text-muted);font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:flex}.qo-tooltip-row .qo-tooltip-swatch{border-radius:2px;width:9px;height:9px;display:inline-block}.qo-tooltip-row .qo-tooltip-value{color:var(--text);margin-left:auto;font-weight:600}.home-shell,.statistics-shell{background:0 0;min-height:auto;padding:0}.home-wrap,.statistics-wrap{gap:16px;max-width:1280px;margin:0 auto;display:grid}.glass-card{background:var(--surface);-webkit-backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px 20px;transition:border-color .15s,box-shadow .15s}.glass-card:hover{border-color:var(--border-strong)}.glass-card h1,.glass-card h2,.glass-card h3,.glass-card h4{color:var(--text)}.glass-card p,.glass-card li{color:var(--text-muted)}.glass-card summary{color:var(--text);cursor:pointer}.home-header h1,.statistics-header h1{background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.home-header p,.statistics-header p{color:var(--text-muted)}.home-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;position:relative;overflow:hidden}.home-kpi:before{content:"";background:var(--brand-gradient);opacity:.85;width:3px;position:absolute;top:0;bottom:0;left:0}.home-kpi small{color:var(--text-soft);letter-spacing:.08em}.home-kpi strong{color:var(--text);font-variant-numeric:tabular-nums}.statistics-controls-grid label,.statistics-config-part label,.home-controls label,.live-controls label,.live-create-grid label{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;gap:5px;font-size:.7rem;font-weight:700;display:grid}input[type=date],input[type=number],input[type=text],input[type=search],select,textarea{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);min-height:34px;padding:7px 10px;font-family:inherit;font-size:.85rem;font-weight:500;transition:border-color .12s,box-shadow .12s}input[type=date]:hover,input[type=number]:hover,input[type=text]:hover,input[type=search]:hover,select:hover{border-color:var(--border-strong)}input[type=date]:focus,input[type=number]:focus,input[type=text]:focus,input[type=search]:focus,select:focus,textarea:focus{border-color:var(--brand-500);box-shadow:var(--ring);outline:none}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.85)}[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.85)}.statistics-controls-actions button,.home-controls button,.statistics-modal-close,.statistics-config-part button{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;padding:8px 14px;font-family:inherit;font-size:.82rem;font-weight:600;transition:background .12s,border-color .12s,transform 80ms}.statistics-controls-actions button:hover,.home-controls button:hover,.statistics-modal-close:hover,.statistics-config-part button:hover{background:var(--surface-3);border-color:var(--border-strong)}.statistics-controls-actions button.primary,.statistics-controls-actions .btn-primary,.home-primary{background:var(--brand-gradient);color:var(--text-on-brand);border-color:#0000}.statistics-controls-actions button.primary:hover,.statistics-controls-actions .btn-primary:hover,.home-primary:hover{filter:brightness(1.06)}.statistics-details table,.home-table table,table.statistics-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.82rem}.statistics-details thead th,.home-table thead th{background:var(--surface-2);color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--border);z-index:1;padding:9px 11px;font-size:.7rem;font-weight:700;position:sticky;top:0}.statistics-details tbody td,.home-table tbody td{border-bottom:1px solid var(--divider);color:var(--text);padding:8px 11px}.statistics-details tbody tr:hover,.home-table tbody tr:hover{background:var(--surface-2)}.status-pill,.home-status-pill{letter-spacing:.04em;border-radius:999px;padding:5px 12px;font-size:.74rem;font-weight:700}.status-pill.error,.home-status-pill.error{background:var(--danger-bg);color:var(--danger)}.status-pill.busy,.home-status-pill.busy{background:var(--brand-gradient-soft);color:var(--brand-700)}.statistics-chart-axis-text,.home-chart-axis-text,.home-hour-axis-text,.home-season-axis-text{fill:var(--text-muted);font-family:Manrope,system-ui,sans-serif;font-size:11px}.statistics-chart-axis-line,.home-chart-axis-line,.home-season-grid-line{stroke:var(--chart-grid)}.home-chart-area{fill:var(--brand-500);fill-opacity:.1}.home-chart-line{stroke:var(--brand-500)}.home-chart-line-secondary{stroke:var(--accent-600)}.statistics-modal-backdrop{background:color-mix(in srgb, var(--bg) 75%, transparent);-webkit-backdrop-filter:blur(6px)}.statistics-modal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--text)}.statistics-modal-head h3{color:var(--text)}.statistics-detail-item{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);gap:4px;padding:10px 12px;display:grid}.statistics-detail-item small{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:700}.statistics-detail-item strong{color:var(--text);font-variant-numeric:tabular-nums}.statistics-process-step{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px}.statistics-process-step h3{color:var(--brand-600);margin:0 0 6px;font-size:.92rem}[data-theme=dark] .statistics-process-step h3{color:var(--brand-700)}.statistics-subsection-divider{letter-spacing:.12em;text-transform:uppercase;color:var(--text-soft);border-top:1px dashed var(--border);margin:14px 0 6px;padding-top:10px;font-size:.72rem;font-weight:800}.statistics-collapsible[open]>summary,.glass-card[open]>summary{margin-bottom:12px}details>summary{color:var(--text);align-items:center;gap:8px;font-size:.95rem;font-weight:700;list-style:none;display:flex}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"›";color:var(--brand-500);font-size:1.2em;font-weight:700;line-height:1;transition:transform .15s;display:inline-block;transform:rotate(0)}details[open]>summary:before{transform:rotate(90deg)}.sro-v2-page,.statistics-page{gap:16px;display:grid}.sro-v2-header{gap:10px;display:grid}.sro-v2-heading-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.sro-v2-actions{flex-wrap:wrap;gap:8px;display:flex}.sro-v2-kpi-grid,.sro-v2-meta-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.sro-v2-kpi-grid>*,.sro-v2-meta-grid>*{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);gap:4px;padding:10px 12px;display:grid}.api-note{color:var(--text-soft)}[data-theme=dark] .home-chart-wrap,[data-theme=dark] .live-chart-wrap{background:var(--surface-2);border-color:var(--border)}.curves-shell{min-height:min(70vh,100vh - 7rem);padding:0}.curves-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.curves-layout--sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.curves-layout--sidebar-collapsed .curves-sidebar{display:none!important}@media (max-width:900px){.curves-layout,.curves-layout--sidebar-collapsed{grid-template-columns:1fr}.curves-sidebar{max-height:42vh;position:relative}}.curves-sidebar{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);max-height:calc(100vh - 5rem);box-shadow:var(--shadow-sm);align-self:start;padding:.75rem .85rem;position:sticky;top:.5rem;overflow:auto}.curves-sidebar-header{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:.45rem;margin-bottom:.65rem;padding-bottom:.5rem;display:flex}.curves-sidebar-header--drilled{align-items:center}.curves-sidebar-header h2{letter-spacing:-.02em;color:var(--text);flex:1;min-width:0;margin:0;font-size:1.06rem;font-weight:700;line-height:1.25}.curves-sidebar-header--drilled h2{font-size:.98rem}.curves-sidebar-back-iconbtn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:2rem;height:2rem;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.06rem;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.curves-sidebar-back-iconbtn:hover{background:var(--surface-3);border-color:var(--border-strong);color:var(--text)}.curves-category-picker{flex-direction:column;gap:.35rem;display:flex}.curves-category-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:100%;color:var(--text);text-align:left;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .62rem;transition:background .15s,border-color .15s,transform .12s;display:flex}.curves-category-row:hover{border-color:var(--border-strong);background:var(--surface-3)}.curves-category-row:active{transform:scale(.99)}.curves-category-row-name{letter-spacing:-.02em;font-size:.93rem;font-weight:650}.curves-category-row-meta{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.curves-sidebar-empty{color:var(--text-muted);margin:.35rem 0 0;font-size:.91rem;line-height:1.4}.curves-category-row-count{font-variant-numeric:tabular-nums;color:var(--text-soft);background:var(--surface);border-radius:999px;padding:.12rem .38rem;font-size:.84rem;font-weight:700}.curves-category-row-chev{color:var(--brand-500);opacity:.85;font-size:.83rem;font-weight:600}.curves-cat-list--solo{margin-top:0}.curves-sidebar-header .curves-count{flex-shrink:0}.curves-sidebar-header-actions{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.curves-sidebar-hide-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:2rem;height:2rem;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.06rem;font-weight:600;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.curves-sidebar-hide-btn:hover{background:var(--surface-3);border-color:var(--border-strong);color:var(--text)}.curves-sidebar-reveal-wrap{width:100%}.curves-sidebar-reveal{border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:.4rem;padding:.38rem .75rem .38rem .55rem;font-size:.88rem;font-weight:700;transition:background .15s,border-color .15s,transform .12s;display:inline-flex}.curves-sidebar-reveal:hover{border-color:var(--border-strong);background:var(--surface-2)}.curves-sidebar-reveal:active{transform:scale(.99)}.curves-sidebar-reveal-icon{color:var(--brand-500);font-size:1.1rem;font-weight:700;line-height:1}.curves-count{font-variant-numeric:tabular-nums;color:var(--text-muted);background:var(--surface-3);border-radius:999px;padding:.15rem .45rem;font-size:.83rem;font-weight:600}.curves-cat-group{border:none;margin:0 0 .35rem}.curves-cat-group+.curves-cat-group{margin-top:.5rem}.curves-cat-label{cursor:pointer;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);-webkit-user-select:none;user-select:none;align-items:center;padding:.35rem 0;font-size:.88rem;font-weight:700;list-style:none;display:flex}.curves-cat-label::-webkit-details-marker{display:none}.curves-cat-label:before{content:"";background:var(--brand-400);opacity:.55;vertical-align:middle;border-radius:2px;width:.35rem;height:.35rem;margin-right:.35rem;transition:transform .2s;display:inline-block}.curves-cat-group[open] .curves-cat-label:before{transform:rotate(90deg)}.curves-cat-list{margin:0;padding:0;list-style:none}.curves-cat-list>li{margin:0;padding:0}.curves-item-btn{border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:left;background:0 0;border:none;align-items:flex-start;gap:.45rem;margin:0 0 .2rem;padding:.45rem .5rem;transition:background .15s,box-shadow .15s;display:flex}.curves-item-btn:hover{background:var(--surface-3)}.curves-item-btn.active{background:var(--brand-50);box-shadow:inset 0 0 0 1px #5b54d638}[data-theme=dark] .curves-item-btn.active{background:#7c75ec1f;box-shadow:inset 0 0 0 1px #9a92ff47}.curves-item-btn.compared{box-shadow:inset 0 0 0 2px var(--accent-500)}.curves-source-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:.35rem}.curves-item-name{flex:1;min-width:0;font-size:.93rem;font-weight:600;line-height:1.35}.curves-item-unit{color:var(--text-soft);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.84rem;font-weight:600}.curves-main{flex-direction:column;gap:.75rem;min-width:0;min-height:min(72vh,100vh - 6rem);display:flex}.curves-main-stack{flex-direction:column;flex:1;gap:.75rem;min-height:0;display:flex}.curves-range-panel{border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:.65rem 1rem;padding:.65rem .85rem;display:flex}.curves-range-panel-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-soft);flex:100%;margin:0;font-size:.84rem;font-weight:700}.curves-range-presets{flex-wrap:wrap;gap:.35rem;display:flex}.curves-preset-btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:.28rem .65rem;font-size:.83rem;font-weight:700;transition:background .15s,border-color .15s,transform .12s}.curves-preset-btn:hover{border-color:var(--border-strong);background:var(--surface-3)}.curves-preset-btn:active{transform:scale(.97)}.curves-range-inputs{align-items:center;gap:.45rem;margin-left:auto;display:flex}.curves-range-inputs span{color:var(--text-soft);font-size:.97rem}.curves-range-inputs input[type=date]{border:1px solid var(--border);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;background:var(--surface);color:var(--text);padding:.32rem .45rem;font-size:.91rem}.curves-compare-btn{border:1px dashed var(--border-strong);color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;padding:.35rem .75rem;font-size:.83rem;font-weight:700;transition:all .15s}.curves-compare-btn:hover{color:var(--text);border-style:solid}.curves-compare-btn.active{border-style:solid;border-color:var(--accent-500);color:var(--accent-600);background:var(--warn-bg)}[data-theme=dark] .curves-compare-btn.active{background:#a78bfa1f}.curves-chart-stack{flex-direction:column;flex:1;gap:.75rem;min-height:min(52vh,520px);display:flex}.curves-chart-area{border-radius:var(--radius-lg);padding:1rem 1.1rem}.curves-chart-area h3{letter-spacing:-.02em;margin:0 0 .35rem;font-size:1.2rem;font-weight:700}.curves-chart-area h4{margin:0 0 .5rem;font-size:1.02rem}.curves-chart-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.curves-placeholder{text-align:left;padding:1.5rem 1.25rem}.curves-placeholder h2{margin:0 0 .35rem;font-size:1.32rem}.curves-placeholder p{max-width:42ch;margin:0 0 1rem;line-height:1.55}.curves-loading,.curves-empty{color:var(--text-muted);margin:.5rem 0;font-size:.97rem}.curves-capture-hint{color:var(--text-muted);border-radius:var(--radius-sm);background:var(--surface-3);border-left:3px solid var(--warn);margin:0 0 .65rem;padding:.55rem .65rem;font-size:.88rem;line-height:1.45}.error-text{color:var(--danger);font-size:.94rem}.curves-chart-desc-p{color:var(--text-muted);margin:.25rem 0 0;font-size:.91rem;line-height:1.45}.curves-desc-code{background:var(--surface-3);border-radius:4px;padding:.05rem .25rem;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.84em}.curves-source-badge{border-radius:999px;flex-shrink:0;padding:.28rem .55rem;font-size:.88rem;font-weight:700}.curves-stats-row{color:var(--text-muted);flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.65rem;font-size:.91rem;display:flex}.curves-legend{flex-wrap:wrap;gap:.45rem .85rem;margin:.5rem 0;display:flex}.curves-legend-item{color:var(--text-muted);align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.curves-legend-swatch{border-radius:2px;flex-shrink:0;width:9px;height:9px}.curves-chart-svg{width:100%;height:auto;display:block}.curves-chart-svg .curves-axis-text{font-size:1.06rem}.curves-chart-svg .curves-bar-xlabel{font-size:1rem}.curves-chart-tooltip-bg{fill:#fff;stroke:#1812442e;stroke-width:1px}.curves-chart-tooltip-text{fill:#14112e;font-family:Manrope,system-ui,sans-serif;font-size:11px;font-weight:500}.curves-multi-hint{color:var(--text-soft);margin:0 0 .5rem;font-size:.88rem}.curves-compare-slot{margin-bottom:1.25rem}.curves-compare-slot:last-child{margin-bottom:0}@keyframes outages-card-in{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes outages-live-pulse{0%,to{box-shadow:0 0 #4ade8059}50%{box-shadow:0 0 0 6px #4ade8000}}@keyframes outages-badge-soft{0%,to{opacity:1;transform:scale(1)}50%{opacity:.92;transform:scale(1.02)}}@keyframes outages-header-shimmer{0%{background-position:0%}to{background-position:200%}}.outages-shell{min-height:min(75vh,100vh - 7rem);padding:0}.outages-page-header{margin-bottom:.85rem}.outages-page-header-main{flex-direction:column;gap:.25rem;display:flex}.outages-page-title{letter-spacing:-.03em;align-items:center;gap:.45rem;margin:0;font-size:1.32rem;font-weight:800;display:inline-flex}.outages-title-pulse{background:var(--ok);width:8px;height:8px;box-shadow:0 0 0 3px var(--ok-bg);border-radius:50%;animation:2.4s ease-in-out infinite outages-live-pulse}.outages-page-sub{color:var(--text-muted);max-width:52ch;margin:0;font-size:.91rem;line-height:1.45}.outages-layout{grid-template-columns:minmax(168px,200px) minmax(0,1fr);align-items:start;gap:.85rem 1rem;display:grid}@media (max-width:820px){.outages-layout{grid-template-columns:1fr}.outages-sidebar{max-height:none}}.outages-sidebar{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);align-self:start;max-height:calc(100vh - 6rem);padding:.55rem .6rem;font-size:.83rem;position:sticky;top:.5rem;overflow:auto}.outages-sidebar-block{margin-bottom:.65rem}.outages-sidebar-block:last-child{margin-bottom:0}.outages-sidebar-heading{text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);margin:0 0 .35rem;font-size:.86rem;font-weight:800}.outages-filter-group{flex-direction:column;gap:.15rem;display:flex}.outages-filter-row{cursor:pointer;border-radius:var(--radius-xs);align-items:flex-start;gap:.35rem;margin:0;padding:.22rem .28rem;transition:background .12s;display:flex}.outages-filter-row:hover{background:var(--surface-3)}.outages-filter-row input{accent-color:var(--brand-500);flex-shrink:0;margin-top:.15rem}.outages-filter-row-label{min-width:0;color:var(--text);flex:1;justify-content:space-between;gap:.35rem;line-height:1.3;display:flex}.outages-filter-row-count{font-variant-numeric:tabular-nums;color:var(--text-soft);background:var(--surface-3);border-radius:999px;padding:.05rem .3rem;font-size:.84rem;font-weight:700}.outages-filter-row-label--fuel .outages-filter-fuel-name{text-overflow:ellipsis;white-space:nowrap;max-width:7.5rem;overflow:hidden}.outages-main{min-width:0}.outages-feed-toolbar{border-radius:var(--radius-md);background:linear-gradient(105deg, var(--surface-2), var(--surface), var(--surface-2));border:1px solid var(--border);background-size:200% 100%;flex-wrap:wrap;align-items:flex-end;gap:.5rem 1rem;margin-bottom:.75rem;padding:.55rem .65rem;animation:12s ease-in-out infinite alternate outages-header-shimmer;display:flex}.outages-feed-toolbar-fields{flex-wrap:wrap;align-items:flex-end;gap:.45rem .75rem;display:flex}.outages-field{text-transform:uppercase;letter-spacing:.05em;color:var(--text-soft);flex-direction:column;gap:.15rem;font-size:.81rem;font-weight:700;display:flex}.outages-field input[type=date]{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface);color:var(--text);font-variant-numeric:tabular-nums;padding:.28rem .4rem;font-size:.88rem}.outages-refresh{background:var(--brand-500);color:var(--text-on-brand);border:none;border-radius:999px;margin-left:auto;padding:.38rem .85rem;font-size:.83rem;font-weight:700;transition:transform .12s,filter .15s}.outages-refresh:hover:not(:disabled){filter:brightness(1.08);transform:scale(1.02)}.outages-refresh:disabled{opacity:.65;cursor:not-allowed}.outages-main-head{margin-bottom:.5rem}.outages-stream-title{letter-spacing:-.02em;margin:0;font-size:1.1rem;font-weight:800}.outages-range-label{color:var(--text-muted);font-size:.91rem;font-weight:600}.outages-main-meta{color:var(--text-soft);margin:.2rem 0 0;font-size:.83rem}.outages-error{border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);margin-bottom:.65rem;padding:.55rem .75rem;font-size:.91rem}.outages-loading-inline{color:var(--text-muted);font-size:.94rem}.outages-empty-card{border-radius:var(--radius-lg);border:1px dashed var(--border-strong);background:var(--surface-2);text-align:center;padding:1.5rem 1.25rem}.outages-empty-title{margin:0 0 .35rem;font-weight:800}.outages-empty-text{color:var(--text-muted);margin:0;font-size:.93rem;line-height:1.5}.outages-cards{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.outages-card{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin:0;padding:.75rem .85rem;transition:transform .2s,box-shadow .2s,border-color .2s;animation:.5s cubic-bezier(.22,1,.36,1) backwards outages-card-in;position:relative;overflow:hidden}.outages-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.outages-card.is-active{background:linear-gradient(135deg, var(--surface), var(--ok-bg));border-color:#4ade8073}[data-theme=dark] .outages-card.is-active{background:linear-gradient(135deg, var(--surface), #4ade8014)}.outages-card.is-active:after{content:"";background:linear-gradient(180deg, var(--ok), var(--chart-3));border-radius:3px 0 0 3px;width:3px;position:absolute;top:0;bottom:0;left:0}.outages-card-top{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.45rem;display:flex}.outages-card-pill-wrap{align-items:flex-start;gap:.45rem;min-width:0;display:flex}.outages-type-icon{border-radius:var(--radius-sm);background:var(--surface-3);flex-shrink:0;justify-content:center;align-items:center;width:1.85rem;height:1.85rem;font-size:1.2rem;line-height:1;transition:transform .25s cubic-bezier(.34,1.56,.64,1);display:flex}.outages-card:hover .outages-type-icon{transform:rotate(-6deg)scale(1.06)}.outages-type-icon--plan{background:#38bdf82e}.outages-type-icon--fault{background:#fbbf2438}.outages-type-icon--neutral{background:#7c75ec2e}.outages-card-event{color:var(--text);font-size:.83rem;font-weight:700}.outages-card-ago{color:var(--text-soft);font-size:.88rem}.outages-card-badges{flex-shrink:0}.outages-status{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.2rem .45rem;font-size:.81rem;font-weight:800}.outages-status--live{background:var(--ok-bg);color:var(--ok);animation:2.2s ease-in-out infinite outages-badge-soft}.outages-status--past{background:var(--surface-3);color:var(--text-soft)}.outages-card-name{letter-spacing:-.02em;margin:0 0 .45rem;font-size:1.06rem;font-weight:800;line-height:1.25}.outages-card-zone{color:var(--text-soft);font-size:.88em;font-weight:600}.outages-card-window{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.35rem;font-size:.85rem;display:flex}.outages-card-arrow{color:var(--brand-400);font-weight:700;transition:transform .25s}.outages-card:hover .outages-card-arrow{transform:translate(4px)}.outages-card-span{color:var(--text-soft);background:var(--surface-3);border-radius:999px;padding:.12rem .35rem;font-size:.84rem;font-weight:700}.outages-card-capacity{font-variant-numeric:tabular-nums;color:var(--text);margin-bottom:.45rem;font-size:.91rem;font-weight:700}.outages-card-meta{grid-template-columns:1fr 1fr;gap:.45rem;font-size:.88rem;display:grid}.outages-meta-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);margin-bottom:.12rem;font-size:.77rem;font-weight:700;display:block}.outages-meta-value{color:var(--text-muted);line-height:1.35}@media (prefers-reduced-motion:reduce){.outages-card,.outages-title-pulse,.outages-feed-toolbar,.outages-status--live,.outages-type-icon,.outages-card-arrow{animation:none!important}.outages-card:hover,.outages-card:hover .outages-type-icon,.outages-card:hover .outages-card-arrow,.outages-refresh:hover:not(:disabled),.curves-preset-btn:active,.curves-category-row:active,.curves-sidebar-reveal:active{transform:none}}:root{--ink:var(--text);--muted:var(--text-muted);--line:var(--border);--blue:var(--brand-500)}.app-nav{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8fafcf2;gap:.6rem;padding:.8rem 2rem;display:flex;position:sticky;top:0}.app-nav-link{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:.6rem;padding:.5rem .85rem;font-size:.8rem;font-weight:700}.app-nav-link.active{color:#1e40af;background:#dbeafe;border-color:#3b82f659}.home-shell{min-height:calc(100vh - 60px);padding:1.5rem 2rem 2rem}.home-wrap{gap:1rem;max-width:1180px;margin:0 auto;display:grid}.home-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.home-header h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.7rem,2.6vw,2.3rem)}.home-header p{color:var(--muted);margin:.3rem 0 0;font-size:.88rem}.home-controls{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:.8rem;display:grid}.home-kpi{border:1px solid var(--line);background:#fff;border-radius:.65rem;gap:.15rem;padding:.58rem .7rem;display:grid}.home-kpi small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700}.home-kpi strong{font-size:.95rem}.home-chart-card{gap:.65rem;display:grid}.home-analytics-card{gap:.75rem;display:grid}.home-analytics-card h2{margin:0;font-size:1.05rem}.home-analytics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;display:grid}.home-analysis-chart-card{gap:.75rem;display:grid}.home-analysis-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.7rem;display:flex}.home-analysis-head h2{margin:0;font-size:1.05rem}.home-sunlight-controls{flex-wrap:wrap;align-items:end;gap:.7rem;display:flex}.home-sunlight-controls label{min-width:190px}.home-analysis-legend{color:var(--muted);flex-wrap:wrap;gap:.8rem;font-size:.74rem;font-weight:700;display:flex}.home-analysis-legend span{align-items:center;gap:.35rem;display:inline-flex}.home-analysis-legend i{border-radius:2px;width:.72rem;height:.72rem}.home-legend-p10{background:#0ea5e9}.home-legend-p50{background:#0f172a}.home-legend-p90{background:#ef4444}.home-legend-band{background:#0ea5e93d;border:1px solid #0ea5e9b3}.home-daily-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.home-analysis-chart-wrap{border:1px solid var(--line);background:#ffffff9e;border-radius:.78rem;width:100%;height:280px;padding:.45rem;overflow:hidden}.home-analysis-chart-wrap svg{width:100%;height:100%;display:block}.home-chart-axis-text{fill:#475569;font-size:11px;font-weight:600}.home-hour-axis-text{fill:#64748b;font-size:8px;font-weight:600}.home-season-grid{gap:.75rem;display:grid}.home-season-card{border:1px solid var(--line);background:#ffffff8c;border-radius:.8rem;gap:.45rem;padding:.72rem;display:grid}.home-season-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.7rem;display:flex}.home-season-head h3{margin:0;font-size:.92rem}.home-season-head p{color:#475569;margin:0;font-size:.75rem;font-weight:700}.home-season-chart-wrap{height:250px}.home-season-grid-line{stroke:#94a3b82e;stroke-width:.8px}.home-percentile-band{fill:#0ea5e92e;stroke:#0ea5e95c;stroke-width:.8px}.home-benchmark-card{gap:.95rem;display:grid}.home-benchmark-card h2{margin:0;font-size:1.08rem}.home-benchmark-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.home-subchart{border:1px solid var(--line);background:#ffffff8c;border-radius:.8rem;gap:.45rem;padding:.75rem;display:grid}.home-subchart h3{margin:0;font-size:.93rem}.home-mini-chart-wrap{width:100%;height:220px;position:relative}.home-mini-chart-wrap svg{cursor:crosshair;width:100%;height:100%}.home-mini-tooltip{color:#fff;pointer-events:none;white-space:nowrap;background:#0f172ae6;border-radius:.5rem;gap:.08rem;padding:.32rem .48rem;font-size:.7rem;display:grid;position:absolute;top:.45rem;transform:translate(-50%)}.home-legend-inline{color:var(--muted);flex-wrap:wrap;gap:.9rem;font-size:.75rem;font-weight:700;display:flex}.home-legend-inline span{align-items:center;gap:.35rem;display:inline-flex}.home-legend-inline i{border-radius:50%;width:.65rem;height:.65rem}.legend-buy{background:#16a34a}.legend-sell{background:#dc2626}.home-buy-point{fill:#16a34a;stroke:#fff;stroke-width:1px}.home-sell-point{fill:#dc2626;stroke:#fff;stroke-width:1px}.home-chart-wrap{width:100%;height:min(62vh,440px);position:relative}.home-chart-wrap svg{cursor:crosshair;width:100%;height:100%}.home-chart-guide{stroke:#94a3b8;stroke-width:1.2px;stroke-dasharray:4 3}.home-chart-selecting{cursor:ew-resize}.home-chart-selection{fill:#0ea5e929;stroke:#0ea5e973;stroke-width:1px}.home-chart-point{fill:#0ea5e9;stroke:#fff;stroke-width:2px}.home-chart-tooltip{color:#fff;pointer-events:none;white-space:nowrap;background:#0f172ae6;border-radius:.55rem;gap:.1rem;padding:.35rem .5rem;font-size:.72rem;display:grid;position:absolute;top:.6rem;transform:translate(-50%)}.home-chart-tooltip strong{font-size:.7rem}.dashboard-shell{background:var(--bg);min-height:100vh;color:var(--ink);padding:2rem}.dashboard-wrap{gap:1rem;max-width:1180px;margin:0 auto;display:grid}.glass-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);background:#ffffffd1;border-radius:1rem;padding:1.25rem;box-shadow:0 10px 15px -3px #0f172a14}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dashboard-header h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.7rem,2.6vw,2.3rem)}.dashboard-header p{color:var(--muted);margin:.35rem 0 0;font-size:.88rem}.status-pill{color:#fff;background:var(--blue);border-radius:.7rem;padding:.55rem .9rem;font-size:.88rem;font-weight:700}.status-offline{background:var(--warn)}.status-checking{background:#475569}.controls-card{gap:.8rem;display:grid}.mode-switch{gap:.45rem;display:inline-flex}.mode-button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:.65rem;padding:.5rem .85rem;font-size:.78rem;font-weight:700}.mode-button.active{color:#1e40af;background:#dbeafe;border-color:#3b82f666}.control-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:.75rem;display:grid}.config-dashboard{gap:.75rem;display:grid}.config-card{border:1px solid var(--line);background:#fff9;border-radius:.9rem;padding:.75rem}.config-card h3{margin:0 0 .6rem;font-size:.9rem}.config-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;display:grid}.regime-header{justify-content:space-between;align-items:center;gap:.75rem;margin-top:.85rem;display:flex}.regime-list{gap:.6rem;margin-top:.6rem;display:grid}.regime-item{border:1px dashed #cbd5e1;border-radius:.8rem;gap:.55rem;padding:.65rem;display:grid}.regime-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}label{color:var(--muted);gap:.35rem;font-size:.78rem;font-weight:600;display:grid}.label-row{align-items:center;gap:.35rem;display:inline-flex}.field-help{color:#1f2937;cursor:help;background:#e2e8f0;border:1px solid #cbd5e1;border-radius:999px;justify-content:center;align-items:center;width:1rem;height:1rem;font-size:.65rem;font-weight:800;line-height:1;display:inline-flex}.field-help:hover{color:#1e40af;background:#dbeafe;border-color:#3b82f699}input,select{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff;border-radius:.65rem;padding:.58rem .7rem}textarea{border:1px solid var(--line);font:inherit;color:var(--ink);resize:vertical;background:#fff;border-radius:.65rem;width:100%;padding:.65rem .7rem}.textarea-label{gap:.45rem}.checkbox-row{color:var(--ink);grid-template-columns:auto 1fr;align-items:center;gap:.55rem;font-size:.78rem;font-weight:600}.checkbox-row input{width:auto;margin:0}.run-button{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:.65rem;padding:.62rem .9rem;font-weight:700}.run-button:disabled{opacity:.6;cursor:not-allowed}.button-row{flex-wrap:wrap;gap:.6rem;display:flex}.secondary-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:.65rem;padding:.62rem .9rem;font-weight:700}.secondary-button:disabled{opacity:.6;cursor:not-allowed}.api-note{color:var(--muted);font-size:.75rem}.error-text{color:var(--warn);margin:0;font-size:.82rem;font-weight:700}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}.metric-grid-rows{gap:.75rem;display:grid}.metric-grid.metric-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-grid.metric-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{padding:1rem}.metric-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.metric-number{letter-spacing:-.02em;margin-top:.3rem;font-size:1.45rem;font-weight:800}.feature-grid{grid-template-columns:2fr 1fr;gap:1rem;display:grid}.secondary-layout{grid-template-columns:1.6fr 1fr}.performance-card h2,.recommendation-card h2,.stats-card h2,.steps-card h2{margin:0 0 .8rem;font-size:1.05rem}.chart-shell{gap:.45rem;display:grid}.chart-head{justify-content:flex-start;display:flex}.legend{flex-wrap:wrap;gap:.45rem;display:flex}.legend span{color:var(--muted);align-items:center;gap:.28rem;font-size:.74rem;font-weight:700;display:inline-flex}.legend i{border-radius:2px;width:.68rem;height:.68rem}.svg-wrap{width:100%;height:220px}.svg-wrap svg{width:100%;height:100%}.axis-line{stroke:#e2e8f0;stroke-width:1px}.chart-foot{color:var(--muted);grid-template-columns:1fr auto auto 1fr;gap:.45rem;font-size:.72rem;font-weight:700;display:grid}.chart-foot span:nth-child(2),.chart-foot span:nth-child(3){text-align:center}.chart-foot span:last-child{text-align:right}.mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.9rem;display:grid}.mini-stat{border:1px solid var(--line);background:#ffffff8c;border-radius:.8rem;padding:.7rem}.mini-label{color:var(--muted);font-size:.74rem;font-weight:600}.mini-value{margin-top:.25rem;font-size:.95rem;font-weight:800}.recommendation-banner{background:#3b82f61a;border:1px solid #3b82f633;border-radius:.8rem;margin-bottom:.8rem;padding:.75rem}.recommendation-title{color:#1e40af;margin-bottom:.2rem;font-size:.82rem;font-weight:800}.recommendation-banner p{color:#1e3a8a;margin:0;font-size:.76rem}.recommendation-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.recommendation-list li{border:1px solid var(--line);background:#ffffff80;border-radius:.75rem;padding:.65rem}.item-title{font-size:.76rem;font-weight:800}.item-subtitle{color:var(--muted);margin-top:.15rem;font-size:.72rem}.stats-columns{gap:.85rem;display:grid}.stats-columns h3{margin:0 0 .45rem;font-size:.85rem}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;display:grid}.stats-card{gap:.6rem;display:grid}.stats-card h3{margin:0;font-size:1rem}.stats-table-wrap{overflow:auto}.stats-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.78rem}.stats-table th,.stats-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:.45rem .5rem}.stats-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.68rem;font-weight:700}dl{gap:.28rem;margin:0;display:grid}dl div{border-bottom:1px dashed #e2e8f0;justify-content:space-between;gap:.55rem;padding-bottom:.2rem;display:flex}dt{color:var(--muted);font-size:.76rem}dd{margin:0;font-size:.76rem;font-weight:700}.steps-grid{gap:.6rem;display:grid}.step-item{border:1px solid var(--line);background:#ffffff80;border-radius:.75rem;padding:.7rem}.step-item header{grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;display:grid}.step-index{color:#1d4ed8;font-size:.74rem;font-weight:800}.step-item header strong{font-size:.83rem}.step-item header span:last-child{color:var(--muted);font-size:.72rem;font-weight:700}.step-item p{color:var(--muted);margin:.45rem 0;font-size:.75rem}.step-item ul{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.step-item li{border-bottom:1px dashed #e2e8f0;justify-content:space-between;gap:.6rem;padding-bottom:.15rem;font-size:.72rem;display:flex}.step-item li span{color:var(--muted);text-transform:capitalize}.step-item li b{font-weight:800}.artifact-list{gap:.45rem;margin:0;padding-left:1.1rem;font-size:.74rem;display:grid}.artifact-list code{color:#1e3a8a;word-break:break-all}details{border:1px solid var(--line);background:#ffffff8c;border-radius:.7rem;padding:.55rem .7rem}details+details{margin-top:.55rem}summary{cursor:pointer;font-size:.78rem;font-weight:700}pre{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.6rem;max-height:220px;margin:.6rem 0 0;padding:.55rem;font-size:.7rem;line-height:1.4;overflow:auto}.statistics-shell{min-height:calc(100vh - 60px);padding:1.5rem 2rem 2rem}.statistics-wrap{grid-template-columns:minmax(0,1fr);gap:1rem;max-width:1180px;margin:0 auto;display:grid}.statistics-header h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.7rem,2.6vw,2.3rem)}.statistics-header p{color:var(--muted);margin:.35rem 0 0;font-size:.88rem}.statistics-assumptions h2,.statistics-model h2,.statistics-controls h2,.statistics-details h2,.statistics-table-card h2{margin:0 0 .7rem;font-size:1.05rem}.statistics-assumptions ul{color:#334155;gap:.35rem;margin:0;padding-left:1.1rem;font-size:.79rem;display:grid}.statistics-assumptions .api-note{margin:.8rem 0 0}.statistics-model{gap:.75rem;display:grid}.statistics-collapsible>summary{cursor:pointer;margin:0 0 .7rem;font-size:1.05rem;font-weight:800;list-style-position:inside}.statistics-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.statistics-process-step{border:1px solid var(--line);background:#ffffff94;border-radius:.8rem;gap:.35rem;padding:.72rem .75rem;display:grid}.statistics-process-step h3{margin:0;font-size:.84rem}.statistics-process-step p{color:#334155;margin:0;font-size:.75rem;line-height:1.45}.statistics-controls{flex-direction:column;gap:.75rem;display:flex}.statistics-config-parts{grid-template-columns:1fr;gap:.75rem;display:grid}.statistics-config-part{border:1px solid var(--line);background:#ffffff94;border-radius:.8rem;padding:.72rem .75rem}.statistics-config-part>summary{cursor:pointer;margin:0;font-size:.84rem;font-weight:700;list-style-position:inside}.statistics-config-part[open]>summary{margin:0 0 .6rem}.statistics-controls-grid{grid-template-columns:1fr;align-items:end;gap:.65rem;display:grid}.statistics-controls-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-subsection-divider{border-top:1px solid var(--line);color:#475569;grid-column:1/-1;padding-top:.45rem;font-size:.75rem;font-weight:700}.statistics-controls-actions{justify-content:flex-end;gap:.65rem;display:flex}.statistics-submit-button{color:#0c4a6e;cursor:pointer;background:#0ea5e91f;border:1px solid #0ea5e959;border-radius:.6rem;padding:.45rem .95rem;font-size:.82rem;font-weight:700}.statistics-submit-button:disabled{opacity:.6;cursor:not-allowed}.statistics-details{gap:.7rem;display:grid}.statistics-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.statistics-details-more{margin-top:.2rem}.statistics-details-more>summary{cursor:pointer;margin:0 0 .65rem;font-size:.82rem;font-weight:700;list-style-position:inside}.statistics-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.statistics-detail-item{border:1px solid var(--line);background:#ffffff8c;border-radius:.75rem;gap:.15rem;padding:.65rem;display:grid}.statistics-detail-item span{color:var(--muted);font-size:.74rem;font-weight:700}.statistics-detail-item strong{font-size:.9rem}.statistics-table-card{flex-direction:column;gap:.7rem;min-width:0;max-width:100%;display:flex}.statistics-distribution-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.statistics-chart-stack{grid-template-columns:minmax(0,1fr);gap:.7rem;display:grid}.statistics-distribution-chart-card{gap:.4rem;display:grid}.statistics-distribution-chart-card h3{margin:0;font-size:.9rem}.statistics-chart-head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.statistics-chart-head h3{margin:0}.statistics-chart-inspect{color:#0c4a6e;cursor:pointer;background:#0ea5e91a;border:1px solid #0ea5e959;border-radius:.55rem;padding:.3rem .55rem;font-size:.72rem;font-weight:700}.statistics-dispatch-visual-card{gap:.75rem;display:grid}.statistics-dispatch-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.8rem;display:flex}.statistics-dispatch-head h2{margin:0;font-size:1.05rem}.statistics-dispatch-picker{min-width:240px}.statistics-dispatch-chart-card{gap:.4rem;display:grid}.statistics-dispatch-chart-card h3{margin:0;font-size:.9rem}.statistics-dispatch-chart-wrap{border:1px solid var(--line);background:#fff9;border-radius:.75rem;width:100%;height:210px;padding:.45rem;overflow:hidden}.statistics-dispatch-chart-wrap.is-tall{height:340px}.statistics-dispatch-chart-wrap.is-medium{height:280px}.statistics-dispatch-chart-wrap svg{width:100%;height:100%;display:block}.statistics-dispatch-chart-wrap.is-clickable{cursor:zoom-in;transition:border-color .15s}.statistics-dispatch-chart-wrap.is-clickable:hover{border-color:#0ea5e973}.statistics-chart-grid-line{stroke:#94a3b873;stroke-width:1px}.statistics-chart-axis-line{stroke:#0f172a8c;stroke-width:1.2px}.statistics-chart-zero-line{stroke:#0f172a6b;stroke-width:1px;stroke-dasharray:4 3}.statistics-chart-sunrise-line{stroke:#f59e0bf2;stroke-width:1.3px;stroke-dasharray:6 4}.statistics-chart-sunset-line{stroke:#0ea5e9f2;stroke-width:1.3px;stroke-dasharray:6 4}.statistics-chart-sun-label{fill:#334155;font-size:10px;font-weight:700}.statistics-chart-axis-text{fill:#475569;font-size:11px;font-weight:600}.statistics-chart-bar-value,.statistics-chart-balancing-dot-label{fill:#0f172a;paint-order:stroke;stroke:#ffffffe6;stroke-width:2px;pointer-events:none;font-size:9px;font-weight:700}.statistics-legend-inline{color:#475569;flex-wrap:wrap;gap:.6rem;margin-top:-.1rem;font-size:.74rem;font-weight:700;display:flex}.statistics-legend-inline span{align-items:center;gap:.35rem;display:inline-flex}.statistics-legend-inline i{border-radius:2px;width:.7rem;height:.7rem}.legend-p50{background:#0f172a}.legend-p90{background:#0ea5e9}.legend-p95{background:#ef4444}.legend-total{background:#0f172a}.legend-battery{background:#16a34a}.legend-surplus{background:#0284c7}.statistics-percentile-strip{color:#334155;flex-wrap:wrap;gap:.55rem;font-size:.72rem;display:flex}.statistics-percentile-strip span{background:#f8fafccc;border:1px solid #94a3b84d;border-radius:.5rem;padding:.2rem .4rem}.statistics-percentile-strip b{color:#0f172a}.statistics-modal-backdrop{z-index:60;background:#0f172aa8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.statistics-modal-card{border:1px solid var(--line);background:#fffffff5;border-radius:1rem;gap:.75rem;width:min(1200px,96vw);max-height:94vh;padding:1rem;display:grid;overflow:auto;box-shadow:0 25px 45px -12px #0f172a73}.statistics-modal-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.statistics-modal-head h3{margin:0;font-size:1rem}.statistics-modal-close{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:.55rem;padding:.35rem .65rem;font-size:.75rem;font-weight:700}.statistics-modal-chart-wrap{border:1px solid var(--line);background:#ffffffb8;border-radius:.75rem;width:100%;height:min(72vh,640px);padding:.55rem;overflow:hidden}.statistics-modal-chart-wrap svg{width:100%;height:100%}.statistics-table-wrap{border:1px solid var(--line);border-radius:.75rem;max-height:420px;overflow:auto}.statistics-table-wrap table{border-collapse:collapse;width:100%;min-width:960px;font-size:.73rem}.statistics-table-wrap th,.statistics-table-wrap td{text-align:right;white-space:nowrap;border-bottom:1px solid #e2e8f0;padding:.5rem .55rem}.statistics-table-wrap th:first-child,.statistics-table-wrap td:first-child,.statistics-table-wrap th:nth-child(2),.statistics-table-wrap td:nth-child(2){text-align:left}.statistics-table-wrap th{z-index:1;color:#0f172a;background:#f8fafc;font-weight:800;position:sticky;top:0}.statistics-inline-totals{color:#334155;flex-wrap:wrap;gap:.45rem;margin-top:.55rem;font-size:.74rem;display:flex}.statistics-inline-totals span{background:#f8fafcd9;border:1px solid #94a3b84d;border-radius:.5rem;padding:.2rem .45rem}@media (max-width:980px){.feature-grid,.secondary-layout{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.control-grid,.config-grid,.regime-grid{grid-template-columns:1fr}.home-analytics-grid,.home-daily-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-config-parts,.statistics-detail-grid,.statistics-quick-grid,.statistics-distribution-grid,.statistics-process-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.app-nav{padding:.75rem 1rem}.home-shell,.statistics-shell{padding:1rem}.home-controls,.home-analytics-grid,.home-daily-summary-grid{grid-template-columns:1fr}.home-analysis-chart-wrap{height:250px}.home-season-chart-wrap{height:230px}.home-sunlight-controls{align-items:stretch}.home-sunlight-controls .secondary-button{width:100%}.statistics-controls-grid--two{grid-template-columns:1fr}.statistics-modal-card{padding:.8rem}.statistics-modal-chart-wrap{height:58vh}.home-benchmark-kpis,.stats-grid{grid-template-columns:1fr}.dashboard-shell{padding:1rem}.metric-grid,.mini-grid{grid-template-columns:1fr}.chart-foot{grid-template-columns:1fr 1fr}}.home-wrap,.dashboard-wrap,.statistics-wrap,.feature-grid,.secondary-layout,.home-controls,.home-analytics-grid,.home-daily-summary-grid,.home-benchmark-kpis,.control-grid,.config-grid,.regime-grid,.stats-grid,.statistics-detail-grid,.statistics-process-grid,.statistics-distribution-grid,.statistics-chart-stack,.statistics-controls-grid,.statistics-controls-grid--two,.statistics-quick-grid,.mini-grid,.glass-card,.home-kpi,.home-subchart,.config-card,.regime-item,.statistics-process-step,.statistics-detail-item,.stats-table-wrap,.statistics-table-wrap,.home-chart-wrap,.home-mini-chart-wrap,.home-analysis-chart-wrap,.statistics-dispatch-chart-wrap,.statistics-modal-card,.statistics-modal-chart-wrap,pre,textarea{min-width:0}.stats-table-wrap,.statistics-table-wrap{box-sizing:border-box;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;width:100%;min-width:0;max-width:100%;display:block;overflow:scroll auto}.stats-table,.statistics-table-wrap table{table-layout:auto;width:max-content;min-width:100%}pre,code,.stats-table td,.statistics-table-wrap td,.statistics-table-wrap th{overflow-wrap:anywhere;word-break:break-word}.home-analysis-chart-wrap svg,.home-chart-wrap svg,.home-mini-chart-wrap svg,.statistics-dispatch-chart-wrap svg,.statistics-modal-chart-wrap svg{max-width:100%}html,body{overflow-x:hidden}.sro-page{padding-bottom:3rem}.sro-report-page{gap:1rem;display:grid}.sro-report-header{background:radial-gradient(circle at 10% 10%,#1e40af1a,#0000 45%),radial-gradient(circle at 90% 0,#0369a11f,#0000 42%),#ffffffc7;border:1px solid #0f172a1a;position:relative;overflow:hidden}.sro-report-subtitle{color:#0f172a;max-width:90ch;margin-top:.35rem;font-size:.92rem;line-height:1.45}.sro-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.sro-setup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.8rem;display:grid}.sro-setup-item{color:#1e293b;gap:.28rem;font-size:.74rem;font-weight:700;display:grid}.sro-setup-item--wide{grid-column:span 3}.sro-setup-item input,.sro-setup-item select{color:#0f172a;background:#ffffffe6;border:1px solid #47556959;border-radius:.55rem;padding:.45rem .55rem;font-size:.8rem}.sro-setup-item input::placeholder{color:#64748b}.sro-list{margin:.5rem 0 0;padding-left:1.2rem}.sro-list li{margin:.25rem 0}.sro-error{margin-top:.75rem}.sro-investment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.sro-investment-card{background:#ffffff94;border:1px solid #94a3b859;border-radius:.85rem;gap:.3rem;padding:.75rem;display:grid}.sro-investment-baseline{color:#475569;font-size:.75rem}.sro-definition{color:#1e293b;margin:.05rem 0;font-size:.74rem;line-height:1.35}.sro-bridge-summary{flex-wrap:wrap;gap:.6rem;margin:.55rem 0 .75rem;display:flex}.sro-bridge-summary span{color:#0c4a6e;background:#0284c714;border:1px solid #0284c733;border-radius:.55rem;padding:.25rem .45rem;font-size:.76rem;font-weight:600}.sro-bridge-list{gap:.45rem;margin-bottom:.85rem;display:grid}.sro-bridge-row{grid-template-columns:minmax(160px,1.2fr) minmax(220px,2fr) minmax(120px,.7fr);align-items:center;gap:.6rem;display:grid}.sro-bridge-label{color:#1e293b;font-size:.77rem}.sro-bridge-bar-wrap{background:#94a3b82e;border-radius:.5rem;height:.72rem;overflow:hidden}.sro-bridge-bar{height:100%}.sro-bridge-bar.positive{background:linear-gradient(90deg,#16a34ad9,#4ade80e6)}.sro-bridge-bar.negative{background:linear-gradient(90deg,#dc2626d9,#f87171e6)}.sro-bridge-value{text-align:right;font-size:.78rem}.sro-monthly-bars{gap:.3rem;margin:.6rem 0 1rem;display:grid}.sro-monthly-row{grid-template-columns:minmax(74px,.75fr) minmax(230px,2.2fr) minmax(95px,.7fr);align-items:center;gap:.55rem;display:grid}.sro-monthly-label{color:#334155;font-size:.74rem;font-weight:700}.sro-monthly-bar-group{gap:3px;display:grid}.sro-monthly-bar{border-radius:.42rem;height:.48rem}.sro-monthly-bar.baseline{background:#84cc16d9}.sro-monthly-bar.sro{background:#0ea5e9e6}.sro-monthly-value{text-align:right;color:#0f172a;font-size:.74rem}.sro-line-chart-wrap{background:linear-gradient(#ffffff75,#ffffffad),repeating-linear-gradient(0deg,#94a3b81f,#94a3b81f 1px,#0000 1px 24px);border:1px solid #94a3b84d;border-radius:.8rem;width:100%;padding:.4rem;overflow:hidden}.sro-line-chart-wrap svg{width:100%;height:auto;display:block}.sro-frontier-chart-wrap{background:linear-gradient(#ffffff7a,#ffffffb3),repeating-linear-gradient(0deg,#94a3b81f,#94a3b81f 1px,#0000 1px 24px);border:1px solid #94a3b84d;border-radius:.8rem;width:100%;margin:.65rem 0 .45rem;padding:.45rem;overflow:hidden}.sro-frontier-chart-wrap svg{width:100%;height:auto;display:block}.sro-frontier-point{stroke-width:1.4px}.sro-frontier-point.baseline{fill:#0ea5e9f2;stroke:#0369a1f2}.sro-frontier-point.selected{fill:#16a34af2;stroke:#15803d}.sro-frontier-point.other{fill:#475569e0;stroke:#1e293be0}.sro-frontier-axis-label{fill:#1e293beb;font-size:11px;font-weight:600}.sro-frontier-dot{border-radius:999px;width:.75rem;height:.75rem}.sro-frontier-dot--baseline{background:#0ea5e9f2}.sro-frontier-dot--selected{background:#16a34af2}.sro-frontier-dot--other{background:#475569e6}.sro-frontier-line{background:#f97316f2;border-radius:99px;width:.95rem;height:2px}.sro-legend-inline{color:#334155;flex-wrap:wrap;gap:.7rem;margin-top:.45rem;font-size:.74rem;font-weight:700;display:flex}.sro-legend-inline span{align-items:center;gap:.35rem;display:inline-flex}.sro-legend-inline i{border-radius:2px;width:.75rem;height:.75rem}.sro-legend-inline i.baseline{background:#84cc16f2}.sro-legend-inline i.sro{background:#0ea5e9f2}.sro-assumption-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.sro-assumption-grid h3{margin:0 0 .35rem;font-size:.88rem}.sro-assumption-grid .sro-list{margin-top:0}.sro-ranking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.sro-distribution-bars{grid-template-columns:repeat(18,minmax(0,1fr));align-items:end;gap:.35rem;height:180px;margin:1rem 0;display:grid}.sro-bin{align-items:flex-end;height:100%;display:flex}.sro-bin-stack{grid-template-columns:1fr 1fr;align-items:end;gap:2px;width:100%;height:100%;display:grid}.sro-bar{border-radius:4px 4px 0 0;width:100%}.sro-bar.baseline{background:#8ecae6d9}.sro-bar.sro{background:#f9c74fe6}@media (max-width:900px){.sro-setup-grid{grid-template-columns:1fr}.sro-setup-item--wide{grid-column:span 1}.sro-investment-grid,.sro-assumption-grid{grid-template-columns:1fr}.sro-bridge-row{grid-template-columns:1fr;gap:.3rem}.sro-monthly-row{grid-template-columns:1fr;gap:.25rem}.sro-ranking-grid{grid-template-columns:1fr}}.sro-v2-page{--sro-ink:#0f172a;--sro-muted:#334155;--sro-border:#0f172a24;--sro-blue:#1f77b4;--sro-green:#2ca02c;--sro-orange:#ff7f0e;--sro-gray:#6b7280;gap:1rem;padding-bottom:3rem;font-family:IBM Plex Sans,Source Sans Pro,Segoe UI,sans-serif;display:grid}.sro-v2-page .glass-card{border:1px solid var(--sro-border);background:radial-gradient(circle at 2% 0,#1e40af1c,#0000 38%),radial-gradient(circle at 96% 10%,#0284c717,#0000 42%),linear-gradient(#ffffffeb,#ffffffd1)}.sro-v2-page h1,.sro-v2-page h2,.sro-v2-page h3{color:var(--sro-ink);letter-spacing:.01em}.sro-v2-page h1{margin:0;font-size:clamp(1.35rem,2.4vw,1.9rem)}.sro-v2-page h2{margin:0;font-size:1.14rem}.sro-v2-page h3{margin:0;font-size:.96rem}.section-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#1d4ed8;margin:0;font-size:.72rem;font-weight:700}.sro-v2-subtitle{color:#0f172a;max-width:95ch;margin:.55rem 0 0;font-size:.9rem;line-height:1.5}.sro-v2-heading-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.sro-v2-actions{gap:.5rem;min-width:220px;display:grid}.sro-v2-actions label{color:var(--sro-muted);gap:.3rem;font-size:.72rem;font-weight:700;display:grid}.sro-v2-actions select{color:var(--sro-ink);background:#fffffff2;border:1px solid #33415559;border-radius:.55rem;padding:.45rem .5rem;font-size:.82rem}.sro-v2-meta-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.55rem;margin-top:.9rem;display:grid}.sro-v2-meta-grid div{background:#ffffffc2;border:1px solid #0f172a21;border-radius:.7rem;gap:.15rem;padding:.45rem .6rem;display:grid}.sro-v2-meta-grid span{color:#475569;text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:700}.sro-v2-meta-grid strong{color:var(--sro-ink);font-size:.79rem}.sro-v2-quiet{color:#475569;margin:.7rem 0 0;font-size:.72rem}.sro-v2-narrative{color:#0f172a;margin:.45rem 0 .8rem;font-size:.87rem;line-height:1.5}.sro-v2-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.sro-v2-kpi-card{background:#ffffffdb;border:1px solid #0f172a24;border-radius:.8rem;gap:.2rem;padding:.72rem;display:grid}.sro-v2-kpi-label{color:#334155;margin:0;font-size:.75rem;font-weight:700}.sro-v2-kpi-value{color:#0f172a;font-size:1.08rem}.sro-v2-kpi-baseline{color:#475569;margin:0;font-size:.72rem}.sro-v2-kpi-def{color:#1e293b;margin:.3rem 0 0;font-size:.72rem;line-height:1.35}.sro-v2-bridge-headline{flex-wrap:wrap;gap:.65rem;margin:.4rem 0 .7rem;display:flex}.sro-v2-bridge-headline span{color:#0c4a6e;background:#0284c714;border:1px solid #0284c738;border-radius:.6rem;padding:.3rem .45rem;font-size:.75rem;font-weight:700}.sro-v2-bridge-list{gap:.42rem;margin-bottom:.85rem;display:grid}.sro-v2-bridge-row{grid-template-columns:minmax(180px,1.4fr) minmax(240px,2fr) minmax(130px,.7fr);align-items:center;gap:.6rem;font-size:.76rem;display:grid}.sro-v2-bridge-track{background:#94a3b833;border-radius:.55rem;height:.72rem;overflow:hidden}.sro-v2-bridge-bar{height:100%}.sro-v2-bridge-bar.positive{background:linear-gradient(90deg,#22c55ee6,#86efacf2)}.sro-v2-bridge-bar.negative{background:linear-gradient(90deg,#ef4444e6,#fca5a5f2)}.sro-v2-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-bottom:.8rem;display:grid}.sro-v2-chart-card{background:#ffffffd1;border:1px solid #0f172a1f;border-radius:.85rem;padding:.7rem}.sro-v2-chart-card svg{background:linear-gradient(#ffffff80,#ffffffd9),repeating-linear-gradient(0deg,#94a3b821,#94a3b821 1px,#0000 1px 25px);border-radius:.5rem;width:100%;height:auto}.sro-v2-legend{color:#334155;flex-wrap:wrap;gap:.65rem;margin-top:.45rem;font-size:.72rem;font-weight:700;display:flex}.sro-v2-legend span{align-items:center;gap:.35rem;display:inline-flex}.sro-v2-legend i{border-radius:99px;width:.78rem;height:.22rem}.sro-v2-legend i.baseline{background:var(--sro-blue)}.sro-v2-legend i.sro{background:var(--sro-green)}.sro-v2-legend i.other{background:var(--sro-gray)}.sro-v2-legend i.frontier{background:var(--sro-orange)}.sro-v2-month-grid{gap:.25rem;margin-top:.5rem;display:grid}.sro-v2-month-row{grid-template-columns:minmax(72px,.8fr) minmax(220px,2.2fr) minmax(96px,.7fr);align-items:center;gap:.45rem;font-size:.73rem;display:grid}.sro-v2-month-bars{gap:2px;display:grid}.sro-v2-month-bars .baseline,.sro-v2-month-bars .sro{border-radius:.45rem;height:.45rem}.sro-v2-month-bars .baseline{background:#1f77b4e6}.sro-v2-month-bars .sro{background:#2ca02ceb}.sro-v2-selected{color:#0f172a;margin:.3rem 0 .65rem;font-size:.8rem;font-weight:700}.sro-v2-risk-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:.55rem 0 .8rem;display:grid}.sro-v2-risk-grid article{background:#fffc;border:1px solid #0f172a1f;border-radius:.8rem;gap:.16rem;padding:.58rem;display:grid}.sro-v2-risk-grid .metric-label{color:#475569;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.sro-v2-risk-grid .metric-number{color:#0f172a;font-size:1rem}.sro-v2-frontier-wrap{background:#ffffffdb;border:1px solid #0f172a1f;border-radius:.8rem;margin-top:.55rem;padding:.5rem}.sro-v2-frontier-wrap svg{width:100%;height:auto}.sro-v2-axis-label{fill:#0f172ae0;font-size:11px}.sro-v2-distribution{grid-template-columns:repeat(20,minmax(0,1fr));align-items:end;gap:.25rem;height:175px;margin:.85rem 0;display:grid}.sro-v2-dist-bin{grid-template-columns:1fr 1fr;align-items:end;gap:2px;height:100%;display:grid}.sro-v2-dist-bin .baseline,.sro-v2-dist-bin .sro{border-radius:4px 4px 0 0;width:100%}.sro-v2-dist-bin .baseline{background:#1f77b4bf}.sro-v2-dist-bin .sro{background:#2ca02ccc}.sro-v2-figure-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:.6rem;display:grid}.sro-v2-figure-grid figure{background:#fffc;border:1px solid #0f172a1f;border-radius:.75rem;margin:0;padding:.45rem}.sro-v2-figure-grid img{object-fit:contain;background:#f8fafcf2;border-radius:.5rem;width:100%;height:auto;display:block}.sro-v2-empty{color:#475569;margin:.45rem 0;font-size:.78rem}.sro-v2-figure-fallback{color:#475569;text-align:center;background:#f8fafce6;border:1px dashed #47556959;border-radius:.5rem;place-items:center;min-height:180px;padding:.65rem;font-size:.78rem;display:grid}.sro-v2-figure-grid figcaption{color:#334155;margin-top:.32rem;font-size:.7rem}.sro-v2-assumption-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.sro-v2-assumption-grid article{background:#ffffffd1;border:1px solid #0f172a1c;border-radius:.78rem;padding:.62rem}.sro-v2-assumption-grid ul{color:#1e293b;margin:.35rem 0 0;padding-left:1.1rem;font-size:.78rem;line-height:1.4}.sro-v2-notes{color:#1e293b;margin-top:.8rem;padding-left:1.1rem;font-size:.78rem;line-height:1.45}.sro-v2-json{color:#0f172a;background:#f8fafceb;border:1px solid #0f172a21;border-radius:.65rem;max-height:280px;margin-top:.75rem;padding:.6rem;font-size:.72rem;overflow:auto}@media (max-width:1080px){.sro-v2-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sro-v2-kpi-grid,.sro-v2-risk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sro-v2-chart-grid,.sro-v2-figure-grid,.sro-v2-assumption-grid{grid-template-columns:1fr}}@media (max-width:760px){.sro-v2-heading-row{flex-direction:column}.sro-v2-actions{width:100%}.sro-v2-meta-grid,.sro-v2-kpi-grid,.sro-v2-risk-grid{grid-template-columns:1fr}.sro-v2-bridge-row,.sro-v2-month-row{grid-template-columns:1fr;gap:.25rem}.sro-v2-distribution{grid-template-columns:repeat(12,minmax(0,1fr))}}
