.auth-locked { display: none; }
.auth-gate { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: radial-gradient(circle at top, #e8eee9, var(--paper) 55%); }
.auth-gate[hidden] { display: none; }
.auth-card { width: min(440px, 100%); background: var(--card); border: 1px solid var(--line); border-radius: 20px; box-shadow: var(--shadow); padding: 32px; display: grid; gap: 14px; }
.auth-card h1 { font-size: 34px; }
.auth-mark { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 15px; background: var(--green); color: white; font: 26px Georgia, serif; }
.auth-card label { font-size: 12px; font-weight: 800; color: var(--muted); }
.auth-card input { border: 1px solid var(--line); background: white; border-radius: 9px; padding: 11px 12px; color: var(--ink); font: inherit; }
.auth-card small { color: var(--muted); text-align: center; }
.auth-error { min-height: 20px; margin: 0; color: #994f47; font-size: 13px; }
.storage button { display: block; border: 0; background: transparent; color: #b9c8c1; padding: 8px 0 0; cursor: pointer; }
