:root{color:#202124;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(#ffffffd1,#f5f7f8f5),#f5f7f8;min-width:320px;min-height:100vh;margin:0}button{font:inherit}.app-shell{width:min(1280px,100%);margin:0 auto;padding:18px 18px 96px}.topbar{justify-content:space-between;align-items:center;gap:16px;padding:12px 0 18px;display:flex}.topbar-actions{align-items:center;gap:10px;display:flex}.brand-block{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{color:#0f766e;background:#fff;border:1px solid #d7dddf;border-radius:8px;flex:none;place-items:center;width:44px;height:44px;display:grid}h1,h2,h3{letter-spacing:0;margin:0}h1{color:#17191a;font-size:24px;line-height:1.05}h2{font-size:17px;font-weight:700}h3{font-size:14px;font-weight:800}.brand-title-row{align-items:center;gap:8px;min-width:0;display:flex}.instance-pill{border:1px solid color-mix(in srgb, var(--instance-accent,#0f766e) 42%, #d7dddf);max-width:190px;min-height:24px;color:var(--instance-accent,#0f766e);background:color-mix(in srgb, var(--instance-accent,#0f766e) 10%, #fff);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:800;line-height:1;display:inline-flex;overflow:hidden}.status-line{color:#62696d;white-space:nowrap;align-items:center;gap:6px;margin-top:5px;font-size:13px;display:flex}.status-line.online{color:#13795b}.status-line.offline{color:#b42318}.status-line.realtime{margin-top:3px}.status-line.connected{color:#13795b}.status-line.connecting{color:#8a6d1f}.status-line.disconnected{color:#b42318}.login-panel{place-items:center;min-height:min(560px,100vh - 120px);display:grid}.login-form{background:#fff;border:1px solid #d7dddf;border-radius:8px;gap:14px;width:min(420px,100%);padding:22px;display:grid;box-shadow:0 18px 45px #0f172a14}.login-form p{color:#62696d;margin:6px 0 0;font-size:13px}.login-instance-pill{border:1px solid color-mix(in srgb, var(--instance-accent,#0f766e) 42%, #d7dddf);max-width:100%;min-height:26px;color:var(--instance-accent,#0f766e);background:color-mix(in srgb, var(--instance-accent,#0f766e) 10%, #fff);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;margin-top:10px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex;overflow:hidden}.login-form label{color:#556066;gap:6px;font-size:12px;font-weight:700;display:grid}.login-form input{color:#17191a;background:#fff;border:1px solid #cfd7db;border-radius:6px;width:100%;min-height:42px;padding:0 12px;font-size:15px}.login-message{color:#b42318;font-size:13px;font-weight:700}.icon-button{color:#202124;cursor:pointer;background:#fff;border:1px solid #d7dddf;border-radius:8px;flex:none;place-items:center;width:44px;height:44px;display:grid}.icon-button:disabled{cursor:wait;opacity:.72}.icon-button.danger{color:#9f1d1d;background:#fff4f2;border-color:#f1bbbb}.row-actions{align-items:center;gap:6px;display:flex}.row-actions .icon-button{width:34px;height:34px}.spinning{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.alert-strip{color:#8f1d16;background:#fff4f2;border:1px solid #f4c7c3;border-radius:8px;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;font-size:14px;display:flex}.safety-strip{background:#fff;border:1px solid #dfe5e7;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:10px 12px;display:flex}.mobile-safety-strip{display:none}.safety-summary{align-items:center;gap:8px;min-width:0;display:flex}.safety-summary>div{gap:3px;min-width:0;display:grid}.safety-strip strong{color:#181a1b;font-size:14px}.safety-strip .instance-summary{color:var(--instance-accent,#0f766e)}.safety-strip span{color:#667085;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.safety-strip.enabled{background:#f0fdf7;border-color:#b7ead4}.safety-strip.enabled svg{color:#13795b}.safety-strip.paused,.safety-strip.locked{background:#fff8d6;border-color:#eadb9f}.safety-strip.paused svg,.safety-strip.locked svg{color:#8a6d1f}.safety-strip.emergency{background:#fff4f2;border-color:#f1bbbb}.safety-strip.emergency svg,.safety-strip.emergency strong{color:#9f1d1d}.safety-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.safety-menu-icon{opacity:.78;margin-left:auto}.metrics-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.metric-tile{background:#fff;border:1px solid #dfe5e7;border-radius:8px;align-items:center;gap:8px;min-width:0;min-height:58px;padding:9px 10px;display:flex}.metric-tile svg{color:#53676d;flex:none;width:18px;height:18px}.metric-tile div{min-width:0}.metric-tile span,.position-row span{color:#667085;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;display:block;overflow:hidden}.metric-tile strong{color:#181a1b;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:17px;line-height:1;display:block;overflow:hidden}.metric-tile small{color:#667085;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;line-height:1.2;display:block;overflow:hidden}.metric-tile-wide,.metric-tile-time{min-width:0}.tabbar{border-bottom:1px solid #dfe5e7;gap:6px;margin-bottom:14px;display:flex}.tabbar button{color:#667085;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;justify-content:center;align-items:center;gap:7px;min-width:116px;height:42px;display:flex}.tabbar button.active{color:#102321;border-bottom-color:#0f766e;font-weight:700}.workspace{min-height:420px}.data-panel{background:#fff;border:1px solid #dfe5e7;border-radius:8px;overflow:hidden}.stats-grid{background:#fff;border-bottom:1px solid #edf0f2;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;padding:14px 16px;display:grid}.stat-card{background:#f8fafb;border:1px solid #dfe5e7;border-radius:8px;align-content:center;gap:5px;min-height:74px;padding:12px 14px;display:grid}.stat-card span{color:#667085;font-size:12px;font-weight:800}.stat-card strong{color:#102321;font-size:24px;line-height:1}.chart-panel{background:#fff;border:1px solid #dfe5e7;border-radius:8px;overflow:hidden}.chart-header{border-bottom:1px solid #edf0f2;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.chart-title{align-items:center;gap:10px;min-width:0;display:flex}.chart-title svg{color:#0f766e;flex:none}.chart-title span{color:#667085;margin-top:3px;font-size:12px;display:block}.chart-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.chart-symbol-field{gap:5px;display:grid}.chart-symbol-field span{color:#667085;font-size:12px;font-weight:700}.chart-symbol-field input{color:#102321;text-transform:uppercase;background:#fff;border:1px solid #d7dddf;border-radius:8px;width:128px;height:42px;padding:0 10px;font-size:14px;font-weight:700}.timeframe-control{background:#f8fafb;border:1px solid #d7dddf;border-radius:8px;flex:0 260px;grid-template-columns:repeat(4,minmax(42px,1fr));gap:4px;padding:4px;display:grid}.timeframe-control button{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:6px;height:32px;font-size:12px;font-weight:700}.timeframe-control button.active{color:#102321;background:#fff;box-shadow:0 1px 4px #1c23261a}.chart-timeframe-bar{background:#fbfcfc;border-bottom:1px solid #edf0f2;justify-content:flex-end;align-items:center;gap:10px;padding:8px 12px;display:flex}.protection-drag-toggle{color:#344054;white-space:nowrap;background:#fff;border:1px solid #d7dddf;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.protection-drag-toggle input{accent-color:#13795b;width:16px;height:16px}.active-trade{background:#f8fafb;border-bottom:1px solid #edf0f2;grid-template-columns:minmax(180px,.8fr) minmax(0,2fr);gap:12px;padding:12px 16px;display:grid}.active-trade.long{border-left:4px solid #13795b}.active-trade.short{border-left:4px solid #b42318}.active-trade.empty{border-left:4px solid #94a3b8;grid-template-columns:1fr}.active-trade-main span,.active-trade-grid span{color:#667085;font-size:12px;font-weight:700;display:block}.active-trade-main strong{color:#102321;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:18px;display:flex}.ownership-badge{border:1px solid;border-radius:999px;align-items:center;min-height:20px;padding:0 8px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.ownership-badge.managed{color:#13795b;background:#f0fdf4;border-color:#bbf7d0}.ownership-badge.unmanaged{color:#b45309;background:#fff7ed;border-color:#fed7aa}.active-trade-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;display:grid}.active-trade-grid div{min-width:0}.active-trade-grid strong{color:#181a1b;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:14px;display:block;overflow:hidden}.active-trade-grid strong.positive{color:#13795b}.active-trade-grid strong.negative,.position-row strong.negative{color:#b42318}td strong.positive{color:#13795b}td strong.negative{color:#b42318}.daily-performance-strip{background:#fff;border-bottom:1px solid #edf0f2;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px 16px;display:grid}.daily-performance-strip span{color:#667085;font-size:12px;font-weight:700;display:block}.daily-performance-strip strong{color:#181a1b;margin-top:3px;font-size:15px;display:block}.daily-performance-strip strong.positive{color:#13795b}.daily-performance-strip strong.negative{color:#b42318}.pending-signal-panel{background:#fffdf0;border-bottom:1px solid #eadb9f;grid-template-columns:minmax(180px,.9fr) minmax(0,1.5fr) auto;align-items:center;gap:12px;padding:12px 16px;display:grid}.pending-signal-main span,.pending-signal-details span{color:#8a6d1f;font-size:12px;font-weight:800;display:block}.pending-signal-main strong{color:#181a1b;margin-top:4px;font-size:18px;display:flex}.pending-signal-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.pending-signal-details strong{color:#181a1b;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:14px;display:block;overflow:hidden}.pending-signal-actions{grid-template-columns:repeat(2,minmax(90px,1fr));gap:8px;display:grid}.chart-trade-panel{background:#fff;border-bottom:1px solid #edf0f2;grid-template-columns:minmax(150px,.8fr) minmax(120px,.6fr) minmax(320px,1.8fr);align-items:end;gap:12px;padding:12px 16px;display:grid}.chart-trade-header span,.chart-trade-inputs span{color:#667085;font-size:12px;font-weight:700;display:block}.chart-trade-header strong{color:#102321;margin-top:4px;font-size:18px;display:block}.chart-trade-header small{color:#667085;margin-top:4px;font-size:12px;display:block}.chart-trade-inputs{grid-template-columns:minmax(96px,140px) minmax(84px,110px);gap:8px;display:grid}.chart-trade-inputs input{color:#102321;background:#fff;border:1px solid #d7dddf;border-radius:8px;width:100%;height:38px;margin-top:5px;padding:0 9px;font-size:13px;font-weight:700}.chart-confirm-toggle{align-self:end}.chart-confirm-toggle input{accent-color:#13795b;width:18px;height:18px;margin-top:12px}.chart-trade-actions{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.chart-trade-button{color:#102321;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.chart-trade-button:disabled{cursor:not-allowed;opacity:.45}.chart-trade-button.blocked:not(:disabled){box-shadow:inset 0 0 0 2px #f59e0b73}.chart-trade-button.buy{color:#fff;background:#13795b}.chart-trade-button.sell{color:#fff;background:#b42318}.chart-trade-button.secondary{color:#3f5357;border-color:#d7dddf}.chart-trade-button.danger{color:#b42318;background:#fff7f7;border-color:#fecaca}.chart-surface.dragging-protection,.chart-surface.dragging-protection *{cursor:ns-resize!important}.chart-surface{overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:430px}.chart-body{position:relative}.chart-overlay{color:#667085;pointer-events:none;background:#ffffffb8;place-items:center;font-size:14px;display:grid;position:absolute;inset:0}.chart-overlay.error{color:#9f1d1d}.chart-warning{z-index:2;color:#7a2e0e;pointer-events:none;background:#fffaebf0;border:1px solid #fedf89;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:700;line-height:1.35;position:absolute;top:10px;left:12px;right:12px}.chart-footer{background:#fafbfb;border-top:1px solid #edf0f2;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.chart-footer div{border-right:1px solid #edf0f2;padding:12px 16px}.chart-footer div:last-child{border-right:0}.chart-footer span{color:#667085;font-size:12px;display:block}.chart-footer strong{color:#181a1b;margin-top:4px;font-size:14px;display:block}.panel-header{border-bottom:1px solid #edf0f2;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.panel-subtitle{color:#667085;margin:4px 0 0;font-size:12px}.count-pill{color:#334155;text-align:center;background:#eef3f4;border-radius:999px;min-width:28px;padding:3px 8px;font-size:12px;font-weight:700}.panel-actions{align-items:center;gap:8px;display:flex}.action-button{color:#202124;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d7dddf;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.action-button.secondary{color:#2f5961;background:#f5fafb}.action-button.danger{color:#9f1d1d;background:#fff4f2;border-color:#f1bbbb}.action-button:disabled{cursor:not-allowed;opacity:.55}.table-icon-button{color:#2f5961;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d7dddf;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:30px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.table-icon-button.danger{color:#9f1d1d;background:#fff4f2;border-color:#f1bbbb}.table-icon-button:disabled{cursor:not-allowed;opacity:.55}.table-actions{flex-wrap:wrap;gap:8px;display:flex}.table-wrap{overflow-x:auto}.status-legend{background:#fafbfb;border-bottom:1px solid #edf0f2;flex-wrap:wrap;gap:8px;padding:10px 16px;display:flex}.status-legend span{color:#53676d;background:#fff;border:1px solid #dfe5e7;border-radius:8px;align-items:center;gap:5px;padding:5px 8px;font-size:12px;display:inline-flex}.status-legend strong{color:#181a1b}table{border-collapse:collapse;width:100%;min-width:860px}th,td{text-align:left;white-space:nowrap;border-bottom:1px solid #edf0f2;padding:12px 14px;font-size:13px}th{color:#667085;background:#fafbfb;font-size:12px;font-weight:700}tr:last-child td{border-bottom:0}.symbol-cell{color:#111827;font-weight:800}.side-pill{border-radius:999px;justify-content:center;align-items:center;min-width:58px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex}.side-pill.long{color:#06603f;background:#def7ec}.side-pill.short{color:#9f1d1d;background:#fde2e2}.status-pill{color:#475467;background:#f8fafb;border:1px solid #dfe5e7;border-radius:999px;justify-content:center;align-items:center;min-width:112px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex}.status-pill.paper-position-opened,.status-pill.accepted,.status-pill.paper{color:#06603f;background:#def7ec;border-color:#b7ead4}.status-pill.rejected-by-risk,.status-pill.broker-blocked,.status-pill.ibkr-entry-blocked,.status-pill.ibkr-cancel-orders-blocked,.status-pill.ibkr-close-position-blocked,.status-pill.ibkr-flatten-blocked{color:#9f1d1d;background:#fde2e2;border-color:#f1bbbb}.status-pill.risk-rejected,.status-pill.risk-settings-updated,.status-pill.manual-trade-submitted,.status-pill.safety-trading-locked,.status-pill.safety-trading-resumed{color:#8a6d1f;background:#fff8d6;border-color:#eadb9f}.status-pill.safety-emergency-stop{color:#9f1d1d;background:#fde2e2;border-color:#f1bbbb}.status-pill.paper-action,.status-pill.paper-position-opened{color:#2f5961;background:#e8f6f8;border-color:#bddde3}.status-pill.open,.status-pill.executed,.status-pill.closed{color:#06603f;background:#def7ec;border-color:#b7ead4}.status-pill.rejected,.status-pill.failed{color:#9f1d1d;background:#fde2e2;border-color:#f1bbbb}.status-pill.pending{color:#8a6d1f;background:#fff8d6;border-color:#eadb9f}.reason-cell{text-overflow:ellipsis;max-width:420px;overflow:hidden}td small{color:#667085;margin-top:4px;font-size:11px;display:block}.empty-state{color:#667085;place-items:center;min-height:220px;font-size:14px;display:grid}.position-list{display:grid}.position-view-tabs{background:#f8fafb;border-bottom:1px solid #edf0f2;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 16px;display:grid}.position-view-tabs.copier-view-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.position-view-tabs button{color:#526168;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-weight:900;display:flex}.position-view-tabs button.active{color:#102321;background:#fff;box-shadow:0 1px 5px #1c23261f}.position-view-tabs span{color:#53676d;background:#e9eef1;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;font-size:12px;display:inline-flex}.position-row{border-bottom:1px solid #edf0f2;grid-template-columns:minmax(150px,1.4fr) repeat(5,minmax(100px,1fr)) minmax(220px,auto);align-items:center;gap:12px;padding:14px 16px;display:grid}.position-row:last-child{border-bottom:0}.position-row strong{color:#181a1b;margin-top:4px;font-size:14px;display:block}.position-row>div:first-child strong{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.position-row>div:first-child span+span{display:none}.position-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.closed-positions-panel,.panel-header.compact{padding-top:0}.date-filter{color:#667085;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.date-filter input{color:#181a1b;background:#fff;border:1px solid #cfd7db;border-radius:6px;min-height:36px;padding:0 10px}.closed-total-inline{flex:1;justify-content:flex-end;align-items:center;gap:18px;min-width:0;display:flex}.closed-total-inline div{min-width:92px}.closed-total-inline span{color:#667085;font-size:12px;font-weight:700;line-height:1.2;display:block}.closed-total-inline strong{color:#181a1b;margin-top:4px;font-size:15px;line-height:1.2;display:block}.closed-total-inline strong.positive{color:#13795b}.closed-total-inline strong.negative{color:#b42318}.audit-list{display:grid}.audit-row{border-bottom:1px solid #edf0f2;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 16px;display:grid}.audit-row:last-child{border-bottom:0}.audit-row>div{gap:7px;min-width:0;display:grid}.audit-row strong{color:#181a1b;font-size:13px;line-height:1.35}.audit-row time{color:#667085;white-space:nowrap;font-size:12px}.audit-action{justify-self:start;min-width:0}.trade-panel{max-width:920px}.trade-form{gap:16px;padding:16px;display:grid}.broker-status-card{background:#fff;border:1px solid #dfe5e7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.broker-status-card span{color:#667085;font-size:12px;display:block}.broker-status-card strong{color:#181a1b;margin-top:4px;font-size:13px;display:block}.broker-status-card .broker-connection-details{color:#475467;margin-top:6px;font-size:12px;line-height:1.45;display:block}.broker-status-flags{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.broker-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.broker-choice-card{color:#181a1b;cursor:pointer;text-align:left;background:#fff;border:1px solid #dfe5e7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:78px;padding:12px;display:grid}.broker-choice-card:hover{background:#fbfcfc;border-color:#aebec3}.broker-choice-card.active{border-color:#0f766e;box-shadow:inset 0 0 0 1px #0f766e}.broker-choice-card strong{font-size:14px;display:block}.broker-choice-card small{color:#667085;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12px;line-height:1.35;display:block;overflow:hidden}.side-control{background:#f8fafb;border:1px solid #d7dddf;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px;display:grid}.side-control button{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:40px;font-weight:900}.side-control button.active:first-child{color:#06603f;background:#def7ec}.side-control button.active:last-child{color:#9f1d1d;background:#fde2e2}.settings-panel{max-width:920px}.copier-panel{width:100%}.settings-form{gap:14px;padding:16px;display:grid}.settings-section-title{padding-top:4px}.settings-section-title h3{color:#181a1b}.broker-environment-tabs{background:#f8fafb;border:1px solid #d7dddf;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;display:grid}.broker-environment-tabs button{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:40px;font-size:13px;font-weight:900}.broker-environment-tabs button.active{color:#102321;background:#fff;box-shadow:0 1px 5px #1c23261f}.broker-environment-tabs button.active:first-child{color:#06603f}.broker-environment-tabs button.active:last-child{color:#9f1d1d}.broker-environment-panel{background:#fff;border:1px solid #dfe5e7;border-radius:8px;gap:14px;padding:14px;display:grid}.broker-environment-panel.live{border-color:#fecaca}.market-data-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.market-data-status-grid div{background:#fafbfb;border:1px solid #dfe5e7;border-radius:8px;padding:10px 12px}.market-data-status-grid span{color:#667085;font-size:12px;display:block}.market-data-status-grid strong{color:#181a1b;margin-top:4px;font-size:14px;display:block}.broker-note{color:#475467;background:#fafbfb;border:1px solid #dfe5e7;border-radius:8px;padding:12px;font-size:13px;line-height:1.5}.broker-environment-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.broker-environment-heading span{color:#667085;font-size:12px;font-weight:700;display:block}.broker-environment-heading strong{color:#181a1b;margin-top:3px;font-size:16px;display:block}.toggle-row{background:#fafbfb;border:1px solid #dfe5e7;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.toggle-row strong,.settings-grid span{color:#181a1b;font-size:13px;display:block}.toggle-row small{color:#667085;margin-top:3px;font-size:12px;display:block}.toggle-row input[type=checkbox]{accent-color:#0f766e;flex:none;width:46px;height:26px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-grid.single{grid-template-columns:minmax(0,1fr)}.settings-grid label{gap:7px;display:grid}.settings-grid input,.settings-grid select,.settings-textarea{color:#181a1b;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #d7dddf;border-radius:8px;padding:8px 10px}.settings-textarea{resize:vertical;min-height:112px;font-family:Consolas,Courier New,monospace}.wide-field{grid-column:1/-1}.settings-actions{justify-content:flex-end;align-items:center;gap:12px;padding-top:2px;display:flex}.save-message{color:#13795b;font-size:13px;font-weight:700}@media (width<=820px){.app-shell{padding:12px 12px 92px}.desktop-safety-strip{display:none}.mobile-safety-strip{z-index:8;margin:0 -2px 8px;padding:0;display:block;position:sticky;top:0;overflow:hidden;box-shadow:0 8px 18px #1c232614}.mobile-safety-strip summary{cursor:pointer;min-height:48px;padding:8px 10px;list-style:none}.mobile-safety-strip summary::-webkit-details-marker{display:none}.mobile-safety-strip .safety-summary{grid-template-columns:auto minmax(0,1fr) auto;width:100%;display:grid}.mobile-safety-strip .safety-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 10px 10px;display:grid}.mobile-safety-strip .action-button{min-height:38px;padding:0 8px}.mobile-safety-strip:not([open]) .safety-actions{display:none}.metrics-grid{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;gap:8px;margin:0 -12px 10px;padding:0 12px 4px;scroll-padding-inline:12px;display:flex;overflow-x:auto}.metrics-grid::-webkit-scrollbar{display:none}.metric-tile{scroll-snap-align:start;flex:0 0 134px;min-height:64px;padding:10px}.metric-tile-wide{flex-basis:190px}.metric-tile-time{flex-basis:156px}.metric-tile-wide span,.metric-tile-time span{font-size:10px}.metric-tile-wide strong,.metric-tile-time strong{text-overflow:clip;overflow:visible}.metric-tile strong{font-size:18px}.tabbar{z-index:10;background:#fffffff5;border:1px solid #d7dddf;border-radius:8px;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin:0;padding:6px;display:grid;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 8px 22px #1c232624}.tabbar button{border:0;border-radius:6px;min-width:0;height:46px;font-size:10px}.tabbar button.active{background:#e6f4f1}.position-row{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{overscroll-behavior-x:contain;scrollbar-width:none;gap:8px;margin:0;padding:12px;display:flex;overflow-x:auto}.stats-grid::-webkit-scrollbar{display:none}.stat-card{flex:0 0 128px;min-height:66px;padding:10px 12px}.stat-card strong{font-size:20px}.position-view-tabs.copier-view-tabs{overscroll-behavior-x:contain;scrollbar-width:none;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.position-view-tabs.copier-view-tabs::-webkit-scrollbar{display:none}.position-view-tabs.copier-view-tabs button{flex:0 0 150px}.position-actions{justify-content:flex-start}.panel-header.compact{flex-direction:column;align-items:stretch}.closed-total-inline{flex-wrap:wrap;justify-content:flex-start}.audit-row,.broker-status-card,.broker-card-grid{grid-template-columns:1fr}.broker-status-flags{justify-content:flex-start}.settings-panel,.trade-panel{max-width:none}.chart-header{align-items:center;gap:8px;padding:8px 10px}.chart-tools{flex:none;justify-content:flex-end}.pending-signal-panel{grid-template-columns:1fr}.pending-signal-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.timeframe-control{flex:auto;width:auto;min-width:0}.chart-timeframe-bar{align-items:stretch}.protection-drag-toggle{flex:none}.chart-symbol-field{gap:0;width:auto}.chart-symbol-field span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.chart-symbol-field input{border-radius:7px;width:96px;height:34px;padding:0 8px;font-size:13px}.active-trade{grid-template-columns:1fr}.active-trade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-trade-panel{grid-template-columns:1fr}.chart-trade-actions{grid-template-columns:repeat(5,minmax(0,1fr))}.chart-surface{height:360px}}@media (width<=480px){.topbar{align-items:flex-start}h1{font-size:22px}.status-line{white-space:normal}.chart-title{gap:7px}.chart-title svg{width:17px;height:17px}.chart-title h2{font-size:16px}.chart-title span{display:none}.chart-symbol-field input{width:86px}.metric-tile{flex-basis:124px;min-height:62px}.metric-tile-wide{flex-basis:184px}.metric-tile-time{flex-basis:150px}th,td{padding:11px 12px}.position-row{grid-template-columns:1fr}.panel-actions{flex-direction:column-reverse;align-items:flex-end}.position-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-grid{grid-template-columns:1fr}.settings-actions{flex-direction:column;align-items:stretch}.safety-actions{grid-template-columns:1fr}.chart-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-footer div:nth-child(2n){border-right:0}.active-trade{padding:10px}.active-trade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-trade-panel{padding:10px}.chart-trade-inputs,.chart-trade-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-trade-actions>.chart-trade-button.danger{grid-column:1/-1}.chart-surface{height:320px}}
