/* Auth pages — centered card */
.auth-shell{position:relative;z-index:1;width:min(440px,calc(100% - var(--s-5)));margin:7vh auto var(--s-7);padding-bottom:var(--s-7)}
.auth-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:var(--s-4);color:var(--ivory-muted);font-size:var(--fs-small);text-decoration:none}
.auth-back:hover{color:var(--ivory)}
.auth-card{background:var(--bg-panel);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--line-soft);border-radius:var(--r-xl);padding:var(--s-8) var(--s-6) var(--s-6);box-shadow:var(--shadow-strong)}
.auth-logo{display:block;width:96px;height:96px;margin:0 auto var(--s-5);object-fit:contain;filter:drop-shadow(0 0 4px rgba(79,209,228,0.8)) drop-shadow(0 0 14px rgba(79,209,228,0.4));will-change:transform}
@keyframes authLogoFloat{0%{transform:translateY(-3px) rotate(-2deg)}100%{transform:translateY(3px) rotate(2deg)}}
.auth-title{margin:0 0 var(--s-2);text-align:center;font-family:var(--font-display);font-size:clamp(1.6rem,2.6vw,1.9rem);font-weight:600;letter-spacing:-0.02em;color:var(--ivory)}
.auth-lead{text-align:center;color:var(--ivory-muted);font-size:0.95rem;margin:0 auto var(--s-6);max-width:320px;line-height:1.55}
.auth-form{display:grid;gap:var(--s-4)}
.auth-form label{display:block;font-size:var(--fs-micro);font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--ivory-faint);margin-bottom:var(--s-2)}
.auth-actions{display:flex;flex-direction:column;gap:var(--s-3);margin-top:var(--s-3)}
.auth-actions .btn{width:100%}
.auth-footer{margin-top:var(--s-5);text-align:center;font-size:var(--fs-small);color:var(--ivory-muted)}
.auth-footer a{color:var(--gold-soft)}
.auth-footer a:hover{color:var(--gold)}
@media (max-width:540px){.auth-shell{margin:var(--s-5) auto}.auth-card{padding:var(--s-6) var(--s-5)}.auth-logo{width:80px;height:80px}}
@media (prefers-reduced-motion: reduce){.auth-logo{animation:none}}
