:root{--bg:#0b0d10;--text:#f6f1e8;--muted:#f6f1e8ad;--accent:#f2b84b;--love:#ff5a5f;--font-display:"Syne", sans-serif;--font-body:"DM Sans", sans-serif;font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text);background:var(--bg)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{background:var(--bg);overflow:hidden}button,input{font:inherit}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}img,video{max-width:100%;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app{height:100dvh;color:var(--text);background:radial-gradient(120% 80% at 50% -10%, #f2b84b29, transparent 55%), radial-gradient(80% 50% at 100% 100%, #ff5a5f1f, transparent 50%), var(--bg);position:relative;overflow:hidden}.topbar{z-index:20;padding:calc(.85rem + env(safe-area-inset-top)) 1rem .75rem;pointer-events:none;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:absolute;inset:0 0 auto}.topbar>*{pointer-events:auto}.brand{align-items:center;gap:.7rem;display:flex}.brand__mark{background:radial-gradient(circle at 35% 30%,#fff4c8 0%,#f2b84b 42%,#ff5a5f 100%);border-radius:.7rem;width:2.1rem;height:2.1rem;animation:3.2s ease-in-out infinite brand-pulse;box-shadow:0 8px 24px #f2b84b47}.brand__name{font-family:var(--font-display);letter-spacing:-.03em;text-shadow:0 2px 16px #00000073;margin:0;font-size:1.45rem;font-weight:800;line-height:1}.brand__tag{color:var(--muted);margin:.2rem 0 0;font-size:.72rem}.wallet-pill{color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#0c0e128c;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .75rem;font-weight:700;transition:transform .16s,background .16s;display:inline-flex}.wallet-pill:hover{background:#14161cb8;transform:translateY(-1px)}.wallet-pill small{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:700}.wallet-pill__coin,.wallet-chip__coin,.coin-orb{background:radial-gradient(circle at 30% 30%,#fff2b0,#f2b84b 55%,#c4841a 100%);border-radius:50%;width:.95rem;height:.95rem;box-shadow:inset 0 -1px 2px #00000040}.feed{scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:none;height:100%;overflow-y:auto}.feed::-webkit-scrollbar{display:none}.feed__slide{scroll-snap-align:start;scroll-snap-stop:always;height:100dvh}.clip{width:min(100%,480px);height:100%;margin:0 auto;position:relative}.clip__stage{cursor:pointer;position:absolute;inset:0}.clip__video{object-fit:cover;background:#111;width:100%;height:100%}.clip__veil{pointer-events:none;background:linear-gradient(#080a0e73 0%,#0000 22% 55%,#080a0ec7 100%),linear-gradient(90deg,#080a0e40,#0000 30%);position:absolute;inset:0}.clip__paused{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.clip__paused span{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000059;border-radius:50%;width:4.2rem;height:4.2rem;position:relative}.clip__paused span:before{content:"";border:.7rem solid #0000;border-left:1.15rem solid #fff;border-right-width:0;width:0;height:0;margin:auto;position:absolute;inset:0;transform:translate(2px)}.clip__meta{left:1rem;right:5.5rem;bottom:calc(5.4rem + env(safe-area-inset-bottom));z-index:5;animation:.52s cubic-bezier(.2,.8,.2,1) both rise-in;position:absolute}.clip.is-active .clip__meta{animation-name:rise-in}.clip__handle{font-family:var(--font-display);margin:0 0 .35rem;font-size:1.05rem;font-weight:700}.clip__caption{text-wrap:pretty;margin:0;font-size:.95rem;font-weight:500;line-height:1.35}.clip__music{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.4rem;max-width:100%;margin:.55rem 0 0;font-size:.78rem;display:inline-flex;overflow:hidden}.clip__actions{right:.7rem;bottom:calc(5.6rem + env(safe-area-inset-bottom));z-index:6;flex-direction:column;align-items:center;gap:1rem;display:flex;position:absolute}.creator-avatar{width:3rem;height:3rem;font-family:var(--font-display);color:#1a1208;background:linear-gradient(145deg,#ffe08a,#f2b84b 55%,#ff7a59);border:2px solid #ffffffb3;border-radius:50%;place-items:center;font-weight:800;display:grid;box-shadow:0 8px 20px #00000059}.action-btn{color:#fff;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:.25rem;font-size:.78rem;font-weight:700;display:flex}.action-btn__icon{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c0e126b;border:1px solid #ffffff1f;border-radius:50%;place-items:center;width:3rem;height:3rem;font-size:1.35rem;transition:transform .16s,color .16s,background .16s;display:grid}.action-btn:hover .action-btn__icon{transform:scale(1.06)}.action-btn.is-loved .action-btn__icon{color:#ff5a5f;background:#ff5a5f2e;animation:.42s cubic-bezier(.2,1.4,.3,1) love-pop}.action-btn--coin .coin-orb{width:1.25rem;height:1.25rem}.action-btn__sub{color:#f6f1e8b3;font-size:.68rem;font-weight:600}.action-btn--coin .action-btn__icon{background:#f2b84b29;border-color:#f2b84b73}.dock{z-index:20;padding:.55rem .75rem calc(.65rem + env(safe-area-inset-bottom));color:#ffffff8c;text-align:center;background:linear-gradient(#0000,#080a0eeb 35%);grid-template-columns:repeat(5,1fr);align-items:center;gap:.25rem;font-size:.72rem;font-weight:600;display:grid;position:absolute;inset:auto 0 0}.dock__item.is-active{color:#fff}.dock__item--create{color:#120d05;background:linear-gradient(90deg,#f2b84b,#ff7a59);border-radius:.45rem;place-items:center;width:2.6rem;height:1.9rem;margin:0 auto;font-size:1.2rem;font-weight:800;display:grid;box-shadow:0 0 0 2px #0b0d10,0 0 0 4px #f2b84b}.coin-sheet{z-index:40;position:absolute;inset:0}.coin-sheet__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;background:#0405088c;border:0;position:absolute;inset:0}.coin-sheet__panel{width:min(100%,480px);padding:.7rem 1rem calc(1rem + env(safe-area-inset-bottom));background:linear-gradient(#241e16f5,#0e0f12fa);border-top:1px solid #ffffff14;border-radius:1.35rem 1.35rem 0 0;animation:.28s cubic-bezier(.2,.8,.2,1) sheet-up;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -20px 50px #00000073}.coin-sheet__handle{background:#fff3;border-radius:999px;width:2.6rem;height:.28rem;margin:0 auto .9rem}.coin-sheet__header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.coin-sheet__eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.coin-sheet__header h2{font-family:var(--font-display);letter-spacing:-.02em;margin:.25rem 0 0;font-size:1.35rem}.wallet-chip{background:#ffffff0f;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .7rem;display:inline-flex}.gift-grid{grid-template-columns:repeat(4,1fr);gap:.55rem;display:grid}.gift-card{color:#fff;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:1rem;flex-direction:column;align-items:center;gap:.25rem;padding:.85rem .35rem;transition:transform .16s,border-color .16s,background .16s;display:flex}.gift-card:hover:not(:disabled){background:#f2b84b14;border-color:#f2b84b73;transform:translateY(-2px)}.gift-card:disabled{opacity:.4;cursor:not-allowed}.gift-card__icon{width:1.6rem;height:1.6rem;margin-bottom:.15rem;position:relative}.gift-card__icon--rose{background:radial-gradient(circle at 40% 35%,#ff9aa0,#ff5a5f 70%);border-radius:50% 50% 45% 45%;box-shadow:0 0 0 2px #ff5a5f33}.gift-card__icon--star{clip-path:polygon(50% 0%,63% 38%,100% 38%,70% 59%,81% 100%,50% 76%,19% 100%,30% 59%,0% 38%,37% 38%);background:#f2b84b}.gift-card__icon--crown{clip-path:polygon(8% 78%,8% 42%,28% 62%,50% 28%,72% 62%,92% 42%,92% 78%);background:linear-gradient(#ffe08a,#f2b84b)}.gift-card__icon--fire{background:radial-gradient(circle at 45% 70%,#ffd27a,#ff7a59 55%,#ff5a5f 100%);border-radius:50% 50% 45% 45%/65% 65% 40% 40%}.gift-card__icon--whale{background:linear-gradient(135deg,#9ad7ff,#4f8cff 55%,#1b3f8a);border-radius:999px 999px 40% 60%;width:2rem;height:1.15rem;position:relative;box-shadow:0 0 0 2px #4f8cff40}.gift-card__icon--whale:after{content:"";clip-path:polygon(0 40%,100% 0,100% 100%);background:#2e6cc4;width:.55rem;height:.55rem;position:absolute;top:.15rem;right:-.2rem}.gift-grid--live{grid-template-columns:repeat(3,1fr)}.gift-card--epic{background:linear-gradient(120deg,#1b3f8a73,#4f8cff2e),#ffffff0a;border-color:#9ad7ff59;flex-direction:row;grid-column:span 3;justify-content:flex-start;align-items:center;gap:.85rem;padding:.95rem 1rem}.gift-card__copy{flex-direction:column;align-items:center;gap:.15rem;display:flex}.gift-card--epic .gift-card__copy{align-items:flex-start}.gift-card--epic .gift-card__name{font-family:var(--font-display);font-size:1rem}.gift-card__blurb{color:#f6f1e88c;font-size:.62rem}.gift-card--epic .gift-card__blurb{color:#9ad7ff;letter-spacing:.04em;text-transform:uppercase;font-weight:700}.app--shake{animation:.48s cubic-bezier(.36,.07,.19,.97) room-shake}.app--gift-lock .coin-sheet{opacity:0;pointer-events:none}.takeover{z-index:80;pointer-events:none;position:absolute;inset:0;overflow:hidden}.takeover--soft{padding:0 1rem calc(6.8rem + env(safe-area-inset-bottom));align-content:end;justify-items:start;display:grid}.takeover__soft-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0c10c7;border:1px solid #ffffff1a;border-radius:1rem;align-items:center;gap:.7rem;padding:.7rem .9rem;animation:1.35s cubic-bezier(.2,.8,.2,1) both soft-slide;display:flex}.takeover__sender{margin:0;font-size:.85rem;font-weight:700}.takeover__line{color:var(--muted);margin:.1rem 0 0;font-size:.78rem}.takeover--mid{place-items:center;display:grid}.takeover__veil{background:radial-gradient(circle at 50% 40%,#f2b84b29,#080a0e38 70%);animation:2.5s both veil-in;position:absolute;inset:0}.takeover__mid-burst{background:radial-gradient(circle,#ff7a5959,#0000 65%);border-radius:50%;width:18rem;height:18rem;animation:2.4s ease-out both mid-pulse;position:absolute}.takeover__mid-orb{z-index:2;background:#0c0e128c;border:1px solid #ffffff29;border-radius:50%;place-items:center;width:6.5rem;height:6.5rem;animation:2.4s cubic-bezier(.2,1.3,.3,1) both mid-pop;display:grid;position:relative}.takeover__mid-orb .gift-card__icon{width:2.4rem;height:2.4rem}.takeover__banner{left:50%;bottom:calc(7.2rem + env(safe-area-inset-bottom));text-align:center;z-index:3;width:min(92%,24rem);animation:2.5s cubic-bezier(.2,.8,.2,1) both banner-up;position:absolute;transform:translate(-50%)}.takeover__banner h2{font-family:var(--font-display);letter-spacing:-.03em;margin:.2rem 0 0;font-size:clamp(1.35rem,5vw,1.8rem)}.takeover__eyebrow{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.takeover__coins{color:var(--muted);margin:.35rem 0 0;font-size:.85rem}.takeover--epic{background:0 0;animation:5.2s both epic-fade}.whale-particles{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.whale-sea{z-index:2;pointer-events:none;position:absolute;inset:0}.whale-sea--lite .whale-sea__beams{background:conic-gradient(from 210deg at 50% 0%, transparent 0 7%, #aae6ff29 9%, transparent 13%, #78c8ff1a 17%, transparent 22%);mix-blend-mode:screen;animation:5.2s ease-in-out both ray-sweep;position:absolute;inset:-30%}.whale-shock{border:2px solid #b4e6ff8c;border-radius:50%;width:4rem;height:4rem;animation:1.35s cubic-bezier(.16,.84,.24,1) both shock-expand;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)scale(.2)}.whale-shock--delay{border-color:#ffffff47;animation-delay:.18s}.whale-stage{z-index:3;place-items:center;display:grid;position:absolute;inset:10% 0 18%;overflow:visible}.whale-glow{filter:blur(8px);background:radial-gradient(circle,#8cd2ff59,#0000 70%);border-radius:50%;width:min(80%,28rem);height:min(42%,14rem);animation:5.2s ease-in-out both whale-glow-pulse;position:absolute}.whale-svg{z-index:2;filter:drop-shadow(0 16px 28px #001e3c59);transform-origin:50%;width:min(150%,42rem);height:auto;animation:5s cubic-bezier(.18,.72,.22,1) both whale-swim;position:relative}.whale-spout{animation:5s ease-in-out both spout-puff}.whale-splash{filter:blur(2px);z-index:1;background:radial-gradient(#d2f0ff6b,#0000 70%);width:78%;height:3.4rem;animation:5s ease-out both splash-bloom;position:absolute;bottom:10%;left:50%;transform:translate(-50%)}.whale-splash--soft{opacity:.55;filter:blur(8px);width:92%;height:5rem;animation-delay:80ms;bottom:6%}.takeover__banner--epic{left:1rem;right:auto;bottom:calc(6.4rem + env(safe-area-inset-bottom));text-align:left;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:4;background:linear-gradient(135deg,#081830b8,#060e188c);border:1px solid #9ad7ff61;border-radius:1rem;width:min(78%,18rem);padding:.9rem 1rem;animation:5.2s cubic-bezier(.2,.8,.2,1) both gift-ticker-in;transform:none;box-shadow:0 12px 40px #00142859,inset 0 1px #ffffff1f}.takeover__banner--epic .takeover__eyebrow{color:#9ad7ff}.takeover__banner--epic h2{text-shadow:0 4px 18px #00285073;font-size:clamp(1.2rem,4.8vw,1.55rem)}.takeover__banner--epic .takeover__line,.takeover__banner--epic .takeover__coins{color:#e6f2ffe0}@keyframes room-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px,2px)}40%{transform:translate(5px,-3px)}60%{transform:translate(-3px,1px)}80%{transform:translate(3px,-2px)}}@keyframes soft-slide{0%{opacity:0;transform:translate(-24px)scale(.96)}18%{opacity:1;transform:translate(0)scale(1)}78%{opacity:1}to{opacity:0;transform:translateY(-10px)}}@keyframes veil-in{0%{opacity:0}15%{opacity:1}75%{opacity:1}to{opacity:0}}@keyframes mid-pulse{0%{opacity:0;transform:scale(.4)}25%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}@keyframes mid-pop{0%{opacity:0;transform:scale(.4)rotate(-8deg)}22%{opacity:1;transform:scale(1.08)rotate(0)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)translateY(-12px)}}@keyframes banner-up{0%{opacity:0;transform:translate(-50%,18px)}18%{opacity:1;transform:translate(-50%)}78%{opacity:1}to{opacity:0;transform:translate(-50%,-8px)}}@keyframes gift-ticker-in{0%{opacity:0;transform:translate(-28px)scale(.96)}10%{opacity:1;transform:translate(0)scale(1)}78%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(-12px)scale(.98)}}@keyframes epic-fade{0%{opacity:0}6%{opacity:1}84%{opacity:1}to{opacity:0}}@keyframes whale-swim{0%{opacity:0;transform:translate(-68%,22%)scale(.78)rotate(-8deg)}10%{opacity:1}46%{transform:translate(-2%)scale(1.05)rotate(-1deg)}72%{opacity:1;transform:translate(36%,-6%)scale(1.08)rotate(3deg)}to{opacity:0;transform:translate(82%,-14%)scale(1.12)rotate(8deg)}}@keyframes spout-puff{0%,12%{opacity:0;transform:translateY(10px)}28%,58%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-22px)}}@keyframes splash-bloom{0%,14%{opacity:0;transform:translate(-50%)scaleX(.35)}36%{opacity:.95;transform:translate(-50%)scaleX(1)}to{opacity:0;transform:translate(-50%)scaleX(1.4)}}@keyframes shock-expand{0%{opacity:.85;transform:translate(-50%,-50%)scale(.15)}to{opacity:0;transform:translate(-50%,-50%)scale(18)}}@keyframes whale-glow-pulse{0%,to{opacity:0;transform:scale(.7)}20%{opacity:.9;transform:scale(1)}55%{opacity:1;transform:scale(1.15)}85%{opacity:.35;transform:scale(1.3)}}@keyframes ray-sweep{0%{opacity:0;transform:rotate(-6deg)}20%{opacity:1}to{opacity:.45;transform:rotate(8deg)}}.gift-card__name{font-size:.78rem;font-weight:700}.gift-card__cost{color:var(--muted);font-size:.68rem}.coin-sheet__footer{gap:.6rem;margin-top:1rem;display:flex}.btn-ghost,.btn-solid{cursor:pointer;border:0;border-radius:.9rem;flex:1;padding:.85rem 1rem;font-weight:700}.btn-ghost{color:#fff;background:#ffffff0f;border:1px solid #ffffff14}.btn-solid{color:#1a1208;background:linear-gradient(135deg,#f2b84b,#ff7a59)}.burst-layer{pointer-events:none;z-index:50;position:fixed;inset:0;overflow:hidden}.burst{width:0;height:0;position:absolute}.burst-particle{animation:.9s cubic-bezier(.15,.85,.25,1) forwards float-burst;animation-delay:calc(var(--i) * 20ms);opacity:0;position:absolute;top:0;left:0}.burst-particle.love{color:#ff5a5f;text-shadow:0 4px 12px #ff5a5f73;font-size:1.4rem}.burst-particle.coin{color:#f2b84b;text-shadow:0 4px 12px #f2b84b73;font-size:.95rem}.toast{left:50%;bottom:calc(6.5rem + env(safe-area-inset-bottom));z-index:60;color:#fff;white-space:nowrap;background:#12100ce0;border:1px solid #f2b84b47;border-radius:999px;padding:.7rem 1rem;font-size:.85rem;font-weight:600;animation:.22s toast-in;position:absolute;transform:translate(-50%)}@keyframes brand-pulse{0%,to{filter:saturate();transform:scale(1)}50%{filter:saturate(1.15);transform:scale(1.05)}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes love-pop{0%{transform:scale(.8)}55%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes sheet-up{0%{opacity:.4;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}@keyframes float-burst{0%{opacity:0;transform:translate(0)scale(.5)}20%{opacity:1}to{opacity:0;transform:translate(var(--x), var(--y)) scale(1.15)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@media (width>=720px){.app{place-items:center;display:grid}.feed,.topbar,.dock,.coin-sheet__panel,.toast{width:min(100%,480px)}.topbar,.dock,.toast{left:50%;right:auto;transform:translate(-50%)}.toast{transform:translate(-50%)}.takeover:not(.takeover--epic){width:min(100%,480px);left:50%;right:auto;transform:translate(-50%)}.takeover--epic{width:100%;left:0;transform:none}.feed{border-inline:1px solid #ffffff0f;box-shadow:0 30px 80px #00000073}}@keyframes room-shake-centered{0%,to{transform:translate(-50%)translate(0)}20%{transform:translate(-50%)translate(-4px,2px)}40%{transform:translate(-50%)translate(5px,-3px)}60%{transform:translate(-50%)translate(-3px,1px)}80%{transform:translate(-50%)translate(3px,-2px)}}@media (width<=380px){.gift-grid,.gift-grid--live{grid-template-columns:repeat(2,1fr)}.gift-card--epic{grid-column:span 2}.brand__tag{display:none}}@media (prefers-reduced-motion:reduce){.takeover--epic,.whale-svg,.whale-shock,.whale-glow,.app--shake{animation-duration:.01ms!important}}
