:root{--midnight: #0b0f1a;--deep: #111827;--surface: #1a1f2e;--raised: #232a3b;--border: #2a3244;--signal: #ccff00;--signal-dim: #9fcc00;--white: #f8fafc;--g1: #e2e8f0;--g2: #cbd5e1;--g3: #94a3b8;--g4: #64748b;--g5: #475569;--info: #60a5fa;--warning: #fbbf24;--loss: #f87171;--font-display: "Sora", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-body: "DM Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "Space Mono", "SFMono-Regular", Consolas, Menlo, monospace}*{box-sizing:border-box}body{margin:0;background:var(--midnight);color:var(--g2);font-family:var(--font-body);-webkit-font-smoothing:antialiased}a{color:var(--signal-dim);text-decoration:none}a:hover{color:var(--signal)}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}.scroll{overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.scroll::-webkit-scrollbar{width:10px}.scroll::-webkit-scrollbar-track{background:transparent}.scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:100px;border:3px solid var(--deep)}.scroll::-webkit-scrollbar-thumb:hover{background:#3b455c}.page{min-height:100vh;padding:26px 32px 22px;display:flex;flex-direction:column;gap:18px}.topbar{display:flex;align-items:baseline;gap:18px}.wordmark{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.04em;color:var(--white);line-height:1}.wordmark span{color:var(--signal)}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--g4)}.section-1{display:grid;grid-template-columns:minmax(0,700px) minmax(0,1fr);gap:24px;height:76vh;min-height:620px}@media(max-width:1180px){.section-1{grid-template-columns:minmax(0,1fr);height:auto}.widget{height:76vh;min-height:560px}}.widget{background:var(--deep);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;min-height:0}.widget-head{padding:20px 22px 14px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:100px;padding:5px 11px;font-family:var(--font-mono);font-size:10px;color:var(--g3);letter-spacing:.12em;text-transform:uppercase}.dot{width:6px;height:6px;border-radius:50%;background:var(--signal)}.chip{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--g3);white-space:nowrap}.chip:hover{border-color:var(--g4)}.chip[aria-pressed=true],.chip.active{border-color:var(--signal);color:var(--signal);background:#ccff001a}.chip-count{color:var(--g5);margin-left:6px}.icon-btn{width:28px;height:28px;border-radius:8px;border:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-btn:hover{background:var(--border)}.section-label{font-family:var(--font-mono);font-size:11px;color:var(--signal);text-transform:uppercase;letter-spacing:.18em;margin:30px 0 14px}.section-label:first-child{margin-top:0}.card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--signal);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}.card h3{margin:0;font-family:var(--font-display);font-weight:700;font-size:15px;line-height:1.35;color:var(--white);letter-spacing:-.01em;text-wrap:pretty}.card p{margin:0;font-size:13px;line-height:1.6;color:var(--g2);text-wrap:pretty;white-space:pre-wrap}.card-list{display:flex;flex-direction:column;gap:12px}.sources{font-family:var(--font-mono);font-size:10px;color:var(--g4);letter-spacing:.04em;display:flex;flex-wrap:wrap;gap:4px 8px}.novelty{display:inline-block;font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;padding:3px 9px;border-radius:100px;border:1px solid var(--border);color:var(--g3);background:#94a3b81a}.novelty.fresh{color:var(--signal);border-color:#ccff0059;background:#ccff001f}.novelty.background{color:var(--info);border-color:#60a5fa59;background:#60a5fa1f}.novelty.unknown{color:var(--warning);border-color:#fbbf2459;background:#fbbf241f}.tag{display:inline-block;background:var(--raised);border:1px solid var(--border);color:var(--g2);font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;padding:3px 8px;border-radius:6px}.why{padding-left:12px;border-left:2px solid var(--border);display:flex;flex-direction:column;gap:4px}.why-label{font-family:var(--font-mono);font-size:9px;color:var(--g4);letter-spacing:.14em;text-transform:uppercase}.speculative-note{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--warning);background:#fbbf2414;border:1px solid rgba(251,191,36,.3);border-radius:8px;padding:8px 12px;margin-bottom:12px}.empty{background:var(--deep);border:1px solid var(--border);border-radius:12px;padding:16px 20px;font-family:var(--font-mono);font-size:12px;color:var(--g4)}.mono{font-family:var(--font-mono)}.up{color:var(--signal)}.down{color:var(--loss)}.muted{color:var(--g4)}.total{font-family:var(--font-display);font-weight:800;font-size:40px;letter-spacing:-.035em;color:var(--white);line-height:1}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 13px;display:flex;flex-direction:column;gap:5px;min-width:0}.stat-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--g4)}.stat-value{font-family:var(--font-mono);font-size:15px;font-weight:700;color:var(--g1)}.stat-sub{font-family:var(--font-mono);font-size:10px;color:var(--g4)}.ledger-cols{display:grid;grid-template-columns:minmax(150px,2.2fr) 58px 84px minmax(84px,1fr) minmax(92px,1.1fr);gap:14px;align-items:center}.ledger-scroll{overflow:auto}.ledger-body{min-width:568px}.ledger-rows{padding:0 22px}.ledger-top{padding:20px 22px 14px;display:flex;flex-direction:column;gap:14px}.ledger-controls{padding:0 22px 10px;display:flex;align-items:center;gap:8px}.ledger-head{position:sticky;top:0;z-index:2;padding:2px 22px 8px;background:var(--deep);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--g5)}.ledger-group{width:100%;text-align:left;padding:11px 8px;margin:0 -8px;border-radius:8px}.ledger-group:hover{background:var(--surface)}.ledger-row-wrap{border-bottom:1px solid var(--surface)}.fx-badge{display:inline-flex;align-items:baseline;gap:5px;padding:3px 8px;border:1px solid var(--border);border-radius:100px;background:var(--surface);font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--g4)}.fx-badge .mono{font-size:11px;font-weight:700;color:var(--g1)}.account-table{margin-top:10px;border:1px solid var(--border);border-radius:10px;overflow:hidden}.account-row{display:grid;grid-template-columns:minmax(70px,1fr) minmax(74px,1fr) minmax(74px,1fr) minmax(104px,1.4fr);gap:8px;align-items:center;padding:7px 12px;border-bottom:1px solid var(--surface)}.account-row:last-child{border-bottom:none}.account-head{background:var(--surface);font-family:var(--font-mono);font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--g5)}.unvested{border:1px dashed var(--border);border-left:2px solid var(--warning);border-radius:10px;padding:9px 12px 10px;background:color-mix(in srgb,var(--warning) 4%,transparent)}.unvested-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.unvested-sub{margin-top:3px;padding-left:21px;font-family:var(--font-mono);font-size:10px;color:var(--g4)}.unvested-rows{margin-top:8px;padding-top:7px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.unvested-row{display:grid;grid-template-columns:minmax(74px,1.2fr) minmax(60px,1fr) minmax(60px,1fr) minmax(76px,1.1fr);gap:8px;align-items:baseline}.weight-track{height:3px;width:100%;background:var(--raised);border-radius:100px;overflow:hidden}.weight-fill{height:3px;background:var(--signal);border-radius:100px}.lot-row{display:grid;grid-template-columns:62px minmax(0,1fr) 78px 84px 92px;gap:10px;align-items:center;padding:5px 0 5px 12px;border-left:2px solid var(--raised);font-family:var(--font-mono)}.right{text-align:right}.nowrap{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footnote{padding:11px 22px 15px;border-top:1px solid var(--border);display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:var(--g4)}.spin{animation:spin .7s linear infinite;transform-origin:50% 50%}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spin{animation:none}}.banner{border-radius:10px;padding:12px 16px;font-family:var(--font-mono);font-size:12px;letter-spacing:.03em}.banner.warn{background:#fbbf2414;border:1px solid rgba(251,191,36,.3);color:var(--warning)}.banner.error{background:#f8717114;border:1px solid rgba(248,113,113,.3);color:var(--loss)}select.picker{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;padding:5px 8px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--g2);cursor:pointer}@media(max-width:640px){.page{padding:16px 12px 18px;gap:14px}.section-1{gap:14px}.widget{height:78vh;min-height:420px}.total{font-size:30px}.ledger-cols{grid-template-columns:minmax(112px,1.8fr) 78px minmax(78px,1fr) minmax(86px,1.1fr);gap:10px}.ledger-weight{display:none}.ledger-body{min-width:462px}.ledger-rows{padding:0 14px}.ledger-head{padding:2px 14px 8px}.account-row{grid-template-columns:minmax(60px,1fr) minmax(66px,1fr) minmax(66px,1fr) minmax(92px,1.3fr);gap:6px;padding:7px 9px}.unvested-row{grid-template-columns:minmax(66px,1.2fr) minmax(52px,1fr) minmax(52px,1fr) minmax(68px,1.1fr);gap:6px}.ledger-top{padding:15px 14px 12px;gap:12px}.ledger-controls{padding:0 14px 10px}.footnote{padding:10px 14px 13px}}.section-2{margin-top:24px}.networth{min-height:520px}.networth .widget-head{padding:0 0 14px;gap:10px}.networth-top{padding:20px 22px 4px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.networth-top .chip{flex:0 0 auto;margin-top:4px}.networth-total{font-family:var(--font-display);font-size:30px;font-weight:600;color:var(--white);letter-spacing:-.02em;margin-top:6px}.networth-sub{font-family:var(--font-mono);font-size:11.5px;color:var(--g3);margin-top:4px}.legend{padding:0 22px;display:flex;flex-wrap:wrap;gap:8px 18px;font-family:var(--font-mono);font-size:11px;color:var(--g3)}.legend-item{display:inline-flex;align-items:center;gap:7px}.legend-item i{width:11px;height:11px;border-radius:3px;opacity:.75}.legend-dash{width:16px!important;height:0!important;border-radius:0!important;border-top:1.5px dashed var(--g2);opacity:1!important}.networth-body{flex-grow:1;min-height:0;padding:14px 18px 4px;display:flex;flex-direction:column}.networth-svg{width:100%;height:auto;touch-action:none;cursor:crosshair}.axis{font-family:var(--font-mono);font-size:10px;fill:var(--g4)}.error-text{font-family:var(--font-mono);font-size:12px;color:var(--loss)}@media(max-width:640px){.networth{min-height:400px}.networth-body{padding:10px 10px 2px}.networth-total{font-size:24px}.networth-top{padding:15px 14px 4px;gap:10px}}.swatch-cash{background:var(--g5)}.swatch-invested{background:var(--signal-dim)}.swatch-unvested{background:var(--warning)}.networth-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:4px}.networth-forecast{padding:0 22px;font-family:var(--font-mono);font-size:11px;line-height:1.6;color:var(--g3)}.networth-forecast b{color:var(--info);font-weight:400}@media(max-width:640px){.networth-forecast{padding:0 14px}}
