*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Archivo,"Noto Sans SC",system-ui,sans-serif;color:#151515;background:#FFFFFF}body{min-height:100vh}.auth-shell{min-height:calc(100vh - 104px);display:grid;place-items:center;padding:56px 20px 72px}.auth-card{width:min(100%,460px);background:#fff;border:1px solid rgba(0,0,0,.12);padding:38px 36px;box-shadow:0 18px 60px rgba(0,0,0,.07)}.auth-kicker{font-size:11px;letter-spacing:.22em;color:#777;text-transform:uppercase;margin-bottom:14px}.auth-card h1{margin:0;font-family:"Noto Serif SC",serif;font-size:34px;line-height:1.15}.auth-sub{margin:11px 0 30px;color:#6f6f6f;font-size:14px;line-height:1.7}.auth-field{margin:0 0 17px}.auth-field label{display:block;font-size:12px;font-weight:800;margin-bottom:7px}.auth-field input{width:100%;height:48px;border:1px solid #cfcfcf;background:#fff;border-radius:0;padding:0 13px;font:inherit;outline:none}.auth-field input:focus{border-color:#174c6b;box-shadow:0 0 0 2px rgba(23,76,107,.08)}.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-check{display:flex;gap:9px;align-items:flex-start;margin:2px 0 18px;font-size:12.5px;line-height:1.55;color:#555;cursor:pointer}.auth-check input{flex:none;width:15px;height:15px;margin:2px 0 0;accent-color:#174c6b}.auth-primary{width:100%;height:50px;border:0;background:#174c6b;color:#fff;font-weight:800;font-size:14px;cursor:pointer;margin-top:4px}.auth-primary:disabled{opacity:.55;cursor:wait}.auth-meta{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:20px;font-size:12px;color:#666}.auth-meta a,.auth-link{color:#174c6b;text-decoration:none;font-weight:800;cursor:pointer}.auth-message{display:none;margin:0 0 18px;padding:11px 12px;font-size:12px;line-height:1.55;border:1px solid}.auth-message.show{display:block}.auth-message.error{background:#fff1ef;border-color:#e2aaa1;color:#8d2e22}.auth-message.success{background:#edf8f1;border-color:#b9ddc6;color:#23613b}.auth-session-note{display:none}.auth-session-note.show{display:block;margin:0 0 18px;padding:11px 12px;background:#f4f7f8;border:1px solid #cfdde3;font-size:12px;color:#35505d}.reset-panel{display:none}.reset-panel.show{display:block}.login-panel.hidden{display:none}@media(max-width:600px){.auth-shell{padding:32px 16px 56px;align-items:start}.auth-card{padding:30px 22px}.auth-card h1{font-size:29px}.auth-grid{grid-template-columns:1fr}.auth-meta{align-items:flex-start;flex-direction:column;gap:11px}}