*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/* ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com */*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.h-screen{height:100vh}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.border{border-width:1px}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}body,html{height:100%;margin:0;padding:0}body{background:#0a0c10}:not(.trading-desk) button{cursor:pointer}:root{--bg:#0a0c10;--surface:#111318;--surface2:#181c24;--surface3:#1e2330;--border:#252a36;--border2:#2e3547;--text:#d4dae8;--text2:#7a8499;--text3:#4a5268;--green:#00d68f;--green-dim:#00d68f22;--red:#ff4d6a;--red-dim:#ff4d6a22;--yellow:#ffb800;--yellow-dim:#ffb80022;--blue:#4d9eff;--blue-dim:#4d9eff22;--orange:#ff7b2e;--accent:#5b8dff;--mono:"JetBrains Mono",monospace;--sans:"IBM Plex Sans",sans-serif;--base-size:clamp(12px,0.85vw,15px);--small-size:clamp(10px,0.7vw,13px);--tiny-size:clamp(9px,0.6vw,12px);--label-size:clamp(9px,0.55vw,11px)}.trading-desk,.trading-desk *{box-sizing:border-box;margin:0;padding:0}.trading-desk{font-family:var(--sans);color:var(--text);font-size:var(--base-size);flex-direction:column;overflow:hidden}.td-loading,.trading-desk{background:var(--bg);display:flex;height:100vh}.td-loading{align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;color:var(--text2)}.td-loading-inner{display:flex;flex-direction:column;align-items:center;gap:12px}.td-spinner{width:24px;height:24px;border:2px solid var(--border2);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.sticky-bar{background:var(--border);border-bottom:1px solid var(--border2);flex-shrink:0;min-height:40px;flex-wrap:nowrap}.sticky-bar,.sticky-bar-left{display:flex;align-items:stretch;gap:1px}.sticky-bar-left{flex:1 1 auto;min-width:0;flex-wrap:wrap;align-content:stretch}.sticky-bar-right{display:flex;align-items:center;gap:10px;padding:0 14px;background:var(--surface);flex-shrink:0;border-left:1px solid var(--border2)}.sticky-bod-btn{font-size:10px;font-family:var(--mono);font-weight:600;padding:5px 10px;border-radius:3px;border:1px solid var(--border2);background:var(--surface3);color:var(--yellow);cursor:pointer;white-space:nowrap}.sticky-bod-btn:hover{border-color:var(--yellow);background:rgba(255,184,0,.1)}.sticky-logout-btn{font-size:10px;font-family:var(--mono);font-weight:600;padding:5px 10px;border-radius:3px;border:1px solid var(--border2);background:var(--surface3);color:var(--text2);cursor:pointer;white-space:nowrap}.sticky-logout-btn:hover{border-color:var(--red);color:var(--red);background:rgba(255,77,106,.08)}.sticky-seg{background:var(--surface);display:flex;align-items:center;gap:14px;padding:0 14px;font-size:11px}.health-seg{gap:10px;padding-right:18px;flex-wrap:wrap;row-gap:6px}.account-seg,.health-seg{border-right:1px solid var(--border2)}.account-seg{gap:8px;padding-right:14px;flex-shrink:0}.sticky-account-select{font-size:10px;font-family:var(--mono);min-width:140px;max-width:220px;padding:4px 8px;border-radius:3px;border:1px solid var(--border2);background:var(--surface3);color:var(--text);cursor:pointer}.sticky-account-select:disabled{opacity:.55;cursor:not-allowed}.sticky-account-select:focus{outline:none;border-color:var(--accent)}.session-account-seg{gap:8px;padding-right:14px;border-right:1px solid var(--border2);flex-wrap:wrap;flex-shrink:0;align-items:center}.sticky-clock{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--text);letter-spacing:.02em}.market-session-badge{font-size:8px;font-family:var(--mono);font-weight:700;letter-spacing:.06em;padding:2px 6px;border-radius:3px;border:1px solid;background:var(--surface3)}.sticky-divider--inline{flex-shrink:0;margin:0 4px}.pnl-seg{flex:1 1 280px;gap:14px 18px;flex-wrap:wrap;row-gap:6px;padding-top:4px;padding-bottom:4px;align-content:center;border-right:1px solid var(--border2)}.sticky-bar-left .pnl-seg{border-right:none}.indices-seg{gap:12px 16px;flex-wrap:wrap;flex-shrink:0;align-items:center;padding-left:12px}.indices-seg>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 4px}.sticky-capital-util{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.sticky-util-bar{width:40px;height:5px;background:var(--surface3);border-radius:2px;overflow:hidden;border:1px solid var(--border2)}.sticky-util-fill{height:100%;background:var(--orange);transition:width .2s ease}.seg-pct{font-family:var(--mono);font-size:9px;font-weight:600}.seg-pct.pos{color:var(--green)}.seg-pct.neg{color:var(--red)}.indices-stale{font-size:8px;font-family:var(--mono);color:var(--yellow);border:1px solid var(--yellow);padding:1px 4px;border-radius:2px;letter-spacing:.04em}.time-seg{border-left:1px solid var(--border2);gap:6px;padding:0 14px}.seg-label{color:var(--text2);font-size:var(--small-size)}.seg-label,.seg-val{font-family:var(--mono)}.seg-val{font-weight:600;color:var(--text)}.seg-val.pos{color:var(--green)}.seg-val.neg{color:var(--red)}.health-chip{display:flex;align-items:center;gap:5px}.health-chip span{font-size:10px;color:var(--text2)}.health-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}.h-green{background:var(--green);box-shadow:0 0 6px var(--green)}.h-yellow{background:var(--yellow);box-shadow:0 0 6px var(--yellow);animation:pulse-y 1.5s infinite}.h-red{background:var(--red);box-shadow:0 0 6px var(--red);animation:flash .6s infinite}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);display:inline-block}.sticky-divider{width:1px;height:20px;background:var(--border2)}@keyframes flash{0%,to{opacity:1}50%{opacity:.2}}@keyframes pulse-y{0%,to{opacity:1}50%{opacity:.5}}.top-area{display:grid;grid-template-columns:160px 1fr 240px 260px;gap:1px;background:var(--border);flex-shrink:0;border-bottom:1px solid var(--border2);align-items:stretch}.top-area #service-controls.panel{overflow-y:auto}.top-area .panel{padding:6px 10px 8px}.panel,.top-area .panel{background:var(--surface)}.panel{padding:10px 12px;overflow:hidden}.panel-title{font-size:9px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text3);margin-bottom:8px;display:flex;align-items:center;gap:6px}.top-area .panel-title{margin-bottom:5px}.margin-panel-heading.panel-title{display:block}.margin-panel-heading.panel-title:after{display:none}.panel-title:after{content:"";flex:1;height:1px;background:var(--border)}#health-panel{display:flex;flex-direction:column;gap:4px}.health-overall{font-family:var(--mono);font-size:8px;letter-spacing:.06em;padding:2px 5px;border-radius:2px;border:1px solid var(--border);color:var(--text3)}.health-overall[data-overall=healthy]{color:var(--green);border-color:color-mix(in srgb,var(--green) 40%,var(--border))}.health-overall[data-overall=degraded]{color:var(--yellow);border-color:color-mix(in srgb,var(--yellow) 40%,var(--border))}.health-overall[data-overall=unhealthy]{color:var(--red);border-color:color-mix(in srgb,var(--red) 40%,var(--border))}.health-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 7px;background:var(--surface2);border:1px solid var(--border);border-radius:3px}.health-row-text{display:flex;flex-direction:column;gap:1px;min-width:0}.health-name{color:var(--text2);font-size:11px;font-weight:600}.health-detail{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.health-detail,.health-polled{font-family:var(--mono);color:var(--text3)}.health-polled{font-size:7px;margin-top:2px;padding:0 2px}#strategy-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;align-content:start}.stat-box{background:var(--surface2);border:1px solid var(--border);border-radius:4px;padding:5px 7px}#strategy-summary .stat-box{padding:4px 6px;border-radius:3px}.stat-label{font-size:var(--tiny-size);color:var(--text3);margin-bottom:2px;line-height:1.2}.stat-val{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--text)}#strategy-summary .stat-label{font-size:9px}#strategy-summary .stat-val{font-size:15px}.stat-val.g{color:var(--green)}.stat-val.r{color:var(--red)}.stat-val.y{color:var(--yellow)}#pnl-panel{display:flex;flex-direction:column;gap:4px}.pnl-row{display:flex;justify-content:space-between;align-items:center;padding:5px 7px;background:var(--surface2);border:1px solid var(--border);border-radius:3px}.pnl-label{color:var(--text2);font-size:var(--small-size)}.pnl-val{font-family:var(--mono);font-weight:700;font-size:var(--base-size)}.pnl-val.pos{color:var(--green)}.pnl-val.neg{color:var(--red)}#margin-panel{display:flex;flex-direction:column;gap:3px;min-width:0}.margin-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;align-items:start;min-width:0}.margin-col{display:flex;flex-direction:column;gap:0;min-width:0}.margin-col-breakdown{padding-left:12px;border-left:1px solid var(--border2)}.margin-breakdown-label{text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;padding-top:2px}.margin-breakdown-label,.margin-foot{font-size:8px;color:var(--text3);font-family:var(--mono)}.margin-foot{margin-top:6px;line-height:1.35}.margin-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;background:var(--surface2);border:1px solid var(--border);border-radius:3px;font-size:10.5px}.margin-label{color:var(--text2);font-size:10px}.margin-val{font-family:var(--mono);font-weight:700;font-size:11px}.margin-val.pos{color:var(--green)}.margin-val.neg{color:var(--red)}.util-bar-wrap{padding:4px 0 2px}.util-bar{height:4px;background:var(--surface3);border-radius:2px;overflow:hidden}.util-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .4s ease}.mini-select{font-size:9px;background:var(--surface3);border:1px solid var(--border2);color:var(--text2);border-radius:3px;padding:1px 4px;font-family:var(--mono);cursor:pointer}.controls-bar{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:6px 12px;background:var(--surface);border-bottom:1px solid var(--border2);flex-shrink:0}.ctrl-label{font-size:9px;color:var(--text3);font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;margin-right:4px}.ctrl-sep{width:1px;height:20px;background:var(--border2);margin:0 3px}.ctrl-spacer{flex:1}.btn{padding:4px 10px;border-radius:3px;border:1px solid;cursor:pointer;font-family:var(--sans);font-size:11px;font-weight:600;transition:all .15s;display:inline-flex;align-items:center;gap:4px}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-kill{border-color:var(--red);color:var(--red);background:var(--red-dim)}.btn-kill:hover:not(:disabled){background:var(--red);color:#fff}.btn-pause{border-color:var(--yellow);color:var(--yellow);background:var(--yellow-dim)}.btn-pause:hover:not(:disabled){background:var(--yellow);color:#000}.btn-start{border-color:var(--green);color:var(--green);background:var(--green-dim)}.btn-start:hover:not(:disabled){background:var(--green);color:#000}.btn-blue{border-color:var(--blue);color:var(--blue);background:var(--blue-dim)}.btn-blue:hover:not(:disabled){background:var(--blue);color:#fff}.btn-ghost{border-color:var(--border2);color:var(--text2);background:transparent}.btn-ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.hotkey{color:var(--text3);padding:1px 4px;border:1px solid var(--border2);border-radius:2px}.hotkey,.rms-warning{font-family:var(--mono);font-size:9px}.rms-warning{display:flex;align-items:center;gap:6px;color:var(--red)}.middle-area{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:var(--surface)}.table-toolbar{padding:5px 12px;background:var(--surface2);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;flex-shrink:0}.toolbar-label{font-size:9px;color:var(--text3);font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em}.strat-table-wrap{overflow-y:auto;flex:1}.strat-table{width:100%;border-collapse:collapse;font-size:var(--small-size)}.strat-table thead th{background:var(--surface2);color:var(--text3);font-family:var(--mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:7px 10px;border-bottom:1px solid var(--border);text-align:left;position:sticky;top:0;white-space:nowrap;z-index:1}.strat-table thead th:hover{color:var(--text2)}.strat-table tbody tr{border-bottom:1px solid var(--border);transition:background .1s}.strat-table tbody tr:hover{background:var(--surface2)}.strat-table td{padding:7px 10px;font-family:var(--mono);white-space:nowrap;vertical-align:middle}.strat-table td.td-strat-clip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100px}.strat-name-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-weight:600;font-size:11.5px;font-family:var(--sans);padding:0;text-align:left}.strat-name-btn:hover{text-decoration:underline}.sort-icon{font-size:9px;color:var(--text3);margin-left:2px}.sort-icon.asc,.sort-icon.desc{color:var(--accent)}.td-num{text-align:right;min-width:72px}.td-num.pos{color:var(--green)}.td-num.neg{color:var(--red)}.badge{display:inline-block;padding:2px 7px;border-radius:2px;font-size:9px;font-family:var(--mono);font-weight:700;letter-spacing:.06em}.badge-live{background:var(--green-dim);color:var(--green);border:1px solid #00d68f44;box-shadow:0 0 8px #00d68f22}.badge-paused{background:var(--yellow-dim);color:var(--yellow);border:1px solid #ffb80044;background:transparent}.badge-killed{background:var(--red-dim);color:var(--red);border:1px solid #ff4d6a44}.badge-stopped{background:transparent;color:var(--text2);border:1px solid var(--border2)}.badge-deploying{background:var(--yellow-dim);color:var(--yellow);border:1px solid #ffb80044}.badge-error{background:var(--red-dim);color:var(--red);border:1px solid #ff4d6a44;animation:badge-pulse 1s ease-in-out infinite}.badge-unknown{background:var(--surface3);color:var(--text3);border:1px solid var(--border2)}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.65}}.row-actions{display:flex;gap:4px}.row-btn{padding:2px 7px;border-radius:2px;border:1px solid;font-size:9px;font-family:var(--mono);font-weight:700;cursor:pointer;transition:all .12s;background:transparent}.rb-kill{border-color:#ff4d6a66;color:var(--red)}.rb-kill:hover{background:var(--red);color:#fff}.rb-pause{border-color:#ffb80066;color:var(--yellow)}.rb-pause:hover{background:var(--yellow);color:#000}.rb-start{border-color:#00d68f66;color:var(--green)}.rb-start:hover{background:var(--green);color:#000}.rb-neg{border-color:var(--text3);color:var(--text3)}.rb-neg:hover{background:var(--surface3);color:var(--text)}.bottom-area{height:200px;flex-shrink:0;background:var(--surface);border-top:none;display:flex;flex-direction:column;transition:height .18s ease}.bottom-area--dragging{transition:none}.bottom-area--tabs{flex-direction:column}.log-panel-resize-handle{flex-shrink:0;height:7px;cursor:ns-resize;touch-action:none;background:linear-gradient(180deg,var(--border2) 0,var(--border) 35%,var(--surface2) 100%);border-bottom:1px solid var(--border2);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.log-panel-resize-handle:hover{background:linear-gradient(180deg,var(--accent) 0,rgba(77,158,255,.35) 45%,var(--surface2) 100%)}.log-panel-resize-handle:focus{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.log-panel-resize-handle:focus:not(:focus-visible){box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.log-panel{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.log-panel--full{width:100%}.log-header--tabs{flex-wrap:wrap;align-items:center;gap:6px 10px}.log-tabs{display:flex;gap:2px;flex-shrink:0}.log-header-trailing{margin-left:auto;display:flex;align-items:center;gap:6px;flex-shrink:0}.log-tab{font-size:var(--tiny-size);font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;padding:4px 12px;border:1px solid var(--border2);border-radius:3px 3px 0 0;background:var(--surface3);color:var(--text3);cursor:pointer}.log-tab:hover{color:var(--text);border-color:var(--text3)}.log-tab--active{color:var(--accent);border-color:var(--accent);border-bottom-color:transparent;background:var(--surface);margin-bottom:-1px;padding-bottom:5px}.log-legend--inline{margin-left:0;flex:1;min-width:0}.log-stack{flex:1;min-height:0;position:relative;background:var(--surface)}.log-pane{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.log-header{display:flex;align-items:center;padding:4px 12px;background:var(--surface2);border-bottom:1px solid var(--border);flex-shrink:0;gap:8px}.log-title{font-size:var(--tiny-size);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.oms-title{color:var(--accent)}.rms-title{color:#ff8a9b}.service-title{color:var(--yellow)}.log-legend{margin-left:4px;font-size:var(--tiny-size)}.log-legend,.log-toggle{color:var(--text3);font-family:var(--mono)}.log-toggle{font-size:9px;cursor:pointer;padding:2px 7px;border:1px solid var(--border2);border-radius:3px;background:transparent;transition:all .12s}.log-toggle:hover{color:var(--accent);border-color:var(--accent)}.log-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 12px;font-family:var(--mono);font-size:var(--small-size);line-height:1.7;-webkit-overflow-scrolling:touch}.bottom-area--tall-logs .log-content,.bottom-area--tall-logs .log-pane.log-content{font-size:14px;line-height:1.5;padding:8px 16px}.bottom-area--tall-logs .log-time{font-size:13px}.bottom-area--tall-logs .log-strat{width:160px}.log-pane.log-content{margin:0}.log-placeholder .log-msg code{font-size:9px;color:var(--accent);background:var(--surface3);padding:0 3px;border-radius:2px}.log-entry{display:flex;gap:10px;align-items:baseline;border-left:3px solid transparent;padding:1px 0 1px 8px}.log-time{color:var(--text3);flex-shrink:0}.log-strat{color:var(--accent);flex-shrink:0;width:clamp(120px,12vw,180px);overflow:hidden;text-overflow:ellipsis;font-weight:500}.log-msg{flex:1;min-width:0;color:var(--text2);word-break:break-word}.log-msg--muted{color:var(--text3)}.log-entry--buy{border-left-color:var(--green)}.log-entry--buy .log-msg{color:var(--green)}.log-entry--buy .log-time{color:#00d68f99}.log-entry--info{border-left-color:var(--green)}.log-entry--info .log-msg{color:var(--green)}.log-entry--sell{border-left-color:var(--red)}.log-entry--sell .log-msg{color:var(--red)}.log-entry--modify{border-left-color:var(--blue)}.log-entry--modify .log-msg{color:var(--blue)}.log-entry--debug{border-left-color:var(--blue)}.log-entry--debug .log-msg{color:var(--blue)}.log-entry--cancel{border-left-color:var(--orange)}.log-entry--cancel .log-msg{color:var(--orange)}.log-entry--margin{border-left-color:var(--yellow)}.log-entry--margin .log-msg{color:var(--yellow)}.log-entry--margin .log-strat{color:var(--yellow);opacity:.8}.log-entry--warning{border-left-color:var(--yellow)}.log-entry--warning .log-msg{color:var(--yellow)}.log-entry--reject{border-left-color:var(--red);background:var(--red-dim)}.log-entry--reject .log-msg{color:var(--red);font-weight:600}.log-entry--reject .log-strat{color:var(--red)}.log-entry--risk{border-left-color:#ff6b8a}.log-entry--risk .log-msg{color:#ff6b8a}.log-entry--critical{border-left-color:var(--red);background:var(--red-dim)}.log-entry--critical .log-msg{color:var(--red);font-weight:700}.log-entry--critical .log-strat{color:var(--red)}.log-entry--neutral{border-left-color:var(--border2)}.log-entry--neutral .log-msg{color:var(--text2)}.log-entry--muted{border-left-color:transparent}.log-entry--muted .log-msg,.log-entry--muted .log-strat{color:var(--text3)}.modal-overlay{position:fixed;inset:0;background:#00000088;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--surface);border:1px solid var(--border2);border-radius:6px;max-height:88vh;overflow-y:auto;padding:20px 24px;position:relative;color:var(--text);font-family:var(--sans)}.modal-close{position:absolute;top:12px;right:16px;color:var(--text3);cursor:pointer;font-size:18px;background:none;border:none;line-height:1}.modal-close:hover,.modal-title{color:var(--text)}.modal-title{font-size:14px;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:10px;padding-right:24px}.pin-modal{width:320px}.pin-action-label{color:var(--text2);font-size:11px;margin-bottom:4px}.pin-hint{color:var(--text3);font-size:10px;margin-bottom:12px;font-family:var(--mono)}.pin-input{display:flex;gap:8px;justify-content:center;margin:16px 0}.pin-digit{width:40px;height:48px;background:var(--surface2);border:1px solid var(--border2);border-radius:4px;text-align:center;font-family:var(--mono);font-size:20px;color:var(--text);outline:none}.pin-digit:focus{border-color:var(--accent)}.btn-primary{width:100%;padding:8px;background:var(--accent);border:none;border-radius:4px;color:#fff;font-family:var(--sans);font-weight:700;font-size:13px;cursor:pointer}.btn-primary:hover{background:#7aaaff}.strat-modal{width:860px}.strat-modal--wide{width:min(960px,96vw)}.strat-modal-grid.modal-grid{margin-bottom:12px}.strat-json-section{grid-column:1/-1}.strat-json-pre{margin:0;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:4px;font-size:10px;line-height:1.4;max-height:280px;overflow:auto;white-space:pre;font-family:var(--mono);color:var(--text2)}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.modal-block{background:var(--surface2);border:1px solid var(--border);border-radius:4px;padding:12px 14px}.modal-block-title{font-size:9px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin-bottom:10px}.kv{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid var(--border);font-size:11px}.kv:last-child{border-bottom:none}.kv-label{color:var(--text2)}.kv-val{font-family:var(--mono);font-weight:600}.kv-val.pos{color:var(--green)}.kv-val.neg{color:var(--red)}.neglist-modal{width:480px}.neg-input{flex:1;background:var(--surface2);border:1px solid var(--border2);border-radius:4px;color:var(--text);padding:6px 10px;font-family:var(--sans);font-size:12px;outline:none}.neg-input:focus{border-color:var(--accent)}.neg-item{display:flex;align-items:center;gap:10px;padding:6px 10px;background:var(--surface2);border:1px solid var(--border);border-radius:3px}.wide-modal{width:900px}.filter-bar{display:flex;gap:8px;align-items:center;padding:8px 0;margin-bottom:8px;border-bottom:1px solid var(--border);flex-wrap:wrap}.filter-select{background:var(--surface2);border:1px solid var(--border2);border-radius:3px;color:var(--text);padding:3px 8px;font-size:10px;font-family:var(--sans);cursor:pointer;outline:none}.filter-select:focus{border-color:var(--accent)}.filter-label{font-size:9px;color:var(--text3);font-family:var(--mono)}.filter-reset{color:var(--red);border:1px solid #ff4d6a44;border-radius:3px}.download-btn,.filter-reset{font-size:9px;cursor:pointer;padding:3px 8px;background:transparent}.download-btn{color:var(--blue);border:1px solid #4d9eff44;border-radius:3px}.data-table{width:100%;border-collapse:collapse;font-size:11px}.data-table th{background:var(--surface3);color:var(--text3);font-size:9px;text-transform:uppercase;letter-spacing:.06em;text-align:left;white-space:nowrap}.data-table td,.data-table th{font-family:var(--mono);padding:6px 8px;border-bottom:1px solid var(--border)}.data-table td{vertical-align:middle}.data-table tbody tr:hover{background:var(--surface2)}.status-chip{padding:2px 7px;border-radius:2px;font-size:9px;font-family:var(--mono);font-weight:700}.loading-text{color:var(--text3);font-family:var(--mono);font-size:11px;text-align:center;padding:24px}.trading-desk ::-webkit-scrollbar{width:4px;height:4px}.trading-desk ::-webkit-scrollbar-track{background:transparent}.trading-desk ::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}.sidebar{width:220px;height:100vh;background:#0f172a;color:#fff;display:flex;flex-direction:column;padding:20px;position:fixed;left:0;top:0}.sidebar .logo{font-size:22px;font-weight:700;margin-bottom:30px}.sidebar .log-out-container{display:flex;justify-content:center;align-items:center;gap:8px;position:absolute;bottom:40px;left:60.5px;cursor:pointer;padding:0 14px;border-radius:6px;transition:background .3s}.sidebar .log-out-container:hover{background:#1e293b;color:#fff}.sidebar .log-out-container .logout-img{width:11px;height:12px}.sidebar .log-out-container .log-out{font-size:12px;font-weight:700;color:#e0e0e0}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav .nav-item{text-decoration:none;color:#9ca3af;display:flex;align-items:center;padding:12px 15px;border-radius:6px;font-size:12px;font-weight:600;transition:background .3s;cursor:pointer;outline:none;border:none}.sidebar nav .nav-item .icon{width:20px;height:20px;margin-right:10px}.sidebar nav .nav-item.active,.sidebar nav .nav-item:hover{background:#1e293b;color:#fff}.sidebar nav .nav-item:focus{outline:none;border:none;box-shadow:none}.sidebar nav .portfolio{justify-content:space-between;padding:12px 15px;background:transparent;border-radius:8px;cursor:pointer;outline:none;border:none}.sidebar nav .portfolio,.sidebar nav .portfolio .left{display:flex;align-items:center}.sidebar nav .portfolio .chevron{width:18px;height:18px;transition:transform .3s}.sidebar nav .portfolio.active{background:#1e293b;color:#fff}.sidebar nav .portfolio.active .chevron{transform:rotate(180deg)}.sidebar nav .portfolio:focus{outline:none;border:none;box-shadow:none}.sidebar nav .backtesting{justify-content:space-between;padding:12px 15px;background:transparent;border-radius:8px;cursor:pointer;outline:none;border:none}.sidebar nav .backtesting,.sidebar nav .backtesting .left{display:flex;align-items:center}.sidebar nav .backtesting .chevron{width:18px;height:18px;transition:transform .3s}.sidebar nav .backtesting.active{background:#1e293b;color:#fff}.sidebar nav .backtesting.active .chevron{transform:rotate(180deg)}.sidebar nav .backtesting:focus{outline:none;border:none;box-shadow:none}.sidebar nav .submenu{display:flex;flex-direction:column;margin-left:20px;margin-top:5px}.sidebar nav .submenu .submenu-item{text-decoration:none;color:#9ca3af;padding:8px;font-size:14px;transition:color .3s;outline:none;border:none}.sidebar nav .submenu .submenu-item:hover{color:#fff}.sidebar nav .submenu .submenu-item.active{color:#fff;font-weight:700}.sidebar nav .submenu .submenu-item:focus{outline:none;border:none;box-shadow:none}.trading-desk.all-orders-page{font-size:12px}.trading-desk.all-orders-page .orders-page-toolbar{display:flex;align-items:center;gap:16px;flex-shrink:0;padding:8px 14px;background:var(--surface);border-bottom:1px solid var(--border2)}.trading-desk.all-orders-page .orders-back-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;font-weight:600;padding:6px 12px;border-radius:4px;border:1px solid var(--border2);background:var(--surface2);color:var(--text);cursor:pointer}.trading-desk.all-orders-page .orders-back-btn:hover{border-color:var(--blue);color:var(--blue)}.trading-desk.all-orders-page .orders-back-icon{width:14px;height:14px}.trading-desk.all-orders-page .orders-page-title{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--text2);letter-spacing:.04em;text-transform:uppercase}.trading-desk.all-orders-page .orders-page-scroll{flex:1;min-height:0;overflow-y:auto;padding:12px 14px 0;background:var(--bg)}.trading-desk.all-orders-page .orders-alert{padding:10px 14px;margin-bottom:12px;border:1px solid var(--red-dim);border-radius:4px;background:var(--red-dim);color:var(--red);font-size:12px}.trading-desk.all-orders-page .orders-meta{font-size:11px;color:var(--text3);margin:0 14px 10px;font-family:var(--mono)}.trading-desk.all-orders-page .orders-meta code{font-size:10px;color:var(--text2);background:var(--surface2);padding:1px 4px;border-radius:2px}.trading-desk.all-orders-page .card{background:var(--surface);border:1px solid var(--border);border-radius:4px;margin-bottom:14px;box-shadow:none}.trading-desk.all-orders-page .card .card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid var(--border);background:var(--surface2)}.trading-desk.all-orders-page .card .section-title{font-size:13px;font-weight:600;color:var(--text);font-family:var(--sans)}.trading-desk.all-orders-page .card .header-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.trading-desk.all-orders-page .search-container{position:relative}.trading-desk.all-orders-page .search-container .search-icon{left:10px;width:14px;height:14px;color:var(--text3)}.trading-desk.all-orders-page .search-container .search-input{padding:6px 12px 6px 32px;font-size:12px;border:1px solid var(--border2);border-radius:3px;background:var(--bg);color:var(--text)}.trading-desk.all-orders-page .search-container .search-input:focus{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue-dim)}.trading-desk.all-orders-page .action-button{font-size:11px;font-family:var(--mono);color:var(--blue);gap:6px;padding:4px 8px;border-radius:3px;border:1px solid transparent}.trading-desk.all-orders-page .action-button:hover:not(:disabled){background:var(--surface3);color:var(--accent);border-color:var(--border2)}.trading-desk.all-orders-page .action-button:disabled{opacity:.4;cursor:not-allowed}.trading-desk.all-orders-page .action-button .icon{width:14px;height:14px}.trading-desk.all-orders-page .orders-table-shell{width:100%;overflow-x:auto;border-top:1px solid var(--border)}.trading-desk.all-orders-page .table-header{display:grid;align-items:center;gap:8px;padding:8px 14px;background:var(--surface2);border-bottom:1px solid var(--border);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text3);font-family:var(--mono);min-width:-moz-min-content;min-width:min-content}.trading-desk.all-orders-page .table-header.open-orders-header{grid-template-columns:32px 52px 48px minmax(100px,1.1fr) 56px 56px 44px 48px 72px 68px 68px}.trading-desk.all-orders-page .table-header.executed-orders-header{grid-template-columns:56px 48px minmax(100px,1fr) 48px 56px 80px minmax(72px,.8fr)}.trading-desk.all-orders-page .table-row{display:grid;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border);font-size:12px;min-width:-moz-min-content;min-width:min-content}.trading-desk.all-orders-page .table-row:hover{background:rgba(77,158,255,.06)}.trading-desk.all-orders-page .table-row.open-orders-row{grid-template-columns:32px 52px 48px minmax(100px,1.1fr) 56px 56px 44px 48px 72px 68px 68px}.trading-desk.all-orders-page .table-row.executed-orders-row{grid-template-columns:56px 48px minmax(100px,1fr) 48px 56px 80px minmax(72px,.8fr)}.trading-desk.all-orders-page .orders-table-placeholder{grid-column:1/-1;padding:20px;text-align:center;justify-content:center;color:var(--text2)}.trading-desk.all-orders-page .orders-table-placeholder--muted{color:var(--text3)}.trading-desk.all-orders-page .table-cell{font-size:12px;color:var(--text);min-width:0}.trading-desk.all-orders-page .table-header .header-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trading-desk.all-orders-page .orders-mono-id{font-family:var(--mono);font-size:11px;color:var(--text2)}.trading-desk.all-orders-page .instrument-name{font-weight:500;color:var(--text)}.trading-desk.all-orders-page .instrument-type{font-size:10px;color:var(--text3);margin-top:2px;font-family:var(--mono)}.trading-desk.all-orders-page .badge{padding:2px 8px;border-radius:3px;font-size:10px;font-weight:600;font-family:var(--mono)}.trading-desk.all-orders-page .badge.buy-badge{background:var(--green-dim);color:var(--green)}.trading-desk.all-orders-page .badge.rejected-badge,.trading-desk.all-orders-page .badge.sell-badge{background:var(--red-dim);color:var(--red)}.trading-desk.all-orders-page .badge.modify-badge{background:var(--yellow);color:#1a1400;border:none;padding:4px 8px;cursor:pointer;border-radius:4px}.trading-desk.all-orders-page .badge.modify-badge:hover{filter:brightness(1.05)}.trading-desk.all-orders-page .badge.cancel-badge{background:var(--red);color:#fff;border:none;padding:4px 8px;cursor:pointer;border-radius:4px}.trading-desk.all-orders-page .badge.cancel-badge:hover{filter:brightness(1.08)}.trading-desk.all-orders-page input[type=checkbox]{accent-color:var(--blue)}.trading-desk.all-orders-page .modal-overlay{background:rgba(0,0,0,.72)}.trading-desk.all-orders-page .modal-content{background:var(--surface);border:1px solid var(--border2);border-radius:6px;color:var(--text)}.trading-desk.all-orders-page .modal-header{background:var(--surface3);border-bottom:1px solid var(--border2);border-radius:6px 6px 0 0;color:var(--text)}.trading-desk.all-orders-page .modal-header .modal-title .nfo-label{background:var(--blue-dim);color:var(--blue)}.trading-desk.all-orders-page .modal-header .toggle-switch label{background:var(--border2)}.trading-desk.all-orders-page .modal-header .toggle-switch label:after{background:var(--text)}.trading-desk.all-orders-page .order-tabs{border-bottom:1px solid var(--border);background:var(--surface2)}.trading-desk.all-orders-page .order-tabs .tab{color:var(--text3)}.trading-desk.all-orders-page .order-tabs .tab.active{color:var(--blue);border-bottom-color:var(--blue)}.trading-desk.all-orders-page .order-tabs .tab:hover:not(.active){background:var(--surface3)}.trading-desk.all-orders-page .order-validity{border-bottom:1px solid var(--border);background:var(--surface)}.trading-desk.all-orders-page .order-validity .radio-option .product-tag{background:var(--surface3);color:var(--text2)}.trading-desk.all-orders-page .order-validity .radio-option.selected .product-tag{background:var(--blue);color:#fff}.trading-desk.all-orders-page .order-details{background:var(--surface)}.trading-desk.all-orders-page .order-details .field-group label{color:var(--text3)}.trading-desk.all-orders-page .order-details .qty-display,.trading-desk.all-orders-page .order-details .trigger-price{color:var(--text)}.trading-desk.all-orders-page .order-details .price-input-group{border-color:var(--border2);background:var(--bg)}.trading-desk.all-orders-page .order-details .price-input{background:transparent;color:var(--text)}.trading-desk.all-orders-page .order-details .price-controls{border-left-color:var(--border2)}.trading-desk.all-orders-page .order-details .price-btn{color:var(--text2)}.trading-desk.all-orders-page .order-details .price-btn:hover{background:var(--surface3)}.trading-desk.all-orders-page .order-details .price-btn:first-child{border-bottom-color:var(--border2)}.trading-desk.all-orders-page .order-details .more-button{color:var(--blue)}.trading-desk.all-orders-page .order-details .gtt-options{background:var(--surface2)}.trading-desk.all-orders-page .order-details .gtt-controls .percentage{color:var(--text3)}.trading-desk.all-orders-page .order-details .gtt-controls .learn-more{color:var(--blue)}.trading-desk.all-orders-page .order-details .margin-info{border-top-color:var(--border)}.trading-desk.all-orders-page .order-details .margin-label{color:var(--text2)}.trading-desk.all-orders-page .order-details .margin-amount{color:var(--text)}.trading-desk.all-orders-page .order-details .margin-amount .refresh-icon{color:var(--blue)}.trading-desk.all-orders-page .order-details .sell-button{background:var(--green);color:#0a0f0d}.trading-desk.all-orders-page .order-details .sell-button:hover{filter:brightness(1.05)}.trading-desk.all-orders-page .order-details .cancel-button{background:var(--surface3);color:var(--text2);border-color:var(--border2)}.trading-desk.all-orders-page .order-details .cancel-button:hover{border-color:var(--text3);color:var(--text)}.trading-desk.all-orders-page .cancel-modal-content{background:var(--surface);border:1px solid var(--border2);color:var(--text)}.trading-desk.all-orders-page .cancel-modal-message,.trading-desk.all-orders-page .cancel-modal-title{color:var(--text)}.trading-desk.all-orders-page .cancel-modal-button.cancel{background:var(--surface3);color:var(--text);border:1px solid var(--border2)}.trading-desk.all-orders-page .cancel-modal-button.confirm{background:var(--red);color:#fff}.trading-desk.all-orders-page .cancel-modal-button.confirm:hover:not(:disabled){filter:brightness(1.06)}@media (max-width:768px){.trading-desk.all-orders-page .table-header.open-orders-header,.trading-desk.all-orders-page .table-row.open-orders-row{grid-template-columns:28px 48px 44px minmax(80px,1fr) 44px 44px 40px 44px 64px 60px 60px}}:root{--login-bg:#0a0c10;--login-surface:#111318;--login-surface2:#181c24;--login-surface3:#1e2330;--login-border:#252a36;--login-border2:#2e3547;--login-text:#d4dae8;--login-text2:#7a8499;--login-text3:#4a5268;--login-green:#00d68f;--login-green-dim:rgba(0,214,143,.15);--login-red:#ff4d6a;--login-blue:#4d9eff;--login-mono:"JetBrains Mono",monospace;--login-sans:"IBM Plex Sans",sans-serif}.login-page{position:relative;min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;padding:24px 16px;box-sizing:border-box;font-family:var(--login-sans);background:var(--login-bg);color:var(--login-text);overflow:hidden}.login-page__grid{opacity:1;background-color:var(--login-bg);background-image:linear-gradient(hsla(0,0%,100%,.045) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.045) 1px,transparent 0);background-size:40px 40px;background-position:50%;mask-image:radial-gradient(ellipse 75% 70% at 50% 45%,#000 15%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse 75% 70% at 50% 45%,#000 15%,transparent 72%)}.login-page__grid,.login-page__radial{position:absolute;inset:0;pointer-events:none}.login-page__radial{background:radial-gradient(ellipse 55% 45% at 50% 42%,rgba(77,158,255,.07),transparent 65%)}.login-page__main{position:relative;z-index:1;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;text-align:center}.login-page__brand{margin:0;font-family:var(--login-mono);font-size:13px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--login-text)}.login-page__kicker{margin:6px 0 28px;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--login-text3)}.login-card{width:100%;padding:28px 28px 24px;text-align:left;background:var(--login-surface);border:1px solid var(--login-border);border-radius:6px;box-shadow:0 0 0 1px rgba(0,0,0,.35),0 24px 48px -12px rgba(0,0,0,.55);transition:border-color .25s ease,box-shadow .25s ease}.login-card:hover{border-color:var(--login-border2);box-shadow:0 0 0 1px rgba(0,0,0,.35),0 28px 56px -12px rgba(0,0,0,.6),0 0 80px -40px rgba(77,158,255,.12)}.login-card__title{margin:0 0 8px;font-size:18px;font-weight:600;letter-spacing:-.02em;color:var(--login-text)}.login-card__subtitle{margin:0 0 22px;font-size:13px;line-height:1.45;color:var(--login-text2)}.login-card__error{margin:0 0 16px;padding:10px 12px;font-size:12px;line-height:1.4;color:#ffb8c1;background:rgba(255,77,106,.12);border:1px solid rgba(255,77,106,.35);border-radius:4px}.login-form{display:flex;flex-direction:column;gap:0}.login-field{margin-bottom:16px}.login-field label{display:block;margin-bottom:6px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--login-text2)}.login-field input{width:100%;padding:11px 12px;font-family:var(--login-sans);font-size:14px;color:var(--login-text);background:var(--login-surface3);border:1px solid var(--login-border);border-radius:4px;box-sizing:border-box;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.login-field input::-moz-placeholder{color:var(--login-text3)}.login-field input::placeholder{color:var(--login-text3)}.login-field input:hover:not(:disabled){border-color:var(--login-border2);background:#222838}.login-field input:focus{outline:none;border-color:var(--login-blue);box-shadow:0 0 0 3px var(--login-green-dim);background:var(--login-surface2)}.login-field input:disabled{opacity:.55;cursor:not-allowed}.login-field__password{position:relative;display:flex;align-items:stretch;border:1px solid var(--login-border);border-radius:4px;background:var(--login-surface3);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.login-field__password:hover:not(:focus-within){border-color:var(--login-border2);background:#222838}.login-field__password:focus-within{border-color:var(--login-blue);box-shadow:0 0 0 3px var(--login-green-dim);background:var(--login-surface2)}.login-field__password input{flex:1;min-width:0;margin-bottom:0;padding-right:42px;border:none;border-radius:4px 0 0 4px;background:transparent;box-shadow:none}.login-field__password input:focus{box-shadow:none}.login-field__eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:36px;height:32px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--login-text2);cursor:pointer;transition:color .15s ease,background-color .15s ease}.login-field__eye:hover:not(:disabled){color:var(--login-blue);background:rgba(77,158,255,.12)}.login-field__eye:disabled{opacity:.5;cursor:not-allowed}.login-field__eye-icon{width:18px;height:18px}.login-form__row{display:flex;justify-content:flex-end;margin:-4px 0 8px}.login-link{font-size:12px;font-weight:500;color:var(--login-blue);text-decoration:none;transition:color .15s ease,text-underline-offset .15s ease}.login-link:hover{color:#7eb8ff;text-decoration:underline;text-underline-offset:3px}.login-link--strong,.login-submit{font-weight:600}.login-submit{width:100%;margin-top:8px;padding:12px 16px;font-family:var(--login-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#04120d;background:var(--login-green);border:1px solid rgba(0,214,143,.45);border-radius:4px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .15s ease}.login-submit:hover:not(:disabled){background:#00f0a4;border-color:rgba(0,240,164,.6);box-shadow:0 0 24px rgba(0,214,143,.35),0 0 2px rgba(0,214,143,.5)}.login-submit:active:not(:disabled){transform:translateY(1px)}.login-submit:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.login-form__footer{margin:20px 0 0;font-size:13px;text-align:center;color:var(--login-text2)}@media (prefers-reduced-motion:reduce){.login-card,.login-field input,.login-field__eye,.login-field__password,.login-link,.login-submit{transition:none}.login-submit:active:not(:disabled){transform:none}}.register-screen{display:flex;height:100vh;width:100vw}.register-left{display:flex;align-items:center;justify-content:center;position:relative;background-color:#000;overflow:hidden;width:50%}.brand-name{position:absolute;top:30px;left:40px;color:#fff;font-size:24px;font-weight:700;z-index:10}.register-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.register-right{flex:1;display:flex;align-items:center;justify-content:center;background:#fff}.register-box{width:50%;text-align:left}.register-box h2{font-size:26px;font-weight:700;margin-bottom:5px}.register-box p{font-size:14px;color:#6b7280;margin-bottom:20px}.error-message{color:#ef4444;font-size:14px;margin-bottom:15px;padding:10px;background-color:#fee2e2;border-radius:6px;border:1px solid #fecaca}.input-group{text-align:left;margin-bottom:15px}.input-group label{display:block;font-size:14px;margin-bottom:5px;font-weight:500;color:#374151}.input-group input{width:100%;padding:10px;border:1px solid #ccc;border-radius:6px;font-size:14px;transition:border .2s;box-sizing:border-box}.input-group input:focus{border-color:#007bff;outline:none}.input-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.password-hint{font-size:12px;color:#6b7280;margin-top:5px;margin-bottom:0}.password-input{display:flex;align-items:center;border:1px solid #ccc;border-radius:6px;width:100%;background:#fff;position:relative;overflow:hidden}.password-input input{flex:1;padding:10px;font-size:14px;width:100%;box-sizing:border-box}.password-input input,.password-input input:focus{border:none;outline:none}.eye-toggle{position:absolute;right:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px}.eye-icon{width:18px;height:18px;color:#6b7280}.register-button{width:100%;padding:12px;background:#007bff;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;margin-top:15px;transition:background .3s ease}.register-button:hover:not(:disabled){background:#0056b3}.register-button:disabled{background:#9ca3af;cursor:not-allowed}.login-link{text-align:center;margin-top:20px}.login-link p{font-size:14px;color:#6b7280;margin:0}.login-link a{color:#007bff;text-decoration:none;font-weight:500}.login-link a:hover{text-decoration:underline}@media (max-width:768px){.register-screen{flex-direction:column}.register-left{width:100%;height:40%}.register-right{width:100%;height:60%}.register-box{width:90%;padding:20px}}