:root{--ink:#111110;--paper:#f4f2ed;--paper2:#eceae4;--ink2:#6b6860;--ink3:#696660;--ink4:#3d3c39;--rule:rgba(17,17,16,.14);--rule-s:rgba(17,17,16,.08);--field:rgba(17,17,16,.35);--accent:#0d3331;--accent-h:#0f3d3b;--accent2:#7bb8b4;--accent3:#e0f0ee;--hover-light:#e4f2f0;--on-dark:rgba(224,240,238,.92);--on-dark-soft:rgba(224,240,238,.72);--on-dark-mute:rgba(224,240,238,.55);--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--sans:"IBM Plex Sans",system-ui,-apple-system,sans-serif;--ease:cubic-bezier(.2,0,0,1);--dur:.22s;--nav-h:56px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden;display:flex;flex-direction:column;height:100vh;height:100dvh}#stage{flex:1;display:flex;min-height:0;position:relative}#screen{flex:1;position:relative;min-width:0;overflow:hidden;background:var(--paper)}.surface{position:absolute;inset:0;display:none}.surface.active{display:block}.surface-rdp{align-items:center;justify-content:center;overflow:hidden}.surface-rdp.active{display:flex;cursor:none}.surface-rdp,.surface-rdp canvas{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none}.surface-rdp.active.loading{cursor:default}.surface-ssh{padding:0}.surface-ssh .xterm{padding:12px;box-sizing:border-box;height:100%}.surface-ssh .xterm-viewport{background-color:transparent}body.dragover #screen,body.dragover-files #filesPanel{outline:2px dashed var(--accent2);outline-offset:-8px}#sshGrid{position:absolute;inset:0;display:none;flex-direction:row;background:var(--accent)}#screen.ssh-active #sshGrid{display:flex}.ssh-col{flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column}.ssh-cell{flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--paper);outline:1px solid transparent}.ssh-cell.focused{outline-color:var(--accent2)}.ssh-cell.selected{outline:2px solid var(--accent2)}.ssh-cell.selected .ssh-cell-head{color:var(--accent3);background:var(--accent-h)}.ssh-cell.drop-target{outline:2px dashed var(--accent2);outline-offset:-2px}.ssh-cell-head{flex:0 0 auto;display:flex;align-items:center;gap:8px;height:24px;padding:0 6px 0 10px;background:var(--accent);color:var(--accent2);cursor:grab;user-select:none}.ssh-cell.focused .ssh-cell-head{color:var(--accent3)}.ssh-cell-label{flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:500 11px/1 var(--mono);letter-spacing:.04em}.ssh-cell-close{flex:0 0 auto;border:0;background:none;cursor:pointer;color:inherit;opacity:.6;font:600 13px/1 var(--mono);padding:0 2px}.ssh-cell-close:hover{opacity:1}.ssh-cell .surface-ssh{position:relative;inset:auto;display:block;flex:1 1 0;min-height:0}body.ssh-dragging,body.ssh-dragging .ssh-cell-head{cursor:grabbing}.ssh-resizer{flex:0 0 auto;background:var(--accent2);opacity:.35;transition:opacity var(--dur) var(--ease)}.ssh-resizer:hover{opacity:.9}.surf-load{position:absolute;inset:0;z-index:3;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--paper)}.surf-load-logo{width:clamp(72px,9vw,110px);height:auto;opacity:.95}.ssh-resizer.v{width:6px;cursor:col-resize}.ssh-resizer.h{height:6px;cursor:row-resize}#loading{position:fixed;inset:0;z-index:5;display:none;flex-direction:column;align-items:center;justify-content:center;gap:26px;background:var(--paper)}body.loading #loading{display:flex}body.ssh-view #loading{display:none}.loading-logo{width:clamp(120px,18vw,180px);height:auto;opacity:.95}.loading-dots{display:flex;gap:12px}.loading-dots span{width:11px;height:11px;border-radius:50%;background:var(--accent);opacity:.15;animation:dotseq 1.4s var(--ease) infinite}.loading-dots span:nth-child(2){animation-delay:.18s}.loading-dots span:nth-child(3){animation-delay:.36s}@keyframes dotseq{0%,70%,to{opacity:.15}35%{opacity:1}}#topedge{position:fixed;top:0;left:0;right:0;height:10px;z-index:60}body:not(.panel-hidden) #topedge{pointer-events:none}#menu{background:var(--paper);display:flex;flex-direction:column;position:fixed;top:0;left:0;right:0;z-index:50;box-shadow:0 8px 24px #0d33312e;transition:transform var(--dur) var(--ease)}body.panel-hidden #menu{transform:translateY(-100%);transition-duration:.42s}#topbar{position:relative;min-height:var(--nav-h);flex:0 0 auto;display:flex;align-items:center;flex-wrap:nowrap;gap:6px;padding:7px clamp(12px,2.5vw,20px);background:var(--accent);color:var(--accent3);overflow:visible}#topbar .brand{flex:0 0 auto;display:flex;align-items:center;gap:12px;min-width:0;min-height:32px}.bar-center{flex:1 1 auto;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.bar-right{flex:0 0 auto;position:relative;display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;min-height:32px}.help-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:120;display:none;width:min(520px,calc(100vw - 24px));max-height:78vh;overflow-y:auto;background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:3px;box-shadow:0 10px 30px #11111038;padding:14px 16px;font:400 13px/1.55 var(--sans)}.help-pop.open{display:block}.help-head{font:600 13px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);margin-bottom:10px}.help-sec{padding-top:10px;margin-top:10px;border-top:1px solid var(--rule-s)}.help-sec:first-of-type{padding-top:0;margin-top:0;border-top:0}.help-sec h4{margin:0 0 6px;font:600 13px/1.3 var(--sans);color:var(--ink)}.help-sec p{margin:0 0 6px}.help-sec ul{margin:0;padding-left:18px}.help-sec li{margin:3px 0}.help-pop kbd{display:inline-block;padding:1px 5px;border:1px solid var(--field);border-radius:3px;background:var(--paper2);font:600 11px/1.4 var(--mono);color:var(--ink)}.help-pop .kc{white-space:nowrap}.help-pop code{padding:1px 4px;border-radius:3px;background:var(--paper2);font:500 12px/1.4 var(--mono);color:var(--ink4)}.app-tip{position:fixed;left:0;top:0;z-index:1000;max-width:280px;pointer-events:none;background:var(--paper);color:var(--ink);border:1px solid var(--field);border-radius:3px;box-shadow:0 6px 18px #1111102e;padding:5px 9px;font:500 12px/1.4 var(--sans);opacity:0;transform:translateY(-2px);transition:opacity .12s var(--ease),transform .12s var(--ease)}.app-tip.show{opacity:1;transform:none}#topTitle{font:700 16px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sep{flex:0 0 auto;width:1px;height:20px;background:#ffffff2e}@keyframes vmprog{0%,to{opacity:.22}50%{opacity:1}}#topbar #login.controls{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:6px;row-gap:6px;min-width:0}.grp{display:flex;align-items:center;gap:6px}.seg{display:flex;gap:6px}.seg button{height:32px;min-width:32px;padding:0 10px;cursor:pointer;border:0;border-radius:2px;background:transparent;color:var(--accent2);font:600 11px/1 var(--mono);letter-spacing:.14em;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.seg button:hover{background:#ffffff14;color:var(--accent3)}.seg button.active{background:var(--accent3);color:var(--accent)}.seg button:disabled{opacity:.3;cursor:not-allowed}.seg button:disabled:hover{background:transparent;color:var(--accent2)}.dd{position:relative;display:inline-flex}.dd-trigger{height:32px;min-width:0;max-width:200px;padding:0 8px;cursor:pointer;border:0;border-radius:2px;display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--accent2);font:600 11px/1 var(--mono);letter-spacing:.04em;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.dd-trigger:hover,.dd.open .dd-trigger{background:#ffffff14;color:var(--accent3)}.dd-trigger:disabled{opacity:.3;cursor:not-allowed}.dd-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-caret{flex:0 0 auto;width:9px;height:9px;transition:transform var(--dur) var(--ease)}.dd.open .dd-caret{transform:rotate(180deg)}.dd-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;z-index:80;background:var(--paper);border:1px solid var(--rule);max-height:320px;overflow-y:auto;display:none;box-shadow:0 8px 24px #0d33312e}.dd.open .dd-menu{display:block}.dd-opt{padding:7px 12px;cursor:pointer;white-space:nowrap;color:var(--ink4);font:500 12px/1 var(--mono);letter-spacing:.02em}.dd-opt:hover{background:var(--paper2);color:var(--ink)}.dd-opt.sel{background:var(--accent3);color:var(--accent)}input[type=text],input[type=password],input[type=number],select,textarea{font:400 14px/1.4 var(--mono);color:var(--ink);background:transparent;border:none;border-bottom:1px solid var(--field);border-radius:0;padding:8px 0;outline:none;width:100%;transition:border-color var(--dur) var(--ease)}textarea{font-family:var(--mono);resize:vertical}select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:22px;background-image:linear-gradient(45deg,transparent 50%,var(--ink3) 50%),linear-gradient(135deg,var(--ink3) 50%,transparent 50%);background-position:right 6px center,right 1px center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}input:focus,select:focus,textarea:focus{border-bottom-color:var(--accent)}input:-webkit-autofill,input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--paper) inset;-webkit-text-fill-color:var(--ink);caret-color:var(--ink);transition:background-color 99999s ease 0s}#login .rdp{display:none}body.proto-rdp #login .rdp{display:flex}button,.filebtn{font:600 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:13px 18px;border:1px solid var(--accent);border-radius:0;cursor:pointer;background:var(--accent);color:var(--accent3);transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}button:hover{background:var(--accent-h);border-color:var(--accent-h)}.filebtn{background:transparent;color:var(--accent);border-color:var(--accent)}.filebtn:hover{background:var(--accent);color:var(--accent3)}button:disabled{opacity:.4;cursor:not-allowed}button:disabled:hover{background:var(--accent);border-color:var(--accent)}.iconbtn{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--accent);cursor:pointer;border-radius:2px;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),opacity var(--dur) var(--ease)}.iconbtn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.iconbtn:hover{background:var(--hover-light)}.iconbtn:disabled{opacity:.35;cursor:not-allowed}.iconbtn:disabled:hover{background:transparent}.iconbtn.on-dark{color:var(--accent2)}.iconbtn.on-dark:hover{background:#ffffff14;color:var(--accent3)}.iconbtn.on-dark:disabled:hover{background:transparent}#status{display:none}.cliplabel{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;letter-spacing:.04em;color:var(--ink3)}.files-head{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:600 16px/1.2 var(--mono);letter-spacing:.04em;color:var(--ink3)}.files-actions{display:flex;gap:6px;flex:0 0 auto}#filesSection{flex:1;display:flex;flex-direction:column;min-height:0}#filesPanel{position:absolute;top:0;right:0;bottom:0;z-index:40;width:clamp(320px,27%,480px);display:flex;flex-direction:column;overflow:hidden;background:var(--paper);border-left:1px solid var(--rule);box-shadow:-8px 0 24px #0d33312e;padding:clamp(12px,1.6vw,18px) clamp(12px,1.4vw,18px);transform:translate(100%);transition:transform var(--dur) var(--ease)}body.files-open #filesPanel{transform:none}#treeToggle.active{background:var(--accent3);color:var(--accent)}#filesPath{display:block;width:100%;margin:8px 0 4px;font:400 12px/1.4 var(--mono);color:var(--ink4);text-transform:none;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#filesList{flex:1;overflow-y:auto;margin:8px 0;min-height:0}.file-entry{display:flex;align-items:center;gap:10px;padding:8px 12px;transition:background var(--dur) var(--ease)}.file-entry:hover{background:var(--hover-light)}.file-entry .fe-cb{width:auto;accent-color:var(--accent);flex:0 0 auto}.file-entry .fe-name{flex:1;min-width:0;font:400 13px/1.3 var(--mono);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.file-entry.dir .fe-name{color:var(--accent);font-weight:500}.file-entry .sz{font:400 11px/1 var(--mono);color:var(--ink2);flex:0 0 auto}#fileProgress{display:none;margin-top:12px}.hintnote{font:400 11px/1.4 var(--mono);color:var(--ink3);margin-bottom:4px}progress{width:100%;height:6px;border:none;appearance:none;-webkit-appearance:none;background:var(--paper2)}progress::-webkit-progress-bar{background:var(--paper2)}progress::-webkit-progress-value{background:var(--accent)}progress::-moz-progress-bar{background:var(--accent)}@media (max-width:760px){#topbar #login.controls{gap:4px;row-gap:4px}#topbar .sep{display:none}}@media (max-width:560px){#topbar{gap:10px;padding:7px 14px}#topTitle{font-size:11px}}#auth{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:var(--paper)}body.authed #auth{display:none}#authForm{display:flex;flex-direction:column;gap:14px;width:min(280px,86vw)}.auth-logo{width:clamp(150px,22vw,190px);height:auto;align-self:center;margin-bottom:18px}.auth-title{font:700 24px/1.1 var(--sans);letter-spacing:.01em;text-transform:uppercase;color:var(--ink);text-align:center;margin:0 0 8px}#authForm input::placeholder{color:var(--ink3);text-transform:uppercase;letter-spacing:.08em;font-size:11px;opacity:1}#authForm button{margin-top:6px;padding:12px 16px;cursor:pointer;background:var(--accent);color:var(--accent3);border:none;border-radius:0;font:600 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;transition:background var(--dur) var(--ease)}#authForm button:hover{background:var(--accent-h)}.auth-error{min-height:1.2em;margin:0;color:#b3261e;font:500 12px/1.3 var(--sans);text-align:center}.auth-link{text-align:center;font:400 12px/1.4 var(--mono);color:var(--ink3);letter-spacing:.02em;text-decoration:none}.auth-link:hover{color:var(--accent)}#authFooter{position:fixed;left:0;right:0;bottom:16px;display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;padding:0 16px;z-index:101}.auth-foot-sep{color:var(--ink3);font:400 12px/1.4 var(--mono)}body.authed #authFooter{display:none}#authLang{position:fixed;top:16px;right:16px;display:flex;gap:2px;z-index:101}#authLang button{border:1px solid var(--field);border-radius:0;background:transparent;cursor:pointer;color:var(--ink3);font:600 11px/1 var(--mono);letter-spacing:.04em;padding:6px 9px;transition:color var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease)}#authLang button:hover{color:var(--accent)}#authLang button.active{color:var(--accent3);background:var(--accent);border-color:var(--accent)}body.authed #authLang{display:none}#tabs{display:flex;flex-wrap:nowrap;justify-content:safe center;gap:6px;overflow-x:auto;overflow-y:hidden;padding:6px clamp(12px,2.5vw,20px);background:var(--paper);border-bottom:1px solid var(--rule)}#tabs:empty{display:none}#tabs .tab{flex:0 0 auto}.tab{display:flex;align-items:center;gap:8px;padding:7px 10px;cursor:pointer;border:1px solid var(--rule);background:transparent;font:500 12px/1 var(--mono);color:var(--ink4);transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.tab:hover,.tab.active{border-color:var(--accent2);background:var(--accent3);color:var(--accent)}.tab.drop-target{outline:2px dashed var(--accent2);outline-offset:2px}.tab.dragging{opacity:.55}body.tab-dragging,body.tab-dragging .tab{cursor:grabbing}.tab-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.tab-tag{opacity:.65;text-transform:uppercase;letter-spacing:.06em;font-size:11px}.tab-close{border:0;background:none;cursor:pointer;color:inherit;opacity:.55;font:600 14px/1 var(--mono);padding:0 2px;transition:opacity var(--dur) var(--ease)}.tab-close:hover{opacity:1;background:none}#settingsView{position:fixed;inset:0;z-index:110;display:none;flex-direction:column;background:var(--paper)}body.settings #settingsView{display:flex}.settings-bar{flex:0 0 auto;display:flex;align-items:center;gap:14px;padding:0 clamp(14px,3vw,28px);height:56px;background:var(--accent);color:var(--accent3)}#settingsBack{width:auto;gap:6px;padding:0 10px}.settings-back-label{font:600 12px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase}.settings-main{flex:1 1 auto;min-height:0;overflow-y:auto;padding:clamp(18px,4vw,40px)}.settings-main .adm-pane-form{width:min(560px,100%);margin:0 auto;max-height:none}#settingsView .adm-pane-form{display:flex;flex-direction:column;gap:14px}#sec2faOff,#sec2faSetup,#sec2faCodes,#sec2faOn{display:flex;flex-direction:column;gap:12px}.sec-status{font:600 12px/1 var(--mono)!important;letter-spacing:.05em;color:var(--accent)!important}.sec-qr{width:200px;height:200px;align-self:center;image-rendering:pixelated;border:1px solid var(--rule)}.sec-secret{font-size:12px!important;word-break:break-all}.sec-secret code{font:500 12px/1.4 var(--mono);color:var(--ink)}.sec-codes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:6px}.sec-codes li{font:500 13px/1.4 var(--mono);letter-spacing:.06em;color:var(--ink);background:var(--paper2);padding:6px 8px;text-align:center;white-space:nowrap}body.admin{overflow:hidden}body.admin #topbar{position:relative;z-index:10}#adminNavDD{display:none}@media (max-width:1100px){body.admin #adminNav button{padding:0 7px;letter-spacing:.05em}}@media (max-width:960px){body.admin #adminNav{display:none}body.admin #adminNavDD{display:inline-flex}}.adm-main{flex:1 1 auto;min-height:0;overflow:hidden;background:var(--paper);padding:clamp(18px,4vw,40px)}.adm-view{width:min(1600px,100%);height:100%;margin:0 auto;display:none;flex-direction:column}html.nav-servers #viewServers,html.nav-users #viewUsers,html.nav-machines #viewMachines,html.nav-policies #viewPolicies,html.nav-groups #viewGroups,html.nav-scripts #viewScripts,html.nav-events #viewEvents,html.nav-manage #viewManage{display:flex}.adm-btn{height:42px;display:inline-flex;align-items:center;justify-content:center;font:600 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:0 18px;border:1px solid var(--accent);border-radius:0;cursor:pointer;background:var(--accent);color:var(--accent3);transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.adm-btn:hover{background:var(--accent-h);border-color:var(--accent-h)}.adm-btn:disabled{opacity:.4;cursor:not-allowed}.adm-btn:disabled:hover{background:var(--accent);border-color:var(--accent)}.adm-btn.ghost{background:transparent;color:var(--accent)}.adm-btn.ghost:hover{background:var(--accent3);border-color:var(--accent);color:var(--accent)}.adm-btn.danger{background:#b3261e;border-color:#b3261e;color:#fff}.adm-btn.danger:hover{background:#9c2018;border-color:#9c2018}.adm-btn.danger.armed{background:#7a1813;border-color:#7a1813}.adm-split{display:flex;flex:1 1 auto;gap:clamp(16px,2.5vw,28px);align-items:flex-start;min-height:0}.adm-pane-list{flex:0 0 clamp(260px,34%,400px);min-width:0;height:100%;min-height:0;display:flex;flex-direction:column;border:1px solid var(--rule-s);background:var(--paper2);padding:clamp(16px,2vw,24px)}.adm-pane-form{flex:1 1 0;min-width:0;max-height:100%;overflow-y:auto;border:1px solid var(--rule-s);background:var(--paper2);padding:clamp(16px,2vw,24px)}.adm-pane-form form{display:flex;flex-direction:column;gap:14px}.adm-formtitle{font:700 16px/1.2 var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}.adm-subtitle{font:700 12px/1.2 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--ink2);margin-top:22px}#pwReset{border-top:1px solid var(--rule-s)}.pwrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0}.pwrow+.pwrow{border-top:1px solid var(--rule-s)}.pwrow-name{flex:1 1 160px;min-width:0;font:600 13px/1.3 var(--sans);color:var(--ink);overflow:hidden;text-overflow:ellipsis}.pwrow-code{flex:0 0 120px;height:34px;padding:0 10px;border:1px solid var(--field);background:var(--paper);color:var(--ink);font:600 13px/1 var(--mono);letter-spacing:.08em}.pwrow .adm-actions{flex:0 0 auto;margin:0}.pwrow-pass{flex:1 1 100%;font:400 12px/1.4 var(--mono);color:var(--ink)}.pwrow-pass code{font:600 13px/1 var(--mono);color:var(--accent);user-select:all}.adm-listhead{display:flex;gap:8px;margin-bottom:12px}.adm-listhead .adm-btn{flex:0 0 auto;padding:0 14px}.adm-listfoot{display:flex;gap:8px;margin-top:12px;flex:0 0 auto;justify-content:flex-end}.adm-listfoot .adm-btn{flex:0 0 auto;padding:0 14px}.adm-filter{flex:1 1 auto;min-width:0;height:42px;padding:0 12px;border:1px solid var(--field);background:var(--paper);color:var(--ink);font:400 13px/1.2 var(--mono)}.adm-loading{align-self:center;flex:0 0 auto;font:500 11px/1 var(--mono);color:var(--ink3);white-space:nowrap}.adm-selectable .adm-row{cursor:pointer}.adm-row.selected{border-color:var(--accent2);background:var(--accent3)}.adm-pane-form input,.adm-pane-form select,.adm-restore input,.adm-restore select{height:42px;padding:0 12px;border:1px solid var(--field);background-color:var(--paper);color:var(--ink);font:500 13px/1 var(--mono);letter-spacing:.04em}.adm-pane-form select,.adm-restore select{padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23696660' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px}.adm-pane-form input[readonly]{background-color:var(--paper2);color:var(--ink3)}.adm-pane-form textarea{padding:11px 12px;border:1px solid var(--field);background-color:var(--paper);color:var(--ink);font:500 13px/1.5 var(--mono);letter-spacing:.04em;resize:vertical;min-height:200px;width:100%}.adm-pane-form textarea.adm-scriptout{min-height:140px;background-color:var(--paper2);color:var(--ink);white-space:pre;overflow:auto;resize:none}.adm-pane-form textarea#mfSshPublicKey,.adm-pane-form textarea#mfSshImportKey{min-height:0}.adm-pane-form .CodeMirror{border:1px solid var(--field);background:var(--paper);color:var(--ink);font:500 13px/1.5 var(--mono);letter-spacing:.04em;height:auto}.adm-pane-form .CodeMirror-gutters{background:var(--paper2);border-right:1px solid var(--rule)}.adm-pane-form .CodeMirror-linenumber{color:var(--ink2)}.adm-pane-form .CodeMirror-cursor{border-left:1px solid var(--ink)}.adm-pane-form .CodeMirror-selected{background:var(--hover-light)}.adm-pane-form .CodeMirror-focused .CodeMirror-selected{background:var(--accent3)}.adm-pane-form .CodeMirror-activeline-background{background:var(--rule-s)}#viewScripts .adm-pane-form{height:100%;display:flex;flex-direction:column;overflow:hidden}#viewScripts #scriptForm{flex:1 1 auto;min-height:0}#viewScripts .adm-field-grow{flex:1 1 auto;min-height:120px}#viewScripts .adm-field-grow .CodeMirror{flex:1 1 auto;height:100%}#vmScriptOutputRow .CodeMirror{background:var(--paper2)}#vmScriptOutputRow .CodeMirror-scroll{min-height:140px;max-height:46vh}.adm-pane-form .cm-comment{color:var(--ink2);font-style:italic}.adm-pane-form .cm-meta{color:var(--ink3)}.adm-pane-form .cm-keyword{color:var(--accent);font-weight:600}.adm-pane-form .cm-builtin{color:#1f5a56}.adm-pane-form .cm-def,.adm-pane-form .cm-variable-2,.adm-pane-form .cm-variable-3{color:#2f6b67}.adm-pane-form .cm-string,.adm-pane-form .cm-string-2{color:#4f6b1e}.adm-pane-form .cm-number,.adm-pane-form .cm-atom{color:#8a5a00}.adm-pane-form .cm-operator{color:var(--ink4)}#vmScriptParams{display:flex;flex-direction:column;gap:14px}#vmScriptParams:empty{display:none}#vmDiskGrowRow{margin-top:10px;padding-top:22px;border-top:1px solid var(--rule-s)}.adm-vmactions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.adm-vmactions .adm-btn{padding:0 14px}.adm-vmactions input{flex:0 0 auto;width:64px;height:42px;padding:0 4px 0 8px;border:1px solid var(--field);background-color:var(--paper);color:var(--ink);font:500 13px/1 var(--mono)}.adm-diskrow{display:flex;gap:8px;align-items:stretch}.adm-diskrow select{flex:1 1 auto;min-width:0}.adm-diskrow input{flex:0 0 120px}.adm-diskrow .adm-btn{flex:0 0 auto}.adm-diskrow input,.adm-diskrow select,.adm-diskrow .adm-btn{height:42px}.adm-diskrow input,.adm-diskrow select{padding-top:0;padding-bottom:0}.adm-diskrow .adm-btn{padding:0 14px}.adm-list{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.adm-empty{font:400 13px/1.5 var(--mono);color:var(--ink3);padding:24px 0;text-align:center}.adm-error{min-height:1.2em;margin:0 0 8px;color:#b3261e;font:500 12px/1.3 var(--sans)}.adm-row{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--paper);border:1px solid var(--rule-s);transition:border-color var(--dur) var(--ease)}.adm-row:hover{border-color:var(--accent2)}.adm-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:9px}.adm-rowtop{display:flex;align-items:center;justify-content:space-between;gap:10px}.adm-rowtop .adm-name{flex:1 1 auto;min-width:0}.adm-protos{flex:0 0 auto;display:flex;gap:6px}.adm-sub{color:var(--ink4)}.adm-vmparams{margin-top:3px}.adm-ips{display:flex;flex-direction:column;gap:2px;margin-top:4px}.adm-ipline{display:flex;flex-wrap:wrap;gap:2px 14px;font:500 11px/1.4 var(--mono);color:var(--ink4)}.adm-ipline span{white-space:nowrap}#viewManage .adm-vmparams{margin-top:2px;gap:8px}#viewManage .adm-vmparams .adm-badge{font-size:11px;padding:4px 9px;text-transform:none;letter-spacing:0;color:var(--ink4);background:var(--paper2);border-color:var(--rule)}#viewManage .adm-ipline{font-size:12px;color:var(--ink4)}#viewManage .adm-pane-form{flex:1.4 1 0}.adm-pane-storage{flex:1 1 0;min-width:0;height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--rule-s);background:var(--paper2);padding:clamp(16px,2vw,24px)}.adm-pane-storage .adm-formtitle{flex:0 0 auto;margin-bottom:12px}.adm-pane-storage .adm-listhead{flex:0 0 auto}.adm-baktable{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px;margin-top:20px}.adm-bakcard{background:var(--paper);border:1px solid var(--rule-s);padding:14px 16px;display:flex;flex-direction:column;gap:6px}.adm-bakcard-notes{font:500 13px/1.4 var(--sans);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adm-bakcard-meta{display:flex;align-items:center;gap:10px;font:400 11px/1.3 var(--mono);color:var(--ink3)}.adm-bakcell-l{flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adm-bakcell-c{flex:1 1 0;text-align:center;white-space:nowrap}.adm-bakcell-r{flex:1 1 0;text-align:right;white-space:nowrap}.adm-selectable-card{cursor:pointer;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.adm-selectable-card:hover{border-color:var(--accent2)}.adm-bakcard.selected{border-color:var(--accent2);background:var(--accent3)}.adm-restore{flex:0 0 auto;margin-bottom:14px;display:flex;flex-direction:column;gap:14px}#restoreError:empty{display:none}.adm-tasktray{position:fixed;right:16px;bottom:16px;z-index:130;display:flex;flex-direction:column;gap:8px;width:min(320px,90vw);pointer-events:none}.adm-tasktray:empty{display:none}.adm-task{pointer-events:auto;background:var(--paper);border:1px solid var(--rule);box-shadow:0 8px 24px #0d33312e;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.adm-task-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.adm-task-label{font:600 12px/1.3 var(--mono);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adm-task-detail{flex:0 0 auto;font:500 11px/1.3 var(--mono);color:var(--ink3);white-space:nowrap}.adm-task-bar{height:3px;position:relative;overflow:hidden;background:#0d33311f}.adm-task-bar:before{content:"";position:absolute;inset:0;background:var(--accent2);animation:vmprog 1.6s ease-in-out infinite}.adm-task.done{border-color:#9bd3b4}.adm-task.done .adm-task-label:before{content:"\2713  ";color:#1f7a4d}.adm-task.error{border-color:#e3b4b0}.adm-task.error .adm-task-label:before{content:"\2717  ";color:#b3261e}.adm-task.error .adm-task-detail{color:#b3261e}.adm-name{font:500 15px/1.2 var(--sans);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adm-meta{display:flex;align-items:center;gap:8px;font:400 12px/1.2 var(--mono);color:var(--ink4)}.adm-machines{display:flex;overflow:hidden;gap:0}.adm-machines-names{flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adm-machines-more{flex:0 0 auto;margin-left:auto;padding-left:8px;color:var(--ink3)}.adm-machines.empty{color:var(--ink3);font-style:italic}.adm-scriptpreview{display:block;white-space:pre-wrap;word-break:break-word;overflow:hidden;line-height:1.4}.adm-badge{font:600 10px/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:var(--accent3);border:1px solid var(--accent2);padding:3px 7px;border-radius:3px}.adm-badge.ok{color:#1f7a4d;background:#e3f3ea;border-color:#9bd3b4}.adm-badge.bad{color:#b3261e;background:#fdeceb;border-color:#f1b5b0}.adm-badge.muted{color:var(--ink3);background:var(--paper2);border-color:var(--rule)}#viewEvents{width:min(960px,100%)}.adm-evhead{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:14px}#eventsCat{flex-wrap:wrap;justify-content:center}#eventsCat button{color:var(--accent)}#eventsCat button:hover,#eventsCat button.active{background:var(--accent3);color:var(--accent)}.adm-evhead .adm-filter{flex:0 0 auto;width:100%}#eventsList .adm-row:hover{border-color:var(--rule-s)}.iconbtn.sm.danger:hover{background:#b3261e1f;color:#b3261e}.adm-field{display:flex;flex-direction:column;gap:6px}.adm-field>span{font:600 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink3)}.adm-hint{font:400 11px/1.4 var(--mono);color:var(--ink3)}.adm-reveal{position:relative;display:flex}.adm-reveal input{flex:1 1 auto;padding-right:44px}.adm-reveal .iconbtn{position:absolute;right:6px;top:50%;transform:translateY(-50%)}.adm-inline{display:flex;gap:8px;align-items:stretch}.adm-inline>input,.adm-inline>textarea{flex:1 1 auto;min-width:0}.adm-inline>.adm-btn,.adm-inline>.adm-keybtns{flex:0 0 auto}.adm-btn.sm{padding:0 14px;white-space:nowrap}.adm-keybtns{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.adm-keybtns .adm-btn{padding:0 14px;white-space:nowrap}.adm-inline>.adm-keybtns{margin-top:0;flex-wrap:nowrap}.adm-inline>.adm-keybtns .adm-btn{padding:0 14px}.adm-check{display:flex;align-items:center;gap:10px;cursor:pointer}.adm-check[hidden]{display:none}.adm-check input[type=checkbox]{flex:0 0 auto;width:auto;padding:0;border:0;accent-color:var(--accent)}.adm-check>span{font:400 13px/1.3 var(--sans);color:var(--ink4);white-space:nowrap}.adm-userpick{display:flex;flex-direction:column;gap:10px}.adm-usergroup{display:flex;flex-direction:column;gap:6px}.adm-usergroup-head{font:600 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink3)}.adm-userbox{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;border:1px solid var(--field);background:var(--paper);padding:8px 10px;overflow-y:auto}.adm-userbox.assigned,.adm-userbox.available{height:76px}.adm-chipfilter{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-evenly;gap:8px;margin:0 0 12px}.adm-chipfilter[hidden]{display:none}.adm-chipfilter .adm-userchip{padding:5px 11px}.adm-chipfilter:not([hidden])+.adm-baktable{margin-top:0}.adm-chipfilter:not([hidden])+.adm-error:empty{min-height:0;margin:0}.adm-userchip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:3px;border:1px solid var(--rule-s);background:var(--paper2);color:var(--ink4);cursor:pointer;font:400 13px/1.2 var(--sans);transition:border-color var(--dur) var(--ease)}.adm-userchip[hidden]{display:none}.adm-userchip:hover{background:var(--accent3);border-color:var(--accent2);color:var(--accent)}.adm-chipfilter .adm-userchip:not(.on):hover{background:var(--paper2);border-color:var(--rule-s);color:var(--ink4)}.adm-userchip.on{background:var(--accent3);border-color:var(--accent2);color:var(--accent)}.adm-userchip .adm-userchip-ic{font-weight:600;opacity:.7}.adm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.adm-actions.left{justify-content:flex-start}.adm-pane-storage .adm-actions .adm-btn{padding:0 14px}.adm-backup-actions{margin-bottom:16px;gap:8px}.adm-ports{display:flex;gap:12px}.adm-ports .adm-field{flex:1 1 0;min-width:0}.adm-twocol{display:flex;gap:16px}.adm-twocol>.adm-field{flex:1 1 0;min-width:0}@media (max-width:760px){.adm-main{overflow-y:auto}.adm-view,.adm-split{height:auto}.adm-split{flex-direction:column}.adm-pane-list{flex-basis:auto;width:100%;height:auto;min-height:0}.adm-pane-form{width:100%;max-height:none;overflow:visible}.adm-pane-storage{width:100%;height:auto}.adm-list{flex:none;max-height:46vh}#viewScripts .adm-pane-form{height:auto;overflow:visible}#viewScripts .adm-field-grow .CodeMirror{flex:none;height:auto;max-height:60vh}.adm-baktable{flex:none;max-height:300px}.adm-twocol{flex-direction:column}}@media (max-width:1024px){html.nav-manage .adm-main{overflow-y:auto}#viewManage{height:auto}#viewManage .adm-split{flex-direction:column;height:auto}#viewManage .adm-pane-list,#viewManage .adm-pane-form,#viewManage .adm-pane-storage{width:100%;height:auto;max-height:none;overflow:visible}#viewManage .adm-list,#viewManage .adm-baktable{flex:none;max-height:50vh}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
