.site-page-auth { background: #08111f; }
.auth-page { min-height: calc(100vh - 78px); display: grid; place-items: center; padding: clamp(3rem, 8vw, 7rem) 1rem; background: #091321; color: #f7f4e9; }
.auth-card { width: min(100%, 440px); padding: clamp(1.7rem, 5vw, 3rem); border: 1px solid rgba(236,239,228,.2); background: #0e1c2d; box-shadow: 18px 18px 0 rgba(242,200,107,.13); }
.auth-kicker { margin: 0 0 1rem; color: #77d2c2; font-size: .72rem; font-weight: 800; letter-spacing: .2em; }
.auth-card h1 { margin: 0; font-family: Georgia, "Noto Serif SC", serif; font-size: clamp(2.2rem, 7vw, 3.3rem); font-weight: 500; line-height: 1; }
.auth-lead { margin: 1rem 0 2rem; color: #aab4bf; line-height: 1.7; }
.auth-card label { display: block; margin: 1.15rem 0 .4rem; color: #d7ddd8; font-size: .86rem; font-weight: 700; }
.auth-card input { width: 100%; border: 1px solid rgba(236,239,228,.24); padding: .85rem .9rem; background: #091321; color: #f7f4e9; }
.auth-card input:focus { border-color: #f2c86b; outline: 2px solid rgba(242,200,107,.25); outline-offset: 1px; }
.auth-primary { width: 100%; min-height: 50px; margin-top: 1.8rem; padding: .8rem 1rem; border: 1px solid #f2c86b; background: #f2c86b; color: #08111f; font-weight: 800; cursor: pointer; }
.auth-primary:hover { background: #ffe29b; }
.auth-primary:disabled { cursor: wait; opacity: .55; }
.auth-status { min-height: 1.3em; margin: .8rem 0 0; color: #f2a9a9; font-size: .82rem; }
.auth-status[data-state="success"] { color: #77d2c2; }
.auth-back { display: inline-block; margin-top: 1.35rem; color: #aab4bf; font-size: .82rem; text-decoration: none; }
.auth-back:hover { color: #f2c86b; }
