@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";.index-overview>.overview-left,.index-overview>.overview-right{height:100%}.index-overview>.overview-left>.conclusion-panel,.index-overview>.overview-right>.side-panel{min-height:0}.index-etf-snapshot{grid-column:1 / -1;min-width:0}.index-etf-snapshot .etf-snapshot-block{padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:var(--shadow)}.index-etf-snapshot .etf-snapshot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 860px){.index-etf-snapshot{grid-column:1}.index-etf-snapshot .etf-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{color-scheme:light;--bg: #f4efe5;--bg-strong: #efe4d1;--panel: rgba(255, 250, 240, .88);--panel-strong: #fff9ef;--border: rgba(102, 90, 62, .16);--ink: #1f2937;--muted: #6d675d;--accent: #124c3a;--accent-soft: rgba(18, 76, 58, .12);--warning: #b45309;--positive: #15803d;--negative: #b91c1c;--bullish: #b91c1c;--bearish: #15803d;--shadow: 0 20px 45px rgba(107, 104, 95, .12);--radius: 20px;--font-sans: "IBM Plex Sans", "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", "Cascadia Mono", "Consolas", monospace;--control-font-size: 14px;--control-height: 40px;--segment-height: 36px;--chart-bg: #f6faff;--chart-border: rgba(63, 103, 158, .18)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);color:var(--ink);background:radial-gradient(circle at top left,rgba(18,76,58,.12),transparent 28%),radial-gradient(circle at top right,rgba(180,83,9,.1),transparent 24%),linear-gradient(180deg,#f8f4eb 0%,var(--bg) 42%,#efe7d8 100%)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;padding:28px}.topbar{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:20px}.topbar-brand{flex:1;min-width:0}.brand-mark,.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.eyebrow{color:var(--ink)}.topbar h1{margin:6px 0 0;font-size:clamp(26px,3vw,38px);line-height:1}.topbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.user-switcher,.profile-form input{min-height:42px;border:1px solid var(--border);background:#fffdf8f0;border-radius:12px;padding:0 14px}.segmented{display:inline-flex;gap:6px;padding:6px;border:1px solid var(--border);border-radius:999px;background:#fffbf4e6}.segmented button{min-height:var(--segment-height);border:0;border-radius:999px;padding:0 14px;background:transparent;color:var(--muted);font-size:var(--control-font-size);line-height:1;white-space:nowrap}.segmented button.active{background:var(--accent);color:#fff8ef}.auto-refresh-hint{display:inline-flex;align-items:center;font-size:12px;color:var(--muted, #8a8a8a);white-space:nowrap;-webkit-user-select:none;user-select:none}.settings-button{min-height:var(--control-height);border:1px solid var(--border);border-radius:12px;padding:0 16px;background:#fffbf4e6;color:var(--accent);font-size:var(--control-font-size);font-weight:600;white-space:nowrap;transition:background .15s,border-color .15s}.settings-button:hover{background:var(--accent-soft);border-color:#124c3a4d}.settings-button.active{background:var(--accent);color:#fff8ef;border-color:var(--accent)}.journal-page{max-width:1180px;margin:0 auto;display:grid;gap:18px}.journal-panel{padding:24px}.journal-header{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px}.journal-header h2{margin:4px 0 0;font-size:28px}.journal-layout,.qa-layout{display:grid;grid-template-columns:minmax(240px,30fr) minmax(0,70fr);gap:18px;align-items:start}.journal-folders,.journal-editor,.qa-form,.qa-answer{border:1px solid rgba(102,90,62,.12);border-radius:16px;background:#fffdf8b8}.journal-folders,.qa-form,.qa-answer{padding:18px}.journal-folders h3,.qa-sources h3{margin:0 0 12px;font-size:16px}.folder-list{display:grid;gap:6px;margin-bottom:16px}.folder-list button{min-height:38px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);text-align:left}.folder-list button.active{border-color:#124c3a3d;background:var(--accent-soft);color:var(--accent);font-weight:700}.compact-form,.record-form,.qa-form{display:grid;gap:12px}.compact-form input,.compact-form select,.record-form input,.record-form select,.record-form textarea,.qa-form input,.qa-form textarea{width:100%;min-height:42px;border:1px solid var(--border);border-radius:12px;background:#fffdf8f0;color:var(--ink);padding:10px 12px}.record-form textarea,.qa-form textarea{resize:vertical;line-height:1.6}.journal-editor{padding:18px;display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.record-stock-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.record-stock-tools .stock-picker{width:min(360px,100%)}.record-stock-tools .secondary-button{min-height:42px}.record-stock-badge{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700}.record-list{display:grid;gap:12px}.record-item{padding:16px;border:1px solid rgba(102,90,62,.12);border-radius:14px;background:var(--panel-strong)}.record-item h3{margin:0;font-size:17px}.record-item span{display:block;margin-top:4px;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:12px}.record-item p{margin:12px 0 0;color:var(--ink);line-height:1.7;white-space:pre-wrap}.tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tag-row b{border-radius:999px;background:#124c3a1a;color:var(--accent);padding:4px 10px;font-size:12px}.qa-answer{min-height:300px}.qa-answer-text{white-space:pre-wrap;line-height:1.8}.qa-sources{margin-top:20px;display:grid;gap:8px}.qa-sources a{color:var(--accent);text-decoration:none;line-height:1.5}.qa-chat-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;height:calc(100vh - 280px);min-height:480px}.qa-sidebar{display:flex;flex-direction:column;gap:12px;border:1px solid rgba(102,90,62,.12);border-radius:16px;background:#fffdf8b8;padding:14px;overflow:hidden}.qa-new-chat{width:100%;min-height:40px;font-size:14px}.qa-session-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1}.qa-session-item{padding:10px 12px;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:all .15s ease}.qa-session-item:hover{background:#124c3a0d}.qa-session-item.active{border-color:#124c3a3d;background:var(--accent-soft)}.qa-session-title{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.qa-session-meta{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);font-family:IBM Plex Mono,monospace}.qa-session-delete{margin-left:auto;border:none;background:none;color:var(--muted);cursor:pointer;font-size:12px;padding:0 4px;opacity:0;transition:opacity .15s}.qa-session-item:hover .qa-session-delete{opacity:1}.qa-session-delete:hover{color:#d44}.qa-chat-main{display:flex;flex-direction:column;border:1px solid rgba(102,90,62,.12);border-radius:16px;background:#fffdf880;overflow:hidden}.qa-chat-toolbar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid rgba(102,90,62,.1);background:#fffdf899;flex-wrap:wrap}.qa-ticker-input{width:200px;min-height:34px;border:1px solid var(--border);border-radius:8px;background:#ffffffe6;color:var(--ink);padding:6px 10px;font-size:13px;font-family:IBM Plex Mono,monospace}.stock-picker{position:relative;width:220px;max-width:100%}.stock-picker .qa-ticker-input{width:100%}.stock-picker-menu{position:absolute;left:0;bottom:calc(100% + 6px);z-index:30;width:min(360px,80vw);max-height:280px;overflow-y:auto;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--panel-strong);box-shadow:0 14px 36px #241f162e}.record-stock-tools .stock-picker-menu{top:calc(100% + 6px);bottom:auto}.stock-picker-menu button{width:100%;display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border:0;border-radius:8px;color:var(--ink);background:transparent;cursor:pointer;text-align:left}.stock-picker-menu button:hover{background:var(--accent-soft)}.stock-picker-menu span,.stock-picker-empty{color:var(--muted);font-size:12px}.stock-picker-empty{padding:10px}.qa-clear-btn{min-height:34px;font-size:13px;padding:4px 12px}.qa-context-badge{margin-left:auto;font-size:11px;color:var(--accent);background:var(--accent-soft);padding:4px 10px;border-radius:999px;font-weight:600}.qa-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:18px}.qa-msg{display:flex;gap:12px;max-width:88%}.qa-msg.user{align-self:flex-end;flex-direction:row-reverse}.qa-msg-avatar{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.qa-msg.user .qa-msg-avatar{background:var(--accent);color:#fff}.qa-msg.assistant .qa-msg-avatar{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.qa-msg-body{display:flex;flex-direction:column;gap:4px;min-width:0}.qa-msg.user .qa-msg-body{align-items:flex-end}.qa-msg-content{padding:12px 16px;border-radius:16px;line-height:1.75;font-size:14px;word-break:break-word}.qa-msg.user .qa-msg-content{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.qa-msg.assistant .qa-msg-content{background:var(--panel-strong);color:var(--ink);border:1px solid rgba(102,90,62,.1);border-bottom-left-radius:4px}.qa-msg-time{font-size:11px;color:var(--muted);padding:0 4px}.qa-markdown p{margin:0 0 8px}.qa-markdown p:last-child{margin-bottom:0}.qa-markdown h3,.qa-markdown h4,.qa-markdown h5,.qa-markdown h6{margin:12px 0 6px;font-size:15px;font-weight:700}.qa-markdown ul,.qa-markdown ol{margin:6px 0;padding-left:20px}.qa-markdown li{margin-bottom:4px}.qa-markdown strong{font-weight:700}.qa-markdown code{background:#665a3e1a;padding:1px 5px;border-radius:4px;font-size:13px;font-family:IBM Plex Mono,monospace}.qa-code-block{background:#1e1e2e;color:#cdd6f4;padding:12px 14px;border-radius:8px;overflow-x:auto;margin:8px 0;font-size:13px}.qa-md-spacer{height:6px}.qa-typing{display:flex;gap:4px;align-items:center;padding:14px 16px}.qa-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);animation:qa-bounce 1.4s infinite ease-in-out both}.qa-dot:nth-child(1){animation-delay:-.32s}.qa-dot:nth-child(2){animation-delay:-.16s}@keyframes qa-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.qa-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:40px}.qa-welcome-icon{font-size:48px}.qa-welcome h3{margin:0;font-size:22px}.qa-welcome p{margin:0;color:var(--muted);font-size:14px}.qa-suggestions{display:flex;flex-direction:column;gap:8px;margin-top:16px;width:100%;max-width:360px}.qa-suggestions button{padding:12px 16px;border:1px solid rgba(102,90,62,.15);border-radius:12px;background:var(--panel-strong);color:var(--ink);font-size:13px;cursor:pointer;text-align:left;transition:all .15s ease}.qa-suggestions button:hover{border-color:var(--accent);background:var(--accent-soft)}.qa-sources-inline{padding:8px 16px;border-top:1px solid rgba(102,90,62,.08);font-size:12px;color:var(--muted)}.qa-sources-inline summary{cursor:pointer;-webkit-user-select:none;user-select:none}.qa-source-links{display:flex;gap:8px;flex-wrap:wrap;padding-top:8px}.qa-sources-inline a{color:var(--accent);text-decoration:none}.qa-sources-inline a:hover{text-decoration:underline}.qa-input-area{display:flex;flex-direction:column;gap:8px;margin:14px 16px;padding:10px 12px;border-top:1px solid rgba(102,90,62,.1);border:1px solid var(--border);border-radius:16px;background:#ffffffe6;box-shadow:0 6px 20px #3730230f}.qa-input-footer,.qa-input-tools{display:flex;align-items:center;gap:8px}.qa-input-footer{justify-content:space-between}.qa-web-search-btn{min-height:34px;white-space:nowrap}.qa-web-search-btn.active{color:#fff;background:var(--accent)}.qa-input{flex:1;min-height:54px;max-height:120px;border:0;border-radius:0;background:transparent;color:var(--ink);padding:10px 14px;font-size:14px;line-height:1.6;resize:none;font-family:inherit}.qa-input:focus{outline:none}.qa-send-btn{min-height:42px;padding:0 20px;font-size:14px;white-space:nowrap}.anomaly-ticker{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;margin-bottom:18px;padding:13px 16px;border:1px solid rgba(217,119,6,.3);border-radius:16px;background:linear-gradient(110deg,#fff7e5f5,#fffdf8f0);box-shadow:var(--shadow)}.anomaly-heading{display:flex;gap:12px;align-items:center}.anomaly-heading>div{display:grid;gap:2px}.anomaly-heading strong{font-size:17px;white-space:nowrap}.anomaly-heading>span{color:var(--muted);font-size:12px;white-space:nowrap}.anomaly-content{display:grid;grid-template-columns:minmax(140px,1.3fr) repeat(6,minmax(96px,1fr));gap:12px;align-items:center;width:100%;min-width:0;padding:0 0 0 24px;border:0;background:transparent;color:var(--ink);text-align:left}.anomaly-content>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.anomaly-name{display:grid;font-size:18px;font-weight:800;line-height:1.15}.anomaly-name small{margin-top:3px;color:var(--muted);font-size:11px;font-weight:400}.anomaly-content .positive{color:var(--bullish);font-weight:700}.anomaly-content .negative{color:var(--bearish);font-weight:700}.anomaly-content .market-up{color:var(--bullish);font-weight:700}.anomaly-content .market-down{color:var(--bearish);font-weight:700}.anomaly-content .market-divergence{color:var(--warning);font-weight:700}.anomaly-controls{display:flex;gap:5px}.anomaly-controls button{min-width:34px;min-height:34px;padding:0 9px;border:1px solid var(--border);border-radius:9px;background:#ffffffc2;color:var(--ink);font-size:13px}.anomaly-empty{grid-template-columns:auto 1fr}.anomaly-empty>div{display:grid}.anomaly-empty p{margin:0;color:var(--muted)}.workspace-grid{display:grid;grid-template-columns:minmax(340px,36fr) minmax(0,64fr);gap:18px;align-items:start}.sidebar,.panel,.hero-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar{padding:18px;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto}.sidebar-header,.panel-header{display:flex;justify-content:space-between;gap:12px;align-items:start}.sidebar-header h2,.panel-header h3{margin:4px 0 0;font-size:24px}.secondary-button,.primary-button{min-height:var(--control-height);border-radius:12px;border:0;padding:0 14px;font-size:var(--control-font-size);font-weight:600;line-height:1;white-space:nowrap}.primary-button{background:var(--accent);color:#fff8ef}.primary-button:disabled{opacity:.6;cursor:default}.secondary-button{background:var(--accent-soft);color:var(--accent)}.secondary-button:disabled{opacity:.6;cursor:default}.mode-chip{margin:14px 0 18px;display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#124c3a14;color:var(--accent)}.bulk-watchlist-import{margin:10px 0 14px;padding:10px;border:1px solid var(--border);border-radius:12px;background:#ffffff73}.bulk-watchlist-import summary{cursor:pointer;color:var(--accent);font-weight:700}.sidebar-header-actions,.new-category-fields,.stock-edit-actions{display:flex;gap:6px}.sidebar-header-actions .secondary-button{padding:0 10px}.sidebar-header-actions .active{background:var(--accent);color:#fff}.bulk-watchlist-import input,.bulk-watchlist-import select{width:100%;min-height:38px;margin-top:8px;padding:0 9px;border:1px solid var(--border);border-radius:9px;background:var(--panel-strong)}.single-stock-search{position:relative}.single-stock-results{position:absolute;z-index:20;left:0;right:0;max-height:220px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--panel-strong);box-shadow:var(--shadow)}.bulk-watchlist-import .single-stock-results button{display:flex;justify-content:space-between;margin:0;padding:9px 10px;border:0;background:transparent;text-align:left}.single-stock-results button:hover{background:var(--accent-soft)}.single-stock-results span{color:var(--muted);font-family:var(--font-mono)}.new-category-fields>*{min-width:0}.bulk-import-divider{margin-top:12px;color:var(--muted);font-size:12px;text-align:center}.bulk-watchlist-import textarea{width:100%;margin-top:10px;padding:9px 10px;resize:vertical;border:1px solid var(--border);border-radius:9px;background:var(--paper);font:inherit}.bulk-watchlist-import button{width:100%;margin-top:8px}.bulk-import-hint,.bulk-import-message{margin-top:6px;font-size:12px}.bulk-import-hint{color:var(--muted)}.bulk-import-message.error{color:var(--negative)}.bulk-import-message.success{color:var(--positive)}.sector-list,.stock-list{display:grid;gap:12px}.sector-group{padding-top:12px;border-top:1px solid rgba(102,90,62,.12)}.sector-title,.sub-sector-title{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--muted)}.sector-collapse-btn{padding:0;border:0;background:transparent;color:inherit;font-weight:600}.sub-sector-title{margin-bottom:8px;font-size:14px}.sub-sector-actions{display:flex;align-items:center;gap:6px}.sector-sync-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:2px 4px;border-radius:4px;color:var(--text-secondary, #888);transition:all .15s}.sector-sync-btn:hover:not(:disabled){background:var(--bg-hover, rgba(255, 255, 255, .1));color:var(--accent, #4fc3f7)}.sector-sync-btn:disabled{cursor:wait;opacity:.6}.stock-card{width:100%;text-align:left;border:1px solid transparent;border-radius:16px;padding:14px;background:#fffbf4b8;transition:border-color .15s,background .15s,box-shadow .15s}.stock-card:hover{border-color:#665a3e33;background:#fffbf4eb;box-shadow:0 4px 14px #6b685f14}.stock-card.active{border-color:#124c3a52;background:#124c3a14}.stock-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.stock-card-id{display:flex;flex-direction:column;gap:2px;min-width:0}.stock-card-name{font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-card-code{font-size:12px;color:var(--muted);font-family:IBM Plex Mono,monospace}.stock-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.stock-tag-mini{font-size:11px;padding:2px 8px;border-radius:6px;background:#665a3e14;color:var(--muted);white-space:nowrap}.stock-tag-mini.positive{background:#b91c1c1a;color:var(--bullish)}.stock-tag-mini.risk,.stock-tag-mini.negative{background:#15803d1a;color:var(--bearish)}.stock-tag-mini.neutral{background:#b453091a;color:var(--warning)}.stock-card-summary{margin-top:8px;font-size:13px;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stock-edit-actions{align-items:center;flex-wrap:wrap;margin-top:10px;padding-top:8px;border-top:1px solid var(--border)}.stock-edit-actions button{min-width:30px;min-height:30px;border:1px solid var(--border);border-radius:8px;background:var(--panel-strong)}.stock-edit-actions select{flex:1;min-width:120px;min-height:30px;border:1px solid var(--border);border-radius:8px;background:var(--panel-strong)}.stock-edit-actions .delete{color:var(--negative)}.stock-card[draggable=true]{cursor:grab}.status-tag{display:inline-flex;align-items:center;font-size:12px;font-weight:600;padding:3px 10px;border-radius:6px;white-space:nowrap}.tag-positive{background:#b91c1c26;color:var(--bullish)}.tag-risk{background:#15803d26;color:var(--bearish)}.tag-neutral{background:#b4530926;color:var(--warning)}.tag-pending{background:#665a3e1f;color:var(--muted)}.sync-time-badge{font-size:11px;color:var(--muted);font-family:IBM Plex Mono,monospace;white-space:nowrap;padding:2px 6px;border-radius:6px;background:#665a3e0f;flex-shrink:0}.sync-time-badge.pending{color:var(--muted);opacity:.6;font-style:italic}.main-column{display:grid;gap:18px;min-width:0}.hero-panel,.panel{padding:18px}.hero-panel{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.hero-panel h1{margin:6px 0 10px;font-size:clamp(28px,3vw,38px)}.hero-meta{display:flex;flex-wrap:wrap;gap:10px 16px;color:var(--muted)}.hero-actions{display:grid;gap:12px;justify-items:end}.hero-price{font-size:34px;font-weight:700}.hero-price.positive{color:var(--bullish)}.hero-price.risk,.hero-price.negative{color:var(--bearish)}.panel{display:grid;gap:16px}.workspace-main{display:grid;gap:22px;min-width:0}.overview-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;align-items:stretch}.overview-left,.overview-right{display:flex;flex-direction:column;gap:16px;min-width:0;min-height:0}.overview-left>.conclusion-panel{flex:1}.index-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.intraday-overview{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.intraday-overview .conclusion-panel{padding:20px}.intraday-overview .conclusion-body{gap:16px;justify-content:space-between}.intraday-overview .overview-right>.side-panel{flex:0 0 auto}.intraday-overview .overview-right>.side-panel:last-child{flex:1}.compact-period-panel{padding:10px 14px;gap:4px}.compact-period-panel .side-metrics{gap:3px}.compact-period-panel .side-group{gap:1px}.compact-period-panel .side-group:not(:last-child){padding-bottom:3px}.compact-period-panel .side-metric-row{line-height:1.3}.conclusion-panel{display:flex;flex-direction:column;gap:10px;padding:14px}.trend-badge{font-size:12px;font-weight:600;padding:3px 10px;border-radius:8px;white-space:nowrap}.trend-badge.positive{background:#b91c1c26;color:var(--bullish)}.trend-badge.risk,.trend-badge.negative{background:#15803d26;color:var(--bearish)}.trend-badge.neutral{background:#b4530926;color:var(--warning)}.conclusion-body{display:flex;flex-direction:column;gap:12px;flex:1}.conclusion-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.conclusion-block{display:grid;gap:4px;padding:8px 10px;border:1px solid rgba(102,90,62,.1);border-radius:10px;background:#fffbf480}.conclusion-block-title{font-size:14px;font-weight:700;letter-spacing:.02em;line-height:1.4;color:var(--ink)}.conclusion-value{font-size:16px;font-family:var(--font-sans);font-weight:700;line-height:1.4}.conclusion-value.positive{color:var(--positive)}.conclusion-value.risk,.conclusion-value.negative{color:var(--negative)}.conclusion-value.neutral{color:var(--warning)}.conclusion-value.tone-positive{color:var(--bullish)}.conclusion-value.tone-risk,.conclusion-value.tone-negative{color:var(--bearish)}.conclusion-desc{font-size:13px;color:var(--muted);line-height:1.5;margin-top:2px}.conclusion-text-sm{font-size:15px;color:var(--muted);line-height:1.7}.conclusion-details{display:block}.conclusion-details-summary{cursor:pointer;-webkit-user-select:none;user-select:none}.conclusion-details[open] .conclusion-details-summary{margin-bottom:8px}.extended-levels{display:flex;flex-wrap:wrap;gap:10px;font-size:15px}.extended-column{display:grid;gap:3px;min-width:100px}.extended-label{display:block;font-size:15px;font-weight:700;letter-spacing:.02em;color:var(--ink);margin-top:4px}.extended-label:first-child{margin-top:0}.extended-values{display:flex;flex-wrap:wrap;gap:6px}.extended-value{font-size:15px;font-family:var(--font-sans);color:var(--ink)}.extended-value strong{font-weight:700}.extended-range{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.extended-range span{font-size:15px;color:var(--ink)}.extended-range strong{font-family:var(--font-sans);font-size:15px}.advice-text{margin:0;font-size:15px;line-height:1.7;color:var(--ink)}.advice-text-sm{margin:0;font-size:15px;line-height:1.7;color:var(--muted)}.etf-snapshot-block{gap:8px}.etf-snapshot-head{display:grid;gap:2px}.etf-snapshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.etf-snapshot-item{display:grid;gap:2px;padding:8px 10px;border-radius:8px;background:#0f766e0f}.etf-snapshot-item span{font-size:12px;color:var(--muted)}.etf-snapshot-item strong{font-size:14px;line-height:1.4;color:var(--ink)}.overview-right{align-items:stretch}.overview-right>.side-panel{flex:1}.overview-right>.opportunity-risk-panel{flex:0 0 auto}.side-panel{padding:14px 16px;display:flex;flex-direction:column;gap:8px}.side-panel .panel-header{margin-bottom:2px}.side-panel .panel-header h3{font-size:24px}.side-metrics{display:grid;gap:6px}.side-group{display:grid;gap:3px}.side-group:not(:last-child){padding-bottom:6px;border-bottom:1px solid rgba(102,90,62,.08)}.side-group-title{font-size:14px;font-weight:700;line-height:1.4;letter-spacing:.02em;color:var(--ink)}.side-group-title.positive,.side-group-title.negative,.side-group-title.risk,.side-group-title.neutral,.side-group-title.muted{color:var(--ink)}.side-group-items{display:grid;gap:2px}.side-metric-row{display:flex;justify-content:space-between;gap:8px;align-items:baseline;font-size:13px;line-height:1.45}.side-metric-row span{color:var(--muted)}.side-metric-row strong{font-family:var(--font-sans);font-size:13px;font-weight:700;text-align:right}.side-metric-row strong.positive{color:var(--positive)}.side-metric-row strong.risk,.side-metric-row strong.negative{color:var(--negative)}.side-metric-row strong.neutral,.side-metric-row strong.muted{color:var(--muted)}.chart-panel{gap:12px;margin-top:10px}.toolbar{display:grid;gap:8px;justify-items:end}.chart-meta{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted)}.chart-history-status{display:inline-flex;align-items:center;gap:8px}.chart-history-status button{border:1px solid var(--line);border-radius:999px;padding:3px 9px;background:var(--paper);color:var(--ink);cursor:pointer}.chart-history-status em{color:var(--muted);font-style:normal}.chart-history-error{color:var(--negative)}.chart-click-hint{color:var(--muted);font-size:12px}.candle-inspector{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding:10px 14px;border-radius:12px;background:#fffaf0eb;border:1px solid rgba(102,90,62,.14);font:12px IBM Plex Mono,monospace}.candle-inspector span{color:var(--muted)}.candle-inspector b{color:var(--ink)}.candle-inspector b.positive{color:var(--positive)}.candle-inspector b.risk{color:var(--negative)}.candle-inspector button{margin-left:auto;border:0;background:transparent;color:var(--muted);cursor:pointer}.canvas-stack{display:grid;gap:18px;overscroll-behavior:contain}.market-regime-card{margin:-2px 0 18px;padding:16px;border:1px solid rgba(148,163,184,.35);border-radius:16px;background:linear-gradient(135deg,#fffffff5,#f8fafcf0);box-shadow:var(--shadow)}.market-regime-card.bull{border-color:#dc262640}.market-regime-card.bear{border-color:#16a34a40}.market-regime-summary{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px}.market-regime-summary>div:first-child{display:grid;gap:3px}.market-regime-summary strong{font-size:18px}.market-regime-summary small,.market-regime-card footer{color:var(--muted)}.market-regime-score{display:grid;grid-template-columns:auto auto;align-items:baseline;text-align:right}.market-regime-score>span{font-size:32px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums}.market-regime-score>small{margin-left:3px}.market-regime-score>b{grid-column:1 / -1;margin-top:3px;color:var(--accent)}.market-regime-components{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.market-regime-components article{min-width:0;padding:11px;border:1px solid var(--border);border-radius:12px;background:#ffffffad}.market-regime-components header{display:flex;justify-content:space-between;gap:8px}.market-regime-components header span{color:var(--muted);font-size:11px;white-space:nowrap}.regime-component-value{display:flex;align-items:baseline;gap:8px;margin-top:8px}.regime-component-value b{font-size:22px;font-variant-numeric:tabular-nums}.regime-component-value span{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.regime-meter{height:5px;margin-top:7px;overflow:hidden;border-radius:999px;background:#e2e8f0}.regime-meter i{display:block;height:100%;border-radius:inherit;background:#d97706}.market-regime-components article.bull .regime-meter i{background:#dc2626}.market-regime-components article.bear .regime-meter i{background:#16a34a}.market-regime-components p{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.market-regime-card footer{margin-top:11px;font-size:11px}@media (max-width: 1100px){.market-regime-components{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 680px){.market-regime-components{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.market-regime-components article{min-width:225px;scroll-snap-align:start}.market-regime-summary{align-items:flex-start}.market-regime-score>span{font-size:27px}}.stock-card-market-line{color:var(--text);font-size:15px;line-height:1.55}.stock-card-market-line strong,.hero-market-line strong,.stock-card-market-signal strong,.hero-market-signal strong{font-weight:700}.stock-card-market-signal{margin-top:3px;color:var(--text);font-size:15px;line-height:1.55}.technical-chart-block{display:grid;gap:10px}.technical-chart-header h4{margin:0;color:var(--ink);font-size:17px}.chart-indicator-switch{justify-self:start}.canvas-kline,.canvas-volume,.canvas-sub,.canvas-etf-share,.canvas-fund-flow{width:100%;border-radius:18px;border:1px solid var(--chart-border);background:var(--chart-bg)}.canvas-kline{height:360px;cursor:grab;touch-action:none}.canvas-kline:active{cursor:grabbing}.chart-nav{display:flex;justify-content:center;gap:14px;margin:-2px 0}.chart-nav button{width:42px;height:42px;padding:0;border:1px solid rgba(102,90,62,.14);border-radius:50%;background:#665a3e14;color:var(--ink);font-size:27px;line-height:1}.chart-nav button:hover{background:#124c3a1f}.chart-nav-hint{margin-top:-6px;text-align:center;color:var(--muted);font-size:12px;line-height:1.4}.canvas-volume,.canvas-sub{height:188px}.kline-overlay-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;min-height:34px;padding:4px 10px;color:#111827;font-family:IBM Plex Mono,monospace;font-size:16px}.kline-overlay-controls label{display:inline-flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap}.kline-overlay-controls input{width:16px;height:16px;margin:0;accent-color:currentColor}.ma-toggle-ma5{color:#d97706}.ma-toggle-ma10{color:#0f766e}.ma-toggle-ma20{color:#1d4ed8}.ma-toggle-ma60{color:#7c3aed}.ma-toggle-ma100{color:#be123c}.ma-toggle-ma250{color:#0891b2}.bbi-toggle{color:#9333ea}.canvas-etf-share,.canvas-fund-flow{height:216px}.canvas-volume,.canvas-sub{cursor:grab;touch-action:none}.canvas-volume:active,.canvas-sub:active{cursor:grabbing}.etf-share-panel{display:grid;gap:10px}.etf-share-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-end}.etf-share-header h4{margin:0;font-size:17px;color:var(--ink)}.etf-share-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;color:var(--muted);font-size:12px}.etf-share-change-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.etf-share-change-item{min-width:0;padding:9px 10px;border:1px solid rgba(102,90,62,.12);border-radius:12px;background:#fffaf0c7;text-align:center}.etf-share-change-item span{display:block;color:var(--muted);font-size:11px;line-height:1.2}.etf-share-change-item strong{display:block;margin-top:4px;color:var(--ink);font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.15;white-space:nowrap}.etf-share-change-item.positive strong{color:#c04f32}.etf-share-change-item.negative strong{color:#187255}.etf-share-change-item.neutral strong{color:var(--muted)}.app-page-nav{display:inline-flex;gap:6px;margin:-4px 0 20px;padding:5px;border:1px solid var(--border);border-radius:14px;background:#fffbf4c2}.app-page-nav button{min-height:38px;border:0;border-radius:10px;padding:0 16px;background:transparent;color:var(--muted);font-weight:700}.app-page-nav button.active{background:var(--accent);color:#fff}.market-dashboard-page{display:grid;gap:10px;width:min(1600px,100%);margin:0 auto;font-size:13px}.market-page-header,.market-hero-card,.market-dashboard-panel,.market-data-contract{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.market-page-header{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 18px;background:linear-gradient(135deg,#fff9eff5,#e7f1ebeb)}.market-page-header h1{margin:3px 0 4px;font-size:clamp(21px,2.5vw,30px);line-height:1.1}.market-page-header p{max-width:720px;margin:0;color:var(--muted);font-size:13px}.market-page-meta{display:grid;min-width:150px;text-align:right}.market-page-meta b{color:var(--accent);font-size:15px}.market-page-meta span{margin-top:2px;font-family:var(--font-mono)}.market-page-meta small{color:var(--muted)}.market-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.market-data-health{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--border);border-left:4px solid #64748b;border-radius:12px;background:var(--panel)}.market-data-health.healthy{border-left-color:#0f766e}.market-data-health.degraded{border-left-color:var(--warning)}.market-data-health.critical{border-left-color:#b91c1c}.market-data-health>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.market-data-health>header span{display:grid;gap:2px}.market-data-health>header>b{font:700 14px var(--font-mono)}.market-health-checks{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.market-health-checks button{display:grid;grid-template-columns:7px minmax(0,1fr);gap:6px;min-width:0;padding:6px;border:1px solid var(--border);border-radius:7px;background:#ffffff4d;color:inherit;text-align:left}.market-health-checks button.active{border-color:#124c3a6b;background:var(--accent-soft)}.market-health-checks i{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#64748b}.market-health-checks .healthy i{background:#0f766e}.market-health-checks .warning i,.market-health-checks .warming i{background:var(--warning)}.market-health-checks .critical i{background:#b91c1c}.market-health-checks button>span{display:grid;min-width:0}.market-health-checks small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.market-health-detail{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.8fr;gap:5px}.market-health-detail>div{display:grid;gap:2px;min-width:0;padding:6px 8px;border-radius:7px;background:#64748b12}.market-health-detail span{color:var(--muted);font-size:9px}.market-health-detail strong{overflow-wrap:anywhere;font-size:10px;line-height:1.35}.market-health-detail .market-health-action{background:#124c3a12}.market-analysis-column{min-width:0;padding:12px;border:1px solid var(--border);border-radius:16px;background:#fffbf494}.market-column-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;padding:0 2px 9px;border-bottom:1px solid var(--border)}.market-column-heading h2{margin:2px 0 0;font-size:18px}.market-column-heading small{color:var(--muted)}.sector-taxonomy-toggle{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.sector-taxonomy-toggle button{border:0;border-radius:6px;padding:5px 12px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.sector-taxonomy-toggle button.active{background:var(--panel-strong);color:var(--ink);box-shadow:0 1px 4px #0f172a14}.market-commentary{border-left:3px solid var(--border)}.market-commentary.bullish{border-left-color:var(--bullish)}.market-commentary.bearish{border-left-color:var(--bearish)}.market-commentary-lead strong{font-size:16px}.market-commentary-lead p{margin:6px 0 0;color:var(--muted);line-height:1.65;font-size:13px}.market-commentary-sectors{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.market-commentary-sectors>span{display:flex;flex-wrap:wrap;gap:5px 8px;padding:9px;border-radius:8px;background:var(--panel);font-size:12px}.market-commentary-sectors b{width:100%;color:var(--muted)}.market-commentary-sectors em,.market-commentary-sectors i{font-style:normal}.market-commentary-risks{display:grid;gap:6px;margin-top:10px}.market-commentary-risks article{display:grid;grid-template-columns:96px 1fr;gap:8px;padding:8px 10px;border-radius:7px;background:color-mix(in srgb,var(--bearish) 7%,var(--panel));font-size:12px}.market-commentary-risks article.high b{color:var(--bearish)}.market-commentary-clear,.market-commentary-disclosure{display:block;margin:10px 0 0;color:var(--muted);font-size:11px}.market-dashboard-stack{display:grid;gap:10px}.market-hero-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px}.market-hero-copy h2{margin:3px 0 5px;font-size:18px;line-height:1.25}.market-hero-copy>p{margin:0;color:var(--muted);font-size:12px}.market-disclosure{display:grid;gap:3px;margin-top:8px;padding:7px 9px;border-left:3px solid var(--warning);background:#b4530912;font-size:11px}.market-disclosure span{color:var(--muted)}.temperature-gauge{--gauge: #64748b;display:grid;place-items:center;width:96px;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--gauge) calc(var(--temperature) * 1%),rgba(102,90,62,.12) 0);position:relative}.temperature-gauge:before{content:"";position:absolute;top:9px;right:9px;bottom:9px;left:9px;border-radius:50%;background:var(--panel-strong)}.temperature-gauge>*{position:relative;z-index:1}.temperature-gauge>div{display:flex;align-items:baseline}.temperature-gauge strong{font:700 22px/1 var(--font-mono)}.temperature-gauge span,.temperature-gauge>b{color:var(--muted)}.temperature-gauge>b{margin-top:-23px;font-size:11px}.temperature-gauge.bullish{--gauge: var(--bullish)}.temperature-gauge.bearish{--gauge: var(--bearish)}.market-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.market-metric-card{display:grid;min-width:0;min-height:86px;padding:10px;border:1px solid var(--border);border-top:3px solid #94a3b8;border-radius:10px;background:var(--panel)}.market-metric-card>span{color:var(--muted);font-size:11px}.market-metric-card strong{align-self:center;overflow:hidden;font:700 17px/1.1 var(--font-mono);text-overflow:ellipsis}.market-metric-card small{align-self:end;color:var(--muted)}.market-metric-card.bullish{border-top-color:var(--bullish)}.market-metric-card.bearish{border-top-color:var(--bearish)}.market-dashboard-panel{padding:12px;border-radius:12px;box-shadow:none}.market-section-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin-bottom:9px}.market-section-heading h3{margin:2px 0 0;font-size:15px}.market-section-heading>small{color:var(--muted)}.index-pulse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.index-pulse-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:9px;border:1px solid var(--border);border-radius:9px;background:#ffffff61}.index-pulse-grid article>div{display:grid}.index-pulse-grid article>div small,.index-pulse-grid article>small{color:var(--muted)}.index-pulse-grid article>b{grid-row:span 2;align-self:center;font:700 15px/1 var(--font-mono)}.index-pulse-grid article>span{font-family:var(--font-mono)}.regime-driver-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.regime-driver-grid article{padding:9px;border:1px solid var(--border);border-radius:9px;background:#ffffff61}.regime-driver-grid header,.regime-driver-grid article>div:first-of-type{display:flex;justify-content:space-between;gap:8px}.regime-driver-grid header span,.regime-driver-grid small,.regime-driver-grid p{color:var(--muted)}.regime-driver-grid article>div b{font:700 17px/1 var(--font-mono)}.regime-driver-grid p{margin:6px 0 0;font-size:10px;line-height:1.4}.market-attribution-headline{margin:-2px 0 8px;color:var(--muted);line-height:1.5}.market-attribution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.market-attribution-group{display:grid;gap:6px;padding:8px;border:1px solid var(--border);border-top:2px solid #94a3b8;border-radius:8px;background:#ffffff57;color:inherit}.market-attribution-group.bullish{border-top-color:var(--bullish)}.market-attribution-group.bearish{border-top-color:var(--bearish)}.market-attribution-group>header{display:flex;justify-content:space-between;gap:8px}.market-attribution-group header small{color:var(--muted)}.market-attribution-sectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.market-attribution-sectors>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 6px;padding:5px;border-radius:6px;background:#64748b12;color:var(--text)}.market-attribution-sectors b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-attribution-sectors em{font-style:normal}.market-attribution-sectors small{grid-column:1 / -1;color:var(--muted)}.market-attribution-stocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.market-attribution-stocks button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 5px;border:0;border-radius:6px;padding:5px;background:#64748b12;color:inherit;text-align:left}.market-attribution-stocks button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-attribution-stocks button small{grid-column:1 / -1;color:var(--muted)}.market-attribution-signals{display:grid;gap:4px;margin-top:7px}.market-attribution-signals span{display:flex;gap:6px;padding:5px 7px;border-radius:6px;background:#64748b12;color:var(--muted)}.market-attribution-signals .warning{background:#b4530914}.market-attribution-disclosure{display:block;margin-top:6px;color:var(--muted);line-height:1.4}.yesterday-limit-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.yesterday-limit-metrics article{display:grid;gap:2px;padding:7px;border:1px solid var(--border);border-radius:8px;background:#ffffff57}.yesterday-limit-metrics article span,.yesterday-limit-metrics article small{color:var(--muted)}.yesterday-limit-metrics article strong{font:700 17px var(--font-mono)}.yesterday-limit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:7px}.yesterday-limit-list button{display:flex;justify-content:space-between;gap:7px;border:0;border-radius:7px;padding:6px 7px;background:#64748b12;color:inherit;text-align:left}.yesterday-limit-list button>span{display:grid;gap:1px;min-width:0}.yesterday-limit-list button>span:last-child{text-align:right}.yesterday-limit-list b,.yesterday-limit-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yesterday-limit-list small{color:var(--muted)}.diagnosis-meter{height:6px;margin-top:10px;overflow:hidden;border-radius:999px;background:#64748b29}.diagnosis-meter i{display:block;height:100%;border-radius:inherit;background:#64748b}.bullish .diagnosis-meter i,.diagnosis-meter .bullish{background:var(--bullish)}.bearish .diagnosis-meter i,.diagnosis-meter .bearish{background:var(--bearish)}.sector-diagnosis-layout{display:grid;grid-template-columns:1fr;gap:10px;align-items:start}.sector-ranking-panel{position:static}.sector-filter{display:flex;gap:5px;margin-bottom:8px;overflow-x:auto}.sector-filter button{min-height:27px;border:1px solid var(--border);border-radius:999px;padding:0 9px;background:transparent;color:var(--muted);font-size:11px;white-space:nowrap}.sector-filter button.active{background:var(--accent);color:#fff}.sector-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;margin-bottom:8px;color:var(--muted);font-size:10px}.sector-search input{min-width:0;height:29px;border:1px solid var(--border);border-radius:7px;padding:0 9px;background:#ffffff94;color:var(--text);font:inherit}.sector-search input:focus{outline:2px solid rgba(18,76,58,.16);border-color:#124c3a6b}.sector-ranking-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:min(72vh,760px);overflow-y:auto;padding-right:3px}.sector-search-empty{grid-column:1 / -1;margin:12px 0;color:var(--muted);text-align:center}.sector-ranking-list>button{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:7px;align-items:center;width:100%;border:1px solid transparent;border-radius:8px;padding:7px;background:#ffffff57;color:inherit;text-align:left}.sector-ranking-list>button:hover,.sector-ranking-list>button.active{border-color:#124c3a52;background:var(--accent-soft)}.sector-rank{display:grid;place-items:center;width:22px;aspect-ratio:1;border-radius:50%;background:#124c3a1a;color:var(--accent);font:11px var(--font-mono)}.sector-rank-main{display:grid;min-width:0;gap:3px}.sector-rank-main small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.sector-rank-main i{height:5px;overflow:hidden;border-radius:999px;background:#64748b24}.sector-rank-main em{display:block;height:100%;border-radius:inherit;background:var(--accent)}.sector-rank-value{display:grid;gap:4px;text-align:right}.sector-rank-value b{font-family:var(--font-mono)}.sector-rank-value small{color:var(--muted)}.sector-detail-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.sector-detail-header h3{margin:2px 0 4px;font-size:20px}.sector-detail-header p{max-width:760px;margin:0;color:var(--muted);font-size:11px;line-height:1.45}.sector-score-badge{display:grid;align-content:center;min-width:92px;padding:9px;border:1px solid var(--border);border-radius:10px;text-align:center}.sector-score-badge strong{font:700 23px/1 var(--font-mono)}.sector-score-badge span{margin-top:5px;font-weight:800}.sector-score-badge small{margin-top:4px;color:var(--muted)}.sector-score-badge.bullish{border-color:#b91c1c47}.sector-score-badge.bearish{border-color:#15803d47}.sector-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}.sector-detail-metrics article,.sector-leader-grid>*{display:grid;gap:3px;padding:8px;border:1px solid var(--border);border-radius:8px;background:#ffffff57;text-align:left}.sector-detail-metrics span,.sector-leader-grid span{color:var(--muted)}.sector-detail-metrics strong{font:700 15px/1.1 var(--font-mono)}.sector-detail-metrics small,.sector-leader-grid small{color:var(--muted)}.sector-leader-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:6px}.sector-leader-grid button{color:inherit;cursor:pointer}.sector-leader-grid strong{font-size:14px}.sector-component-list{margin-top:11px}.sector-component-list h4{margin:0 0 6px;font-size:13px}.sector-component-list article{display:grid;gap:3px;margin-top:6px}.sector-component-list article>div:first-child{display:flex;justify-content:space-between;gap:12px}.sector-component-list span,.sector-component-list small{color:var(--muted)}.sector-component-list .unavailable{opacity:.62}.sector-rotation-panel,.sector-volume-price-panel{grid-column:1 / -1}.sector-volume-price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.sector-volume-price-grid article{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:8px;border:1px solid var(--border);border-radius:8px;background:#ffffff57}.sector-volume-price-grid article strong{font:700 16px var(--font-mono)}.sector-volume-price-grid article small{grid-column:1 / -1;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.sector-volume-price-grid .price_up_volume_up{border-top:2px solid var(--bullish)}.sector-volume-price-grid .price_down_volume_up{border-top:2px solid var(--bearish)}.sector-volume-price-warming{margin:0;padding:8px;border-radius:8px;background:#b4530912;color:var(--muted);font-size:11px;line-height:1.5}.sector-continuity-summary{display:grid;grid-template-columns:.7fr 1.15fr 1.15fr;gap:5px;margin-top:6px}.sector-continuity-summary>span{display:grid;gap:2px;min-width:0;padding:6px;border-radius:7px;background:#64748b12}.sector-continuity-summary small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.sector-rotation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sector-rotation-grid article{display:grid;gap:3px;min-width:0;padding:8px;border:1px solid var(--border);border-radius:8px;background:#ffffff57}.sector-rotation-grid article span{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.sector-transition-wrap{display:grid;grid-template-columns:auto 1fr;gap:6px 10px;align-items:start;margin-top:7px;padding-top:7px;border-top:1px solid var(--border)}.sector-transition-wrap>div:first-child{display:grid;gap:2px}.sector-transition-wrap small{color:var(--muted)}.sector-transition-matrix{border-collapse:collapse;font:600 10px var(--font-mono)}.sector-transition-matrix th,.sector-transition-matrix td{min-width:31px;padding:3px 5px;border:1px solid var(--border);text-align:center}.sector-switch-list{display:grid;grid-column:1 / -1;grid-template-columns:1fr 1fr;gap:5px}.sector-switch-list span{overflow:hidden;padding:5px 6px;border-radius:6px;background:#64748b12;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.sector-switch-list b{margin-right:6px;color:var(--text)}.sector-signal-history{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}.sector-signal-history article{display:grid;gap:3px;min-width:0;padding:7px;border:1px solid var(--border);border-radius:8px;background:#64748b0d}.sector-signal-history span{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.sector-signal-history small{color:var(--muted)}.sector-limit-ladder{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:7px;padding:8px;border:1px solid var(--border);border-radius:8px;background:#ffffff57}.sector-limit-ladder>b{margin-right:4px}.sector-limit-ladder>span{border-radius:999px;padding:3px 7px;background:#b91c1c14;color:var(--bullish)}.sector-member-detail{margin-top:10px;padding-top:9px;border-top:1px solid var(--border)}.sector-member-state{margin:0;padding:9px;border-radius:7px;background:#64748b12;color:var(--muted)}.sector-member-state.error{background:#b91c1c0f;color:var(--bullish)}.sector-contribution-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.sector-contribution-summary article{display:grid;gap:2px;padding:7px;border:1px solid var(--border);border-radius:7px;background:#ffffff57}.sector-contribution-summary span,.sector-contribution-summary small{color:var(--muted)}.sector-contribution-summary strong{font:700 14px var(--font-mono)}.sector-member-toolbar{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin:7px 0 5px}.sector-member-toolbar button{min-height:26px;border:1px solid var(--border);border-radius:999px;padding:0 8px;background:transparent;color:var(--muted);font-size:10px}.sector-member-toolbar button.active{background:var(--accent);color:#fff}.sector-member-toolbar small{flex:1 1 260px;color:var(--muted);line-height:1.4}.sector-member-table-wrap{max-height:420px;overflow:auto;border:1px solid var(--border);border-radius:8px}.sector-member-table{width:100%;border-collapse:collapse;font-size:10px;white-space:nowrap}.sector-member-table th{position:sticky;top:0;z-index:1;padding:6px;background:var(--panel-strong);color:var(--muted);text-align:right}.sector-member-table th:first-child{text-align:left}.sector-member-table td{padding:6px;border-top:1px solid var(--border);text-align:right}.sector-member-table td:first-child{display:grid;text-align:left}.sector-member-table td:first-child small{color:var(--muted)}.sector-member-table tbody tr{cursor:pointer}.sector-member-table tbody tr:hover{background:var(--accent-soft)}.market-data-contract{padding:11px 14px}.market-data-contract summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;list-style:none}.market-data-contract summary::-webkit-details-marker{display:none}.market-data-contract summary>span{display:grid;gap:2px}.market-data-contract summary>small{color:var(--muted)}.market-data-contract[open] summary{margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid var(--border)}.market-source-list,.market-gap-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.market-source-list article,.market-gap-list article{display:grid;gap:3px;padding:9px;border:1px solid var(--border);border-radius:8px;background:#ffffff52}.market-source-list span,.market-source-list small,.market-gap-list span{color:var(--muted)}.market-gap-list b{width:fit-content;border-radius:999px;padding:3px 8px;background:#b453091a;color:var(--warning);font-size:12px}.market-inline-warning{padding:8px 11px;border:1px solid rgba(180,83,9,.22);border-radius:9px;background:#b4530912;color:var(--warning)}.market-quality-alert{display:flex;flex-wrap:wrap;gap:4px 10px;padding:8px 11px;border:1px solid rgba(185,28,28,.2);border-radius:9px;background:#b91c1c0f}.market-quality-alert b{color:var(--bullish)}.market-quality-alert span{color:var(--muted)}.market-empty{display:grid;gap:10px;place-items:center;min-height:180px;color:var(--muted);text-align:center}.market-empty button{min-height:40px;border:0;border-radius:10px;padding:0 16px;background:var(--accent);color:#fff}.bullish{color:var(--bullish)}.bearish{color:var(--bearish)}@media (max-width: 1180px){.market-comparison-grid{grid-template-columns:1fr}.regime-driver-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sector-diagnosis-layout,.sector-ranking-list{grid-template-columns:1fr}.market-source-list,.market-gap-list{grid-template-columns:repeat(2,minmax(0,1fr))}.market-health-checks{grid-template-columns:repeat(4,minmax(0,1fr))}.market-health-detail{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 860px){.app-page-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.market-page-header,.market-hero-card,.sector-detail-header{grid-template-columns:1fr}.market-page-header{flex-direction:column;align-items:stretch;padding:20px}.market-page-meta{min-width:0;text-align:left}.market-hero-card{padding:20px}.temperature-gauge{width:132px}.market-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.index-pulse-grid,.regime-driver-grid,.sector-diagnosis-layout{grid-template-columns:1fr}.sector-ranking-panel{position:static}.sector-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sector-leader-grid,.market-source-list,.market-gap-list{grid-template-columns:1fr}.market-health-checks,.sector-volume-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sector-continuity-summary,.sector-signal-history,.market-attribution-grid{grid-template-columns:1fr}}@media (max-width: 520px){.market-metric-grid,.sector-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.market-dashboard-panel{padding:18px}.market-disclosure{display:grid}}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);display:grid;gap:16px;padding:32px;border:1px solid var(--border);border-radius:20px;background:var(--panel-strong);box-shadow:0 18px 50px #322a191f}.login-card h1,.login-card p{margin:0}.login-card p{color:var(--muted);line-height:1.6}.login-card label{display:grid;gap:7px;color:var(--muted);font-size:14px}.login-card input{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit}.login-primary{padding:12px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:700}.login-switch{border:0;background:transparent;color:var(--accent)}.login-identity{color:var(--muted);font-size:13px}.settings-page{max-width:720px;margin:0 auto;display:grid;gap:18px}.settings-back{justify-self:start}.settings-panel{padding:24px}.settings-user-header{margin-bottom:4px}.profile-form{display:grid;gap:14px}.profile-form label{display:grid;gap:8px;color:var(--muted)}.profile-title{font-size:20px;font-weight:700;color:var(--ink)}.profile-subtitle{color:var(--muted);font-size:14px;font-family:IBM Plex Mono,monospace}.switch-row{grid-template-columns:1fr auto;align-items:center}.settings-info-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.settings-info-item{display:grid;gap:4px;padding:14px;border:1px solid rgba(102,90,62,.12);border-radius:12px;background:var(--panel-strong)}.settings-info-item span{color:var(--muted);font-size:13px}.settings-info-item strong{font-size:16px}.diagnostics-summary-grid{margin-bottom:16px}.diagnostics-list{display:grid;gap:12px}.diagnostic-card{border:1px solid rgba(102,90,62,.12);border-radius:16px;background:var(--panel-strong);padding:16px}.diagnostic-card.is-fresh{border-color:#15803d2e}.diagnostic-card.is-stale{border-color:#b91c1c33}.diagnostic-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.diagnostic-card-head h4{margin:0;font-size:18px}.diagnostic-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.diagnostic-meta span{padding:4px 8px;border-radius:999px;background:#124c3a14;color:var(--muted);font-size:12px}.diagnostic-badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;white-space:nowrap}.diagnostic-badge.ok{background:#15803d1f;color:var(--positive)}.diagnostic-badge.warn{background:#b91c1c1a;color:var(--negative)}.diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.diagnostic-grid div{border:1px solid rgba(102,90,62,.1);border-radius:12px;background:#fffbf4c2;padding:10px 12px}.diagnostic-grid span{display:block;font-size:12px;margin-bottom:4px;color:var(--muted)}.diagnostic-grid strong{display:block;font-family:var(--font-mono);font-size:13px;word-break:break-all}.diagnostic-reason{margin:12px 0 0;line-height:1.7}.diagnostic-note{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.positive{color:var(--positive)}.negative,.risk{color:var(--negative)}.notice,.error{border-radius:14px;padding:12px 16px;margin-bottom:16px}.notice{background:#124c3a1a;color:var(--accent)}.error{background:#b91c1c1a;color:var(--negative)}.empty-card{padding:28px;border-radius:var(--radius);border:1px dashed rgba(102,90,62,.3);background:#fffbf4c2;color:var(--muted)}.sync-panel{position:fixed;bottom:24px;right:24px;width:400px;max-width:calc(100vw - 48px);z-index:1000;border:1px solid var(--border);border-radius:16px;background:var(--panel-strong);box-shadow:0 16px 40px #6b685f33;padding:16px;display:grid;gap:12px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sync-panel-collapsed{width:auto;display:flex;align-items:center;gap:8px;padding:10px 16px;cursor:pointer}.sync-panel-collapsed:hover{border-color:#124c3a4d}.sync-panel-header{display:flex;justify-content:space-between;align-items:center}.sync-panel-title{display:flex;align-items:center;gap:8px}.sync-panel-ticker{font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--muted)}.sync-panel-actions{display:flex;gap:4px}.sync-panel-btn{border:0;background:transparent;color:var(--muted);width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px}.sync-panel-btn:hover{background:#665a3e14}.sync-panel-btn:disabled{opacity:.3;cursor:default}.sync-panel-dot{width:10px;height:10px;border-radius:999px;flex-shrink:0}.sync-panel-dot.requesting,.sync-panel-dot.processing,.sync-panel-dot.refreshing{background:var(--accent);animation:sync-pulse 1s ease-in-out infinite}.sync-panel-dot.done{background:var(--positive)}.sync-panel-dot.error{background:var(--negative)}.sync-panel-dot.idle{background:#b7a98b}@keyframes sync-pulse{0%,to{opacity:1}50%{opacity:.3}}.sync-panel-progress{display:grid;gap:6px}.sync-panel-progress-bar{height:6px;border-radius:999px;background:#665a3e1a;overflow:hidden}.sync-panel-progress-fill{height:100%;border-radius:999px;transition:width .3s ease}.sync-panel-progress-fill.requesting,.sync-panel-progress-fill.processing,.sync-panel-progress-fill.refreshing{background:var(--accent)}.sync-panel-progress-fill.done{background:var(--positive)}.sync-panel-progress-fill.error{background:var(--negative)}.sync-panel-progress-text{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted)}.sync-panel-result{padding:10px 14px;border-radius:10px;font-size:13px}.sync-panel-result.success{background:#15803d1a;color:var(--positive)}.sync-panel-result.error{background:#b91c1c1a;color:var(--negative)}.sync-panel-logs{max-height:140px;overflow-y:auto;display:grid;gap:4px;padding:8px;border-radius:10px;background:#665a3e0d}.sync-log-row{display:flex;gap:8px;font-size:12px;align-items:baseline}.sync-log-time{color:var(--muted);font-family:IBM Plex Mono,monospace;flex-shrink:0}.sync-log-stage{font-weight:600;flex-shrink:0;min-width:80px}.sync-log-row.done .sync-log-stage{color:var(--positive)}.sync-log-row.error .sync-log-stage{color:var(--negative)}.sync-log-row.requesting .sync-log-stage,.sync-log-row.processing .sync-log-stage,.sync-log-row.refreshing .sync-log-stage{color:var(--accent)}.sync-log-msg{color:var(--muted)}.sync-panel-mini-status{font-size:12px;color:var(--accent)}.sync-panel-mini-status.done{color:var(--positive)}.sync-panel-mini-status.error{color:var(--negative)}.sync-panel-expand-hint{font-size:11px;color:var(--muted)}.mobile-view-tabs,.mobile-analysis-tabs{display:none}@media (max-width: 1100px){.workspace-grid{grid-template-columns:minmax(300px,38fr) minmax(0,62fr)}}@media (max-width: 860px){.app-shell{padding:18px}.topbar{flex-direction:column;gap:16px}.topbar h1{font-size:30px}.topbar-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px;align-items:stretch}.topbar-actions>.segmented,.topbar-actions>.auto-refresh-hint,.topbar-actions>.login-identity{grid-column:1 / -1}.topbar-actions>.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.topbar-actions>.segmented button{min-height:var(--control-height)}.topbar-actions .settings-button{width:100%;padding-inline:6px}.login-identity{min-width:0;overflow-wrap:anywhere}.workspace-grid{grid-template-columns:1fr}.workspace-main>*{width:100%;min-width:0;max-width:100%}.hero-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.hero-panel>div,.hero-meta span{min-width:0}.hero-panel h1{font-size:28px}.hero-meta{display:grid;gap:6px;font-size:13px}.hero-meta span{overflow-wrap:anywhere}.hero-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.hero-price{min-width:0;font-size:clamp(26px,9vw,34px)}.mobile-view-tabs{display:grid;grid-template-columns:1fr 1fr;position:sticky;top:0;z-index:20;margin-bottom:12px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.mobile-view-tabs button{min-height:40px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:var(--control-font-size);line-height:1;font-weight:600;white-space:nowrap}.mobile-view-tabs button.active{background:var(--accent);color:#fff8ef}.workspace-grid.mobile-watchlist .main-column,.workspace-grid.mobile-detail .sidebar{display:none}.journal-layout,.qa-layout,.qa-chat-layout,.form-grid{grid-template-columns:1fr}.qa-chat-layout{height:auto;min-height:600px}.qa-sidebar{max-height:200px}.journal-header{align-items:stretch;flex-direction:column}.sidebar{position:static;max-height:none}.overview-layout{display:grid;grid-template-columns:1fr;overflow:visible}.overview-left,.overview-right{display:none}.overview-left.mobile-active,.overview-right.mobile-active{display:flex}.mobile-analysis-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.mobile-analysis-tabs button{min-height:40px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:var(--control-font-size);line-height:1;font-weight:600;white-space:nowrap}.mobile-analysis-tabs button.active{background:var(--accent);color:#fff8ef}.canvas-kline,.canvas-volume,.canvas-sub{touch-action:pan-y}.chart-panel{width:calc(100% + 24px);margin-inline:-12px;min-width:0;max-width:none;overflow:hidden;padding:10px 8px;gap:8px;border-radius:12px;box-shadow:none}.chart-panel .panel-header{display:grid;grid-template-columns:minmax(0,1fr)}.chart-panel .toolbar,.chart-panel .segmented,.canvas-stack{width:100%;min-width:0}.chart-panel .toolbar{justify-items:stretch}.chart-panel .segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px}.chart-panel .segmented button{min-width:0;min-height:34px;padding:0 6px;font-size:13px;line-height:1;white-space:nowrap}.canvas-stack{gap:8px}.canvas-kline,.canvas-volume,.canvas-sub{border-radius:10px}.canvas-kline{height:300px}.canvas-volume{height:140px}.anomaly-ticker{grid-template-columns:1fr auto;gap:10px}.anomaly-heading{grid-column:1 / 2}.anomaly-content{grid-column:1 / -1;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding-left:0}.anomaly-name{grid-column:1 / -1}.anomaly-controls{grid-column:2;grid-row:1}.anomaly-empty{grid-template-columns:1fr}.anomaly-empty p{grid-column:1 / -1}.canvas-sub{height:140px}.chart-nav{gap:10px;margin:0}.chart-nav button{width:36px;height:36px;font-size:23px}.chart-nav-hint{margin-top:-2px;font-size:11px;line-height:1.3}.overview-left>.conclusion-panel,.overview-right>.side-panel{flex:0 0 auto}.conclusion-row{grid-template-columns:1fr}.user-switcher{width:100%}.sync-panel{width:calc(100vw - 36px);right:18px;bottom:18px}}@media (min-width: 861px){:root{--control-font-size: 14px;--control-height: 38px}body{font-size:14px}.app-shell{padding:22px}.topbar{gap:18px;margin-bottom:16px}.workspace-grid{gap:14px}.sidebar{top:20px;max-height:calc(100vh - 40px);padding:16px}.hero-panel,.panel{padding:16px}.main-column,.workspace-main{gap:16px}.canvas-stack{gap:14px}.overview-layout,.overview-left,.overview-right{gap:12px}}.sidebar-header h2{font-size:25px;line-height:1.15}.conclusion-details-fixed .conclusion-block-title{margin-bottom:8px}.overview-right{height:100%}.overview-right>.period-status-panel{flex:0 0 auto;padding:10px 14px;gap:4px}.overview-right>.period-status-panel .panel-header{margin-bottom:0}.overview-right>.period-status-panel .side-metrics{gap:3px}.overview-right>.period-status-panel .side-group{gap:1px}.overview-right>.period-status-panel .side-group:not(:last-child){padding-bottom:3px}.overview-right>.period-status-panel .side-metric-row{line-height:1.3}.overview-right>.algo-panel{flex:1 1 auto;min-height:0;padding:12px 14px}@media (max-width: 860px){.sidebar-header h2{font-size:24px}.overview-right{height:auto}}.overview-layout .eyebrow{font-size:19px}.overview-layout .panel-header h3{font-size:28px}.overview-layout .trend-badge{font-size:16px}.overview-layout .conclusion-block-title,.overview-layout .side-group-title{font-size:18px}.overview-layout .conclusion-value{font-size:20px}.overview-layout .conclusion-desc{font-size:17px}.overview-layout .conclusion-text-sm,.overview-layout .extended-levels,.overview-layout .extended-label,.overview-layout .extended-value,.overview-layout .extended-range span,.overview-layout .extended-range strong,.overview-layout .advice-text,.overview-layout .advice-text-sm{font-size:19px}.overview-layout .etf-snapshot-item span{font-size:16px}.overview-layout .etf-snapshot-item strong{font-size:18px}.overview-layout .side-metric-row,.overview-layout .side-metric-row strong{font-size:17px}.overview-layout .algo-deep-btn,.overview-layout .algo-score-label,.overview-layout .algo-source,.overview-layout .algo-reco,.overview-layout .algo-empty,.overview-layout .algo-error,.overview-layout .algo-analysis-target{font-size:19px}.overview-layout .algo-score{font-size:34px}.big-sector-collapse-btn{min-width:0;padding:0;border:0;background:transparent;color:var(--ink);font-size:25px;font-weight:700;line-height:1.35;text-align:left}.sector-title>span{color:var(--ink);font-size:19px;white-space:nowrap}.sub-sector-title,.sub-sector-title .sector-collapse-btn{font-size:21px;line-height:1.4}.hero-market-line{display:flex;align-items:baseline;flex-wrap:wrap;margin:0 0 10px;color:var(--text);font-size:18px;line-height:1.6}.hero-market-line h1{display:inline;margin:0}.hero-market-signal{margin:-6px 0 10px;color:var(--text);font-size:17px;line-height:1.6}.market-up{color:var(--bullish)}.market-down{color:var(--bearish)}.market-divergence{color:#ea580c}.market-flat{color:var(--muted)}.side-block-head{display:flex;align-items:baseline;justify-content:space-between;margin:4px 2px 8px}.side-block-head strong{font-size:14px;color:var(--ink);letter-spacing:.02em}.side-block-head span{font-size:11px;color:var(--muted)}.broad-index-panel{margin-bottom:16px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.broad-index-list{display:flex;flex-direction:column;gap:2px}.broad-index-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:5px 6px;border-radius:8px;font-size:12px}.broad-index-row:hover{background:var(--accent-soft)}.bi-name{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bi-share{color:var(--muted);font-variant-numeric:tabular-nums}.bi-pct{min-width:56px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.bi-pct.positive{color:var(--positive)}.bi-pct.risk{color:var(--negative)}.bi-pct.neutral{color:var(--muted)}.algo-panel .panel-header{align-items:center}.algo-deep-btn{padding:5px 12px;font-size:12px;border:1px solid var(--accent);border-radius:999px;background:var(--accent-soft);color:var(--accent);cursor:pointer;white-space:nowrap}.algo-deep-btn:hover{background:var(--accent);color:#fff}.algo-deep-btn:disabled{opacity:.6;cursor:default}.algo-body{display:flex;flex-direction:column;gap:10px}.algo-analysis-target{color:var(--ink);font-size:15px;font-weight:500;line-height:1.6}.algo-score-row{display:flex;align-items:center;gap:12px}.algo-score{font-size:30px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.algo-score.positive{color:var(--bullish)}.algo-score.risk{color:var(--bearish)}.algo-score.neutral{color:var(--warning)}.algo-score-meta{display:flex;flex-direction:column;gap:2px}.algo-score-label{font-size:12px;color:var(--ink);font-weight:600}.algo-source{font-size:11px;color:var(--muted)}.algo-reco{font-size:12px;line-height:1.5;color:var(--ink);padding:8px 10px;border-radius:8px;background:var(--accent-soft)}.algo-empty,.algo-error{font-size:12px;color:var(--muted);line-height:1.5}.algo-error{color:var(--negative);margin-top:6px}:root{--bg: #f2f5f9;--bg-strong: #e8eef6;--panel: rgba(255, 255, 255, .9);--panel-strong: #ffffff;--border: rgba(42, 61, 89, .14);--ink: #172033;--muted: #667085;--accent: #2457c5;--accent-soft: rgba(36, 87, 197, .1);--warning: #b54708;--positive: #16803c;--negative: #c9362b;--bullish: #c9362b;--bearish: #16803c;--shadow: 0 16px 40px rgba(31, 50, 81, .09);--font-sans: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "IBM Plex Sans", "Segoe UI", sans-serif;--control-font-size: 17px;--control-height: 44px;--segment-height: 40px;--chart-bg: #f6faff;--chart-border: rgba(54, 101, 166, .2)}body{font-size:17px;line-height:1.6;background:radial-gradient(circle at 8% 0%,rgba(36,87,197,.1),transparent 30%),radial-gradient(circle at 92% 4%,rgba(14,165,164,.08),transparent 25%),linear-gradient(180deg,#f8faff 0%,var(--bg) 46%,#edf2f8 100%)}::selection{color:#fff;background:#2457c5d1}button,input,select,textarea{font-size:max(17px,1em)}.sidebar,.panel,.hero-panel,.journal-folders,.journal-editor,.qa-form,.qa-answer,.qa-sidebar,.qa-chat-main,.record-item{border-color:var(--border);background-color:var(--panel)}.brand-mark,.eyebrow,.auto-refresh-hint,.record-stock-badge,.record-item span,.tag-row b,.qa-session-meta,.stock-picker-menu span,.stock-picker-empty,.qa-context-badge,.qa-msg-time,.qa-sources-inline,.bulk-import-divider,.bulk-import-hint,.stock-card-code,.stock-tag-mini,.sync-time,.metric-label,.fact-label,.chart-nav-hint,.side-block-head span,.algo-source,.algo-score-label,.algo-reco,.algo-empty,.algo-error,.algo-deep-btn{font-size:15px}.qa-session-title,.qa-ticker-input,.qa-clear-btn,.qa-suggestions button,.qa-code-block,.qa-markdown code,.stock-card-summary,.stock-card-tags,.broad-index-row{font-size:16px}.qa-msg-content,.qa-input,.qa-welcome p,.qa-send-btn,.qa-new-chat,.settings-button,.secondary-button,.primary-button{font-size:17px}.stock-card-name,.journal-folders h3,.qa-sources h3,.side-block-head strong{font-size:18px}.stock-card,.record-item,.qa-msg.assistant .qa-msg-content,.qa-suggestions button{border-color:var(--border);background:var(--panel-strong)}.stock-card:hover,.qa-suggestions button:hover{border-color:#2457c54d;box-shadow:0 10px 24px #1f325114}.stock-card.active{border-color:#2457c585;box-shadow:0 0 0 3px #2457c517}.segmented,.settings-button,.user-switcher,.profile-form input,.qa-input-area{border-color:var(--border);background:#ffffffeb}.segmented button.active,.settings-button.active,.primary-button,.qa-web-search-btn.active{color:#fff;background:var(--accent)}@media (max-width: 860px){:root{--control-font-size: 17px;--control-height: 44px}body{font-size:17px}.chart-panel .segmented button{font-size:16px}}:root{--control-font-size: 15px}body{font-size:15px}button,input,select,textarea{font-size:max(15px,1em)}.topbar h1{font-size:clamp(22px,3vw,34px)}.journal-header h2{font-size:24px}.sidebar-header h2,.panel-header h3,.side-panel .panel-header h3{font-size:20px}.hero-panel h1{font-size:clamp(24px,3vw,34px)}.hero-price{font-size:30px}.qa-welcome h3{font-size:18px}.big-sector-collapse-btn{font-size:21px}.sub-sector-title,.sub-sector-title .sector-collapse-btn{font-size:17px}.technical-chart-header h4,.etf-share-header h4{font-size:15px}.diagnostic-card-head h4{font-size:11px}.overview-layout .eyebrow{font-size:15px}.overview-layout .panel-header h3{font-size:22px}.overview-layout .trend-badge{font-size:12px}.overview-layout .conclusion-block-title,.overview-layout .side-group-title{font-size:14px}.overview-layout .conclusion-value{font-size:16px}.overview-layout .conclusion-desc{font-size:13px}.overview-layout .conclusion-text-sm,.overview-layout .extended-levels,.overview-layout .extended-label,.overview-layout .extended-value,.overview-layout .extended-range span,.overview-layout .extended-range strong,.overview-layout .advice-text,.overview-layout .advice-text-sm{font-size:15px}.overview-layout .etf-snapshot-item span{font-size:12px}.overview-layout .etf-snapshot-item strong{font-size:14px}.overview-layout .side-metric-row,.overview-layout .side-metric-row strong{font-size:13px}.overview-layout .algo-deep-btn,.overview-layout .algo-score-label,.overview-layout .algo-source,.overview-layout .algo-reco,.overview-layout .algo-empty,.overview-layout .algo-error,.overview-layout .algo-analysis-target{font-size:15px}.overview-layout .algo-score{font-size:28px}.qa-session-title,.qa-ticker-input,.qa-clear-btn,.qa-suggestions button,.qa-code-block,.qa-markdown code,.stock-card-summary,.stock-card-tags,.broad-index-row{font-size:14px}.qa-msg-content,.qa-input,.qa-welcome p,.qa-send-btn,.qa-new-chat,.settings-button,.secondary-button,.primary-button,.hero-market-signal{font-size:15px}.stock-card-name,.journal-folders h3,.qa-sources h3,.side-block-head strong,.hero-market-line{font-size:16px}.stock-card-market-line,.stock-card-market-signal{font-size:13px}.kline-overlay-controls{font-size:14px}@media (max-width: 860px){:root{--control-font-size: 15px}body{font-size:15px}.topbar h1{font-size:26px}.hero-panel h1{font-size:24px}.chart-panel .segmented button{font-size:14px}}.hero-market-line{font-size:20px}.hero-market-line h1{margin-right:2px;font-size:clamp(22px,2vw,24px)}@media (max-width: 860px){.hero-market-line{font-size:18px}.hero-market-line h1{font-size:21px}}.kline-mode-bar{display:flex;align-items:center;gap:30px;min-height:42px;padding:0 4px;border-bottom:1px solid var(--line)}.kline-mode-bar button{position:relative;min-width:64px;padding:8px 4px 10px;border:0;background:transparent;color:var(--muted);font-size:18px;font-weight:600;cursor:pointer}.kline-mode-bar button.active{color:var(--ink)}.kline-mode-bar button.active:after{position:absolute;right:14px;bottom:-1px;left:14px;height:3px;border-radius:999px;background:var(--accent);content:""}.candle-inspector{display:grid;gap:0;padding:4px 14px;border:1px solid var(--line);border-radius:4px;background:#ffffffd1;font-family:var(--font-sans);font-size:15px}.candle-inspector-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;min-height:39px;border-bottom:1px solid rgba(102,90,62,.1)}.candle-inspector-row:last-child{border-bottom:0}.candle-inspector-primary{grid-template-columns:1.35fr 1fr 1fr}.candle-inspector-row span{display:flex;align-items:baseline;gap:10px;min-width:0;color:var(--ink)}.candle-inspector-row i{color:var(--muted);font-style:normal;white-space:nowrap}.candle-inspector-row b{overflow:hidden;font-size:17px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.candle-inspector-row button{justify-self:end;margin:0;padding:6px 10px;border:1px solid var(--line);border-radius:4px;background:var(--paper);font-size:14px}@media (max-width: 680px){.kline-mode-bar{gap:12px}.kline-mode-bar button{min-width:58px;font-size:16px}.candle-inspector{padding:4px 10px}.candle-inspector-row,.candle-inspector-primary{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;padding:6px 0}.candle-inspector-row span{gap:6px}.candle-inspector-row b{font-size:15px}}@media (min-width: 861px){:root{--control-font-size: 14px;--control-height: 38px}body{font-size:14px}button,input,select,textarea{font-size:max(14px,1em)}.brand-mark,.eyebrow,.auto-refresh-hint{font-size:13px}.topbar h1{font-size:clamp(22px,2.6vw,30px)}.panel-header h3,.side-panel .panel-header h3{font-size:18px}.sidebar-header h2{font-size:25px}}
