:root{color:var(--text-primary);background:var(--bg-app);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg-app:#070c12;--bg-surface:#111a24;--bg-elevated:#17222e;--bg-input:#0a121a;--bg-control:#0d1720;--bg-shell:#071019;--bg-popover:#09111a;--bg-accent-glow:#102a31;--border-subtle:#23303d;--border-focus:#25d6c8;--text-primary:#f2f7f7;--text-secondary:#a4b0bb;--text-tertiary:#788795;--text-disabled:#66727d;--text-on-accent:#031315;--brand-wordmark:#dce7ee;--brand-accent:#27b88b;--text-navigation-group:#91a3b2;--text-navigation-icon:#78909c;--accent-primary:#25d6c8;--state-positive:#4be39a;--state-negative:#ff6f7d;--state-warning:#f5bd50;--state-info:#6eb9ff;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--control-height:40px;--control-height-mobile:44px;--bg:var(--bg-app);--panel:var(--bg-surface);--panel-deep:#0c141d;--panel-soft:var(--bg-elevated);--border:var(--border-subtle);--text-strong:var(--text-primary);--text-muted:var(--text-secondary);--cyan:var(--accent-primary);--green:var(--state-positive);--red:var(--state-negative);--amber:var(--state-warning);font-family:Inter,Pretendard,Noto Sans KR,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 50% -10%, var(--bg-accent-glow) 0, var(--bg) 38%);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}.app-shell{width:min(1240px,100% - 40px);margin:0 auto}.topbar{border-bottom:1px solid var(--border);grid-template-columns:auto auto minmax(220px,1fr) auto;align-items:center;gap:24px;min-height:74px;display:grid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.global-stock-search{z-index:20;justify-self:center;width:min(100%,350px);position:relative}.global-stock-search>label{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.global-search-input-row{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-soft) 88%, var(--bg-app));border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:0 11px;display:grid}.global-search-input-row:focus-within{border-color:var(--cyan);box-shadow:0 0 0 3px color-mix(in srgb, var(--cyan) 10%, transparent)}.global-search-input-row>span{color:var(--cyan);font-size:20px;line-height:1}.global-search-input-row input{min-width:0;height:39px;color:var(--text-strong);font:inherit;background:0 0;border:0;outline:0;font-size:12px}.global-search-input-row input::placeholder{color:var(--text-muted)}.global-search-input-row input::-webkit-search-cancel-button{filter:invert();opacity:.5}.search-spinner{border:2px solid var(--border);border-top-color:var(--cyan);border-radius:50%;width:13px;height:13px;animation:.7s linear infinite search-spin}@keyframes search-spin{to{transform:rotate(360deg)}}.global-search-popover{border:1px solid var(--border);background:var(--bg-popover);border-radius:13px;width:min(520px,92vw);position:absolute;top:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 20px 55px #00000073}.global-search-popover ul{max-height:390px;margin:0;padding:6px;list-style:none;overflow-y:auto}.global-search-popover li button{width:100%;color:var(--text-strong);text-align:left;background:0 0;border:1px solid #0000;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px;display:grid}.global-search-popover li button:hover,.global-search-popover li button.active{border-color:color-mix(in srgb, var(--cyan) 28%, transparent);background:color-mix(in srgb, var(--cyan) 7%, transparent);filter:none}.search-symbol,.search-company{gap:3px;min-width:0;display:grid}.search-symbol strong{color:var(--cyan);font-size:12px}.search-symbol small{border:1px solid var(--border);width:max-content;color:var(--text-muted);border-radius:999px;padding:2px 5px;font-size:10px}.search-company strong,.search-company small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-company strong{font-size:12px}.search-company small{color:var(--text-muted);font-size:10px}.availability{color:var(--text-muted);background:var(--panel-soft);white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:10px}.availability.ready{color:var(--green)}.availability.metadata_only{color:var(--amber)}.global-search-message{color:var(--text-muted);margin:0;padding:24px 18px 14px;font-size:11px;line-height:1.6}.global-search-scope{border-top:1px solid var(--border);color:var(--text-muted);background:var(--panel-soft);margin:0;padding:9px 12px;font-size:10px;line-height:1.5}.brand{color:var(--text-strong);align-items:center;gap:10px;text-decoration:none;display:flex}.brand-icon{border-radius:11px;width:40px;height:40px;display:block}.brand-wordmark{gap:1px;display:grid}.brand-wordmark strong{color:var(--brand-wordmark);letter-spacing:-.04em;font-size:20px;line-height:1}.brand-wordmark strong span{color:var(--brand-accent)}.brand-wordmark small{color:var(--text-muted);font-size:10px}nav{gap:6px;display:flex}nav a{color:var(--text-muted);border-radius:9px;padding:9px 13px;font-size:14px;text-decoration:none}nav a:hover,nav a.active{color:var(--text-strong);background:var(--panel-soft)}.api-status{color:var(--text-muted);justify-self:end;align-items:center;gap:7px;font-size:12px;display:inline-flex}.status-dot{background:var(--amber);border-radius:50%;width:8px;height:8px}.api-status.connected .status-dot{background:var(--green)}.api-status.offline .status-dot{background:var(--red)}.realtime-status{color:var(--text-muted);white-space:nowrap;align-items:center;gap:7px;font-size:10px;display:inline-flex}.realtime-status.connected .status-dot{background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb, var(--green) 13%, transparent);animation:1.8s ease-out infinite realtime-pulse}.realtime-status.connecting .status-dot,.realtime-status.reconnecting .status-dot{background:var(--amber)}.realtime-status.disconnected .status-dot{background:var(--red)}@keyframes realtime-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--green) 30%, transparent)}70%,to{box-shadow:0 0 0 7px #0000}}.topbar-actions{justify-self:end;align-items:center;gap:14px;display:flex}.pwa-install-button{border:1px solid color-mix(in srgb, var(--cyan) 45%, var(--border));color:var(--cyan);background:color-mix(in srgb, var(--cyan) 7%, transparent);border-radius:999px;padding:7px 10px;font-size:10px}.pwa-install-button:hover{filter:none;border-color:var(--cyan)}.user-session{align-items:center;gap:9px;display:flex}.user-session>span{justify-items:end;gap:2px;display:grid}.user-session strong{color:var(--cyan);letter-spacing:.08em;font-size:10px}.user-session small{color:var(--text-muted);font-size:10px}.user-session button{border:1px solid var(--border);color:var(--text-muted);background:0 0;padding:7px 9px;font-size:10px}.user-session button:hover{filter:none;border-color:var(--cyan);color:var(--text-strong)}.login-shell{place-content:center;width:min(100% - 30px,510px);min-height:100vh;margin:0 auto;padding:40px 0;display:grid}.session-bootstrap{min-height:100vh;color:var(--text-muted);justify-content:center;align-items:center;gap:12px;display:flex}.session-bootstrap strong{font-size:12px}.login-card{padding:34px}.login-brand{border-bottom:1px solid var(--border);justify-items:center;padding-bottom:24px;display:grid}.login-brand-logo{filter:drop-shadow(0 10px 26px #26b88914);width:min(100%,340px);margin:0 auto;display:block}.login-brand-subtext{color:#fff;letter-spacing:-.01em;opacity:.95;text-align:center;margin:12px 0 0;font-size:13px;font-weight:500}.login-heading{padding:32px 0 22px}.login-heading h1{margin-bottom:10px;font-size:28px}.login-heading>p:last-child{color:var(--text-muted);margin:0;font-size:12px;line-height:1.65}.kakao-login-section{gap:8px;margin-bottom:20px;display:grid}.kakao-login-button{background:0 0;border:0;border-radius:12px;width:100%;padding:0;line-height:0;display:block;overflow:hidden}.kakao-login-button img{width:100%;height:auto;display:block}.kakao-login-button:hover:not(:disabled){filter:brightness(.98)}.kakao-login-button:focus-visible{outline-offset:3px;outline:3px solid #fff38c}.kakao-login-button:disabled{filter:grayscale(.28);opacity:.52}.kakao-login-section p{color:var(--text-muted);text-align:center;margin:0;font-size:10px;line-height:1.5}.login-card button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.58}.login-error{margin:0;font-size:11px;color:var(--red)!important}.login-api-status{color:var(--text-muted);justify-content:center;align-items:center;gap:7px;margin-top:24px;font-size:10px;display:flex}.login-api-status.connected .status-dot{background:var(--green)}.login-api-status.offline .status-dot{background:var(--red)}.login-disclaimer{color:var(--text-muted);text-align:center;margin:18px 0 0;font-size:10px}.login-disclaimer a{color:var(--cyan)}.privacy-page{place-content:center;width:min(100% - 30px,760px);min-height:100vh;margin:0 auto;padding:40px 0;display:grid}.privacy-page section{padding:clamp(25px,5vw,44px)}.privacy-page h2{margin:28px 0 9px}.privacy-page p{line-height:1.75}.privacy-page .privacy-updated{margin-top:28px;font-size:11px}.privacy-page a{color:var(--text-on-accent);background:var(--cyan);border-radius:9px;margin-top:10px;padding:11px 15px;font-size:11px;font-weight:850;text-decoration:none;display:inline-flex}main{padding:54px 0 36px}.hero-copy{justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;display:flex}.eyebrow{color:var(--cyan);letter-spacing:.14em;margin:0 0 8px;font-size:11px;font-weight:800}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em;word-break:keep-all;margin-bottom:9px;font-size:clamp(27px,4vw,42px)}h2{letter-spacing:-.02em;margin-bottom:0;font-size:18px}h3{margin:20px 0 9px;font-size:16px;line-height:1.45}.hero-copy p:last-child,.card p{color:var(--text-muted)}button{min-height:var(--control-height);border-radius:var(--radius-sm);color:var(--text-on-accent);background:var(--cyan);font:inherit;cursor:pointer;border:0;padding:11px 16px;font-weight:800}button:hover{filter:brightness(1.08)}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--border-focus);outline-offset:3px}.button-secondary,.button-ghost,.button-danger{border:1px solid var(--border-subtle);color:var(--text-primary);background:var(--bg-elevated)}.button-ghost{background:0 0}.button-danger{border-color:color-mix(in srgb, var(--state-negative) 45%, var(--border-subtle));color:var(--state-negative)}.button-secondary:hover,.button-ghost:hover{border-color:var(--accent-primary);filter:none}.button-danger:hover{border-color:var(--state-negative);filter:none}.data-status-badge{border:1px solid var(--border-subtle);min-width:0;color:var(--text-secondary);background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:10px;font-weight:800;line-height:1.25;display:inline-flex}.data-status-badge>i{background:currentColor;border-radius:50%;flex:0 0 6px;width:6px;height:6px}.data-status-badge.status-live,.data-status-badge.status-ready{border-color:color-mix(in srgb, var(--state-positive) 42%, var(--border-subtle));color:var(--state-positive)}.data-status-badge.status-delayed,.data-status-badge.status-reference,.data-status-badge.status-partial,.data-status-badge.status-metadata_only{border-color:color-mix(in srgb, var(--state-warning) 42%, var(--border-subtle));color:var(--state-warning)}.data-status-badge.status-stale,.data-status-badge.status-unavailable{border-color:color-mix(in srgb, var(--state-negative) 42%, var(--border-subtle));color:var(--state-negative)}.data-status-badge.status-demo{border-color:color-mix(in srgb, var(--state-info) 42%, var(--border-subtle));color:var(--state-info)}.stock-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px;display:grid}.fx-panel{margin:-8px 0 20px}.fx-strip{border:1px solid var(--border);width:100%;color:var(--text-strong);background:linear-gradient(120deg, color-mix(in srgb, var(--cyan) 5%, var(--panel)), var(--panel-deep));text-align:left;border-radius:12px;grid-template-columns:minmax(120px,1fr) auto auto auto minmax(180px,auto) auto;align-items:center;gap:18px;padding:13px 16px;display:grid}.fx-strip:hover{filter:none;border-color:color-mix(in srgb, var(--cyan) 45%, var(--border))}.fx-strip>span:first-child{gap:2px;display:grid}.fx-strip small{color:var(--text-muted);font-size:10px;font-weight:600}.fx-strip>strong{color:var(--cyan);font-size:18px}.fx-freshness{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:4px 7px;font-size:10px;font-weight:800}.fx-freshness.fresh{border-color:color-mix(in srgb, var(--green) 35%, var(--border));color:var(--green)}.fx-freshness.stale{border-color:color-mix(in srgb, var(--red) 35%, var(--border));color:var(--red)}.fx-strip.unavailable{color:var(--amber);justify-content:space-between;align-items:center;font-size:11px;display:flex}.fx-strip.unavailable button{color:var(--amber);flex:none}.fx-strip-loading{color:var(--text-muted);align-items:center;font-size:11px;display:flex}.fx-status-wrapper{align-items:center;display:flex}.skeleton-line{background:linear-gradient(90deg, var(--panel-deep), var(--panel-soft), var(--panel-deep));background-size:200% 100%;border-radius:6px;width:120px;height:14px;animation:1.4s linear infinite feed-shimmer;display:block}.fx-detail{color:var(--cyan);margin-top:8px;padding:15px}.fx-detail svg{width:100%;height:120px;margin-top:10px}.fx-detail p{color:var(--text-muted);margin:8px 0 0;font-size:11px}.fx-periods{gap:6px;display:flex}.fx-periods button{border:1px solid var(--border);color:var(--text-muted);background:var(--panel-soft);padding:5px 8px;font-size:10px}.fx-periods button[aria-pressed=true]{border-color:var(--cyan);color:var(--cyan)}.fx-chart-skeleton{height:120px;color:var(--text-muted);background:linear-gradient(90deg, var(--panel-deep), var(--panel-soft), var(--panel-deep));background-size:200% 100%;border-radius:8px;place-items:center;margin-top:10px;font-size:11px;animation:1.4s linear infinite feed-shimmer;display:grid}.fx-history-error{border:1px solid color-mix(in srgb, var(--red) 35%, var(--border));border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex;color:var(--red)!important}.fx-history-error button{min-height:34px;color:var(--red);flex:none;padding:5px 9px}.watchlist-section{margin-bottom:16px;scroll-margin-top:20px}.watchlist-title-row{justify-content:space-between;align-items:flex-end;margin-bottom:13px;display:flex}.watchlist-title-row>span{color:var(--text-muted);font-size:11px}.watchlist-editor{gap:12px;margin-bottom:12px;padding:18px;display:grid}.watchlist-editor-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.watchlist-editor-heading>div{gap:4px;display:grid}.watchlist-editor-heading strong{font-size:14px}.watchlist-editor-heading span{color:var(--text-muted);font-size:10px}.watchlist-editor button{padding:10px 14px;font-size:11px}.watchlist-editor .editor-cancel{border:1px solid var(--border);color:var(--text-muted);background:0 0}.watchlist-search{display:block;position:relative}.watchlist-search input{border:1px solid var(--border);width:100%;color:var(--text-strong);background:var(--panel-soft);border-radius:10px;outline:none;padding:12px 42px 12px 14px}.watchlist-search input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px color-mix(in srgb, var(--cyan) 8%, transparent)}.watchlist-search .search-spinner{position:absolute;top:50%;right:15px;transform:translateY(-50%)}.watchlist-search-results{gap:6px;max-height:360px;display:grid;overflow-y:auto}.watchlist-search-results>p{color:var(--text-muted);text-align:center;margin:0;padding:12px;font-size:10px}.watchlist-search-result{border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;grid-template-columns:90px minmax(150px,1fr) auto auto;align-items:center;gap:12px;padding:9px 10px;display:grid}.watchlist-search-result .search-symbol,.watchlist-search-result .search-company{gap:2px;display:grid}.watchlist-search-result .search-symbol small,.watchlist-search-result .search-company small{color:var(--text-muted);font-size:10px}.watchlist-search-result .availability{white-space:nowrap}.watchlist-editor-note{color:var(--cyan);margin:0;font-size:10px}.watchlist-error{color:var(--red);margin:0 0 10px;font-size:11px}.watchlist-empty{min-height:150px;color:var(--text-muted);text-align:center;place-content:center;gap:7px;padding:25px;font-size:12px;display:grid}.watchlist-empty strong{color:var(--text-strong);font-size:14px}.watchlist-load-error button{justify-self:center;margin-top:6px}.watchlist-skeleton-grid{margin-bottom:16px}.watchlist-card-skeleton{background:linear-gradient(90deg, var(--panel-deep), var(--panel-soft), var(--panel-deep));background-size:200% 100%;min-height:148px;animation:1.4s linear infinite feed-shimmer}.card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:0 12px 30px #0000001c}.stock-card{min-width:0;color:var(--text-strong);text-align:left;transition:border-color .2s,transform .2s;position:relative;overflow:hidden}.stock-card:hover{filter:none;border-color:color-mix(in srgb, var(--cyan) 55%, var(--border));transform:translateY(-2px)}.stock-card.selected{border-color:var(--cyan);box-shadow:0 0 0 1px color-mix(in srgb, var(--cyan) 25%, transparent), 0 20px 45px #00000029}.stock-card.live:before{background:linear-gradient(90deg, transparent, var(--green), transparent);content:"";height:2px;position:absolute;top:0;left:0;right:0}.stock-card-main{width:100%;color:var(--text-strong);text-align:left;background:0 0;padding:18px;display:block}.stock-card-main:hover{filter:none}.card-heading{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.card-heading span{font-weight:750}.card-heading small,.muted{color:var(--text-muted)}.stock-card-main>strong{text-overflow:ellipsis;white-space:nowrap;margin-bottom:6px;font-size:22px;display:block;overflow:hidden}.live-quote-label{color:var(--green);letter-spacing:.04em;align-items:center;gap:5px;margin-top:8px;margin-left:6px;font-size:10px;font-weight:750;display:inline-flex}.live-quote-label i{background:var(--green);width:6px;height:6px;box-shadow:0 0 8px color-mix(in srgb, var(--green) 75%, transparent);border-radius:50%}.live-quote-label.snapshot{color:var(--amber)}.live-quote-label.snapshot i{background:var(--amber);box-shadow:none}.quote-trust-row{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:9px;display:flex}.quote-trust-row small{color:var(--text-muted);font-size:10px}.watchlist-data-state{color:var(--amber);font-size:10px}.remove-watchlist{color:var(--text-muted);background:color-mix(in srgb, var(--panel-soft) 92%, transparent);opacity:0;border:1px solid #0000;padding:5px 7px;font-size:10px;transition:opacity .2s,border-color .2s;position:absolute;bottom:10px;right:10px}.stock-card:hover .remove-watchlist,.remove-watchlist:focus-visible{opacity:1}.remove-watchlist:hover{filter:none;border-color:var(--red);color:var(--red)}.remove-watchlist.confirm{border-color:var(--red);color:var(--red);opacity:1}.up,.profit{color:var(--green)}.down{color:var(--red)}.stock-detail{margin:34px 0;scroll-margin-top:20px}.detail-title-row{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:16px;display:flex}.detail-title-row h2{margin-bottom:7px;font-size:clamp(24px,3vw,32px)}.detail-title-row p:last-child{color:var(--text-muted);margin:0;font-size:13px}.stock-trust-meta{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.stock-trust-meta>span:not(.data-status-badge),.stock-trust-meta time{color:var(--text-muted);font-size:11px}.stock-trust-meta>span:not(.data-status-badge):after{color:var(--border);content:"·";margin-left:10px}.signal-badge{border:1px solid;border-radius:999px;flex:none;padding:8px 12px;font-size:12px;font-weight:800}.signal-badge.buy{border-color:color-mix(in srgb, var(--green) 40%, transparent);background:color-mix(in srgb, var(--green) 10%, transparent)}.signal-badge.sell{border-color:color-mix(in srgb, var(--red) 40%, transparent);background:color-mix(in srgb, var(--red) 10%, transparent)}.signal-badge.neutral{border-color:color-mix(in srgb, var(--amber) 40%, transparent);background:color-mix(in srgb, var(--amber) 10%, transparent)}.detail-layout{grid-template-columns:minmax(0,1.6fr) minmax(330px,.9fr);gap:16px;display:grid}.price-chart-card{min-width:0;padding:24px}.quote-row{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.quote-row>div{gap:5px;display:grid}.quote-row span{color:var(--text-muted);font-size:12px}.quote-row .live-tick-badge{border:1px solid color-mix(in srgb, var(--green) 38%, var(--border));width:max-content;color:var(--green);background:color-mix(in srgb, var(--green) 7%, transparent);letter-spacing:.05em;border-radius:999px;align-items:center;padding:4px 7px;font-size:10px;font-weight:800;display:inline-flex}.quote-row>div:first-child strong{letter-spacing:-.045em;font-size:clamp(30px,5vw,46px)}.quote-row>div:last-child{text-align:right}.quote-row>div:last-child strong{font-size:18px}.interactive-chart-shell{border:1px solid var(--border);background:var(--bg-input);border-radius:12px;margin-top:22px;overflow:hidden}.chart-toolbar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--panel-soft) 72%, var(--bg-input));justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.chart-range-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.chart-intervals,.chart-periods,.chart-tools,.chart-tool-group{flex-wrap:wrap;gap:6px;display:flex}.chart-tools{align-items:center}.chart-tool-group+.chart-tool-group{border-left:1px solid var(--border);padding-left:6px}.chart-intervals{border-right:1px solid var(--border);padding-right:10px}.intraday-session-label{color:var(--text-muted);align-items:center;gap:7px;font-size:10px;font-weight:700;display:inline-flex}.intraday-session-label i{background:var(--green);width:7px;height:7px;box-shadow:0 0 0 4px color-mix(in srgb, var(--green) 12%, transparent);border-radius:50%}.chart-toolbar button{border:1px solid var(--border);min-height:40px;color:var(--text-muted);background:var(--bg-control);border-radius:7px;padding:7px 9px;font-size:10px;font-weight:750}.chart-toolbar button:hover{filter:none;border-color:var(--cyan);color:var(--text-strong)}.chart-toolbar button[aria-pressed=true]{border-color:color-mix(in srgb, var(--cyan) 70%, var(--border));color:var(--cyan);background:color-mix(in srgb, var(--cyan) 9%, var(--bg-control))}.chart-toolbar button:disabled{cursor:not-allowed;opacity:.38}.chart-indicators{border-bottom:1px solid var(--border);background:#0d1720b8;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.chart-indicators>div{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chart-indicators span{color:var(--text-muted);letter-spacing:.06em;margin-right:3px;font-size:10px;font-weight:750}.chart-indicators button{border:1px solid var(--border);min-height:40px;color:var(--text-muted);background:var(--bg-control);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:750}.chart-indicators button[aria-pressed=true]{border-color:color-mix(in srgb, var(--cyan) 70%, var(--border));color:var(--cyan);background:color-mix(in srgb, var(--cyan) 9%, var(--bg-control))}.chart-legend{border-bottom:1px solid var(--border);min-height:33px;color:var(--text-muted);gap:7px;padding:9px 12px;font-size:10px;display:grid}.chart-legend-group{flex-wrap:wrap;align-items:center;gap:7px 12px;display:flex}.chart-legend-group.panel{border-top:1px dashed color-mix(in srgb, var(--border) 70%, transparent);padding-top:7px}.chart-legend span{align-items:center;gap:5px;display:inline-flex}.chart-legend i{border-radius:999px;width:12px;height:3px;display:inline-block}.chart-legend .candle-up{background:var(--green);height:8px}.chart-legend .candle-down{background:var(--red);height:8px}.chart-legend .ma5{background:var(--amber)}.chart-legend .ma20{background:var(--cyan)}.chart-legend .ma60{background:#ad86ff}.chart-legend .bollinger{background:#4299e1}.chart-legend .events{background:#f5bd50}.chart-legend .volume{background:#607d8b}.chart-legend .volume-ma20{background:#ec8ff5}.chart-legend .rsi{background:#f5bd50}.chart-legend .macd{background:#ad86ff}.chart-legend .atr{background:#63b3ed}.chart-legend-muted{color:var(--text-tertiary)}.chart-legend strong{color:var(--amber);letter-spacing:.08em;margin-left:auto;font-size:10px}.chart-data-meta{border-bottom:1px solid var(--border);color:var(--text-muted);background:color-mix(in srgb, var(--panel-deep) 86%, transparent);flex-wrap:wrap;align-items:center;gap:6px 14px;padding:8px 12px;font-size:10px;display:flex}.chart-data-meta b{color:var(--text-tertiary);margin-right:3px;font-weight:700}.chart-background-refresh{z-index:7;border:1px solid color-mix(in srgb, var(--cyan) 40%, var(--border));max-width:calc(100% - 24px);color:var(--cyan);background:color-mix(in srgb, var(--panel-deep) 92%, transparent);border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:10px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 7px 18px #0000003d}.chart-background-refresh.error{border-color:color-mix(in srgb, var(--red) 40%, var(--border));color:var(--red)}.chart-background-refresh button{min-height:30px;color:inherit;white-space:nowrap;border-color:currentColor;padding:3px 8px}.chart-canvas-wrap{touch-action:pan-y;height:460px;min-height:330px;position:relative}.interactive-chart-canvas{width:100%;height:100%}.drawing-layer{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.drawing-layer.drawing-active{cursor:crosshair;pointer-events:all;touch-action:none}.drawing-shape{stroke:#f5bd50;stroke-width:2px;vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:pointer}.drawing-shape.horizontal{stroke:#25d6c8;stroke-dasharray:7 5}.drawing-shape.selected{stroke:#fff;stroke-width:3px;filter:drop-shadow(0 0 5px color-mix(in srgb, var(--cyan) 65%, transparent))}.drawing-handle{fill:var(--bg-shell);stroke:var(--cyan);stroke-width:3px;vector-effect:non-scaling-stroke;pointer-events:all;cursor:grab}.chart-tooltip{z-index:3;border:1px solid color-mix(in srgb, var(--cyan) 32%, var(--border));color:var(--text-muted);pointer-events:none;background:#070c12e6;border-radius:9px;grid-template-columns:repeat(3,auto);gap:5px 12px;padding:9px 11px;font-size:10px;display:grid;position:absolute;top:10px;left:10px;box-shadow:0 12px 30px #0000004d}.chart-tooltip strong{color:var(--text-strong);grid-column:1/-1;font-size:10px}.chart-state{z-index:4;color:var(--text-muted);text-align:center;background:#070c12d1;align-content:center;justify-items:center;gap:12px;padding:20px;font-size:11px;display:grid;position:absolute;inset:0}.has-tooltip{cursor:help;border-bottom:1px dashed color-mix(in srgb, var(--text-muted) 50%, transparent);display:inline-block;position:relative}.has-tooltip:after{content:attr(data-tooltip);background-color:var(--panel-deep);color:var(--text-strong);border:1px solid var(--border);white-space:pre-wrap;opacity:0;pointer-events:none;z-index:1000;text-align:left;border-radius:8px;width:280px;padding:10px 14px;font-size:11px;font-weight:500;line-height:1.5;transition:opacity .18s cubic-bezier(.4,0,.2,1),transform .18s cubic-bezier(.4,0,.2,1);position:absolute;bottom:130%;left:50%;transform:translate(-50%)scale(.95);box-shadow:0 8px 24px #00000080}.has-tooltip:hover:after{opacity:1;transform:translate(-50%)scale(1)translateY(-4px)}button.has-tooltip,.legend-swatch.has-tooltip{cursor:pointer;border-bottom:none}.chart-state.error{color:var(--red)}.chart-state button{min-height:40px;color:inherit;border-color:currentColor}.chart-status-row{border-top:1px solid var(--border);min-height:34px;color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;padding:7px 12px;font-size:10px;display:flex}.chart-status-row a{color:var(--cyan);flex:none;text-decoration:none}.chart-status-row a:hover{text-decoration:underline}.chart-a11y-summary{color:var(--text-muted);margin:0;padding:0 12px 10px;font-size:10px;line-height:1.6}.chart-keyboard-drawing{border-bottom:1px solid var(--border);color:var(--text-muted);background:color-mix(in srgb, var(--panel-soft) 70%, transparent);padding:8px 12px;font-size:11px}.chart-keyboard-drawing summary{cursor:pointer;width:max-content;color:var(--text);font-weight:800}.chart-keyboard-drawing>p{margin:8px 0;line-height:1.55}.keyboard-drawing-create,.keyboard-drawing-list,.keyboard-drawing-move{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.chart-keyboard-drawing button{border:1px solid var(--border);min-height:36px;color:var(--text-muted);background:var(--panel-deep);padding:6px 9px;font-size:10px}.chart-keyboard-drawing button[aria-pressed=true]{border-color:var(--cyan);color:var(--cyan);background:color-mix(in srgb, var(--cyan) 10%, var(--panel-deep))}.chart-keyboard-drawing button:focus-visible,.chart-keyboard-drawing summary:focus-visible{outline:3px solid color-mix(in srgb, var(--cyan) 55%, transparent);outline-offset:2px}.keyboard-drawing-feedback{color:var(--cyan)}:is(.interactive-chart-shell:fullscreen,.interactive-chart-shell.fullscreen-fallback){background:var(--bg-app);border:0;border-radius:0;grid-template-rows:auto auto auto minmax(0,1fr) auto auto;padding:14px;display:grid}:is(.interactive-chart-shell:fullscreen .chart-canvas-wrap,.interactive-chart-shell.fullscreen-fallback .chart-canvas-wrap){height:auto;min-height:0}.interactive-chart-shell.fullscreen-fallback{z-index:1000;position:fixed;inset:0}.technical-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.technical-card{padding:18px}.technical-card>span{color:var(--text-muted);font-size:12px}.technical-card>strong{margin:12px 0 8px;font-size:24px;display:block}.technical-card p{color:var(--text-muted);margin:4px 0 0;font-size:11px}.technical-card.summary-card,.technical-card:last-child,.technical-events{grid-column:1/-1}.technical-events ul{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.technical-events li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding-top:8px;display:flex}.technical-events li strong{font-size:11px}.technical-events time{color:var(--text-muted);font-size:10px}.buy{color:var(--green)}.sell{color:var(--red)}.neutral{color:var(--amber)}.detail-disclaimer{color:var(--text-muted);margin:12px 4px 0;font-size:11px}.detail-loading{color:var(--text-muted);text-align:center;justify-items:center;gap:12px;margin:34px 0;padding:40px;display:grid}.detail-loading strong{color:var(--text-strong)}.detail-skeleton .skeleton-line{width:min(280px,80%)}.detail-error button{margin-top:5px}.chart-refresh-note{background:color-mix(in srgb, var(--cyan) 7%, var(--panel-soft));border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:11px;display:flex;color:var(--cyan)!important;margin:10px 0 0!important}.chart-refresh-note.error{background:color-mix(in srgb, var(--red) 7%, var(--panel-soft));color:var(--red)!important}.chart-refresh-note button{min-height:34px;color:inherit;flex:none;padding:5px 9px}.detail-error{color:var(--red)}.metadata-only-detail{margin:34px 0}.availability-badge{border:1px solid color-mix(in srgb, var(--amber) 45%, var(--border));color:var(--amber);border-radius:999px;padding:6px 9px;font-size:10px}.metadata-only-card{margin-top:16px;padding:28px}.metadata-only-card strong,.metadata-only-card small{display:block}.metadata-only-card p{margin:10px 0;line-height:1.65}.metadata-only-card small{color:var(--text-muted)}.ai-news-card{margin:34px 0;padding:24px;scroll-margin-top:20px}.ai-technical-card{margin:22px 0 34px;padding:24px;scroll-margin-top:20px}.technical-ai-empty{border:1px dashed var(--border);background:color-mix(in srgb, var(--cyan) 4%, var(--panel-soft));border-radius:12px;justify-items:start;gap:14px;margin-top:20px;padding:22px;display:grid}.technical-ai-empty>div{align-items:baseline;gap:10px;display:flex}.technical-ai-empty strong{color:var(--cyan);font-size:22px}.technical-ai-empty span,.technical-ai-empty p{color:var(--text-muted);font-size:12px;line-height:1.65}.technical-ai-result{gap:16px;margin-top:20px;display:grid}.technical-ai-audit{flex-wrap:wrap;gap:7px;display:flex}.technical-ai-audit span{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:5px 8px;font-size:10px}.technical-ai-summary{border-left:3px solid var(--cyan);background:var(--panel-soft);border-radius:8px;gap:9px;padding:16px;display:grid}.technical-ai-summary.signal-buy{border-left-color:var(--green)}.technical-ai-summary.signal-sell{border-left-color:var(--red)}.technical-ai-summary>span{color:var(--text-muted);font-size:10px;font-weight:800}.technical-ai-summary>strong{font-size:15px;line-height:1.7}.technical-explanation-grid,.technical-signal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.technical-explanation-grid section,.technical-signal-grid section{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-soft) 88%, transparent);border-radius:10px;padding:15px}.technical-explanation-grid span{color:var(--cyan);font-size:10px;font-weight:850}.technical-explanation-grid p,.technical-signal-grid p{color:var(--text-muted);margin:8px 0 0;font-size:11px;line-height:1.65}.technical-signal-grid h3{margin:0 0 10px;font-size:12px}.technical-signal-grid .supporting{border-color:color-mix(in srgb, var(--green) 30%, var(--border))}.technical-signal-grid .conflicting{border-color:color-mix(in srgb, var(--amber) 35%, var(--border))}.technical-signal-grid ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.technical-signal-grid li{color:var(--text);gap:4px;font-size:11px;line-height:1.55;display:grid}.technical-signal-grid li small{color:var(--cyan);font-size:10px}.technical-evidence-drawer{border:1px solid var(--border);border-radius:10px;padding:13px 15px}.technical-evidence-drawer summary{cursor:pointer;color:var(--cyan);font-size:11px;font-weight:800}.technical-evidence-drawer>div{gap:7px;margin-top:12px;display:grid}.technical-evidence-drawer p{border-top:1px solid var(--border);grid-template-columns:minmax(130px,.35fr) 1fr;gap:12px;margin:0;padding-top:8px;font-size:10px;display:grid}.technical-evidence-drawer p span{color:var(--text-muted)}.technical-limitations{background:color-mix(in srgb, var(--amber) 8%, transparent);border-radius:9px;padding:10px 13px}.technical-limitations p{color:var(--amber);margin:3px 0;font-size:10px;line-height:1.55}.cache-badge{letter-spacing:.06em;border:1px solid;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:850}.cache-badge.hit{border-color:color-mix(in srgb, var(--green) 45%, transparent);color:var(--green);background:color-mix(in srgb, var(--green) 9%, transparent)}.cache-badge.miss{border-color:color-mix(in srgb, var(--amber) 45%, transparent);color:var(--amber);background:color-mix(in srgb, var(--amber) 9%, transparent)}.signal-gauge-container{background:var(--panel-soft);border:1px solid var(--border);border-radius:12px;padding:20px}.signal-gauge-container.signal-buy{border-left:3px solid var(--green)}.signal-gauge-container.signal-sell{border-left:3px solid var(--red)}.signal-gauge-container.signal-neutral{border-left:3px solid var(--cyan)}.signal-gauge-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.signal-gauge-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:800}.signal-gauge-value{letter-spacing:.03em;font-size:14px;font-weight:900}.signal-gauge-value.signal-buy{color:var(--green)}.signal-gauge-value.signal-sell{color:var(--red)}.signal-gauge-value.signal-neutral{color:var(--cyan)}.signal-gauge-track{background:#ffffff0a;border-radius:14px;height:28px;display:flex;position:relative;overflow:hidden}.signal-gauge-zone{color:#ffffff59;letter-spacing:.03em;flex:1;place-items:center;font-size:10px;font-weight:700;display:grid}.zone-buy{background:linear-gradient(90deg,#34d39938,#34d39914)}.zone-neutral{background:#ffffff08}.zone-sell{background:linear-gradient(90deg,#f8717114,#f8717138)}.signal-gauge-marker{background:#fff;border-radius:2px;width:4px;transition:left .6s cubic-bezier(.22,1,.36,1);position:absolute;top:2px;bottom:2px;transform:translate(-50%);box-shadow:0 0 8px #fff9}.signal-gauge-summary{color:var(--text);margin:14px 0 0;font-size:14px;line-height:1.75}.indicator-visual{margin:10px 0 4px}.ma-position{gap:10px;display:flex}.ma-dot{border:1px solid var(--border);background:#ffffff05;border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-size:10px;display:flex}.ma-dot .ma-dot-indicator{border-radius:50%;width:7px;height:7px}.ma-dot.above .ma-dot-indicator{background:var(--green);box-shadow:0 0 6px #34d39980}.ma-dot.below .ma-dot-indicator{background:var(--red);box-shadow:0 0 6px #f8717180}.ma-dot-label{color:var(--text-strong);font-weight:800}.ma-dot-status{color:var(--text-muted);font-size:9px}.ma-dot.above .ma-dot-status{color:var(--green)}.ma-dot.below .ma-dot-status{color:var(--red)}.momentum-visuals{gap:8px;display:grid}.rsi-gauge-container{gap:4px;display:grid}.rsi-gauge-label-row{justify-content:space-between;align-items:baseline;display:flex}.rsi-gauge-label-row span{color:var(--text-muted);font-size:10px;font-weight:800}.rsi-gauge-label-row strong{color:var(--text-strong);font-size:16px}.rsi-gauge-label-row strong.oversold{color:var(--green)}.rsi-gauge-label-row strong.overbought{color:var(--red)}.rsi-gauge-track{border-radius:4px;height:8px;display:flex;position:relative;overflow:hidden}.rsi-zone{flex:1}.rsi-oversold{background:linear-gradient(90deg,#34d39973,#34d39926)}.rsi-neutral{background:#ffffff0f}.rsi-overbought{background:linear-gradient(90deg,#f8717126,#f8717173)}.rsi-zone:first-child{flex:.3}.rsi-zone:nth-child(2){flex:.4}.rsi-zone:last-child{flex:.3}.rsi-gauge-marker{background:#fff;border-radius:1.5px;width:3px;transition:left .5s;position:absolute;top:-2px;bottom:-2px;transform:translate(-50%);box-shadow:0 0 6px #ffffff80}.rsi-gauge-labels{justify-content:space-between;display:flex}.rsi-gauge-labels span{color:var(--text-muted);font-size:9px}.macd-hist-badge{border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:700;display:inline-flex}.macd-hist-badge.positive{color:var(--green);background:color-mix(in srgb, var(--green) 10%, transparent);border:1px solid color-mix(in srgb, var(--green) 25%, transparent)}.macd-hist-badge.negative{color:var(--red);background:color-mix(in srgb, var(--red) 10%, transparent);border:1px solid color-mix(in srgb, var(--red) 25%, transparent)}.atr-badge{border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-size:11px;display:inline-flex}.atr-badge-label{color:var(--text-muted);font-size:10px;font-weight:800}.atr-badge strong{font-size:16px}.atr-badge-level{font-size:10px;font-weight:700}.atr-low{background:color-mix(in srgb, var(--green) 10%, transparent);border:1px solid color-mix(in srgb, var(--green) 25%, transparent)}.atr-low strong,.atr-low .atr-badge-level{color:var(--green)}.atr-medium{background:color-mix(in srgb, var(--amber) 10%, transparent);border:1px solid color-mix(in srgb, var(--amber) 25%, transparent)}.atr-medium strong,.atr-medium .atr-badge-level{color:var(--amber)}.atr-high{background:color-mix(in srgb, var(--red) 10%, transparent);border:1px solid color-mix(in srgb, var(--red) 25%, transparent)}.atr-high strong,.atr-high .atr-badge-level{color:var(--red)}.volume-ratio-container{gap:4px;display:grid}.volume-ratio-label-row{justify-content:space-between;align-items:baseline;display:flex}.volume-ratio-label-row span{color:var(--text-muted);font-size:10px;font-weight:800}.volume-ratio-label-row strong{color:var(--text-strong);font-size:14px}.volume-ratio-label-row strong.high-volume{color:var(--green)}.volume-ratio-label-row strong.low-volume{color:var(--red)}.volume-ratio-track{background:#ffffff0f;border-radius:4px;height:8px;position:relative;overflow:hidden}.volume-ratio-fill{border-radius:4px;height:100%;transition:width .6s}.volume-ratio-fill.normal{background:linear-gradient(90deg, var(--cyan), color-mix(in srgb, var(--cyan) 60%, transparent))}.volume-ratio-fill.high{background:linear-gradient(90deg, var(--green), color-mix(in srgb, var(--green) 60%, transparent))}.volume-ratio-fill.low{background:linear-gradient(90deg, var(--red), color-mix(in srgb, var(--red) 40%, transparent))}.volume-ratio-baseline{background:#fff3;width:1px;position:absolute;top:0;bottom:0;left:50%}.ai-news-layout{grid-template-columns:minmax(280px,.75fr) minmax(0,1.4fr);gap:16px;margin-top:22px;display:grid}.news-picker{align-content:start;gap:8px;display:grid}.news-picker>p{color:var(--text-muted);font-size:13px}.news-picker button{border:1px solid var(--border);width:100%;color:var(--text-strong);text-align:left;background:var(--panel-soft);border-radius:11px;gap:8px;padding:14px;display:grid}.news-picker button:hover{filter:none;border-color:color-mix(in srgb, var(--cyan) 45%, var(--border))}.news-picker button.selected{border-color:var(--cyan);background:color-mix(in srgb, var(--cyan) 8%, var(--panel-soft))}.news-picker button strong{font-size:13px;line-height:1.5}.news-picker button span{color:var(--text-muted);font-size:10px;font-weight:500}.news-picker button .news-policy-label{border:1px solid var(--border);border-radius:999px;justify-self:start;padding:4px 7px;font-size:10px;font-weight:750}.news-picker button .news-policy-label.allowed{border-color:color-mix(in srgb, var(--green) 35%, var(--border));color:var(--green)}.news-picker button .news-policy-label.metadata-only{border-color:color-mix(in srgb, var(--amber) 35%, var(--border));color:var(--amber)}.summary-panel{border:1px solid var(--border);background:var(--bg-input);border-radius:12px;min-height:320px}.summary-empty{text-align:center;align-content:center;place-items:center;gap:15px;min-height:320px;padding:30px;display:grid}.summary-empty>span{width:42px;height:42px;color:var(--text-on-accent);background:var(--cyan);border-radius:50%;place-items:center;font-size:20px;display:grid}.summary-empty p{max-width:420px;color:var(--text-muted);margin:0;font-size:13px}.summary-empty .request-error{color:var(--red)}.news-source-disclosure{color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;font-size:10px;display:flex}.news-source-disclosure a{color:var(--cyan);text-decoration:none}.news-source-disclosure a:hover{text-decoration:underline}.ai-news-card h2 small{color:var(--amber);font-size:10px;font-weight:750}.summary-result{gap:20px;padding:22px;display:grid}.summary-result>p{color:var(--text-strong);margin:18px 0 14px;line-height:1.75}.summary-result ul{color:var(--text-muted);gap:7px;margin:0 0 16px;padding-left:20px;font-size:12px;display:grid}.summary-sentiment-header{border-left:3px solid var(--cyan);background:var(--panel-soft);border-radius:8px;align-items:center;gap:12px;padding:14px 16px;display:flex}.sentiment-icon{color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:14px;font-weight:900;display:grid}.sentiment-label{font-size:13px;font-weight:800;display:block}.sentiment-source{color:var(--text-muted);margin-top:2px;font-size:10px;display:block}.summary-source-link{color:var(--cyan);flex-shrink:0;align-items:center;gap:4px;margin-left:auto;font-size:11px;text-decoration:none;display:inline-flex}.summary-source-link:hover{text-decoration:underline}.summary-headline-section{gap:10px;display:grid}.summary-headline-quote{border-left:3px solid var(--cyan);color:var(--text-strong);background:color-mix(in srgb, var(--cyan) 4%, transparent);border-radius:0 8px 8px 0;margin:4px 0 0;padding:12px 16px;font-size:16px;font-weight:700;line-height:1.65}.summary-keypoints{border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;gap:6px;padding:14px;display:grid}.summary-keypoints-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:10px;font-weight:800}.summary-keypoints ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.summary-keypoints li{color:var(--text);gap:8px;font-size:12px;line-height:1.65;display:flex}.keypoint-bullet{color:var(--cyan);flex-shrink:0;font-weight:900}.summary-keywords-section{gap:6px;display:grid}.summary-keywords-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:10px;font-weight:800}.summary-evidence-section{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-soft) 80%, transparent);border-radius:10px;gap:8px;padding:14px;display:grid}.summary-evidence-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.summary-evidence-header .eyebrow{margin:0}.briefing-headline-meta{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.factor-grid{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.factor-card{border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;padding:14px}.factor-card h3{margin:0 0 10px;font-size:12px}.factor-card ul{margin:0}.factor-card p{color:var(--text-muted);margin:0;font-size:11px}.factor-card.positive{border-color:color-mix(in srgb, var(--green) 28%, var(--border))}.factor-card.positive h3{color:var(--green)}.factor-card.risk{border-color:color-mix(in srgb, var(--red) 28%, var(--border))}.factor-card.risk h3{color:var(--red)}.evidence-row{flex-wrap:wrap;gap:7px;margin:14px 0;display:flex}.evidence-row span{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:5px 8px;font-size:10px}.evidence-chip-list{flex-wrap:wrap;gap:6px;display:inline-flex}.evidence-row>.evidence-chip-list{border:0;border-radius:0;padding:0}.evidence-chip{border:1px solid color-mix(in srgb, var(--cyan) 44%, var(--border));min-height:30px;color:var(--cyan);background:color-mix(in srgb, var(--cyan) 7%, transparent);font:inherit;cursor:pointer;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.evidence-chip:hover{background:color-mix(in srgb, var(--cyan) 13%, transparent)}.evidence-chip:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.analysis-generation-meta{margin-top:2px}.company-row,.analysis-disclaimer{color:var(--text-muted);font-size:10px}.analysis-disclaimer{margin:13px 0 0;line-height:1.6}.keyword-row{flex-wrap:wrap;gap:7px;display:flex}.keyword-row span{color:var(--cyan);background:color-mix(in srgb, var(--cyan) 8%, transparent);border-radius:999px;padding:5px 8px;font-size:10px}.usage-strip{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px;display:grid}.usage-strip div{background:var(--panel-soft);text-align:center;border-radius:9px;padding:11px}.usage-strip strong,.usage-strip span{display:block}.usage-strip strong{color:var(--cyan);font-size:14px}.usage-strip span{color:var(--text-muted);margin-top:4px;font-size:10px}.secondary-button{border:1px solid var(--border);width:100%;color:var(--text-strong);background:0 0;margin-top:13px}.secondary-button:hover{filter:none;border-color:var(--cyan)}.daily-briefing-card{margin:34px 0;padding:24px;scroll-margin-top:20px}.daily-briefing-heading p:last-child{color:var(--text-muted);margin:7px 0 0;font-size:11px}.daily-briefing-empty{border:1px dashed var(--border);text-align:center;border-radius:12px;place-content:center;justify-items:center;gap:12px;min-height:210px;margin-top:18px;display:grid}.daily-briefing-empty p{max-width:580px;color:var(--text-muted);margin:0;font-size:12px;line-height:1.7}.daily-briefing-empty .request-error,.daily-briefing-result .request-error{color:var(--red)}.daily-briefing-result{margin-top:20px}.briefing-date-row{color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.briefing-date-row strong{border:1px solid var(--border);color:var(--cyan);border-radius:999px;padding:5px 9px}.briefing-date-row .relation-conflicting{color:var(--amber);border-color:color-mix(in srgb, var(--amber) 45%, var(--border))}.briefing-warning{border:1px solid color-mix(in srgb, var(--amber) 42%, var(--border));color:var(--amber);background:color-mix(in srgb, var(--amber) 7%, transparent);border-radius:9px;padding:10px 12px;font-size:11px}.briefing-headline{border:1px solid color-mix(in srgb, var(--cyan) 30%, var(--border));background:color-mix(in srgb, var(--cyan) 5%, var(--panel-soft));border-radius:12px;margin:16px 0;padding:20px}.briefing-headline small{color:var(--cyan);font-size:10px}.briefing-headline h3{color:var(--text-strong);margin:8px 0;font-size:19px;line-height:1.45}.briefing-headline p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.7}.viewpoint-matrix{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.viewpoint{border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;min-width:0;padding:12px}.viewpoint>span,.viewpoint>strong,.viewpoint>small{display:block}.viewpoint>span{color:var(--text-muted);font-size:10px}.viewpoint>strong{color:var(--cyan);margin-top:7px;font-size:12px}.viewpoint>p{min-height:35px;margin:8px 0;font-size:10px;line-height:1.5}.viewpoint>small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.viewpoint.status-caution,.viewpoint.status-diverging,.viewpoint.status-mixed{border-color:color-mix(in srgb, var(--amber) 35%, var(--border))}.viewpoint.status-caution>strong,.viewpoint.status-diverging>strong,.viewpoint.status-mixed>strong{color:var(--amber)}.viewpoint.status-insufficient>strong{color:var(--text-muted)}.viewpoint .evidence-chip-list{gap:4px;margin-top:6px;display:flex}.briefing-statement-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px;display:grid}.briefing-statement-grid section{border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;padding:14px}.briefing-statement-grid h3{margin:0 0 9px;font-size:11px}.briefing-statement-grid .positive h3{color:var(--green)}.briefing-statement-grid .risk h3{color:var(--amber)}.briefing-statement-grid p,.briefing-statement-grid ul{color:var(--text-muted);margin:0;font-size:10px}.briefing-statement-grid ul{gap:8px;padding-left:17px;display:grid}.briefing-statement-grid li span,.briefing-statement-grid li small{display:block}.briefing-statement-grid li small{color:var(--cyan);margin-top:3px;font-size:10px}.briefing-evidence,.briefing-audit{border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;margin-top:12px;padding:12px}.briefing-evidence summary,.briefing-audit summary{cursor:pointer;color:var(--cyan);font-size:10px;font-weight:750}.briefing-evidence>div{gap:1px;margin-top:10px;display:grid}.briefing-evidence p{border-top:1px solid var(--border);grid-template-columns:120px minmax(0,1fr) auto;gap:9px;margin:0;padding:9px 0;font-size:10px;display:grid}.briefing-evidence p strong{color:var(--text-strong)}.briefing-evidence p span{color:var(--text-muted)}.briefing-evidence p a{color:var(--cyan);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.briefing-limitations{border-left:2px solid var(--amber);margin-top:12px;padding-left:11px}.briefing-limitations p{color:var(--text-muted);margin:4px 0;font-size:10px}.briefing-audit p{color:var(--text-muted);margin:7px 0 0;font-size:10px}.disclosure-card{margin:34px 0;padding:24px;scroll-margin-top:20px}.disclosure-heading h2{margin:4px 0 7px}.disclosure-heading p:last-child{color:var(--text-muted);margin:0;font-size:11px}.disclosure-refresh{border:1px solid color-mix(in srgb, var(--cyan) 48%, var(--border));color:var(--cyan);background:color-mix(in srgb, var(--cyan) 7%, transparent);flex:none}.disclosure-refresh:disabled{cursor:wait;opacity:.55}.disclosure-status{border:1px solid color-mix(in srgb, var(--green) 35%, var(--border));background:color-mix(in srgb, var(--green) 6%, transparent);border-radius:9px;margin:16px 0 0;padding:10px 12px;font-size:11px;color:var(--green)!important}.disclosure-status.error{border-color:color-mix(in srgb, var(--red) 35%, var(--border));background:color-mix(in srgb, var(--red) 6%, transparent);color:var(--red)!important}.disclosure-empty{border:1px dashed var(--border);min-height:130px;color:var(--text-muted);text-align:center;border-radius:11px;place-content:center;gap:7px;margin-top:18px;font-size:11px;display:grid}.disclosure-empty strong{color:var(--text-strong);font-size:13px}.disclosure-list{border:1px solid var(--border);background:var(--border);border-radius:11px;gap:1px;margin-top:18px;display:grid;overflow:hidden}.disclosure-row{color:inherit;background:var(--panel-soft);gap:8px;padding:16px;text-decoration:none;transition:background .15s,box-shadow .15s;display:grid;position:relative}.disclosure-row:hover{background:color-mix(in srgb, var(--cyan) 5%, var(--panel-soft))}.disclosure-row.selected{z-index:1;box-shadow:inset 3px 0 0 var(--cyan);background:color-mix(in srgb, var(--cyan) 7%, var(--panel-soft))}.disclosure-row-meta{flex-wrap:wrap;gap:6px;display:flex}.disclosure-row strong{color:var(--text-strong);font-size:12px;line-height:1.5}.disclosure-row>span{color:var(--text-muted);font-size:10px}.disclosure-provider,.disclosure-type{border:1px solid color-mix(in srgb, var(--cyan) 30%, var(--border));color:var(--cyan);border-radius:999px;padding:3px 6px;font-size:10px;font-weight:800}.disclosure-type{border-color:var(--border);color:var(--text-muted)}.disclosure-content-state{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:3px 6px;font-size:10px;font-weight:750}.disclosure-content-state.ready{border-color:color-mix(in srgb, var(--green) 35%, var(--border));color:var(--green)}.disclosure-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:3px;display:flex}.disclosure-actions button{border:1px solid color-mix(in srgb, var(--cyan) 48%, var(--border));color:var(--text-on-accent);background:var(--cyan);border-radius:8px;padding:8px 11px;font-size:10px;font-weight:850}.disclosure-actions button:disabled{cursor:wait;opacity:.6}.disclosure-actions a{color:var(--cyan);align-items:center;gap:4px;font-size:10px;font-weight:750;text-decoration:none;display:inline-flex}.disclosure-summary-panel{border:1px solid color-mix(in srgb, var(--cyan) 28%, var(--border));background:color-mix(in srgb, var(--cyan) 4%, var(--panel-soft));border-radius:12px;margin-top:16px;padding:18px}.disclosure-summary-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.disclosure-summary-heading>div>span{color:var(--cyan);letter-spacing:.08em;font-size:10px;font-weight:850}.disclosure-summary-heading h3{color:var(--text-strong);margin:5px 0 0;font-size:15px;line-height:1.5}.disclosure-summary-text{color:var(--text-strong);margin:16px 0 12px;font-size:12px;line-height:1.75}.disclosure-key-points{color:var(--text-muted);gap:6px;margin:0 0 16px;padding-left:18px;font-size:10px;line-height:1.6;display:grid}.disclosure-summary-audit{color:var(--text-muted);text-align:right;margin:11px 0 0;font-size:10px}.disclosure-note{color:var(--text-muted);margin:13px 0 0;font-size:10px;line-height:1.6}.disclosure-link-unavailable{color:var(--text-tertiary);font-size:10px}.disclosure-evidence-drawer{border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;margin-top:12px;padding:12px}.disclosure-evidence-drawer summary{cursor:pointer;color:var(--cyan);font-size:10px;font-weight:800}.disclosure-evidence-drawer>div{gap:1px;margin-top:10px;display:grid}.disclosure-evidence-drawer p{border-top:1px solid var(--border);grid-template-columns:minmax(90px,.24fr) minmax(0,1fr) auto;gap:10px;margin:0;padding:10px 0;font-size:10px;display:grid}.disclosure-evidence-drawer p span{color:var(--text-muted)}.disclosure-evidence-drawer p a{color:var(--cyan);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.disclosure-summary-disclaimer{border-left:2px solid var(--amber);padding-left:10px}.admin-dashboard{margin:42px 0;scroll-margin-top:20px}.admin-loading{color:var(--text-muted);text-align:center;padding:38px}.admin-title-row{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;display:flex}.admin-title-row h2{font-size:clamp(24px,3vw,32px)}.admin-title-row p:last-child{color:var(--text-muted);margin:8px 0 0;font-size:12px}.admin-title-meta{color:var(--text-muted);align-items:center;gap:10px;font-size:11px;display:flex}.data-sync-button{border:1px solid color-mix(in srgb, var(--cyan) 55%, var(--border));color:var(--cyan);background:color-mix(in srgb, var(--cyan) 8%, var(--panel));border-radius:8px;padding:8px 11px;font-size:10px;font-weight:760}.data-sync-button:disabled{cursor:wait;opacity:.58}.data-sync-status{border:1px solid color-mix(in srgb, var(--green) 35%, var(--border));color:var(--green);background:color-mix(in srgb, var(--green) 6%, var(--panel));border-radius:8px;margin:-4px 0 14px;padding:9px 12px;font-size:11px}.data-sync-status.error{border-color:color-mix(in srgb, var(--red) 35%, var(--border));color:var(--red);background:color-mix(in srgb, var(--red) 6%, var(--panel))}.demo-badge{border:1px solid color-mix(in srgb, var(--amber) 40%, transparent);color:var(--amber);background:color-mix(in srgb, var(--amber) 8%, transparent);border-radius:999px;padding:5px 8px;font-weight:800}.admin-metric-grid{grid-template-columns:repeat(6,1fr);gap:12px;display:grid}.admin-metric-card{min-width:0;padding:18px}.admin-metric-card span,.admin-metric-card strong,.admin-metric-card small{display:block}.admin-metric-card span{color:var(--text-muted);font-size:11px}.admin-metric-card strong{color:var(--text-strong);letter-spacing:-.04em;margin:12px 0 8px;font-size:clamp(20px,2.5vw,27px)}.admin-metric-card small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.admin-metric-card.highlight{border-color:color-mix(in srgb, var(--cyan) 38%, var(--border))}.admin-metric-card.highlight strong{color:var(--cyan)}.admin-metric-card.saving{border-color:color-mix(in srgb, var(--green) 38%, var(--border))}.admin-metric-card.saving strong{color:var(--green)}.admin-detail-grid{grid-template-columns:1.25fr .75fr;gap:14px;margin-top:14px;display:grid}.cache-performance-card,.feature-usage-card,.usage-log-card{padding:22px}.admin-dashboard h3{margin:0;font-size:17px}.cache-performance-card .section-heading>strong{color:var(--cyan);font-size:27px}.cache-progress{background:color-mix(in srgb, var(--amber) 48%, var(--panel-soft));border-radius:999px;height:13px;margin:28px 0 13px;position:relative;overflow:hidden}.cache-hit-bar{border-radius:inherit;background:linear-gradient(90deg, var(--green), var(--cyan));height:100%;transition:width .35s;display:block}.cache-legend{color:var(--text-muted);gap:20px;font-size:10px;display:flex}.cache-legend span{align-items:center;gap:6px;display:inline-flex}.cache-legend i{border-radius:50%;width:7px;height:7px}.hit-dot{background:var(--cyan)}.miss-dot{background:var(--amber)}.cache-performance-card>p{margin:24px 0 0;font-size:11px;line-height:1.7}.feature-usage-card{align-content:start;gap:18px;display:grid}.feature-usage-row>div:first-child{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;display:flex}.feature-usage-row strong{color:var(--cyan)}.feature-bar{background:var(--panel-soft);border-radius:999px;height:7px;overflow:hidden}.feature-bar span{border-radius:inherit;background:var(--cyan);height:100%;display:block}.empty-admin-data{font-size:12px}.usage-log-card{margin-top:14px}.usage-table-wrap{margin-top:20px;overflow-x:auto}.usage-log-card table{border-collapse:collapse;width:100%;min-width:800px;font-size:11px}.usage-log-card th{border-bottom:1px solid var(--border);color:var(--text-muted);text-align:left;padding:10px 12px;font-weight:650}.usage-log-card td{border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent);color:var(--text-muted);padding:13px 12px}.usage-log-card tbody tr:last-child td{border-bottom:0}.usage-log-card td strong,.usage-log-card td small{display:block}.usage-log-card td strong{color:var(--text-strong)}.usage-log-card td small{color:var(--text-muted);margin-top:4px;font-size:10px}.table-cache{border:1px solid;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:850;display:inline-block}.table-cache.hit{border-color:color-mix(in srgb, var(--green) 40%, transparent);color:var(--green)}.table-cache.miss{border-color:color-mix(in srgb, var(--amber) 40%, transparent);color:var(--amber)}.table-cache.failed{border-color:color-mix(in srgb, var(--red) 40%, transparent);color:var(--red)}.usage-log-card .saved-cost{color:var(--green)}.usage-log-card .empty-table{text-align:center;padding:28px}.dashboard-grid{grid-template-columns:minmax(0,1.6fr) minmax(320px,.9fr);gap:16px;display:grid}.portfolio-card{padding:24px}.panel-feedback:empty{display:none}.panel-status-message{color:var(--green);background:color-mix(in srgb, var(--green) 7%, var(--panel-soft));border-radius:8px;margin:0 0 12px;padding:9px 11px;font-size:11px}.panel-state{border:1px dashed var(--border);color:var(--text-muted);background:var(--panel-deep);border-radius:12px;justify-items:start;gap:7px;margin:0 0 14px;padding:18px;font-size:11px;display:grid}.panel-state strong{color:var(--text-strong);font-size:13px}.panel-state button{margin-top:3px}.panel-state-offline,.panel-state-warning{border-color:color-mix(in srgb, var(--amber) 42%, var(--border))}.panel-state-error{border-color:color-mix(in srgb, var(--red) 42%, var(--border))}.panel-state-loading{background:linear-gradient(90deg, var(--panel-deep), var(--panel-soft), var(--panel-deep));background-size:200% 100%;align-content:center;min-height:112px;animation:1.4s linear infinite feed-shimmer}.panel-state-empty{align-content:center;min-height:105px}.portfolio-edit-button{border:1px solid var(--border);color:var(--cyan);background:0 0}.portfolio-edit-button:hover{filter:none;border-color:var(--cyan)}.portfolio-form{flex-direction:column;gap:10px;margin:20px 0 4px;display:flex}.portfolio-form input[type=search],.portfolio-form input[type=number]{border:1px solid var(--border);width:100%;min-width:0;color:var(--text-strong);background:var(--panel-soft);box-sizing:border-box;border-radius:8px;padding:10px 12px;font-size:13px}.portfolio-form input[type=search]:focus,.portfolio-form input[type=number]:focus{border-color:var(--cyan);outline:none}.portfolio-form button[type=submit]{width:100%;margin-top:4px}.portfolio-form .purchase-currency-toggle{flex-wrap:wrap}.stock-search-wrap{width:100%;position:relative}.stock-search-input{background:var(--panel-soft);border:1px solid var(--border);width:100%;color:var(--text-strong);box-sizing:border-box;border-radius:8px;outline:none;padding:10px 12px;font-size:13px;transition:border-color .2s;display:block}.stock-search-input:focus{border-color:var(--cyan)}.stock-search-selected{background:color-mix(in srgb, var(--cyan) 6%, var(--panel-soft));border:1px solid color-mix(in srgb, var(--cyan) 28%, var(--border));border-radius:7px;align-items:center;gap:8px;margin-top:6px;padding:7px 10px;display:flex}.stock-search-selected-symbol{color:var(--cyan);font-size:12px;font-weight:800}.stock-search-selected-name{color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;font-weight:600;overflow:hidden}.stock-search-selected-market{color:var(--text-muted);white-space:nowrap;font-size:11px}.stock-search-popover{z-index:110;background:var(--panel);border:1px solid var(--border);border-radius:10px;max-height:220px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000059}.stock-search-hint{color:var(--text-muted);padding:10px 14px;font-size:12px}.stock-search-list{margin:0;padding:4px 0;list-style:none}.stock-search-option{width:100%;color:var(--text-strong);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;transition:background .12s;display:flex}.stock-search-option:hover,.stock-search-option.active{background:color-mix(in srgb, var(--cyan) 7%, transparent)}.stock-search-option strong{color:var(--text-strong);white-space:nowrap;font-size:12px;font-weight:800}.stock-search-option span{color:var(--text-muted);text-align:right;font-size:11px}.stock-search-option em{color:var(--text-dim,var(--text-muted));margin-left:4px;font-style:normal}.purchase-currency-toggle{border-top:1px solid var(--border);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.purchase-currency-label{color:var(--text-muted);white-space:nowrap;font-size:12px}.purchase-currency-buttons{gap:6px;display:flex}.currency-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:5px 14px;font-size:12px;font-weight:600;transition:all .18s}.currency-btn.active{background:var(--cyan);color:#0f172a;border-color:var(--cyan);font-weight:800}.currency-btn:not(.active):hover{border-color:var(--cyan);color:var(--text-strong)}.portfolio-error{color:var(--red);margin:12px 0 0;font-size:11px}.currency-summary-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:22px;display:grid}.currency-summary{border:1px solid var(--border);background:var(--panel-soft);border-radius:11px;padding:16px}.base-currency-summary{border-color:color-mix(in srgb, var(--cyan) 35%, var(--border));background:color-mix(in srgb, var(--cyan) 5%, var(--panel-soft));grid-column:1/-1}.base-currency-summary em{color:var(--text-muted);margin-top:9px;font-size:10px;font-style:normal;display:block}.currency-summary span,.currency-summary strong,.currency-summary small{display:block}.currency-summary span{color:var(--text-muted);font-size:10px}.currency-summary strong{margin:9px 0 6px;font-size:23px}.currency-summary small{font-size:10px}.portfolio-empty{color:var(--text-muted);grid-column:1/-1;font-size:12px}.holding-list{gap:7px;margin-top:14px;display:grid}.holding-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:10px 2px;display:grid}.holding-row.live{border-bottom-color:color-mix(in srgb, var(--green) 22%, var(--border))}.holding-row>div{gap:4px;display:grid}.holding-row>div:nth-child(2){text-align:right}.holding-row span{color:var(--text-muted);font-size:10px}.holding-row button{color:var(--text-muted);background:0 0;border:0;padding:6px;font-size:10px}.holding-row button:hover{color:var(--red);filter:none}.holding-actions,.alert-delete-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.holding-actions button,.alert-delete-actions button{border:1px solid var(--border);min-height:36px;padding:6px 9px}.holding-actions button:last-child,.alert-delete-actions button:last-child{color:var(--red)}.portfolio-live-label,.alert-live-label{letter-spacing:.05em;font-weight:800;color:var(--green)!important;font-size:10px!important}.portfolio-note{color:var(--text-muted);margin:14px 0 0;font-size:10px;line-height:1.6}.alerts-card{padding:20px}.alert-add-button{border:1px solid var(--border);color:var(--cyan);background:0 0;padding:7px 9px;font-size:10px}.alert-form{flex-direction:column;gap:10px;margin-top:15px;display:flex}.alert-form select,.alert-form input[type=number]{border:1px solid var(--border);width:100%;min-width:0;color:var(--text-strong);background:var(--panel-soft);box-sizing:border-box;border-radius:8px;padding:10px 12px;font-size:13px}.alert-form button[type=submit]{width:100%;margin-top:4px}.alert-error{color:var(--red);font-size:10px}.alert-list{gap:5px;margin-top:14px;display:grid}.alert-row{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:9px 0;display:grid}.alert-row.live{border-bottom-color:color-mix(in srgb, var(--green) 22%, var(--border))}.alert-row>div:nth-child(2){gap:4px;display:grid}.alert-row strong{font-size:10px}.alert-row span{color:var(--text-muted);font-size:10px}.alert-row button{color:var(--text-muted);background:0 0;border:0;padding:4px;font-size:10px}.alert-row button:hover{color:var(--cyan);filter:none}.alert-state{background:var(--amber);border-radius:50%;width:7px;height:7px}.alert-state.triggered{background:var(--green);box-shadow:0 0 8px color-mix(in srgb, var(--green) 55%, transparent)}.alert-state.disabled{background:var(--text-muted)}.alert-note{color:var(--text-muted);margin:12px 0 0;font-size:10px;line-height:1.5}.section-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.section-heading.compact{align-items:flex-start}.pill{border:1px solid color-mix(in srgb, var(--green) 30%, transparent);color:var(--green);background:color-mix(in srgb, var(--green) 8%, transparent);border-radius:999px;padding:5px 9px;font-size:11px}.portfolio-value{letter-spacing:-.05em;margin-top:38px;font-size:clamp(32px,5vw,52px);font-weight:850}.profit{margin-top:5px;font-weight:700}.chart-placeholder{border-bottom:1px solid var(--border);height:210px;margin-top:30px}.chart-placeholder svg{width:100%;height:100%;overflow:visible}.chart-placeholder .area{fill:url(#chartFill)}.chart-placeholder .line{fill:none;stroke:var(--cyan);stroke-width:3px;vector-effect:non-scaling-stroke}.side-stack{gap:16px;display:grid}.side-stack .card{padding:21px}.side-stack p{margin-bottom:16px;font-size:14px;line-height:1.6}.cache-note{border:1px solid color-mix(in srgb, var(--cyan) 28%, transparent);color:var(--cyan);background:color-mix(in srgb, var(--cyan) 7%, transparent);border-radius:9px;padding:10px;font-size:12px}.metric-row{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:25px;display:grid}.metric-row div{text-align:center;background:var(--panel-soft);border-radius:10px;padding:13px 9px}.metric-row strong,.metric-row span{display:block}.metric-row strong{color:var(--cyan);font-size:18px}.metric-row span{color:var(--text-muted);margin-top:5px;font-size:10px}footer{border-top:1px solid var(--border);color:var(--text-muted);text-align:center;padding:23px 0 35px;font-size:12px}@media (width<=900px){.topbar{grid-template-columns:1fr auto}.global-stock-search{grid-area:2/1/auto/-1;width:100%;max-width:none;padding-bottom:12px}.global-search-popover{width:100%}nav{display:none}.stock-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.detail-layout,.ai-news-layout{grid-template-columns:1fr}.disclosure-heading{flex-direction:column;align-items:flex-start}.technical-explanation-grid,.technical-signal-grid{grid-template-columns:1fr}.viewpoint-matrix{grid-template-columns:repeat(4,1fr)}.technical-evidence-drawer p{grid-template-columns:1fr;gap:4px}.admin-metric-grid{grid-template-columns:repeat(3,1fr)}.admin-detail-grid{grid-template-columns:1fr}.api-status{display:none}.watchlist-search-result{grid-template-columns:82px minmax(140px,1fr) auto}.watchlist-search-result .availability{display:none}.fx-strip{grid-template-columns:1fr auto auto}.fx-strip>small,.fx-strip>b:last-child,.fx-freshness{display:none}.fx-status-wrapper{grid-column:1/span 3;justify-self:end}}@media (width<=560px){.app-shell{width:min(100% - 24px,1240px)}.brand-wordmark small{display:none}main{padding-top:36px}h1{font-size:25px;line-height:1.35}.hero-copy{flex-direction:column;align-items:flex-start}.hero-copy button{width:100%}.stock-grid{grid-template-columns:1fr 1fr;gap:10px}.stock-card-main{padding:14px}.stock-card-main>strong{font-size:16px}.remove-watchlist{opacity:1;min-height:44px}.card-heading{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:14px}.portfolio-card{padding:19px}.portfolio-form{flex-direction:column}.fx-strip{gap:10px;padding:12px}.fx-strip>strong{font-size:15px}.currency-summary-grid,.metric-row{grid-template-columns:1fr}.detail-title-row{flex-direction:column;align-items:flex-start}.detail-layout{grid-template-columns:1fr}.price-chart-card{padding:18px}.quote-row>div:first-child strong{font-size:27px}.chart-toolbar{align-items:stretch;gap:8px;display:grid;overflow:hidden}.chart-range-controls,.chart-tools,.chart-indicators{overscroll-behavior-x:contain;scrollbar-width:thin;flex-wrap:nowrap;width:100%;overflow-x:auto}.chart-range-controls{align-items:center}.chart-intervals,.chart-periods,.chart-tools,.chart-tool-group,.chart-indicators>div{flex-wrap:nowrap;flex:none}.chart-intervals{border-right:1px solid var(--border);border-bottom:0;padding-right:8px}.chart-indicators{flex-direction:row;align-items:center}.chart-toolbar button,.chart-indicators button,.chart-keyboard-drawing button{min-height:44px;padding:8px 10px}.chart-legend{max-height:128px;overflow-y:auto}.chart-data-meta{flex-wrap:nowrap;overflow-x:auto}.chart-canvas-wrap{height:380px}.chart-tooltip{grid-template-columns:repeat(2,auto)}.chart-status-row{flex-direction:column;align-items:flex-start}.technical-grid{grid-template-columns:1fr 1fr}.ai-news-card,.daily-briefing-card{padding:18px}.daily-briefing-heading{flex-direction:column;align-items:flex-start}.viewpoint-matrix,.briefing-statement-grid,.briefing-evidence p{grid-template-columns:1fr}.disclosure-card{padding:18px}.disclosure-refresh{width:100%}.disclosure-actions{flex-direction:column;align-items:stretch}.disclosure-actions button,.disclosure-actions a{text-align:center;width:100%;min-height:44px}.disclosure-actions a{border:1px solid var(--border);border-radius:8px;place-items:center;display:grid}.disclosure-summary-heading{flex-direction:column;align-items:flex-start}.disclosure-evidence-drawer p{grid-template-columns:1fr;gap:5px}.evidence-chip{min-height:44px}.summary-meta{flex-direction:column;align-items:flex-start}.factor-grid,.usage-strip{grid-template-columns:1fr}.admin-title-row,.admin-title-meta{flex-direction:column;align-items:flex-start}.admin-metric-grid{grid-template-columns:1fr 1fr}.admin-metric-card{padding:15px}.admin-metric-card small{white-space:normal}.cache-legend{flex-direction:column;align-items:flex-start;gap:8px}.topbar-actions{gap:6px}.global-search-popover li button{grid-template-columns:66px minmax(0,1fr)}.global-search-popover .availability{grid-column:2;justify-self:start}.user-session>span{display:none}.login-card{padding:24px}.login-heading h1{font-size:24px}.watchlist-editor-heading{align-items:flex-start}.watchlist-editor-heading>div{min-width:0}.watchlist-search-result{grid-template-columns:72px minmax(0,1fr) auto;gap:8px}.watchlist-search-result button{min-height:44px;padding:7px 10px}.remove-watchlist{opacity:1}}.workspace-shell{min-height:100vh}.workspace-frame{grid-template-columns:240px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .18s;display:grid}.workspace-frame.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.desktop-sidebar{z-index:50;border-right:1px solid var(--border);background:color-mix(in srgb, var(--bg-shell) 96%, transparent);grid-template-rows:74px auto minmax(0,1fr) auto;height:100dvh;display:grid;position:sticky;top:0;overflow:hidden}.sidebar-brand{border-bottom:1px solid var(--border);min-width:0;color:var(--text-strong);justify-content:center;align-items:center;gap:9px;padding:10px 14px;text-decoration:none;display:flex}.sidebar-brand img{object-fit:contain;width:42px;height:42px;transition:width .18s,height .18s;display:block}.sidebar-brand>strong{letter-spacing:-.04em;font-size:20px}.sidebar-brand>strong span{color:var(--cyan)}.sidebar-brand>i{color:var(--cyan);font-size:16px;font-style:normal;font-weight:900;display:none}.sidebar-toggle{border:1px solid var(--border);width:32px;min-height:32px;color:var(--text-muted);background:var(--panel-soft);justify-self:end;margin:10px 10px 0 0;padding:0}.sidebar-toggle:hover{border-color:var(--cyan);color:var(--cyan);filter:none}.sidebar-navigation{min-height:0;padding:4px 10px 16px;display:block;overflow-y:auto}.nav-group{gap:4px;margin-top:16px;display:grid}.nav-group>small{color:var(--text-navigation-group);letter-spacing:.12em;padding:0 12px 5px;font-size:11px;font-weight:850}.shell-nav-link{min-height:44px;color:var(--text-muted);border-radius:10px;align-items:center;gap:12px;text-decoration:none;display:flex;padding:10px 12px!important}.shell-nav-link>span{width:24px;color:var(--text-navigation-icon);flex:0 0 24px;place-items:center;display:grid}.shell-nav-link svg{display:block}.shell-nav-link>b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.shell-nav-link:hover,.shell-nav-link.active{color:var(--text-strong);background:color-mix(in srgb, var(--cyan) 9%, var(--panel-soft))}.shell-nav-link.active>span{color:var(--cyan)}.sidebar-footer{padding:14px 12px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--border);gap:10px;display:grid}.sidebar-footer .pwa-install-button{width:100%;min-height:40px}.sidebar-user{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:0;display:grid}.sidebar-user>span{width:34px;height:34px;color:var(--text-on-accent);background:var(--cyan);border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid}.sidebar-user>img{border:1px solid var(--border);object-fit:cover;border-radius:50%;width:34px;height:34px;display:block}.sidebar-user>div{gap:2px;min-width:0;display:grid}.sidebar-user b{color:var(--cyan);font-size:10px}.sidebar-user small{color:var(--text-muted);text-overflow:ellipsis;font-size:10px;overflow:hidden}.shell-logout{border:1px solid var(--border);min-height:38px;color:var(--text-muted);background:0 0;padding:8px 10px;font-size:10px}.shell-logout:hover{border-color:var(--red);color:var(--red);filter:none}.sidebar-collapsed .sidebar-brand{justify-content:center;padding:10px 0}.sidebar-collapsed .sidebar-brand>strong,.sidebar-collapsed .nav-group>small,.sidebar-collapsed .shell-nav-link>b,.sidebar-collapsed .sidebar-user>div,.sidebar-collapsed .sidebar-footer .pwa-install-button,.sidebar-collapsed .shell-logout{display:none}.sidebar-collapsed .sidebar-brand img{width:34px;height:34px;display:block}.sidebar-collapsed .sidebar-toggle{justify-self:center;margin-right:0}.sidebar-collapsed .sidebar-navigation{padding-left:8px;padding-right:8px}.sidebar-collapsed .shell-nav-link{justify-content:center;padding:10px!important}.sidebar-collapsed .sidebar-user{justify-content:center;display:flex}.shell-main-column{min-width:0}.shell-topbar{z-index:40;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg-shell) 90%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:minmax(105px,auto) minmax(250px,430px) auto;align-items:center;gap:22px;min-height:74px;padding:10px clamp(18px,3vw,38px);display:grid;position:sticky;top:0}.mobile-brand{display:none}.page-context{gap:2px;min-width:0;display:grid}.page-context small{color:var(--text-muted);font-size:10px}.page-context strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.shell-topbar .global-stock-search{justify-self:stretch;width:100%;max-width:430px}.shell-statuses{justify-content:flex-end;align-items:center;gap:12px;min-width:0;display:flex}.shell-statuses .api-status,.shell-statuses .realtime-status{justify-self:auto}.shell-statuses b{white-space:nowrap;font-size:10px}.compact-fx{border-right:1px solid var(--border);white-space:nowrap;grid-template-columns:auto auto;align-items:center;gap:1px 7px;padding-right:12px;display:grid}.compact-fx small{color:var(--text-muted);font-size:10px}.compact-fx strong{font-size:11px}.compact-fx em{grid-column:2;font-size:10px;font-style:normal}.compact-fx .compact-fx-badge{grid-column:1/-1;justify-self:end;padding:2px 5px;font-size:10px}.route-content{width:min(1320px,100% - clamp(32px,6vw,76px));min-height:calc(100vh - 150px);margin:0 auto;padding:42px 0 50px}#main-content h1[tabindex="-1"]:focus{outline:none}.global-offline-banner{border-bottom:1px solid color-mix(in srgb, var(--state-warning) 38%, var(--border-subtle));min-height:44px;color:var(--state-warning);background:color-mix(in srgb, var(--state-warning) 8%, var(--bg-surface));justify-content:center;align-items:center;gap:10px;padding:8px clamp(14px,3vw,38px);font-size:12px;display:flex}.global-offline-banner>span{flex:1;max-width:930px;line-height:1.45}.global-offline-banner button{min-height:34px;color:var(--state-warning);background:0 0;border:1px solid;align-items:center;gap:6px;padding:6px 10px;font-size:11px;display:inline-flex}.shell-main-column>footer{width:min(1320px,100% - clamp(32px,6vw,76px));margin:0 auto}.route-page-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;display:flex}.route-page-heading h1{font-size:clamp(27px,3.4vw,40px)}.route-page-heading p:last-child{max-width:720px;color:var(--text-muted);margin:0;line-height:1.65}.route-page-heading>button{flex:none}.mobile-bottom-nav{display:none}.stock-route-tabs{z-index:30;border:1px solid var(--border);background:color-mix(in srgb, var(--panel-deep) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;gap:5px;margin:-7px 0 25px;padding:7px;display:flex;position:sticky;top:74px}.stock-route-tabs a{min-height:42px;color:var(--text-muted);border-radius:8px;padding:11px 14px;font-size:11px;font-weight:800;text-decoration:none}.stock-route-tabs a:hover,.stock-route-tabs a.active{color:var(--cyan);background:color-mix(in srgb, var(--cyan) 9%, var(--panel-soft))}.stock-route-page>.stock-detail{margin-top:0}.dashboard-content-preview{margin:18px 0;padding:22px}.dashboard-content-preview .section-heading a{color:var(--cyan);font-size:10px;text-decoration:none}.dashboard-content-preview ul{gap:0;margin:18px 0 0;padding:0;list-style:none;display:grid}.dashboard-content-preview li{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 2px;display:grid}.dashboard-content-preview li>span{color:var(--cyan);background:color-mix(in srgb, var(--cyan) 8%, var(--panel-soft));border-radius:999px;padding:4px 7px;font-size:10px}.dashboard-content-preview li>strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.dashboard-content-preview li>time{color:var(--text-muted);font-size:10px}.content-feed-page{min-width:0}.content-primary-tabs{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.content-primary-tabs button{border:1px solid var(--border);min-height:40px;color:var(--text-muted);background:var(--panel-soft);padding:9px 13px;font-size:10px}.content-primary-tabs button[aria-selected=true]{border-color:var(--cyan);color:var(--cyan);background:color-mix(in srgb, var(--cyan) 9%, var(--panel-soft))}.content-filters{grid-template-columns:minmax(210px,1.6fr) repeat(4,minmax(110px,.7fr));gap:12px;padding:17px;display:grid}.content-filters label{align-content:end;gap:6px;min-width:0;display:grid}.content-filters label>span{color:var(--text-muted);font-size:10px;font-weight:800}.content-filters input,.content-filters select,.content-results-heading select{border:1px solid var(--border);width:100%;min-width:0;height:40px;color:var(--text-strong);background:var(--bg-input);border-radius:8px;outline:none;padding:0 10px;font-size:10px}.content-filters input:focus,.content-filters select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px color-mix(in srgb, var(--cyan) 8%, transparent)}.content-filters input:disabled{color:var(--text-disabled);background:var(--bg-control)}.content-search>div{grid-template-columns:minmax(0,1fr) auto;display:grid}.content-search input{border-radius:8px 0 0 8px}.content-search button{border-radius:0 8px 8px 0;min-height:40px;padding:8px 13px;font-size:10px}.content-results-heading{justify-content:space-between;align-items:center;gap:16px;margin:22px 2px 10px;display:flex}.content-results-heading p{color:var(--text-muted);margin:0;font-size:10px}.content-results-heading p strong{color:var(--text-strong)}.content-results-heading label{color:var(--text-muted);align-items:center;gap:8px;font-size:10px;display:flex}.content-results-heading select{width:70px;height:34px}.content-feed-list{gap:9px;display:grid}.content-feed-item{border:1px solid var(--border);background:linear-gradient(145deg, var(--panel), var(--panel-deep));border-radius:12px;padding:18px}.content-badges{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.content-badges span{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:4px 7px;font-size:10px;font-weight:800}.content-badges .content-kind.news{border-color:color-mix(in srgb, var(--cyan) 35%, var(--border));color:var(--cyan)}.content-badges .content-kind.disclosure{border-color:color-mix(in srgb, var(--amber) 38%, var(--border));color:var(--amber)}.content-badges .analysis-state.completed{border-color:color-mix(in srgb, var(--green) 38%, var(--border));color:var(--green)}.content-badges .analysis-state.available{border-color:color-mix(in srgb, var(--cyan) 32%, var(--border));color:var(--cyan)}.content-badges .official-source{border-color:color-mix(in srgb, var(--state-info) 38%, var(--border));color:var(--state-info)}.content-badges .rights-state.metadata_only{border-color:color-mix(in srgb, var(--amber) 38%, var(--border));color:var(--amber)}.content-badges .data-status-badge{display:inline-flex}.content-item-main{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.content-item-main h2{margin:0 0 7px;font-size:15px;line-height:1.55}.content-item-main h2 a{color:var(--text-strong);text-decoration:none}.content-item-main h2 a:hover{color:var(--cyan);text-decoration:underline}.content-item-main p,.content-source{color:var(--text-muted);margin:0;font-size:10px}.content-item-main p strong{color:var(--cyan)}.content-item-main time{color:var(--text-muted);white-space:nowrap;flex:none;font-size:10px}.content-source{margin-top:9px}.content-summary{border-left:2px solid var(--green);color:var(--text-muted);background:color-mix(in srgb, var(--green) 5%, var(--panel-soft));grid-template-columns:auto 1fr;gap:9px;margin:13px 0 0;padding:9px 11px;font-size:10px;line-height:1.6;display:grid}.content-summary span{color:var(--green);white-space:nowrap;font-size:10px;font-weight:900}.content-invalid-link{color:var(--amber);margin:9px 0 0;font-size:10px}.feed-state{border:1px dashed var(--border);background:var(--panel-deep);border-radius:12px;justify-items:start;gap:8px;margin-top:15px;padding:24px;display:grid}.feed-state strong{font-size:14px}.feed-state p{color:var(--text-muted);margin:0;font-size:11px}.feed-state.error{border-color:color-mix(in srgb, var(--red) 45%, var(--border))}.feed-state.offline{border-color:color-mix(in srgb, var(--amber) 45%, var(--border))}.feed-state button{margin-top:4px;font-size:10px}.feed-skeleton{gap:9px;margin-top:20px;display:grid}.feed-skeleton.compact{margin-top:12px}.feed-skeleton.compact span{height:54px}.feed-skeleton span{border:1px solid var(--border);background:linear-gradient(90deg, var(--panel-deep), var(--panel-soft), var(--panel-deep));background-size:200% 100%;border-radius:12px;height:126px;animation:1.4s linear infinite feed-shimmer}@keyframes feed-shimmer{to{background-position:-200% 0}}.feed-refresh-state{color:var(--cyan);background:color-mix(in srgb, var(--cyan) 7%, var(--panel-soft));border-radius:8px;margin:8px 0;padding:8px 11px;font-size:10px}.feed-refresh-state.error,.feed-error{color:var(--red)}.content-pagination{justify-content:center;align-items:center;gap:5px;margin:24px 0 5px;display:flex}.content-pagination>span{align-items:center;gap:5px;display:flex}.content-pagination i{color:var(--text-muted);padding:0 4px;font-style:normal}.content-pagination button{border:1px solid var(--border);min-width:40px;min-height:40px;color:var(--text-muted);background:var(--panel-soft);padding:8px 10px;font-size:10px}.content-pagination button[aria-current=page]{border-color:var(--cyan);color:var(--cyan)}.content-pagination button:disabled{opacity:.42}.route-state-page{place-content:center;justify-items:start;min-height:55vh;display:grid}.route-state-page p{max-width:580px;color:var(--text-muted)}.route-state-page a{color:var(--text-on-accent);background:var(--cyan);border-radius:9px;padding:11px 15px;font-size:11px;font-weight:850;text-decoration:none}.data-operations-card{padding:24px}.data-sync-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.data-sync-summary span{color:var(--text-muted);background:var(--panel-soft);border-radius:9px;gap:7px;padding:14px;font-size:10px;display:grid}.data-sync-summary strong{color:var(--cyan);font-size:16px}.data-operations-card ul{gap:6px;margin:18px 0 0;padding:0;list-style:none;display:grid}.data-operations-card li{border-top:1px solid var(--border);color:var(--text-muted);grid-template-columns:1fr 1fr 1fr;gap:12px;padding:12px 2px;font-size:10px;display:grid}.drawer-backdrop,.mobile-more-drawer{display:none}@media (width<=1180px){.shell-topbar{grid-template-columns:minmax(90px,auto) minmax(230px,1fr) auto;gap:12px}.shell-statuses .api-status b,.shell-statuses .realtime-status b{display:none}.content-filters{grid-template-columns:repeat(3,minmax(130px,1fr))}.content-search{grid-column:span 2}}@media (width<=900px){.workspace-frame,.workspace-frame.sidebar-collapsed{display:block}.desktop-sidebar{display:none}.shell-topbar{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;min-height:112px;padding:10px 14px}.mobile-brand{align-items:center;gap:7px;display:flex}.mobile-brand img{width:32px;height:32px;display:block}.mobile-brand strong{font-size:14px}.page-context{display:none}.shell-topbar .global-stock-search{grid-area:2/1/auto/-1;max-width:none;padding:0}.shell-statuses{grid-column:3}.compact-fx{border-right:0;padding-right:0}.shell-statuses .api-status,.shell-statuses .realtime-status{display:inline-flex}.route-content{width:min(100% - 28px,1320px);min-height:calc(100vh - 240px);padding:30px 0 calc(98px + env(safe-area-inset-bottom))}.shell-main-column>footer{width:min(100% - 28px,1320px);padding-bottom:calc(92px + env(safe-area-inset-bottom))}.mobile-bottom-nav{z-index:80;padding:6px 6px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg-shell) 96%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav .shell-nav-link,.mobile-bottom-nav>button{min-width:0;min-height:54px;color:var(--text-muted);background:0 0;border:0;border-radius:9px;align-content:center;place-items:center;gap:3px;display:grid;padding:5px!important}.mobile-bottom-nav .shell-nav-link>span,.mobile-bottom-nav>button>span{width:auto;color:inherit}.mobile-bottom-nav .shell-nav-link>b,.mobile-bottom-nav>button>b{max-width:100%;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.mobile-bottom-nav .shell-nav-link.active{color:var(--cyan);background:color-mix(in srgb, var(--cyan) 8%, var(--panel-soft))}.drawer-backdrop{z-index:89;background:#0000009e;border:0;border-radius:0;padding:0;display:block;position:fixed;inset:0}.mobile-more-drawer{z-index:90;max-height:min(78dvh,620px);padding:20px 18px calc(22px + env(safe-area-inset-bottom));border:1px solid var(--border);background:var(--bg-input);border-radius:20px 20px 0 0;gap:18px;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -24px 70px #00000073}.drawer-heading{justify-content:space-between;align-items:flex-start;display:flex}.drawer-heading small{color:var(--cyan);letter-spacing:.12em;font-size:10px;font-weight:900}.drawer-heading h2{margin-top:5px}.drawer-heading>button{width:44px;height:44px;color:var(--text-strong);background:var(--panel-soft);place-items:center;padding:0;display:grid}.mobile-more-drawer nav{gap:5px;display:grid}.mobile-more-drawer .shell-nav-link{min-height:48px}.drawer-account{border-top:1px solid var(--border);grid-template-columns:1fr auto;gap:8px;padding-top:16px;display:grid}.drawer-account>span,.drawer-account>strong{grid-column:1}.drawer-account>span{color:var(--cyan);font-size:10px}.drawer-account>strong{color:var(--text-muted);text-overflow:ellipsis;font-size:10px;overflow:hidden}.drawer-account .pwa-install-button,.drawer-account .shell-logout{grid-area:span 1/2}body.drawer-open{overflow:hidden}.stock-route-tabs{top:112px;overflow-x:auto}.stock-route-tabs a{flex:none}}@media (width<=600px){button{min-height:var(--control-height-mobile)}.shell-topbar{grid-template-columns:minmax(92px,1fr) auto}.shell-statuses{grid-column:2}.compact-fx em,.shell-statuses .api-status{display:none}.route-page-heading{flex-direction:column;align-items:flex-start}.route-page-heading>button{width:100%;min-height:44px}.content-filters{grid-template-columns:1fr 1fr;gap:9px;padding:13px}.content-search{grid-column:1/-1}.content-primary-tabs{grid-template-columns:repeat(3,1fr);display:grid}.content-primary-tabs button{min-width:0;padding:8px 5px}.content-item-main{flex-direction:column;gap:6px}.content-summary{grid-template-columns:1fr}.content-results-heading{align-items:flex-start}.content-pagination{justify-content:space-between}.content-pagination>span:not(:has(button[aria-current=page])){display:none}.dashboard-content-preview li{grid-template-columns:auto minmax(0,1fr)}.dashboard-content-preview li>time{display:none}.data-sync-summary,.data-operations-card li{grid-template-columns:1fr}.global-offline-banner{flex-wrap:wrap;justify-content:flex-start;align-items:flex-start}.global-offline-banner>span{flex:calc(100% - 34px)}.global-offline-banner button{min-height:44px;margin-left:30px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.news-item-row{gap:0;width:100%;display:grid}.news-item-row button{margin-bottom:0;transition:border-radius .2s,border-color .2s,background-color .2s}.news-item-row.selected button{background:color-mix(in srgb, var(--cyan) 12%, var(--panel-soft))!important;border-bottom-color:#0000!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.mobile-summary-wrapper{border:1px solid var(--border);background:var(--bg-input);border-top:none;border-bottom-right-radius:11px;border-bottom-left-radius:11px;margin-bottom:8px;animation:.25s cubic-bezier(.16,1,.3,1) forwards slideDownNews;overflow:hidden}.mobile-summary-wrapper .summary-result{gap:14px;padding:16px}.mobile-summary-wrapper .summary-empty{min-height:200px;padding:20px}.mobile-summary-wrapper .factor-grid{grid-template-columns:1fr;margin:12px 0}.mobile-summary-wrapper .summary-sentiment-header{padding:10px 12px}.mobile-summary-wrapper .summary-headline-quote{padding:10px 12px;font-size:14px}.mobile-summary-wrapper .summary-keypoints,.mobile-summary-wrapper .summary-evidence-section,.mobile-summary-wrapper .usage-strip{padding:10px}@keyframes slideDownNews{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.ai-news-layout{grid-template-columns:1fr!important}}
