@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Inter:wght@400;500;600&display=swap";:root{--bg-primary:#0f1115;--bg-secondary:#16181d99;--bg-tertiary:#1e2128cc;--glass-border:#ffffff14;--glass-highlight:#ffffff08;--accent-primary:#00e5ff;--accent-primary-dim:#00e5ff26;--accent-secondary:#7000ff;--text-primary:#fff;--text-secondary:#94a3b8;--text-muted:#64748b;--success:#10b981;--success-bg:#10b98126;--danger:#ef4444;--warning:#f59e0b;--warning-bg:#f59e0b26;--danger-bg:#ef444426}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Inter,sans-serif;position:relative;overflow-x:hidden}body:before,body:after{content:"";filter:blur(100px);z-index:-1;opacity:.15;border-radius:50%;width:50vw;height:50vw;animation:20s ease-in-out infinite alternate float;position:fixed}body:before{background:var(--accent-secondary);top:-20%;left:-10%}body:after{background:var(--accent-primary);animation-delay:-10s;bottom:-20%;right:-10%}@keyframes float{0%{transform:translate(0)scale(1)}to{transform:translate(5%,5%)scale(1.1)}}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-family:Outfit,sans-serif;font-weight:600}.glass-panel{background:var(--bg-secondary);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000004d}.glass-panel:before{content:"";background:linear-gradient(90deg, transparent, var(--glass-highlight), transparent);height:1px;position:absolute;top:0;left:0;right:0}.app-container{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f1115cc;flex-direction:column;gap:2rem;width:280px;padding:2rem;display:flex}.sidebar-logo{background:linear-gradient(135deg, #fff, var(--accent-primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:.75rem;font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:700;display:flex}.nav-links{flex-direction:column;gap:.5rem;display:flex}.nav-link{color:var(--text-secondary);cursor:pointer;border-radius:12px;align-items:center;gap:.75rem;padding:.875rem 1rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-link:hover,.nav-link.active{color:var(--text-primary);background:var(--bg-tertiary)}.nav-link.active{background:var(--accent-primary-dim);color:var(--accent-primary);border:1px solid #00e5ff33}.main-content{flex:1;padding:2.5rem;overflow-y:auto}.global-routing-status-region{z-index:200;pointer-events:none;justify-content:flex-end;min-height:3.25rem;margin:-2rem 0 1.75rem;display:flex;position:relative}.global-routing-status{z-index:200;pointer-events:auto;align-self:flex-start;width:min(390px,100%);position:fixed;top:1rem;right:2.5rem}.global-routing-status>summary{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:pointer;background:#14171df5;border-left-width:3px;border-radius:11px;align-items:center;gap:.7rem;min-height:3.25rem;padding:.65rem .8rem;list-style:none;display:flex;box-shadow:0 8px 28px #00000059}.global-routing-status>summary::-webkit-details-marker{display:none}.global-routing-status>summary:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.global-routing-status.live>summary{border-left-color:var(--success);background:linear-gradient(90deg,#10b98124,#14171df7 42%)}.global-routing-status.partial>summary,.global-routing-status.logging>summary{border-left-color:var(--warning);background:linear-gradient(90deg,#f59e0b21,#14171df7 42%)}.global-routing-status.unavailable>summary{border-left-color:var(--danger);background:linear-gradient(90deg,#ef444424,#14171df7 42%)}.global-routing-status.paper>summary{border-left-color:var(--accent-primary);background:linear-gradient(90deg,#00e5ff1f,#14171df7 42%)}.global-routing-status.inactive>summary{border-left-color:var(--text-muted)}.global-routing-dot{background:var(--text-muted);border-radius:50%;flex:0 0 9px;width:9px;height:9px}.global-routing-status.live .global-routing-dot{background:var(--success);box-shadow:0 0 10px #10b981cc}.global-routing-status.partial .global-routing-dot,.global-routing-status.logging .global-routing-dot{background:var(--warning);box-shadow:0 0 10px #f59e0bb3}.global-routing-status.unavailable .global-routing-dot{background:var(--danger);box-shadow:0 0 10px #ef4444bf}.global-routing-status.paper .global-routing-dot{background:var(--accent-primary);box-shadow:0 0 10px #00e5ffb3}.global-routing-copy{gap:.12rem;min-width:0;display:grid}.global-routing-copy strong{color:var(--text-primary);letter-spacing:.045em;text-transform:uppercase;font-family:Outfit,sans-serif;font-size:.85rem}.global-routing-copy small{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.global-routing-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;margin-left:auto;display:flex}.global-routing-badges span.pill{border:1px solid var(--glass-border);color:var(--text-secondary);letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;background:#ffffff09;border-radius:999px;align-items:center;gap:.25rem;padding:.14rem .45rem;font-size:.58rem;font-weight:700;display:inline-flex}.global-routing-badges span.pill-dot{background:0 0;border:none;border-radius:50%;width:6px;height:6px;padding:0}.pill-live{color:#78e7bf!important;background:#10b9810d!important;border-color:#10b9814d!important}.pill-live .pill-dot{box-shadow:0 0 6px #10b981cc;background:var(--success)!important}.pill-demo{color:#93c5fd!important;background:#3b82f60d!important;border-color:#3b82f659!important}.pill-demo .pill-dot{box-shadow:0 0 6px #3b82f6b3;background:#3b82f6!important}.pill-offline{color:#fca5a5!important;background:#ef44440d!important;border-color:#ef44444d!important}.pill-offline .pill-dot{box-shadow:0 0 6px #ef4444bf;background:var(--danger)!important}.pill-paper{color:#a5f3fc!important;background:#00e5ff0d!important;border-color:#00e5ff4d!important}.pill-paper .pill-dot{box-shadow:0 0 6px #00e5ffb3;background:var(--accent-primary)!important}.pill-manual{color:var(--text-secondary)!important;border-color:var(--glass-border)!important;background:#ffffff09!important}.pill-manual .pill-dot{background:var(--text-muted)!important}.global-routing-popover{border:1px solid var(--glass-border);background:#111419fb;border-radius:11px;width:100%;position:absolute;top:calc(100% + .45rem);right:0;overflow:hidden;box-shadow:0 18px 45px #0000008c}.global-routing-popover-heading{border-bottom:1px solid var(--glass-border);gap:.18rem;padding:.8rem .9rem;display:grid}.global-routing-popover-heading strong{font-size:.82rem}.global-routing-popover-heading small{color:var(--text-secondary);font-size:.68rem}.global-routing-strategy-row{border-bottom:1px solid #ffffff0b;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .9rem;display:flex}.global-routing-strategy-row:last-child{border-bottom:0}.global-routing-strategy-row>span{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:650;overflow:hidden}.global-routing-strategy-row small{color:var(--text-secondary);text-align:right;font-size:.67rem}.global-routing-empty{color:var(--text-secondary);padding:.8rem .9rem;font-size:.75rem}@media (width<=760px){.global-routing-status-region{margin-top:0;position:relative;top:auto}.global-routing-status{width:100%;position:relative;top:auto;right:auto}.global-routing-badges{display:none}}.docs-page{max-width:960px}.docs-card{padding:1.75rem}.docs-accordion{margin-bottom:1rem;overflow:hidden}.docs-accordion>summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:1.15rem 1.35rem;list-style:none}.docs-accordion>summary::-webkit-details-marker{display:none}.docs-accordion>summary>span{gap:.25rem;padding-right:2.25rem;display:grid;position:relative}.docs-accordion>summary>span:after{content:"+";color:var(--accent-primary);font-size:1.7rem;font-weight:300;position:absolute;top:50%;right:.2rem;transform:translateY(-50%)}.docs-accordion[open]>summary>span:after{content:"−"}.docs-accordion>summary strong{color:var(--text-primary);font-size:1.08rem}.docs-accordion>summary small{color:var(--text-secondary);font-size:.85rem;line-height:1.45}.docs-accordion[open]>summary{border-bottom:1px solid var(--glass-border);background:#00e5ff09}.docs-summary-kicker{color:var(--accent-primary);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:700}.docs-download-row{justify-content:flex-end;margin:-.25rem 0 .75rem;display:flex}.docs-download-link{color:var(--accent-primary);cursor:pointer;font:inherit;background:#00e5ff0f;border:1px solid #00e5ff40;border-radius:6px;align-items:center;gap:.45rem;padding:.45rem .7rem;font-size:.82rem;font-weight:650;display:inline-flex}.docs-download-link:hover{background:#00e5ff21;border-color:#00e5ff80}.docs-download-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.docs-section{border-bottom:1px solid var(--glass-border);padding:1.75rem}.docs-section:last-child{border-bottom:0}.docs-card h2{color:var(--text-primary);margin:.35rem 0 .65rem;font-size:1.45rem}.docs-card h3{color:var(--text-primary);margin:1.5rem 0 .7rem;font-size:1rem}.docs-card p{color:var(--text-secondary);margin:0 0 1rem;line-height:1.65}.docs-card code{color:#b7f7ff;background:#00e5ff17;border-radius:4px;padding:.08rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;font-weight:600}.docs-eyebrow{color:var(--accent-primary);letter-spacing:.12em;text-transform:uppercase;margin-top:1.75rem;font-size:.75rem;font-weight:700;display:block}.docs-eyebrow:first-child{margin-top:0}.docs-notice{color:#d9faff;background:var(--accent-primary-dim);border:1px solid #00e5ff47;border-radius:10px;margin:-1rem 0 1.5rem;padding:1rem 1.15rem;line-height:1.55}.docs-code,.docs-url{white-space:pre;border:1px solid var(--glass-border);color:#87f4ff;background:#0c1118;border-radius:8px;margin:0 0 1rem;padding:1rem 1.1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.55;display:block;overflow-x:auto}.docs-url{white-space:normal;overflow-wrap:anywhere;color:var(--accent-primary)}.docs-card ul{color:var(--text-secondary);margin:0;padding-left:1.25rem}.docs-card ol{color:var(--text-secondary);margin:0 0 1rem;padding-left:1.4rem}.docs-card li{margin:.65rem 0;padding-left:.35rem;line-height:1.55}.docs-table-wrap{border:1px solid var(--glass-border);border-radius:8px;margin-bottom:1.25rem;overflow-x:auto}.docs-table{border-collapse:collapse;width:100%;min-width:620px}.docs-table th,.docs-table td{text-align:left;border-bottom:1px solid var(--glass-border);color:var(--text-secondary);padding:.8rem .9rem;line-height:1.45}.docs-table th{color:var(--text-primary);text-transform:uppercase;letter-spacing:.06em;background:#00e5ff0e;font-size:.8rem}.docs-table tr:last-child td{border-bottom:0}@media (width<=720px){.docs-card{padding:1.25rem}.docs-accordion>summary{padding:1rem}}.dashboard-header{margin-bottom:2.5rem}.dashboard-header h1{margin-bottom:.5rem;font-size:2.25rem}.dashboard-header p{color:var(--text-secondary)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2.5rem;display:grid}.stat-card{flex-direction:column;gap:1rem;padding:1.5rem;transition:transform .2s;display:flex}.stat-card:hover{transform:translateY(-2px)}.stat-header{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.875rem;font-weight:500;display:flex}.stat-value{font-family:Outfit,sans-serif;font-size:2rem;font-weight:600}.logs-container{padding:1.5rem}.logs-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:.35rem .75rem;font-size:.75rem;font-weight:600}.badge.buy{background:var(--success-bg);color:var(--success);border:1px solid #10b9814d}.badge.sell{background:var(--danger-bg);color:var(--danger);border:1px solid #ef44444d}.log-table{border-collapse:collapse;width:100%}.log-table th{text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--glass-border);padding:1rem;font-size:.875rem;font-weight:500}.log-table td{color:var(--text-secondary);border-bottom:1px solid #ffffff05;padding:1rem;font-size:.9rem}.log-table tr:hover td{color:var(--text-primary);background:#ffffff05}.ticker-cell{color:var(--text-primary);font-family:Outfit,sans-serif;font-weight:600}.fade-in{animation:.4s ease-in-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.badge-gray{color:#a1a1aa;background:#ffffff1a;border:1px solid #ffffff26}.settings-toggle-row{align-items:center;gap:.6rem;width:fit-content;display:flex}.settings-toggle-input{opacity:0;width:1px;height:1px;position:absolute}.settings-toggle{border:1px solid var(--glass-border);background:var(--bg-tertiary);border-radius:999px;flex:0 0 38px;width:38px;height:22px;transition:background .18s,border-color .18s;display:inline-block;position:relative}.settings-toggle:after{content:"";background:var(--text-secondary);border-radius:50%;width:16px;height:16px;transition:transform .18s,background .18s;position:absolute;top:2px;left:2px}.settings-toggle-input:checked+.settings-toggle{background:var(--accent-primary);border-color:var(--accent-primary)}.settings-toggle-input:checked+.settings-toggle:after{background:#061218;transform:translate(16px)}.settings-toggle-input:focus-visible+.settings-toggle{outline-offset:2px;outline:2px solid #fff}.settings-toggle-input:disabled+.settings-toggle{background:#ffffff0f;border-color:#ffffff1f}.settings-toggle-input:disabled+.settings-toggle:after{background:#ffffff4d}.connected-accounts-field{flex-direction:column;margin-bottom:1.5rem;display:flex}.connected-accounts-heading{order:0;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.35rem;font-weight:600;display:flex}.connected-accounts-count{border:1px solid var(--glass-border);color:var(--text-secondary);border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:600}.connected-accounts-count.has-selection{background:var(--accent-primary-dim);color:var(--accent-primary);border-color:#00e5ff47}.connected-accounts-intro,.connected-accounts-help{color:var(--text-secondary);font-size:.8rem;line-height:1.5}.connected-accounts-intro{order:1;margin:0 0 .8rem}.connected-accounts-help{order:5;margin:.65rem 0 0}.active-destinations{order:4;gap:.4rem;margin-bottom:.8rem;display:grid}.account-search{order:3;align-items:center;margin-bottom:.55rem;display:flex;position:relative}.account-picker-dropdown{z-index:20;-webkit-backdrop-filter:none;order:3;width:100%;margin:-.25rem 0 .8rem;position:relative;box-shadow:0 18px 38px #0000006b;background:#1b1f27!important}.connected-accounts-field{position:relative}.account-search input{border:1px solid var(--glass-border);width:100%;color:var(--text-primary);font:inherit;background:#1e2128cc;border-radius:8px;outline:none;padding:.65rem 4.75rem .65rem .75rem;font-size:.82rem}.account-search input:focus{border-color:#00e5ff99;box-shadow:0 0 0 3px #00e5ff17}.account-search span{color:var(--text-muted);pointer-events:none;font-size:.7rem;position:absolute;right:.75rem}.connected-accounts-picker{border:1px solid var(--glass-border);background:#1e21288c;border-radius:10px;gap:.55rem;padding:.8rem;display:grid}.account-scroll-area{scrollbar-color:#94a3b88c transparent;gap:.55rem;max-height:300px;padding-right:.2rem;display:grid;overflow-y:auto}.account-group-label{z-index:1;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;background:#1d2027;margin:.25rem 0 .15rem;padding:.2rem 0;font-size:.69rem;font-weight:700;position:sticky;top:0}.account-group-label span{color:var(--text-muted);letter-spacing:normal;font-weight:500}.account-list{gap:.4rem;display:grid}.account-option,.log-only-option{cursor:pointer;background:#ffffff06;border:1px solid #0000;border-radius:8px;align-items:center;gap:.7rem;min-width:0;padding:.7rem .75rem;transition:background .16s,border-color .16s,transform .16s;display:flex}.account-option:hover,.log-only-option:hover{background:#ffffff0e;border-color:#ffffff24}.account-picker-option{width:100%;color:inherit;font:inherit;text-align:left;border:1px solid #0000}.account-option.selected{background:#00e5ff17;border-color:#00e5ff6b}.account-option input,.log-only-option input{width:16px;height:16px;accent-color:var(--accent-primary);flex:none;margin:0}.account-option-copy{flex:1;gap:.13rem;min-width:0;display:grid}.account-option-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.account-option-title{align-items:center;gap:.45rem;min-width:0;display:flex}.account-option-meta{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.account-option-status{color:var(--success);white-space:nowrap;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;display:inline-flex}.live-badge{background:var(--success-bg);color:var(--success);text-transform:uppercase;border:1px solid #10b98161;border-radius:999px;padding:.14rem .42rem;font-size:.66rem;font-weight:700;line-height:1.2}.account-status-dot{background:currentColor;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px}.account-option.disconnected .account-option-status,.account-option-status.is-disconnected{color:var(--danger)}.paper-account .account-option-status{color:var(--warning)}.broker-route-control{color:var(--text-secondary);white-space:nowrap;cursor:pointer;align-items:center;gap:.35rem;margin-top:.22rem;font-size:.72rem;display:inline-flex}.broker-route-control input{width:15px;height:15px;accent-color:var(--success)}.broker-route-control input:checked+span{color:var(--success);font-weight:700}.account-add-button{background:var(--accent-primary-dim);color:var(--accent-primary);cursor:pointer;font:inherit;border:1px solid #00e5ff4d;border-radius:6px;flex:none;order:3;padding:.32rem .55rem;font-size:.72rem;font-weight:700}.account-add-button:hover{background:#00e5ff3d}.account-routing-toggle{color:var(--text-secondary);cursor:pointer;font:inherit;background:0 0;border:1px solid #94a3b84d;border-radius:999px;padding:.27rem .48rem;font-size:.68rem;font-weight:700}.account-routing-toggle.enabled{background:var(--success-bg);color:var(--success);border-color:#10b98161}.account-remove-button{color:#f87171;cursor:pointer;background:0 0;border:1px solid #ef444447;border-radius:6px;place-items:center;width:25px;height:25px;padding:0;font-size:1.15rem;line-height:1;display:grid}.account-remove-button:hover{background:var(--danger-bg);border-color:#ef44449e}.account-search-empty{color:var(--text-secondary);text-align:center;padding:1.2rem .75rem;font-size:.82rem}.log-only-option{color:var(--text-secondary);background:0 0;border-style:dashed;order:4;margin-top:.2rem}.log-only-option.selected{background:#94a3b814;border-color:#94a3b873}.log-only-icon{width:26px;height:26px;color:var(--text-secondary);background:#94a3b824;border-radius:7px;place-items:center;display:grid}.log-only-option strong,.log-only-option small{display:block}.log-only-option strong{color:var(--text-primary);font-size:.82rem}.log-only-option small{color:var(--text-secondary);margin-top:.1rem;font-size:.72rem}@media (width<=560px){.account-option-status{display:none}}.broker-equity-snapshot{margin-top:.25rem;font-size:.85rem;font-weight:700}.broker-equity-snapshot.current{color:var(--success)}.broker-equity-snapshot.stale,.broker-equity-snapshot.unavailable{color:var(--warning)}.broker-equity-value-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.broker-equity-snapshot small{color:var(--text-secondary);margin-top:.15rem;font-size:.68rem;font-weight:500;line-height:1.3;display:block}.account-header-actions{align-items:center;gap:.65rem;display:flex}.secondary-action-button{border:1px solid var(--glass-border);background:var(--bg-tertiary);color:#fff;cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-weight:700;display:flex}.secondary-action-button:hover{color:var(--accent-primary);border-color:#00f0ff8c}.secondary-action-button:disabled{cursor:not-allowed;opacity:.6}.trade-account-filter{border:1px solid var(--glass-border);background:#0a0e167a;border-radius:10px;flex-wrap:wrap;gap:.6rem;margin-bottom:1rem;padding:.75rem;display:flex}.trade-account-filter button{border:1px solid var(--glass-border);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;font:inherit;text-align:left;border-radius:7px;grid-template-columns:auto auto;align-items:center;gap:.15rem .55rem;padding:.55rem .75rem;font-size:.82rem;font-weight:700;display:grid}.trade-account-filter button:hover,.trade-account-filter button.active{border-color:var(--accent-primary);color:var(--text-primary)}.trade-account-filter button.active{box-shadow:inset 3px 0 0 var(--accent-primary);background:#00f0ff1c}.trade-account-filter button small{color:var(--text-secondary);grid-column:1;font-size:.67rem;font-weight:500}.trade-account-filter button span{min-width:1.4rem;color:var(--text-secondary);text-align:center;background:#94a3b81f;border-radius:999px;grid-area:1/2/span 2;padding:.1rem .35rem;font-size:.68rem}.trade-log-table .trade-signal-group-row td{color:var(--text-secondary);background:#00f0ff0e;border-top:1px solid #00f0ff38;border-bottom:1px solid #00f0ff1f;padding:.65rem 1rem}.trade-signal-group-row td{align-items:center;gap:1rem;font-size:.78rem;display:flex}.trade-signal-group-title{color:var(--text-primary);font-size:.86rem;font-weight:750}.trade-signal-group-count{color:var(--accent-primary);white-space:nowrap;border:1px solid #00f0ff47;border-radius:999px;margin-left:auto;padding:.18rem .5rem}.trade-status-cell{min-width:19rem}.trade-status-badge{border-radius:5px;padding:.2rem .45rem;font-size:.72rem;font-weight:800;display:inline-block}.trade-status-badge.blocked{color:var(--danger);background:#ef44441f;border:1px solid #ef44446b}.trade-status-detail{color:var(--text-secondary);margin-top:.4rem;line-height:1.35;display:block}@media (width<=900px){.account-header-actions{flex-direction:column;align-items:stretch}.trade-signal-group-row td{flex-direction:column;align-items:flex-start;gap:.25rem}.trade-signal-group-count{margin-left:0}}
