/* User request (no tracker ID) | 2026-11-13 | George | Match the VPS Admin dark navy sign-in experience. */
:root{color-scheme:dark;--bg:#080f1b;--panel:#0e1929;--border:#1d2b3e;--text:#eef4fb;--muted:#8999ad;--teal:#52d6c5;--red:#f18189;--amber:#f3bd6c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 50% 42%,#102039 0,#080f1b 61%);color:var(--text);font-size:14px;line-height:1.5}.login-shell{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:32px 18px}.login-card{width:min(100%,420px);padding:33px 36px 27px;border:1px solid #203047;border-radius:13px;background:linear-gradient(145deg,#101d2e,#0c1726);box-shadow:0 28px 80px #02061078}.brand{display:flex;align-items:center;justify-content:center;gap:11px;color:inherit;text-decoration:none;margin:0 auto 42px;width:max-content}.brand-mark{width:35px;height:35px;border-radius:10px;background:linear-gradient(145deg,#30cfb8,#087c91);display:grid;place-items:center;color:#04141c;font-size:18px;font-weight:850;box-shadow:0 7px 20px #11bba633}.brand-copy{display:grid;line-height:1.15}.brand-copy strong{letter-spacing:.04em;font-size:16px}.brand-copy small{color:#7e91a8;font-size:9px;letter-spacing:.17em;margin-top:4px}.access-mark{height:48px;width:48px;margin:0 auto 16px;display:grid;place-items:center;border:1px solid #24514f;background:#112b2d;border-radius:13px;color:var(--teal)}.access-mark svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.eyebrow{text-align:center;color:#7c91a9;letter-spacing:.15em;font-size:9px;font-weight:760;margin:0 0 6px}.login-card h1{text-align:center;font-size:25px;line-height:1.2;letter-spacing:-.035em;margin:0;font-weight:690}.intro{text-align:center;color:#96a6ba;font-size:12px;margin:10px 0 25px}.primary-button{width:100%;height:44px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #2bb9aa;border-radius:7px;background:linear-gradient(135deg,#28bba9,#129b98);color:#041818;font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:filter .15s ease,transform .15s ease}.primary-button:hover:not(:disabled){filter:brightness(1.09);transform:translateY(-1px)}.primary-button:focus-visible,.text-button:focus-visible,.brand:focus-visible,input:focus-visible{outline:2px solid #74e1d4;outline-offset:3px}.primary-button:disabled{opacity:.7;cursor:wait}.button-spinner{display:none;width:14px;height:14px;border:2px solid #083d3a55;border-top-color:#073b39;border-radius:50%;animation:spin .7s linear infinite}.primary-button[aria-busy=true] .button-spinner{display:block}.verify-form[hidden],#request-form[hidden],.notice[hidden]{display:none}.verify-form label{display:block;margin:0 0 7px;font-size:11px;font-weight:650;color:#dce6f0}.verify-form input{width:100%;height:46px;border:1px solid #30435b;background:#091321;border-radius:7px;padding:0 13px;color:#f1f6fc;font:inherit;font-size:19px;font-weight:650;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}.verify-form input:focus{border-color:#389c94;outline:0;box-shadow:0 0 0 3px #39c5b31c}.field-help{font-size:10px;color:#8292a7;margin:7px 0 17px}.verify-form .primary-button{margin-top:18px}.text-button{display:block;margin:12px auto 0;padding:5px 8px;border:0;background:transparent;color:#90a5bc;font:inherit;font-size:10px;cursor:pointer}.text-button:hover{color:#c1d0df;text-decoration:underline}.notice{margin:0 0 16px;padding:10px 12px;border:1px solid #28443f;border-radius:7px;background:#10231f;color:#a3d6c5;font-size:11px}.notice.error{border-color:#56383e;background:#25171d;color:#f0adb1}.notice.wait{border-color:#584b2f;background:#241f14;color:#e6c77d}.security-note{display:flex;align-items:center;justify-content:center;gap:8px;color:#71839a;font-size:9px;margin-top:23px}.security-note span:first-child{color:#59bbae;font-size:13px}.page-footer{display:flex;align-items:center;justify-content:center;gap:7px;color:#63748a;font-size:9px;margin-top:21px}.page-footer span{color:#43536a}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:480px){.login-shell{padding:19px 15px}.login-card{padding:28px 23px 23px}.brand{margin-bottom:35px}.login-card h1{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
