.auth-wrap{background:var(--white);grid-template-rows:auto 1fr auto;min-height:100vh;display:grid}.auth-main{justify-content:center;align-items:center;width:100%;padding:48px 24px;display:flex}.auth-card{width:100%;max-width:400px}.auth-card h1{font-family:var(--display);letter-spacing:.02em;color:var(--navy-ink);margin:0 0 8px;font-size:clamp(2.5rem,6vw,3.25rem);font-weight:400;line-height:1}.auth-card .lede{color:var(--text);margin:0 0 28px}.field{margin-bottom:18px}.field label{color:var(--navy-ink);margin-bottom:6px;font-size:.95rem;font-weight:600;display:block}.field input{width:100%;font-family:var(--body);color:var(--text);background:var(--white);border:1px solid #c9d2de;border-radius:3px;padding:11px 12px;font-size:1rem}.field input:focus-visible{outline:3px solid var(--navy);outline-offset:1px;border-color:var(--navy)}.btn-submit{cursor:pointer;background:var(--red);width:100%;color:var(--white);font-family:var(--display);letter-spacing:.05em;text-align:center;border:0;border-radius:3px;padding:11px 12px 9px;font-size:1.2rem;transition:background-color .15s;display:block}.btn-submit:hover{background:var(--red-hover)}.btn-submit:disabled{opacity:.6;cursor:default}.btn-submit:focus-visible{outline:3px solid var(--navy);outline-offset:3px}.auth-error{border-left:4px solid var(--red);color:#8c1c23;background:#fdeaea;margin:0 0 20px;padding:11px 14px;font-size:.95rem}.auth-aside{text-align:center;margin:20px 0 0;font-size:.95rem}.auth-aside a{color:var(--navy)}@media (prefers-reduced-motion:reduce){.btn-submit{transition:none}}.auth-notice{color:#1e5720;background:#eaf3ea;border-left:4px solid #2f7d32;margin:0 0 20px;padding:11px 14px;font-size:.95rem}.password-hint{color:#6b7686;margin:-10px 0 18px;font-size:.85rem}
