.access-page{min-height:100vh;background:radial-gradient(circle at 50% 15%,rgba(216,173,85,.11),transparent 35%),var(--bg)}
.access-page main{min-height:calc(100vh - 78px);display:grid;place-items:center}
.access-shell{width:100%;padding:50px 0}
.access-card{width:min(480px,100%);margin:auto;padding:34px;border:1px solid #403725;border-radius:26px;background:linear-gradient(150deg,#18150f,#101010);box-shadow:0 30px 90px rgba(0,0,0,.35)}
.access-card>img{width:68px;height:68px}
.access-card h1{font-size:34px;margin:2px 0 8px}
.access-card>p:not(.eyebrow){color:var(--muted);font-size:14px}
.telegram-access{display:flex;margin-top:22px;background:#229ed9;color:#fff;border-color:#229ed9;box-shadow:0 12px 30px rgba(34,158,217,.22)}
.telegram-access:hover{background:#1b8fc6}
.return-hint{text-align:center;margin:10px 0 0!important;font-size:12px!important;color:var(--muted)!important}
.access-card form{display:grid;gap:10px;margin-top:18px}
.access-card label{font-size:12px;color:#c7c0b4}
.access-card input{width:100%;direction:ltr;text-align:center;unicode-bidi:plaintext;letter-spacing:.3em;text-indent:.3em;font-size:27px;font-weight:900;font-variant-numeric:tabular-nums;color:#111!important;-webkit-text-fill-color:#111!important;caret-color:#111;background:#fff!important;border:2px solid #9b8b69;border-radius:14px;padding:14px;outline:none;box-shadow:inset 0 0 0 1px #fff}
.access-card input::placeholder{color:#777!important;-webkit-text-fill-color:#777!important;letter-spacing:0;text-indent:0;font-size:15px;font-weight:600;opacity:1}
.access-card input:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(216,173,85,.22)}
.access-card input.complete{border-color:#36a56d;box-shadow:0 0 0 4px rgba(54,165,109,.16)}
.code-help{display:block;text-align:center;color:#bcb4a7;font-size:12px;line-height:1.7}
.access-message{min-height:26px;text-align:center;margin-top:12px;font-size:13px}
.access-message.error{color:#ef8989}
.access-message.success{color:var(--green)}
.bot-link{display:block;text-align:center;color:var(--gold2);font-size:13px;margin-top:12px}
@media(max-width:800px){.access-page main{padding:0 16px}.access-shell{padding:28px 0}.access-card{padding:27px 20px}.access-card h1{font-size:29px}.access-card input{font-size:25px;letter-spacing:.24em;text-indent:.24em}}
