@import url('./tokens.css');
body { overflow: hidden; }
.topbar { height: 64px; border-bottom: 1px solid var(--border); background: rgba(7,11,20,.94); display: flex; align-items: center; justify-content: space-between; padding: 0 22px; }
.brand { font-weight: 900; letter-spacing: -.03em; }
.brand span { color: var(--primary); }
.toolbar { display: flex; align-items: center; gap: 12px; }
.status { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--muted); }
.shell { height: calc(100vh - 64px); display: grid; grid-template-columns: 230px minmax(0,1fr); }
.sidebar { border-right: 1px solid var(--border); padding: 18px 12px; background: #09101c; }
.nav-link { display: flex; padding: 12px 14px; margin-bottom: 6px; border-radius: 10px; color: var(--muted); }
.nav-link.active, .nav-link:hover { color: var(--text); background: var(--surface-2); }
.workspace { overflow: auto; padding: 20px; }
.hero { padding: 28px; display: grid; grid-template-columns: 1.4fr .8fr; gap: 24px; }
.hero h1 { margin: 0 0 10px; font-size: clamp(30px,4vw,54px); line-height: 1; }
.hero-panel { padding: 20px; }
.grid { margin-top: 18px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.module { padding: 18px; min-height: 150px; }
.module h3 { margin-top: 0; }
select { background: var(--surface-2); color: var(--text); border: 1px solid var(--border); border-radius: 9px; padding: 9px; }
@media (max-width: 900px) { .hero, .grid { grid-template-columns: 1fr; } }

/* Sprint A2.1 Desktop Framework */
html[data-theme="midnight"] { --app-bg:#070b14; --app-sidebar:#09101c; }
html[data-theme="dark"] { --app-bg:#101114; --app-sidebar:#15171b; }
html[data-theme="light"] { --app-bg:#eef2f7; --app-sidebar:#ffffff; --text:#142033; --muted:#64748b; --surface:#ffffff; --surface-2:#f1f5f9; --border:#dbe3ee; }
body { background: var(--app-bg, #070b14); }
.brand { display:flex; align-items:center; gap:4px; }
.brand small { margin-left:8px; font-size:10px; color:var(--muted); border:1px solid var(--border); border-radius:999px; padding:3px 7px; }
.icon-btn { width:36px; height:36px; border:1px solid var(--border); border-radius:9px; background:var(--surface-2); color:var(--text); cursor:pointer; }
.sidebar { display:flex; flex-direction:column; justify-content:space-between; background:var(--app-sidebar, #09101c); }
.sidebar-footer { display:flex; flex-direction:column; gap:5px; padding:12px; font-size:11px; border-top:1px solid var(--border); }
.eyebrow { color:var(--primary); font-weight:800; letter-spacing:.12em; font-size:12px; }
.hero-actions { display:flex; gap:10px; margin-top:20px; }
.btn { border:1px solid var(--border); color:var(--text); background:var(--surface-2); padding:11px 16px; border-radius:10px; cursor:pointer; font-weight:700; }
.btn-primary { background:var(--primary); color:#fff; border-color:transparent; }
.metric-row { display:grid; grid-template-columns:100px minmax(0,1fr); gap:12px; padding:10px 0; border-bottom:1px solid var(--border); }
.metric-row:last-child { border-bottom:0; }
.metric-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; text-align:right; }
.module { position:relative; transition:transform .18s ease,border-color .18s ease; }
.module:hover { transform:translateY(-2px); border-color:var(--primary); }
.module-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:var(--surface-2); color:var(--primary); font-weight:900; }
.badge { display:inline-flex; margin-top:14px; padding:5px 8px; border-radius:999px; background:rgba(34,197,94,.12); color:#4ade80; font-size:11px; font-weight:800; }
.badge-warning { background:rgba(245,158,11,.12); color:#fbbf24; }
.status-grid { margin-top:18px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.status-card { padding:16px; display:flex; justify-content:space-between; gap:10px; }
.status-card span { color:var(--muted); }
.toast-region { position:fixed; right:18px; bottom:18px; z-index:1000; display:grid; gap:10px; }
.toast { min-width:260px; max-width:360px; padding:13px 15px; border-radius:10px; background:var(--surface); color:var(--text); border:1px solid var(--border); box-shadow:0 16px 40px rgba(0,0,0,.35); opacity:0; transform:translateY(8px); transition:.2s ease; }
.toast.show { opacity:1; transform:translateY(0); }
.toast-success { border-color:rgba(34,197,94,.55); }
.toast-error { border-color:rgba(239,68,68,.55); }
@media (max-width: 1100px) { .status-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }


/* Sprint A2.3 Portfolio */
.page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:18px; }
.page-heading h1 { margin:0 0 8px; font-size:34px; }
.page-heading p { margin:0; }
.page-actions { display:flex; align-items:center; gap:10px; }
.search-box { min-width:260px; display:flex; align-items:center; gap:8px; padding:0 12px; border:1px solid var(--border); border-radius:10px; background:var(--surface-2); }
.search-box input { width:100%; height:42px; border:0; outline:0; color:var(--text); background:transparent; }
.portfolio-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:14px; }
.summary-tile { padding:18px; display:flex; flex-direction:column; gap:7px; }
.summary-tile span,.summary-tile small { color:var(--muted); }
.summary-tile strong { font-size:24px; letter-spacing:-.03em; }
.portfolio-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:14px; min-height:460px; }
.portfolio-table-card,.allocation-card { padding:18px; }
.panel-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:16px; }
.panel-head h2 { margin:0 0 4px; font-size:18px; }
.panel-head p { margin:0; font-size:12px; }
.table-wrap { overflow:auto; }
.data-table { width:100%; border-collapse:collapse; font-size:13px; }
.data-table th { color:var(--muted); font-weight:700; text-align:right; padding:11px 10px; border-bottom:1px solid var(--border); white-space:nowrap; }
.data-table th:first-child,.data-table td:first-child { text-align:left; }
.data-table td { text-align:right; padding:14px 10px; border-bottom:1px solid rgba(34,48,73,.7); white-space:nowrap; }
.data-table tbody tr:hover { background:rgba(255,255,255,.025); }
.symbol-chip { display:inline-flex; min-width:52px; justify-content:center; padding:6px 9px; border-radius:8px; background:rgba(19,199,132,.12); color:#5ee6ad; }
.table-sub { display:block; margin-top:4px; font-size:11px; }
.positive { color:#43d89e !important; }
.negative { color:#ff6b74 !important; }
.neutral { color:var(--muted) !important; }
.weight-cell { min-width:100px; }
.weight-cell i { display:block; width:100%; height:4px; margin-top:6px; overflow:hidden; border-radius:999px; background:var(--surface-2); }
.weight-cell b { display:block; height:100%; border-radius:inherit; background:var(--primary); }
.allocation-list { display:grid; gap:16px; }
.allocation-item { display:grid; grid-template-columns:minmax(0,1fr) 44px; gap:7px 10px; align-items:center; }
.allocation-item>div:first-child { display:flex; justify-content:space-between; gap:10px; grid-column:1/-1; }
.allocation-item span,.allocation-item small { color:var(--muted); font-size:11px; }
.allocation-item small { text-align:right; }
.allocation-bar { height:7px; overflow:hidden; border-radius:999px; background:var(--surface-2); }
.allocation-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--primary),#4ade80); }
.empty-state { padding:38px !important; text-align:center !important; color:var(--muted); }
.btn:disabled { opacity:.55; cursor:wait; }
@media (max-width:1200px) { .portfolio-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } .portfolio-layout { grid-template-columns:1fr; } }
@media (max-width:760px) { .page-heading { align-items:stretch; flex-direction:column; } .page-actions { flex-direction:column; align-items:stretch; } .search-box { min-width:0; } .portfolio-summary { grid-template-columns:1fr; } }

/* Sprint A2.4 Full - FastConnect Control Center */
.quick-link { color:var(--text); font-size:12px; font-weight:800; padding:8px 11px; border:1px solid var(--border); border-radius:8px; background:var(--surface-2); }
.nav-link { align-items:center; gap:11px; }
.nav-icon { width:24px; text-align:center; color:var(--primary); font-weight:900; }
.fastconnect-heading { margin-bottom:14px; }
.fc-command-bar { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px; margin-bottom:14px; border-color:rgba(19,199,132,.35); }
.fc-command-status { display:flex; align-items:center; gap:11px; }
.fc-command-status>div { display:flex; flex-direction:column; gap:3px; }
.fc-command-status small { color:var(--muted); }
.fc-command-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.btn-compact { padding:8px 11px; font-size:12px; }
.btn-danger { border-color:rgba(239,68,68,.45); color:#ff7a83; background:rgba(239,68,68,.08); }
.fc-status-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
.fc-status-card { padding:15px; min-height:112px; display:flex; flex-direction:column; justify-content:space-between; }
.fc-card-top { display:flex; justify-content:space-between; align-items:center; gap:8px; color:var(--muted); font-size:12px; }
.fc-status-card>strong { font-size:18px; letter-spacing:.02em; }
.fc-status-card>small { color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fc-main-grid { display:grid; grid-template-columns:minmax(0,1fr) 370px; gap:14px; align-items:start; }
.fc-settings-card,.fc-diagnostic-card,.fc-log-card { padding:18px; }
.fc-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.fc-form label { display:flex; flex-direction:column; gap:7px; color:var(--muted); font-size:12px; }
.fc-form input,.fc-form textarea,.fc-form select { width:100%; box-sizing:border-box; border:1px solid var(--border); border-radius:9px; background:var(--surface-2); color:var(--text); padding:11px 12px; outline:none; }
.fc-form input:focus,.fc-form textarea:focus,.fc-form select:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(19,199,132,.1); }
.fc-form textarea { resize:vertical; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:11px; }
.fc-wide,.fc-section-title,.fc-toggle,.fc-form-actions { grid-column:1/-1; }
.fc-section-title { margin-top:6px; padding:10px 0 4px; color:var(--text); font-size:13px; font-weight:900; border-bottom:1px solid var(--border); }
.fc-toggle { flex-direction:row !important; align-items:flex-start; padding:12px; border:1px solid var(--border); border-radius:10px; background:rgba(255,255,255,.02); }
.fc-toggle input { width:auto; margin-top:3px; }
.fc-toggle span { display:flex; flex-direction:column; gap:4px; }
.fc-toggle small { color:var(--muted); }
.fc-form-actions { display:flex; justify-content:flex-end; gap:9px; padding-top:4px; }
.fc-side-stack { display:grid; gap:14px; }
.diagnostic-list,.fc-log-list { display:grid; gap:9px; }
.diagnostic-item { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; padding:11px; border:1px solid var(--border); border-radius:10px; background:rgba(255,255,255,.018); }
.diagnostic-item>div { display:flex; flex-direction:column; gap:3px; }
.diagnostic-item small { color:var(--muted); }
.diagnostic-item b { font-size:10px; color:var(--muted); }
.fc-log-list { max-height:330px; overflow:auto; }
.fc-log-item { display:grid; grid-template-columns:8px minmax(0,1fr); gap:10px; align-items:start; padding:10px 0; border-bottom:1px solid var(--border); }
.fc-log-item i { width:7px; height:7px; border-radius:50%; margin-top:5px; background:var(--muted); }
.fc-log-item.success i { background:#43d89e; }.fc-log-item.error i { background:#ff6b74; }
.fc-log-item>div { display:flex; justify-content:space-between; gap:10px; }
.fc-log-item strong { font-size:12px; font-weight:700; }.fc-log-item small { color:var(--muted); white-space:nowrap; }
@media (max-width:1500px) { .fc-status-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:1100px) { .fc-main-grid { grid-template-columns:1fr; } .fc-command-bar { align-items:flex-start; flex-direction:column; } .fc-command-actions { justify-content:flex-start; } }
@media (max-width:760px) { .fc-status-grid,.fc-form { grid-template-columns:1fr; } .fc-wide,.fc-section-title,.fc-toggle,.fc-form-actions { grid-column:auto; } }

/* Version 2.5 - Trading Terminal Professional */
.workspace { padding:12px; background:radial-gradient(circle at 40% 0%,rgba(20,70,88,.12),transparent 35%),var(--app-bg,#070b14); }
.terminal { min-width:1080px; padding-bottom:30px; }
.market-strip { display:grid; grid-template-columns:repeat(4,minmax(125px,1fr)) repeat(2,minmax(170px,1.15fr)); gap:0; overflow:hidden; border-radius:10px; box-shadow:none; }
.market-index,.account-kpi { padding:11px 14px; border-right:1px solid var(--border); display:grid; grid-template-columns:1fr auto; gap:4px 10px; align-items:center; }
.market-index:last-child,.account-kpi:last-child { border-right:0; }
.market-index span,.account-kpi span { color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.06em; }
.market-index strong,.account-kpi strong { font-size:15px; text-align:right; }
.market-index small,.account-kpi small { grid-column:1/-1; text-align:right; font-size:10px; }
.terminal-grid { display:grid; grid-template-columns:230px minmax(520px,1fr) 300px; gap:10px; margin-top:10px; min-height:calc(100vh - 164px); }
.terminal-panel,.chart-panel,.orderbook,.order-ticket,.portfolio-mini,.ai-mini { border-radius:10px; box-shadow:none; }
.terminal-panel,.orderbook,.order-ticket,.portfolio-mini,.ai-mini { padding:12px; }
.panel-title { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.panel-title>div { display:flex; flex-direction:column; gap:2px; }
.panel-title strong { font-size:13px; }.panel-title small { color:var(--muted); font-size:10px; }
.panel-title a { color:var(--primary); font-size:10px; font-weight:800; }.panel-action { width:27px;height:27px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);cursor:pointer; }
.symbol-search { height:34px; display:flex; align-items:center; gap:7px; padding:0 9px; border:1px solid var(--border); border-radius:8px; background:#09111e; color:var(--muted); }
.symbol-search input { min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:11px; }
.watch-table-head,.watch-row { display:grid; grid-template-columns:1fr 62px 57px; align-items:center; gap:6px; }
.watch-table-head { padding:9px 8px 5px; color:var(--muted); font-size:9px; text-transform:uppercase; text-align:right; }
.watch-table-head span:first-child { text-align:left; }
.watch-list { max-height:332px; overflow:auto; }
.watch-row { width:100%; padding:8px; border:0; border-left:2px solid transparent; background:transparent; color:var(--text); cursor:pointer; text-align:right; }
.watch-row:hover,.watch-row.active { background:rgba(37,214,154,.07); border-left-color:var(--primary); }
.watch-row>span { display:flex;flex-direction:column;text-align:left; }.watch-row b { font-size:12px; }.watch-row small { color:var(--muted);font-size:9px; }.watch-row strong { font-size:11px; }.watch-row em { font-size:10px;font-style:normal; }
.mini-heatmap { display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:47px;gap:3px;margin-top:10px; }
.heat { display:grid;place-items:center;text-align:center;border-radius:5px;font-size:9px;color:#fff;background:rgba(32,193,130,.24); }.heat b{font-size:9px}.heat.up-lg{background:rgba(27,185,119,.55)}.heat.down{background:rgba(232,76,89,.45)}.heat.down-sm{background:rgba(232,76,89,.24)}
.terminal-center { min-width:0; display:grid;grid-template-rows:minmax(440px,1fr) 170px;gap:10px; }
.chart-panel { min-height:440px; overflow:hidden; }
.instrument-bar { display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;border-bottom:1px solid var(--border); }
.instrument-id { display:flex;align-items:center;gap:9px; }.instrument-id>div{display:flex;flex-direction:column}.instrument-id strong{font-size:17px}.instrument-id small{font-size:9px;color:var(--muted)}.symbol-logo{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#25d69a,#168d6a);font-weight:900;color:#03140e}.instrument-price{display:flex;flex-direction:column;align-items:flex-end}.instrument-price strong{font-size:20px}.instrument-price span{font-size:10px}.chart-tools{display:flex;gap:4px}.chart-tools button,.order-tabs button{border:0;border-radius:6px;background:transparent;color:var(--muted);padding:6px 8px;font-size:10px;cursor:pointer}.chart-tools button.active,.chart-tools button:hover,.order-tabs button.active{background:var(--surface-2);color:var(--text)}
.chart-stats { display:flex;gap:18px;padding:8px 14px;color:var(--muted);font-size:9px; }.chart-stats b{color:var(--text)}
.pro-chart { position:relative;height:calc(100% - 91px);min-height:330px;padding:0 13px 20px; }.pro-chart svg{width:100%;height:100%;overflow:visible}.chart-grid-lines path{stroke:#1a2940;stroke-width:1;vector-effect:non-scaling-stroke}.chart-area{fill:url(#chartFill)}.chart-line{fill:none;stroke:#25d69a;stroke-width:2.2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 5px rgba(37,214,154,.5))}.chart-price-label{position:absolute;right:4px;top:16%;padding:4px 6px;border-radius:4px;background:#25d69a;color:#04120d;font-size:9px;font-weight:900}.chart-axis{position:absolute;left:14px;right:14px;bottom:4px;display:flex;justify-content:space-between;color:var(--muted);font-size:8px}
.bottom-panels { display:grid;grid-template-columns:1.35fr .8fr;gap:10px; }.portfolio-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.portfolio-kpis>div{display:flex;flex-direction:column;gap:3px}.portfolio-kpis span{color:var(--muted);font-size:9px}.portfolio-kpis strong{font-size:12px}.allocation-track{display:flex;height:7px;border-radius:99px;overflow:hidden;margin:14px 0 9px;background:var(--surface-2)}.allocation-track i:nth-child(1){background:#25d69a}.allocation-track i:nth-child(2){background:#4c8dff}.allocation-track i:nth-child(3){background:#f5b942}.allocation-track i:nth-child(4){background:#b86cff}.allocation-track i:nth-child(5){background:#637188}.allocation-legend{display:flex;flex-wrap:wrap;gap:9px;color:var(--muted);font-size:8px}.allocation-legend i{display:inline-block;width:6px;height:6px;border-radius:2px;background:var(--primary);margin-right:4px}.ai-mini p{margin:8px 0 13px;color:#c9d5e7;font-size:11px;line-height:1.5}.ai-live{font-size:8px;color:#bb8cff;border:1px solid rgba(184,108,255,.35);padding:4px 6px;border-radius:99px}.ai-tags{display:flex;gap:6px}.ai-tags span{padding:4px 6px;border-radius:5px;background:rgba(37,214,154,.08);color:#5ee6ad;font-size:8px}
.terminal-right { display:grid;grid-template-rows:270px minmax(390px,1fr);gap:10px; }.orderbook{overflow:hidden}.book-head,.book-side>div{display:grid;grid-template-columns:1fr 1fr 45px;gap:7px;text-align:right}.book-head{color:var(--muted);font-size:8px;padding:5px 0}.book-side>div{position:relative;padding:5px 3px;font-size:10px}.book-side.asks b{color:#ff727d}.book-side.bids b{color:#36d9a0}.book-side span,.book-side small{color:#b5c2d5}.last-match{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 4px;margin:4px -3px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.last-match strong{font-size:16px}.last-match span{font-size:10px}.last-match small{grid-column:1/-1;color:var(--muted);font-size:8px}
.ticket-tabs{display:grid;grid-template-columns:1fr 1fr;margin:-12px -12px 12px}.ticket-tabs button{height:39px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-weight:900;cursor:pointer}.ticket-tabs button.buy.active{color:#36d9a0;border-color:#36d9a0;background:rgba(37,214,154,.06)}.ticket-tabs button.sell.active{color:#ff727d;border-color:#ff727d;background:rgba(240,82,82,.06)}.ticket-account{display:grid;grid-template-columns:1fr auto;gap:3px;font-size:9px;margin-bottom:10px}.ticket-account span,.ticket-account small{color:var(--muted)}.ticket-account small{grid-column:1/-1}.order-ticket label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:9px}.ticket-input{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--border);border-radius:7px;background:#09111e;overflow:hidden}.ticket-input input,.ticket-row input{width:100%;height:34px;padding:0 9px;border:0;outline:0;background:#09111e;color:var(--text);font-weight:800}.ticket-input span{padding:0 8px;color:var(--muted);font-size:8px}.ticket-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.ticket-row input{border:1px solid var(--border);border-radius:7px}.quick-qty{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:8px 0}.quick-qty button{height:27px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.quick-qty button.active,.quick-qty button:hover{color:var(--text);border-color:var(--primary);background:rgba(37,214,154,.08)}.ticket-summary{display:grid;gap:6px;padding:9px 0;border-top:1px solid var(--border)}.ticket-summary>div{display:flex;justify-content:space-between;gap:10px;font-size:9px}.ticket-summary span{color:var(--muted)}.place-order{width:100%;height:38px;border:0;border-radius:8px;font-weight:900;cursor:pointer}.place-order.buy{background:#25d69a;color:#03140e}.place-order.sell{background:#ef5965;color:#fff}
.terminal-statusbar{position:fixed;left:230px;right:0;bottom:0;height:28px;display:flex;align-items:center;gap:20px;padding:0 14px;border-top:1px solid var(--border);background:#070d17;color:var(--muted);font-size:9px;z-index:30}.terminal-statusbar span:last-child{margin-left:auto}.terminal-statusbar i{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:5px}.terminal-statusbar i.online{background:#25d69a;box-shadow:0 0 7px rgba(37,214,154,.7)}
@media(max-width:1360px){.terminal-grid{grid-template-columns:210px minmax(480px,1fr) 280px}.market-strip{grid-template-columns:repeat(4,1fr) repeat(2,1.1fr)}.terminal-statusbar{left:230px}.bottom-panels{grid-template-columns:1fr}.ai-mini{display:none}}

.fc-encryption-warning {
  margin-top: 8px;
  padding: 10px 12px;
  border: 1px solid rgba(255, 91, 103, .45);
  border-radius: 10px;
  background: rgba(255, 91, 103, .09);
  color: #ff8d97;
  font-size: 13px;
  line-height: 1.45;
}
.btn-danger {
  border-color: rgba(255, 91, 103, .55);
  color: #ff7b87;
}
.btn-danger:hover { background: rgba(255, 91, 103, .12); }

/* Version 2.6 - Trading Production */
.order-history-button{width:100%;height:34px;margin-top:7px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text);font-weight:800;cursor:pointer}.order-history-button:hover{border-color:var(--primary);background:rgba(37,214,154,.06)}
.trade-modal,.orders-drawer{position:fixed;inset:0;z-index:120;display:none}.trade-modal.open,.orders-drawer.open{display:block}.trade-modal-backdrop,.orders-drawer-backdrop{position:absolute;inset:0;background:rgba(1,6,13,.76);backdrop-filter:blur(4px)}.trade-modal-card{position:absolute;left:50%;top:50%;width:min(520px,calc(100vw - 40px));transform:translate(-50%,-50%);border:1px solid var(--border);border-radius:14px;background:#0d1727;box-shadow:0 28px 80px rgba(0,0,0,.55);overflow:hidden}.trade-modal-card>header,.orders-drawer-panel>header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border)}.trade-modal-card header small,.orders-drawer-panel header small{color:var(--primary);font-weight:900;letter-spacing:.12em}.trade-modal-card h3,.orders-drawer-panel h3{margin:3px 0 0;font-size:20px}.trade-modal-card header button,.orders-drawer-panel header button{border:0;background:transparent;color:var(--muted);font-size:24px;cursor:pointer}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px}.preview-grid>div{display:flex;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--border);border-radius:9px;background:#09121f}.preview-grid span,.preview-total span{color:var(--muted)}.preview-total{display:flex;justify-content:space-between;align-items:center;margin:0 18px;padding:14px;border-radius:10px;background:rgba(37,214,154,.08);border:1px solid rgba(37,214,154,.28)}.preview-total strong{font-size:20px;color:#36d9a0}.preview-warning{margin:14px 18px;padding:11px;border-radius:9px;background:rgba(255,183,77,.08);border:1px solid rgba(255,183,77,.25)}.preview-warning b{color:#ffc36c}.preview-warning p{margin:5px 0 0;color:var(--muted);font-size:12px}.preview-confirm{display:flex;align-items:center;gap:9px;margin:0 18px 14px;color:var(--text);font-size:12px}.trade-modal-card>footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--border)}.trade-modal-card footer button{height:38px;padding:0 17px;border-radius:8px;font-weight:900;cursor:pointer}.trade-modal-card .secondary{border:1px solid var(--border);background:transparent;color:var(--text)}.trade-modal-card .primary{border:0;background:var(--primary);color:#03140e}
.orders-drawer-panel{position:absolute;right:0;top:0;bottom:0;width:min(980px,calc(100vw - 60px));background:#0b1422;border-left:1px solid var(--border);box-shadow:-24px 0 60px rgba(0,0,0,.45);display:flex;flex-direction:column}.orders-drawer-panel>header>div:last-child{display:flex;gap:10px}.orders-table-wrap{overflow:auto;padding:14px;flex:1}.orders-table{width:100%;border-collapse:collapse;min-width:850px}.orders-table th{position:sticky;top:0;background:#0b1422;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:10px;border-bottom:1px solid var(--border)}.orders-table td{padding:11px 10px;border-bottom:1px solid rgba(42,58,80,.6);font-size:11px}.orders-table tr:hover td{background:rgba(255,255,255,.018)}.table-loading{text-align:center!important;color:var(--muted);padding:30px!important}.order-status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900;background:rgba(133,148,170,.12);color:#aebbd0}.order-status.positive{background:rgba(37,214,154,.12);color:#36d9a0}.order-status.negative{background:rgba(239,89,101,.12);color:#ff727d}.order-actions{white-space:nowrap}.order-actions button{height:27px;padding:0 8px;margin-right:4px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);font-size:9px;cursor:pointer}.order-actions button.danger{border-color:rgba(239,89,101,.4);color:#ff727d}.order-actions button:disabled{opacity:.35;cursor:not-allowed}.terminal-statusbar i.offline{background:#ef5965;box-shadow:0 0 7px rgba(239,89,101,.6)}[data-trading-mode].live{color:#ff727d;font-weight:900}


/* Version 2.7 - Professional Trading Workspace */
.workspace-toolbar{display:flex;align-items:center;gap:18px;min-height:48px;margin-bottom:8px;padding:7px 10px;background:linear-gradient(90deg,rgba(37,214,154,.08),rgba(18,29,48,.78) 42%,rgba(18,29,48,.96));border-color:rgba(37,214,154,.22)}
.workspace-brand{display:flex;align-items:center;gap:9px;min-width:190px}.workspace-brand strong{display:block;font-size:10px;letter-spacing:.1em}.workspace-brand small{display:block;margin-top:2px;color:var(--muted);font-size:8px}.workspace-pulse{width:9px;height:9px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 5px rgba(37,214,154,.1),0 0 14px rgba(37,214,154,.8)}
.workspace-tabs{display:flex;align-items:center;gap:4px;padding:3px;border:1px solid var(--border);border-radius:8px;background:rgba(3,9,17,.42)}.workspace-tabs button,.workspace-actions button{height:27px;border:0;border-radius:6px;background:transparent;color:var(--muted);padding:0 11px;font-size:9px;font-weight:800;cursor:pointer}.workspace-tabs button.active{background:rgba(37,214,154,.14);color:var(--primary)}.workspace-actions{display:flex;gap:5px;margin-left:auto}.workspace-actions button{border:1px solid var(--border)}.workspace-actions button:hover{border-color:var(--primary);color:var(--text)}
.time-sales{overflow:hidden}.live-chip{font-size:8px;font-weight:900;color:var(--primary);padding:3px 6px;border:1px solid rgba(37,214,154,.3);border-radius:999px;background:rgba(37,214,154,.08)}.tape-head,.tape-row{display:grid;grid-template-columns:1.1fr .9fr .8fr .7fr;align-items:center;gap:6px;padding:6px 10px}.tape-head{color:var(--muted);font-size:8px;text-transform:uppercase;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.tape-list{max-height:142px;overflow:auto}.tape-row{position:relative;font-size:9px;border-bottom:1px solid rgba(42,58,80,.42)}.tape-row:before{content:"";position:absolute;inset:1px auto 1px 0;width:var(--tape-width,38%);opacity:.06}.tape-row.buy:before{background:#25d69a}.tape-row.sell:before{background:#ef5965}.tape-row time{color:var(--muted)}.tape-row.buy b,.tape-row.buy em{color:#36d9a0}.tape-row.sell b,.tape-row.sell em{color:#ff727d}.tape-row em{font-style:normal;font-size:8px;font-weight:900}
.terminal.layout-compact .market-strip{display:none}.terminal.layout-compact .workspace-toolbar{margin-bottom:6px}.terminal.layout-compact .pro-chart{min-height:330px}.terminal.layout-focus .watchlist-panel,.terminal.layout-focus .bottom-panels{display:none}.terminal.layout-focus .terminal-grid{grid-template-columns:minmax(620px,1fr) 320px}.terminal.layout-focus .pro-chart{min-height:560px}.terminal.layout-focus .chart-panel{height:100%}
.card.panel-flash{animation:panelFlash .5s ease}@keyframes panelFlash{0%{box-shadow:0 0 0 0 rgba(37,214,154,.35)}100%{box-shadow:0 0 0 12px rgba(37,214,154,0)}}
@media(max-width:1450px){.workspace-brand{min-width:160px}.workspace-tabs button,.workspace-actions button{padding:0 8px}.time-sales .tape-list{max-height:120px}}

/* Version 2.8 - Trading Streaming Production */
.live-chip[data-state="online"]{color:#39dda5;border-color:rgba(57,221,165,.4);background:rgba(57,221,165,.1)}
.live-chip[data-state="connecting"],.live-chip[data-state="reconnecting"]{color:#ffc36c;border-color:rgba(255,195,108,.4);background:rgba(255,195,108,.08);animation:streamPulse 1.2s infinite}
.live-chip[data-state="offline"]{color:#ff727d;border-color:rgba(255,114,125,.4);background:rgba(255,114,125,.08)}
@keyframes streamPulse{50%{opacity:.48}}
.timeline-link{border:0;background:transparent;color:var(--primary);font-weight:900;cursor:pointer;padding:0}.timeline-link:hover{text-decoration:underline}
.timeline-card{width:min(620px,calc(100vw - 40px));max-height:min(760px,calc(100vh - 50px));display:flex;flex-direction:column}
.timeline-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--border);background:rgba(37,214,154,.035);font-size:11px}.timeline-summary span:nth-child(2){color:var(--muted)}
.timeline-list{padding:18px;overflow:auto;display:grid;gap:0;min-height:180px}.timeline-event{position:relative;display:grid;grid-template-columns:18px 1fr;gap:10px;padding:0 0 18px}.timeline-event:not(:last-child):before{content:"";position:absolute;left:5px;top:13px;bottom:-2px;width:1px;background:var(--border)}.timeline-event>i{position:relative;z-index:1;width:11px;height:11px;margin-top:3px;border-radius:50%;background:#8492a8;box-shadow:0 0 0 4px #0d1727}.timeline-event.positive>i{background:#25d69a}.timeline-event.negative>i{background:#ef5965}.timeline-event header{display:flex;justify-content:space-between;gap:12px}.timeline-event strong{font-size:11px}.timeline-event time{color:var(--muted);font-size:9px}.timeline-event p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.45}
[data-stream-state]{color:#ff727d}[data-stream-state]:is(:not(:empty)){font-weight:900}
