:root{--bg:#f4f6f5;--surface:#fff;--elevated:#f9fbfa;--heading:#162120;--text:#384846;--muted:#6f807d;--border:#dce5e2;--accent:#247a7b;--accent-strong:#176568;--accent-soft:#e9f4f3;--positive:#198754;--negative:#b42318;--warning:#c47a10;--hover:#f4faf8;--table-head:#f7faf9;--chart-grid:#dde5e2;--phase-boom:#1987541c;--phase-recession:#b423181c;--phase-boom-alt:#19875433;--phase-recession-alt:#b4231833;--event-positive:#247a7b1a;--event-negative:#c47a101c;--event-positive-line:#247a7b;--event-negative-line:#c47a10;--event-positive-line-alt:#176568;--event-negative-line-alt:#9a5b00;--contest-band:#5b6ee11a;--contest-border:#5b6ee173;--contest-border-alt:#5b6ee1d1;--tooltip-bg:#fff;--tooltip-text:#162120;--shadow-sm:0 1px 2px #16212017;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}:root[data-theme=dark]{--bg:#111716;--surface:#18211f;--elevated:#202b28;--heading:#edf6f3;--text:#c7d6d2;--muted:#8fa29d;--border:#2d3b38;--accent:#55b8b1;--accent-strong:#8edbd5;--accent-soft:#173b3a;--positive:#55c88a;--negative:#ff8a7a;--warning:#e0a23b;--hover:#1e2b28;--table-head:#1d2926;--chart-grid:#2f403c;--phase-boom:#55c88a21;--phase-recession:#ff8a7a21;--phase-boom-alt:#55c88a38;--phase-recession-alt:#ff8a7a38;--event-positive:#55b8b121;--event-negative:#e0a23b21;--event-positive-line:#55b8b1;--event-negative-line:#e0a23b;--event-positive-line-alt:#8edbd5;--event-negative-line-alt:#ffc75f;--contest-band:#8e9aff21;--contest-border:#8e9aff80;--contest-border-alt:#8e9affe6;--tooltip-bg:#202b28;--tooltip-text:#edf6f3;--shadow-sm:0 1px 2px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #247a7b59}h1,h2,p{margin-top:0}h1{color:var(--heading);margin-bottom:0;font-size:clamp(32px,5vw,58px);font-weight:850;line-height:.98}h2{color:var(--heading);font-size:22px;font-weight:800;line-height:1.15}::selection{color:#fff;background:var(--accent)}.app-shell{width:min(1380px,100% - 32px);margin:0 auto;padding:28px 0 42px}.topbar,.panel-header,.control-row,.index-tile,.quality-header,.metric,.loading-state,.status-strip,.update-note,.topbar-actions{align-items:center;display:flex}.topbar{justify-content:space-between;gap:24px;margin-bottom:24px}.topbar h1{max-width:820px}.site-footer{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 14px;margin-top:24px;padding-top:16px;font-size:12px;line-height:1.5;display:flex}.site-footer span{min-width:min(100%,240px)}.topbar-actions{gap:10px}.icon-button{border:1px solid var(--border);width:38px;height:38px;color:var(--text);background:var(--surface);cursor:pointer;border-radius:7px;place-items:center;display:inline-grid}.icon-button:hover{color:var(--heading);background:var(--hover)}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700}.status-strip,.update-note,.loading-state{color:var(--muted);white-space:nowrap;gap:8px;font-size:14px}.status-strip,.update-note{border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:8px 12px}.update-note strong{color:var(--heading);font-variant-numeric:tabular-nums}.update-note small{color:var(--muted);font-size:12px}.status-dot{border-radius:999px;width:8px;height:8px}.status-dot.demo{background:var(--warning)}.status-dot.live{background:var(--positive)}.control-row{justify-content:space-between;gap:18px;margin-bottom:18px}.chart-overlay-controls{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.chart-overlay-controls button{border:1px solid var(--border);min-height:36px;color:var(--text);background:var(--surface);cursor:pointer;border-radius:6px;padding:0 12px;font-weight:800}.chart-overlay-controls button.active{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.view-tabs{border:1px solid var(--border);background:var(--surface);--active-tab:0;border-radius:7px;grid-template-columns:repeat(3,minmax(150px,1fr));gap:4px;margin-bottom:18px;padding:4px;display:inline-grid;position:relative}.view-tabs.dashboard{--active-tab:0}.view-tabs.overview{--active-tab:1}.view-tabs.compare{--active-tab:2}.view-tabs:before{background:var(--elevated);width:calc(33.3333% - 5.33333px);box-shadow:var(--shadow-sm);content:"";transform:translateX(calc(var(--active-tab) * (100% + 4px)));will-change:transform;border-radius:5px;transition:transform .26s cubic-bezier(.2,.8,.2,1),background-color .18s,box-shadow .18s;position:absolute;inset:4px auto 4px 4px}.clean-dashboard{gap:16px;display:grid}.dashboard-hero{border:1px solid var(--border);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.dashboard-hero h2{margin-bottom:0}.market-summary-grid,.signal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.market-summary-card,.signal-card{border:1px solid var(--border);background:var(--surface);border-radius:8px}.market-summary-card{justify-content:space-between;align-items:stretch;gap:14px;padding:18px;display:flex}.dashboard-card-main{flex:1;gap:8px;min-width:0;display:grid}.dashboard-card-side{align-content:space-between;gap:10px;width:min(38%,160px);min-width:126px;display:grid}.market-summary-card span{color:var(--muted);font-size:14px;font-weight:800}.market-summary-card strong{color:var(--heading);font-size:34px;line-height:1}.market-summary-card small{align-items:center;gap:5px;font-weight:800;display:inline-flex}.signal-card{border-left-width:4px;justify-content:space-between;gap:14px;min-height:190px;padding:18px;display:flex}.signal-card.positive{border-left-color:var(--positive)}.signal-card.negative{border-left-color:var(--negative)}.signal-card.neutral{border-left-color:var(--accent)}.signal-card h2{margin-bottom:10px}.signal-card strong{color:var(--heading);margin-bottom:10px;font-size:20px;display:block}.signal-card p:not(.eyebrow){color:var(--text);margin:0}.mini-chart{width:100%;height:74px;min-height:74px;color:var(--accent)}.mini-chart.positive{color:var(--positive)}.mini-chart.negative{color:var(--negative)}.mini-chart.empty{border:1px dashed var(--border);color:var(--muted);border-radius:7px;place-items:center;font-size:12px;font-weight:800;display:grid}.go-to-button{border:1px solid var(--border);min-height:34px;color:var(--heading);background:var(--elevated);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:900;display:inline-flex}.go-to-button:hover{border-color:var(--accent);color:var(--accent)}.go-to-button:disabled{cursor:not-allowed;opacity:.55}.view-tabs button{z-index:1;min-height:38px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;gap:8px;transition:color .18s,transform .18s;display:inline-flex;position:relative}.view-tabs button:hover{color:var(--heading);transform:translateY(-1px)}.view-tabs button.active{color:var(--heading);box-shadow:none;background:0 0}.view-panel{transform-origin:top;animation:.28s cubic-bezier(.2,.8,.2,1) both view-slide-in}.overview-view{display:block}@keyframes view-slide-in{0%{opacity:0;transform:translateY(10px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.view-tabs:before,.view-tabs button,.view-panel{transition:none;animation:none}.view-tabs button:hover{transform:none}}.segmented-control{border:1px solid var(--border);background:var(--surface);border-radius:7px;grid-template-columns:repeat(2,minmax(150px,1fr));padding:4px;display:inline-grid}.segmented-control button,.index-tile{cursor:pointer;color:var(--text);font:inherit;border:0}.segmented-control button{background:0 0;border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:0 14px;display:inline-flex}.segmented-control button.active{color:var(--heading);background:var(--elevated);box-shadow:var(--shadow-sm)}.index-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.index-tile{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:12px;min-height:78px;padding:16px}.index-tile.active{border-color:var(--accent);background:var(--accent-soft)}.quality-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-bottom:16px;padding:16px}.quality-header{justify-content:space-between;gap:16px;margin-bottom:14px}.quality-header h2{margin-bottom:0}.toggle-row{color:var(--text);white-space:nowrap;align-items:center;gap:9px;font-size:14px;display:inline-flex}.toggle-row input{width:17px;height:17px;accent-color:var(--accent)}.quality-grid{grid-template-columns:repeat(13,minmax(0,1fr));gap:8px;display:grid}.quality-tile{border:1px solid var(--border);min-height:36px;color:var(--text);background:var(--elevated);cursor:pointer;border-radius:6px;font-weight:700}.quality-tile.active{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.tile-icon{width:36px;height:36px;color:var(--accent);background:var(--elevated);border-radius:7px;flex:none;place-items:center;display:grid}.index-tile strong,.index-tile small{display:block}.index-tile strong{color:var(--heading);font-size:16px;line-height:1.2}.index-tile small{color:var(--muted);margin-top:4px;font-size:13px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 310px;gap:16px;margin-bottom:16px;display:grid}.chart-panel,.metrics-panel,.components-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px}.chart-panel{min-width:0;padding:20px 20px 14px}.panel-header{justify-content:space-between;gap:18px;margin-bottom:18px}.panel-header.compact{border-bottom:1px solid var(--border);margin:0;padding:18px 20px}.panel-header h2{margin:0 0 6px}.panel-header p:not(.eyebrow){max-width:620px;color:var(--muted);margin:0}.latest-value{text-align:right}.latest-value span{color:var(--heading);font-size:34px;font-weight:800;line-height:1;display:block}.latest-value small{justify-content:flex-end;align-items:center;gap:4px;margin-top:8px;font-weight:700;display:inline-flex}.positive{color:var(--positive)}.negative{color:var(--negative)}.chart-wrap{min-width:0;height:390px}.metrics-panel{align-content:start;gap:1px;display:grid;overflow:hidden}.metric{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;min-height:64px;padding:0 18px}.metric span{color:var(--muted);font-size:14px}.metric strong{color:var(--heading);font-size:18px}.metric strong.positive{color:var(--positive)}.metric strong.negative{color:var(--negative)}.data-source{color:var(--muted);align-items:flex-start;gap:10px;padding:16px 18px;font-size:14px;line-height:1.45;display:flex}.components-panel{overflow:hidden}.comparison-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:20px}.comparison-heading{align-items:flex-start}.comparison-controls{grid-template-columns:repeat(2,minmax(120px,1fr)) minmax(220px,1.5fr) repeat(5,minmax(110px,1fr));align-items:end;gap:12px;margin-bottom:14px;display:grid}.comparison-controls label{color:var(--muted);gap:6px;font-size:13px;font-weight:700;display:grid}.comparison-controls select{border:1px solid var(--border);min-width:0;height:38px;color:var(--heading);background:var(--elevated);border-radius:6px;padding:0 10px}.comparison-controls select:disabled{color:var(--muted);cursor:not-allowed;opacity:.68}.command-button{border:1px solid var(--accent);color:#fff;background:var(--accent);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:7px;height:38px;font-weight:800;display:inline-flex}.command-button:hover{background:var(--accent-strong)}.command-button:disabled,.secondary-command:disabled{cursor:not-allowed;opacity:.55}.selection-strip{flex-wrap:wrap;gap:8px;min-height:38px;margin-bottom:14px;display:flex}.empty-selection{min-height:34px;color:var(--muted);align-items:center;font-size:14px;display:inline-flex}.selection-chip{border:1px solid color-mix(in srgb, var(--chip-color) 70%, var(--border));min-height:34px;color:var(--heading);background:color-mix(in srgb, var(--chip-color) 12%, var(--surface));cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.preset-row{grid-template-columns:minmax(180px,260px) auto minmax(0,1fr);align-items:end;gap:10px;margin-bottom:14px;display:grid}.preset-row label{color:var(--muted);gap:6px;font-size:13px;font-weight:700;display:grid}.preset-row input{border:1px solid var(--border);min-width:0;height:38px;color:var(--heading);background:var(--elevated);border-radius:6px;padding:0 10px}.secondary-command{border:1px solid var(--border);height:38px;color:var(--heading);background:var(--elevated);cursor:pointer;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:800;display:inline-flex}.secondary-command:hover,.preset-item button:hover{background:var(--hover)}.preset-list{flex-wrap:wrap;align-items:center;gap:8px;min-height:38px;display:flex}.preset-item{border:1px solid var(--border);background:var(--elevated);border-radius:999px;min-height:34px;display:inline-flex;overflow:hidden}.preset-item button{min-height:34px;color:var(--heading);cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:800}.preset-item button:first-child{padding:0 10px 0 12px}.preset-delete{place-items:center;width:32px;display:inline-grid;border-left:1px solid var(--border)!important;color:var(--muted)!important}.comparison-chart{min-width:0;min-height:320px}.chart-tooltip{border:1px solid var(--border);min-width:190px;max-width:300px;color:var(--tooltip-text);background:var(--tooltip-bg);box-shadow:var(--shadow-sm);border-radius:7px;gap:6px;padding:10px 12px;font-size:13px;display:grid}.chart-tooltip strong{color:var(--tooltip-text);font-size:13px}.chart-tooltip span{align-items:center;gap:7px;display:flex}.chart-tooltip i{border-radius:999px;width:8px;height:8px}.tooltip-context{border-top:1px solid var(--border);gap:3px;padding-top:6px;display:grid}.tooltip-context b{color:var(--tooltip-text);font-size:12px}.tooltip-context small{color:var(--muted);font-size:12px}.tooltip-realm-group{gap:2px;display:grid}.tooltip-realm-group em{color:var(--tooltip-text);font-size:12px;font-style:normal;font-weight:800}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:780px}th,td{border-bottom:1px solid var(--border);text-align:right;padding:13px 20px;font-size:14px}th:first-child,td:first-child{text-align:left}th{color:var(--muted);background:var(--table-head);font-weight:700}td{color:var(--text)}td strong,td span{display:block}td strong{color:var(--heading);font-weight:700}td span{color:var(--muted);margin-top:2px;font-size:12px}tbody tr:hover{background:var(--hover)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=980px){.app-shell{width:min(100% - 20px,760px);padding-top:18px}.topbar,.control-row,.panel-header,.quality-header{flex-direction:column;align-items:flex-start}.status-strip,.update-note{white-space:normal}.segmented-control,.view-tabs,.dashboard-grid{grid-template-columns:1fr;width:100%}.comparison-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.market-summary-grid,.signal-grid{grid-template-columns:1fr}.market-summary-card,.signal-card{flex-direction:column}.dashboard-card-side{grid-template-columns:minmax(0,1fr) auto;align-items:end;width:100%;min-width:0}.mini-chart{height:64px;min-height:64px}.dashboard-hero{flex-direction:column;align-items:flex-start}.preset-row{grid-template-columns:1fr;align-items:stretch}.index-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.quality-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.chart-wrap{height:320px}.latest-value{text-align:left}}@media (width<=560px){.index-grid{grid-template-columns:1fr}.topbar-actions{justify-content:space-between;width:100%}.quality-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.toggle-row{white-space:normal}.comparison-controls,.dashboard-card-side{grid-template-columns:1fr}}
