*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#fff;color:#151515}body{font-family:Arial,Helvetica,sans-serif}a{color:inherit}button,input{font:inherit}
.entry-page{background:#101011;color:#fff}
.entry,.signup{position:relative;isolation:isolate;min-height:100svh;display:grid;place-items:center;overflow:hidden;padding:24px;background:radial-gradient(ellipse at 50% 65%,#1a1a1c 0%,#121213 65%,#050505 100%)}
.entry:before,.signup:before{content:'';position:absolute;inset:clamp(16px,2.2vw,32px);border-radius:20px;border:1px solid #ffffff06;box-shadow:inset 0 0 75px 24px #000b,0 0 45px 24px #000e;filter:blur(3px);pointer-events:none;z-index:0}
.scene{position:relative;z-index:1;width:min(1100px,100%);height:min(650px,85svh)}
.emblem{position:absolute;width:min(800px,86%);left:50%;top:44%;transform:translate(-50%,-50%);display:block;z-index:2}
.emblem{transform-origin:center}
.emblem:focus-visible{outline:1px solid #fff8;outline-offset:18px;border-radius:2px}
.is-entering{overflow:hidden;pointer-events:none}
.is-entering .emblem{opacity:0}
.is-entering .logo-shadow{visibility:hidden}
.phone-morph{position:fixed;inset:0;width:100%;height:100%;z-index:30;pointer-events:none}
.logo-float{position:relative;display:block;animation:logo-levitate 5s ease-in-out infinite;filter:drop-shadow(0 0 4px #fffffff0) drop-shadow(0 0 17px #ffffffb3) drop-shadow(0 0 42px #ffffffa6) drop-shadow(0 0 72px #ffffff59);transition:filter .22s ease-out}
.logo-source{display:block;width:100%;height:auto}
.logo-flex{position:absolute;left:0;top:-10px;width:100%;opacity:0;pointer-events:none}
@media(hover:hover) and (pointer:fine){.emblem:hover .logo-float{filter:drop-shadow(0 0 4px #fffffff0) drop-shadow(0 0 17px #ffffffb3) drop-shadow(0 0 42px #ffffffa6) drop-shadow(0 0 72px #ffffff59) brightness(.85)}}
.emblem:focus-visible .logo-float{filter:drop-shadow(0 0 4px #fffffff0) drop-shadow(0 0 17px #ffffffb3) drop-shadow(0 0 42px #ffffffa6) drop-shadow(0 0 72px #ffffff59)}
@media(hover:none),(pointer:coarse),(any-pointer:coarse),(max-width:600px){.emblem:hover .logo-float{filter:drop-shadow(0 0 4px #fffffff0) drop-shadow(0 0 17px #ffffffb3) drop-shadow(0 0 42px #ffffffa6) drop-shadow(0 0 72px #ffffff59)}}
.logo-shadow{position:absolute;left:50%;top:calc(44% + clamp(68px,11vw,120px));width:min(560px,64%);height:clamp(15px,2.4vw,27px);border-radius:50%;background:#000;filter:blur(10px);transform:translateX(-50%);animation:shadow-breathe 5s ease-in-out infinite;pointer-events:none}
@keyframes logo-levitate{0%,100%{transform:translateY(6px)}50%{transform:translateY(-7px)}}
@keyframes shadow-breathe{0%,100%{scale:1;opacity:.72}50%{scale:.9;opacity:.46}}
@media(max-width:600px){.entry{padding:8px}.scene{height:min(640px,90svh)}.emblem{width:90%}.logo-shadow{width:70%;filter:blur(7px)}.entry:before,.signup:before{border-radius:14px;box-shadow:inset 0 0 45px 14px #000b,0 0 26px 12px #000e}}
@media(prefers-reduced-motion:reduce){.logo-float,.logo-shadow,.is-entering .emblem{animation:none}.logo-float{transition:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.signup-page{background:#101011;color:#fff;min-height:100svh;color-scheme:light}
.signup{min-height:100svh;display:grid;place-items:center;padding:20px 16px}
.phone-stage{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;gap:12px;animation:phone-reveal .35s ease-out both}
.morph-target{position:fixed;inset:0;z-index:21;visibility:hidden;pointer-events:none;background:transparent}
.morph-target:before{display:none}
.morph-target .phone-stage,.signup-revealed .phone-stage{animation:none}
.phone-shell{width:min(390px,calc(100vw - 32px),calc((100svh - 72px)*.5008));aspect-ratio:600/1198;position:relative;container-type:inline-size;filter:drop-shadow(0 18px 20px #00000015)}
.phone-shell:before{content:"";position:absolute;inset:2.1% 5.9% 2.3%;border-radius:12% / 5.5%;background:#141414;z-index:1;pointer-events:none}
.phone-decal{position:absolute;inset:0;width:100%;height:100%;border-radius:15% / 7.5%;display:block}
.phone-screen{position:absolute;inset:2.4% 5.9% 2.6%;border-radius:12% / 5.5%;overflow:hidden;background:#141414;color:#111;display:flex;flex-direction:column;font-family:Arial,Helvetica,sans-serif;z-index:2}
.phone-status{height:10cqw;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 5cqw;font-size:3.6cqw;font-weight:600;position:relative;background:#141414;color:#fff}
.island{position:absolute;width:22cqw;height:6.4cqw;background:#080808;box-shadow:0 0 0 1px #303030;border-radius:99px;left:50%;top:2.3cqw;transform:translateX(-50%)}
.island:after{content:'';position:absolute;right:3cqw;top:2.5cqw;width:1.5cqw;height:1.5cqw;border-radius:50%;background:#123347;box-shadow:0 0 2px #28526c}
.status-icons{display:flex;align-items:center;gap:1.5cqw}.status-icons svg{display:block;width:4.4cqw;height:3.5cqw;flex:none}.battery{width:5cqw;height:2.5cqw;border:1px solid #777;border-radius:.5cqw;position:relative;background:#111;box-shadow:inset 0 0 0 1px #141414;flex:none}.battery:after{content:'';position:absolute;right:-.6cqw;top:.65cqw;width:.35cqw;height:.8cqw;background:#777}
.phone-clock{font-variant-numeric:tabular-nums}
.message-header{position:relative;height:11cqw;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 4cqw;background:#141414;border-bottom:1px solid #ffffff1a}
.message-header img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:47.79cqw;filter:none;display:block}.phone-back{font-size:9cqw;color:#69b7ff;text-decoration:none;line-height:1;width:6cqw;padding-bottom:1cqw}.header-spacer{width:6cqw}
.chat-body{position:relative;display:flex;flex:1;min-height:0;overflow:hidden;background:#1b1c23}
.chat-body:before{content:"";position:absolute;inset:-12px;background:url('assets/chat-wallpaper-soft-v2.jpeg') center / cover no-repeat;filter:blur(8px);pointer-events:none}
.chat-wallpaper{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.message-scroll{position:relative;flex:1;min-height:0;overflow-y:auto;padding:4cqw 3cqw 3cqw;scrollbar-width:thin;scrollbar-color:#ccc transparent;background:linear-gradient(#ffffff20,transparent 35%,#00000012)}
.message-time{text-align:center;font-size:2.5cqw;color:#333;line-height:1.5;width:max-content;max-width:100%;margin:0 auto 4cqw;padding:.8cqw 2cqw;border-radius:2cqw;background:#ffffffcf}
.messages{display:flex;flex-direction:column;gap:2.2cqw}
.text-bubble{font-size:3.55cqw;line-height:1.35;max-width:88%;padding:2.4cqw 3cqw;border-radius:4cqw;margin:0;overflow-wrap:anywhere;white-space:pre-wrap;animation:bubble-reveal .2s ease-out both}
.received{align-self:flex-start;background:#e5e5ead9;color:#111;border-bottom-left-radius:1cqw;box-shadow:0 1px 4px #0002}
.sent{align-self:flex-end;background:#238f39dc;color:#fff;border-bottom-right-radius:1cqw;box-shadow:0 1px 4px #0002}
.typing-bubble{display:flex;align-items:center;gap:1.1cqw;width:max-content;padding:3.2cqw 3.4cqw;min-height:8cqw}.typing-bubble span{width:1.7cqw;height:1.7cqw;background:#888;border-radius:50%;animation:typing-dot .9s ease-in-out infinite}.typing-bubble span:nth-child(2){animation-delay:.12s}.typing-bubble span:nth-child(3){animation-delay:.24s}@keyframes typing-dot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-1.1cqw);opacity:1}}
.reply-options{display:flex;gap:2cqw;justify-content:flex-end;padding-top:3cqw}.reply-options:empty{display:none}.reply-options button{border:1px solid #ccc;border-radius:99px;background:#fff;font-size:3.4cqw;padding:2cqw 5cqw;color:#238b38;cursor:pointer}.reply-options button:hover{background:#e9f5eb}
.message-composer{display:flex;align-items:center;gap:2cqw;padding:2cqw 3cqw;background:#141414;flex-shrink:0}
.composer-plus{color:#bbb;font-size:7cqw;width:5cqw;text-align:center;line-height:1}.composer-field{display:flex;align-items:center;flex:1;min-width:0;border:1px solid #555;border-radius:8cqw;padding:1cqw;background:#232323}
.composer-input{flex:1;min-width:0;height:8cqw;overflow:hidden;display:flex;align-items:center}.composer-field input{width:calc(100% / var(--composer-scale,.85));min-width:0;flex:none;transform:scale(var(--composer-scale,.85));transform-origin:left center;border:0;outline:0;padding:1.5cqw 2cqw;font-size:16px;background:transparent;color:#fff}.composer-field:focus-within{border-color:#999;box-shadow:0 0 0 1px #bbb}.composer-field input::placeholder{color:#969696}
.send-message{display:grid;place-items:center;line-height:0;border:0;background:#35b84d;border-radius:50%;width:6cqw;height:6cqw;padding:1cqw;flex-shrink:0;cursor:pointer;color:#fff}.send-message svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.send-message:disabled{background:#bbb;cursor:default}
.home-indicator{height:7cqw;background:#141414;flex-shrink:0;position:relative}.home-indicator:after{content:'';width:31cqw;height:.9cqw;border-radius:10px;background:#ddd;position:absolute;left:50%;bottom:2.8cqw;transform:translateX(-50%)}
.status-icons svg{fill:currentColor}.status-icons .battery{background:transparent;border-color:#aaa;box-shadow:inset 0 0 0 1px #141414}
.battery:before{content:"";position:absolute;left:1px;top:1px;bottom:1px;width:calc((100% - 2px) * var(--battery-level,.85));border-radius:1px;background:#fff}
.phone-preview-note{font-size:12.1px;color:#888;margin:0;text-align:center}.phone-screen button:focus-visible,.phone-back:focus-visible{outline:2px solid #2787d0;outline-offset:2px}
.site-audio-toggle{position:fixed;right:18px;bottom:18px;z-index:40;width:24px;height:24px;padding:6px;border:0;border-radius:0;background:transparent;color:#535353;cursor:pointer}.site-audio-toggle svg{display:block;width:100%;height:100%}.site-audio-toggle .audio-waves{display:none}.site-audio-toggle[data-playing=true] .audio-waves{display:block}.site-audio-toggle[data-playing=true] .audio-off{display:none}.site-audio-toggle:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:600px){.site-audio-toggle{position:absolute;left:var(--mute-left,auto);top:var(--mute-top,auto);bottom:var(--mute-bottom,44px);width:38px;height:38px;padding:10px;border:1px solid #ffffff30;border-radius:50%;background:#141414cc;color:#eee}.phone-preview-note{max-width:calc(100vw - 32px);padding-inline:0;white-space:nowrap;align-self:stretch;text-align:left;font-size:clamp(7.26px,2.178vw,10.89px)}}
@keyframes phone-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes bubble-reveal{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.phone-stage,.text-bubble,.typing-bubble span{animation:none}}

.mute-position-guide{position:absolute;inset:0;visibility:hidden;pointer-events:none;z-index:-1}.mute-position-guide .phone-stage{animation:none}
