.welcome-overlay{z-index:1000;font-family:var(--body,system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);color:var(--ink,#2b2d42);background:#17203ab8;justify-content:center;align-items:flex-start;padding:32px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.welcome-card{background:#fff;border-radius:22px;outline:none;width:100%;max-width:640px;margin:auto;padding:28px 32px 24px;line-height:1.5;position:relative;box-shadow:0 24px 60px #00000047}.welcome-card h2{font:800 26px/1.25 var(--display,var(--body,system-ui));text-align:center;margin:6px 0 8px}.welcome-owl{justify-content:center;display:flex}.welcome-overlay .btn{min-height:44px;font:700 15px var(--body,system-ui);color:var(--ink,#2b2d42);box-shadow:inset 0 0 0 2px var(--line,#d9e2f0);cursor:pointer;background:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;text-decoration:none;display:inline-flex}.welcome-overlay .btn:hover{background:var(--sky,#e6f4ff)}.welcome-overlay .btn.primary{background:var(--blue-dark,#2457b8);color:#fff;box-shadow:none}.welcome-overlay .btn.primary:hover{background:#1c4796}.welcome-overlay .btn.big{padding:12px 22px;font-size:17px}.welcome-overlay .btn:disabled{opacity:.7;cursor:progress}.welcome-overlay .btn:focus-visible,.welcome-overlay a:focus-visible,.welcome-overlay input:focus-visible{outline:3px solid var(--orange,#ff8c42);outline-offset:2px}.aia-kicker{text-align:center;font:800 12px var(--body,system-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--blue-dark,#2457b8);margin:4px 0 0}.aia-intro{text-align:center;color:var(--muted,#5f6478);margin:0 0 14px}.ai-agreement-text{gap:10px;display:grid}.aia-sec{background:var(--sky,#e6f4ff);border-radius:14px;padding:12px 16px}.aia-sec h3,.aia-sec h4{font:800 16px/1.3 var(--body,system-ui);margin:0 0 4px}.aia-sec p{margin:0}.aia-sec a{color:var(--blue-dark,#2457b8);font-weight:700}.aia-mistakes,.aia-you{box-shadow:inset 4px 0 0 var(--orange,#ff8c42);background:#fff6e8}.aia-feedback{margin:8px 0 0!important}.aia-terms{text-align:center;margin:14px 0 6px;font-size:14px}.aia-terms a{color:var(--blue-dark,#2457b8);font-weight:700}.aia-ver{color:var(--muted,#5f6478)}.aia-tick{box-shadow:inset 0 0 0 2px var(--line,#d9e2f0);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;margin:12px 0 0;padding:12px 14px;font-weight:700;display:flex}.aia-tick.invalid{box-shadow:inset 0 0 0 2px var(--red,#d63a3a);background:#fff5f5}.aia-tick input{width:24px;height:24px;accent-color:var(--blue-dark,#2457b8);flex:none;margin:0}.aia-pin{gap:6px;margin:12px 0 0;font-size:14px;font-weight:700;display:grid}.aia-pin input{width:12ch;font:700 20px var(--body,system-ui);letter-spacing:.3em;border:2px solid var(--line,#d9e2f0);border-radius:10px;padding:8px 12px}.aia-err{min-height:24px;color:var(--red,#b42318);margin:8px 0 0;font-weight:700}.aia-acts{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.aia-small{color:var(--muted,#5f6478);text-align:center;margin:12px 0 0;font-size:13px}.aia-small a{color:inherit}.gift-overlay{align-items:center;overflow:hidden auto}.gift-card{text-align:center;max-width:520px}.gift-ico{font-size:56px;line-height:1}.gift-until{margin:4px 0 10px;font-size:17px}.gift-points{text-align:left;gap:6px;margin:0 0 14px;padding:0;list-style:none;display:grid}.gift-points li{background:var(--sky,#e6f4ff);border-radius:12px;padding:8px 12px}.gift-confetti{pointer-events:none;position:fixed;inset:0;overflow:hidden}.gift-confetti span{opacity:.9;font-size:26px;animation:4.5s ease-in 2 forwards gift-fall;position:absolute;top:-40px}@keyframes gift-fall{to{opacity:0;transform:translateY(110vh)rotate(200deg)}}@media (prefers-reduced-motion:reduce){.gift-confetti{display:none}}@media (max-width:520px){.welcome-overlay{padding:12px 8px}.welcome-card{border-radius:18px;padding:20px 16px 18px}.welcome-card h2{font-size:21px}.aia-acts .btn{flex:100%}}.plan-gift-tag{color:#9a4a10;background:#fff0e5;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:.85em;font-weight:800;display:inline-block}
