/* Layout only: typography, palette and controls come from the home page theme. */
body{min-height:100dvh}
.access-shell{width:min(480px,100%);margin:clamp(32px,6vh,72px) auto 50px;text-align:center}
.mystery-mark{display:grid;place-items:center;margin:auto;width:104px;height:104px;border:1px solid #ffffff30;border-radius:24px;background:#1d2130;color:var(--acid);font:600 80px/1 "Space Grotesk",sans-serif;transform:rotate(-7deg)}
.access-shell .eyebrow{margin-top:30px;color:var(--acid)}
.access-shell h1{font-size:clamp(32px,7vw,52px);margin:14px 0 20px}
.intro{color:var(--muted);margin-bottom:30px}
.access-shell form{text-align:left}
.access-shell label{display:block;font-weight:500;font-size:14px;margin-bottom:10px}
.access-shell input{min-height:52px}
.access-shell .primary{width:100%;margin-top:14px}
.access-shell input:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--acid);outline-offset:4px}
#access-message{min-height:24px;color:var(--paper);font-size:14px}
.back{display:inline-block;color:var(--muted);text-decoration:none;margin-top:15px}
.back:hover{color:var(--paper);text-decoration:underline}
[hidden]{display:none!important}
@media(max-width:380px){.access-shell h1{letter-spacing:-1px}.shell>header{gap:12px}.shell>header .badge{font-size:10px}}
