*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#0a0a0a;color:#f7f7f7}.page-shell{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(125,73,246,.25),transparent 40%),radial-gradient(circle at 82% 4%,rgba(52,211,153,.14),transparent 35%),#0a0a0a}.ambient-glow{position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,#ffffff0a,#fff0)}.dashboard{position:relative;z-index:1;max-width:1320px;margin:0 auto;padding:2.5rem 1rem}.dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.9rem}.col-1{grid-column:span 1}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-5{grid-column:span 5}.col-6{grid-column:span 6}.col-7{grid-column:span 7}.col-8{grid-column:span 8}.col-9{grid-column:span 9}.col-10{grid-column:span 10}.col-11{grid-column:span 11}.col-12{grid-column:span 12}.pane-card{height:440px;display:flex;flex-direction:column}.pane-table-wrap{margin-top:.5rem;overflow:auto;flex:1}.compact-card{min-height:150px}.window-line{margin:.45rem 0 0;color:#d8d8d8}.countdown-pill{display:inline-block;border:1px solid rgba(196,181,253,.65);border-radius:999px;padding:.1rem .55rem;margin-left:.35rem;background:#6d28d933;color:#f3e8ff;font-weight:650;letter-spacing:.03em}.top-bar{border:1px solid rgba(255,255,255,.12);background:#141414b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;padding:1rem 1.2rem;margin-bottom:.9rem}.top-bar h1{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:.015em}.top-bar p{margin:.35rem 0 0;color:#b5b5b5;font-size:.96rem}.top-bar-row{display:flex;align-items:center;justify-content:space-between;gap:1.1rem}.top-bar-actions{display:flex;align-items:center;gap:.75rem}.portfolio-pill{border-color:#34d3998c;background:linear-gradient(135deg,#065f4659,#05966933)}.portfolio-summary-header{align-items:center}.portfolio-total-pills{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.summary-total-pill{display:inline-flex;align-items:center;gap:.55rem;border:1px solid rgba(52,211,153,.55);border-radius:999px;padding:.45rem .75rem;background:linear-gradient(135deg,#065f4659,#05966933);box-shadow:inset 0 0 0 1px #34d3991f;white-space:nowrap;flex-shrink:0}.summary-total-pill-secondary{border-color:#a78bfa8c;background:linear-gradient(135deg,#4c1d954d,#6d28d938);box-shadow:inset 0 0 0 1px #a78bfa29}.summary-total-pill-secondary>span{color:#ddd6fe}.summary-total-pill-secondary>strong{color:#faf5ff}.summary-total-pill>span{color:#a7f3d0;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.summary-total-pill>strong{font-size:1.12rem;font-weight:700;color:#ecfdf5;font-variant-numeric:tabular-nums}.summary-total-pill-muted{opacity:.55}.summary-total-pill-muted>strong{font-weight:600;color:#a7f3d0}.sidebar-summary-body{margin-top:.75rem}.summary-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.summary-kpi{border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:.55rem .65rem;background:#ffffff08;display:flex;flex-direction:column;gap:.2rem;min-width:0}.summary-kpi--tight{padding:.45rem .55rem}.summary-kpi-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#8c8c8c;line-height:1.25}.summary-kpi-value{font-size:1.2rem;font-weight:700;color:#f0f0f0;font-variant-numeric:tabular-nums;line-height:1.15}.summary-kpi--tight .summary-kpi-value{font-size:1.05rem}.summary-footnote{margin:.65rem 0 0;padding-top:.55rem;border-top:1px solid rgba(255,255,255,.08);font-size:.78rem;color:#949494;line-height:1.45}.logs-summary-sections{margin-top:.65rem;display:flex;flex-direction:column;gap:.65rem}.logs-summary-scope-note{margin:0;font-size:.78rem;color:#8f8f8f;line-height:1.4}.logs-summary-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.logs-summary-bands-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;align-items:start}.logs-summary-block{border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.55rem .65rem .6rem;background:#00000038}.logs-summary-block-title{margin:0 0 .45rem;font-size:.68rem;font-weight:650;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af}.logs-band-chip-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.logs-band-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.22rem .45rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;font-size:.78rem}.logs-band-chip-name{color:#c6c6c6;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logs-band-chip-count{font-weight:700;font-variant-numeric:tabular-nums;color:#fafafa}.logs-summary-empty{margin:0;font-size:.82rem;color:#8a8a8a}.btc-pill{display:inline-flex;align-items:center;gap:.6rem;border:1px solid rgba(196,181,253,.55);border-radius:999px;padding:.5rem .75rem;background:linear-gradient(135deg,#4c1d9547,#6d28d92e);box-shadow:inset 0 0 0 1px #c4b5fd1f}.btc-pill span{color:#ddd6fe;font-size:.8rem;font-weight:600;letter-spacing:.04em}.btc-pill strong{font-size:1.18rem;font-weight:700;color:#faf5ff}.logout-button{margin-top:0;border:1px solid rgba(255,255,255,.2);background:#ffffff05;color:#ddd;border-radius:8px;padding:.4rem .75rem;cursor:pointer}.logout-button:hover{border-color:#ffffff59}.card{border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:1rem 1.2rem;margin:0;background:#131313d6;box-shadow:0 10px 30px #00000040;overflow-x:auto}.card h2{margin:0;color:#a7a7a7;font-size:.86rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.metric{margin:.55rem 0 0;font-size:1.65rem;font-weight:650;color:#fff}.spread{font-size:1.2rem;font-weight:550;color:#ddd6fe}.refresh-button{border:1px solid rgba(167,139,250,.7);background:linear-gradient(135deg,#7c3aed66,#6d28d94d);color:#f5f3ff;cursor:pointer;padding:.6rem .95rem;border-radius:10px;font-weight:600;transition:transform .12s ease,border-color .12s ease}.refresh-button:hover:not(:disabled){transform:translateY(-1px);border-color:#c4b5fdf2}.refresh-button:disabled{opacity:.7;cursor:wait}.tab-row{display:flex;gap:.6rem;margin:.85rem 0}.top-bar-tabs{margin:.6rem 0 0}.tab-button{border:1px solid rgba(255,255,255,.22);background:#ffffff0a;color:#f4f4f5;border-radius:10px;padding:.5rem .85rem;cursor:pointer;font-weight:600}.tab-button-active{border-color:#c4b5fde6;background:#6d28d94d}.bot-control-row{display:flex;align-items:center;gap:.8rem;margin:.8rem 0}.bot-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.bot-timer-block{display:grid;gap:.25rem;justify-items:end}.bot-timer-block .window-line{margin:0;text-align:right}.toggle-button{border-radius:999px;min-width:82px;border:1px solid transparent;padding:.4rem .8rem;font-weight:700;cursor:pointer;color:#fff}.toggle-on{background:#05966952;border-color:#10b981e6}.toggle-off{background:#b91c1c47;border-color:#f87171e6}.bot-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:.8rem}.bot-input-grid label{display:grid;gap:.35rem;color:#d4d4d4;font-size:.9rem}.bot-input-grid input{border:1px solid rgba(255,255,255,.16);background:#0f0f0fe6;color:#fff;border-radius:8px;padding:.5rem .6rem}.bot-checkbox-row{display:flex;align-items:center;gap:.55rem;margin:.2rem 0 .8rem;color:#d4d4d4;font-size:.9rem}.bot-next-size-note{margin:0 0 .75rem}.form-dirty-note{margin:0 0 .6rem}.bot-actions-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:1.5rem;margin-bottom:.8rem}.form-status-pill{display:inline-block;border-radius:999px;padding:.2rem .6rem;font-size:.78rem;font-weight:650;letter-spacing:.02em}.form-status-editing{border:1px solid rgba(251,191,36,.7);background:#d9770633;color:#fef3c7}.form-status-saving{border:1px solid rgba(147,197,253,.75);background:#2563eb38;color:#dbeafe}.form-status-saved{border:1px solid rgba(52,211,153,.75);background:#05966938;color:#d1fae5}.form-status-error{border:1px solid rgba(248,113,113,.75);background:#b91c1c3d;color:#fee2e2}.secondary-button{margin-left:.6rem;border-color:#ffffff38;background:#ffffff0d}.run-now-button{margin-right:.6rem}.error{margin-top:.85rem;color:#fda4af}.header-error{margin-top:.55rem;margin-bottom:0}.header-live-meta{margin:.45rem 0 0;font-size:.82rem}.tab-description-card{margin:.85rem 0}.tab-description-card h2{margin-top:0}.logs-summary-export-button{margin-left:0}.login-card{max-width:460px;margin:3rem auto 0}.login-card h1{margin:0}.muted-text{color:#b5b5b5}.login-form{display:grid;gap:.8rem}.login-form label{display:grid;gap:.35rem;color:#d4d4d4;font-size:.9rem}.login-form input{border:1px solid rgba(255,255,255,.16);background:#0f0f0fe6;color:#fff;border-radius:9px;padding:.55rem .65rem}.snapshot-input{width:100%;margin-top:.5rem;margin-bottom:.75rem;border:1px solid rgba(255,255,255,.16);background:#0f0f0fe6;color:#fff;border-radius:9px;padding:.65rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;resize:vertical}.market-table{width:100%;border-collapse:collapse;font-size:.9rem}.market-table th,.market-table td{text-align:left;border-bottom:1px solid rgba(255,255,255,.1);padding:.5rem .35rem}.market-table th{color:#b5b5b5;font-weight:600}.excluded-contract-row td,.partial-contract-row td{color:#8d8d8d;font-style:italic;opacity:.85}.spread-table{margin-top:.8rem}.table-caption{margin:.35rem 0 .55rem;font-size:.82rem;line-height:1.35}.table-toggle{display:inline-flex;align-items:center;gap:.45rem;margin-bottom:.55rem;color:#c8c8c8;font-size:.82rem}.rank-score-cell{font-size:.78rem;line-height:1.25;vertical-align:top;max-width:6.5rem}.rank-score-value{display:block;font-weight:650;color:#faf5ff}.rank-score-hint{display:block;margin-top:.1rem;color:#a3a3a3;font-size:.72rem}.table-scroll-lg{max-height:360px;overflow:auto}.top-pick-row{background:#34d3991f}.selected-row{outline:1px solid rgba(196,181,253,.65);background:#7c3aed1f}.table-action-button{border:1px solid rgba(255,255,255,.22);background:#ffffff0a;color:#f4f4f5;border-radius:8px;padding:.35rem .6rem;cursor:pointer}.table-action-button:hover{border-color:#c4b5fdb3}.row-state-pill{display:inline-block;border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:600;letter-spacing:.02em}.active-pill{border:1px solid rgba(196,181,253,.65);color:#e9ddff;background:#6d28d940}.selected-pill{border:1px solid rgba(52,211,153,.5);color:#ccfbf1;background:#0d94883d;margin-bottom:.45rem}.payoff-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.8rem}.payoff-block{border:1px solid rgba(255,255,255,.1);background:#ffffff05;border-radius:12px;padding:.75rem}.payoff-block hr{border:0;border-top:1px solid rgba(255,255,255,.2);margin:.55rem 0 .65rem}.payoff-block-explanation{border-color:#a78bfa59;background:#6d28d91f}.payoff-block-explanation hr{border-top-color:#a78bfa59}.payoff-block-both-win{border-color:#34d39959;background:#10b9811f}.payoff-block-both-win hr{border-top-color:#34d39959}.payoff-block-one-lose{border-color:#fb718566;background:#be185d1f}.payoff-block-one-lose hr{border-top-color:#fb718566}.payoff-block-break-even{border-color:#fbbf2466;background:#d977061f}.payoff-block-break-even hr{border-top-color:#fbbf2466}.payoff-title{margin:0 0 .45rem;font-weight:600}.payoff-main-number{margin:.25rem 0 0;font-size:1.9rem;font-weight:700;letter-spacing:.01em;color:#fff}.payoff-main-label{margin:.15rem 0 .5rem;font-size:.82rem;color:#fffc;text-transform:uppercase;letter-spacing:.045em}.payoff-keyline{margin:.35rem 0 0;color:#f5f3ff}.checklist-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:.75rem 0}.check-item{display:flex;align-items:center;gap:.5rem;color:#d4d4d4;font-size:.9rem}.check-item input{border:1px solid rgba(255,255,255,.16);background:#0f0f0fe6;color:#fff;border-radius:8px;padding:.5rem .6rem}.check-item.full-width{flex-direction:column;align-items:flex-start}@media(max-width:840px){.top-bar-row{flex-direction:column;align-items:flex-start}.top-bar-actions{width:100%;justify-content:space-between}.dashboard-grid{grid-template-columns:1fr}.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12{grid-column:span 1}.payoff-story-grid,.checklist-row,.bot-input-grid,.logs-summary-bands-row{grid-template-columns:1fr}}
