.gate{background:radial-gradient(120% 120% at 50% 0%, #1c1726, var(--ink-deep) 70%);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.gate-card{text-align:center;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:360px;display:flex}.moon-mini{background:radial-gradient(circle at 36% 30%, #d9cffb, var(--lavender) 52%, var(--lavender-deep) 100%);border-radius:50%;width:64px;height:64px;box-shadow:0 0 40px #b3a4ec66,inset -6px -6px 14px #8d7fd48c}.gate h1{font-family:var(--font-display), sans-serif;letter-spacing:-.02em;margin:4px 0 0;font-size:26px;font-weight:800}.gate p{color:var(--cream-dim);max-width:26ch;margin:0;font-size:14px}.gate form{flex-direction:column;gap:12px;width:100%;margin-top:6px;display:flex}.gate input[type=password]{background:var(--surface);width:100%;color:var(--cream);text-align:center;letter-spacing:.05em;border:1px solid #b3a4ec38;border-radius:14px;padding:15px 18px;font-family:inherit;font-size:16px}.gate input[type=password]::placeholder{color:var(--muted)}.gate input[type=password]:focus{outline:2px solid var(--lavender);outline-offset:1px}.gate label.remember{color:var(--cream-dim);justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.err{color:#f2a4b4;margin:0;font-size:13px;font-weight:600}.gate button[type=submit]{cursor:pointer;font-family:var(--font-display), sans-serif;letter-spacing:.01em;color:#2a2030;background:linear-gradient(100deg, var(--honey), var(--rose));border:none;border-radius:14px;padding:15px 18px;font-size:16px;font-weight:800;transition:opacity .15s;box-shadow:0 14px 30px -16px #f2a4b4b3}.gate button[type=submit]:focus{outline:2px solid var(--honey);outline-offset:2px}.gate button[type=submit]:disabled{opacity:.6;cursor:not-allowed}
