:root{color-scheme:dark;--ink:#eeeae4;--muted:#b6b1ad;--red:#c94339;--line:#393237;--hero:"Cormorant Garamond",Garamond,Georgia,serif}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;background:#0e0d10;color:var(--ink);font:16px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
[hidden]{display:none!important}
.access-shell{width:min(100% - 32px,420px);margin:0 auto;padding:32px 0 max(24px,env(safe-area-inset-bottom))}
.brand{display:block;max-width:100%;width:240px;height:auto;margin:0 auto 24px}
.access-card{padding:22px 20px;background:#171418;border:1px solid var(--line);border-radius:12px}
.eyebrow{margin:0 0 9px;color:#d59b96;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
h1{margin:0 0 10px;font:700 clamp(30px,8vw,38px)/1.05 var(--hero);letter-spacing:-.025em}
#access-copy{margin:0 0 19px;color:var(--muted);font-size:14px}
form{display:grid;gap:7px}
.sign-in-methods{display:flex;gap:8px;margin:0 0 15px}
.sign-in-methods button{width:50%;background:transparent;border-color:var(--line);color:var(--muted)}
.sign-in-methods button[aria-pressed="true"]{background:#3a1c20;border-color:#d05b53;color:var(--ink)}
label{font-size:12px;font-weight:650}
input{width:100%;min-height:46px;border:1px solid #51474e;border-radius:7px;background:#0e0d10;color:var(--ink);font:inherit;font-size:16px;padding:10px 12px;margin:0 0 8px}
input:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #f18176;outline-offset:3px}
button{width:100%;min-height:46px;border:1px solid #d05b53;border-radius:7px;background:#ae332b;color:#fff3ed;padding:10px 13px;font:650 15px/1.3 system-ui;cursor:pointer;touch-action:manipulation}
button:disabled{opacity:.55;cursor:default}
.secondary{margin-top:10px;background:transparent;border-color:var(--line);font-size:13px;color:var(--muted)}
#access-status{margin:13px 0 0;color:#f2b4ac;font-size:13px;overflow-wrap:anywhere}
#access-status:empty{display:none}
.fine-print{margin:15px 0 0;color:#b8b2b7;font-size:11px;line-height:1.5}
details{margin-top:15px;font-size:12px;color:var(--muted)}
summary{min-height:30px;cursor:pointer}
details p{margin:4px 0 0}
.ordinary-login{display:block;text-align:center;margin:17px 0;color:var(--muted);font-size:12px;text-underline-offset:3px;min-height:32px}
.rehearsal{text-align:center;font-size:10px;color:#d6b883;margin:12px 0}
@media(max-width:360px){.access-shell{width:calc(100% - 24px);padding-top:24px}.access-card{padding:19px 16px}.brand{width:216px;margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
