:root{font-family:Arial Narrow,Roboto Condensed,Segoe UI,sans-serif;color:#f4f8fc;background:#03101b;font-synthesis:none;text-rendering:optimizeLegibility;--cyan: #25c5f4;--lime: #8bd52d;--muted: #8c9bb0;--line: #173044;--surface: rgba(3, 16, 27, .94)}*{box-sizing:border-box}html{width:100vw;max-width:100vw;background:#03101b;overflow-x:hidden}body{margin:0;width:100vw;max-width:100vw;min-width:320px;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;background:#03101b url(/grid-texture.png) repeat;background-size:512px 512px}#root{width:100vw;max-width:100vw;overflow-x:hidden}button{font:inherit}.boot-screen,.login-screen{display:grid;width:100vw;min-height:100svh;place-items:center;padding:22px;color:#f4f8fc;background:#020d17eb}.boot-screen{align-content:center;gap:12px;color:var(--cyan)}.login-panel{width:min(100%,390px);padding:28px;border:1px solid var(--line);border-radius:18px;background:#04121ef5}.login-mark{display:grid;width:58px;height:58px;margin-bottom:22px;place-items:center;border:1px solid rgba(37,197,244,.55);border-radius:14px;color:var(--cyan);background:#052538b8}.login-brand{display:flex;align-items:baseline;gap:7px;margin-bottom:28px}.login-brand strong{font-family:Inter,Segoe UI,sans-serif;font-size:34px}.login-brand span{color:var(--muted);font-size:22px}.login-panel h1{margin:0 0 8px;font-size:24px}.login-panel>p{margin:0 0 26px;color:var(--muted);font-size:14px;line-height:1.5}.login-panel form,.change-password-form{display:grid;gap:14px}.login-panel label,.change-password-form label{display:grid;gap:7px;color:#b3bfd0;font-size:13px;font-weight:700}.login-panel input,.change-password-form input{width:100%;min-height:48px;padding:0 13px;border:1px solid #29465c;border-radius:10px;outline:none;color:#fff;background:#071724}.login-panel input:focus,.change-password-form input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #25c5f429}.password-field{position:relative}.password-field input{padding-right:50px}.password-field button{position:absolute;top:2px;right:2px;display:grid;width:44px;height:44px;place-items:center;border:0;color:var(--muted);background:transparent;cursor:pointer}.primary-button{min-height:48px;border:1px solid var(--cyan);border-radius:10px;color:#00111c;background:var(--cyan);font-weight:800;cursor:pointer}.primary-button:disabled{cursor:wait;opacity:.62}.form-error{padding:10px 12px;border:1px solid rgba(255,108,115,.52);border-radius:9px;color:#ff8f95;background:#4e161b73;font-size:12px;line-height:1.4}.app-shell{position:relative;width:100vw;height:100svh;overflow:hidden;touch-action:pan-y}.workspace-track{display:flex;width:200%;height:100%;transition:transform .28s ease;will-change:transform}.workspace-page{flex:0 0 50%;width:50%;height:100%;overflow:hidden}.workspace-page .dashboard{width:100%;height:100%}.page-dots{position:fixed;z-index:20;bottom:max(9px,env(safe-area-inset-bottom));left:50%;display:flex;gap:6px;padding:5px 7px;border-radius:999px;background:#03101bc7;transform:translate(-50%)}.page-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#375064;cursor:pointer}.page-dots button.active{width:22px;border-radius:999px;background:var(--cyan)}.drawer-handle{position:fixed;z-index:19;right:14px;bottom:max(7px,env(safe-area-inset-bottom));display:inline-flex;min-width:58px;min-height:36px;align-items:center;justify-content:center;gap:3px;border:1px solid rgba(37,197,244,.35);border-radius:999px;color:var(--cyan);background:#03101be6;cursor:pointer}.drawer-handle span{font-size:10px;font-weight:700}.diagnostics{display:grid;grid-template-rows:auto auto minmax(0,1fr);width:100%;height:100svh;color:#f4f8fc;background:#020d17f7}.diagnostics-header{display:flex;align-items:center;justify-content:space-between;padding:max(18px,env(safe-area-inset-top)) 18px 14px;border-bottom:1px solid var(--line)}.diagnostics-header div{display:grid;gap:2px}.diagnostics-header span{color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.diagnostics-header h1{margin:0;font-size:25px}.diagnostics-header button{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(37,197,244,.52);border-radius:11px;color:var(--cyan);background:#052538b8;cursor:pointer}.diagnostic-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:10px 12px;border-bottom:1px solid var(--line)}.diagnostic-tabs button{display:grid;min-width:0;min-height:55px;place-items:center;gap:3px;border:1px solid #20384a;border-radius:9px;color:var(--muted);background:#061521;cursor:pointer}.diagnostic-tabs button span{font-size:11px;font-weight:800}.diagnostic-tabs button.active{border-color:var(--cyan);color:var(--cyan);background:#052538c7}.diagnostic-content{min-height:0;overflow-y:auto;padding:12px 14px 64px;scrollbar-color:#345267 #071724}.loading-state,.empty-state,.error-state{display:grid;min-height:180px;place-content:center;justify-items:center;gap:10px;color:var(--muted);text-align:center;font-size:13px}.loading-state svg{color:var(--cyan);animation:spin .9s linear infinite}.error-state strong{color:#fff}.error-state button{min-height:42px;padding:0 16px;border:1px solid var(--cyan);border-radius:9px;color:var(--cyan);background:transparent}.process-list{border-top:1px solid var(--line)}.process-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;min-height:62px;align-items:center;padding:9px 3px;border-bottom:1px solid var(--line)}.process-main,.process-value{display:grid;min-width:0;gap:3px}.process-main strong{overflow:hidden;color:#edf5fc;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.process-main span,.process-value span{color:var(--muted);font-size:10px}.process-value{justify-items:end;font-variant-numeric:tabular-nums}.process-value strong{color:var(--cyan);font-size:15px}.disk-view{display:grid;gap:20px}.disk-section h3{margin:0 0 9px;color:#dfeaf4;font-size:14px}.disk-list{border-top:1px solid var(--line)}.disk-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;min-height:46px;border-bottom:1px solid var(--line);font-size:12px}.disk-row>span{display:flex;min-width:0;align-items:center;gap:9px;overflow:hidden;color:#ccd8e4;text-overflow:ellipsis;white-space:nowrap}.disk-row b{display:grid;width:21px;height:21px;flex:0 0 auto;place-items:center;border-radius:5px;color:var(--cyan);background:#25c5f41f;font-size:10px}.disk-row strong{color:var(--cyan);font-variant-numeric:tabular-nums}.special-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.special-grid>div{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#061521}.special-grid span{color:var(--muted);font-size:11px}.special-grid strong{color:var(--cyan);font-size:15px}.terminal-log{max-height:300svh;overflow-wrap:anywhere;border:1px solid #1b3548;border-radius:9px;background:#010910;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.log-line{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;padding:4px 7px;border-bottom:1px solid rgba(23,48,68,.5);font-size:10px;line-height:1.45}.log-line>span{color:#60798d}.log-line code{color:#a8d7b2;white-space:pre-wrap}.drawer-backdrop{position:fixed;z-index:39;top:0;right:0;bottom:0;left:0;visibility:hidden;border:0;opacity:0;background:#00060ba8;transition:opacity .22s ease,visibility .22s ease}.drawer-backdrop[data-open=true]{visibility:visible;opacity:1}.security-drawer{position:fixed;z-index:40;right:0;bottom:0;left:0;width:min(100%,620px);max-height:min(82svh,680px);margin:0 auto;overflow-y:auto;padding:8px 18px max(22px,env(safe-area-inset-bottom));border:1px solid #25445a;border-bottom:0;border-radius:20px 20px 0 0;color:#fff;background:#061521;transform:translateY(105%);transition:transform .26s ease}.security-drawer[data-open=true]{transform:translateY(0)}.drawer-grip{width:44px;height:4px;margin:0 auto 13px;border-radius:999px;background:#3d5b70}.security-drawer>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.security-drawer>header div{display:grid;gap:3px}.security-drawer>header span{color:var(--muted);font-size:11px;text-transform:uppercase}.security-drawer>header strong{font-size:19px}.security-drawer>header button{display:grid;width:44px;height:44px;place-items:center;border:0;color:var(--muted);background:transparent}.drawer-actions{display:grid;gap:9px}.drawer-actions>button{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;min-height:62px;align-items:center;padding:10px 13px;border:1px solid var(--line);border-radius:11px;color:var(--cyan);background:#071724;text-align:left}.drawer-actions>button span{display:grid;gap:3px}.drawer-actions strong{color:#edf5fc;font-size:14px}.drawer-actions small{color:var(--muted);font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}.dashboard{width:100vw;max-width:760px;min-height:100vh;margin:0 auto;overflow-x:hidden;background:#020d17eb;border-inline:1px solid rgba(37,197,244,.08)}.topbar{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:26px 18px;min-height:250px;padding:max(28px,env(safe-area-inset-top)) 22px 28px;border-bottom:1px solid var(--line);background:#04121ebd}.brand{display:flex;align-items:baseline;gap:9px;min-width:0;letter-spacing:-.04em;white-space:nowrap}.brand strong{font-family:Inter,Segoe UI,sans-serif;font-size:clamp(38px,11vw,54px);line-height:1}.brand span{color:#8290a5;font-size:clamp(25px,7vw,37px);white-space:nowrap}.status{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 16px;border:1px solid currentColor;border-radius:10px;background:#12341975;color:var(--lime);font-size:16px;font-weight:800;letter-spacing:.08em;white-space:nowrap}.status>span{width:11px;height:11px;border-radius:50%;background:currentColor}.status-offline{color:#ff6c73;background:#4e161b80}.status-loading{color:#f2bf48;background:#48340e80}.updated{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:15px;font-weight:600;letter-spacing:.01em}.refresh{display:inline-flex;min-width:96px;min-height:62px;align-items:center;justify-content:center;flex-direction:column;gap:2px;border:1px solid rgba(37,197,244,.6);border-radius:10px;background:#052538b8;color:var(--cyan);cursor:pointer}.refresh span{font-size:13px;font-weight:700}.refresh:disabled{cursor:wait;opacity:.65}.refresh:focus-visible{outline:3px solid #fff;outline-offset:3px}.refresh:not(:disabled):active svg{transform:rotate(120deg)}.metric-band{display:grid;gap:24px;min-height:325px;padding:32px 22px 38px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--accent)}.metric-heading{display:flex;align-items:center;gap:12px}.metric-heading h2{margin:0;font-size:24px;font-weight:700;letter-spacing:.04em}.metric-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:24px}.metric-percent{display:flex;align-items:baseline;font-family:Arial Narrow,Roboto Condensed,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.08em}.metric-percent strong{font-size:clamp(96px,28vw,145px);line-height:.72;font-weight:700}.metric-percent span{font-size:clamp(44px,13vw,68px);line-height:1}.metric-details{display:grid;min-width:0;gap:22px;margin:0;font-size:clamp(17px,4.6vw,25px);font-weight:600;font-variant-numeric:tabular-nums}.metric-details div{display:flex;flex-wrap:wrap;gap:7px;min-width:0}.metric-details dt{color:var(--muted)}.metric-details dd{margin:0;color:var(--accent)}.meter{position:relative;height:14px;overflow:hidden;background-color:#172634}.meter>span{display:block;height:100%;background-color:var(--accent);transition:width .3s ease}.server-footer{display:grid;grid-template-columns:1fr 1fr;gap:1px;min-height:144px;padding:24px 22px max(24px,env(safe-area-inset-bottom));background:#04121ec7}.server-footer>div{display:flex;align-items:center;gap:12px;min-width:0;color:var(--cyan)}.server-footer>div+div{padding-left:20px;border-left:1px solid var(--line)}.server-footer p{display:grid;gap:5px;min-width:0;margin:0}.server-footer span{color:var(--muted);font-size:14px}.server-footer strong{overflow:hidden;font-size:clamp(17px,4.7vw,24px);font-weight:600;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}@media(max-width:520px){.dashboard{display:grid;grid-template-rows:auto repeat(3,minmax(0,1fr)) auto;height:100svh;min-height:600px;overflow:hidden}.topbar{grid-template-columns:minmax(0,1fr) 92px;min-height:0;gap:8px 10px;padding:max(10px,env(safe-area-inset-top)) 18px 10px}.brand{gap:7px}.brand strong{font-size:30px}.brand span{font-size:20px}.status{min-height:44px;padding-inline:9px;font-size:11px}.updated{gap:7px;font-size:12px}.refresh{width:92px;min-width:80px;min-height:46px}.refresh svg{width:22px;height:22px}.refresh span{font-size:11px}.metric-band{align-content:center;min-height:0;gap:8px;padding:10px 18px}.metric-heading{gap:8px}.metric-heading svg{width:21px;height:21px}.metric-heading h2{font-size:18px}.metric-body{grid-template-columns:.82fr 1.18fr;gap:10px}.metric-percent strong{font-size:clamp(62px,19vw,76px);line-height:.78}.metric-percent span{font-size:clamp(30px,9vw,38px)}.metric-details{gap:7px;font-size:12px}.metric-details div{display:grid;gap:1px}.metric-details dt,.metric-details dd{overflow-wrap:anywhere}.meter{height:9px}.server-footer{min-height:0;padding:10px 18px max(10px,env(safe-area-inset-bottom))}.server-footer>div{gap:8px}.server-footer>div+div{padding-left:14px}.server-footer svg{width:24px;height:24px}.server-footer p{gap:2px}.server-footer span{font-size:11px}.server-footer strong{font-size:15px}}@media(max-width:380px){.brand strong{font-size:28px}.brand span{font-size:18px}.updated{font-size:12px}.refresh{min-width:74px}.metric-band{padding-inline:16px}.metric-percent strong{font-size:60px}.metric-percent span{font-size:29px}.server-footer{padding-inline:16px}.server-footer>div+div{padding-left:12px}}@media(max-width:520px)and (max-height:700px){.dashboard{min-height:540px}.topbar{gap:5px 8px;padding-top:max(6px,env(safe-area-inset-top));padding-bottom:6px}.brand strong{font-size:26px}.brand span{font-size:17px}.status{min-height:38px}.refresh{min-height:42px}.metric-band{gap:5px;padding-block:6px}.metric-heading h2{font-size:16px}.metric-percent strong{font-size:54px}.metric-percent span{font-size:27px}.metric-details{gap:4px;font-size:11px}.meter{height:7px}.server-footer{padding-block:6px}}
