:root{color:#172026;background:#eef3f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{border:0}.auth-page{align-items:center;background:linear-gradient(135deg,rgba(32,106,93,.12),transparent 38%),#eef3f1;display:flex;min-height:100vh;justify-content:center;padding:24px}.auth-panel{background:#fff;border:1px solid #d8e2de;border-radius:8px;box-shadow:0 24px 70px #1720261f;max-width:440px;padding:32px;width:100%}.brand-mark{align-items:center;background:#193c35;border-radius:8px;color:#fff;display:inline-flex;height:48px;justify-content:center;margin-bottom:24px;width:48px}.eyebrow{color:#5a6f68;font-size:14px;margin:0 0 6px}h1,h2,p{margin-top:0}h1{font-size:32px;line-height:1.1;margin-bottom:10px}h2{font-size:20px;margin-bottom:8px}.auth-copy{color:#5a6f68;line-height:1.5;margin-bottom:28px}.auth-form{display:grid;gap:18px}label{color:#26343a;display:grid;font-size:14px;gap:8px}.input-shell{align-items:center;background:#f8faf9;border:1px solid #ccd8d4;border-radius:8px;color:#60736d;display:flex;gap:10px;min-height:46px;padding:0 12px}.input-shell:focus-within{border-color:#206a5d;box-shadow:0 0 0 3px #206a5d24}input{background:transparent;border:0;color:#172026;min-width:0;outline:0;width:100%}.primary-action,.ghost-action{align-items:center;border-radius:8px;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:44px;padding:0 16px}.primary-action{background:#206a5d;color:#fff}.primary-action:disabled{cursor:not-allowed;opacity:.72}.primary-action.compact{min-height:40px}.ghost-action{background:#eff5f2;color:#244940;width:100%}.form-error{background:#fff1f0;border:1px solid #ffd2cf;border-radius:8px;color:#9b2c21;font-size:14px;margin:0;padding:10px 12px}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid #d8e2de;display:flex;flex-direction:column;gap:24px;padding:24px}.sidebar-brand{align-items:center;color:#193c35;display:flex;font-size:20px;font-weight:700;gap:10px}nav{display:grid;gap:8px}.nav-item{align-items:center;border-radius:8px;color:#526862;display:flex;gap:10px;min-height:40px;padding:0 10px;text-decoration:none}.nav-item.active{background:#e8f3ef;color:#206a5d}.sidebar .ghost-action{margin-top:auto}.content-shell{padding:32px}.dashboard{margin:0 auto;max-width:1080px}.topbar{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.metrics-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px}.metric,.panel{background:#fff;border:1px solid #d8e2de;border-radius:8px}.metric{display:grid;gap:8px;padding:20px}.metric span{color:#5a6f68;font-size:14px}.metric strong{font-size:32px}.panel{display:flex;gap:24px;justify-content:space-between;padding:24px}.panel p{color:#5a6f68;line-height:1.6;margin-bottom:0;max-width:640px}.status{align-self:flex-start;background:#e8f3ef;border-radius:8px;color:#206a5d;padding:8px 10px;white-space:nowrap}@media (max-width: 820px){.app-shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid #d8e2de;border-right:0}.metrics-grid{grid-template-columns:1fr}.topbar,.panel{align-items:stretch;flex-direction:column}.status{white-space:normal}}@media (max-width: 560px){.auth-panel,.content-shell,.sidebar{padding:20px}}.page-copy{color:#5a6f68;line-height:1.5;margin-bottom:0;max-width:680px}.market-entry-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.market-entry{align-items:center;background:#fff;border:1px solid #d8e2de;border-radius:8px;color:#172026;display:flex;gap:14px;min-height:88px;padding:18px;text-decoration:none}.market-entry:hover{border-color:#206a5d}.market-entry span{color:#5a6f68;display:grid;gap:4px}.market-entry strong{color:#172026;font-size:16px}.market-workspace{margin:0 auto;max-width:1280px}.market-grid{display:grid;gap:18px;grid-template-columns:280px minmax(0,1fr)}.watchlist-panel,.chart-panel{background:#fff;border:1px solid #d8e2de;border-radius:8px}.watchlist-panel{padding:18px}.panel-heading{align-items:center;display:flex;gap:10px;margin-bottom:16px}.panel-heading h2,.chart-header h2{margin-bottom:0}.chart-title-line{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.chart-title-line span{background:#eff5f2;border:1px solid #d8e2de;border-radius:6px;color:#526862;font-size:12px;font-weight:700;padding:4px 7px}.chart-controls{display:flex;justify-content:flex-end;margin:-4px 0 12px;min-width:0}.indicator-workbench{align-items:center;border-bottom:1px solid #e5ece9;display:flex;flex-wrap:wrap;gap:9px;margin:-2px 0 12px;padding-bottom:12px;position:relative;z-index:10}.indicator-picker{position:relative}.indicator-trigger{align-items:center;background:#f8faf9;border:1px solid #ccd8d4;border-radius:7px;color:#244940;cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:7px;height:36px;padding:0 11px}.indicator-trigger:hover,.indicator-trigger[aria-expanded=true]{background:#eff5f2;border-color:#206a5d}.system-trigger.active{background:#193c35;border-color:#193c35;color:#fff}.system-menu{left:auto;right:0}.system-result{grid-template-columns:34px minmax(0,1fr) auto}.system-selected-mark{align-items:center;background:#206a5d;border-radius:50%;color:#fff;display:inline-flex;height:24px;justify-content:center;width:24px}.system-clear-option{align-items:center;background:#fff1f0;border-radius:7px;color:#9b2c21;cursor:pointer;display:flex;font-size:12px;font-weight:700;gap:7px;margin-bottom:5px;padding:9px 10px;width:100%}.system-summary{align-items:center;background:#f5f9f7;border:1px solid #cddbd6;border-left:4px solid #206a5d;border-radius:8px;display:grid;gap:14px;grid-template-columns:minmax(210px,1.2fr) minmax(260px,1.8fr) auto;margin:-3px 0 12px;padding:11px 13px}.system-summary-title{align-items:center;display:flex;gap:9px;min-width:0}.system-summary-title>span:last-child{display:grid;gap:2px;min-width:0}.system-summary-title strong{color:#193c35;font-size:13px}.system-summary-title small{color:#60736d;font-size:10px;line-height:1.3}.system-summary-icon{align-items:center;background:#dcece6;border-radius:7px;color:#206a5d;display:inline-flex;flex:0 0 auto;height:34px;justify-content:center;width:34px}.system-rule-summary{display:flex;flex-wrap:wrap;gap:5px}.system-rule-summary span{background:#fff;border:1px solid #d8e2de;border-radius:999px;color:#526862;font-size:10px;font-weight:700;padding:4px 7px}.system-live-state{align-items:flex-end;color:#60736d;display:grid;font-size:10px;gap:2px;justify-items:end;white-space:nowrap}.system-live-state strong{color:#526862;font-size:12px}.system-live-state .system-long{color:#16794c}.system-live-state .system-state-error{color:#9b2c21;white-space:normal}.indicator-menu{background:#fff;border:1px solid #cbd8d3;border-radius:10px;box-shadow:0 18px 48px #1720262e;left:0;overflow:hidden;position:absolute;top:calc(100% + 7px);width:min(460px,calc(100vw - 64px));z-index:30}.indicator-search-shell{align-items:center;border-bottom:1px solid #e1e9e6;color:#71847e;display:flex;gap:9px;padding:11px 13px}.indicator-search-shell input{font-size:14px;min-height:28px}.indicator-results{max-height:360px;overflow-y:auto;padding:6px}.indicator-result{align-items:center;background:transparent;border-radius:7px;color:#172026;cursor:pointer;display:grid;gap:10px;grid-template-columns:34px minmax(0,1fr) auto;padding:10px;text-align:left;width:100%}.indicator-result:hover,.indicator-result:focus-visible{background:#eff5f2;outline:0}.indicator-result-icon{align-items:center;background:#e8f3ef;border-radius:7px;color:#206a5d;display:inline-flex;height:34px;justify-content:center;width:34px}.indicator-result>span:nth-child(2){display:grid;gap:3px}.indicator-result strong{font-size:13px}.indicator-result small{color:#60736d;font-size:11px;line-height:1.35}.placement-badge{border-radius:999px;font-size:10px;font-weight:700;padding:4px 7px;white-space:nowrap}.placement-badge.overlay{background:#e7f0ff;color:#245aaa}.placement-badge.pane{background:#f3eafb;color:#70429a}.indicator-empty,.indicator-menu-error{color:#60736d;font-size:13px;margin:0;padding:18px 14px;text-align:center}.indicator-menu-error{color:#9b2c21}.active-indicators{display:flex;flex:1;flex-wrap:wrap;gap:7px}.active-indicator{align-items:center;background:#f8faf9;border:1px solid #d8e2de;border-radius:7px;display:inline-flex;min-height:36px;overflow:hidden;padding-left:9px}.indicator-color-dot{border:1px solid rgba(0,0,0,.12);border-radius:50%;flex:0 0 auto;height:8px;margin-right:7px;width:8px}.active-indicator-label{background:transparent;color:#26343a;cursor:pointer;display:flex;gap:5px;padding:0 6px 0 0}.active-indicator-label strong{font-size:12px}.active-indicator-label small{color:#71847e;font-size:11px}.indicator-chip-action{align-items:center;align-self:stretch;background:transparent;border-left:1px solid #e1e9e6;color:#60736d;cursor:pointer;display:inline-flex;justify-content:center;width:30px}.indicator-chip-action:hover{background:#e8f3ef;color:#206a5d}.indicator-chip-action.remove:hover{background:#fff1f0;color:#9b2c21}.indicator-helper{color:#71847e;font-size:12px}.indicator-dialog-backdrop{align-items:center;background:#0f1d1970;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:100}.indicator-dialog{background:#fff;border:1px solid #cbd8d3;border-radius:12px;box-shadow:0 28px 80px #10221d47;max-height:calc(100vh - 40px);max-width:590px;overflow-y:auto;padding:22px;width:100%}.indicator-dialog-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.indicator-dialog-header h2{margin-bottom:0}.indicator-dialog-header>button{align-items:center;background:#eff5f2;border-radius:7px;color:#526862;cursor:pointer;display:inline-flex;height:34px;justify-content:center;width:34px}.indicator-dialog-copy{color:#60736d;font-size:13px;line-height:1.5;margin:12px 0 18px}.indicator-fieldset{border:0;border-top:1px solid #e1e9e6;margin:0;padding:16px 0 4px}.indicator-fieldset legend{color:#26343a;font-size:13px;font-weight:700;padding:0 8px 0 0}.indicator-parameter-grid,.indicator-color-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.indicator-parameter-grid label,.indicator-color-grid label{font-size:12px;font-weight:600}.indicator-parameter-grid input{background:#f8faf9;border:1px solid #ccd8d4;border-radius:7px;height:40px;padding:0 10px}.indicator-parameter-grid input:focus{border-color:#206a5d;box-shadow:0 0 0 3px #206a5d1f}.indicator-parameter-grid small{color:#86958f;font-size:10px;font-weight:400}.indicator-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.indicator-color-grid label{background:#f8faf9;border:1px solid #d8e2de;border-radius:7px;padding:10px}.color-control{align-items:center;display:flex;gap:9px}.color-control input[type=color]{background:transparent;border:0;cursor:pointer;height:30px;padding:0;width:38px}.color-control code{color:#60736d;font-size:11px}.indicator-validation-error{color:#9b2c21;font-size:12px;margin:10px 0 0}.indicator-dialog-actions{border-top:1px solid #e1e9e6;display:flex;gap:9px;justify-content:flex-end;margin-top:16px;padding-top:16px}.indicator-cancel{background:#eff5f2;border-radius:8px;color:#244940;cursor:pointer;min-height:40px;padding:0 16px}.timeframe-selector{-webkit-overflow-scrolling:touch;background:#f8faf9;border:1px solid #d8e2de;border-radius:7px;display:inline-grid;grid-auto-columns:minmax(44px,auto);grid-auto-flow:column;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin}.timeframe-option{background:transparent;border-right:1px solid #e1e9e6;color:#526862;cursor:pointer;font-size:12px;font-weight:700;height:34px;padding:0 10px;scroll-snap-align:start;touch-action:manipulation;white-space:nowrap}.timeframe-option:last-child{border-right:0}.timeframe-option:hover{background:#eff5f2;color:#244940}.timeframe-option.active{background:#206a5d;color:#fff}.symbol-list{display:grid;gap:10px}.symbol-row{align-items:flex-start;background:#f8faf9;border:1px solid #d8e2de;border-radius:8px;color:#172026;cursor:pointer;display:grid;gap:4px;min-height:64px;padding:12px;text-align:left}.symbol-row strong{color:#5a6f68;font-size:12px}.symbol-row.active{background:#e8f3ef;border-color:#206a5d}.chart-panel{min-width:0;padding:18px}.chart-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.live-feed-status{align-items:flex-end;border:1px solid #d8e2de;border-radius:8px;display:flex;flex-direction:column;gap:3px;min-width:190px;padding:9px 11px}.live-feed-status span{align-items:center;display:flex;font-size:12px;font-weight:800;gap:7px;text-transform:uppercase}.live-feed-status i{background:currentColor;border-radius:50%;display:block;height:8px;width:8px}.live-feed-status strong{color:#172026;font-size:18px}.live-feed-status small{color:#5a6f68;font-size:11px}.live-feed-status.live{background:#e8f3ef;border-color:#a8d3c6;color:#16794c}.live-feed-status.idle,.live-feed-status.pending{background:#fff8e6;border-color:#ecd493;color:#8a6112}.live-feed-status.error{background:#fff0ee;border-color:#ebbbb5;color:#b42318}.live-feed-status.historical{background:#f3f6f5;color:#526862}.tradingview-widget-container{border:1px solid #d8e2de;border-radius:8px;height:min(68vh,680px);min-height:440px;overflow:hidden;width:100%}.tradingview-widget-container__widget{height:100%;width:100%}.custom-chart-shell{background:#fff;border:1px solid #d8e2de;border-radius:8px;height:min(68vh,680px);min-height:480px;overflow:hidden;position:relative;width:100%}.custom-chart-canvas{height:100%;width:100%}.custom-chart-legend{align-items:center;display:flex;flex-wrap:wrap;gap:6px 12px;left:12px;max-width:calc(100% - 64px);pointer-events:none;position:absolute;top:10px;z-index:3}.custom-chart-legend>strong{color:#172026;font-size:14px}.custom-chart-legend>span{color:#60736d;font-size:12px}.legend-value{align-items:baseline;display:inline-flex;gap:4px}.legend-value small{color:#86958f;font-size:10px;font-weight:700}.chart-icon-action{align-items:center;background:#ffffffeb;border:1px solid #d8e2de;border-radius:6px;color:#244940;cursor:pointer;display:inline-flex;height:34px;justify-content:center;position:absolute;right:10px;top:9px;width:34px;z-index:4}.chart-icon-action:hover{background:#eff5f2;border-color:#206a5d}.chart-state-overlay{align-items:center;background:#ffffffe6;color:#526862;display:flex;gap:8px;top:0;right:0;bottom:0;left:0;justify-content:center;position:absolute;z-index:5}.chart-attribution{bottom:4px;color:#7b8f88;font-size:10px;position:absolute;right:8px;text-decoration:none;z-index:4}.chart-error{margin-top:12px}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 980px){.market-grid{grid-template-columns:1fr}.symbol-list{grid-template-columns:repeat(3,minmax(0,1fr))}.system-summary{grid-template-columns:1fr}.system-live-state{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-items:start}}@media (max-width: 820px){.market-entry-grid{grid-template-columns:1fr}.sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-item{justify-content:center;padding:0 8px;text-align:center}}@media (max-width: 620px){.sidebar nav,.symbol-list{grid-template-columns:1fr}.chart-header{align-items:stretch;flex-direction:column}.tradingview-widget-container{height:560px;min-height:560px}.custom-chart-shell{height:clamp(400px,62vh,520px);min-height:400px}.custom-chart-legend{gap:4px 8px;left:8px;max-width:calc(100% - 52px);top:8px}.chart-controls{justify-content:stretch}.timeframe-selector{width:100%}.indicator-workbench{align-items:stretch;flex-direction:column}.indicator-trigger{justify-content:center;width:100%}.system-picker{width:100%}.system-menu{left:0;right:auto}.indicator-menu{width:min(460px,calc(100vw - 64px))}.active-indicators{display:grid;grid-template-columns:1fr}.active-indicator-label{flex:1}.indicator-parameter-grid,.indicator-color-grid{grid-template-columns:1fr}}@media (max-width: 380px){.chart-panel{padding:12px}.custom-chart-shell{height:clamp(380px,60vh,480px);min-height:380px}.timeframe-option{min-width:42px;padding:0 8px}}.topbar-actions{align-items:center;display:flex;gap:10px}.ghost-action.compact{min-height:40px;width:auto}.market-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.compact-metric strong{font-size:24px;word-break:break-word}.metric-positive strong{color:#16794c}.metric-negative strong{color:#b42318}.muted-copy{color:#5a6f68;line-height:1.5;margin-bottom:0}.imported-symbol-list{max-height:620px;overflow:auto;padding-right:4px}.data-panel{background:#fff;border:1px solid #d8e2de;border-radius:8px;margin-top:18px;padding:18px}.backtest-panel{margin-top:18px}.backtest-header{align-items:flex-start}.backtest-copy{color:#60736d;font-size:13px;line-height:1.45;margin:6px 0 0}.backtest-status{align-items:center;display:inline-flex;gap:6px}.backtest-form{align-items:end;background:#f8faf9;border:1px solid #d8e2de;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(180px,1.4fr) minmax(180px,1.4fr) repeat(3,minmax(130px,1fr)) auto;padding:14px}.basket-actions{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:10px}.basket-selection-copy{color:#71847e;font-size:12px}.basket-builder-toggle{align-items:center;display:inline-flex;gap:6px;width:auto}.basket-builder{align-items:end;background:#f8faf9;border:1px dashed #cbd8d3;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(180px,1fr) minmax(240px,1.4fr) auto;margin-top:10px;padding:12px}.basket-builder label{color:#526862;font-size:12px;font-weight:700;gap:6px}.basket-builder input,.basket-builder select{background:#fff;border:1px solid #ccd8d4;border-radius:7px;min-height:40px;padding:8px 10px}.basket-builder select[multiple]{min-height:118px}.backtest-form label{color:#526862;font-size:12px;font-weight:700;gap:6px}.backtest-form label>span{align-items:center;display:inline-flex;gap:5px}.backtest-form input,.backtest-form select{background:#fff;border:1px solid #ccd8d4;border-radius:7px;color:#172026;height:40px;min-width:0;padding:0 10px}.backtest-form input:focus,.backtest-form select:focus{border-color:#206a5d;box-shadow:0 0 0 3px #206a5d1f;outline:0}.backtest-run-button{min-width:132px;white-space:nowrap}.backtest-system-description{color:#71847e;font-size:12px;margin:10px 0 0}.backtest-error{margin-top:12px}.backtest-results{margin-top:18px}.backtest-metrics{display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:16px}.backtest-metric{background:#fff;border:1px solid #d8e2de;border-radius:8px;display:grid;gap:6px;padding:12px}.backtest-metric span{color:#71847e;font-size:11px}.backtest-metric strong{color:#26343a;font-size:18px}.backtest-metric.metric-positive strong{color:#16794c}.backtest-metric.metric-negative strong{color:#b42318}.backtest-table-shell{max-height:480px}.backtest-table{min-width:1320px}.backtest-sort-header{align-items:center;background:transparent;color:inherit;cursor:pointer;display:inline-flex;gap:5px;padding:0;text-transform:inherit}.backtest-sort-header:hover{color:#206a5d}.backtest-table th,.backtest-table td{font-size:12px}.backtest-profit.positive{color:#16794c;font-weight:700}.backtest-profit.negative{color:#b42318;font-weight:700}.backtest-no-trades{background:#f8faf9;border:1px dashed #cbd8d3;border-radius:8px;padding:18px;text-align:center}.backtest-empty-state{align-items:center;background:#f8faf9;border:1px dashed #cbd8d3;border-radius:8px;color:#71847e;display:flex;gap:9px;justify-content:center;margin-top:18px;min-height:82px}.backend-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.table-shell{border:1px solid #d8e2de;border-radius:8px;overflow:auto}table{border-collapse:collapse;min-width:760px;width:100%}th,td{border-bottom:1px solid #e5ece9;padding:11px 12px;text-align:right;white-space:nowrap}th:first-child,td:first-child{text-align:left}th{background:#f8faf9;color:#526862;font-size:12px;font-weight:700;text-transform:uppercase}td{color:#26343a;font-size:14px}tbody tr:last-child td{border-bottom:0}.portfolio-selector-row{align-items:end;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.portfolio-selector-row label{max-width:360px;width:100%}.portfolio-selector-row select,.portfolio-create-form input,.portfolio-create-form select,.order-ticket select,.order-ticket input{background:#fff;border:1px solid #ccd8d4;border-radius:8px;min-height:42px;padding:0 11px}.portfolio-create-form{align-items:end;display:grid;gap:14px;grid-template-columns:minmax(180px,1.3fr) minmax(160px,1fr) minmax(150px,.8fr) minmax(160px,.8fr) auto;margin-bottom:18px}.portfolio-create-form>div{align-self:center}.portfolio-create-form .form-error{grid-column:1 / -1}.portfolio-empty{align-items:center;display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:280px;text-align:center}.portfolio-empty h2,.portfolio-empty p{margin-bottom:0}.portfolio-metrics{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:18px}.portfolio-grid{display:grid;gap:18px;grid-template-columns:minmax(260px,.8fr) minmax(0,1.8fr);margin-bottom:18px}.order-ticket,.holdings-panel,.order-history-panel{min-width:0}.order-ticket{display:grid;gap:14px;align-content:start}.order-ticket .panel-heading,.holdings-panel .panel-heading,.order-history-panel .panel-heading{margin-bottom:0}.order-ticket>.muted-copy{font-size:13px;line-height:1.5;margin-bottom:0}.order-side-toggle{display:grid;gap:8px;grid-template-columns:1fr 1fr}.order-side{align-items:center;background:#eff5f2;border:1px solid transparent;border-radius:8px;color:#526862;cursor:pointer;display:inline-flex;gap:7px;justify-content:center;min-height:40px}.order-side.active.buy{background:#e6f5ed;border-color:#91d4ae;color:#16794c}.order-side.active.sell{background:#fff0ef;border-color:#f2aaa4;color:#b42318}.sell-action{align-items:center;background:#b42318;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:40px;padding:0 16px}.sell-action:disabled{cursor:not-allowed;opacity:.65}.quote-preview{background:#f8faf9;border:1px solid #d8e2de;border-radius:8px;display:grid;gap:4px;padding:12px}.quote-preview span,.quote-preview small{color:#71847e;font-size:12px}.quote-preview strong{color:#193c35;font-size:20px}.portfolio-table{min-width:850px}.portfolio-profit.positive{color:#16794c;font-weight:700}.portfolio-profit.negative{color:#b42318;font-weight:700}.order-history-panel{margin-bottom:18px}.market-unavailable{background:#f8faf9;border-style:dashed;min-height:190px}.strategy-market-empty{background:#f8faf9;border:1px dashed #cbd8d3;border-radius:8px;display:grid;gap:5px;margin-top:14px;padding:16px}.strategy-market-empty strong{color:#26343a;font-size:13px}.strategy-market-empty span{color:#71847e;font-size:12px}.quick-trade-bar{align-items:end;background:#f8faf9;border:1px solid #d8e2de;border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(150px,auto) minmax(190px,1fr) 110px auto;margin:0 0 12px;padding:10px}.quick-trade-label{align-items:center;color:#526862;display:flex;flex-wrap:wrap;font-size:12px;gap:6px;min-height:38px}.quick-trade-label strong{color:#193c35;font-size:14px}.quick-trade-label small{color:#71847e;flex-basis:100%}.quick-trade-bar label{gap:4px}.quick-trade-bar label>span{color:#71847e;font-size:10px;font-weight:700;text-transform:uppercase}.quick-trade-bar select,.quick-trade-bar input{background:#fff;border:1px solid #ccd8d4;border-radius:7px;height:38px;min-width:0;padding:0 9px}.quick-trade-actions{display:flex;gap:7px}.quick-buy,.quick-sell{align-items:center;border-radius:7px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:5px;height:38px;justify-content:center;padding:0 12px}.quick-buy{background:#16794c}.quick-sell{background:#b42318}.quick-buy:disabled,.quick-sell:disabled{cursor:not-allowed;opacity:.58}.quick-trade-success,.quick-trade-error{font-size:11px;grid-column:1 / -1}.quick-trade-success{color:#16794c}.quick-trade-error{color:#b42318}.quick-trade-empty{align-items:center;background:#f8faf9;border:1px dashed #cbd8d3;border-radius:8px;color:#60736d;display:flex;font-size:12px;gap:7px;margin-bottom:12px;padding:10px 12px}.strategy-automation-panel{margin-bottom:18px}.strategy-automation-heading{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.strategy-automation-heading .panel-heading{margin-bottom:0}.strategy-active-badge{align-items:center;background:#e6f5ed;border-radius:999px;color:#16794c;display:inline-flex;font-size:12px;font-weight:700;gap:6px;padding:7px 10px}.strategy-active-badge>span{background:#22a06b;border-radius:50%;box-shadow:0 0 0 3px #22a06b26;height:7px;width:7px}.active-strategy-card{background:#f2f8f5;border:1px solid #cddfd7;border-left:4px solid #206a5d;border-radius:8px;display:grid;gap:14px;grid-template-columns:repeat(6,minmax(110px,1fr));margin-top:14px;padding:14px}.active-strategy-card>div:not(.active-strategy-actions){display:grid;gap:4px}.active-strategy-card span{color:#71847e;font-size:10px;font-weight:700;text-transform:uppercase}.active-strategy-card strong{color:#26343a;font-size:13px}.active-strategy-actions{display:flex;gap:8px;grid-column:1 / -1;justify-content:flex-end}.stop-strategy-action{align-items:center;background:#fff0ef;border:1px solid #f2aaa4;border-radius:8px;color:#b42318;cursor:pointer;display:inline-flex;gap:7px;min-height:40px;padding:0 14px}.stop-strategy-action:disabled{cursor:not-allowed;opacity:.65}.strategy-link-form{align-items:end;display:grid;gap:12px;grid-template-columns:minmax(180px,1.3fr) minmax(170px,1.1fr) minmax(110px,.7fr) minmax(140px,.8fr) minmax(140px,.8fr) auto;margin-top:14px}.strategy-link-form label{color:#526862;font-size:12px;font-weight:700;gap:6px}.strategy-link-form select,.strategy-link-form input{background:#fff;border:1px solid #ccd8d4;border-radius:7px;height:40px;min-width:0;padding:0 9px}.strategy-link-form button{white-space:nowrap}.strategy-warning{color:#8a6116;font-size:12px;line-height:1.45;margin:10px 0 0}.strategy-event-log{margin-top:18px}.strategy-event-log h3{color:#26343a;font-size:14px;margin:0 0 10px}.strategy-event{border-radius:999px;display:inline-block;font-size:10px;font-weight:700;padding:4px 7px;text-transform:uppercase}.strategy-event.executed{background:#e6f5ed;color:#16794c}.strategy-event.skipped{background:#fff0ef;color:#b42318}.strategy-event.info{background:#e7f0ff;color:#245aaa}.strategy-event-message{min-width:360px;text-align:left;white-space:normal}.order-source{border-radius:999px;display:inline-block;font-size:10px;font-weight:700;padding:4px 7px}.order-source.manual{background:#eff5f2;color:#526862}.order-source.strategy{background:#e7f0ff;color:#245aaa}@media (max-width: 980px){.backend-summary-grid,.market-metrics,.portfolio-metrics,.backtest-form{grid-template-columns:repeat(2,minmax(0,1fr))}.backtest-run-button{width:100%}.backtest-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-trade-bar,.strategy-link-form{grid-template-columns:repeat(2,minmax(0,1fr))}.active-strategy-card{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 620px){.backend-summary-grid,.market-metrics,.backtest-form,.backtest-metrics{grid-template-columns:1fr}.basket-actions{align-items:stretch;flex-direction:column}.basket-builder{grid-template-columns:1fr}.topbar-actions{align-items:stretch;flex-direction:column}.topbar-actions .primary-action,.topbar-actions .ghost-action{width:100%}.portfolio-create-form,.portfolio-grid,.portfolio-metrics{grid-template-columns:1fr}.portfolio-selector-row{align-items:stretch;flex-direction:column}.quick-trade-bar,.strategy-link-form,.active-strategy-card{grid-template-columns:1fr}.quick-trade-actions>button{flex:1}.active-strategy-actions{align-items:stretch;flex-direction:column}.active-strategy-actions .ghost-action{width:100%}}
