:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f8fafc;background:#07090f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 15% 12%,#00d1ff2e,#0000 28%),radial-gradient(circle at 84% 8%,#f4c43021,#0000 24%),#07090f;min-height:100vh;margin:0}.app-shell{width:min(1180px,100vw - 32px);margin:0 auto;padding:32px 0}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#0f172ad1;border:1px solid #94a3b82e;border-radius:16px;gap:14px;width:min(430px,100%);padding:28px;display:grid;box-shadow:0 24px 80px #00000047}.login-mark{color:#20d9ff;background:#20d9ff24;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.login-card h1{font-size:30px}.login-card p{color:#a7b0c0;line-height:1.5}.login-card label{color:#dbe4f0;gap:7px;font-size:13px;font-weight:800;display:grid}.login-card input{color:#fff;background:#020617b8;border:1px solid #94a3b83d;border-radius:10px;outline:none;width:100%;height:44px;padding:0 12px;font-size:14px}.login-card input:focus{border-color:#20d9ff;box-shadow:0 0 0 3px #20d9ff1f}.login-error{color:#fecaca;background:#7f1d1d38;border:1px solid #f8717159;border-radius:10px;padding:10px 12px;font-size:13px}.primary-button,.ghost-button{cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;height:40px;font-size:13px;font-weight:900;display:inline-flex}.primary-button{color:#111827;background:#f4c430;width:100%;height:44px}.primary-button:disabled{cursor:wait;opacity:.72}.primary-button.compact{width:auto;height:38px;padding:0 14px}.ghost-button{color:#f8fafc;background:#0f172ab8;border:1px solid #94a3b838;padding:0 13px}.topbar{background:#0f172ab8;border:1px solid #94a3b82e;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:18px;padding:26px;display:flex;box-shadow:0 24px 80px #0000003d}h1,h2,p{margin:0}h1{letter-spacing:0;font-size:clamp(28px,4vw,44px);line-height:1}.topbar p,.panel p{color:#a7b0c0;margin-top:10px;line-height:1.55}.status-pill{color:#111827;white-space:nowrap;background:#f4c430;border-radius:999px;align-items:center;min-height:34px;padding:0 13px;font-size:13px;font-weight:900;display:inline-flex}.topbar-actions{align-items:center;gap:10px;display:flex}.metric-grid,.panel-grid{gap:14px;margin-top:16px;display:grid}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card,.panel{background:#0f172aad;border:1px solid #94a3b829;border-radius:14px}.metric-card{gap:8px;min-height:132px;padding:18px;display:grid}.metric-card svg{color:#20d9ff}.metric-card span{color:#a7b0c0;font-size:13px}.metric-card strong{color:#fff;letter-spacing:0;font-size:22px}.progress-panel{background:#0f172aad;border:1px solid #94a3b829;border-radius:14px;margin-top:16px;padding:20px}.progress-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.progress-head h2{font-size:18px}.progress-head p{color:#a7b0c0;margin-top:8px;line-height:1.45}.progress-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.progress-step{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;gap:6px;min-height:116px;padding:12px;display:grid}.progress-step strong,.progress-step span,.progress-step small{overflow-wrap:anywhere}.progress-step strong{color:#f8fafc;font-size:13px}.progress-step span{text-transform:uppercase;border-radius:999px;width:fit-content;padding:3px 8px;font-size:11px;font-weight:900}.progress-step small{color:#a7b0c0;font-size:12px;line-height:1.35}.progress-step.done span,.progress-step.running span{color:#bbf7d0;background:#22c55e2e}.progress-step.paused span,.progress-step.todo span{color:#fde68a;background:#f4c43029}.progress-step.locked span{color:#fecaca;background:#f871712e}.progress-foot{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.progress-foot span{color:#dbe4f0;background:#0206176b;border-radius:999px;min-height:30px;padding:7px 10px;font-size:12px;font-weight:800}.position-panel{background:#0f172aad;border:1px solid #94a3b829;border-radius:14px;margin-top:16px;padding:20px}.position-head{flex-wrap:wrap}.position-head h2{margin-right:auto}.status-pill.profit{color:#bbf7d0;background:#22c55e2e}.status-pill.loss,.status-pill.waiting{color:#fecaca;background:#f871712e}.chart-link{color:#f8fafc;white-space:nowrap;background:#0206176b;border:1px solid #94a3b838;border-radius:999px;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.chart-link svg{color:#20d9ff}.position-summary{grid-template-columns:minmax(0,1fr) minmax(180px,auto);gap:12px;margin-top:16px;display:grid}.position-identity,.position-pnl{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;min-width:0;padding:12px}.position-identity{gap:5px;display:grid}.position-identity span,.position-pnl span,.position-stat span{color:#a7b0c0;font-size:12px;font-weight:800}.position-identity strong{color:#fff;letter-spacing:0;font-size:22px}.position-identity small{color:#a7b0c0;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.position-pnl{text-align:right;align-content:center;gap:5px;display:grid}.position-pnl strong{font-size:22px}.position-pnl.profit strong{color:#22c55e}.position-pnl.loss strong{color:#f87171}.position-pnl small{color:#a7b0c0;font-size:12px;font-weight:800}.position-layout{grid-template-columns:minmax(0,1.7fr) minmax(230px,.68fr);align-items:stretch;gap:12px;margin-top:12px;display:grid}.position-chart-shell{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;min-width:0;padding:10px}.position-candle-chart{aspect-ratio:3;width:100%;min-height:210px;display:block}.chart-grid line{stroke:#94a3b821;stroke-width:1px}.chart-grid text,.chart-reference text,.live-price text,.axis-label{fill:#a7b0c0;font-size:11px;font-weight:800}.chart-reference line{stroke-width:1.4px;stroke-dasharray:5 5}.chart-reference.entry line{stroke:#f4c430c7}.chart-reference.entry text{fill:#fde68a}.chart-reference.stop line{stroke:#f87171c7}.chart-reference.stop text{fill:#fecaca}.chart-reference.take line{stroke:#22c55ec7}.chart-reference.take text{fill:#bbf7d0}.candle .candle-wick{stroke-width:1.8px}.candle.bull .candle-wick,.candle.bull rect{fill:#22c55e;stroke:#22c55e}.candle.bear .candle-wick,.candle.bear rect{fill:#f87171;stroke:#f87171}.candle.synthetic{opacity:.42}.live-price circle{stroke:#f8fafce6;stroke-width:2px;animation:1.8s ease-in-out infinite livePulse}.live-price.bull circle{fill:#22c55e}.live-price.bear circle{fill:#f87171}.live-price.bull text{fill:#bbf7d0}.live-price.bear text{fill:#fecaca}.axis-label.end{text-anchor:end}.candle-legend{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.candle-legend span{color:#a7b0c0;align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.candle-legend i{border-radius:999px;width:20px;height:3px;display:block}.legend-bull{background:#22c55e}.legend-bear{background:#f87171}.legend-entry{background:#f4c430}.legend-stop{background:#f87171}.legend-take{background:#22c55e}.position-stat-grid{grid-template-columns:1fr;gap:8px;display:grid}.position-stat{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;gap:5px;min-height:54px;padding:10px;display:grid}.position-stat strong{overflow-wrap:anywhere;color:#fff;font-size:14px}.position-chart-empty,.position-empty{margin-top:16px}.position-chart-empty{color:#a7b0c0;background:#02061757;border:1px solid #94a3b81f;border-radius:10px;place-items:center;min-height:236px;font-size:12px;font-weight:800;display:grid}@keyframes livePulse{0%,to{opacity:.62}50%{opacity:1}}.panel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:20px}.panel-wide{grid-column:1/-1}.panel-head{align-items:center;gap:10px;display:flex}.panel-head svg{color:#f4c430}.panel h2{letter-spacing:0;font-size:18px}.table-list{gap:8px;margin-top:16px;display:grid}.control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.control-button{color:#f8fafc;cursor:pointer;letter-spacing:0;border:1px solid #94a3b82e;border-radius:10px;justify-content:center;align-items:center;min-height:40px;font-size:13px;font-weight:900;display:inline-flex}.control-button.active{color:#bbf7d0;background:#22c55e2e}.control-button.paused{color:#fecaca;background:#f871712e}.control-button:disabled{cursor:wait;opacity:.7}.risk-form{gap:10px;margin-top:12px;display:grid}.risk-input-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.risk-input-grid label{color:#dbe4f0;gap:6px;min-width:0;font-size:12px;font-weight:800;display:grid}.risk-input-grid input{color:#fff;background:#02061785;border:1px solid #94a3b833;border-radius:10px;outline:none;width:100%;min-width:0;height:38px;padding:0 10px;font-size:13px;font-weight:800}.risk-input-grid input:focus{border-color:#20d9ff;box-shadow:0 0 0 3px #20d9ff1f}.performance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.performance-card{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;gap:5px;min-height:58px;padding:10px;display:grid}.performance-card span{color:#a7b0c0;font-size:12px;font-weight:800}.performance-card strong{color:#fff;font-size:14px}.curve-list{gap:8px;margin-top:12px;display:grid}.curve-row{color:#dbe4f0;grid-template-columns:84px minmax(0,1fr) 72px;align-items:center;gap:8px;min-height:30px;font-size:12px;font-weight:800;display:grid}.curve-row div{background:#94a3b81f;border-radius:999px;height:10px;overflow:hidden}.curve-row i{border-radius:inherit;height:100%;display:block}.curve-row.profit i{background:#22c55e}.curve-row.loss i{background:#f87171}.curve-row strong{text-align:right}.readiness-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.readiness-card{background:#02061757;border:1px solid #94a3b824;border-radius:10px;gap:6px;min-height:96px;padding:12px;display:grid}.readiness-card span{color:#f8fafc;font-size:13px;font-weight:900}.readiness-card strong{text-transform:uppercase;border-radius:999px;width:fit-content;min-height:22px;padding:3px 8px;font-size:11px}.readiness-card small{color:#a7b0c0;font-size:12px;line-height:1.35}.readiness-card.ready strong{color:#bbf7d0;background:#22c55e2e}.readiness-card.defined strong{color:#a5f3fc;background:#20d9ff29}.readiness-card.stubbed strong{color:#e2e8f0;background:#94a3b829}.readiness-card.blocked strong{color:#fecaca;background:#f871712e}.readiness-card.waiting strong,.readiness-card.locked strong{color:#fde68a;background:#f4c43029}.form-error{color:#fecaca;background:#7f1d1d38;border:1px solid #f8717159;border-radius:10px;padding:9px 10px;font-size:12px;font-weight:800}.wallet-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:16px;display:grid}.wallet-form input{color:#f8fafc;background:#0206176b;border:1px solid #94a3b838;border-radius:10px;outline:none;width:100%;min-width:0;height:40px;padding:0 12px;font-size:13px}.wallet-form input:focus{border-color:#20d9ff;box-shadow:0 0 0 3px #20d9ff1a}.inline-error{color:#fecaca;margin-top:8px;font-size:12px;font-weight:800}.table-row,.empty-state{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:grid}.table-row span,.table-row strong,.table-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.table-row span{color:#f8fafc;font-weight:800}.table-row strong{color:#f4c430;text-transform:uppercase;font-size:13px}.table-row small,.empty-state{color:#a7b0c0;font-size:12px}.empty-state{grid-template-columns:1fr}@media (width<=820px){body{background:#07090f}.app-shell{width:min(100% - 16px,560px);padding:10px 0 18px}.topbar{border-radius:12px;flex-direction:column;gap:12px;padding:14px}.topbar-actions{justify-content:space-between;width:100%}h1{font-size:24px}.topbar p,.panel p,.progress-head p{margin-top:6px;font-size:12px;line-height:1.4}.status-pill,.ghost-button{min-height:32px;font-size:12px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.panel-grid{grid-template-columns:1fr;gap:10px;margin-top:10px}.metric-card{border-radius:10px;gap:5px;min-height:86px;padding:10px}.metric-card svg{width:16px;height:16px}.metric-card span{font-size:11px}.metric-card strong{overflow-wrap:anywhere;font-size:15px;line-height:1.2}.progress-panel,.position-panel,.panel{border-radius:10px;padding:12px}.progress-panel,.position-panel{margin-top:10px}.progress-head{flex-direction:column;gap:8px}.progress-head h2,.panel h2{font-size:15px}.progress-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.progress-step{border-radius:8px;gap:4px;min-height:88px;padding:8px}.progress-step strong{font-size:11px}.progress-step span{padding:2px 6px;font-size:9px}.progress-step small{font-size:10px;line-height:1.25}.progress-foot{gap:6px;margin-top:10px}.progress-foot span{min-height:25px;padding:5px 8px;font-size:10px}.panel-head{gap:8px}.panel-head svg{width:17px;height:17px}.control-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.control-button{border-radius:8px;min-height:34px;font-size:11px}.risk-form,.table-list,.wallet-form,.performance-grid,.curve-list,.position-summary,.position-layout,.readiness-grid{margin-top:10px}.position-summary,.position-layout{grid-template-columns:1fr;gap:8px}.position-pnl{text-align:left}.position-identity,.position-pnl,.position-chart-shell,.position-stat{border-radius:8px}.position-identity strong,.position-pnl strong{font-size:16px}.position-candle-chart{aspect-ratio:2.4;min-height:178px}.position-stat-grid,.risk-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.risk-input-grid label{gap:4px;font-size:10px}.risk-input-grid input{border-radius:8px;height:34px;padding:0 8px;font-size:12px}.primary-button.compact{border-radius:8px;width:100%;height:34px;font-size:12px}.performance-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.performance-card{border-radius:8px;min-height:50px;padding:8px}.performance-card span{font-size:10px}.performance-card strong{overflow-wrap:anywhere;font-size:12px}.curve-row{grid-template-columns:72px minmax(0,1fr) 60px;gap:6px;min-height:26px;font-size:10px}.readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.readiness-card{border-radius:8px;gap:4px;min-height:82px;padding:8px}.readiness-card span{font-size:11px}.readiness-card strong{min-height:19px;padding:2px 6px;font-size:9px}.readiness-card small{font-size:10px;line-height:1.25}.wallet-form{grid-template-columns:1fr}.wallet-form input{border-radius:8px;height:36px;font-size:12px}.table-list{gap:6px}.table-row,.empty-state{border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;min-height:36px;padding:7px 9px}.table-row small{grid-column:1/-1}.table-row span,.table-row strong,.table-row small{white-space:normal}.table-row span{font-size:12px}.table-row strong{text-align:right;font-size:11px}.table-row small,.empty-state{font-size:10px}}@media (width<=420px){.app-shell{width:calc(100% - 10px)}.metric-grid,.progress-strip,.readiness-grid,.risk-input-grid{gap:5px}.performance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.app-shell{width:calc(100% - 8px);padding:6px 0 12px}.topbar{gap:8px;padding:10px}h1{font-size:20px}.topbar p,.panel p,.progress-head p{display:none}.topbar-actions{gap:6px}.status-pill,.ghost-button{min-height:28px;padding:0 9px;font-size:10px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:6px}.metric-card{border-radius:8px;gap:3px;min-height:58px;padding:7px}.metric-card svg{width:13px;height:13px}.metric-card span{font-size:9px}.metric-card strong{font-size:12px;line-height:1.15}.progress-panel,.position-panel,.panel{border-radius:8px;padding:8px}.panel-grid,.progress-panel,.position-panel{gap:6px;margin-top:6px}.panel-head{gap:6px}.panel-head svg{width:14px;height:14px}.progress-head h2,.panel h2{font-size:13px}.progress-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:7px}.progress-step{gap:2px;min-height:58px;padding:6px}.progress-step strong{font-size:9px}.progress-step span{padding:1px 5px;font-size:8px}.progress-step small{display:none}.progress-foot{gap:4px;margin-top:6px}.progress-foot span{min-height:21px;padding:3px 6px;font-size:9px}.control-grid{gap:5px;margin-top:7px}.control-button{min-height:30px;font-size:10px}.risk-form,.table-list,.wallet-form,.performance-grid,.curve-list,.position-summary,.position-layout,.readiness-grid{margin-top:7px}.position-summary,.position-layout,.position-stat-grid,.candle-legend{gap:5px}.position-identity,.position-pnl,.position-chart-shell,.position-stat{border-radius:7px;padding:6px}.position-identity span,.position-pnl span,.position-stat span{font-size:8px}.position-identity strong,.position-pnl strong{font-size:12px}.position-identity small,.position-pnl small{font-size:9px}.position-candle-chart{aspect-ratio:2;min-height:142px}.position-stat{gap:2px;min-height:36px}.position-stat strong{font-size:10px}.candle-legend{margin-top:5px}.candle-legend span{font-size:9px}.candle-legend i{width:14px}.risk-input-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.risk-input-grid label{font-size:9px}.risk-input-grid input{height:29px;padding:0 6px;font-size:11px}.primary-button.compact{height:30px;font-size:10px}.performance-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.performance-card{gap:2px;min-height:38px;padding:6px}.performance-card span{font-size:8px}.performance-card strong{font-size:10px}.curve-row{grid-template-columns:58px minmax(0,1fr) 48px;min-height:22px;font-size:9px}.curve-row div{height:7px}.readiness-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.readiness-card{gap:2px;min-height:56px;padding:6px}.readiness-card span{font-size:9px}.readiness-card strong{min-height:16px;padding:1px 5px;font-size:8px}.readiness-card small{display:none}.wallet-form{gap:5px}.wallet-form input{height:31px;padding:0 8px;font-size:11px}.table-list{gap:5px}.table-row,.empty-state{border-radius:7px;min-height:30px;padding:5px 7px}.table-row span{font-size:10px}.table-row strong,.table-row small,.empty-state{font-size:9px}}
