:root{color-scheme:dark;--bg:#111725;--card:#1a2438;--input:#111b2c;--border:#35425d;--text:#e3eaf6;--secondary:#a5b1c8;--accent:#9ca8dc;--error:#ffc5c5}
*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:radial-gradient(ellipse at 15% 10%,#222e4c 0,transparent 50%),radial-gradient(ellipse at 90% 85%,#25263f 0,transparent 45%),var(--bg);color:var(--text);line-height:1.6}button,input{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.login-shell{width:min(480px,calc(100% - 40px));margin:0 auto;padding:10vh 0 36px}.login-brand{display:flex;gap:12px;align-items:center;margin:0 0 28px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;background:#323c59;border:1px solid #4b587d;border-radius:12px;color:#dce3ff;font-size:26px;font-weight:750}.login-brand strong{display:block;font-size:20px;letter-spacing:2px}.login-brand div>span{display:block;color:var(--secondary);font-size:12px}.private-label{margin-left:auto;padding:4px 9px;border:1px solid #42506c;border-radius:6px;color:#b8c6df;font-size:11px}.login-card{padding:32px;border:1px solid #33415c;border-radius:18px;background:rgb(27 37 57 / 88%);box-shadow:0 25px 60px #050a174f;backdrop-filter:blur(18px)}.eyebrow{margin:0 0 6px;color:#a2aed0;font-size:10px;letter-spacing:2px}h1{margin:0 0 10px;font-size:23px;font-weight:650}.intro{margin:0 0 26px;color:var(--secondary);font-size:13px}.field{margin-bottom:18px}.field label{display:block;margin-bottom:7px;font-size:13px;color:#d4deed}.field input{display:block;width:100%;height:44px;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--input);color:var(--text);outline:none;font-size:14px}.field small{display:block;margin-top:7px;color:var(--secondary);font-size:11px}.field input:focus{border-color:#98a5d7;box-shadow:0 0 0 3px #8f9aca20}.button{display:flex;justify-content:center;align-items:center;width:100%;min-height:44px;padding:10px 18px;border:1px solid #93a0d5;border-radius:8px;font-size:13px;font-weight:600}.button-primary{background:#929eca;color:#101b33}.button-primary:hover{background:#a9b4dd}.button:disabled{cursor:wait;opacity:.65}.form-error{padding:10px 12px;margin:0 0 18px;background:#542d3538;border:1px solid #8c515b85;border-radius:7px;color:var(--error);font-size:12px;overflow-wrap:anywhere}.status-message{margin:0 0 22px;padding:10px 12px;border:1px solid #5f729b;border-radius:8px;background:#2d3e5a;color:#dce6f7;font-size:12px}.access-note{margin:20px 0 0;color:var(--secondary);font-size:11px}.text-button{padding:0;margin-top:17px;border:0;background:transparent;color:#bccaf1;font-size:12px}.text-button:hover{color:#e0e7ff}footer{display:flex;justify-content:space-between;gap:10px;margin-top:25px;color:var(--secondary);font-size:11px}a,button,input{ -webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid #bec9fb;outline-offset:4px}noscript{display:block;padding:15px;text-align:center;color:var(--error)}@media(max-width:500px){.login-shell{padding-top:7vh;width:calc(100% - 30px)}.login-card{padding:25px 22px}footer{flex-direction:column;gap:3px}.private-label{font-size:10px}.login-brand{gap:10px}.login-brand strong{font-size:18px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
