*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{font-family:"Helvetica Neue",Helvetica,Arial,"Segoe UI",Roboto,Ubuntu,sans-serif;font-size:16px;line-height:1.5;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 50% 0%,#4a080d 0%,#170305 35%,#000 75%)}
.no-js-warn{color:#fff;padding:40px;text-align:center;font-family:Arial,sans-serif}
#app{min-height:100vh;width:100%;display:flex;align-items:flex-start;justify-content:center;padding:0 16px 80px;position:relative}
.wrap{width:100%;max-width:440px;padding-top:110px;position:relative}
.hd{font-size:2rem;font-weight:700;line-height:1.2;letter-spacing:-0.3px;color:#fff;margin:0 0 10px;text-align:left}
.sd{font-size:1rem;font-weight:400;line-height:1.5;color:rgba(255,255,255,0.7);margin:0 0 32px;text-align:left}
.err{display:none;margin:0 0 22px;padding:10px 14px;border-radius:3px;background:rgba(229,9,20,0.16);border-left:3px solid #e50914;color:rgba(255,255,255,0.9);font-size:0.875rem;line-height:1.4}
.err.v{display:block}
.loader{display:flex;align-items:center;gap:14px;margin:16px 0 24px;color:rgba(255,255,255,0.75);font-size:0.95rem}
.spin{display:inline-block;width:22px;height:22px;border:2px solid rgba(255,255,255,0.18);border-top-color:#e50914;border-radius:50%;animation:sp 0.75s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.cap{display:flex;justify-content:flex-start;align-items:center;margin:0 0 24px;min-height:78px}
.cap iframe,.cap .g-recaptcha{transform-origin:left top}
.btn{display:block;width:100%;min-height:48px;border:0;border-radius:4px;background:#e50914;color:#fff;font-family:inherit;font-size:1rem;font-weight:700;letter-spacing:0.2px;cursor:pointer;transition:background 0.18s ease,filter 0.18s ease,transform 0.08s ease;-webkit-tap-highlight-color:transparent;user-select:none;padding:0 16px}
.btn:hover{background:#f40612}
.btn:active{background:#c11119;transform:translateY(1px)}
.btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
.btn[disabled],.btn.ld{background:#6a171b;color:rgba(255,255,255,0.6);cursor:not-allowed;pointer-events:none;filter:none}
.btn .bs{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,0.25);border-top-color:#fff;border-radius:50%;vertical-align:-3px;margin-right:10px;animation:sp 0.7s linear infinite}
.hl{margin-top:20px;font-size:0.8125rem;color:rgba(255,255,255,0.5);text-align:left;line-height:1.5}
form{display:block}
.hidden{display:none !important}
@media (max-width:740px){#app{padding:0 16px 60px}.wrap{padding-top:80px;max-width:100%}.hd{font-size:1.85rem}}
@media (max-width:440px){.hd{font-size:1.65rem}.sd{font-size:0.95rem}.cap{transform:scale(0.92);transform-origin:left top}}
@media (max-width:359px){.cap{transform:scale(0.86)}.hd{font-size:1.5rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}}
