.mobile-welcome { display:none; }
html.mobile-landing, .mobile-landing body { margin:0; min-height:100%; background:#050609; overflow-x:hidden; scroll-behavior:auto; }
.mobile-landing body > :not(.mobile-welcome) { display:none !important; }
.mobile-landing .mobile-welcome { position:relative; isolation:isolate; display:flex; flex-direction:column; align-items:center; justify-content:space-between; min-height:100svh; box-sizing:border-box; padding: max(24px, env(safe-area-inset-top)) 24px max(22px, env(safe-area-inset-bottom)); color:#f4f4f5; text-align:center; font-family:'DM Sans',sans-serif; background:radial-gradient(ellipse at 50% 44%, #ffe48709, transparent 48%),#050609; }
.mobile-welcome::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:.45; background-image:radial-gradient(circle,#b8c1d0 1px,transparent 1.5px),radial-gradient(circle,#8894ab .7px,transparent 1px); background-size:113px 137px,79px 97px; background-position:19px 31px,43px 67px; }
.mobile-top-space { height:38px; }
.mobile-hop-logo { display:block; width:64px; height:64px; margin:0 auto 32px; }
.mobile-send svg { display:block; width:20px; height:20px; flex:none; overflow:visible; }
.mobile-welcome-copy { width:100%; max-width:540px; padding:44px 0 24px; }
.mobile-welcome h1 { margin:0 0 16px; font-size:clamp(46px,11.5vw,76px); line-height:1.04; letter-spacing:-.065em; font-weight:700; color:#ffe68d; white-space:nowrap; text-shadow:0 12px 55px #ffe48718; }
.mobile-subtitle { font-size:clamp(18px,4.5vw,24px); margin:0; letter-spacing:-.035em; }
.mobile-note { color:#9c9ca6; font-size:15px; line-height:1.65; margin:32px 0 24px; }
.mobile-send { display:inline-flex; align-items:center; justify-content:center; gap:11px; min-height:52px; padding:14px 26px; border:0; border-radius:30px; background:#f3f0e6; color:#111311; font:600 15px 'DM Sans',sans-serif; cursor:pointer; }
.mobile-send:focus-visible { outline:2px solid #ffe68d; outline-offset:5px; }
.mobile-share-help { font-size:12px; line-height:1.6; color:#92929e; margin:16px auto 0; max-width:245px; }
.mobile-share-status { font-size:13px; line-height:1.5; min-height:20px; margin:12px 0 0; color:#ddd; }
.mobile-bottom { margin:0; font-size:11px; color:#7d7d89; letter-spacing:.04em; }
.mobile-bottom span { padding:0 6px; }

#mobile-copy-fallback { margin:16px auto; max-width:300px; font-size:12px; color:#aaa; }
#mobile-copy-fallback input { box-sizing:border-box; margin-top:8px; padding:12px; width:100%; border:1px solid #555; border-radius:8px; background:#1b1b1f; color:white; font-size:16px; }
@media (max-height:550px) { .mobile-welcome-copy {padding:24px 0;} .mobile-hop-logo {width:44px; height:44px; margin-bottom:20px;} .mobile-note {margin:16px 0;} }
