.security-palette{max-height:min(80vh,680px);overflow-y:auto}.security-palette input{flex:1;min-width:0}.security-palette ul{padding:0;list-style:none}.security-palette li button{text-align:left;border:0;width:100%}.security-palette li[aria-selected=true]{background:var(--bg-hover);border-left:2px solid var(--brand)}.stock-menu-backdrop{z-index:110;position:fixed;inset:0}.stock-menu{background:var(--bg-panel);min-width:220px;color:var(--text-primary);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:8px;gap:4px;padding:12px;display:grid;position:fixed}.stock-menu button{text-align:left}.notification-center{max-height:80vh;overflow-y:auto}.notification-tools{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px 14px;padding-bottom:10px;display:flex}.notification-tools label{align-items:center;gap:6px;display:inline-flex}.notification-center ul{margin:0;padding:0;list-style:none}.notification-center li{border-bottom:1px solid var(--border);padding:10px 0 10px 14px;position:relative}.notification-center li p{margin:4px 0 0}.notification-center li.is-unread:before{content:"";background:var(--brand);border-radius:50%;width:6px;height:6px;position:absolute;top:16px;left:0}.unread-count{color:var(--text-primary);background:var(--bg-elevated)}.interaction-feedback{z-index:120;background:var(--bg-panel);border:1px solid var(--border);border-left:3px solid var(--brand);max-width:min(420px,100vw - 32px);box-shadow:var(--shadow-lg);border-radius:8px;align-items:center;gap:12px;padding:10px 12px 10px 14px;animation:.18s ease-out feedback-in;display:flex;position:fixed;bottom:24px;right:16px}.interaction-feedback.is-error{border-left-color:var(--risk)}.interaction-feedback button{padding:2px 8px;font-size:12px}@keyframes feedback-in{0%{opacity:0;transform:translateY(8px)}}@media (max-width:480px){.interaction-feedback{max-width:none;left:12px;right:12px;bottom:calc(68px + env(safe-area-inset-bottom,0px))}}.stock-inline-preview{width:100%;max-width:none;box-shadow:none;background:0 0;border:0;position:static}.hover-sparkline{width:100%;height:60px;color:var(--brand)}.hover-actions{flex-wrap:wrap;gap:6px;display:flex}.virtual-row[aria-selected=true]>div{border-bottom-color:var(--brand-line)}.virtual-row[aria-selected=true]>div:first-child{box-shadow:inset 3px 0 0 var(--brand)}.sort-paused{min-height:1.5em;color:var(--text-secondary);line-height:1.5;display:block}@media (max-width:480px){.search-label{display:none}.stock-menu{max-width:calc(100vw - 8px)}}@media (prefers-reduced-motion:reduce){.indices{animation:none}}.stock-hover-portal{z-index:95;width:min(310px,100vw - 16px);position:fixed}.stock-hover-portal>.stock-hover-card{width:100%;max-height:min(350px,80vh);position:static;overflow:auto}.stock-connect{gap:8px;display:grid}.stock-connect-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.stock-connect .stock-connect-note{margin:0;font-size:11px}.stock-connect-list{margin:0;padding:0;font-size:12px;list-style:none;display:grid}.stock-connect-list li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto auto 64px;align-items:center;gap:10px;padding:5px 0;display:grid}.stock-connect-list li>span:not(:first-child){text-align:right}.stock-connect-list li>span:first-child{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.focus-pool{gap:6px;display:grid}.focus-pool .focus-boards{margin:0;font-size:12px}.focus-list{margin:0;padding:0;list-style:none;display:grid}.focus-list li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1.2fr) 70px minmax(0,2fr);align-items:center;gap:8px;padding:4px 0;font-size:12px;display:grid}.focus-reasons{flex-wrap:wrap;gap:4px;display:flex}.focus-reasons em{background:var(--brand-soft);color:var(--brand);border-radius:999px;padding:1px 6px;font-style:normal}.focus-reasons em.focus-concern{background:var(--bg-elevated);color:var(--risk)}.field-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 16px;margin:6px 0;display:grid}.field-list>div{border-bottom:1px solid var(--border);grid-template-columns:minmax(70px,110px) minmax(0,1fr);gap:8px;padding:3px 0;font-size:13px;display:grid}.field-list dt{color:var(--text-secondary)}.field-list dd{overflow-wrap:anywhere;margin:0}.record-rows{overflow-x:auto}.record-rows table{border-collapse:collapse;width:100%;font-size:12px}.record-rows th,.record-rows td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:5px 8px}.record-rows th{color:var(--text-secondary);font-weight:500}.record-rows .review-pagination{align-items:center;gap:8px;margin-top:6px;display:flex}.field-list>div.wide{grid-column:1/-1;grid-template-columns:minmax(70px,110px) minmax(0,1fr)}.value-list{margin:0;padding-left:18px}.chart-attribution{text-align:right;font-size:11px;display:block}.signal-statistics-table{max-height:520px}.signal-statistics-table .virtual-row>div{white-space:normal;flex-direction:column;justify-content:center;display:flex}.signal-statistics-table .virtual-row p{margin:0;line-height:20px}:root,[data-theme=dark]{--bg-app:#0b0f17;--bg-panel:#121826;--bg-elevated:#1a2233;--bg-hover:#202a3d;--border:#243047;--text-primary:#e6eaf2;--text-secondary:#9aa4b8;--text-muted:#7d879c;--brand:#22b8cf;--brand-fill:#22b8cf;--brand-hover:#4fcadd;--on-brand:#04141a;--brand-soft:#22b8cf24;--brand-line:#22b8cf73;--up:#f5474b;--up-soft:#f5474b29;--down:#2dbe7e;--down-soft:#2dbe7e29;--flat:#8a93a6;--limit-up-bg:#d92d3a;--limit-down-bg:#0b7f50;--ai:#9b8afb;--ai-soft:#9b8afb1f;--gold:#f5b942;--gold-text:#f5b942;--on-gold:#3a2604;--risk:#ff8a3d;--info:#4c8dff;--live:#38d9f5;--focus-ring:0 0 0 2px #22b8cf;--selection:#22b8cf1a;--new-flash:#9b8afb2e;--scrollbar:#2a3550;--shadow-lg:0 12px 32px #00000073;--heat-0:#1fa971;--heat-1:#1c9160;--heat-2:#17744d;--heat-3:#1d4f3c;--heat-4:#2a3245;--heat-5:#6b2e36;--heat-6:#a8323a;--heat-7:#cc3a40;--heat-8:#e8454b;--heat-text:#fff;--on-limit:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg-app:#f4f6fa;--bg-panel:#fff;--bg-elevated:#f8fafd;--bg-hover:#eef2f8;--border:#e3e8ef;--text-primary:#0f172a;--text-secondary:#5b6475;--text-muted:#6b7486;--brand:#0b7a8a;--brand-fill:#0b7a8a;--brand-hover:#096674;--on-brand:#fff;--brand-soft:#0b7a8a1a;--brand-line:#0b7a8a66;--up:#d6232b;--up-soft:#d6232b1a;--down:#0b7f50;--down-soft:#0b7f501a;--flat:#6b7486;--limit-up-bg:#d92d3a;--limit-down-bg:#0b7f50;--ai:#6d5ae6;--ai-soft:#6d5ae614;--gold:#e0a21c;--gold-text:#946508;--on-gold:#3a2604;--risk:#b8520f;--info:#2f6fe4;--live:#0ba5c4;--focus-ring:0 0 0 2px #0b7a8a;--selection:#0b7a8a14;--new-flash:#6d5ae61a;--scrollbar:#cbd3df;--shadow-lg:0 12px 32px #0f172a24;--heat-0:#0b6b43;--heat-1:#3aaa78;--heat-2:#7ccba3;--heat-3:#c4e8d5;--heat-4:#e9edf3;--heat-5:#f7cfcf;--heat-6:#ee8f8f;--heat-7:#e5575b;--heat-8:#d92d3a;--heat-text:#0f172a;--on-limit:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-colors=accessible]{--up:#ff9f1c;--down:#3b82f6}[data-colors=international]{--up:var(--international-up);--down:var(--international-down)}:root{--international-up:#2dbe7e;--international-down:#f5474b}[data-theme=light]{--international-up:#0b7f50;--international-down:#d6232b}*{box-sizing:border-box}html{scroll-padding-top:60px}:root{--rail:200px;--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}body{background:var(--bg-app);color:var(--text-primary);margin:0;font:13px Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent;outline:none}button,a{cursor:pointer;touch-action:manipulation}.virtual-row[data-interactive=true]{cursor:pointer}:focus-visible{box-shadow:var(--focus-ring)}a{color:var(--brand);text-underline-offset:3px;text-decoration:none}a:hover{text-decoration:underline}.wordmark:hover,.stock-tag:hover{text-decoration:none}.stock-tag:hover strong{text-decoration:underline}button{cursor:pointer;border:1px solid var(--border);color:var(--text-primary);background:var(--bg-elevated);border-radius:8px;padding:7px 10px;transition:background-color .12s,border-color .12s,color .12s,opacity .12s,transform 60ms}button:where(:not(:disabled)):hover{background:var(--bg-hover);border-color:var(--brand-line)}button:where(:not(:disabled)):active{transform:translateY(1px)}button:disabled{cursor:not-allowed;color:var(--text-secondary);opacity:.6}button[aria-busy=true]{cursor:progress}button:where([aria-pressed=true],[aria-selected=true],.active){border-color:var(--brand-line);color:var(--brand);background:var(--brand-soft)}input,select,textarea{color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:8px;transition:border-color .12s}:where(input,select,textarea):where(:not(:disabled)):hover{border-color:var(--brand-line)}input:focus,select:focus,textarea:focus{border-color:var(--brand)}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.6}select,input[type=checkbox],input[type=radio]{cursor:pointer}label:has(>input[type=checkbox]){cursor:pointer}label:has(>input[type=radio]){cursor:pointer}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--brand)}summary{cursor:pointer;-webkit-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content;max-width:100%;transition:color .12s}@media (pointer:coarse){button,select,summary{min-height:44px}input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}summary:hover{color:var(--brand)}::placeholder{color:var(--text-muted)}h1{margin:0 0 16px;font-size:20px}h2{margin:0 0 12px;font-size:14px;font-weight:600}p{line-height:1.65}small,.muted{color:var(--text-secondary);font-size:12px}.num{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,SF Mono,ui-monospace,monospace}.up{color:var(--up)}.down{color:var(--down)}.flat{color:var(--flat)}.brand{color:var(--brand)}.ai{color:var(--ai)}.risk{color:var(--risk)}.primary{background:var(--brand-fill);border-color:var(--brand-fill);color:var(--on-brand);font-weight:600}.primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover);color:var(--on-brand)}.primary:disabled{color:var(--on-brand);opacity:.45}.topbar{z-index:30;background:var(--bg-panel);border-bottom:1px solid var(--border);height:48px;padding:0 calc(16px + var(--safe-right)) 0 calc(16px + var(--safe-left));align-items:center;gap:16px;display:flex;position:fixed;inset:0 0 auto}.wordmark{white-space:nowrap;color:var(--text-primary);font-size:18px;font-weight:600}.topbar .ticker{white-space:nowrap;flex:1;gap:20px;min-width:0;display:flex;overflow:auto}.topbar .ticker span{align-items:center;gap:8px;display:inline-flex}.topbar>button{flex-shrink:0;align-items:center;gap:6px;height:32px;display:inline-flex}.topbar .badge{line-height:16px}.icon-button{justify-content:center;align-items:center;padding:5px;display:inline-flex}.topbar>.icon-button{width:32px}.sidebar{width:calc(var(--rail) + var(--safe-left));padding:12px 8px 12px calc(8px + var(--safe-left));border-right:1px solid var(--border);background:var(--bg-panel);z-index:20;flex-direction:column;display:flex;position:fixed;inset:48px auto 0 0;overflow-y:auto}.sidebar a{color:var(--text-secondary);border-radius:8px;align-items:center;gap:10px;margin:2px 0;padding:9px 12px;transition:background-color .12s,color .12s;display:flex}.sidebar a:hover{background:var(--bg-hover);color:var(--text-primary);text-decoration:none}.sidebar a.active{background:var(--brand-soft);color:var(--brand);font-weight:600}.sidebar a.active:hover{background:var(--brand-soft);color:var(--brand)}.sidebar .nav-group{border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:8px}.sidebar .nav-bottom{margin-top:auto}.workspace{margin:48px 0 0 calc(var(--rail) + var(--safe-left));padding:16px calc(16px + var(--safe-right)) 16px 16px}.workspace>*+*{margin-top:12px}.emotion-strip{background:var(--bg-elevated);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:16px;min-height:36px;margin:-16px -16px 16px;padding:9px 16px;display:flex}.grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;display:grid}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;min-width:0;padding:14px}.span-12{grid-column:1/-1}.span-8{grid-column:span 8}.span-6{grid-column:span 6}.span-4{grid-column:span 4}[data-theme=light] .panel{box-shadow:0 1px 2px color-mix(in srgb, var(--text-primary) 6%, transparent)}.panel-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;min-height:28px;margin-bottom:12px;display:flex}.panel-title>h2{margin:0}.metric{font-size:28px;font-weight:600}.badge{border:1px solid var(--border);white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:12px;display:inline-flex}.grade-s{background:var(--gold);color:var(--on-gold);border-color:var(--gold)}.grade-a{border-color:var(--brand);color:var(--brand)}.grade-b{border-color:var(--text-secondary);color:var(--text-secondary)}.limit-up{background:var(--limit-up-bg);color:var(--on-limit)}.limit-down{background:var(--limit-down-bg);color:var(--on-limit)}.fresh-live:before{content:"";background:var(--live);border-radius:50%;width:6px;height:6px;animation:2s infinite breathe}.empty,.error-state{color:var(--text-secondary);text-align:center;padding:22px}.error-state{color:var(--risk)}.skeleton{min-height:70px;color:var(--text-secondary);background:var(--bg-elevated);border-radius:8px;justify-content:center;align-items:center;gap:8px;animation:2s infinite breathe;display:flex}.query-activity{min-height:24px;color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.loading-spinner{border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.8s linear infinite loading-spin;display:inline-block}@keyframes loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.loading-spinner,.skeleton{animation:none}}.ai-block{background:var(--ai-soft);border-left:3px solid var(--ai);border-radius:8px;padding:12px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{background:var(--bg-elevated);color:var(--text-secondary);font-weight:500;position:sticky;top:0}.data-table td,.data-table th{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:9px 12px}.data-table tbody tr:hover{background:var(--bg-hover)}.table-wrap{overflow:auto}.stock-tag{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.stock-tag small{display:block}.login{max-width:380px;margin:15vh auto}.login form{gap:16px;display:grid}.replay-banner{border:1px solid var(--brand);color:var(--brand);background:var(--brand-soft);border-radius:8px;margin-bottom:12px;padding:8px 12px}.interrupted{background:var(--limit-up-bg);color:var(--on-limit);border-radius:8px;margin-bottom:12px;padding:10px 14px}.mobile-nav{display:none}.preview-themes{grid-template-columns:1fr 1fr;gap:12px;display:grid}.preview-themes section{background:var(--bg-app);color:var(--text-primary);padding:16px}@keyframes breathe{50%{opacity:.6}}@media (max-width:1279px){:root{--rail:64px}.sidebar .nav-label{display:none}.sidebar a{justify-content:center;padding:10px}}@media (max-width:1024px){.span-8,.span-4{grid-column:span 12}}@media (max-width:768px){.topbar{gap:8px}.span-6{grid-column:span 12}.topbar .ticker{font-size:12px}}@media (max-width:480px){.sidebar{display:none}.workspace{padding:12px calc(12px + var(--safe-right)) calc(72px + env(safe-area-inset-bottom,0px)) calc(12px + var(--safe-left));margin-left:0}input,select,textarea{font-size:16px}.topbar{padding:0 12px}.topbar .desktop-only{display:none}.mobile-nav{height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bg-panel);border-top:1px solid var(--border);z-index:40;justify-content:space-around;align-items:center;display:flex;position:fixed;inset:auto 0 0}.mobile-nav a{color:var(--text-secondary);flex-direction:column;align-items:center;gap:4px;font-size:12px;display:flex}.mobile-nav a.active{color:var(--brand)}.preview-themes{grid-template-columns:1fr}.emotion-strip{gap:8px;margin:-12px -12px 12px;padding:8px 12px}.login{margin:12vh 12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.stock-hover-anchor{display:inline-flex;position:relative}.stock-hover-card{z-index:50;border:1px solid var(--border);background:var(--bg-panel);min-width:240px;color:var(--text-primary);border-radius:10px;padding:12px;position:absolute;top:100%;left:0}.event-row{border-bottom:1px solid var(--border);padding:10px 0}.event-new{background:var(--new-flash)}.timeline{border-left:1px solid var(--border);margin-left:12px;padding-left:20px}.column-options{color:var(--text-secondary);margin-bottom:8px}.column-options label{align-items:center;gap:4px;padding:8px;display:inline-flex}.virtual-table{border:1px solid var(--border);border-radius:8px;max-height:380px;overflow:auto}.virtual-header,.virtual-row{width:100%;display:grid}.virtual-header{z-index:3;background:var(--bg-elevated);position:sticky;top:0}.virtual-header>div,.virtual-row>div{border-bottom:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;padding:8px 12px;overflow:hidden}.virtual-header button{color:var(--text-secondary);background:0 0;border:0;padding:0;font-weight:500}.virtual-header button:hover:not(:disabled){color:var(--brand);background:0 0}.virtual-header button:disabled{cursor:default;opacity:1}.virtual-header [aria-sort=ascending] button,.virtual-header [aria-sort=descending] button{color:var(--brand)}.virtual-row{cursor:default}.virtual-row[tabindex]{cursor:pointer}.virtual-row>div{line-height:20px}.virtual-row button,.data-table td button,.record-rows td button{border-radius:6px;padding:0 8px;font-size:12px;line-height:20px}.virtual-body{position:relative}.virtual-row{height:36px;position:absolute;top:0;left:0}.virtual-row:hover,.virtual-row:focus{background:var(--bg-hover)}.virtual-row>div:first-child,.virtual-header>div:first-child{background:var(--bg-panel);z-index:2;position:sticky;left:0}.virtual-header>div:first-child{background:var(--bg-elevated)}.event-new{animation:2s ease-out new-event}@keyframes new-event{0%{background:var(--new-flash)}to{background:0 0}}.chart{width:100%;height:220px}.price-chart{width:100%;height:320px}.sparkline{width:100px;height:32px}.spark-up{stroke:var(--up);stroke-width:1.5px}.spark-down{stroke:var(--down);stroke-width:1.5px}.spark-flat{stroke:var(--text-secondary);stroke-width:1.5px}.spark-base{stroke:var(--border);stroke-dasharray:2 2}.ladder{gap:12px;display:flex;overflow-x:auto}.ladder section{background:var(--bg-elevated);border-radius:8px;min-width:130px;padding:8px}.ladder h3{color:var(--gold-text);margin:0 0 12px}.ladder .stock-hover-anchor{margin-bottom:8px;display:flex}.dialog-backdrop{background:color-mix(in srgb, var(--bg-app) 80%, transparent);z-index:100;justify-content:center;align-items:flex-start;padding:12vh 12px;display:flex;position:fixed;inset:0}.dialog{background:var(--bg-elevated);border:1px solid var(--border);width:min(560px,100%);max-height:70vh;box-shadow:var(--shadow-lg);border-radius:10px;padding:16px;animation:.16s ease-out dialog-in;overflow-y:auto}@keyframes dialog-in{0%{opacity:0;transform:translateY(-6px)scale(.99)}}.dialog form{gap:12px;display:grid}.dialog form label{gap:6px;display:grid}.dialog form .toolbar{margin:4px 0 0}.dialog [role=status]{background:var(--brand-soft);color:var(--text-primary);border-radius:6px;margin:12px 0 0;padding:8px 10px}.dialog [role=status].is-error{background:var(--up-soft)}.dialog input{flex:1;min-width:0}.dialog li{padding:10px}.ai-drawer{z-index:90;background:var(--bg-panel);border-left:1px solid var(--border);width:min(520px,100%);box-shadow:var(--shadow-lg);flex-direction:column;gap:8px;padding:16px;display:flex;position:fixed;inset:48px 0 0 auto}.ai-drawer>.muted{margin:0}.ai-conversation{flex:1;align-content:start;gap:16px;min-height:0;padding:4px 2px;display:grid;overflow-y:auto}.ai-turn{gap:8px;display:grid}.ai-question{background:var(--brand-soft);max-width:85%;color:var(--text-primary);white-space:pre-wrap;border-radius:12px 12px 2px;justify-self:end;margin:0;padding:8px 12px}.ai-answer{background:var(--bg-elevated);border:1px solid var(--border);overflow-wrap:anywhere;border-radius:12px 12px 12px 2px;padding:10px 12px;line-height:1.7}.ai-answer>p:first-child{margin-top:0}.ai-starters{gap:8px;display:grid}.ai-starters button{text-align:left}.ai-input{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding-top:8px;display:grid}.ai-input textarea{resize:vertical;width:100%;min-height:64px;max-height:200px}.login label{gap:8px;display:grid}.preview-themes .panel{margin-bottom:12px}.virtual-row:hover>div,.virtual-row:focus>div{background:var(--bg-panel);border-bottom-color:var(--brand)}.fresh-delayed{color:var(--gold-text)}.fresh-delayed:before{content:"";background:var(--gold);border-radius:50%;width:6px;height:6px}.fresh-closed,.fresh-expired{color:var(--text-secondary)}.fresh-expired{text-decoration:line-through}.dashboard-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin:16px 0;display:flex}.dashboard-heading h1{margin-bottom:4px}.dashboard-heading p{margin:4px 0}.segmented{background:var(--bg-elevated);border:1px solid var(--border);border-radius:9px;flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--text-secondary);white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:6px 12px}.segmented button:hover{color:var(--text-primary);background:var(--bg-hover)}.segmented button[aria-pressed=true]{background:var(--brand-fill);color:var(--on-brand);font-weight:600}.dashboard-phase{animation:.28s ease-out dashboard-phase-in}@keyframes dashboard-phase-in{0%{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.dashboard-phase{animation:none}}.dashboard-lead{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:12px;margin-bottom:12px;display:grid}@media (max-width:1023px){.dashboard-lead{grid-template-columns:minmax(0,1fr)}}.dashboard-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:12px;display:grid}.dashboard-primary,.dashboard-secondary,.dashboard-bottom{gap:12px;min-width:0;display:grid}.dashboard-bottom{grid-column:1/-1}.dashboard-intraday .dashboard-secondary{position:sticky;top:60px}@media (max-width:1023px){.dashboard-layout{grid-template-columns:minmax(0,1fr)}.dashboard-intraday .dashboard-secondary{position:static}}@media (max-width:599px){.dashboard-heading{flex-direction:column}.segmented{width:100%}.segmented button{flex:1;padding:6px 4px}}.dashboard-card{min-width:0}.dashboard-card .empty{min-height:48px;padding:12px 0}.dashboard-card .chart{height:210px}.dashboard-card .panel-title{align-items:center}.dashboard-card .panel-title a{white-space:nowrap}.dashboard-card .muted{overflow-wrap:anywhere}.dashboard-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:7px 0;display:flex}.dashboard-row>div{text-align:right}.dashboard-rows{gap:8px;display:grid}.dashboard-controls{gap:8px;margin-bottom:8px;display:flex}.dashboard-list{padding-left:18px}.ladder-grid{gap:12px;margin-top:12px;display:flex;overflow-x:auto}.ladder-level{flex:1 0 120px;max-width:200px}.ladder-level article{background:var(--bg-elevated);border-radius:6px;margin-top:8px;padding:8px}.ladder-level p{margin:4px 0 0}.anomaly-scroll{max-height:240px;overflow-y:auto}.card-actions{align-items:center;gap:10px;display:inline-flex}.card-actions select{padding:3px 6px;font-size:12px}.dashboard-card .card-meta{margin:8px 0 0;font-size:11px}.clamp-1,.clamp-2,.clamp-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp-1{-webkit-line-clamp:1;line-clamp:1}.clamp-2{-webkit-line-clamp:2;line-clamp:2}.clamp-3{-webkit-line-clamp:3;line-clamp:3}.dashboard-market{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:12px;margin-bottom:12px;display:grid}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.kpi{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;gap:2px;min-width:0;padding:8px 10px;display:grid}.kpi-label{color:var(--text-secondary);font-size:11px}.kpi-value{white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:600;line-height:1.3;overflow:hidden}.kpi-value .badge,.kpi-value span[title]{font-size:13px;font-weight:400}.kpi-sep{color:var(--text-secondary);margin:0 3px;font-weight:400}.kpi-note{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.flow-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8px;display:grid}.flow-columns h3{margin:0 0 2px;font-size:12px;font-weight:500}.flow-columns .dashboard-row{padding:4px 0}.quote-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;display:grid}.quote-grid>div{background:var(--bg-elevated);border-radius:6px;gap:2px;min-width:0;padding:8px;display:grid}.quote-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.quote-grid strong{font-size:15px}.quote-grid small{font-size:11px}.ladder-level header{color:var(--gold-text);justify-content:space-between;align-items:baseline;gap:6px;display:flex}.ladder-level>a{margin-top:6px;font-size:12px;display:block}.dashboard-footnote{text-align:center;margin:16px 0 4px}@media (max-width:1279px){.dashboard-market{grid-template-columns:minmax(0,1fr)}}@media (max-width:599px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.news-row{border-bottom:1px solid var(--border);padding:6px 0}.news-row p{margin:4px 0}.dashboard-bottom-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}@media (max-width:1023px){.dashboard-intraday .dashboard-secondary{grid-row:1}.dashboard-bottom-grid{grid-template-columns:minmax(0,1fr)}}.topbar .ticker{display:block;overflow:hidden}.ticker-track{width:max-content;animation:45s linear infinite ticker-scroll;display:flex}.ticker-group{gap:24px;padding-right:24px;display:flex}.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}@keyframes ticker-scroll{to{transform:translate(-50%)}}.market-clock{color:var(--text-secondary);font-size:12px}.mobile-indices{display:none}@media (max-width:480px){.topbar .ticker{display:none}.mobile-indices{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 16px;display:grid}.mobile-indices>span{text-align:center;gap:4px;font-size:12px;display:grid}.emotion-strip{margin:0 -12px 12px}.anomaly-scroll .virtual-table{max-height:240px}}@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}}.stock-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:12px;margin-top:12px;display:grid}.stock-primary,.stock-secondary{gap:12px;min-width:0;display:grid}.stock-quote-header{margin-top:12px}.quote-facts{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:12px 20px;display:flex}.stock-actions,.stock-chart-controls,.stock-tabs{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.stock-action-form{border:1px solid var(--border);flex-wrap:wrap;align-items:end;gap:12px;padding:12px;display:flex}.stock-action-form p{flex-basis:100%}.stock-action-form label{gap:6px;display:grid}.stock-chart-controls label{flex:1;gap:4px;display:grid}.stock-chart-controls select{width:100%}.stock-tabs [aria-selected=true]{border-color:var(--brand);color:var(--brand)}.stock-chart{min-width:0;height:400px}.chart-readout{overflow-wrap:anywhere;min-height:32px}.book-row{grid-template-columns:1fr 1fr 1fr;gap:12px;padding:4px 0;display:grid}.book-row .num{text-align:right}@media (max-width:1023px){.stock-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:480px){.stock-chart{height:320px}.stock-chart-controls label{min-width:100px}}.state-chip{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;padding:1px 8px;font-size:11px;line-height:18px;display:inline-block}.state-completed,.state-verified{color:var(--down);border-color:var(--down-soft);background:var(--down-soft)}.state-running{color:var(--brand);border-color:var(--brand-soft);background:var(--brand-soft)}.state-unknown,.state-blocked,.state-hypothesis,.state-candidate{color:var(--gold-text);border-color:var(--border)}.state-invalidated,.state-expired{color:var(--text-muted);text-decoration:line-through}.board-moves{gap:2px;max-height:420px;display:grid;overflow-y:auto}.board-moves article{border-bottom:1px solid var(--border);grid-template-columns:70px minmax(0,1fr);gap:8px;padding:8px 0;display:grid}.board-moves p{margin:0 0 4px}.board-move-stocks{flex-wrap:wrap;gap:4px 10px;font-size:12px;display:flex}.calendar-heading{color:var(--text-secondary);margin:10px 0 4px;font-size:12px;font-weight:600}.calendar-list{gap:2px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.calendar-row{border-bottom:1px solid var(--border);grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:4px 0;display:grid}.calendar-day{color:var(--text-secondary);white-space:nowrap;font-size:12px}.calendar-stock{flex-wrap:wrap;align-items:center;gap:4px 6px;min-width:0;display:flex}.calendar-event{text-align:right;font-size:12px}.calendar-tag{color:var(--brand);background:var(--brand-soft);border-radius:4px;padding:0 6px;font-size:11px;font-style:normal}.button-link{border:1px solid var(--border);background:var(--bg-elevated);color:var(--brand);border-radius:8px;align-items:center;gap:6px;padding:7px 10px;transition:background-color .12s,border-color .12s;display:inline-flex}.button-link:hover{background:var(--bg-hover);border-color:var(--brand-line);text-decoration:none}.button-link:active{transform:translateY(1px)}.signal-card{background:var(--bg-elevated);gap:6px;padding:12px;display:grid}.signal-card h2{flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.signal-card p{margin:0}.signal-card details ul{margin:6px 0;padding-left:18px;line-height:1.6}.signal-card.is-selectable{cursor:pointer;transition:border-color .12s,background-color .12s}.signal-card.is-selectable:hover{border-color:var(--brand-line)}.signal-card.is-selected{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand)}.signal-card.is-ended:not(.is-selected){opacity:.78}.signal-state .state-chip{margin-right:4px}.dashboard-card .signal-card+.signal-card{margin-top:8px}.signal-list{gap:8px;display:grid}.signal-more{width:100%;color:var(--brand)}.page-two-columns.signal-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start}.signal-tabs{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.signal-list-panel .signal-list{overscroll-behavior-y:contain;scrollbar-gutter:stable;max-height:min(65vh,640px);padding-right:4px;overflow-y:auto}.signal-card-compact{gap:4px;padding:10px 12px}.signal-card-compact h2{font-size:13px}.signal-calculator{border-top:1px solid var(--border);padding-top:10px}.signal-calculator>summary{color:var(--brand);cursor:pointer}.signal-calculator>.panel{margin-top:12px}@media (max-width:1024px){.page-two-columns.signal-workspace{grid-template-columns:1fr}.signal-list-panel .signal-list{max-height:45vh}}.signal-detail{align-content:start;gap:8px;display:grid}.signal-detail p{margin:0}.signal-detail .panel{box-shadow:none;background:0 0;border:0;padding:0}.signal-subhead{margin:4px 0 0;font-size:13px}.signal-reasons{margin:0;padding-left:18px;line-height:1.65}.evidence-id{background:var(--bg-elevated);border-radius:4px;margin:2px 6px 2px 0;padding:0 6px;font-size:11px;display:inline-block}@media (min-width:1025px){.signal-detail{max-height:calc(100vh - 72px);position:sticky;top:60px;overflow-y:auto}}fieldset{border:1px solid var(--border);border-radius:8px;gap:8px;min-width:0;margin:0;padding:10px 12px 12px;display:grid}legend{color:var(--text-secondary);padding:0 4px;font-size:12px}fieldset>button,fieldset>select{justify-self:start}.mobile-nav a,.mobile-nav button{flex:1;min-width:0}.mobile-nav button{color:var(--text-secondary);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:0;font-size:12px;display:flex}.mobile-nav button:hover:not(:disabled){background:0 0}.mobile-nav button.active{color:var(--brand)}.mobile-nav a:hover{text-decoration:none}.mobile-sheet-backdrop{inset:0 0 calc(56px + env(safe-area-inset-bottom,0px));z-index:39;background:color-mix(in srgb, var(--bg-app) 70%, transparent);align-items:flex-end;display:flex;position:fixed}.mobile-sheet{background:var(--bg-panel);border-top:1px solid var(--border);width:100%;box-shadow:var(--shadow-lg);border-radius:14px 14px 0 0;padding:16px 12px 12px;animation:.18s ease-out sheet-in}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px)}}.mobile-sheet-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.mobile-sheet-grid a{color:var(--text-primary);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:10px 2px;font-size:12px;display:flex}.mobile-sheet-grid a:hover{background:var(--bg-hover);text-decoration:none}.mobile-sheet-grid a.active{color:var(--brand);background:var(--brand-soft)}.mobile-sheet-logout{width:100%;color:var(--text-secondary);justify-content:center;align-items:center;gap:6px;margin-top:12px;display:flex}.system-actions{align-items:center;gap:8px;margin:10px 0;display:flex}.ai-quick p{margin:4px 0}.ai-quick-item{border-left:2px solid var(--border);padding-left:12px}.section-workspace{grid-column:1/-1;min-width:0}.workspace-tabs{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.workspace-tabs button[aria-selected=true]{color:var(--brand);background:var(--brand-soft);border-color:var(--brand)}.workspace-content{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0;display:grid}.workspace-content>*{min-width:0}.dashboard-workspace{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.dashboard-workspace>*{min-width:0}@media (max-width:1023px){.dashboard-workspace{grid-template-columns:minmax(0,1fr)}}.dashboard-workspace>.panel{grid-column:auto}.dashboard-workspace .board-moves{max-height:360px;overflow:auto}
