:root{font-family:JetBrains Mono,Monaco,Inconsolata,Fira Mono,monospace;font-size:13px;line-height:1.5;font-weight:400;color:#575279;background-color:#faf4ed;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}:root{--bg: #e8e8e8;--bg-subtle: #d8d8d8;--bg-panel: #f0f0f0;--bg-hover: #c8c8c8;--bg-widget: #d0d0d0;--bg-widget-hover: #c0c0c0;--bg-widget-active: #b0b0b0;--border: #8c8c8c;--border-strong: #5a5a5a;--border-subtle: #c4c4c4;--border-faint: #d8d8d8;--text: #1b1b1b;--text-muted: #5a5a5a;--text-faint: #8c8c8c;--text-placeholder: #a0a0a0;--overlay-bg: rgba(0, 0, 0, .5);--scrollbar-thumb: #a0a0a0;--scrollbar-thumb-hover: #8c8c8c;--scrollbar-track: transparent;--accent: #2b7fc1;--accent-hover: #3a8fd1;--accent-gold: #b07800;--accent-error: #c04040;--accent-success: #2e8a4a;--accent-iris: #6050a8;--color-success: #2e8a4a;--color-success-bg: #d8eed8;--color-error: #c04040;--color-error-bg: #eed8d8;--btn-primary-bg: #2b7fc1;--btn-primary-text: #ffffff;--btn-primary-bg-hover: #3a8fd1;--accent-love: var(--accent-error);--accent-pine: var(--accent);--accent-foam: var(--accent)}[data-theme=dark]{--bg: #1b1b1b;--bg-subtle: #242424;--bg-panel: #2b2b2b;--bg-hover: #3c3c3c;--bg-widget: #3c3c3c;--bg-widget-hover: #484848;--bg-widget-active: #555555;--border: #545454;--border-strong: #8c8c8c;--border-subtle: #303030;--border-faint: #262626;--text: #e0e0e0;--text-muted: #8c8c8c;--text-faint: #545454;--text-placeholder: #888888;--overlay-bg: rgba(0, 0, 0, .7);--scrollbar-thumb: #484848;--scrollbar-thumb-hover: #5a5a5a;--scrollbar-track: transparent;--accent: #5b9bd5;--accent-hover: #6daee3;--accent-gold: #e8a000;--accent-error: #e05050;--accent-success: #4aa862;--accent-iris: #9a85d5;--color-success: #4aa862;--color-success-bg: #1a2b1f;--color-error: #e05050;--color-error-bg: #2b1a1a;--btn-primary-bg: #5b9bd5;--btn-primary-text: #ffffff;--btn-primary-bg-hover: #6daee3;--accent-love: var(--accent-error);--accent-pine: var(--accent);--accent-foam: var(--accent)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*::-webkit-scrollbar-corner{background:var(--scrollbar-track)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:JetBrains Mono,Hack,Fira Mono,Consolas,Monaco,monospace;font-size:13px;line-height:1.4;background:var(--bg);color:var(--text)}.app{min-height:100vh;display:flex;flex-direction:column}.header{position:sticky;top:0;z-index:100;background:var(--bg-panel);border-bottom:1px solid var(--border);padding:0 .75rem}.header-top{display:flex;justify-content:space-between;align-items:center;height:2.25rem;--header-height: 2.25rem}.header h1{font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--text-muted)}.header-right{display:flex;align-items:center;gap:1.5rem}.tab-bar{display:flex;align-items:stretch;gap:0;border-top:1px solid var(--border-subtle);overflow-x:auto;scrollbar-width:none;background:var(--bg-subtle)}.tab-bar::-webkit-scrollbar{display:none}.tab-item{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .75rem;font-family:inherit;font-size:12px;color:var(--text-muted);background:none;border:none;border-right:1px solid var(--border-subtle);cursor:pointer;white-space:nowrap;transition:none}.tab-item:hover{color:var(--text);background:var(--bg-hover)}.tab-item--active{color:var(--text);background:var(--bg-panel);border-bottom:2px solid var(--accent)}.tab-close{font-size:13px;line-height:1;color:var(--text-faint);padding:0 .1rem;border-radius:2px}.tab-close:hover{color:var(--accent-error);background:var(--bg-hover)}.tab-editor-content{display:flex;flex-direction:column;height:calc(100vh - var(--header-height, 2.25rem) - 2.25rem);padding:.4rem .75rem;gap:.4rem;background:var(--bg)}.tab-toolbar{display:flex;align-items:center;gap:.75rem;flex-shrink:0;background:var(--bg-panel);border:1px solid var(--border);border-radius:3px;padding:.3rem .6rem}.tab-toolbar-label{font-size:12px;color:var(--text-muted)}.tab-vim-toggle{font-size:12px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.tab-toolbar-actions{margin-left:auto;display:flex;gap:.4rem}.tab-editor-wrap{flex:1;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:3px}.username{color:var(--text-muted);font-size:12px}.logout-button{background:var(--bg-widget);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:.15rem .55rem;cursor:pointer;font-family:inherit;font-size:12px}.logout-button:hover{background:var(--bg-widget-hover);border-color:var(--border-strong)}.status-indicator{font-size:11px}.status-indicator.connected{color:var(--accent-success)}.status-indicator.disconnected{color:var(--accent-error)}.main{padding:.75rem;max-width:1600px;margin:0 auto}.error{color:var(--accent-error);padding:.4rem 0;margin-bottom:.75rem;font-size:12px;border-bottom:1px solid var(--color-error-bg)}.btn-error-wrap{position:relative;display:inline-flex}.btn-error-popup{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-panel);border:1px solid var(--accent-error);border-radius:3px;color:var(--accent-error);font-size:11px;padding:4px 8px;z-index:200;max-width:260px;white-space:normal;line-height:1.4;pointer-events:none}.search-container{position:relative;margin-bottom:.75rem}.search-input{width:100%;padding:.3rem 2rem .3rem .5rem;font-size:12px;border:1px solid var(--border);border-radius:3px;background:var(--bg-widget);color:var(--text);font-family:inherit;outline:none}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--text-placeholder)}.search-clear{position:absolute;right:.25rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1rem;color:var(--text-faint);cursor:pointer;padding:0 .25rem;line-height:1}.search-clear:hover{color:var(--text)}.locked-robots{border:1px solid var(--accent-gold);border-radius:3px;margin-bottom:.75rem;font-size:12px}.locked-robots-title{background:var(--accent-gold);color:#1b1b1b;padding:.2rem .5rem;font-weight:700;font-size:11px;letter-spacing:.04em}.locked-robots-list{display:flex;flex-direction:column}.locked-robot-item{display:flex;align-items:center;gap:.6rem;padding:.25rem .5rem;border-bottom:1px solid var(--border-faint)}.locked-robot-item:last-child{border-bottom:none}.locked-robot-server{color:var(--text-faint);font-size:11px;white-space:nowrap}.locked-robot-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.platforms{display:flex;flex-direction:column;gap:.5rem}.platform{border:1px solid var(--border);border-radius:3px;background:var(--bg-panel)}.platform-header{display:flex;align-items:center;gap:.6rem;padding:.35rem .6rem;background:var(--bg-subtle);border-bottom:1px solid var(--border);border-radius:3px 3px 0 0;flex-wrap:wrap}.platform-header h2{font-size:13px;font-weight:600;letter-spacing:.01em;color:var(--text)}.version,.address{font-size:11px;color:var(--text-faint)}.services-container{display:grid;gap:0 1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:.5rem .6rem}.service-section h3{font-size:10px;font-weight:600;color:var(--text-faint);margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.08em}.service-list{display:flex;flex-direction:column}.service-list--scrollable{max-height:380px;overflow-y:auto}.service-item{display:flex;align-items:center;gap:0 .5rem;padding:.2rem .4rem;border-bottom:1px solid var(--border-faint);border-radius:3px}.service-item:hover{background:var(--bg-hover)}.service-item:last-child{border-bottom:none}.service-info{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.service-name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.service-status{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;padding:.1rem .35rem;border-radius:2px}.service-actions{display:flex;visibility:hidden;gap:.15rem;flex-shrink:0}.service-actions .btn{padding:.15rem .4rem;font-size:14px;line-height:1}.service-item:hover .service-actions{visibility:visible}.btn{padding:.15rem .45rem;border:1px solid var(--border);border-radius:3px;background:var(--bg-widget);font-family:inherit;font-size:11px;cursor:pointer;color:var(--text);line-height:1.5;transition:none}.btn:hover:not(:disabled){background:var(--bg-widget-hover);border-color:var(--border-strong)}.btn:active:not(:disabled){background:var(--bg-widget-active)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-start{color:var(--accent);border-color:var(--accent)}.btn-start:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.btn-config{color:var(--accent);border-color:var(--accent)}.btn-config:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.btn-confirm{color:var(--accent);border-color:var(--accent)}.btn-confirm:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.btn-dots{font-size:14px;letter-spacing:1px;padding:1px 5px}.service-dropdown-wrap{position:relative}.service-dropdown{position:absolute;right:0;top:calc(100% + 2px);background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:3px;z-index:100;min-width:110px;display:flex;flex-direction:column}.service-dropdown-item{background:none;border:none;border-bottom:1px solid var(--border-faint);cursor:pointer;text-align:left;padding:.25rem .55rem;font-family:inherit;font-size:11px;color:var(--text);line-height:1.5}.service-dropdown-item:last-child{border-bottom:none}.service-dropdown-item:hover:not(:disabled){background:var(--bg-hover)}.service-dropdown-item:disabled{opacity:.35;cursor:not-allowed}.service-dropdown-item--danger{color:var(--accent-error)}.btn-update{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg);border-radius:3px}.btn-update:hover:not(:disabled){background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-bg-hover)}.btn-cancel{color:var(--text-muted);border-color:var(--border)}.btn-push-trades{color:var(--accent-iris);border-color:var(--accent-iris)}.btn-push-trades:hover:not(:disabled){background:var(--accent-iris);color:#fff}.btn-positions{color:var(--accent-success);border-color:var(--accent-success)}.btn-positions:hover:not(:disabled){background:var(--accent-success);color:#fff}.btn-generate{color:var(--text-muted);border-color:var(--border)}.btn-generate:hover{background:var(--bg-widget-hover);color:var(--text)}.btn-restart{color:var(--accent-gold);border-color:var(--accent-gold)}.btn-restart:hover:not(:disabled){background:var(--accent-gold);color:#1b1b1b}.add-dropdown-wrap{position:relative}.btn-add{color:var(--accent);border-color:var(--accent)}.btn-add:hover:not(:disabled){background:var(--accent);color:#fff}.btn-create{color:var(--accent);border-color:var(--accent)}.btn-create:hover:not(:disabled){background:var(--accent);color:#fff}.create-service-name{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.create-service-name label{font-size:12px;color:var(--text-muted);white-space:nowrap}.create-service-name-input{flex:1;border:1px solid var(--border);border-radius:3px;background:var(--bg-widget);color:var(--text);padding:3px 7px;font-size:12px;font-family:inherit;outline:none}.create-service-name-input:focus{border-color:var(--accent)}.modal-overlay{position:fixed;inset:0;background:var(--overlay-bg);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:4px;width:fit-content;min-width:600px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column}.modal-header{padding:.5rem .75rem;border-bottom:1px solid var(--border);background:var(--bg-subtle);border-radius:4px 4px 0 0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.modal-close{background:none;border:none;font-size:1.1rem;color:var(--text-faint);cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--text)}.modal-body{padding:.75rem;flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.modal-vim{margin-bottom:.5rem;font-size:12px;color:var(--text-muted)}.modal-vim label{cursor:pointer;-webkit-user-select:none;user-select:none}.modal-footer{padding:.5rem .75rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:.4rem}.status-success{padding:.3rem .6rem;border-left:3px solid var(--color-success);color:var(--color-success);font-size:12px;background:var(--color-success-bg);border-radius:0 2px 2px 0}.status-error{padding:.3rem .6rem;border-left:3px solid var(--color-error);color:var(--color-error);font-size:12px;background:var(--color-error-bg);border-radius:0 2px 2px 0}.empty-state{color:var(--text-faint);font-size:12px;padding:.5rem 0}.notifications{position:fixed;top:calc(var(--header-height, 2.25rem) + 2.25rem);right:.75rem;z-index:2000;display:flex;flex-direction:column;gap:.4rem;pointer-events:none}.notification{background:var(--bg-panel);color:var(--text);padding:.4rem .75rem;font-size:12px;max-width:300px;border:1px solid var(--border);border-left:3px solid var(--accent-error);border-radius:3px;cursor:pointer;pointer-events:all}.theme-toggle{background:var(--bg-widget);border:1px solid var(--border);border-radius:3px;color:var(--text);padding:.15rem .45rem;cursor:pointer;font-family:inherit;font-size:12px}.theme-toggle:hover{background:var(--bg-widget-hover);border-color:var(--border-strong)}@media(max-width:768px){.header{flex-direction:column;align-items:flex-start;gap:.4rem}.main{padding:.5rem}.services-container{grid-template-columns:1fr}.service-item{flex-wrap:wrap}.modal-content{min-width:unset;width:100%;max-height:95vh}}.groups-section{margin-bottom:.4rem}.groups-header{display:flex;align-items:center;gap:.3rem;-webkit-user-select:none;user-select:none;padding:.2rem 0}.groups-toggle{font-size:9px;color:var(--text-faint);line-height:1}.groups-label{font-size:10px;font-weight:700;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em}.groups-header:hover .groups-label,.groups-header:hover .groups-toggle{color:var(--text-muted)}.groups-body,.group-item{display:flex;flex-direction:column}.group-row{gap:.5rem}.group-row>.service-actions{display:flex}.group-expand-toggle{font-size:9px;color:var(--text-faint);cursor:pointer;flex-shrink:0;line-height:1;-webkit-user-select:none;user-select:none}.group-expand-toggle:hover{color:var(--text)}.group-name-input{border:none;border-bottom:1px solid transparent;background:transparent;font-family:inherit;font-size:12px;color:var(--text);width:80px;outline:none;padding:0;flex-shrink:0}.group-name-input:focus{border-bottom-color:var(--border)}.group-query-input{flex:1;border:none;border-bottom:1px solid var(--border);background:transparent;font-family:inherit;font-size:12px;color:var(--text);outline:none;padding:0;min-width:0}.group-query-input:focus{border-bottom-color:var(--border-strong)}.group-query-input::placeholder{color:var(--text-placeholder)}.group-count{font-size:10px;color:var(--text-faint);flex-shrink:0}.group-filter-input{width:100%;border:none;border-bottom:1px solid var(--border);background:transparent;font-family:inherit;font-size:11px;color:var(--text);outline:none;padding:.2rem 0;margin-bottom:.2rem;box-sizing:border-box}.group-filter-input:focus{border-bottom-color:var(--border-strong)}.group-filter-input::placeholder{color:var(--text-placeholder)}.group-service-checkbox{display:flex;align-items:center;gap:.4rem;padding:.15rem 0 .15rem .2rem;font-size:11px;cursor:pointer;-webkit-user-select:none;user-select:none}.group-service-checkbox input[type=checkbox]{margin:0;flex-shrink:0}.group-service-checkbox .service-name{font-size:11px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-service-checkbox .service-status{font-size:9px;flex-shrink:0}.group-svc-kind{font-size:9px;color:var(--text-faint);font-weight:700;text-transform:uppercase;flex-shrink:0;width:1.4em}.btn-group-remove{background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:14px;padding:0;line-height:1;flex-shrink:0}.btn-group-remove:hover{color:var(--text)}.btn-commit{color:var(--text-faint);border-color:var(--border-subtle)}.btn-commit:hover{background:var(--bg-widget-hover);color:var(--text)}.btn-commit--dirty{color:var(--accent-success);border-color:var(--accent-success)}.btn-commit--dirty:hover{background:var(--accent-success);color:#fff}.btn-add-group{background:none;border:none;color:var(--text-faint);cursor:pointer;font-family:inherit;font-size:11px;padding:.3rem 0;text-align:left;border-bottom:1px solid var(--border-faint)}.btn-add-group:last-child{border-bottom:none}.btn-add-group:hover{color:var(--text)}.group-services{padding:0}.group-service-item{padding-left:1.2rem}.group-service-item .service-name{font-size:11px}.group-service-item .service-status{font-size:9px}.modal-content--wide{width:min(900px,95vw);max-width:95vw}.modal-content--resizable{resize:both;overflow:hidden;min-width:600px;min-height:400px;max-width:98vw;max-height:98vh}.modal-content--resizable .var-modal-body{overflow-y:auto;flex:1;min-height:0}.var-modal-body{display:flex;flex-direction:column;padding:.75rem 1rem;gap:.5rem;height:calc(100vh - var(--header-height, 2.25rem) - 2.25rem);overflow-y:auto}.var-time-range{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;flex-shrink:0}.var-time-range label{font-size:11px;color:var(--text-muted);white-space:nowrap}.var-datetime-input{border:1px solid var(--border);border-radius:3px;background:var(--bg-widget);color:var(--text);font-family:inherit;font-size:11px;padding:.15rem .4rem;outline:none}.var-datetime-input:focus{border-color:var(--accent)}.var-split-view{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;flex-shrink:0}.var-split-panel{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:3px;min-height:0}.var-panel-header{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);padding:.25rem .5rem;border-bottom:1px solid var(--border);background:var(--bg-subtle);border-radius:3px 3px 0 0;flex-shrink:0}.var-panel-list{flex:1;overflow-y:auto;max-height:220px;min-height:80px}.var-indicator-item{display:flex;align-items:center;justify-content:space-between;padding:.25rem .5rem;cursor:pointer;border-bottom:1px solid var(--border-faint);font-size:11px;gap:.5rem}.var-indicator-item:last-child{border-bottom:none}.var-indicator-item:hover{background:var(--bg-hover)}.var-indicator-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.var-indicator-add{color:var(--accent-foam);font-size:13px;font-weight:700;flex-shrink:0;line-height:1}.var-indicator-remove{color:var(--text-faint);font-size:14px;flex-shrink:0;line-height:1}.var-indicator-item--selected{background:var(--bg-subtle)}.var-indicator-item--selected:hover{background:var(--bg-hover)}.var-loading,.var-chart-loading{font-size:11px;color:var(--text-faint);padding:.5rem;text-align:center}.var-chart-wrap{border:1px solid var(--border-subtle);flex-shrink:0;width:100%;box-sizing:border-box;overflow:visible}.var-chart-container{width:100%;display:block}.var-chart-container .u-wrap{background:var(--bg)!important}.var-chart-container .u-select{background:var(--accent);opacity:.2}.var-chart-container .u-legend{font-size:11px;font-family:inherit;color:var(--text-muted);background:transparent;border:none;padding:.25rem .5rem}.var-chart-container .u-legend th,.var-chart-container .u-legend td{padding:.1rem .4rem;color:var(--text);font-size:11px}.var-chart-container .u-legend .u-series>*{cursor:pointer}.var-chart-container .u-legend .u-off>*{opacity:.35}.var-chart-container .u-cursor-x,.var-chart-container .u-cursor-y{border-color:var(--border-strong)!important}.u-tooltip{position:absolute;pointer-events:none;z-index:10;background:var(--bg-panel);border:1px solid var(--border);border-radius:3px;padding:.3rem .5rem;font-size:11px;font-family:inherit;color:var(--text);display:flex;flex-direction:column;gap:.2rem;white-space:nowrap}.u-tt-ts{color:var(--text-muted);margin-bottom:.15rem;display:block}.u-tt-row{display:flex;align-items:center;gap:.35rem}.u-tt-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.u-tt-name{color:var(--text-muted);flex:1}.u-tt-val{color:var(--text);font-weight:600}.service-status--started{background:var(--accent-success);color:#fff}.service-status--stopped{background:var(--bg-widget);color:var(--text-faint)}.service-status--locked{background:var(--bg-widget);color:var(--accent-gold)}.service-status--hard-locked{background:var(--bg-widget);color:var(--accent-error)}.service-status--closing{background:var(--bg-widget);color:var(--accent-gold)}.positions-table-wrap{flex:1;display:flex;flex-direction:column;min-height:0;padding:0 16px 12px}.positions-empty{text-align:center;padding:32px;color:var(--text-muted)}.positions-count{color:var(--text-muted);font-size:12px;margin-left:8px}.positions-header{flex-shrink:0;background:var(--bg-panel)}.positions-body{flex:1;overflow-y:auto;min-height:0}.positions-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px;font-family:SF Mono,Cascadia Code,Consolas,monospace}.positions-table th,.positions-table td{padding:5px 10px;border-bottom:1px solid var(--border-faint);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.positions-header-labels th{background:var(--bg-panel);color:var(--text-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.pos-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.pos-th-sortable:hover{color:var(--text)}.pos-sort-arrow{font-size:9px}.positions-header-filters th{background:var(--bg-panel);padding:2px 4px 4px;border-bottom:2px solid var(--border)}.pos-filter-input{width:100%;box-sizing:border-box;padding:2px 4px;font-size:11px;font-family:inherit;border:1px solid var(--border-subtle);border-radius:3px;background:var(--bg-widget);color:var(--text);outline:none}.pos-filter-input::placeholder{color:var(--text-faint)}.pos-filter-input:focus{border-color:var(--accent)}.positions-table tbody tr:hover{background:var(--bg-hover)}.positions-table td.num,.positions-table th.num{text-align:right;font-variant-numeric:tabular-nums}.positions-table td.ts{color:var(--text-muted);font-size:12px}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg)}.login-box{background:var(--bg);padding:2rem;border:1px solid var(--border-strong);width:100%;max-width:360px}.login-box h1{margin:0 0 1.5rem;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text)}.form-group{margin-bottom:.75rem}.form-group label{display:block;margin-bottom:.3rem;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.form-group input{width:100%;padding:.35rem .5rem;border:none;border-bottom:1px solid var(--border);font-size:12px;background:transparent;color:var(--text);font-family:inherit;outline:none;box-sizing:border-box}.form-group input:focus{border-color:var(--border-strong)}.form-group input::placeholder{color:var(--text-placeholder)}.form-group input:disabled{opacity:.35;cursor:not-allowed}.error-message{padding:.4rem .75rem;margin-bottom:.75rem;border-left:3px solid var(--color-error);color:var(--color-error);font-size:12px;background:var(--color-error-bg)}.login-button{width:100%;padding:.35rem .5rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:1px solid var(--btn-primary-bg);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;font-family:inherit;margin-top:1rem}.login-button:hover:not(:disabled){background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-bg-hover)}.login-button:disabled{opacity:.35;cursor:not-allowed}@media(max-width:768px){.login-box{margin:1rem;padding:1.5rem}}
