:root{--bg-0:#0c1017;--bg-1:#111720;--bg-2:#18202c;--bg-3:#222d3b;--bg-inset:#090d13;--line:#2a3442;--line-soft:#202a36;--line-hard:#47576d;--fg:#edf2f8;--fg-2:#b7c3d3;--fg-3:#8d9cb0;--fg-4:#7c8ca2;--brand:#86b6ff;--brand-2:#487cd2;--brand-soft:#86b6ff14;--brand-glow:#86b6ff30;--gold:#e8b45a;--gold-soft:#e8b45a24;--up:oklch(0.72 0.17 18);--up-soft:oklch(0.72 0.17 18/0.14);--down:oklch(0.76 0.18 155);--down-soft:oklch(0.76 0.18 155/0.14);--market-up:var(--up);--market-up-soft:var(--up-soft);--market-down:var(--down);--market-down-soft:var(--down-soft);--market-flat:var(--fg-2);--warn:oklch(0.82 0.15 75);--info:oklch(0.78 0.12 230);--r-xs:4px;--r-sm:8px;--r-md:8px;--r-lg:8px;--r-xl:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--sh-1:0 1px 0 oklch(1 0 0/0.04) inset,0 1px 2px oklch(0 0 0/0.4);--sh-2:0 1px 0 oklch(1 0 0/0.05) inset,0 8px 24px oklch(0 0 0/0.35);--sh-glow:0 0 0 1px var(--brand-glow),0 12px 40px var(--brand-glow);--font-sans:"HarmonyOS Sans SC","PingFang SC","Source Han Sans SC","Noto Sans SC",Inter,-apple-system,system-ui,sans-serif;--font-mono:"JetBrains Mono","IBM Plex Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--font-display:"HarmonyOS Sans SC","PingFang SC",Inter,sans-serif;--font-numeral:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Noto Serif",serif;--t-1:cubic-bezier(0.2,0.7,0.2,1);--t-2:cubic-bezier(0.65,0,0.35,1);--blue:var(--brand-2);--border:var(--line-soft);--bg:var(--bg-1);--fg-1:var(--fg);color-scheme:dark;--brand-hover:#a3c8ff;--on-brand:#0c172b;--panel-hi:oklch(1 0 0/0.02);--panel-hi-2:oklch(1 0 0/0.04);--overlay:#030810b3;--sh-pop:0 12px 50px #0005;--map-up:#ed6376;--map-down:#279d75;--map-base:#161b24;--map-flat:#253346;--ma-5:#facc15;--ma-10:#38bdf8;--ma-20:#a78bfa;--series-1:#82b2ff;--series-2:#c4a4ff;--series-3:#66cabb;--series-4:#d7b36f;--series-5:#eb96a4;--series-6:#aabaca;--alloc-1:#86b6ff;--alloc-2:#558de4;--alloc-3:#b4c9e7;--alloc-4:#657e9e;--alloc-5:#34475e;--alloc-6:#889ab1}:root[data-theme=light]{color-scheme:light;--bg-0:#f3f5f8;--bg-1:#ffffff;--bg-2:#f0f3f7;--bg-3:#e5eaf0;--bg-inset:#f7f9fb;--line:#d8dfe7;--line-soft:#e6ebf0;--line-hard:#b4c0cd;--fg:#0f1722;--fg-2:#3a4656;--fg-3:#5c6a7c;--fg-4:#6b7789;--brand:#2f6fdb;--brand-2:#1f56b8;--brand-soft:#2f6fdb12;--brand-glow:#2f6fdb2e;--brand-hover:#1f56b8;--on-brand:#ffffff;--gold:#94600f;--gold-soft:#94600f17;--up:#d6303b;--up-soft:#d6303b17;--down:#0a7f45;--down-soft:#0a7f4517;--warn:#9a5c00;--info:#0369a1;--panel-hi:transparent;--panel-hi-2:transparent;--overlay:#0f172259;--sh-1:0 1px 2px #0f17220f,0 2px 8px #0f17220a;--sh-2:0 8px 24px #0f172214;--sh-pop:0 12px 36px #0f17221f;--map-up:#d6303b;--map-down:#0a7f45;--map-base:#8d98a6;--map-flat:#9aa5b2;--ma-5:#b7791f;--ma-10:#0284c7;--ma-20:#7c3aed;--series-1:#2f6fdb;--series-2:#8b5cf6;--series-3:#0f9488;--series-4:#b7791f;--series-5:#db2777;--series-6:#64748b;--alloc-1:#2f6fdb;--alloc-2:#5b8fe6;--alloc-3:#9dbcf0;--alloc-4:#4a6283;--alloc-5:#1e3350;--alloc-6:#8fa1b8}*{box-sizing:border-box}body,html{margin:0;background:var(--bg-0);color:var(--fg);font-family:var(--font-sans);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.mono{font-family:var(--font-mono);font-feature-settings:"tnum"}.mono,.num{letter-spacing:0}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.up{color:var(--up)}.down{color:var(--down)}.muted{color:var(--fg-3)}.dim{color:var(--fg-4)}.hair{border:1px solid var(--line-soft)}.hair-b{border-bottom:1px solid var(--line-soft)}.hair-t{border-top:1px solid var(--line-soft)}.panel{background:linear-gradient(180deg,var(--panel-hi),transparent 40%),var(--bg-1);border:1px solid var(--line-soft);border-radius:var(--r-lg);box-shadow:var(--sh-1);position:relative;overflow:hidden}.panel-flush{padding:0}.panel>.p-head{padding:14px 18px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line-soft);font-size:13px;color:var(--fg-2);letter-spacing:.02em}.panel>.p-body{padding:18px}.tag{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-2);border:1px solid var(--line);border-radius:4px;background:var(--bg-2)}.tag.brand{color:var(--brand);border-color:var(--brand-glow);background:var(--brand-soft)}.tag.gold{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 35%,transparent);background:var(--gold-soft)}.tag.up{color:var(--up);border-color:color-mix(in srgb,var(--up) 40%,transparent);background:var(--up-soft)}.tag.down{color:var(--down);border-color:color-mix(in srgb,var(--down) 40%,transparent);background:var(--down-soft)}.btn{--_bg:var(--bg-2);--_fg:var(--fg);--_bd:var(--line);display:inline-flex;align-items:center;gap:8px;padding:10px 16px;font:inherit;font-size:13px;font-weight:500;color:var(--_fg);background:var(--_bg);border:1px solid var(--_bd);border-radius:var(--r-sm);cursor:pointer;transition:transform .2s var(--t-1),background .2s,border-color .2s,box-shadow .3s;position:relative}.btn:active{transform:translateY(0)}.btn.primary{--_bg:linear-gradient(180deg,var(--brand),var(--brand-2));--_fg:#fff;--_bd:transparent;box-shadow:0 0 0 1px oklch(1 0 0/.08) inset,0 6px 20px var(--brand-glow)}.btn.primary:hover{box-shadow:0 0 0 1px oklch(1 0 0/.12) inset,0 10px 28px var(--brand-glow)}.btn.gold{--_bg:var(--gold);--_fg:var(--bg-0);--_bd:transparent;font-weight:600;box-shadow:0 0 0 1px oklch(1 0 0/.1) inset,0 6px 18px var(--gold-soft)}.btn.gold:hover{filter:brightness(1.06);box-shadow:0 0 0 1px oklch(1 0 0/.14) inset,0 10px 26px var(--gold-soft)}.btn.ghost{--_bg:transparent}.btn.sm{padding:6px 10px;font-size:12px}.kbd{font-family:var(--font-mono);font-size:11px;padding:2px 6px;border:solid var(--line);border-width:1px 1px 2px;border-radius:4px;color:var(--fg-2);background:var(--bg-2)}.input{width:100%;background:var(--bg-inset);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 12px;color:var(--fg);font:inherit;font-size:13px;font-family:var(--font-mono);transition:border-color .15s,box-shadow .15s}.input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--brand);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line);border:2px solid var(--bg-0);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--line-hard)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes workspace-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1}}@keyframes glowPulse{0%,to{box-shadow:0 0 0 0 var(--brand-glow)}50%{box-shadow:0 0 24px 2px var(--brand-glow)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes tick{0%{opacity:0;transform:translateY(6px)}50%{opacity:1}to{opacity:0;transform:translateY(-6px)}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes dash{to{stroke-dashoffset:-200}}@keyframes rise{0%{height:0;opacity:0}to{opacity:1}}@keyframes blink{50%{opacity:.25}}.anim-fade{animation:fadeUp .6s var(--t-1) both}.dot-live{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--up);box-shadow:0 0 8px var(--up);animation:blink 1.4s infinite}.grid-bg{background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:48px 48px;background-position:-1px -1px}.grid-bg-fade{mask-image:radial-gradient(ellipse at center,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 80%)}.ticker{display:flex;gap:28px;animation:tickerScroll 40s linear infinite;white-space:nowrap}@keyframes tickerScroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.ticker-item{display:inline-flex;gap:8px;align-items:center;font-family:var(--font-mono);font-size:12px;color:var(--fg-2)}.skeleton{background:linear-gradient(90deg,var(--bg-2) 0,var(--bg-3) 50%,var(--bg-2) 100%);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:var(--r-sm)}.regiment-mark{font-family:var(--font-mono);font-size:10px;letter-spacing:.28em;color:var(--fg-3);text-transform:uppercase}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover,textarea:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--bg-inset) inset!important;-webkit-text-fill-color:var(--fg)!important;caret-color:var(--brand);transition:background-color 5000s ease-in-out 0s;border-radius:var(--r-sm)}.lift{transition:transform .25s var(--t-1),border-color .25s,box-shadow .25s,background .25s;cursor:default}.lift:hover{transform:translateY(-2px);border-color:var(--line-hard)}.lift-lg{transition:transform .35s var(--t-1),border-color .35s,box-shadow .35s}.lift-lg:hover{transform:translateY(-4px);border-color:var(--line-hard);box-shadow:var(--sh-pop)}.lift-sm{transition:transform .2s var(--t-1),border-color .2s,background .2s}.lift-sm:hover{transform:translateY(-1px);border-color:var(--line-hard);background:linear-gradient(180deg,var(--panel-hi-2),transparent 40%),var(--bg-1)}.row-hover{transition:background .2s,color .2s;cursor:pointer}.row-hover:hover{background:var(--bg-2)}.btn:hover{transform:translateY(-1px);border-color:var(--line-hard)}.btn.primary:hover{box-shadow:0 0 0 1px oklch(1 0 0/.12) inset,0 12px 32px var(--brand-glow)}@media (pointer:coarse){:where(.btn,.input,button,input,select,textarea){min-height:44px}}.motion-stagger>*{animation:stagger-in .42s cubic-bezier(.22,1,.36,1) backwards}.motion-stagger>:nth-child(2){animation-delay:.04s}.motion-stagger>:nth-child(3){animation-delay:.08s}.motion-stagger>:nth-child(4){animation-delay:.12s}.motion-stagger>:nth-child(5){animation-delay:.16s}.motion-stagger>:nth-child(6){animation-delay:.2s}.motion-stagger>:nth-child(7){animation-delay:.24s}.motion-stagger>:nth-child(8){animation-delay:.28s}.motion-stagger>:nth-child(n+9){animation-delay:.32s}@keyframes stagger-in{0%{opacity:0;transform:translateY(10px)}}.motion-shimmer{background-image:linear-gradient(100deg,transparent 30%,color-mix(in oklch,var(--fg) 5%,transparent) 50%,transparent 70%);background-size:220% 100%;animation:shimmer-sweep 1.6s linear infinite}@keyframes shimmer-sweep{0%{background-position:120% 0}to{background-position:-120% 0}}@media (prefers-reduced-motion:reduce){.motion-shimmer,.motion-stagger>*{animation:none!important}*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{font-size:16px}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:2px solid var(--brand);outline-offset:4px}::selection{background:color-mix(in srgb,var(--brand) 25%,transparent)}@keyframes research-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}