:root{--bg: #0b0d10;--bar: #0e1014;--panel: #101318;--row-alt: #15181e;--row-hover: #1a1e26;--head: #0d1014;--total-row: #161a21;--total-col: #12151b;--chart-bg: #0d1014;--seg-bg: #111419;--border: #1d2128;--border-panel: #242933;--border-cell: #1b1f26;--border-strong: #2a2f38;--text: #e4e7eb;--text-strong: #eef0f3;--text-2: #c9ced6;--text-3: #b8bec7;--muted: #9aa1ab;--muted-2: #8a919c;--muted-3: #7b828d;--dim: #4a505a;--accent: #7c8cff;--accent-light: #c3cbff;--accent-seg: #1f2433;--pos: #34d38c;--neg: #ff5c5c;--zero: #9aa1ab;--m-panel: #1b202a;--m-sub: #171b23;--m-card: #222834;--m-border: #343b49;--m-text: #eef0f3;--m-muted: #a3abb8;--m-key: #b7c1ff;--shadow-panel: inset 0 1px 0 rgba(255, 255, 255, .05), 0 2px 4px rgba(0, 0, 0, .45), 0 14px 30px rgba(0, 0, 0, .4);--head-gradient: linear-gradient(#181c23, #13161c);--sans: "IBM Plex Sans", sans-serif;--mono: "IBM Plex Mono", monospace}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg)}html{scrollbar-width:thin;scrollbar-color:var(--border-strong) var(--bg)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--dim)}button{font:inherit}.mono{font-family:var(--mono)}.root{position:relative;min-height:100vh;width:100%;background:var(--bg);color:var(--text);font-family:var(--sans);overflow:clip;font-variant-numeric:tabular-nums}.panel{border:1px solid var(--border-panel);border-radius:8px;overflow:hidden;background:var(--panel);box-shadow:var(--shadow-panel)}.state-msg{padding:40px 24px;font-size:13px;color:var(--muted-2)}.state-msg.error{padding:6px 16px;font-size:12px;color:var(--text-3);border-bottom:1px solid var(--border)}.topbar{height:44px;display:flex;align-items:stretch;gap:24px;padding:0 16px;border-bottom:1px solid var(--border);background:var(--bar)}.topbar-brand{display:flex;align-items:center;font-size:13px;font-weight:600;letter-spacing:.12em}.topbar-nav{display:flex;gap:4px;font-size:13px}.topbar-nav-item{display:flex;align-items:center;padding:0 12px;color:var(--muted-2);font-weight:500;text-decoration:none}.topbar-nav-item:hover{color:var(--text)}.topbar-nav-item.active{color:#fff;box-shadow:inset 0 -2px 0 var(--accent)}.an-page{box-sizing:border-box;height:calc(100vh - 44px);padding:14px 16px 12px;display:flex;flex-direction:column;gap:12px;min-width:0;overflow:hidden}.an-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.an-viewtabs{display:flex;gap:4px}.an-viewtab{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:5px 10px;border-radius:4px}.an-viewtab.on{color:var(--accent-light);background:var(--accent-seg)}.an-seg{width:260px}.an-colbtn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}.an-colbtn:hover,.an-colbtn.open{color:var(--accent-light)}.an-sort{font-size:8px;color:var(--accent-light)}.an-filtered{width:5px;height:5px;border-radius:50%;background:var(--accent)}.an-menu{position:fixed;z-index:60;width:240px;background:var(--m-panel);border:1px solid var(--m-border);border-radius:8px;box-shadow:0 8px 24px #00000080;padding:6px;font-size:12px;color:var(--m-text);text-transform:none;letter-spacing:normal}.an-menu-item{all:unset;box-sizing:border-box;display:block;width:100%;padding:6px 8px;border-radius:4px;cursor:pointer}.an-menu-item:hover{background:var(--m-card)}.an-menu-item.on{color:var(--m-key);background:#7c8cff29}.an-menu-sep{height:1px;background:var(--m-border);margin:6px 0}.an-menu-list{max-height:320px;overflow-y:auto}.an-menu-check{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:4px;cursor:pointer}.an-menu-check:hover{background:var(--m-card)}.an-menu-check input,.an-tree-label input{accent-color:var(--accent);margin:0}.an-tree-row{display:flex;align-items:center;gap:2px;padding-right:6px;border-radius:4px}.an-tree-row:hover{background:var(--m-card)}.an-tree-chev{all:unset;flex:none;width:16px;height:22px;display:grid;place-items:center;color:var(--m-muted);cursor:pointer}span.an-tree-chev{cursor:default}.an-tree-chev svg{transition:transform .15s}.an-tree-chev.open svg{transform:rotate(90deg)}.an-tree-label{display:flex;align-items:center;gap:8px;flex:1;padding:3px 4px;cursor:pointer}.an-tree-wd{margin-left:auto;font-size:10px;color:var(--m-muted)}.an-menu-foot{display:flex;justify-content:flex-end;padding:6px 2px 2px;margin-top:4px;border-top:1px solid var(--m-border);animation:an-pop-in .12s ease-out both}.an-apply{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 12px;border-radius:5px;border:1px solid var(--accent);background:var(--accent);color:#0b0d10;cursor:pointer}.an-apply:hover:not(:disabled){background:var(--accent-light);border-color:var(--accent-light)}.an-apply:disabled{cursor:progress;opacity:.85}.an-spinner{width:10px;height:10px;border:2px solid rgba(11,13,16,.35);border-top-color:#0b0d10;border-radius:50%;animation:an-spin .6s linear infinite}@keyframes an-spin{to{transform:rotate(360deg)}}.an-frame{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;margin-right:-16px;border:1px solid var(--border-panel);border-right:none;border-radius:8px 0 0 8px;background:var(--panel);box-shadow:var(--shadow-panel);cursor:grab;user-select:none;-webkit-user-select:none}.an-frame.dragging{cursor:grabbing}.an-frame.dragging *{cursor:grabbing!important}.an-clip{position:relative;flex:1 1 auto;min-height:0;overflow:hidden;border-radius:8px 0 0}.an-wrap-pad{height:16px}.an-hbar{flex:none;position:relative;height:10px;margin-right:14px;border-top:1px solid var(--border-cell)}.an-hbar-thumb{position:absolute;top:3px;left:0;height:5px;width:0;border-radius:3px;background:var(--border-strong);cursor:grab;transition:background .12s,height .12s,top .12s}.an-hbar:hover .an-hbar-thumb,.an-frame.dragging .an-hbar-thumb{background:var(--dim);top:2px;height:7px}.an-wrap{position:absolute;top:0;left:0;right:0;bottom:-16px;overflow:auto;overscroll-behavior:contain;will-change:scroll-position;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;border-radius:8px 0 0 8px}.an-wrap::-webkit-scrollbar{width:5px;height:4px}.an-wrap::-webkit-scrollbar-track{background:transparent}.an-wrap::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.an-wrap::-webkit-scrollbar-thumb:hover{background:var(--dim)}.an-wrap::-webkit-scrollbar-corner{background:transparent}.an-daytotal{font-weight:600;background:var(--total-col)!important}.an-table tbody tr:hover td.an-daytotal{background:var(--row-hover)!important}.an-wrap{scroll-snap-type:x proximity}.an-group{scroll-snap-align:start}.an-frame.dragging .an-wrap{scroll-snap-type:none}.an-frame{position:relative}.an-nav{position:absolute;top:50%;z-index:8;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--m-border);background:var(--m-panel);color:var(--text);box-shadow:0 4px 14px #00000080;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(-50%) scale(.9);transition:opacity .18s ease,transform .18s ease}.an-nav.show{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}.an-nav:hover{color:var(--accent-light);border-color:var(--accent)}.an-nav-right{right:14px}.an-table{table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:12px;white-space:nowrap}.an-table th,.an-table td{overflow:hidden;text-overflow:ellipsis}.an-table th,.an-table td{padding:5px 6px;border-bottom:1px solid var(--border-cell)}.an-table thead th{position:sticky;top:0;z-index:3;height:30px;background:var(--head);color:var(--muted-2);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--border-panel)}.an-table thead tr:nth-child(2) th{top:30px;height:26px}.an-table thead th.an-fix{z-index:5}.an-group{text-align:center!important;color:var(--text-strong)!important;border-left:1px solid var(--border-panel);background:var(--total-row)!important}.an-sub{text-align:right!important;font-weight:500!important}.an-gstart{border-left:1px solid var(--border-panel)}.an-table tbody tr{background:var(--panel)}.an-table tbody tr:hover td{background:var(--row-hover)}.an-table tbody tr.an-daystart td{border-top:1px solid var(--border-strong)}.an-fix{position:sticky;z-index:1;background:var(--panel)}.an-fix-last{border-right:1px solid var(--border-panel)}.an-muted{color:var(--muted)}.an-name{font-weight:500;color:var(--text)}.an-mono,.an-num{font-family:var(--mono)}.an-num{text-align:right}.an-filter{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.an-filter-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-3);margin-right:4px}.an-filter-sep{width:1px;height:18px;background:var(--border-strong);margin:0 4px}@keyframes an-pop-in{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:none}}.an-tip,.an-menu{animation:an-pop-in .15s cubic-bezier(.2,.8,.2,1) both;transform-origin:top left;will-change:opacity,transform}@media (prefers-reduced-motion: reduce){.an-tip,.an-menu{animation:none}}.an-tip{position:fixed;z-index:50;pointer-events:none;background:var(--m-panel);border:1px solid var(--m-border);border-radius:8px;box-shadow:0 8px 24px #00000080;padding:10px 12px;font-size:12px}.an-tip-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.an-tip-title{font-weight:600;color:var(--m-text)}.an-tip-sub{font-family:var(--mono);font-size:11px;color:var(--m-muted)}.an-tip-table{width:100%;border-collapse:collapse}.an-tip-table th{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--m-muted);text-align:right;padding:3px 4px;border-bottom:1px solid var(--m-border)}.an-tip-table th:first-child{text-align:left}.an-tip-table td{padding:3px 4px}.an-tip-table tfoot td{border-top:1px solid var(--m-border);font-weight:600}.an-tip-name{color:var(--m-text);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-tip.pinned{pointer-events:auto;max-height:calc(100vh - 16px);overflow:hidden auto}.an-tip-headrow{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.an-tip-headrow .an-tip-head{margin-bottom:0}.an-tip-actions{display:flex;align-items:center;gap:8px;flex:none}.an-tabs{display:flex;background:var(--m-sub);border:1px solid var(--m-border);border-radius:6px;padding:2px;gap:2px}.an-tab{all:unset;cursor:pointer;font-size:11px;font-weight:500;padding:3px 10px;border-radius:4px;color:var(--m-muted)}.an-tab.on{background:#7c8cff29;color:var(--m-key)}.an-tip-close{all:unset;cursor:pointer;width:22px;height:22px;display:grid;place-items:center;border-radius:5px;color:var(--m-muted)}.an-tip-close:hover{background:var(--m-card);color:var(--m-text)}.an-tip-hint{margin-top:8px;padding-top:6px;border-top:1px solid var(--m-border);font-size:10px;letter-spacing:.04em;color:var(--m-muted)}.an-tip-loading{display:flex;align-items:center;gap:8px;padding:14px 4px;color:var(--m-muted)}.an-spinner-lg{width:14px;height:14px;border-color:#a3abb84d;border-top-color:var(--m-key)}.an-tip-note{margin-top:6px;font-size:11px;color:var(--m-muted)}.an-legs-scroll{max-height:320px;overflow:auto}.an-legs thead th{position:sticky;top:0;background:var(--m-panel);z-index:1}.an-legs td{vertical-align:middle}.an-legs .an-num{white-space:nowrap}.an-leg-name{min-width:220px}.an-leg-contract{font-family:var(--mono);font-size:12px;color:var(--m-text);white-space:nowrap}.an-leg-sub{font-size:10px;color:var(--m-muted);white-space:nowrap}.an-qty{color:var(--m-text)}.an-qty.zero{color:var(--dim)}.an-tip-empty{color:var(--m-muted);text-align:center;padding:6px 0!important}.kpis{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr 1fr;border-bottom:1px solid var(--border)}.kpi{min-width:0;padding:8px 16px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:2px}.kpi-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-3)}.kpi-stale{color:var(--accent-light)}.kpi-value{font-family:var(--mono);font-weight:500;font-size:14px;white-space:nowrap}.kpi:first-child .kpi-value{font-size:17px}.body-grid{display:grid;grid-template-columns:minmax(0,1fr) 8px max(260px,min(var(--aside, 360px),calc(100% - var(--mx-min, 720px) - 8px)));align-items:start}.body-main{padding:14px 0 20px 16px;min-width:0;overflow-x:auto;display:flex;flex-direction:column;gap:16px}.body-aside{padding:14px 16px 20px 0;min-width:0}@media (max-width: 1100px){.body-grid{grid-template-columns:minmax(0,1fr)}.body-main{padding-right:16px}.resizer{display:none}.body-aside{padding:0 16px 20px}.kpis{grid-template-columns:repeat(3,1fr)}.kpi{border-bottom:1px solid var(--border)}}.ex-header{all:unset;cursor:pointer;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--head-gradient);border-bottom:1px solid var(--border-panel)}.ex-header:hover{background:var(--row-hover)}.ex-chevron{transition:transform .15s}.ex-chevron.open{transform:rotate(90deg)}.ex-badge{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--accent-light);border:1px solid rgba(124,140,255,.45);padding:2px 7px;border-radius:4px}.mx-row{display:grid}.mx-head{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);border-bottom:1px solid var(--border-panel);background:var(--head)}.mx-head>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mx-head-strategy{padding:8px 12px}.mx-head-product{padding:8px 10px;border-left:1px solid var(--border-cell);color:var(--text-strong);font-weight:600;font-size:11px;letter-spacing:.06em}.mx-head-total{padding:8px 10px;border-left:1px solid var(--border-panel);color:var(--text-2)}.mx-strategy{border-bottom:1px solid var(--border-cell);background:var(--panel);cursor:pointer}.mx-strategy.alt{background:var(--row-alt)}.mx-strategy:hover{background:var(--row-hover)}.mx-name-cell{padding:8px 12px;display:flex;align-items:center;min-width:0}.mx-name{font-size:12px;font-weight:500;color:var(--text);border-bottom:1px dotted var(--dim)}.mx-strategy:hover .mx-name{color:var(--accent-light);border-bottom-color:var(--accent)}.mx-total-row{background:var(--total-row);border-top:1px solid var(--border-strong)}.mx-total-label{padding:8px 12px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);display:flex;align-items:center}.cell{padding:6px 10px;border-left:1px solid var(--border-cell);display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:36px;min-width:0}.cell.row-total{border-left-color:var(--border-panel);background:var(--total-col)}.cell.grand{border-left-color:var(--border-panel)}.mx-total-row .cell{justify-content:flex-start}.cell-total{font-family:var(--mono);font-size:13px;font-weight:600;white-space:nowrap}.cell.grand .cell-total{font-size:14px}.cell-ru{font-family:var(--mono);font-size:11px;display:flex;flex-direction:column;gap:0;color:var(--muted)}.cell-ru>span{white-space:nowrap}.cell-ru b{font-weight:500}.resizer{position:relative;align-self:stretch;margin:14px 0 20px;cursor:col-resize;transition:background .12s}.resizer.active{background:linear-gradient(90deg,transparent 3px,var(--accent) 3px,var(--accent) 5px,transparent 5px)}.resizer-grip{position:absolute;left:50%;top:160px;transform:translate(-50%,-50%);width:14px;height:40px;border-radius:7px;background:var(--accent);box-shadow:0 0 0 4px #7c8cff2e,0 4px 12px #00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;pointer-events:none}.resizer-grip span{width:3px;height:3px;border-radius:50%;background:var(--bg)}.resizer-tip{position:absolute;left:50%;top:160px;transform:translate(-50%,calc(-50% - 38px));white-space:nowrap;padding:4px 8px;border-radius:5px;background:var(--m-panel);border:1px solid var(--m-border);color:var(--text);font-size:11px;font-weight:500;box-shadow:0 4px 12px #00000080;pointer-events:none;z-index:2}.chart-head{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;background:var(--head-gradient);border-bottom:1px solid var(--border-panel)}.chart-head-title{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2)}.chart-head-sub{font-family:var(--mono);font-size:11px;color:var(--muted)}.chart-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:10px}.seg{display:flex;background:var(--seg-bg);border:1px solid var(--border);border-radius:6px;padding:3px;gap:2px}.seg button{flex:1;border:0;cursor:pointer;padding:4px 0;border-radius:4px;font-size:12px;font-weight:500;background:transparent;color:var(--muted)}.seg button.on{background:var(--accent-seg);color:var(--accent-light)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{cursor:pointer;padding:3px 9px;border-radius:999px;font-size:11px;border:1px solid #2a2f37;background:transparent;color:var(--muted)}.chip.on{background:#7c8cff29;color:var(--accent-light);border-color:#7c8cff80}.readout{display:flex;flex-direction:column;gap:2px}.readout-title{font-size:12px;color:var(--muted-2);white-space:nowrap}.readout-value{font-family:var(--mono);font-size:22px;font-weight:500}.readout-at{font-family:var(--mono);font-size:11px;color:var(--muted-3)}.chart-box{position:relative;background:var(--chart-bg);border:1px solid var(--border-cell);border-radius:6px}.chart-box svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.chart-ylabel{position:absolute;right:0;font-family:var(--mono);font-size:10px;color:var(--muted-3)}.chart-xaxis{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--muted-3)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border-panel);border:1px solid var(--border-panel);border-radius:6px;overflow:hidden}.stat{background:var(--total-col);padding:7px 10px;min-width:0;display:flex;flex-direction:column;gap:4px}.stat-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-3)}.stat-value{font-family:var(--mono);font-size:13px}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#05080c8c;display:flex;align-items:flex-start;justify-content:center;padding:32px 0;z-index:10}.modal{width:min(820px,calc(100vw - 32px));max-height:100%;display:flex;flex-direction:column;background:var(--m-panel);color:var(--m-text);border:1px solid var(--m-border);border-radius:12px;box-shadow:0 2px 6px #00000040,0 28px 60px #00000073;overflow:hidden}.modal-head{display:flex;align-items:flex-start;gap:16px;padding:18px 22px;border-bottom:1px solid var(--m-border)}.modal-title{display:flex;flex-direction:column;gap:4px}.modal-name{font-size:18px;font-weight:600}.modal-sub{font-family:var(--mono);font-size:12px;color:var(--m-muted)}.modal-close{margin-left:auto;cursor:pointer;width:30px;height:30px;display:grid;place-items:center;border-radius:6px;border:1px solid var(--m-border);background:transparent;color:var(--m-muted)}.modal-pnl{display:grid;grid-template-columns:repeat(3,1fr);background:var(--m-sub);border-bottom:1px solid var(--m-border)}.modal-pnl>div{padding:10px 22px;display:flex;flex-direction:column;gap:2px}.modal-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--m-muted)}.modal-pnl-value{font-family:var(--mono);font-size:16px;font-weight:600}.modal-tabs{display:flex;gap:2px;padding:0 22px;border-bottom:1px solid var(--m-border);background:var(--m-sub)}.modal-tab{border:0;background:transparent;border-radius:6px 6px 0 0;cursor:pointer;padding:11px 16px 10px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;color:var(--m-muted)}.modal-tab-name{font-size:13px;font-weight:500}.modal-tab-total{font-family:var(--mono);font-size:11px;font-weight:600}.modal-tab.on{background:#7c8cff29;color:var(--m-key);box-shadow:inset 0 -2px 0 var(--m-key)}.modal-tab.on .modal-tab-name{font-weight:700}.modal-body{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:minmax(0,1fr) 230px}.modal-config{padding:16px 22px;display:flex;flex-direction:column;gap:10px}.modal-heading{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--m-muted);font-weight:600}.kv-list{border-top:1px solid var(--m-border)}.kv{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--m-border);font-family:var(--mono);font-size:13px}.kv-key{color:var(--m-key)}.kv-value{font-weight:600}.modal-status{padding:16px 22px 18px;display:flex;flex-direction:column;gap:10px;border-left:1px solid var(--m-border)}.status-cards{display:flex;flex-direction:column;gap:10px}.status-card{background:var(--m-card);border:1px solid var(--m-border);border-radius:8px;padding:10px 14px;display:flex;flex-direction:column;gap:4px;box-shadow:0 1px 2px #0000001f}.status-key{font-family:var(--mono);font-size:12px;color:var(--m-key)}.status-value{font-family:var(--mono);font-size:22px;font-weight:600}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.login-card{width:320px;max-width:100%;display:flex;flex-direction:column;gap:14px;padding:26px 24px;background:var(--panel);border:1px solid var(--border-panel);border-radius:8px;box-shadow:var(--shadow-panel)}.login-brand{font-size:13px;font-weight:600;letter-spacing:.12em;text-align:center;margin-bottom:4px}.login-field{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--muted-2)}.login-field input{height:34px;padding:0 10px;font:inherit;font-size:13px;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:5px;outline:none}.login-field input:focus{border-color:var(--accent)}.login-error{font-size:12px;color:var(--neg)}.login-btn{height:34px;font-size:13px;font-weight:600;color:#fff;background:#3b4377;border:1px solid var(--accent);border-radius:5px;cursor:pointer}.login-btn:hover:not(:disabled){background:#48519a}.login-btn:disabled{opacity:.5;cursor:default}.topbar-user{position:relative;margin-left:auto;display:flex;align-items:center}.topbar-avatar{width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--accent-light);background:var(--accent-seg);border:1px solid var(--border-strong);border-radius:50%;cursor:pointer;transition:border-color .15s}.topbar-avatar:hover,.topbar-avatar.open{border-color:var(--accent)}.topbar-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:50;min-width:180px;padding:6px;background:var(--m-panel);border:1px solid var(--m-border);border-radius:8px;box-shadow:0 10px 30px #00000080;animation:topbar-menu-in .12s ease-out}@keyframes topbar-menu-in{0%{opacity:0;transform:translateY(-4px)}}.topbar-menu-user{display:flex;align-items:center;gap:8px;padding:8px 10px 10px;font-size:13px;font-weight:500;color:var(--m-text);border-bottom:1px solid var(--m-border);margin-bottom:4px;overflow-wrap:anywhere}.topbar-menu-item{width:100%;display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12px;color:var(--m-muted);background:transparent;border:0;border-radius:5px;cursor:pointer;text-align:left}.topbar-menu-item:hover{color:var(--m-text);background:var(--m-card)}.term-clear{padding:3px 10px;font-size:12px;color:var(--muted);background:transparent;border:1px solid var(--border-strong);border-radius:4px;cursor:pointer}.term-clear:hover{color:var(--text);border-color:var(--muted-3)}.term-page{box-sizing:border-box;height:calc(100vh - 44px);padding:14px 16px 12px;display:flex;flex-direction:column;gap:8px;min-width:0}.term-bar{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted-2)}.term-dot{width:8px;height:8px;border-radius:50%;background:var(--neg)}.term-dot.up{background:var(--pos)}.term-cwd{font-family:var(--mono);color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.term-hint{margin-left:auto;color:var(--dim)}.term-screen{flex:1;min-height:0;overflow:auto;padding:10px 12px;font-family:var(--mono);font-size:12.5px;line-height:1.45;color:var(--text-2);background:var(--chart-bg);border:1px solid var(--border-panel);border-radius:6px}.term-out{margin:0;font:inherit;white-space:pre-wrap;word-break:break-all}.term-line{display:flex;gap:8px}.term-prompt{color:var(--pos)}.term-line input{flex:1;padding:0;font:inherit;color:var(--text-strong);background:transparent;border:0;outline:none}.sync-page{box-sizing:border-box;height:calc(100vh - 44px);overflow:auto;padding:16px}.sync-head{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:14px}.sync-head h2{margin:0;font-size:15px;font-weight:600}.sync-listener,.sync-note{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted-2)}.sync-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--dim)}.sync-listener.up .sync-dot,.sync-card.ok .sync-dot{background:var(--pos)}.sync-listener.down .sync-dot,.sync-card.stale .sync-dot,.sync-card.error .sync-dot{background:var(--neg)}.sync-card.degraded .sync-dot{background:#f5b84a}.sync-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:12px}.sync-card{padding:14px 16px;background:var(--panel);border:1px solid var(--border-panel);border-radius:8px;box-shadow:var(--shadow-panel)}.sync-card-top{display:flex;align-items:center;gap:8px;margin-bottom:10px}.sync-name{font-size:14px;font-weight:600}.sync-id{font-family:var(--mono);font-size:11px;color:var(--muted-3)}.sync-state{margin-left:auto;font-size:12px;color:var(--muted)}.sync-grid{display:grid;grid-template-columns:max-content 1fr;gap:5px 14px;margin:0;font-size:12px}.sync-grid dt{color:var(--muted-3)}.sync-grid dd{margin:0;color:var(--text-2);overflow-wrap:anywhere}.sync-grid .mono{font-family:var(--mono);font-size:11px}.sync-err{margin-top:10px;padding:6px 9px;font-size:12px;color:var(--neg);background:#ff5c5c14;border-radius:4px;overflow-wrap:anywhere}.live-opts{display:flex;justify-content:flex-end;padding:6px 16px 0}.live-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none}.live-toggle:hover{color:var(--text-2)}.live-toggle input{margin:0;accent-color:var(--accent);cursor:pointer}
