.auth-page { min-height: 100vh; background: radial-gradient(circle at 18% 12%, rgba(219, 151, 68, .16), transparent 32rem), var(--paper); }
.auth-shell { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.auth-card { width: min(100%, 430px); padding: clamp(30px, 6vw, 52px); background: rgba(255, 253, 249, .94); border: 1px solid var(--line); border-radius: 28px; box-shadow: 0 24px 70px rgba(55, 45, 30, .13); }
.auth-mark { width: 58px; height: 58px; display: grid; place-items: center; margin-bottom: 28px; color: var(--accent); background: rgba(239, 109, 115, .12); border-radius: 18px; }
.auth-mark svg { width: 34px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.auth-card h1 { margin: 8px 0 12px; font-size: clamp(28px, 6vw, 38px); line-height: 1.08; letter-spacing: -.04em; }
.auth-intro, .auth-footnote { color: var(--ink-soft); line-height: 1.6; }
.auth-error { margin: 22px 0 0; padding: 13px 15px; color: #852f26; background: #fff0ed; border: 1px solid #efc7c0; border-radius: 12px; font-size: 14px; line-height: 1.45; }
.auth-form { display: grid; gap: 18px; margin-top: 28px; }
.auth-form label { display: grid; gap: 8px; color: var(--ink-soft); font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.auth-form input { width: 100%; min-height: 50px; padding: 0 15px; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 12px; font: inherit; font-size: 16px; text-transform: none; letter-spacing: normal; }
.auth-form input:focus { outline: 3px solid rgba(201, 120, 42, .18); border-color: var(--accent); }
.auth-form .button { width: 100%; margin-top: 4px; }
.auth-footnote { margin: 24px 0 0; font-size: 12px; text-align: center; }
.logout-form { margin: 0; }
