:root{color:#172033;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}input,select{min-width:0;width:100%}button{align-items:center;background:#14213d;border:0;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;gap:6px;min-height:36px;padding:0 12px}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.login-shell,.loading{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:24px}.login-panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px;box-shadow:0 18px 45px #0f172a14;display:grid;gap:16px;max-width:380px;padding:28px;width:100%}.brand-mark{align-items:center;background:#14213d;border-radius:8px;color:#fff;display:flex;font-weight:800;height:44px;justify-content:center;width:44px}.login-panel h1,.topbar h1{margin:0}label{display:grid;gap:7px;font-size:13px;font-weight:700}input,select{border:1px solid #cbd5e1;border-radius:6px;min-height:40px;padding:0 10px}.error-text{color:#b42318;margin:0}.app-shell{display:grid;gap:18px;margin:0 auto;max-width:1500px;padding:20px}.topbar{align-items:center;display:flex;justify-content:space-between}.topbar nav{display:flex;gap:8px}.topbar nav button{justify-content:center;padding:0;width:38px}.eyebrow{color:#64748b;font-size:12px;font-weight:800;letter-spacing:0;margin:0 0 4px;text-transform:uppercase}.notice{align-items:center;background:#e0f2fe;border:1px solid #7dd3fc;border-radius:6px;color:#0c4a6e;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.notice strong,.processing-row strong{align-items:center;display:inline-flex;gap:6px;white-space:nowrap}.notice.is-processing{background:#eff6ff;border-color:#93c5fd;color:#1e3a8a}.notice.is-processing svg,.processing-row svg{animation:pulse-spin 1.2s linear infinite}.legacy-hidden{display:none!important}.derivatives-summary-grid,.derivatives-grid,.derivative-form-grid,.derivative-upload-grid{display:grid;gap:14px}.processing-row{align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;color:#334155;display:flex;gap:10px;justify-content:space-between;min-height:40px;padding:9px 11px}.processing-row span{flex:1;min-width:0}.derivative-stepper{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.derivative-step{align-items:start;background:#fff;border:1px solid #dbe3ef;border-radius:8px;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr);min-height:96px;min-width:0;padding:14px}.derivative-step span{color:#64748b;display:block;font-size:11px;font-weight:700;text-transform:uppercase}.derivative-step strong{display:block;font-size:14px;line-height:1.3;overflow-wrap:anywhere}.derivative-step-badge{align-items:center;background:#eef2f7;border-radius:999px;color:#334155;display:inline-flex;font-size:12px;font-weight:800;height:28px;justify-content:center;width:28px}.derivative-step.active{border-color:#1d4ed8;box-shadow:inset 0 0 0 1px #1d4ed8}.derivative-step.active .derivative-step-badge{background:#1d4ed8;color:#fff}.derivative-step.done{background:#f0fdf4;border-color:#bbf7d0}.derivative-step.done .derivative-step-badge{background:#15803d;color:#fff}.derivative-step.upcoming{opacity:.78}@keyframes pulse-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.derivatives-summary-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:16px}.derivatives-grid{align-items:start;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);margin-bottom:16px}.derivative-form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.derivative-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.derivative-upload-control{align-items:start;background:#f1f5f9;border:1px solid #dbe3ef;border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr);min-width:0;padding:10px}.derivative-wizard-box,.derivative-evaluation-compact{background:#f8fafc;border:1px solid #dbe3ef;border-radius:6px;display:grid;gap:8px;padding:14px}.derivative-wizard-head{align-items:start;display:flex;gap:12px;justify-content:space-between}.derivative-wizard-head span,.derivative-evaluation-compact span,.derivative-detail-grid small{color:#64748b;font-size:12px}.derivative-status-pill{background:#e2e8f0;border-radius:999px;color:#334155;font-size:12px;padding:6px 10px;white-space:nowrap}.derivative-wizard-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.derivative-next-step-card{background:#eff6ff;border-color:#bfdbfe}.derivative-position-list{display:grid;gap:10px;margin-top:12px}.derivative-position-list .position-card{background:#fff;border:1px solid #dbe3ef;border-radius:8px;display:grid;overflow:hidden}.derivative-position-list .position-main{align-items:start;display:grid;gap:12px;grid-template-columns:minmax(240px,1.4fr) repeat(4,minmax(120px,1fr));padding:14px 16px}.derivative-position-list .position-main>div,.derivative-position-list .position-advice>div{display:grid;gap:4px;min-width:0}.derivative-position-list .position-main span,.derivative-position-list .position-advice span{color:#64748b;font-size:12px}.derivative-position-list .position-main strong{color:#172033;font-size:18px}.derivative-position-list .position-main small,.derivative-position-list .position-advice small{color:#64748b}.derivative-position-list .position-advice{align-items:start;border-top:1px solid #e2e8f0;display:grid;gap:12px;grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);padding:14px 16px}.derivative-position-list .position-advice strong{color:#172033;font-size:17px}.derivative-position-list .position-advice p{color:#334155;line-height:1.4;margin:0}.derivative-missing-data{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#7c2d12;display:grid;gap:3px;grid-column:1 / -1;padding:10px 12px}.derivative-missing-data strong{color:#9a3412;font-size:14px}.derivative-missing-data span{color:#7c2d12}.derivative-horizon-grid{border-top:1px solid #e2e8f0;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 16px}.derivative-horizon-card{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;display:grid;gap:10px;min-width:0;padding:12px}.derivative-horizon-head,.derivative-probability-rows,.derivative-probability-rows>div{display:grid;gap:4px}.derivative-horizon-head span,.derivative-probability-rows span,.derivative-horizon-card p{color:#64748b;font-size:12px}.derivative-horizon-head strong{color:#172033;font-size:18px}.derivative-probability-rows{grid-template-columns:repeat(3,minmax(0,1fr))}.derivative-probability-rows>div{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:8px}.derivative-probability-rows strong{color:#172033;font-size:16px}.derivative-probability-rows .gain-text strong{color:#15803d}.derivative-probability-rows .loss-text strong{color:#be123c}.derivative-position-list .position-context{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px}.derivative-position-list .position-context span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;padding:5px 8px}.derivative-actions{align-items:center;border-top:1px solid #eef2f7;padding:10px 16px}.derivative-actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.derivative-status-note{color:#64748b;font-size:12px;margin-left:auto}.derivative-action-panel{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;display:grid;gap:12px;margin-top:12px;padding:12px}.derivative-action-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.derivative-adjust-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.derivative-adjust-reason{grid-column:1 / -1}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.tab-bar{background:#fff;border:1px solid #dbe3ef;border-radius:8px;display:flex;gap:6px;overflow-x:auto;padding:6px}.tab-button{background:transparent;color:#475569;flex:0 0 auto;font-weight:800;justify-content:center;min-height:38px}.tab-button.active{background:#14213d;color:#fff}.planned-sources,.push-status,.evidence-detail{background:#f8fafc;border-top:1px solid #eef2f7;display:grid;gap:6px;padding:12px 16px}.planned-sources p,.push-status span,.push-status small,.evidence-detail p,.evidence-detail small{color:#64748b;font-size:12px;line-height:1.45;margin:0}.evidence-detail{border:1px solid #e2e8f0;border-radius:6px}.evidence-detail>div{display:grid;gap:3px}.ghost-button{background:#eef2f7;color:#172033;justify-content:center;min-height:30px;width:fit-content}.trend-hero{align-items:stretch;background:#111827;border:1px solid #1f2937;border-radius:8px;color:#fff;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(200px,420px);min-height:172px;padding:22px}.trend-hero .eyebrow{color:#cbd5e1}.trend-hero h2{font-size:42px;line-height:1;margin:0 0 12px;text-transform:capitalize}.trend-hero p{color:#dbe3ef;line-height:1.5;margin:0;max-width:980px}.trend-hero.bearish{background:#4c0519;border-color:#9f1239;color:#fff}.trend-hero.bullish{background:#052e16;border-color:#15803d;color:#fff}.trend-hero.mixed{background:#422006;border-color:#b45309;color:#fff}.trend-score{align-items:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:grid;justify-items:center;min-width:0;padding:16px;text-align:center}.trend-score span,.trend-score small{color:#e2e8f0;font-size:12px}.trend-score strong{font-size:52px;line-height:1}.trend-side{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.trend-live{background:#ffffff1a;border:1px solid rgba(255,255,255,.18);border-radius:8px;display:grid;gap:6px;min-width:0;padding:16px}.trend-live-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.trend-live span,.trend-live small{color:#e2e8f0;font-size:12px}.trend-live strong{font-size:34px;line-height:1}.trend-live p{font-size:15px;font-weight:800;margin:0}.trend-live.positive p,.trend-live.positive strong{color:#bbf7d0}.trend-live.negative p,.trend-live.negative strong{color:#fecdd3}.trend-live.neutral p,.trend-live.neutral strong{color:#f8fafc}.section-title{align-items:end;display:flex;gap:12px;justify-content:space-between}.section-title h2{font-size:18px;margin:0}.section-title span{color:#64748b;font-size:13px}.stat-grid,.bias-row,.component-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.overview-layout{display:grid;gap:12px;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr)}.overview-primary,.overview-confirmation,.overview-topics,.overview-latest{background:#fff;border:1px solid #dbe3ef;border-radius:8px}.overview-primary{display:grid;gap:14px;min-height:260px;padding:22px}.overview-kicker,.setup-card-head span,.push-summary span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.overview-kicker{align-items:center;display:flex;gap:10px;justify-content:space-between}.overview-kicker b{background:#eef2f7;border-radius:999px;color:#334155;font-size:12px;padding:5px 9px;text-transform:none}.overview-primary h2{font-size:40px;line-height:1;margin:0}.overview-lead{color:#334155;font-size:18px;line-height:1.4;margin:0;max-width:760px}.signal-summary{display:flex;flex-wrap:wrap;gap:8px}.signal-summary span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;color:#334155;font-size:13px;font-weight:800;padding:6px 10px}.short-reason{border-top:1px solid #eef2f7;display:grid;gap:6px;padding-top:12px}.short-reason strong{font-size:13px}.short-reason p{color:#475569;line-height:1.4;margin:0}.overview-primary.active h2{color:#15803d}.overview-primary.pending h2,.overview-primary.watch h2{color:#b45309}.overview-primary.danger h2{color:#be123c}.overview-confirmation{display:grid;gap:12px;padding:18px}.confirmation-list{display:grid;gap:8px}.confirmation-row{align-items:center;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:10px;grid-template-columns:54px minmax(0,1fr);min-height:58px;padding:9px 10px}.confirmation-row strong{font-size:12px;font-weight:800;text-transform:uppercase}.confirmation-row span{color:#172033;display:block;font-size:13px;font-weight:800}.confirmation-row small{color:#64748b;display:block;font-size:12px;margin-top:2px}.confirmation-row.passed{background:#dcfce7;border-color:#bbf7d0}.confirmation-row.passed strong{color:#166534}.confirmation-row.missing{background:#fff1f2;border-color:#fecdd3}.confirmation-row.missing strong{color:#be123c}.next-trigger{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:5px;padding:12px}.next-trigger span,.overview-latest span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.next-trigger strong{color:#172033;font-size:15px;line-height:1.3}.overview-latest{display:grid;gap:0;grid-column:1 / -1;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.overview-topics{display:grid;gap:14px;grid-column:1 / -1;padding:18px}.topic-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.topic-card{border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:6px;min-height:132px;padding:14px}.topic-card span,.topic-card small{color:#64748b;font-size:12px}.topic-card strong{color:#172033;font-size:18px;line-height:1.2}.topic-card p{color:#475569;font-size:13px;line-height:1.4;margin:0}.topic-card.bullish{background:#f0fdf4;border-color:#bbf7d0}.topic-card.bearish{background:#fff1f2;border-color:#fecdd3}.topic-card.mixed{background:#fffbeb;border-color:#fde68a}.topic-card.neutral{background:#f8fafc;border-color:#e2e8f0}.overview-latest>div{border-right:1px solid #eef2f7;display:grid;gap:5px;min-height:96px;padding:14px 16px}.overview-latest>div:last-child{border-right:0}.overview-latest strong{color:#172033;font-size:16px}.overview-latest p{color:#475569;font-size:13px;line-height:1.35;margin:0}.overview-latest small{color:#64748b;font-size:12px;line-height:1.35}.signal-quality-tile.healthy strong,.signal-quality-card.healthy strong{color:#15803d}.signal-quality-tile.warning strong,.signal-quality-card.warning strong{color:#b45309}.bias-row{grid-template-columns:repeat(4,minmax(0,1fr))}.stat,.bias-card,.component-card,.panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px}.stat{display:grid;gap:6px;min-height:86px;padding:16px}.stat span,.bias-card span,td span,.alert-row span,.signal-card span,.signal-card small{color:#64748b;font-size:12px}.stat strong{font-size:24px}.stat.warn strong{color:#b45309}.component-card{display:grid;gap:8px;min-height:118px;padding:14px}.component-card div{align-items:center;color:#475569;display:flex;font-size:12px;font-weight:800;gap:8px;text-transform:uppercase}.component-card strong{font-size:26px}.component-card p{color:#64748b;font-size:13px;line-height:1.35;margin:0}.bias-card{display:grid;gap:7px;min-height:160px;padding:16px}.bias-card strong{font-size:28px;text-transform:capitalize}.bias-card p,.bias-card small{margin:0}.bias-points{color:#475569;display:grid;font-size:12px;gap:4px;line-height:1.35;margin:2px 0 0;padding-left:16px}.position-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));padding:16px}.position-summary-card,.position-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.position-summary-card{display:grid;gap:6px;min-height:96px;padding:14px}.position-summary-card span,.position-card span,.position-card small{color:#64748b;font-size:12px}.position-summary-card strong{color:#172033;font-size:24px}.position-summary-card p{color:#64748b;font-size:13px;margin:0}.position-summary-card.loss strong,.loss-text strong,.loss-text small,.loss-text p{color:#be123c}.position-summary-card.gain strong,.gain-text strong,.gain-text small,.gain-text p{color:#15803d}.neutral-text strong,.neutral-text small,.neutral-text p{color:#172033}.position-cell-value.gain-text,.position-cell-pnl.gain-text{border-left:3px solid #16a34a;padding-left:10px}.position-cell-value.loss-text,.position-cell-pnl.loss-text{border-left:3px solid #e11d48;padding-left:10px}.position-stale-banner{align-items:center;background:#fffbeb;border-bottom:1px solid #fde68a;border-top:1px solid #fde68a;color:#92400e;display:flex;gap:10px;justify-content:space-between;padding:10px 16px}.position-stale-banner strong{color:#78350f;flex:0 0 auto}.position-stale-banner span{font-size:13px;line-height:1.35}.position-list{display:grid;gap:10px;padding:0 16px 16px}.broker-group{display:grid;gap:10px}.broker-heading{align-items:center;display:flex;justify-content:space-between;padding:8px 2px 0}.broker-heading strong{color:#172033;font-size:16px}.broker-heading span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.position-table-head,.position-row{align-items:center;background:#fff;border:1px solid #dbe3ef;border-radius:8px;column-gap:14px;display:grid;grid-template-columns:minmax(220px,2fr) repeat(6,minmax(96px,.95fr)) minmax(130px,1.15fr);padding:12px 14px}.position-table-head{background:#f8fafc;border-style:dashed;color:#64748b;font-size:12px;font-weight:800;letter-spacing:.02em;margin-bottom:8px;text-transform:uppercase}.position-sort-button{align-items:center;background:transparent;border:0;color:inherit;display:flex;font:inherit;gap:8px;justify-content:space-between;min-width:0;padding:0;text-align:left}.position-sort-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.position-sort-button strong{color:#3b82f6;font-size:12px;font-weight:900}.position-sort-button:hover span{color:#1d4ed8}.position-row{color:inherit;cursor:pointer;margin-bottom:8px;min-height:auto;padding:14px;text-align:left}.position-row:hover{border-color:#bfdbfe;box-shadow:0 10px 24px #1d4ed814}.position-row.high{border-color:#fecdd3}.position-row.medium{border-color:#fed7aa}.position-row.stale{border-color:#fde68a}.position-row-cell{display:grid;gap:4px;min-width:0}.position-row-cell span,.position-overlay-head span,.position-overlay-card span,.position-overlay-section span{color:#64748b;font-size:12px}.position-row-cell strong,.position-overlay-card strong{color:#172033;font-size:18px}.position-row-cell small,.position-overlay-head p,.position-overlay-card p,.position-overlay-section p,.position-overlay-section small{color:#475569;margin:0}.position-cell-identity strong{font-size:16px}.position-source-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.position-source-pill{background:#eef2f7;border:1px solid #dbe3ef;border-radius:999px;color:#475569;display:inline-flex;font-size:11px;font-weight:700;line-height:1;padding:5px 8px}.market-session-badge{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;letter-spacing:0;line-height:1;padding:5px 8px;white-space:nowrap}.trend-live .market-session-badge{justify-self:start}.market-session-badge.pre{background:#2563eb29;border-color:#93c5fd59;color:#dbeafe}.market-session-badge.post{background:#a855f729;border-color:#d8b4fe52;color:#f3e8ff}.market-session-badge.regular{background:#16a34a2e;border-color:#86efac59;color:#dcfce7}.market-session-badge.closed{background:#eef2f7;border-color:#dbe3ef;color:#475569}.position-session-badge{justify-self:start;margin-bottom:2px}.position-source-row .market-session-badge,.position-overlay-section .market-session-badge{background:#fff;border-color:#dbe3ef;color:#334155}.position-source-row .market-session-badge.pre,.position-overlay-section .market-session-badge.pre{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.position-source-row .market-session-badge.post,.position-overlay-section .market-session-badge.post{background:#faf5ff;border-color:#e9d5ff;color:#7e22ce}.position-source-row .market-session-badge.regular,.position-overlay-section .market-session-badge.regular{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.position-source-row .market-session-badge.closed,.position-overlay-section .market-session-badge.closed{background:#f8fafc;border-color:#dbe3ef;color:#475569}.position-row-cell.loss-text strong,.position-row-cell.loss-text small,.position-overlay-card.loss-text strong,.position-overlay-card.loss-text p{color:#be123c}.position-row-cell.gain-text strong,.position-row-cell.gain-text small,.position-overlay-card.gain-text strong,.position-overlay-card.gain-text p{color:#15803d}.position-row-cell.neutral-text strong,.position-row-cell.neutral-text small,.position-overlay-card.neutral-text strong,.position-overlay-card.neutral-text p{color:#172033}.position-cell-advice strong{font-size:16px}.position-overlay{top:0;right:0;bottom:0;left:0;position:fixed;z-index:50}.position-overlay-backdrop{background:#0f172a7a;border:0;border-radius:0;top:0;right:0;bottom:0;left:0;min-height:100vh;padding:0;position:absolute;width:100%}.position-overlay-panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px;box-shadow:0 24px 60px #0f172a2e;left:50%;max-height:calc(100vh - 60px);max-width:980px;overflow:auto;padding:20px;position:absolute;top:30px;transform:translate(-50%);width:calc(100vw - 32px)}.position-overlay-head{align-items:start;display:flex;justify-content:space-between;gap:12px;margin-bottom:18px}.position-overlay-head h3{font-size:28px;margin:2px 0 4px}.position-overlay-close{align-items:center;background:#eef2f7;border:1px solid #d8e0ea;color:#172033;justify-content:center;min-width:38px;padding:0}.position-overlay-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.position-overlay-card,.position-overlay-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:6px;padding:16px}.position-overlay-sections{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.position-overlay-section strong{color:#172033;font-size:20px}.stock-forecast-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.stock-forecast-grid div{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:3px;padding:10px}.stock-forecast-grid strong{font-size:16px}.position-advice-diagnostics{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.position-advice-diagnostics span,.position-analyst-box small{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#475569;display:inline-flex;padding:5px 9px}.position-overlay-section .position-source-pill{background:#fff}.position-analyst-box{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:4px;padding:12px}.position-analyst-box strong{font-size:15px}.stock-reason-list,.stock-risk-list{border-top:1px solid #e2e8f0;padding-top:8px}.stock-risk-list{color:#9f1239}.position-overlay-meta{display:flex;flex-wrap:wrap;gap:8px}.position-overlay-meta span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;padding:6px 10px}.position-filterbar{align-items:center;border-bottom:1px solid #eef2f7;display:flex;flex-wrap:wrap;gap:10px;padding:12px 16px}.position-filter-label{color:#64748b;font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.segment-control{display:inline-flex;flex-wrap:wrap;gap:6px}.segment-control button{background:#eef2f7;border:1px solid #d8e0ea;color:#334155;padding:7px 12px}.segment-control button.active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.settings-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}.settings-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:14px;min-width:0;padding:16px}.settings-card-head{align-items:start;display:flex;justify-content:space-between}.settings-card-head span,.import-summary span,.import-history-row span,.import-history-row small,.settings-actions span{color:#64748b;font-size:12px}.settings-card-head strong{color:#172033;display:block;font-size:22px}.settings-card p{color:#475569;line-height:1.45;margin:0}.file-upload input{background:#fff;max-width:100%;padding:8px}.derivative-wizard-section{border-top:1px solid #e2e8f0;display:grid;gap:14px;padding-top:14px}.derivative-wizard-section-head{display:grid;gap:4px}.derivative-wizard-section-head span,.derivative-evaluation-compact span,.derivative-wizard-head span,.wizard-candidate-top span{color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase}.derivative-wizard-section-head strong,.derivative-evaluation-compact strong,.derivative-wizard-head strong,.wizard-candidate-top strong{font-size:18px}.derivative-upload-control button{justify-self:start;min-width:142px;white-space:nowrap}.upload-file-name{color:#64748b;display:block;font-size:12px;line-height:1.35;min-height:16px;overflow-wrap:anywhere}.derivative-recommendation-list{color:#475569;display:grid;gap:4px;margin:0;padding-left:18px}.derivative-recommendation-list li{line-height:1.35}.derivative-detail-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.derivative-detail-grid>div{background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:grid;gap:4px;padding:8px}.derivative-detail-grid strong,.derivative-evaluation-compact strong{color:#172033}.derivative-wizard-box,.derivative-evaluation-compact,.derivative-next-step-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:10px;min-width:0;padding:14px}.derivative-next-step-card p,.settings-card>p{margin:0}.derivative-wizard-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.derivative-status-pill{background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;color:#3730a3;font-size:12px;font-weight:700;padding:6px 10px;white-space:nowrap}.wizard-candidate-list{display:grid;gap:10px}.wizard-candidate-card{background:#fff;border:1px solid #dbe3ef;border-radius:8px;color:#172033;display:grid;gap:8px;justify-items:start;padding:12px;text-align:left;width:100%}.wizard-candidate-card.active{border-color:#1d4ed8;box-shadow:inset 0 0 0 1px #1d4ed8}.wizard-candidate-top{align-items:start;display:flex;gap:10px;justify-content:space-between;width:100%}.wizard-candidate-card p,.wizard-candidate-card small{margin:0}.wizard-missing-fields{display:grid;gap:10px}.wizard-missing-field-row{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto}.ghost-button{background:#eef2f7;border:1px solid #d8e0ea;color:#334155}.derivative-warning-text{color:#7c2d12;margin:0}.settings-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.import-summary{display:grid;gap:6px}.import-history{border-top:1px solid #eef2f7;display:grid}.import-history-row{align-items:center;border-bottom:1px solid #eef2f7;display:grid;gap:10px;grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,.7fr)) minmax(0,1fr);padding:12px 16px}.bearish{color:#be123c}.bullish{color:#15803d}.panel{min-width:0;overflow:hidden}@media (max-width: 1180px){.position-table-head{display:none}.position-row{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}.position-cell-identity,.position-cell-advice{grid-column:1 / -1}.position-overlay-grid,.position-overlay-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.derivatives-grid,.derivative-upload-grid,.derivative-detail-grid{grid-template-columns:1fr}.derivative-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.derivative-step{min-height:auto}.derivative-position-list .position-main,.derivative-position-list .position-advice,.derivative-adjust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.derivative-horizon-grid{grid-template-columns:1fr}}@media (max-width: 720px){.position-row,.position-overlay-grid,.position-overlay-sections,.stock-forecast-grid,.derivative-probability-rows{grid-template-columns:1fr}.position-overlay-panel{border-radius:0;inset:auto 0 0;max-height:88vh;top:auto;transform:none;width:100%}.derivative-upload-control{align-items:stretch;grid-template-columns:1fr}.wizard-missing-field-row,.derivative-stepper{grid-template-columns:1fr}.derivative-upload-control button{justify-content:center;width:100%}.derivative-position-list .position-main,.derivative-position-list .position-advice,.derivative-adjust-grid{grid-template-columns:1fr}.derivative-status-note{margin-left:0;width:100%}}.panel-heading{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;min-height:54px;padding:0 16px}.panel-heading h2{align-items:center;display:flex;font-size:16px;gap:8px;margin:0}.panel-stamp{color:#64748b;font-size:12px}.live-grid{display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr))}.live-card{border-bottom:1px solid #eef2f7;border-right:1px solid #eef2f7;display:grid;gap:6px;min-height:132px;padding:14px 16px}.live-card:nth-child(3n){border-right:0}.live-card span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.live-card strong{font-size:18px}.live-card p,.live-card small{color:#475569;line-height:1.4;margin:0}.live-card small{color:#64748b;font-size:12px}.error-card strong{color:#b42318}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:980px;width:100%}th,td{border-bottom:1px solid #eef2f7;padding:12px 16px;text-align:left;vertical-align:middle}td:first-child{display:grid;gap:3px}.pill,.source-tag{background:#e2e8f0;border-radius:999px;color:#334155;display:inline-flex;font-size:12px;font-weight:800;padding:4px 8px}.breaking-tag{background:#fff7ed;color:#9a3412;margin-left:6px}.breaking-tag.sent{background:#dcfce7;color:#166534}.breaking-tag.pending,.breaking-tag.suppressed,.breaking-tag.skipped{background:#fef3c7;color:#92400e}.breaking-tag.failed{background:#fee2e2;color:#991b1b}.pill.healthy{background:#dcfce7;color:#166534}.pill.degraded{background:#fee2e2;color:#991b1b}.pill.blocked,.pill.quota_limited{background:#fef3c7;color:#92400e}.pill.missing_config,.pill.adapter_pending{background:#e0f2fe;color:#075985}.poll-timer{background:#eef2f7;border-radius:999px;color:#334155;display:inline-flex;font-size:12px;font-weight:800;justify-content:center;min-width:72px;padding:5px 9px}.poll-timer.due{background:#fef3c7;color:#92400e}.actions{display:flex;gap:8px}.actions button,.panel-heading button,.event-actions button{background:#e2e8f0;color:#172033}.two-col{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1.7fr) minmax(340px,.9fr)}.event-list,.side-stack{display:grid;gap:12px}.event-list{max-height:720px;overflow:auto;padding:12px}.event-item{border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) 180px;padding:12px}.event-item h3,.event-item p{margin:8px 0 0}.event-item h3{font-size:15px}.event-item p{color:#475569;font-size:13px;line-height:1.45}.event-meta{align-content:start;display:grid;gap:8px;justify-items:end}.event-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.event-actions button{min-height:32px;white-space:nowrap}.signal-card,.alert-row,.empty,.queue-grid{border-bottom:1px solid #eef2f7;display:grid;gap:6px;padding:14px 16px}.setup-list{display:grid;gap:14px;padding:14px}.setup-card{border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:12px;padding:16px}.setup-card>p,.setup-card small,.setup-empty p{color:#475569;line-height:1.45;margin:0}.setup-card-head{align-items:start;display:flex;gap:16px;justify-content:space-between}.setup-card-head strong{display:block;font-size:24px;margin-top:3px}.setup-score{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;justify-items:center;min-width:110px;padding:10px}.setup-score b{font-size:30px;line-height:1}.setup-meta,.setup-time-row{display:flex;flex-wrap:wrap;gap:8px}.setup-time-row span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;color:#475569;font-size:12px;font-weight:800;padding:5px 9px}.setup-meta span{background:#eef2f7;border-radius:999px;color:#334155;font-size:12px;font-weight:800;padding:5px 9px}.signal-card p{margin:0}.early-watch-note{background:#fff7ed;border:1px solid #fed7aa;border-radius:7px;color:#9a3412;font-size:12px;font-weight:800;line-height:1.3;padding:8px 10px}.early-watch-note.thesis{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.no-trade-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:10px;padding:12px}.no-trade-heading{display:grid;gap:3px}.no-trade-heading strong{color:#0f172a;font-size:13px}.no-trade-heading span,.no-trade-panel p{color:#475569;font-size:12px;line-height:1.35;margin:0}.gate-grid{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.gate-row{background:#fff;border:1px solid #e2e8f0;border-radius:7px;display:grid;gap:2px;min-height:74px;padding:9px}.gate-row span,.gate-row small{color:#64748b;font-size:11px;line-height:1.25}.gate-row strong{font-size:16px;text-transform:uppercase}.gate-row.passed strong{color:#15803d}.gate-row.missing strong{color:#be123c}.soft-gate-list{display:flex;flex-wrap:wrap;gap:6px}.soft-gate-list span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;font-size:11px;font-weight:800;line-height:1.2;padding:5px 8px}.soft-gate-list .passed{border-color:#bbf7d0;color:#15803d}.soft-gate-list .missing{border-color:#fecdd3;color:#be123c}.queue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.push-dashboard{display:grid;gap:12px;grid-template-columns:260px minmax(0,1fr);padding:14px}.push-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.push-toggle{align-items:center;color:#334155;display:inline-flex;gap:8px;font-size:13px;font-weight:700}.push-toggle input{accent-color:#1d4ed8}.push-summary,.device-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:6px;padding:14px}.push-summary strong{font-size:32px}.push-summary p,.push-summary small,.device-row span{color:#64748b;margin:0}.device-list{display:grid;gap:8px}.push-history{border-top:1px solid #eef2f7;display:grid}.push-history-row{border-bottom:1px solid #eef2f7;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) 210px;padding:14px 16px}.push-history-row>div{display:grid;gap:5px}.push-history-row p,.push-history-row small,.push-history-row span{color:#64748b;line-height:1.35;margin:0}.push-history-row.sent strong{color:#15803d}.push-history-row.failed strong{color:#be123c}.push-history-row.suppressed strong,.push-history-row.skipped strong,.push-history-row.no_subscribers strong{color:#b45309}.push-error{background:#fff1f2;border:1px solid #fecdd3;border-radius:6px;color:#be123c!important;grid-column:1 / -1;padding:8px 10px}.trading-grid,.trading-strategy-grid,.trading-flow-grid{align-items:start}.trading-strategy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trading-flow-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr)}.trading-action-board{display:grid;gap:12px;margin-top:18px}.trading-action-grid{grid-template-columns:minmax(0,1.3fr) minmax(320px,.9fr)}.trading-primary-card,.trading-side-stack,.trading-status-stack,.trading-managed-list,.trading-disclosure-list{display:grid;gap:12px}.trading-managed-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:inherit;cursor:pointer;display:grid;font:inherit;gap:10px;padding:14px;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;width:100%}.trading-managed-row:hover{border-color:#cbd5e1;transform:translateY(-1px)}.trading-managed-row.active{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb24}.trading-managed-head,.trading-managed-pnl{align-items:start;display:flex;gap:12px;justify-content:space-between}.trading-managed-head>div,.trading-managed-pnl{display:grid;gap:4px}.trading-managed-head span,.trading-managed-head small,.trading-managed-summary,.trading-managed-metrics span,.trading-managed-metrics small,.trading-status-stack span,.trading-status-stack small,.trading-disclosure summary small{color:#64748b;margin:0}.trading-managed-pnl{justify-items:end;text-align:right}.trading-managed-pnl strong{font-size:22px;line-height:1.05}.trading-managed-metrics{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.trading-managed-metrics>div,.trading-status-stack>div{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:4px;min-width:0;padding:10px 12px}.trading-managed-metrics strong,.trading-status-stack strong{color:#0f172a}.trading-managed-summary{line-height:1.45}.trading-managed-inline-blocker,.trading-managed-drawer-blocker{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:6px;padding:10px 12px}.trading-managed-inline-blocker strong,.trading-managed-drawer-blocker strong{color:#0f172a;font-size:13px}.trading-managed-inline-blocker span,.trading-managed-inline-blocker small,.trading-managed-drawer-blocker span,.trading-managed-drawer-blocker small{color:#64748b;margin:0}.trading-managed-drawer{background:#fff;border:1px solid #bfdbfe;border-radius:8px;display:grid;gap:12px;padding:14px}.trading-managed-drawer-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.trading-managed-drawer-grid>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:4px;padding:10px 12px}.trading-managed-drawer-grid span,.trading-managed-drawer-grid small{color:#64748b;margin:0}.trading-managed-drawer-grid strong{color:#0f172a}.icon-button{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;width:32px}.icon-button:hover{background:#eef2ff;border-color:#c7d2fe}.trading-disclosure{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:0 14px 14px}.trading-disclosure summary{align-items:center;cursor:pointer;display:flex;gap:10px;justify-content:space-between;list-style:none;padding:14px 0}.trading-disclosure summary::-webkit-details-marker{display:none}.trading-disclosure summary span{color:#0f172a;font-weight:800}.trading-disclosure[open] summary{border-bottom:1px solid #e2e8f0;margin-bottom:12px}.trading-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.position-bot-controls{display:grid;gap:10px}.position-bot-controls .segment-control{width:fit-content}.trading-proposal-list,.trading-order-list{display:grid;gap:10px}.trading-proposal-card,.trading-order-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:8px;padding:14px}.trading-proposal-card,.trading-order-row{cursor:pointer}.trading-proposal-card.active{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb24}.trading-order-row.active{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb1a}.trading-proposal-card p,.trading-proposal-card span,.trading-proposal-card small,.trading-order-row span,.trading-order-row small,.trading-scorecard-grid small,.trading-strategy-stats span{color:#64748b;margin:0}.muted-line{color:#64748b;display:block;margin-top:-2px}.trading-proposal-top{align-items:start;display:flex;gap:10px;justify-content:space-between}.trading-proposal-top>div{display:grid;gap:4px}.trading-proposal-stats,.trading-strategy-stats{display:flex;flex-wrap:wrap;gap:8px 12px}.trading-proposal-stats span,.trading-strategy-stats span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;font-size:12px;font-weight:700;padding:5px 9px}.trading-scorecard-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}.trading-scorecard-grid>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:4px;padding:12px}.trading-scorecard-grid strong{font-size:24px}.trading-equity-card,.trading-journal-list{display:grid;gap:10px;margin:12px 0}.paper-run-card{background:#f8fafc;border:1px solid #dbeafe;border-radius:8px;display:grid;gap:12px;margin:14px 0 18px;padding:16px}.paper-run-card.running{border-color:#bfdbfe;box-shadow:inset 0 0 0 1px #2563eb0a}.paper-run-card.stale{border-color:#ddd6fe;box-shadow:inset 0 0 0 1px #7c3aed0a}.paper-run-card.waiting{border-color:#e2e8f0}.paper-run-card-head{align-items:center;display:flex;gap:12px;justify-content:space-between}.paper-run-card-head>div{display:grid;gap:4px}.paper-run-card-head span,.paper-run-grid span,.paper-run-grid small,.paper-run-card p{color:#64748b;margin:0}.paper-run-card-head strong{font-size:28px;line-height:1}.paper-run-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.paper-run-grid>div{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:4px;min-width:0;padding:12px}.paper-run-grid strong{color:#0f172a;font-size:22px;line-height:1.1;overflow-wrap:anywhere}.trading-section-head{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.trading-section-head small{color:#64748b}.trading-equity-chart{background:linear-gradient(180deg,#2563eb14,#2563eb05);border:1px solid #dbeafe;border-radius:8px;display:block;height:120px;overflow:visible;width:100%}.trading-equity-chart path{fill:none;stroke:#2563eb;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5}.trading-journal-row,.trading-replace-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:8px;padding:12px}.trading-journal-row span,.trading-journal-row small{color:#64748b}.trading-journal-top{align-items:start;display:flex;gap:12px;justify-content:space-between}.trading-journal-top>div{display:grid;gap:4px}.trading-journal-pnl{justify-items:end;text-align:right}.trading-journal-pnl strong{font-size:20px}.trading-journal-tags{display:flex;flex-wrap:wrap;gap:8px 10px}.trading-journal-tags span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;font-size:12px;font-weight:700;padding:5px 9px}.trading-journal-metrics{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.trading-journal-metrics>div{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:4px;padding:10px}.trading-journal-metrics strong{color:#0f172a}.trading-blocked-card{display:grid;gap:12px}.trading-blocked-row{align-items:start}.trading-blocked-row .trading-journal-tags span{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.trading-replace-form{grid-template-columns:repeat(4,minmax(0,1fr))}.trading-replace-form label{display:grid;gap:6px}.trading-replace-wide{grid-column:1 / -1}.order-warning{color:#b45309!important}@media (max-width: 960px){.stat-grid,.bias-row,.component-grid,.overview-layout,.live-grid,.trend-hero,.two-col,.push-dashboard,.position-summary-grid,.position-main,.position-advice,.position-filterbar,.settings-grid,.import-history-row,.push-history-row,.derivative-wizard-grid,.derivative-detail-grid,.derivative-upload-grid,.trading-strategy-grid,.trading-flow-grid,.trading-action-grid,.trading-history-grid,.trading-scorecard-grid,.paper-run-grid,.trading-managed-metrics,.trading-managed-drawer-grid,.trading-journal-metrics,.trading-replace-form,.overview-latest,.trend-side{grid-template-columns:1fr}.overview-latest>div{border-bottom:1px solid #eef2f7;border-right:0}.overview-latest>div:last-child{border-bottom:0}.overview-primary h2{font-size:32px}.live-card{border-right:0}.section-title{align-items:start;display:grid}.topbar{align-items:flex-start;gap:12px}.event-item{grid-template-columns:1fr}.event-meta{justify-items:start}}
