@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff")}:root{color-scheme:dark;--page: #0a0c11;--sunken: #07090d;--surface: #11141b;--surface-raised: #181c25;--surface-hover: #1f2430;--ink: #f2f0ea;--ink-secondary: #a6adbb;--ink-muted: #6a7180;--hairline: #1a1f29;--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--gain: #16b364;--loss: #e5484d;--warning: #f0b429;--accent: #e0a83e;--accent-ink: #1a1206;--accent-soft: color-mix(in srgb, var(--accent) 16%, transparent);--position: #29b6c9;--roi-hue: 40;--roi-sat: 62%;--row-h: 36px;--header-h: 70px;--strip-h: 52px;--font-sans: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", "Cascadia Code", monospace;--shadow-pop: 0 16px 40px -8px rgb(0 0 0 / .6), 0 0 0 1px var(--border)}:root[data-cvd="1"]{--gain: #3b8fe6;--loss: #e06c2a}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--page);color:var(--ink);font-family:var(--font-sans);font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-image:radial-gradient(120% 80% at 50% -20%,#12161f 0%,var(--page) 55%);background-attachment:fixed}.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.num{text-align:right}button,input,select{font-family:inherit;font-size:inherit;color:inherit}::selection{background:var(--accent-soft)}.app{display:flex;flex-direction:column;height:100%;overflow:auto}.topbar{display:flex;align-items:center;gap:18px;padding:0 16px;height:52px;background:linear-gradient(var(--surface),color-mix(in srgb,var(--surface) 92%,#000));border-bottom:1px solid var(--hairline);flex:none}.brand{display:flex;align-items:center;gap:9px;font-weight:600;letter-spacing:.06em;font-size:12px;text-transform:uppercase;color:var(--ink);white-space:nowrap}.brand:before{content:"";width:9px;height:9px;border-radius:2px;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);transform:rotate(45deg)}.tabs{display:flex;gap:2px;background:var(--sunken);padding:3px;border-radius:8px;border:1px solid var(--hairline)}.tab{background:none;border:0;padding:5px 15px;border-radius:6px;color:var(--ink-muted);cursor:pointer;font-weight:500;transition:color .12s,background .12s}.tab:hover{color:var(--ink-secondary)}.tab[aria-selected=true]{background:var(--surface-raised);color:var(--ink);box-shadow:inset 0 0 0 1px var(--border)}.tab .badge{display:inline-block;margin-left:7px;padding:0 5px;border-radius:999px;background:var(--loss);color:#fff;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.spacer{flex:1}.toggle-cvd{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--ink-secondary);cursor:pointer;white-space:nowrap}.status{display:flex;align-items:center;gap:7px;color:var(--ink-secondary);font-size:12px}.dot{width:7px;height:7px;border-radius:50%;background:var(--ink-muted);flex:none}.dot[data-state=live]{background:var(--gain);box-shadow:0 0 0 3px color-mix(in srgb,var(--gain) 22%,transparent)}.dot[data-state=down]{background:var(--loss)}.dot[data-state=idle]{background:var(--ink-muted)}.dot[data-state=warn],.dot[data-state=demo]{background:var(--warning)}.seg{display:flex;background:var(--sunken);border-radius:8px;padding:3px;border:1px solid var(--hairline)}.seg button{background:none;border:0;padding:5px 14px;border-radius:6px;color:var(--ink-muted);cursor:pointer;font-weight:600;transition:color .12s,background .12s}.seg button[aria-pressed=true]{background:var(--surface-raised);color:var(--ink);box-shadow:inset 0 0 0 1px var(--border)}.seg button:disabled{opacity:.5;cursor:default}.btn{background:var(--surface-raised);border:1px solid var(--border);border-radius:7px;padding:5px 12px;cursor:pointer;color:var(--ink-secondary);transition:background .12s,color .12s,border-color .12s}.btn:hover{background:var(--surface-hover);color:var(--ink);border-color:var(--border-strong)}.indexstrip{display:flex;align-items:stretch;gap:0;height:var(--strip-h);padding:0 8px;background:var(--surface);border-bottom:1px solid var(--hairline);flex:none;overflow-x:auto;scrollbar-width:none}.indexstrip::-webkit-scrollbar{display:none}.index-tile{display:flex;flex-direction:column;justify-content:center;gap:1px;padding:0 18px;min-width:150px;border-right:1px solid var(--hairline);position:relative;animation:tileIn .4s both}.index-tile:first-child{padding-left:12px}.index-tile .ix-name{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.index-tile .ix-val{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:17px;font-weight:600;color:var(--ink);letter-spacing:-.01em;line-height:1.15}.index-tile .ix-chg{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:500;display:flex;align-items:center;gap:4px}.index-tile.up .ix-val{color:color-mix(in srgb,var(--gain) 55%,var(--ink))}.index-tile.down .ix-val{color:color-mix(in srgb,var(--loss) 55%,var(--ink))}.filters{display:flex;align-items:center;gap:12px;padding:9px 16px;background:var(--surface);border-bottom:1px solid var(--hairline);flex:none;flex-wrap:wrap}.filters label{display:flex;align-items:center;gap:6px;color:var(--ink-secondary);font-size:12px}.filters input[type=number],.filters input[type=search],.filters input[type=text],.filters input[type=date]{background:var(--sunken);border:1px solid var(--border);border-radius:7px;padding:5px 9px;width:88px;transition:border-color .12s}.filters input[type=search]{width:170px;font-family:var(--font-sans)}.filters input:focus{outline:none;border-color:var(--accent)}.filters select{background:var(--sunken);border:1px solid var(--border);border-radius:7px;padding:5px 9px;color:var(--ink);cursor:pointer;transition:border-color .12s}.filters select:focus{outline:none;border-color:var(--accent)}.filter-summary{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.filter-chip{display:inline-flex;align-items:center;gap:5px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);color:var(--ink);border-radius:999px;padding:2px 5px 2px 10px;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.filter-chip button{background:none;border:0;color:var(--ink-secondary);cursor:pointer;font-size:13px;line-height:1;padding:0 3px}.filter-chip button:hover{color:var(--ink)}.linkbtn{background:none;border:0;color:var(--accent);cursor:pointer;font-size:11px;padding:0;text-decoration:underline}.switching{color:var(--accent);font-size:12px}.hint-badge{font-size:11px;color:var(--ink-muted);border:1px dashed var(--border-strong);border-radius:999px;padding:3px 10px;cursor:help;white-space:nowrap}.gridwrap{flex:1;overflow:auto;min-height:240px;contain:layout paint}.grid{--tmpl: 184px 62px 92px 100px repeat(var(--cols), minmax(140px, 1fr));min-width:max-content}.grow{display:grid;grid-template-columns:var(--tmpl)}.ghrow{position:sticky;top:0;z-index:3}.gh,.gc{padding:0 10px;display:flex;align-items:center;border-bottom:1px solid var(--hairline)}.gh{background:linear-gradient(var(--surface-raised),var(--surface));height:var(--header-h);flex-direction:column;align-items:stretch;justify-content:center;gap:5px;border-bottom:1px solid var(--border-strong);font-size:10.5px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.gh.right{align-items:flex-end}.gh.sticky-x,.gc.sticky-x{position:sticky;left:0;z-index:2;box-shadow:1px 0 0 var(--hairline),6px 0 12px -8px #000000b3}.gh.sticky-x{z-index:4}.gc{height:var(--row-h);background:var(--page)}.grow.row-even .gc{background:color-mix(in srgb,var(--surface) 55%,var(--page))}.grow:hover .gc{background:var(--surface-hover)}.grow.has-position .gc{background:color-mix(in srgb,var(--position) 9%,var(--page))}.grow.has-position.row-even .gc{background:color-mix(in srgb,var(--position) 11%,var(--surface))}.grow.has-position:hover .gc{background:color-mix(in srgb,var(--position) 17%,var(--surface-hover))}.grow.has-position .gc.sticky-x{box-shadow:inset 3px 0 0 var(--position),1px 0 0 var(--hairline),6px 0 12px -8px #000000b3}.grow.has-position .sym{color:color-mix(in srgb,var(--position) 78%,var(--ink));font-weight:650}.pos-mark{display:inline-block;width:7px;height:7px;flex:none;margin-left:7px;border-radius:2px;background:var(--position);vertical-align:middle;cursor:help}.rownum{display:inline-block;width:30px;flex:none;margin-right:8px;text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11px;color:var(--ink-muted)}.sym{font-weight:600;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.pct-input{width:58px;background:transparent;border:1px solid transparent;border-radius:6px;padding:2px 5px;color:var(--ink);font-family:var(--font-mono);font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;transition:border-color .12s,background .12s}.pct-input:hover{border-color:var(--border)}.pct-input:focus{outline:none;border-color:var(--accent);background:var(--sunken)}.pct-suffix{font-size:14px;font-weight:600;color:var(--accent);font-family:var(--font-mono)}.sortbtn{background:none;border:0;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;padding:0;display:flex;align-items:center;gap:4px;transition:color .12s}.sortbtn:hover{color:var(--ink-secondary)}.sortbtn[data-active="1"]{color:var(--accent)}.col-controls{display:flex;align-items:center;gap:6px;justify-content:flex-end}.filter-btn{background:none;border:1px solid transparent;border-radius:6px;color:var(--ink-muted);cursor:pointer;padding:3px 7px;font-size:11px;line-height:1;display:inline-flex;align-items:center;gap:4px;transition:color .12s,background .12s,border-color .12s}.filter-btn:hover{color:var(--ink);background:var(--surface-hover);border-color:var(--border)}.filter-btn.on{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.gh.filtered{background:linear-gradient(color-mix(in srgb,var(--accent) 14%,var(--surface-raised)),var(--surface));box-shadow:inset 0 -2px 0 var(--accent)}.filter-pop{position:absolute;top:calc(100% + 6px);right:8px;z-index:20;width:178px;background:var(--surface-raised);border-radius:10px;box-shadow:var(--shadow-pop);padding:12px;text-transform:none;letter-spacing:0;animation:popIn .12s ease-out}.filter-pop h4{margin:0 0 9px;font-size:11px;font-weight:600;color:var(--ink-secondary);text-transform:none;letter-spacing:0}.filter-pop .op{display:flex;gap:3px;background:var(--sunken);border-radius:7px;padding:3px;margin-bottom:8px;border:1px solid var(--hairline)}.filter-pop .op button{flex:1;background:none;border:0;border-radius:5px;padding:5px 0;color:var(--ink-muted);cursor:pointer;font-family:var(--font-mono);font-size:13px}.filter-pop .op button[aria-pressed=true]{background:var(--surface-hover);color:var(--accent);box-shadow:inset 0 0 0 1px var(--border)}.filter-pop .val{display:flex;align-items:center;gap:6px}.filter-pop input{flex:1;width:100%;background:var(--sunken);border:1px solid var(--border);border-radius:7px;padding:6px 8px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.filter-pop input:focus{outline:none;border-color:var(--accent)}.filter-pop .val span{color:var(--ink-muted);font-family:var(--font-mono)}.filter-pop .clear{margin-top:9px;width:100%;background:none;border:1px solid var(--border);border-radius:7px;padding:5px 0;color:var(--ink-secondary);cursor:pointer}.filter-pop .clear:hover{background:var(--surface-hover);color:var(--ink)}.cell{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;width:100%;height:28px;padding:0 7px;border-radius:5px;gap:1px;line-height:1.15;cursor:pointer;position:relative;transition:box-shadow .12s}.cell:hover{box-shadow:inset 0 0 0 1px var(--border-strong)}.cell .roi{font-family:var(--font-mono);font-weight:600;font-variant-numeric:tabular-nums;font-size:13px;color:var(--ink)}.cell .sub{font-family:var(--font-mono);font-size:10px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.cell.stale{opacity:.45;filter:saturate(.35)}.cell.stale:before{content:"";position:absolute;top:3px;left:3px;width:4px;height:4px;border-radius:50%;background:var(--warning)}.cell.fallback .sub{color:#5cb3e6;font-style:italic}.cell-tip{position:fixed;z-index:80;pointer-events:none;background:var(--surface-raised);border-radius:8px;box-shadow:var(--shadow-pop);padding:8px 11px;font-family:var(--font-mono);font-size:11px;line-height:1.55;color:var(--ink-muted);animation:popIn .1s ease-out}.cell-tip b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.cell-tip .tip-head{color:var(--ink);font-weight:600;margin-bottom:3px}.cell-tip .tip-fallback{color:#5cb3e6;font-style:italic;margin-bottom:2px}.cell-tip .tip-stale{color:var(--warning);margin-top:4px}.cell-tip .tip-updated{margin-top:5px;padding-top:5px;border-top:1px solid var(--hairline)}.puts-hold-note{margin:6px 14px 0;padding:5px 12px;border-radius:6px;font-size:12px;background:color-mix(in srgb,var(--warning) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--warning) 40%,transparent);color:var(--ink-secondary)}.expiry-bar{display:flex;align-items:center;gap:12px;padding:6px 14px 0}.carry{display:inline-flex;align-items:baseline;gap:8px;padding:4px 12px;border-radius:6px;background:#e0a83e1f;border:1px solid rgba(224,168,62,.5)}.carry-label{font-size:9.5px;font-weight:700;letter-spacing:.06em;color:var(--accent)}.carry-value{font-family:var(--font-mono);font-weight:700;font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums}.carry-detail{font-family:var(--font-mono);font-size:11px;color:var(--ink-muted)}.noliq{color:var(--warning);font-size:9.5px;font-weight:700;letter-spacing:.03em;white-space:nowrap;opacity:.92}.empty{color:var(--ink-muted);font-family:var(--font-mono)}.tracked{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent)}.tracked:after{content:"";position:absolute;inset:3px 3px 3px auto;width:3px;border-radius:2px;background:var(--accent)}.up{color:var(--gain)}.down{color:var(--loss)}.positions{flex:1;overflow:auto;padding:20px}.pos-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.pos-received{display:flex;flex-direction:column;gap:1px;padding:12px 18px;background:linear-gradient(color-mix(in srgb,var(--accent) 14%,var(--surface-raised)),var(--surface));border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:11px;min-width:200px}.pos-received .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-weight:700}.pos-received .val{font-family:var(--font-mono);font-size:24px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.15}.pos-received .sub{font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.pos-syms{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;flex:1}.sym-card{display:flex;flex-direction:column;gap:1px;padding:8px 12px;background:var(--surface-raised);border:1px solid var(--hairline);border-radius:9px;min-width:100px}.sym-card .s{font-size:11px;font-weight:700;color:var(--ink);letter-spacing:.02em}.sym-card .v{font-family:var(--font-mono);font-size:15px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.sym-card .p{font-size:10.5px;font-variant-numeric:tabular-nums}.pos-summary .up{color:var(--gain)}.pos-summary .down{color:var(--loss)}.pos-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--hairline)}.pos-toolbar label{display:flex;align-items:center;gap:7px;color:var(--ink-secondary)}.alert-input,.lots-input{background:var(--sunken);border:1px solid var(--border);border-radius:7px;padding:4px 7px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.alert-input{width:64px;font-weight:600;color:var(--accent)}.lots-input{width:64px}.entry-input{width:78px}.alert-input:focus,.lots-input:focus{outline:none;border-color:var(--accent)}.lots-input::-webkit-inner-spin-button{opacity:0}.lots-input:hover::-webkit-inner-spin-button,.lots-input:focus::-webkit-inner-spin-button{opacity:1}.ptable{width:100%;border-collapse:collapse}.ptable th{text-align:right;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:600;padding:9px 14px;border-bottom:1px solid var(--border-strong);position:sticky;top:0;background:var(--surface);z-index:1}.ptable th:first-child,.ptable td:first-child{text-align:left}.ptable td{padding:10px 14px;border-bottom:1px solid var(--hairline);font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.ptable td:first-child{font-family:var(--font-sans)}.ptable tbody tr{transition:background .12s}.ptable tbody tr:hover td{background:var(--surface-hover)}.pos-spot{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25}.pos-spot-chg{font-size:10.5px;font-variant-numeric:tabular-nums}.ptable tr.breached td{background:color-mix(in srgb,var(--loss) 15%,transparent)}.ptable tr.breached td:first-child{box-shadow:inset 3px 0 0 var(--loss);font-weight:650}.chip{display:inline-block;padding:1px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.04em;background:var(--loss);color:#fff;font-family:var(--font-sans)}.empty-state{color:var(--ink-muted);padding:64px 0;text-align:center;line-height:1.8}.banner{padding:9px 16px;background:color-mix(in srgb,var(--warning) 15%,var(--surface));border-bottom:1px solid var(--hairline);color:var(--ink);font-size:12px}.banner-demo{background:color-mix(in srgb,var(--warning) 20%,var(--surface));border-bottom:2px solid var(--warning)}.banner code{background:var(--sunken);padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:11px}.banner-closed,.banner-live{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 16px}.banner-closed{background:color-mix(in srgb,var(--surface-raised) 90%,var(--page));border-bottom:1px solid var(--border);color:var(--ink-secondary)}.banner-live{background:color-mix(in srgb,var(--gain) 11%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--gain) 32%,transparent);color:var(--ink)}.mb-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.mb-tag.closed{color:var(--ink-muted)}.mb-tag.live{color:var(--gain)}.mb-tag.warm{color:var(--accent)}.mb-text{flex:1;min-width:200px;font-size:12px;line-height:1.5;color:inherit}.mb-text strong{color:var(--ink);font-weight:600}.mb-sub{color:var(--ink-muted)}.mb-btn{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);border-radius:7px;padding:6px 14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:filter .12s,background .12s,color .12s}.mb-btn:hover{filter:brightness(1.08)}.mb-btn:disabled{opacity:.6;cursor:default}.mb-btn.ghost{background:transparent;color:var(--ink-secondary);border-color:var(--border-strong)}.mb-btn.ghost:hover{background:var(--surface-hover);color:var(--ink);filter:none}.feedstatus{position:relative}.feedstatus .status{display:flex;align-items:center;gap:7px;background:none;border:1px solid transparent;border-radius:7px;padding:5px 9px;color:var(--ink-secondary);font-size:12px;cursor:pointer;transition:border-color .12s}.feedstatus .status:hover{border-color:var(--border)}.feedstatus .caret{color:var(--ink-muted);font-size:9px}.feedpanel{position:absolute;top:calc(100% + 8px);right:0;z-index:60;width:340px;background:var(--surface-raised);border-radius:12px;padding:18px;box-shadow:var(--shadow-pop)}.feedpanel h3{margin:0 0 14px;font-size:13px;font-weight:600}.feedpanel dl{margin:0 0 12px;display:grid;gap:11px}.feedpanel dt{font-size:10.5px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.feedpanel dd{margin:3px 0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px}.feedpanel dd .sub{display:block;color:var(--ink-muted);font-size:11px;margin-top:1px}.feedpanel .explain{font-size:11px;line-height:1.6;color:var(--ink-secondary);margin:12px 0 0;padding-top:12px;border-top:1px solid var(--hairline)}.feedpanel .explain.muted{color:var(--ink-muted)}.feedpanel .warn-text{font-size:12px;line-height:1.6;color:var(--warning);margin:8px 0 0}.token-badge{font-size:11px;color:var(--ink-muted);border:1px solid var(--border);border-radius:999px;padding:4px 10px;cursor:pointer;white-space:nowrap;font-family:var(--font-mono);transition:border-color .12s,color .12s}.token-badge:hover{color:var(--ink-secondary);border-color:var(--border-strong)}.token-badge.warn{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 50%,transparent)}.login{display:flex;align-items:center;justify-content:center;min-height:100%;padding:32px 20px}.login-card{width:100%;max-width:560px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:36px;box-shadow:var(--shadow-pop)}.login-card h1{margin:0 0 8px;font-size:22px;letter-spacing:-.01em}.login-card h2{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin:24px 0 6px;font-weight:600}.login-card .lead{color:var(--ink-secondary);line-height:1.6;margin:0 0 24px}.login-card .hint{color:var(--ink-muted);font-size:12px;line-height:1.6;margin:6px 0}.login-card pre{background:var(--sunken);border:1px solid var(--hairline);border-radius:8px;padding:11px 13px;overflow-x:auto;font-family:var(--font-mono);font-size:12px;margin:6px 0 0;color:var(--ink-secondary)}.login-card code{background:var(--sunken);padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:12px}.setup p{color:var(--ink-secondary);line-height:1.6}.btn-primary{display:inline-block;background:var(--accent);color:var(--accent-ink);text-decoration:none;font-weight:600;padding:11px 20px;border-radius:9px;transition:filter .12s}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:disabled{opacity:.6;cursor:default;filter:none}.authform{display:flex;flex-direction:column;gap:14px;margin-top:8px}.authfield{display:flex;flex-direction:column;gap:5px}.authfield span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:600}.authfield input{background:var(--sunken);border:1px solid var(--border);border-radius:8px;padding:10px 12px;color:var(--ink);font-size:14px}.authfield input:focus{outline:none;border-color:var(--accent)}.user-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-secondary);white-space:nowrap}.role-tag{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:999px;padding:1px 6px}.chip.chip-admin{background:var(--accent);color:var(--accent-ink)}.ptable tr.row-selected td{background:var(--accent-soft)}.event-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:7px;flex:none;vertical-align:middle;cursor:help}@keyframes tileIn{0%{opacity:0;transform:translateY(-4px)}}@keyframes popIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}}@media(prefers-reduced-motion:no-preference){.flash-up{animation:flashUp .44s ease-out}.flash-down{animation:flashDown .44s ease-out}.index-tile:nth-child(1){animation-delay:.02s}.index-tile:nth-child(2){animation-delay:.08s}.index-tile:nth-child(3){animation-delay:.14s}.index-tile:nth-child(4){animation-delay:.2s}}@media(prefers-reduced-motion:reduce){.index-tile{animation:none}}@keyframes flashUp{0%{background-color:color-mix(in srgb,var(--gain) 45%,transparent)}}@keyframes flashDown{0%{background-color:color-mix(in srgb,var(--loss) 45%,transparent)}}.mcalc{max-width:1040px;margin:0 auto;padding:14px 16px 48px}.mcalc-intro h2{margin:6px 0;font-size:18px;letter-spacing:-.01em}.mcalc-intro p{margin:0 0 16px;color:var(--ink-muted);font-size:12.5px;line-height:1.65;max-width:680px}.mcalc-panel{background:var(--surface-raised);border:1px solid var(--hairline);border-radius:12px;overflow:hidden}.mcalc-panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--hairline);background:color-mix(in srgb,var(--accent) 6%,transparent)}.mcalc-panel-head .ttl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ink)}.mcalc-panel-head .count{font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.mcalc-panel-foot{display:flex;align-items:center;gap:12px;padding:11px 14px;border-top:1px solid var(--hairline);background:var(--sunken)}.mcalc-panel-foot .add{background:var(--surface-hover);border:1px solid var(--border-strong);border-radius:7px;padding:7px 14px;color:var(--ink);font-weight:600;cursor:pointer;transition:border-color .12s,background .12s}.mcalc-panel-foot .add:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-hover))}.mcalc-hint{margin:6px 2px 0;font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.mcalc-legs{width:100%;border-collapse:collapse;margin-top:14px;font-size:12px;font-variant-numeric:tabular-nums}.mcalc-legs th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);padding:4px 8px;border-bottom:1px solid var(--hairline)}.mcalc-legs td{padding:6px 8px;border-bottom:1px solid var(--hairline)}.mcalc-legs .r{text-align:right}.mcalc-legs td.buy{color:var(--gain);font-weight:600}.mcalc-legs td.sell{color:var(--loss);font-weight:600}.mcalc-legs .tag{margin-left:6px;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);border:1px solid var(--hairline);border-radius:4px;padding:0 4px}.mcalc-legs-wrap{overflow-x:auto}.mcalc-legs.edit{min-width:824px;margin-top:0;table-layout:fixed}.mcalc-legs.edit th{padding:9px 8px;font-size:9.5px;letter-spacing:.05em}.mcalc-legs.edit td{padding:6px 8px;vertical-align:middle;border-bottom:1px solid var(--hairline)}.mcalc-legs.edit tbody tr:last-child td{border-bottom:0}.mcalc-legs.edit tbody tr:hover td{background:var(--surface-hover)}.mcalc-legs.edit select,.mcalc-legs.edit input{background:var(--sunken);border:1px solid var(--hairline);border-radius:6px;padding:6px 7px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;box-sizing:border-box;width:100%;transition:border-color .12s}.mcalc-legs.edit select:focus,.mcalc-legs.edit input:focus{outline:none;border-color:var(--accent)}.mcalc-legs.edit select:disabled,.mcalc-legs.edit input:disabled{opacity:.4}.mcalc-legs.edit input.qty{text-align:right}.mcalc-legs.edit select.buy{color:var(--gain);font-weight:700}.mcalc-legs.edit select.sell{color:var(--loss);font-weight:700}.mcalc-legs.edit .lots-cell{color:var(--ink-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mcalc-legs.edit tr.incomplete td:first-child{box-shadow:inset 2px 0 color-mix(in srgb,var(--accent) 60%,transparent)}.mcalc-legs.edit .rm{border:0;background:transparent;color:var(--ink-muted);font-size:16px;line-height:1;cursor:pointer;padding:2px 7px;border-radius:6px;transition:color .12s,background .12s}.mcalc-legs.edit .rm:hover{color:var(--loss);background:color-mix(in srgb,var(--loss) 14%,transparent)}.mcalc-actions{display:flex;align-items:center;gap:14px;margin-top:16px}.mcalc-actions .primary{background:var(--accent);color:#14110a;border:0;border-radius:8px;padding:10px 18px;font-weight:700;cursor:pointer}.mcalc-actions .primary:disabled{opacity:.45;cursor:default}.mcalc-result{margin-top:22px}.mcalc-total{display:flex;flex-direction:column;gap:2px;padding:18px 20px;background:linear-gradient(color-mix(in srgb,var(--accent) 14%,var(--surface-raised)),var(--surface));border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:12px}.mcalc-total .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--accent);font-weight:700}.mcalc-total .val{font-family:var(--font-mono);font-size:30px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.15}.mcalc-total .benefit,.mcalc-group .benefit{margin-top:4px;font-size:11px;color:var(--gain);font-variant-numeric:tabular-nums}.mcalc-group{margin-top:16px;padding:10px 14px;background:var(--surface-raised);border:1px solid var(--hairline);border-radius:10px}.mcalc-group .ghead{display:flex;align-items:baseline;justify-content:space-between}.mcalc-group .gsym{font-weight:700;font-size:13px}.mcalc-group .gmargin{font-family:var(--font-mono);font-weight:700;font-variant-numeric:tabular-nums}.mcalc-group .mcalc-legs{margin-top:6px}.mcalc-group .mcalc-legs td{border-bottom:1px solid var(--sunken)}.mcalc-legs.result td.strike{font-weight:600;color:var(--ink)}.mcalc-legs.result td.exp{color:var(--ink-muted)}.sidechip{display:inline-block;min-width:42px;text-align:center;font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 7px;border-radius:5px}.sidechip.buy{color:var(--gain);background:color-mix(in srgb,var(--gain) 15%,transparent)}.sidechip.sell{color:var(--loss);background:color-mix(in srgb,var(--loss) 15%,transparent)}
