:root{color-scheme:dark;font-family:Segoe UI Variable Display,Bahnschrift,Aptos,Trebuchet MS,sans-serif;line-height:1.5;font-weight:400;background:radial-gradient(circle at top left,rgba(49,173,196,.18),transparent 36%),radial-gradient(circle at top right,rgba(255,150,87,.16),transparent 26%),linear-gradient(160deg,#08131f,#0b1722 38%,#101d29);color:#eff6fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--surface: rgba(10, 25, 38, .76);--surface-strong: rgba(11, 30, 45, .94);--surface-muted: rgba(255, 255, 255, .05);--border: rgba(170, 204, 225, .14);--text-strong: #f6fbff;--text-main: #d5e4ee;--text-muted: #8ca4b5;--teal: #39c8c2;--amber: #ffbe64;--danger: #ff6b6b;--danger-soft: rgba(255, 107, 107, .18);--success: #8de38d;--success-soft: rgba(141, 227, 141, .16);--yes: #8a79ff;--yes-soft: rgba(138, 121, 255, .18);--no-soft: rgba(95, 224, 173, .18);--shadow: 0 26px 60px rgba(0, 0, 0, .32)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}h1,h2,h3,p{margin:0}.app-shell{min-height:100vh;overflow:hidden;position:relative}.ambient{position:fixed;width:34rem;height:34rem;border-radius:999px;filter:blur(90px);opacity:.25;pointer-events:none}.ambient-left{top:-9rem;left:-8rem;background:#48c4d76b}.ambient-right{right:-9rem;top:12rem;background:#ff9d6352}.dashboard{position:relative;z-index:1;width:min(1460px,calc(100% - 32px));margin:0 auto;padding:28px 0 32px}.surface,.surface-muted{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.surface-muted{background:#081118cc}.topbar,.city-tabs,.metric-card,.metar-strip,.table-panel,.summary-card,.diagnostic-panel,.orderbook-depth-panel,.status-bar{border-radius:24px}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 28px}.eyebrow{margin:0 0 8px;color:var(--teal);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}h1{font-size:clamp(2rem,5vw,3rem);line-height:1}h2{font-size:clamp(1.7rem,3vw,2.5rem);margin-bottom:12px}h3{font-size:1.35rem}.live-cluster{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}.budget-chip,.live-pill,.hero-badge,.trend-pill,.confidence-pill,.signal-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:.58rem .95rem}.budget-chip{background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.chip-label,.badge-label{color:var(--text-muted);font-size:.78rem}.live-pill{background:#0f3b36b8;border:1px solid rgba(97,245,166,.16)}.live-dot{width:10px;height:10px;border-radius:999px;background:#65ffb8;box-shadow:0 0 0 5px #65ffb829;animation:pulse 1.8s infinite ease-in-out}.alert-strip{display:grid;gap:12px;margin-top:18px}.alert-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:18px;border:1px solid transparent;text-align:left;transition:transform .16s ease,border-color .16s ease}.alert-card:hover{transform:translateY(-1px)}.confidence-high{background:linear-gradient(90deg,#6e1c1cdb,#431212cc);border-color:#ff929238}.confidence-med{background:linear-gradient(90deg,#14442fd6,#0f2f23c7);border-color:#75ffaa2e}.confidence-emerald{background:linear-gradient(90deg,#104639d6,#0a3128cc);border-color:#6ef6bd33}.confidence-blue{background:linear-gradient(90deg,#14355cd6,#0e2342c7);border-color:#7aaeff2e}.confidence-amber{background:linear-gradient(90deg,#5c3e12d6,#43290cc7);border-color:#ffc45f2e}.confidence-slate{background:linear-gradient(90deg,#36404ed6,#252e3bc7);border-color:#bcc9d424}.alert-prefix{color:#ffffffb3;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}.alert-main{flex:1;font-weight:700}.alert-size{color:#ffffffd6}.alert-empty{padding:16px 18px;color:var(--text-muted)}.city-tabs{display:flex;gap:10px;margin-top:18px;padding:12px;overflow-x:auto}.city-tab{display:inline-flex;align-items:center;gap:10px;border:1px solid transparent;background:transparent;color:var(--text-main);padding:12px 16px;border-radius:16px;white-space:nowrap;transition:background .16s ease,border-color .16s ease,transform .16s ease}.city-tab.tier-b{border-color:#fbbf2438;background:#fbbf240d}.city-tab.tier-c{border-color:#94a3b833;background:#47556924;color:var(--text-muted)}.city-tab:hover{transform:translateY(-1px)}.city-tab.active{background:#38c6bf1f;border-color:#54e1d92e;color:var(--text-strong)}.city-tab.active.tier-b{background:#fbbf241f;border-color:#fbbf2457}.city-tab.active.tier-c{background:#47556938;border-color:#94a3b857;color:var(--text-main)}.tab-count{color:var(--text-muted)}.tier-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.2rem .55rem;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.tier-chip.tier-a{background:#5eead424;color:#97f9d8}.tier-chip.tier-b{background:#fbbf2429;color:#ffd47c}.tier-chip.tier-c{background:#94a3b829;color:#d2dae6}.status-dot{width:10px;height:10px;border-radius:999px}.status-dot.hot{background:var(--danger);box-shadow:0 0 0 5px #ff6b6b24}.status-dot.harvest{background:#fbbf24;box-shadow:0 0 0 5px #fbbf2429}.status-dot.warm{background:var(--success);box-shadow:0 0 0 5px #8de38d1f}.status-dot.idle{background:#5b6475}.hero-panel{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-top:22px;align-items:stretch}.hero-copy,.hero-badges{padding:24px 28px;border-radius:24px;border:1px solid var(--border);background:linear-gradient(135deg,#ffffff0a,#ffffff05),#0b1e2df0;box-shadow:var(--shadow)}.hero-summary{max-width:66ch;color:var(--text-main)}.hero-badges{display:flex;flex-direction:column;justify-content:center;gap:14px}.hero-badge{justify-content:space-between;padding-inline:0;border-radius:0;background:transparent}.budget-meter{display:grid;gap:8px;color:var(--text-muted)}.budget-meter-track{width:100%;height:10px;border-radius:999px;background:#ffffff14;overflow:hidden}.budget-meter-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#39c8c2,#ffb766)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:18px}.metric-card,.summary-card{padding:22px;display:grid;gap:10px}.metric-label{color:var(--text-muted);font-size:.88rem;text-transform:uppercase;letter-spacing:.08em}.metric-value{font-size:clamp(1.7rem,4vw,2.55rem);line-height:1;color:var(--text-strong)}.metar-strip{margin-top:18px;padding:18px 22px;display:flex;gap:18px;flex-wrap:wrap;align-items:center}.trend-pill{margin-left:auto;background:#ffffff0a}.trend-pill.positive{background:var(--success-soft);color:var(--success)}.trend-pill.negative{background:var(--danger-soft);color:#ff9898}.trend-pill.neutral{color:var(--text-muted)}.table-panel{margin-top:18px;padding:24px}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:18px}.section-heading.compact{margin-bottom:14px}.heading-copy{color:var(--text-muted)}.table-wrapper{overflow-x:auto}table{width:100%;min-width:1080px;border-collapse:collapse}th,td{padding:16px 12px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;vertical-align:middle}th{color:var(--text-muted);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.signal-row{transition:background .16s ease,transform .16s ease}.signal-row:hover{background:#ffffff0a}.signal-row.is-hot{box-shadow:inset 4px 0 #ffbe64e0;background:#ffbf660d}.signal-row.is-harvest{box-shadow:inset 4px 0 #fbbf24eb;background:#fbbf2414}.signal-row.is-peak{background:#39c8c214}.signal-row.is-impossible{color:#6f8292}.bin-label.emphasis{font-weight:800;color:var(--text-strong)}.edge-cell{display:grid;gap:8px}.edge-meter,.diagnostic-meter{width:100%;max-width:120px;height:7px;border-radius:999px;background:#ffffff14;overflow:hidden}.edge-fill,.diagnostic-meter-fill{height:100%;border-radius:inherit}.edge-fill.positive,.diagnostic-meter-fill{background:linear-gradient(90deg,#34d399,#7cf0c8)}.edge-fill.negative{background:linear-gradient(90deg,#ff7a7a,#ffadad)}.positive-text{color:#8dedbc}.negative-text{color:#ff9595}.size-cell{display:grid;gap:4px;min-width:92px}.size-detail{display:block;color:var(--text-muted);font-size:.76rem;line-height:1.2;white-space:nowrap}.size-blocked{color:#ffb4a8;font-weight:800}.confidence-pill{font-weight:700;font-size:.78rem}.confidence-pill.high{background:#ff6b6b24;color:#ffadad}.confidence-pill.med{background:#8de38d24;color:#b4f3b4}.confidence-pill.low{background:#ffffff0f;color:#bcc9d4}.confidence-score{margin-top:8px;color:var(--text-muted);font-size:.8rem}.signal-pill{font-weight:700}.signal-pill.side-yes{background:var(--yes-soft);color:#cfc6ff}.signal-pill.side-no{background:var(--no-soft);color:#b5f8de}.signal-pill.side-skip{background:#ffffff0f;color:var(--text-muted)}.empty-row td{color:var(--text-muted);text-align:center;padding-block:28px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.diagnostic-panel{margin-top:18px;padding:24px}.diagnostic-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.diagnostic-card{border-radius:18px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;padding:18px}.diagnostic-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.diagnostic-type{color:var(--amber)}.diagnostic-empty{color:var(--text-muted)}.status-bar{margin-top:18px;padding:18px 20px;display:flex;flex-wrap:wrap;gap:10px 18px;color:var(--text-main)}.status-bar span{color:var(--text-muted)}.orderbook-depth-panel{margin-top:18px;padding:20px}.orderbook-depth-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.orderbook-depth-grid>div{min-width:0;display:grid;gap:5px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;padding:14px}.orderbook-depth-grid strong{color:var(--text-strong);font-size:1.05rem;overflow-wrap:anywhere}.portfolio-snapshot{display:grid;gap:4px;min-width:220px;font-size:.82rem}.snapshot-line{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--text-main)}.snapshot-line.muted{color:var(--text-muted)}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.72}}@media (max-width: 1180px){.hero-panel{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 920px){.summary-grid{grid-template-columns:1fr}.orderbook-depth-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar{flex-direction:column;align-items:flex-start}.live-cluster{justify-content:flex-start}}@media (max-width: 768px){.dashboard{width:min(100% - 20px,100%);padding-top:16px}.topbar,.hero-copy,.hero-badges,.metric-card,.table-panel,.diagnostic-panel,.status-bar{padding-inline:18px}.card-grid{grid-template-columns:1fr}.metar-strip{padding:16px 18px}.trend-pill{margin-left:0}table{min-width:940px}.orderbook-depth-grid{grid-template-columns:1fr}}.topbar-copy{margin-top:.9rem;max-width:62ch;color:var(--text-main)}.alert-card{align-items:stretch}.alert-jump{flex:1;display:flex;align-items:center;gap:14px;border:0;background:transparent;padding:0;text-align:left}.alert-badge{font-size:.9rem;line-height:1;opacity:.9}.alert-link,.primary-link,.disabled-link{display:inline-flex;align-items:center;justify-content:center;min-width:168px;padding:.8rem 1rem;border-radius:14px;font-weight:700;text-decoration:none;white-space:nowrap}.alert-link{background:#ffffff1f;border:1px solid rgba(255,255,255,.16);color:var(--text-strong)}.alert-link:hover,.primary-link:hover{filter:brightness(1.05)}.date-tabs,.context-panel,.action-panel{border-radius:24px}.date-tabs{display:flex;gap:10px;margin-top:18px;padding:12px;overflow-x:auto}.date-tab{border:1px solid transparent;background:transparent;color:var(--text-main);padding:12px 16px;border-radius:16px;white-space:nowrap}.date-tab.active{background:#ffbe6424;border-color:#ffbe643d;color:var(--text-strong)}.status-dot.active{background:var(--success);box-shadow:0 0 0 5px #8de38d1f}.context-panel,.action-panel{display:grid;grid-template-columns:1.7fr 1fr;gap:18px;align-items:center;margin-top:18px;padding:24px 28px}.context-date{color:var(--amber)}.context-copy{margin-top:.75rem;max-width:66ch;color:var(--text-main)}.context-metrics{display:grid;gap:12px}.context-metrics .hero-badge{justify-content:space-between;padding:.8rem .95rem;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.context-metrics .hero-badge.tier-badge.tier-b{border-color:#fbbf2447;background:#fbbf2414}.context-metrics .hero-badge.tier-badge.tier-c{border-color:#94a3b83d;background:#4755692e}.action-panel{margin-top:18px}.primary-link{justify-self:end;background:linear-gradient(135deg,#39c8c2e6,#ffbe64eb);color:#07111a}.disabled-link{justify-self:end;background:#ffffff0d;border:1px dashed rgba(255,255,255,.16);color:var(--text-muted)}.unavailable-panel{display:grid;gap:8px;padding:1.2rem 0;color:var(--text-main)}.muted-text{color:var(--text-muted)}.loading-panel,.bankroll-panel{border-radius:24px}.loading-panel{margin-top:18px;padding:2rem}.bankroll-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:center;margin-top:18px;padding:20px 24px}.bankroll-form,.bankroll-summary{display:grid;gap:10px}.bankroll-label{color:var(--text-muted);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.bankroll-controls{display:flex;align-items:center;gap:10px}.bankroll-prefix{color:var(--text-muted);font-weight:700}.bankroll-input{width:180px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--text-strong);border-radius:14px;padding:.8rem .95rem}.bankroll-button{border:0;border-radius:14px;background:linear-gradient(135deg,#39c8c2f2,#ffbe64f2);color:#07111a;font-weight:800;padding:.8rem 1rem}.bankroll-summary strong{color:var(--text-strong)}.confidence-cell{display:grid;gap:8px;min-width:84px;cursor:help}.confidence-track{width:100%;height:7px;border-radius:999px;background:#ffffff14;overflow:hidden}.confidence-fill{height:100%;border-radius:inherit}.confidence-pill.emerald{background:#5eead429;color:#8af5d6}.confidence-pill.blue{background:#60a5fa29;color:#9dcbff}.confidence-pill.amber{background:#fbbf242e;color:#ffd47c}.confidence-pill.yellow{background:#facc1524;color:#ffe68a}.confidence-pill.slate{background:#94a3b829;color:#d2dae6}.confidence-fill.emerald{background:linear-gradient(90deg,#34d399,#6ee7b7)}.confidence-fill.blue{background:linear-gradient(90deg,#60a5fa,#93c5fd)}.confidence-fill.amber{background:linear-gradient(90deg,#f59e0b,#fcd34d)}.confidence-fill.yellow{background:linear-gradient(90deg,#eab308,#fde047)}.confidence-fill.slate{background:linear-gradient(90deg,#64748b,#94a3b8)}.confidence-caption{color:var(--text-muted);font-size:.72rem;line-height:1.2}.signal-pill.side-buy-yes{background:var(--yes-soft);color:#cfc6ff}.signal-pill.side-buy-no{background:var(--no-soft);color:#b5f8de}.reason-cell{max-width:320px;color:var(--text-main);line-height:1.45}.warning-chip{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .5rem;font-size:.72rem;font-weight:700;letter-spacing:.04em}.warning-chip.medium{background:#ffbe6429;color:#ffd08b}.warning-chip.high{background:#ff6b6b29;color:#ffb0b0}.warning-copy{margin-top:.85rem;color:#ffd08b}.warning-copy.compact{margin-top:.35rem;font-size:.82rem;line-height:1.4}.signal-stack{display:grid;gap:4px}.signal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.trust-badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:.18rem .5rem;font-size:.7rem;font-weight:700;letter-spacing:.04em;white-space:nowrap}.trust-badge.high{background:#34d39929;color:#9ff3cf}.trust-badge.medium{background:#facc1524;color:#ffe68a}.trust-badge.low{background:#f8717129;color:#ffb4b4}.metric-subtle{color:var(--text-muted);font-size:.82rem}.paper-cell{min-width:170px}.paper-actions{display:flex;gap:8px;flex-wrap:wrap}.paper-button{border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:var(--text-main);border-radius:12px;padding:.45rem .7rem;font-size:.8rem;font-weight:700;transition:border-color .16s ease,background .16s ease,color .16s ease}.paper-button:hover{border-color:#39c8c266;color:var(--text-strong)}.paper-button.active{background:#39c8c22e;border-color:#39c8c26b;color:var(--text-strong)}.paper-button:disabled{cursor:not-allowed;opacity:.45}.paper-button:disabled:hover{border-color:#ffffff1f;color:var(--text-main)}.compact-alert-strip{gap:8px}.alert-group{display:grid;gap:8px}.alert-group-title{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.alert-group-title.alpha{color:#ffb0b0}.alert-group-title.harvest{color:#b9f5c2}.alert-group-list{display:grid;gap:8px}.alert-card.compact{min-height:32px;height:32px;padding:0 12px;border-radius:999px;gap:10px;overflow:hidden;white-space:nowrap}.compact-alert-dot{width:8px;height:8px;border-radius:999px;flex:0 0 auto}.compact-alert-dot.hot,.compact-alert-dot.alpha{background:#ff7a7a;box-shadow:0 0 0 4px #ff7a7a1f}.compact-alert-dot.harvest{background:#86efac;box-shadow:0 0 0 4px #86efac24}.compact-alert-dot.warm{background:#86efac;box-shadow:0 0 0 4px #86efac1f}.compact-alert-text{overflow:hidden;text-overflow:ellipsis;font-size:.88rem;font-weight:700}.alert-more{justify-self:start;border:0;border-radius:999px;background:#ffffff14;color:var(--text-main);padding:.45rem .8rem;font-weight:700}.quick-stat-line{color:var(--text-strong)}.paper-button.accept{background:#ffbe6429;border-color:#ffbe644d;color:#ffe4b3}.paper-button.accept:hover{border-color:#ffbe647a}.paper-button.accepted{background:#86efac29;border-color:#86efac59;color:#c6f6d5;cursor:default}.paper-button.delete{background:#ff7a7a1f;border-color:#ff7a7a47;color:#ffb0b0}.paper-button.delete:hover{border-color:#ff7a7a75;color:#ffd0d0}.inline-link{color:var(--amber);text-decoration:none;font-weight:700}.inline-link:hover{color:#ffd79a}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.portfolio-view-panel{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;align-items:center;margin-top:18px;padding:20px 24px;border-radius:24px}.portfolio-view-switcher{margin-top:0;justify-content:flex-end;padding:0;background:transparent}.portfolio-card{padding:24px;border-radius:24px}.sleeve-card.alpha{border:1px solid rgba(255,122,122,.18)}.sleeve-card.harvest{border:1px solid rgba(134,239,172,.18)}.stats-list,.breakdown-list{display:grid;gap:12px}.stats-line,.breakdown-line{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:10px;align-items:center;padding:12px 14px;border-radius:16px;background:#ffffff0a}.stats-line{grid-template-columns:1fr auto}.position-status{display:inline-flex;align-items:center;border-radius:999px;padding:.35rem .7rem;font-size:.8rem;font-weight:700}.position-status.pending,.position-status[class*="d+"]{background:#ffbe6424;color:#ffd08b}.position-status.won{background:#86efac29;color:#c6f6d5}.position-status.lost{background:#ff7a7a29;color:#ffb0b0}.time-stack{display:grid;gap:6px}.time-chip-row{display:flex;flex-wrap:wrap;gap:6px}.record-chip{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700;letter-spacing:.02em}.record-chip.manual{background:#ffbe6424;color:#ffd08b}.record-chip.auto{background:#86efac29;color:#c6f6d5}.record-chip.era{background:#ffffff14;color:var(--text-main)}.pnl-chart svg{width:100%;height:240px}.pnl-line{fill:none;stroke:#39c8c2;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.pnl-zero-line{stroke:#ffffff2e;stroke-dasharray:5 5}.pnl-dot{fill:#ffbe64}.pnl-label{fill:var(--text-muted);font-size:11px}.pnl-empty{color:var(--text-muted);padding:1rem 0}.highlight-flash{animation:rowFlash 2s ease-out}@keyframes rowFlash{0%{background:#ffbe6447}to{background:transparent}}@media (max-width: 1180px){.bankroll-panel,.context-panel,.action-panel,.portfolio-view-panel{grid-template-columns:1fr}.portfolio-view-switcher{justify-content:flex-start}.primary-link,.disabled-link{justify-self:start}.portfolio-grid{grid-template-columns:1fr}}@media (max-width: 768px){.alert-card{flex-direction:column;align-items:stretch}.alert-jump{align-items:flex-start;flex-wrap:wrap}.alert-link,.primary-link,.disabled-link{min-width:100%}.context-panel,.action-panel,.bankroll-panel{padding-inline:18px}.alert-card.compact{height:auto;min-height:32px;white-space:normal;align-items:flex-start;padding-block:8px}.compact-alert-text{white-space:normal}.breakdown-line{grid-template-columns:1fr}}
