:root{--ink:#111827;--muted:#64748b;--line:#e5e7eb;--paper:#fff;--canvas:#f4f6f8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--canvas)}body{color:var(--ink);background:radial-gradient(circle at 7% -8%, #7c3aed17, transparent 31rem), radial-gradient(circle at 97% 5%, #ea580c14, transparent 28rem), var(--canvas);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:13px}button{font:inherit}.dashboard-shell{width:min(1440px,100%);margin:0 auto;padding:22px}.topbar{border-bottom:1px solid #94a3b859;justify-content:space-between;align-items:flex-end;gap:20px;padding:16px 2px 20px;display:flex}.eyebrow{color:#7c3aed;letter-spacing:.15em;margin-bottom:5px;font-size:10px;font-weight:800}h1{letter-spacing:-.045em;margin:0;font-size:clamp(24px,3vw,38px);line-height:1.08}.subtitle{color:#475569;margin:7px 0 0;font-size:13px;line-height:1.55}.timestamp{color:var(--muted);margin:9px 0 0;font-size:11px}.header-stats{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.header-stats span{color:#64748b;background:#ffffffb3;border:1px solid #e2e8f0;border-radius:999px;padding:4px 8px;font-size:10px}.header-stats b{color:#0f172a;font-variant-numeric:tabular-nums;margin-left:3px}.live-dot{background:#16a34a;border-radius:50%;width:7px;height:7px;margin-right:7px;animation:2s infinite pulse;display:inline-block;box-shadow:0 0 0 4px #16a34a1a}@keyframes pulse{50%{box-shadow:0 0 0 7px #16a34a00}}.top-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.profile-link{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:999px;justify-content:center;align-items:center;min-height:36px;padding:8px 13px;font-size:11px;font-weight:750;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 1px 4px #0f172a0f}.profile-link:hover{border-color:#0f172a;transform:translateY(-1px)}.refresh-button{color:#334155;cursor:pointer;background:#ffffffc7;border:1px solid #cbd5e1;border-radius:999px;padding:8px 14px;transition:all .15s}.refresh-button:hover{background:#fff;border-color:#94a3b8;transform:translateY(-1px)}.refresh-button:disabled{opacity:.55;cursor:wait;transform:none}.error-banner{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:9px;margin-top:12px;padding:10px 13px}.loading-panel{min-height:420px;color:var(--muted);justify-content:center;align-items:center;gap:10px;display:flex}.loading-ring{border:2px solid #cbd5e1;border-top-color:#7c3aed;border-radius:50%;width:17px;height:17px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.trend-controls{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffdb;border:1px solid #e2e8f0;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:10px 12px;display:flex;position:sticky;top:8px;box-shadow:0 8px 30px #0f172a0f}.trend-controls-main{min-width:0}.trend-controls-copy{align-items:baseline;gap:8px;display:flex}.trend-controls-copy strong{color:#334155;font-size:11px}.trend-controls-copy span{color:#94a3b8;font-size:10px}.window-meta{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.window-meta span{color:#64748b;font-variant-numeric:tabular-nums;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:3px 7px;font-size:9px}.window-meta .switching{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.range-buttons{background:#eef2f6;border-radius:9px;gap:3px;padding:3px;display:inline-flex}.range-buttons button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:7px;gap:1px;min-width:92px;min-height:40px;padding:5px 10px;font-size:11px;font-weight:700;transition:all .15s;display:grid}.range-buttons small{color:#94a3b8;font-size:9px;font-weight:650}.range-buttons button:hover{color:#0f172a;background:#ffffff9e}.range-buttons button.active{color:#0f172a;background:#fff;box-shadow:0 1px 4px #0f172a1f}.range-buttons button.active small{color:#64748b}.range-buttons button:focus-visible{outline-offset:1px;outline:2px solid #7c3aed}.range-buttons button:disabled{cursor:wait}.section-block{margin-top:26px}.section-heading{justify-content:space-between;align-items:center;gap:14px;margin:0 2px 9px;display:flex}.section-heading>div,.verdict-head>div{align-items:baseline;gap:9px;display:flex}.section-index{color:#cbd5e1;letter-spacing:.12em;font-size:10px;font-weight:800}h2{letter-spacing:-.01em;margin:0;font-size:15px}.source-pill{color:#64748b;background:#ffffffa6;border:1px solid #e2e8f0;border-radius:999px;padding:4px 9px;font-size:10px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.metric-card,.chart-card{background:#ffffffed;border:1px solid #e2e8f0eb;border-radius:12px;position:relative;box-shadow:0 1px 2px #0f172a08,0 8px 26px #0f172a06}.metric-card{min-height:150px;padding:14px 15px;overflow:visible}.metric-card:after{content:"";background:0 0;height:2px;position:absolute;inset:auto 0 0}.metric-card.accent-vix:after{background:#7c3aed}.metric-card.accent-vxn:after{background:#ea580c}.metric-card.accent-spx:after{background:#2563eb}.metric-card.accent-ndx:after{background:#0891b2}.valuation-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.valuation-card{min-height:142px}.metric-label{color:var(--muted);font-size:11px}.label-with-info{align-items:center;gap:5px;max-width:100%;display:inline-flex;position:relative}.label-with-info>span{min-width:0}.info-popover{z-index:1;outline:0;display:inline-flex;position:relative}.info-popover:hover,.info-popover:focus-visible{z-index:10000}.info-trigger{cursor:pointer;color:#64748b;background:#fff;border:1px solid #cbd5e1;border-radius:50%;place-items:center;width:15px;height:15px;font-size:10px;font-weight:800;line-height:1;list-style:none;display:inline-grid}.info-popover:hover .info-trigger,.info-popover:focus-visible .info-trigger{color:#334155;border-color:#94a3b8}.info-panel{z-index:10000;color:#475569;background:#fff;border:1px solid #dbe3ee;border-radius:8px;width:min(270px,72vw);margin:0;padding:9px 10px;font-size:11px;line-height:1.55;display:none;position:absolute;top:21px;left:0;box-shadow:0 12px 28px #0f172a24}.info-popover:hover .info-panel,.info-popover:focus-visible .info-panel{display:block}.metric-value-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.metric-value{letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin:5px 0 4px;font-size:clamp(20px,2vw,26px);font-weight:760}.metric-sub{color:#94a3b8;font-size:11px;line-height:1.6}.metric-sub b{color:#64748b;font-weight:650}.badge{border-radius:999px;align-items:center;padding:3px 8px;font-size:10px;font-weight:750;display:inline-flex}.badge.buy{color:#067647;background:#dcfce7}.badge.dca{color:#065f46;background:#d1fae5}.badge.hold{color:#854d0e;background:#fef9c3}.badge.warn{color:#9a3412;background:#ffedd5}.badge.sell{color:#b42318;background:#fee2e2}.badge.neutral{color:#4338ca;background:#eef2ff}.signal-bar{background:linear-gradient(90deg,#16a34a,#facc15 54%,#dc2626);border-radius:99px;height:7px;margin:10px 0 7px;position:relative}.signal-bar.reversed{background:linear-gradient(90deg,#dc2626,#facc15 46%,#16a34a)}.signal-dot{background:#fff;border:3px solid #1e293b;border-radius:50%;width:13px;height:13px;position:absolute;top:-3px;transform:translate(-6px);box-shadow:0 1px 4px #0f172a2e}.verdict-section{margin-top:24px}.verdict-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.verdict-card{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #7c3aed;border-radius:11px;padding:16px 18px}.verdict-card.buy,.verdict-card.dca{border-left-color:#16a34a}.verdict-card.hold{border-left-color:#eab308}.verdict-card.warn{border-left-color:#ea580c}.verdict-card.sell{border-left-color:#dc2626}.verdict-head{justify-content:space-between;align-items:center;margin-bottom:7px;display:flex}.verdict-head strong{color:#475569;font-size:12px}.score{text-align:center;color:#334155;font-variant-numeric:tabular-nums;background:#f1f5f9;border-radius:99px;min-width:38px;padding:4px 9px;font-weight:800}.verdict-card h2{font-size:19px}.score-change{color:#94a3b8;flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;font-size:10px;display:flex}.score-change span{margin-right:2px}.score-change b{color:#64748b;font-variant-numeric:tabular-nums;background:#f1f5f9;border-radius:999px;padding:3px 7px;font-weight:800}.score-change b.up{color:#067647;background:#dcfce7}.score-change b.down{color:#9a3412;background:#ffedd5}.score-change b.flat{color:#64748b;background:#f1f5f9}.verdict-reasons{color:#475569;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;margin-top:10px;line-height:1.55;display:grid}.verdict-grid .verdict-reasons{grid-template-columns:1fr}.charts-stack{gap:10px;display:grid}.charts-stack>.section-heading{margin-bottom:-1px}.charts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.chart-card.wide{grid-column:1/-1}.chart-card{padding:14px}.chart-title-row{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:9px;display:flex}.chart-title-row h3{margin:0;font-size:13px;font-weight:680}.chart-title-row h3 .label-with-info{color:#0f172a}.chart-title-row span{color:#94a3b8;font-size:10px}.chart-box{height:280px;position:relative}.chart-card.wide .chart-box{height:320px}.chart-note{color:#94a3b8;margin-top:10px;font-size:10px;line-height:1.65}.method-note{color:#94a3b8;border-top:1px solid #e2e8f0;margin:22px 2px 4px;padding-top:14px;font-size:10px;line-height:1.7}.method-note p{margin:3px 0}.method-note b{color:#64748b}@media (max-width:1050px){.metric-grid,.valuation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.charts-grid{grid-template-columns:1fr}.chart-card.wide{grid-column:auto}}@media (max-width:620px){.dashboard-shell{padding:13px}.topbar{flex-direction:column;align-items:flex-start;gap:12px}.top-actions{justify-content:flex-start;width:100%}.profile-link,.refresh-button{white-space:nowrap}.metric-grid,.valuation-grid,.verdict-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start}.source-pill{display:none}.verdict-reasons{grid-template-columns:1fr}.info-panel{left:auto;right:0}.chart-box,.chart-card.wide .chart-box{height:245px}.trend-controls{flex-direction:column;align-items:stretch;gap:8px}.trend-controls-copy{flex-direction:column;align-items:flex-start;gap:2px}.range-buttons{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.range-buttons button{min-width:0;padding-inline:4px}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}
