:root{--page-bg:#fff9ee;--card-bg:#fff;--ink:#1e293b;--border:#1e293b;--bull:#f43f5e;--bull-bg:#fbcfe8;--bear:#10b981;--bear-bg:#a7f3d0;--shadow:#1e293b;color:var(--ink);background:var(--page-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--page-bg:#1a1826;--card-bg:#27253d;--ink:#f1f5f9;--border:#09090b;--bull:#fb7185;--bull-bg:#831843;--bear:#34d399;--bear-bg:#064e3b;--shadow:#09090b;color:var(--ink);background:var(--page-bg)}*{box-sizing:border-box}body{background-color:var(--page-bg);background-image:radial-gradient(var(--border) .8px, transparent .8px);background-size:16px 16px;min-width:320px;min-height:100vh;margin:0}:root[data-theme=dark] body{background-image:radial-gradient(#f1f5f91f .8px,#0000 .8px)}button,input,select{font:inherit}.app-shell{width:min(1440px,100%);padding:env(safe-area-inset-top,28px) 28px 28px;margin:0 auto}.quote-flash-up{animation:.9s ease-out quoteFlashUp}.quote-flash-down{animation:.9s ease-out quoteFlashDown}@keyframes quoteFlashUp{0%{box-shadow:6px 6px 0 0 var(--shadow);background-color:#fb7185;transform:scale(1.06)rotate(-2deg)}to{box-shadow:4px 4px 0 0 var(--shadow);transform:scale(1)}}@keyframes quoteFlashDown{0%{box-shadow:6px 6px 0 0 var(--shadow);background-color:#34d399;transform:scale(1.06)rotate(2deg)}to{box-shadow:4px 4px 0 0 var(--shadow);transform:scale(1)}}.hero{grid-template-columns:1fr auto;align-items:start;gap:16px;margin-bottom:8px;display:grid}.hero-main{margin-top:14px}.main-content-shift{margin-top:10px}.eyebrow{color:var(--ink);opacity:.5;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:700}h1{color:var(--ink);white-space:nowrap;margin:0;padding-left:14px;font-size:clamp(20px,3.5vw,38px);line-height:1.05}.title-break{display:none}.subtitle{color:var(--ink);opacity:.55;margin:10px 0 0}.title-row{align-items:center;gap:10px;display:flex}.phase-pill{border:2px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.phase-pill:before{content:"";background:currentColor;border-radius:999px;width:5px;height:5px}.phase-group{flex-shrink:0;gap:8px;display:flex}.phase-pre{color:#1e293b;background:#fde68a}.phase-regular{background:var(--bear-bg);color:var(--ink)}.phase-post{color:#075985;background:#bae6fd}.phase-overnight{color:#5b21b6;background:#ddd6fe}.phase-auction{color:#9a3412;background:#fed7aa}.phase-regular_only{color:#075985;background:#e0f2fe}.phase-closed{color:#334155;background:#e2e8f0}.subtitle{color:#64748b;margin:10px 0 0}.status-card,.summary-grid,.toolbar,.cell,.empty-state{border:2px solid var(--border);background:var(--card-bg);box-shadow:4px 4px 0 0 var(--shadow);-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-theme=dark] .status-card,:root[data-theme=dark] .summary-grid,:root[data-theme=dark] .toolbar,:root[data-theme=dark] .cell,:root[data-theme=dark] .empty-state{background:var(--card-bg);border-color:var(--border);box-shadow:4px 4px 0 0 var(--shadow)}.status-card{border-radius:16px;gap:4px;min-width:260px;padding:10px 12px;display:grid;transform:translateY(6px)}.status-line{align-items:center;gap:7px;display:flex}.countdown-digits{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";width:2ch;display:inline-block}.status-card small,.cell-meta,.muted{color:var(--ink);opacity:.55}.desktop-only{display:inline}.mobile-only{display:none}.status-dot{border:1.5px solid var(--border);background:0 0;border-radius:999px;width:10px;height:10px}.status-open{background:#22c55e;border-color:#22c55e}.status-error,.status-closed{background:#ef4444;border-color:#ef4444}.status-connecting{background:#f59e0b;border-color:#f59e0b}:root[data-theme=dark] .status-open{background:#34d399;border-color:#34d399}:root[data-theme=dark] .status-error,:root[data-theme=dark] .status-closed{background:#fb7185;border-color:#fb7185}:root[data-theme=dark] .status-connecting{background:#fbbf24;border-color:#fbbf24}.summary-grid{border-radius:14px;justify-content:flex-start;gap:8px;margin-bottom:6px;padding:4px 8px;display:flex}.summary-grid>div{white-space:nowrap;justify-content:flex-start;align-items:center;gap:4px;min-width:0;height:26px;padding:0 8px;display:flex}.indicator-ticker{min-width:220px;margin-left:auto;animation:.48s ease-out tickerFlip}@keyframes tickerFlip{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.red-text{font-weight:800;color:var(--bull)!important}.green-text{font-weight:800;color:var(--bear)!important}.summary-grid span{color:var(--ink);opacity:.55;font-size:13px}.summary-grid strong{color:var(--ink);font-size:13px}.toolbar{border-radius:16px;grid-template-columns:repeat(4,auto) 1fr;align-items:center;gap:8px;margin-bottom:10px;padding:8px;display:grid}.toolbar select,.toolbar button,.toolbar input{border:2px solid var(--border);background:var(--card-bg);height:34px;color:inherit;box-shadow:2px 2px 0 0 var(--shadow);border-radius:12px;padding:0 8px;font-size:13px}:root[data-theme=dark] .toolbar select,:root[data-theme=dark] .toolbar button,:root[data-theme=dark] .toolbar input{background:#27253d}.toolbar button{cursor:pointer;font-weight:700}.toolbar-actions{justify-self:end;align-items:center;gap:8px;display:flex}.toolbar-search{position:relative}.toolbar-search-toggle{justify-content:center;align-items:center;width:34px;padding:0;display:flex}.toolbar-search-toggle svg{width:16px;height:16px}.toolbar-search-toggle-active{color:var(--bull)}.toolbar-search-popover{z-index:30;border:2px solid var(--border);background:var(--card-bg);box-shadow:4px 4px 0 0 var(--shadow);align-items:center;gap:6px;min-width:min(280px,100vw - 48px);padding:8px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.toolbar-search-popover input{min-width:0;box-shadow:none;flex:1}.toolbar-search-popover input::-webkit-search-cancel-button{display:none}.toolbar-search-clear{flex-shrink:0;width:28px;padding:0}.heatmap-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.cell{aspect-ratio:1;border-radius:0;grid-template-rows:auto 1fr auto auto;gap:0;min-height:0;padding:10px 12px 0;transition:transform .18s,box-shadow .18s;display:grid;overflow:hidden}.cell:hover{box-shadow:6px 6px 0 0 var(--shadow);transform:translate(-1px,-1px)rotate(-.35deg)}.cell-up-1,.cell-up-3,.cell-up-5,.cell-up-10,.cell-up-20,.cell-up-max,.cell-down-1,.cell-down-3,.cell-down-5,.cell-down-10,.cell-down-20,.cell-down-max,.cell-flat,.cell-delayed,:root[data-theme=dark] .cell-up-1,:root[data-theme=dark] .cell-up-3,:root[data-theme=dark] .cell-up-5,:root[data-theme=dark] .cell-up-10,:root[data-theme=dark] .cell-up-20,:root[data-theme=dark] .cell-up-max,:root[data-theme=dark] .cell-down-1,:root[data-theme=dark] .cell-down-3,:root[data-theme=dark] .cell-down-5,:root[data-theme=dark] .cell-down-10,:root[data-theme=dark] .cell-down-20,:root[data-theme=dark] .cell-down-max,:root[data-theme=dark] .cell-flat,:root[data-theme=dark] .cell-delayed{background:var(--card-bg)}.cell-topline{grid-template-columns:1fr auto;align-items:center;gap:4px;padding-bottom:2px;display:grid}.cell-price-giant{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.cell-price-block{flex-direction:column;align-items:flex-end;display:flex}.cell-price-block .price-up,.cell-price-block .price-down{letter-spacing:-.04em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(24px,5vw,42px);font-weight:900;line-height:1}.price-md{font-size:clamp(20px,4vw,32px)!important}.price-sm{font-size:clamp(16px,3.5vw,26px)!important}.price-up{color:var(--bull);text-shadow:0 0 12px #fb718566}.price-down{color:var(--bear);text-shadow:0 0 12px #34d39966}.cell h3{letter-spacing:-.02em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:14px;font-weight:800;overflow:hidden}.holding-dot{vertical-align:middle;background:#3b82f6;border-radius:999px;width:6px;height:6px;margin-left:3px;display:inline-block}.unsupported-badge{color:var(--ink);opacity:.45;text-align:right;margin:4px 0 6px;font-size:9px;font-weight:700}.unsupported-inline{color:var(--ink);opacity:.45;vertical-align:middle;margin-left:6px;font-size:8px;font-weight:700;display:inline-block}.name-md{font-size:12px!important}.name-long{font-size:10px!important}.cell-name-line{color:var(--ink);opacity:.45;-webkit-line-clamp:2;-webkit-box-orient:vertical;height:22px;margin:0;font-size:9px;line-height:1.2;display:-webkit-box;overflow:hidden}.pill-group{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.market-pill,.session-pill{border:2px solid var(--border);background:var(--card-bg);color:var(--ink);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:800}:root[data-theme=dark] .market-pill{background:var(--card-bg)}:root[data-theme=dark] .session-pill{background:var(--card-bg);color:var(--ink)}.cell-change-badge{text-align:center;padding:2px 0 6px;font-size:12px;font-weight:800;display:block}.cell-change-line{justify-content:flex-end;padding-bottom:4px;display:flex}.cell-change-line span{font-size:12px;font-weight:800}.change-positive{color:var(--bull);text-shadow:0 0 6px #fb718580}.change-negative{color:var(--bear);text-shadow:0 0 6px #34d39980}.cell-grid-bottom{border-top:2px solid var(--border);grid-template-columns:1fr 1fr;margin:0 -12px;display:grid}.cell-grid-item{border-bottom:2px solid var(--border);flex-direction:column;align-items:center;gap:1px;padding:6px 8px;display:flex}.cell-grid-item:first-child{border-right:2px solid var(--border)}.cell-grid-label{color:var(--ink);opacity:.4;text-transform:uppercase;letter-spacing:.1em;font-size:8px;font-weight:700}.cell-grid-value{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:800}.empty-state{min-height:120px;color:var(--ink);opacity:.55;border-radius:20px;place-items:center;display:grid}.cell-meta{font-size:11px}@media (width<=840px){.app-shell{padding:env(safe-area-inset-top,18px) 18px 18px}.hero{grid-template-columns:1fr}.hero-main,.main-content-shift{margin-top:6px}.summary-grid{gap:8px}.summary-grid>div{padding:0 8px}.toolbar{grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:6px}.toolbar-actions{gap:6px}}@media (width<=520px){.app-shell{padding:env(safe-area-inset-top,12px) 12px 12px}.hero{grid-template-columns:1fr auto;align-items:center;gap:8px;margin:0 4px 10px}.hero-main,.main-content-shift{margin-top:0}.eyebrow,.subtitle{display:none}h1{white-space:normal;padding-left:4px;font-size:22px}.title-break{display:inline}.phase-group{flex-direction:column;gap:4px}.status-card{border-radius:12px;gap:1px;min-width:104px;padding:6px 8px;font-size:10px;transform:none}.status-card strong{font-size:10px}.status-card small{font-size:9px}.desktop-only{display:none}.mobile-only{display:inline}.status-dot{width:7px;height:7px}.summary-grid{gap:4px;margin:0 4px 6px;padding:4px 6px}.indicator-ticker{min-width:0;margin-left:0}.summary-grid>div{gap:3px;height:24px;padding:0 3px}.summary-grid span,.summary-grid strong{white-space:nowrap;flex-shrink:0;font-size:10px}.toolbar{border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:4px;margin:0 4px 10px;padding:6px}.toolbar select,.toolbar button,.toolbar input{border-radius:8px;min-width:0;height:30px;padding:0 2px;font-size:9px}.toolbar-actions{gap:4px}.toolbar-search-toggle{width:30px}.toolbar-search-popover{gap:4px;min-width:min(220px,100vw - 32px);padding:6px;top:calc(100% + 6px);right:-2px}.toolbar-search-popover input{padding:0 6px;font-size:16px}.toolbar-search-clear{width:24px;font-size:10px}.heatmap-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.cell{aspect-ratio:1;border-radius:11px;gap:3px;min-height:0;padding:5px}.cell-topline{gap:2px;padding-bottom:2px}.cell h3{font-size:10px}.holding-dot{width:5px;height:5px;margin-left:2px}.cell-name-line{height:20px;font-size:8px}.cell-price-block .price-up,.cell-price-block .price-down{font-size:clamp(20px,6vw,32px)}.cell-change-line span{font-size:10px}.cell-grid-bottom{margin:0 -8px}.cell-grid-item{padding:4px}.cell-grid-label{font-size:7px}.cell-grid-value{font-size:10px}.pill-group,.cell-meta,.cell-meta.muted{display:none}.change-positive,.change-negative{font-size:9px}}.sparkline-empty{color:var(--ink);opacity:.3;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}@keyframes sparklinePulse{0%,to{r:3;opacity:1}50%{r:6;opacity:.3}}.sparkline-pulse{animation:1.5s ease-in-out infinite sparklinePulse}.modal-backdrop{z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-panel{background:var(--card-bg);border:3px solid var(--border);width:min(480px,100%);max-height:90vh;box-shadow:8px 8px 0 0 var(--shadow);border-radius:0;padding:24px 20px 20px;position:relative;overflow-y:auto}.modal-actions{align-items:center;gap:8px;display:flex;position:absolute;top:8px;right:8px}.modal-action-button,.modal-close{border:2px solid var(--border);background:var(--card-bg);width:32px;height:32px;color:var(--ink);cursor:pointer;box-shadow:2px 2px 0 0 var(--shadow);justify-content:center;align-items:center;text-decoration:none;display:flex}.modal-action-button svg{width:16px;height:16px}.modal-close{font-size:16px;font-weight:800}.detail-root{flex-direction:column;gap:12px;display:flex}.detail-header h2{color:var(--ink);margin:0 76px 2px 0;font-size:20px;font-weight:800}.detail-symbol{color:var(--ink);opacity:.4;margin:0;font-size:11px}.detail-price{align-items:baseline;gap:10px;display:flex}.detail-price .price-up,.detail-price .price-down{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:32px;font-weight:900}.detail-change{font-size:16px;font-weight:800}.detail-session{align-self:flex-start}.detail-sparkline{width:100%}.detail-grid{border-top:2px solid var(--border);border-left:2px solid var(--border);grid-template-columns:1fr 1fr;gap:0;display:grid}.detail-grid>div{border-right:2px solid var(--border);border-bottom:2px solid var(--border);flex-direction:column;gap:2px;padding:8px 10px;display:flex}.detail-grid span{color:var(--ink);opacity:.4;text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:700}.detail-grid strong{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:16px;font-weight:800}
