.welcome-open{background:var(--bg)}
.welcome-screen{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:48px 24px;padding-top:max(48px,env(safe-area-inset-top));padding-bottom:max(40px,env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 40%,#39639310,transparent 65%)}
.welcome-content{width:100%;max-width:360px;text-align:center;padding-bottom:16px;animation:welcome-in .3s ease-out}
.welcome-logo{position:relative;display:grid;place-items:center;width:84px;height:84px;margin:0 auto 28px;border-radius:26px;background:linear-gradient(145deg,#ff7086,#f33d64);box-shadow:0 14px 42px #f33d6426,inset 0 1px 0 #ffffff40;color:#fff;font-size:34px;font-weight:900;letter-spacing:-3px;padding-right:3px}
.welcome-logo span{position:absolute;right:17px;top:15px;width:6px;height:6px;background:#fff;border-radius:50%}
.welcome-content h1{font-size:32px;line-height:1.25;letter-spacing:-1.2px;font-weight:800}
.welcome-tagline{color:var(--muted);font-size:14px;margin:10px auto 0;line-height:1.8;max-width:310px}
.welcome-actions{margin-top:48px}
.welcome-telegram,.welcome-verify{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:57px;padding:15px 16px;border:1px solid #ffffff10;border-radius:17px;background:linear-gradient(115deg,#38a6ed,#2189d3);color:white;font-size:14px;font-weight:700;box-shadow:0 9px 26px #2189d31b;transition:background .15s,transform .15s}
.welcome-telegram:hover{background:linear-gradient(115deg,#48b1f2,#2899e4)}
.welcome-telegram:active,.welcome-verify:active{transform:scale(.985)}
.welcome-telegram svg{width:22px;height:22px}
.welcome-guest{display:block;min-height:44px;margin:13px auto 0;padding:10px 12px;color:var(--muted);font-size:12px;background:none;border:0}
.welcome-guest:hover{color:var(--text)}
.welcome-content button:disabled{opacity:.6;cursor:wait}
.welcome-content .auth-status{font-size:12px;text-align:left;line-height:1.8;margin:18px 0 0}
.welcome-back{display:flex;align-items:center;gap:8px;padding:10px 0;margin:0 0 24px;color:var(--muted);font-size:12px;min-height:44px}
.welcome-code .welcome-logo{width:60px;height:60px;border-radius:20px;font-size:25px;letter-spacing:-2px;margin-bottom:21px}
.welcome-code .welcome-logo span{right:12px;top:11px;width:5px;height:5px}
.welcome-code .welcome-actions{margin-top:25px}
.welcome-code h1{font-size:29px}
.welcome-code .welcome-tagline{font-size:13px}
.welcome-code .open-bot{min-height:48px;font-size:13px;border-radius:14px;box-shadow:none}
.welcome-code-label{display:block;text-align:left;font-size:12px;margin:24px 0 10px;color:var(--muted)}
.welcome-code input{display:block;width:100%;min-width:0;height:65px;padding:12px 10px;font-size:29px;letter-spacing:8px;font-weight:650;text-align:center;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--text);font-variant-numeric:tabular-nums}
.welcome-code input::placeholder{color:var(--muted);opacity:.5}
.welcome-verify{min-height:49px;margin-top:14px;border-radius:14px;background:var(--text);color:var(--bg);box-shadow:none;font-size:13px}
.welcome-verify svg{width:18px;height:18px}
.welcome-code-note{font-size:10px;line-height:1.85;color:var(--muted);text-align:left;margin-top:16px}
.welcome-code .welcome-guest{font-size:11px;margin-top:9px}
body.light .welcome-screen{background:radial-gradient(ellipse at 50% 40%,#2189d307,transparent 65%)}
@media(max-width:360px){.welcome-screen{padding-left:23px;padding-right:23px}.welcome-content h1{font-size:29px}.welcome-telegram{font-size:13px;gap:10px}.welcome-code input{font-size:26px;letter-spacing:6px}}
@media(max-height:600px){.welcome-screen{padding-top:28px;padding-bottom:28px}.welcome-content{padding-bottom:0}.welcome-logo{width:66px;height:66px;font-size:28px;border-radius:22px;margin-bottom:20px}.welcome-actions{margin-top:28px}.welcome-code .welcome-back{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.welcome-content{animation:none}.welcome-telegram,.welcome-verify{transition:none}}
@keyframes welcome-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
