:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: var(--tg-theme-bg-color, #0b1020); color: var(--tg-theme-text-color, #f7f9ff); }
* { box-sizing: border-box; }
body { min-height: 100vh; margin: 0; padding: max(18px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom)); background: radial-gradient(circle at 15% 0%, rgba(58, 139, 255, .22), transparent 24rem), var(--tg-theme-bg-color, #0b1020); }
.shell { width: min(100%, 520px); margin: 0 auto; }
header { display: flex; align-items: center; gap: 14px; margin: 10px 2px 22px; }
.mark { width: 52px; height: 52px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 17px; background: linear-gradient(145deg, #55a8ff, #6256ff); color: white; font-size: 26px; font-weight: 850; box-shadow: 0 10px 35px rgba(80, 103, 255, .28); }
h1, h2, p { margin: 0; } h1 { font-size: 28px; letter-spacing: -.03em; }
header p, .hint, .blocked p, .success p { color: var(--tg-theme-hint-color, #aebbd6); line-height: 1.5; } header p { margin-top: 2px; font-size: 14px; }
.stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 14px; }
.stats div, form, .success, .blocked { border: 1px solid rgba(255,255,255,.1); border-radius: 22px; background: var(--tg-theme-secondary-bg-color, rgba(22, 31, 55, .9)); }
.stats div { padding: 15px 17px; } .stats strong { display: block; font-size: 24px; } .stats span { color: var(--tg-theme-hint-color, #aebbd6); font-size: 13px; }
form, .success, .blocked { padding: 22px; } label { display: block; margin: 0 0 8px; font-size: 14px; font-weight: 700; } label:not(:first-child) { margin-top: 18px; }
input { width: 100%; min-height: 51px; padding: 0 15px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; outline: none; background: rgba(5, 10, 24, .48); color: var(--tg-theme-text-color, #fff); font: inherit; font-size: 17px; }
input:focus { border-color: var(--tg-theme-button-color, #4f8cff); box-shadow: 0 0 0 3px rgba(79,140,255,.16); }
.hint { margin: 13px 2px 18px; font-size: 13px; }
button { width: 100%; min-height: 50px; border: 0; border-radius: 14px; cursor: pointer; background: var(--tg-theme-button-color, #4f8cff); color: var(--tg-theme-button-text-color, white); font: inherit; font-weight: 750; font-size: 15px; }
button:disabled { opacity: .55; cursor: wait; } button.secondary { margin-top: 9px; background: transparent; color: var(--tg-theme-link-color, #70a7ff); }
.notice { margin-bottom: 12px; padding: 12px 14px; border-radius: 14px; background: rgba(255, 91, 105, .13); color: #ff9ca5; line-height: 1.4; font-size: 14px; }
.success, .blocked { text-align: center; } .success h2, .blocked h2 { margin-bottom: 8px; } .success p, .blocked p { margin-bottom: 20px; }
.check { width: 58px; height: 58px; margin: 0 auto 14px; display: grid; place-items: center; border-radius: 50%; background: rgba(55, 209, 137, .15); color: #67e7a7; font-size: 30px; font-weight: 900; }
[hidden] { display: none !important; }
