:root{--bg:#05070b;--panel:#0b111a;--line:rgba(127,158,199,.18);--blue:#347fff;--cyan:#55d8ff;--text:#eef4fb;--muted:#738194;--red:#ff5a70}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 50% -10%,rgba(40,104,207,.2),transparent 34%),var(--bg);font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}.auth-particles{position:fixed;inset:0;pointer-events:none;overflow:hidden}.auth-particles i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--blue);box-shadow:0 0 15px var(--blue);opacity:.45;animation:drift 8s ease-in-out infinite alternate}.auth-particles i:nth-child(1){top:13%;left:17%}.auth-particles i:nth-child(2){top:29%;right:14%;width:8px;height:8px;background:var(--red);box-shadow:0 0 15px var(--red);animation-delay:-3s}.auth-particles i:nth-child(3){top:68%;left:9%;animation-delay:-5s}.auth-particles i:nth-child(4){top:77%;right:22%;background:var(--cyan);box-shadow:0 0 15px var(--cyan);animation-delay:-1s}.auth-particles i:nth-child(5){top:44%;left:78%;animation-delay:-6s}.auth-particles i:nth-child(6){top:88%;left:46%;background:var(--red);box-shadow:0 0 15px var(--red);animation-delay:-4s}@keyframes drift{to{transform:translate(18px,-28px) scale(1.45);opacity:.9}}a{color:inherit;text-decoration:none}.auth-layout{display:flex;min-height:100vh;align-items:center;justify-content:center;flex-direction:column;padding:36px 18px}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:29px}.auth-brand b{font-size:13px;letter-spacing:.18em}.brand-orb{position:relative;display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(105,181,255,.3);border-radius:50%;background:radial-gradient(circle at 35% 30%,#c3eaff,#2e79e1 35%,#071225 70%);box-shadow:0 0 21px rgba(52,127,255,.25)}.brand-orb:before,.brand-orb:after,.brand-orb i{position:absolute;width:11px;height:2px;border-radius:2px;content:"";background:#e9f7ff;transform:rotate(45deg)}.brand-orb:after{transform:rotate(-45deg)}.brand-orb i{width:4px;height:4px;border-radius:50%;background:#fff}.auth-card{width:min(100%,430px);padding:38px 39px;border:1px solid var(--line);border-radius:17px;background:rgba(11,17,26,.9);box-shadow:0 35px 90px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.03);backdrop-filter:blur(18px)}.auth-kicker{margin-bottom:14px;color:#5a9fff;font-family:monospace;font-size:9px;letter-spacing:.15em}.auth-card h1{margin:0 0 26px;font-size:30px;letter-spacing:-.05em}.auth-alert{margin:0 0 17px;padding:11px 13px;border:1px solid;border-radius:8px;font-size:11px}.auth-alert--success{border-color:rgba(52,127,255,.3);color:#8cc9ff;background:rgba(52,127,255,.08)}.auth-alert--error{border-color:rgba(255,90,112,.3);color:#ff9dad;background:rgba(255,90,112,.08)}.auth-copy{color:#8a98aa;font-size:12px}.auth-form{display:grid;gap:16px}.field{display:grid;gap:7px}.field label{color:#8898aa;font-size:10px;font-weight:650}.field input{width:100%;height:46px;padding:0 13px;border:1px solid var(--line);border-radius:8px;outline:0;color:#eef4fb;background:#070c13;font-size:12px;transition:.2s}.field input:focus{border-color:rgba(52,127,255,.65);box-shadow:0 0 0 3px rgba(52,127,255,.1)}.form-row{display:flex;align-items:center;justify-content:space-between;color:#637286;font-size:10px}.form-row a,.auth-link{color:#63adff}.submit-button{display:flex;width:100%;height:47px;align-items:center;justify-content:center;border:1px solid #4d98ff;border-radius:8px;color:#041020;background:linear-gradient(135deg,#62b4ff,#347fff);font-size:12px;font-weight:850;cursor:pointer;box-shadow:0 13px 32px rgba(52,127,255,.22)}.submit-button:hover{filter:brightness(1.12)}.auth-switch{margin:20px 0 0;padding-top:18px;border-top:1px solid var(--line);color:#667588;text-align:center;font-size:10px}.auth-switch a{color:#65b1ff}.auth-footer{display:flex;width:min(100%,430px);justify-content:space-between;margin:21px 0 0;color:#4d5b6d;font-size:8px}.auth-footer a:hover{color:#fff}.auth-footer span{color:#3d4a5a}@media(max-width:480px){.auth-card{padding:30px 22px}.auth-footer{padding:0 5px}}
.brand-image{display:block;width:auto;max-width:160px;height:32px;object-fit:contain}
