.admin-login{min-height:100dvh;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.admin-login section{width:min(100%,400px);background:var(--canvas);border:1px solid var(--line);border-radius:14px;padding:clamp(24px,5vw,40px)}.admin-login h1{margin:28px 0 8px;font-size:28px}.admin-login .login-help{margin:0 0 24px;color:var(--muted);font-size:15px;line-height:1.55}.admin-login form,.admin-login label{display:grid;gap:8px}.admin-login form{gap:20px}.admin-login label{font-weight:600}.admin-login button,.admin-login input{min-height:48px;width:100%;border-radius:6px;font:inherit;font-size:16px}.admin-login input{padding:8px 12px;border:1px solid var(--brand-line-strong);background:var(--brand-surface)}.admin-login input[name=code]{letter-spacing:.22em;font-variant-numeric:tabular-nums}.admin-login button{background:var(--blue);color:#fff;border:0;font-weight:600}.admin-login [role=alert]{margin:0;color:#a02535}.login-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 1em;margin-top:12px}.login-actions a,.login-actions button{display:inline-flex;align-items:center;min-height:44px;width:auto;padding:0;background:transparent;color:var(--blue);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px}