body.ak-auth { margin:0;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:#0a0a09;color:#f3efe6;font-family:var(--font-body); }
.auth-shell { width:100%;max-width:438px;padding:40px 24px;display:flex;flex-direction:column;gap:28px; }
.auth-eyebrow { font-size:11px;font-weight:800;letter-spacing:.18em;color:#d4af6a;margin-bottom:8px; }
.auth-shell h1,.auth-shell h2 { font:500 44px/1.05 var(--font-display);margin:0; }
.auth-shell form { display:flex;flex-direction:column;gap:14px; }
.auth-shell .form-group { display:flex;flex-direction:column;gap:8px; }
.auth-shell label { font-size:13px;font-weight:700;color:#a8a294; }
.auth-shell input:not([type=hidden]) { width:100%;height:54px;padding:0 16px;border-radius:14px;border:1px solid #2b2924;background:#121210;color:#f3efe6;font:inherit;font-size:16px; }
.auth-shell input:focus { outline:0;border-color:#d4af6a; }
.auth-shell button { height:56px;border-radius:16px;border:0;background:#d4af6a;color:#0a0a09;font-size:16px;font-weight:800;margin-top:14px; }
.auth-note,.auth-shell p { font-size:15px;line-height:1.55;color:#a8a294;margin:0; }
.auth-note { text-align:center;font-size:13px!important;color:#8a8478!important; }
.auth-error { padding:12px 14px;border-radius:12px;background:#e07a6a1a;border:1px solid #e07a6a4d; }
.auth-error p { font-size:13px;color:#f0b2a6; }
.waiting-container .spinner { width:64px;height:64px;border:2px solid #2b2924;border-top-color:#d4af6a;border-radius:50%;animation:ak-spin 1.1s linear infinite; }
.waiting-container .info-box { padding:16px;border:1px solid #26241f;border-radius:18px;background:#121210;color:#a8a294;font-size:14px;line-height:2; }
.cancel-button { display:grid;place-items:center;min-height:52px;border-radius:16px;border:1px solid #2b2924;color:#a8a294;font-size:15px;font-weight:700;text-decoration:none; }
@keyframes ak-spin { to { transform:rotate(360deg); } }
.ak-wait-info { border:1px solid #26241f;border-radius:18px;background:#121210; }
.ak-wait-info > div { display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid #1d1c18;font-size:14px; }
.ak-wait-info > div:last-child { border:0; }
.ak-wait-info span { color:#8a8478; }
.ak-wait-info strong { color:#f3efe6;text-align:right;font-weight:700; }

.auth-login-link { display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #3a372f;border-radius:14px;color:#d4af6a;font-size:14px;font-weight:700;text-decoration:none; }
.auth-login-link:hover { border-color:#d4af6a;background:#d4af6a0a; }
