:root{color:#2e2238;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--pink:#f46ca4;--rose:#ff9f8f;--gold:#ffc94a;--plum:#613b70;--ink:#2e2238;--sky:#8bc6ff;--glass:#ffffff94;--line:#ffffff7a;--shadow:0 26px 80px #ac53782e;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top,#fffcf4f2,#0000 38%),linear-gradient(135deg,#fff7e8 0%,#ffe1e7 45%,#ffd9bd 100%);min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}button{border:0}#root{min-height:100vh}.app-shell{min-height:100vh;position:relative;overflow:hidden}.platform-shell{z-index:1;grid-template-rows:auto 1fr auto;min-height:100vh;display:grid;position:relative}.platform-stage{width:calc(100% - 56px);margin:18px auto 24px}.platform-shell-game{grid-template-rows:auto 1fr}.platform-stage-game{width:100%;margin:0}.platform-navbar,.platform-footer{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff61;justify-content:space-between;align-items:center;gap:20px;padding:18px 28px;display:flex}.platform-navbar{z-index:20;border-bottom:1px solid var(--line);position:sticky;top:0}.platform-footer{border-top:1px solid var(--line)}.brand-lockup{align-items:center;gap:14px;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#ff7397,#ffbe63);border-radius:16px;place-items:center;width:48px;height:48px;font-weight:700;display:grid;box-shadow:0 18px 34px #f46ca43d}.brand-lockup strong,.platform-footer strong{display:block}.brand-lockup p,.platform-footer p,.arcade-copy p,.game-card p,.arcade-status-card p{color:#2e2238c7;margin:4px 0 0}.nav-links,.nav-actions,.footer-links,.moment-strip,.game-instructions,.screen-stats,.overlay-actions{align-items:center;gap:12px;display:flex}.nav-links a,.footer-links a{color:var(--plum);font-weight:600;text-decoration:none}.status-pill,.nav-button,.celebrate-button,.ghost-button,.mini-button{border-radius:999px}.status-pill{background:#ffffffb8;padding:10px 14px;font-weight:700}.nav-button,.celebrate-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff6f91,#ff9b70);padding:12px 18px;box-shadow:0 14px 24px #f46ca43d}.ghost-button,.mini-button{cursor:pointer;color:var(--plum);background:#ffffffc2;padding:12px 18px}.mini-button{padding:8px 14px}.celebrate-button:hover,.ghost-button:hover,.nav-button:hover,.mini-button:hover{transform:translateY(-1px)}.aurora{filter:blur(24px);opacity:.65;border-radius:999px;position:absolute}.aurora-left{background:#ffb2c3bf;width:280px;height:280px;top:-80px;left:-80px}.aurora-right{background:#ffd47c8c;width:320px;height:320px;bottom:-60px;right:-100px}.session-warning,.arcade-home,.arcade-screen,.reveal-shell{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.session-warning{border-radius:24px;justify-content:space-between;align-items:center;gap:18px;padding:16px 20px;display:flex}.session-warning p{margin:0}.arcade-home,.reveal-shell{border-radius:36px;margin-top:18px;padding:28px}.arcade-hero{grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);align-items:start;gap:22px;display:grid}.arcade-copy h1,.reveal-sidebar h1,.birthday-message h2,.screen-topbar h2,.game-card h2{margin:0;font-family:"Baloo 2",cursive;line-height:.96}.arcade-copy h1,.reveal-sidebar h1{font-size:clamp(2.8rem,5.4vw,5.4rem)}.eyebrow,.tip-label,.game-card-badge,.board-badge{letter-spacing:.12em;text-transform:uppercase;color:var(--pink);margin:0 0 14px;font-size:.84rem;font-weight:700}.intro{color:#2e2238d6;max-width:48ch;margin:16px 0 0;line-height:1.7}.moment-strip{flex-wrap:wrap;margin-top:22px}.moment-strip span,.birthday-tag,.character-label{background:#ffffffc2;border-radius:999px;padding:8px 12px;font-size:.88rem}.arcade-status-card,.game-card,.overlay-card{background:#ffffffad;border-radius:28px;padding:22px}.arcade-status-card{align-self:stretch}.game-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px;display:grid}.game-card h2{font-size:2rem}.game-card small{color:#2e2238a3;margin-top:12px;display:block}.game-card-button{margin-top:18px}.game-card-locked{opacity:.8}.arcade-screen{border-radius:36px;min-height:78vh;margin-top:18px;padding:22px;position:relative}.platform-stage-game .arcade-screen{min-height:calc(100vh - 93px);box-shadow:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff4d;border-bottom:0;border-left:0;border-right:0;border-radius:0;margin-top:0}.screen-topbar{justify-content:space-between;align-items:center;gap:18px;display:flex}.screen-topbar h2{font-size:clamp(2rem,4vw,3.2rem)}.screen-stats{flex-wrap:wrap;justify-content:flex-end}.screen-stats span,.game-instructions span{background:#ffffffb8;border-radius:999px;padding:10px 14px;font-weight:700}.chance-track{background:#ffffffb8;border-radius:999px;align-items:center;gap:8px;padding:8px 10px;display:flex}.chance-orb{border-radius:50%;width:14px;height:14px;transition:transform .18s,opacity .18s,background .18s}.chance-orb-active{background:linear-gradient(#ff8aa3,#ff537f);box-shadow:0 0 12px #ff739159}.chance-orb-lost{opacity:.45;background:#5a687c57;transform:scale(.85)}.level-one-arena,.level-two-arena{border-radius:30px;min-height:58vh;margin-top:18px;position:relative;overflow:hidden}.platform-stage-game .level-one-arena,.platform-stage-game .level-two-arena{border-radius:34px 34px 0 0;min-height:calc(100vh - 235px)}.level-one-arena{background:radial-gradient(circle at 50% 18%,#a7e0ff2e,#0000 22%),radial-gradient(circle at 18% 24%,#ff5caa38,#0000 18%),radial-gradient(circle at 84% 18%,#58a3ff3d,#0000 22%),linear-gradient(#090b23 0%,#11163e 40%,#1e1751 70%,#130f2b 100%)}.night-moon,.star-cluster,.neon-haze,.city-silhouette{position:absolute}.night-moon{background:radial-gradient(circle at 35% 35%,#fffffff5,#cfe8ffe6 55%,#7a99ffb8 100%);border-radius:50%;width:130px;height:130px;top:8%;right:10%;box-shadow:0 0 35px #8bc6ff73,0 0 80px #6ba1ff3d}.star-cluster{opacity:.92;background-repeat:no-repeat;inset:0}.star-cluster-one{background-image:radial-gradient(circle,#fffffff2 0 1.4px,#0000 1.6px),radial-gradient(circle,#a5ceffe6 0 1.2px,#0000 1.4px),radial-gradient(circle,#ffffffd9 0 1.1px,#0000 1.3px),radial-gradient(circle,#ffd789e6 0 1.3px,#0000 1.5px);background-position:12% 14%,28% 24%,58% 16%,78% 26%;background-size:18% 28%,24% 34%,30% 40%,36% 48%}.star-cluster-two{background-image:radial-gradient(circle,#fffffff2 0 1.2px,#0000 1.4px),radial-gradient(circle,#90c2ffe6 0 1px,#0000 1.2px),radial-gradient(circle,#ffffffd6 0 1.1px,#0000 1.3px);background-position:18% 40%,48% 36%,80% 42%;background-size:22% 30%,26% 36%,34% 44%}.star-cluster-three{background-image:radial-gradient(circle,#ffffffe6 0 1.3px,#0000 1.5px),radial-gradient(circle,#ffd07dd6 0 1px,#0000 1.2px),radial-gradient(circle,#91d2ffcc 0 1.1px,#0000 1.3px);background-position:8% 58%,44% 62%,72% 56%;background-size:20% 24%,32% 32%,38% 40%}.neon-haze{filter:blur(34px);opacity:.55;border-radius:50%}.neon-haze-left{background:#ff4aa061;width:260px;height:180px;bottom:10%;left:-8%}.neon-haze-right{background:#4b98ff52;width:280px;height:200px;bottom:16%;right:-4%}.city-silhouette{background-repeat:repeat-x;width:100%;left:0}.city-back{opacity:.78;background-image:linear-gradient(90deg,#1d2146 0 4%,#0000 4% 6%,#232957 6% 12%,#0000 12% 14%,#141936 14% 20%,#0000 20% 22%,#242a5d 22% 28%,#0000 28% 30%,#171a3d 30% 34%,#0000 34% 36%,#1f2550 36% 44%,#0000 44% 46%,#151934 46% 52%,#0000 52% 54%,#232a59 54% 60%,#0000 60% 62%,#181b3f 62% 68%,#0000 68% 70%,#1d2450 70% 76%,#0000 76% 78%,#141833 78% 84%,#0000 84% 86%,#212858 86% 94%,#0000 94% 100%);height:28%;bottom:13%}.city-front{background-image:linear-gradient(90deg,#0c1028 0 5%,#0000 5% 7%,#171c42 7% 15%,#0000 15% 17%,#0d122f 17% 23%,#0000 23% 25%,#181e48 25% 32%,#0000 32% 34%,#0b1027 34% 40%,#0000 40% 42%,#1b214f 42% 49%,#0000 49% 51%,#0d122d 51% 58%,#0000 58% 60%,#171d45 60% 67%,#0000 67% 69%,#0c1028 69% 75%,#0000 75% 77%,#18204a 77% 84%,#0000 84% 86%,#0d122d 86% 93%,#0000 93% 100%);height:24%;bottom:0;box-shadow:inset 0 10px 28px #6d53ff1a}.falling-item{cursor:pointer;width:88px;height:110px;box-shadow:none;position:absolute;transform:translate(-50%)}.falling-item span{z-index:1;color:#fff;text-shadow:0 2px 8px #00000059;place-items:center;width:100%;height:100%;font-weight:700;display:grid;position:relative}.falling-item-label{pointer-events:none;width:max-content;height:auto;font-size:1rem;line-height:1;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.falling-item:after{content:"";background:linear-gradient(#ffffff2e,#5f78ff8a);width:2px;height:28px;position:absolute;bottom:-24px;left:50%;transform:translate(-50%)}.falling-pink,.falling-blue,.falling-peach,.falling-gold{border:1px solid #ffffff3d;border-radius:50% 50% 48% 48%}.falling-pink{background:radial-gradient(circle at 32% 24%,#ffffff4d,#0000 20%),linear-gradient(#ff9bc4,#ff4e9d 70%,#cf2674 100%)}.falling-blue{background:radial-gradient(circle at 32% 24%,#ffffff52,#0000 20%),linear-gradient(#99e4ff,#5aa9ff 70%,#2d64d8 100%)}.falling-peach{background:radial-gradient(circle at 32% 24%,#ffffff4d,#0000 20%),linear-gradient(#ffc098,#ff8f6b 70%,#d85d4f 100%)}.falling-gold{box-shadow:none;background:radial-gradient(circle at 32% 24%,#ffffff57,#0000 20%),linear-gradient(#ffe28c,#ffba45 68%,#e38e11 100%)}.falling-bomb{background:radial-gradient(circle at 35% 30%,#6b6879 0 18%,#1b1a23 19% 100%);border:1px solid #ffffff1f;border-radius:50%;width:82px;height:82px;box-shadow:0 18px 28px #08070f73,0 0 18px #ff69911f}.falling-bomb:before{content:"";background:#3f2f31;border-radius:999px;width:8px;height:26px;position:absolute;top:-18px;left:50%;transform:translate(-50%)rotate(16deg)}.falling-bomb:after{content:"";background:#ffad6e;border-radius:50%;width:10px;height:10px;position:absolute;top:-8px;left:50%;transform:translate(2px);box-shadow:0 0 14px #ffaa578c}.level-two-arena{background:linear-gradient(#ffffff2e,#ffffff0f),linear-gradient(#8fd8ff 0%,#79d0ff 40%,#2bc2ec 41%,#22d1f0 56%,#f0d59b 56%,#efd7a9 100%)}.shell-game-stage{width:100%;height:100%;min-height:inherit;border-radius:inherit;background-image:linear-gradient(#ffffff14,#00000029),url(/assets/shuffle-background-DLlMRVi5.png);background-position:50%;background-size:cover;position:relative;overflow:hidden}.shell-table-overlay{width:74%;height:43%;position:absolute;bottom:.4%;left:50%;transform:translate(-50%)}.table-ball{aspect-ratio:1;background:radial-gradient(circle at 35% 35%,#ff9f9f,#d31212 72%);border-radius:50%;width:2%;position:absolute;bottom:29%;left:48.7%;box-shadow:0 4px 12px #7708083d}.real-shell-button{--shuffle-duration:.68s;aspect-ratio:1/.82;transform-origin:bottom;cursor:pointer;width:11.8%;transition:left var(--shuffle-duration) cubic-bezier(.32, .08, .18, 1), transform var(--shuffle-duration) cubic-bezier(.32, .08, .18, 1), bottom .18s ease-in-out;will-change:left, transform;background:radial-gradient(circle at 50% 28%,#fff1d3f2,#f0d5a4f5 42%,#bb894ffa 85%);border-radius:50% 50% 42% 42%;padding:0;position:absolute;bottom:31%;box-shadow:0 14px 22px #3c230f2e,inset 0 3px #ffffff80}.real-shell-button:before{content:"";border-radius:inherit;opacity:.45;background:repeating-radial-gradient(circle at 50% 120%,#ad804d8c 0 5%,#f4ddb71f 5% 9%);position:absolute;inset:12% 14% 8%}.real-shell-rim{background:linear-gradient(#925c2ef2,#5d3417f0);border-radius:999px;height:18%;position:absolute;bottom:5%;left:8%;right:8%}.real-shell-button-shuffling{animation:shellShuffleBounce var(--shuffle-duration) ease-in-out infinite}.real-shell-button[data-motion=shell-move-left]{z-index:3;animation:shellShuffleBounce var(--shuffle-duration) ease-in-out infinite, shellArcLeft var(--shuffle-duration) cubic-bezier(.32, .08, .18, 1)}.real-shell-button[data-motion=shell-move-right]{z-index:4;animation:shellShuffleBounce var(--shuffle-duration) ease-in-out infinite, shellArcRight var(--shuffle-duration) cubic-bezier(.32, .08, .18, 1)}.real-shell-button-lifted{bottom:39%;transform:rotate(10deg)}.real-gift-token{aspect-ratio:1;background:linear-gradient(#ff93b8,#ea4c88);border-radius:8px;width:28%;position:absolute;bottom:-18%;left:50%;transform:translate(-50%);box-shadow:0 8px 18px #811e4733}.real-gift-token:before,.real-gift-token:after{content:"";background:#ffffffd6;position:absolute}.real-gift-token:before{width:18%;height:100%;top:0;left:50%;transform:translate(-50%)}.real-gift-token:after{width:100%;height:18%;top:50%;left:0;transform:translateY(-50%)}.game-instructions{flex-wrap:wrap;margin-top:18px}.overlay-card{z-index:10;text-align:center;width:min(480px,100% - 40px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 60px #231c302e}.overlay-card h3{margin:0;font-family:"Baloo 2",cursive;font-size:2rem}.overlay-card p{margin:12px 0 0;line-height:1.7}.overlay-actions{flex-wrap:wrap;justify-content:center;margin-top:18px}.genie-card{gap:16px;display:grid}.genie-thread{background:#ffffff94;border-radius:22px;gap:12px;max-height:320px;padding:8px;display:grid;overflow:auto}.genie-bubble{border-radius:18px;max-width:88%;padding:12px 14px;line-height:1.5}.genie-bubble-bot{color:#5b3a1e;background:#fff5d0eb;justify-self:start}.genie-bubble-player{color:var(--ink);background:#fffffff5;justify-self:end}.genie-composer{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.genie-input{width:100%;color:var(--ink);font:inherit;background:#ffffffe6;border:1px solid #613b702e;border-radius:18px;outline:none;padding:14px 16px}.genie-input:focus{border-color:#f46ca48c;box-shadow:0 0 0 4px #f46ca41f}.genie-send-button{white-space:nowrap}.reveal-shell{grid-template-columns:minmax(320px,.9fr) minmax(0,1.4fr);align-items:stretch;gap:26px;display:grid}.reveal-sidebar{align-self:start}.reveal-home-button{margin-top:24px}.cake-surprise-shell{position:relative}.cake-surprise-stage{background:radial-gradient(circle at top,#ffffff3d,#0000 24%),linear-gradient(#252432 0%,#302e44 100%);border-radius:32px;min-height:70vh;position:relative;overflow:hidden;box-shadow:inset 0 -14px 30px #00000029}.cake-banner,.cake-side-balloons,.party-popper{z-index:2;position:absolute}.cake-banner{width:min(88%,760px);top:26px;left:50%;transform:translate(-50%)}.cake-banner-string{background:#ffffff8c;width:23%;height:2px;position:absolute;top:16px}.cake-banner-string-left{transform-origin:0;left:0;transform:rotate(9deg)}.cake-banner-string-right{transform-origin:100%;right:0;transform:rotate(-9deg)}.cake-banner-flags{justify-content:center;gap:8px;display:flex}.cake-banner-flag{clip-path:polygon(0 0,100% 0,50% 100%);color:#fff;text-transform:uppercase;background:linear-gradient(#ff9ac0,#f25b93);place-items:start center;width:34px;height:46px;padding-top:8px;font-size:.8rem;font-weight:700;display:grid;box-shadow:0 10px 18px #0d0a1e2e}.cake-banner-flag:nth-child(3n){background:linear-gradient(#ffd873,#ffb441)}.cake-banner-flag:nth-child(4n){background:linear-gradient(#8fd8ff,#4d8df5)}.cake-banner-gap{width:18px;box-shadow:none;background:0 0}.cake-side-balloons{gap:14px;display:flex;top:110px}.cake-side-balloons-left{left:34px}.cake-side-balloons-right{right:34px}.decor-balloon{border-radius:50% 50% 48% 48%;width:56px;height:72px;animation:4.2s ease-in-out infinite decorFloat;position:relative;box-shadow:0 14px 30px #0f0a1c2e}.decor-balloon:before{content:"";background:#ffffff73;width:2px;height:26px;position:absolute;bottom:-22px;left:50%;transform:translate(-50%)}.decor-balloon:after{content:"";background:#ffffff40;border-radius:50%;width:16px;height:16px;position:absolute;top:14px;left:14px}.decor-balloon-pink{background:linear-gradient(#ffa8ca,#f15a95 72%,#d52f72)}.decor-balloon-gold{background:linear-gradient(#ffe28d,#ffbc4a 72%,#df8a17);animation-delay:.4s}.decor-balloon-blue{background:linear-gradient(#a4e4ff,#5e9fff 72%,#365edb);animation-delay:.8s}.decor-balloon-peach{background:linear-gradient(#ffc4a8,#ff8d69 72%,#de5b46)}.party-popper{width:78px;height:120px;bottom:46px}.party-popper:before{content:"";background:linear-gradient(#ffd873,#ff7aa7);border-radius:12px 12px 18px 18px;width:44px;height:64px;position:absolute;bottom:0;box-shadow:0 16px 30px #0f0a1c33}.party-popper:after{content:"";border-top:3px dashed #fffc;width:52px;height:2px;position:absolute;bottom:44px}.party-popper-left{left:42px;transform:rotate(-18deg)}.party-popper-left:before,.party-popper-left:after{left:16px}.party-popper-right{right:42px;transform:rotate(18deg)}.party-popper-right:before,.party-popper-right:after{right:16px}.party-popper-burst{transform-origin:0;background:linear-gradient(90deg,#fff5a6,#ff7fa8);border-radius:999px;width:38px;height:6px;animation:1.8s ease-out infinite popperBurst;position:absolute;top:14px}.party-popper-left .burst-one{left:36px;transform:rotate(-42deg)}.party-popper-left .burst-two{background:linear-gradient(90deg,#8fd8ff,#5c90ff);animation-delay:.15s;top:22px;left:28px;transform:rotate(-16deg)}.party-popper-left .burst-three{background:linear-gradient(90deg,#ffd873,#ff9d49);animation-delay:.28s;top:30px;left:34px;transform:rotate(10deg)}.party-popper-right .burst-one{right:36px;transform:rotate(222deg)}.party-popper-right .burst-two{background:linear-gradient(90deg,#8fd8ff,#5c90ff);animation-delay:.15s;top:22px;right:28px;transform:rotate(196deg)}.party-popper-right .burst-three{background:linear-gradient(90deg,#ffd873,#ff9d49);animation-delay:.28s;top:30px;right:34px;transform:rotate(170deg)}.party-popper-dot{border-radius:50%;width:10px;height:10px;position:absolute;top:18px}.party-popper .dot-one{background:#ff7fa8}.party-popper .dot-two{background:#ffd873}.party-popper .dot-three{background:#8fd8ff}.party-popper .dot-four{background:#fff5a6}.party-popper-left .dot-one{animation:1.8s ease-out infinite popperDotLeftOne;left:42px}.party-popper-left .dot-two{animation:1.8s ease-out .12s infinite popperDotLeftTwo;left:32px}.party-popper-left .dot-three{animation:1.8s ease-out .22s infinite popperDotLeftThree;left:48px}.party-popper-left .dot-four{animation:1.8s ease-out .32s infinite popperDotLeftFour;left:38px}.party-popper-right .dot-one{animation:1.8s ease-out infinite popperDotRightOne;right:42px}.party-popper-right .dot-two{animation:1.8s ease-out .12s infinite popperDotRightTwo;right:32px}.party-popper-right .dot-three{animation:1.8s ease-out .22s infinite popperDotRightThree;right:48px}.party-popper-right .dot-four{animation:1.8s ease-out .32s infinite popperDotRightFour;right:38px}#birthday-cake-svg{z-index:1;width:100%;height:auto;margin:0 auto;padding-top:56px;display:block;position:relative}.cake-display{z-index:1;opacity:0;width:min(240px,64vw);margin:0 auto;animation:10ms linear 2s forwards cakeDisplayShow;position:relative}.cake-surprise-candle{z-index:3;backface-visibility:hidden;background:#fff;border-radius:10px;width:5px;height:35px;margin-left:-2.4px;animation:.5s ease-out 6s forwards cakeCandleIn;position:absolute;bottom:110px;left:50%;transform:translateY(-300px)}.cake-surprise-candle:before,.cake-surprise-candle:after{content:"";background:#f006;width:100%;height:2px;position:absolute;left:0}.cake-surprise-candle:after{top:25%}.cake-surprise-candle:before{top:45%}.cake-surprise-fire{border-radius:100%;width:6.7px;height:18px;margin-left:-2.6px;position:absolute;top:-20px;left:50%}.cake-surprise-fire:first-child{animation:2s 6.5s infinite cakeFire}.cake-surprise-fire:nth-child(2){animation:1.5s 6.5s infinite cakeFire}.cake-surprise-fire:nth-child(3){animation:1s 6.5s infinite cakeFire}.cake-surprise-fire:nth-child(4){animation:.5s 6.5s infinite cakeFire}.cake-surprise-fire:nth-child(5){animation:.2s 6.5s infinite cakeFire}.cake-surprise-text{z-index:3;color:#d1d1d1;text-align:center;margin-top:-64px;padding:0 20px 40px;font-family:DM Sans,sans-serif;font-style:italic;position:relative}.cake-surprise-text h2{text-transform:lowercase;margin:0;font-size:1.6rem;font-weight:300}.cake-surprise-text p{margin:10px 0 0;font-size:1.2rem}.scene-wrap{position:relative}.scene{background:radial-gradient(circle at 50% 8%,#fffffff2,#0000 28%),linear-gradient(#fffaf2 0%,#ffe2e2 48%,#ffc8be 100%);border-radius:32px;min-height:70vh;position:relative;overflow:hidden;box-shadow:inset 0 -14px 30px #b75e6f24}.birthday-message{z-index:4;max-width:340px;position:absolute;top:28px;left:28px}.birthday-message h2{margin-top:12px;font-size:clamp(2.1rem,4vw,3.6rem)}.spotlight,.floor-glow{border-radius:999px;position:absolute;left:50%;transform:translate(-50%)}.spotlight{filter:blur(6px);background:linear-gradient(#ffffffb3,#fff0);width:220px;height:360px;top:74px}.floor-glow{filter:blur(22px);background:#ffedc1cc;width:60%;height:60px;bottom:86px}.character{z-index:3;width:132px;height:280px;animation:3.8s ease-in-out infinite floaty;position:absolute;bottom:130px}.character-left{left:10%}.character-right{animation-delay:.5s;right:10%}.head,.face,.hair,.body,.arm,.leg{position:absolute}.head{z-index:3;background:#ffdbbf;border-radius:42% 42% 46% 46%;width:72px;height:76px;top:18px;left:29px}.face{border-radius:inherit;background:radial-gradient(circle at 28% 40%,#2b2333 0 3px,#0000 4px),radial-gradient(circle at 72% 40%,#2b2333 0 3px,#0000 4px),radial-gradient(circle at 50% 64%,#ff9f94 0 7px,#0000 8px),linear-gradient(#0000 58%,#813b612e 58%);inset:0}.hair{background:#5f3559;border-radius:42px 42px 28px 28px;width:86px;height:68px;top:4px;left:22px}.hair-side{border-radius:42px 42px 34px 46px;height:82px}.body{border-radius:28px 28px 20px 20px;width:84px;height:110px;top:90px;left:24px}.body-blue{background:linear-gradient(#82cbff,#4e8fe6)}.body-pink{background:linear-gradient(#ffa4c5,#f46ca4)}.arm{transform-origin:top;background:#ffdbbf;border-radius:999px;width:20px;height:92px;top:104px}.arm-left{left:15px;rotate:18deg}.arm-right{right:14px;rotate:-18deg}.wave-arm{animation:2s ease-in-out infinite wave}.cut-arm{animation:1.15s ease-in-out infinite alternate cutCake}.leg{background:#ffdbbf;border-radius:999px;width:22px;height:88px;top:190px}.leg-left{left:42px}.leg-right{right:42px}.character-label{white-space:nowrap;position:absolute;bottom:-16px;left:50%;transform:translate(-50%)}.cake-table{z-index:2;width:min(52vw,320px);height:280px;position:absolute;bottom:98px;left:50%;transform:translate(-50%)}.cake-shadow{filter:blur(10px);background:#602a3d2e;border-radius:999px;width:86%;height:24px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.cake-top,.cake-middle,.cake-base,.table-top,.table-front,.knife{position:absolute;left:50%;transform:translate(-50%)}.cake-top{background:linear-gradient(#fffdf8,#ffd5e1);border-radius:999px;justify-content:center;gap:12px;width:144px;height:40px;padding-top:2px;display:flex;top:32px;box-shadow:inset 0 -8px #ffa1b280}.candle{background:repeating-linear-gradient(#fff 0 5px,#ffc94a 5px 10px);border-radius:999px;width:10px;height:30px;position:relative}.flame{background:radial-gradient(circle at 50% 30%,#fff5b2,#ff8f3e 70%);border-radius:60%;width:12px;height:16px;animation:.7s ease-in-out infinite alternate flicker;position:absolute;top:-11px;left:50%;transform:translate(-50%)}.cake-middle{background:linear-gradient(#ffb3c6,#ff89ab);border-radius:0 0 28px 28px;width:164px;height:70px;top:62px}.cake-base{background:linear-gradient(#ffecda,#ffd4a5);border-radius:999px;width:188px;height:20px;top:126px}.knife{transform-origin:12px;background:linear-gradient(90deg,#f4f6fb,#9ea7b8);border-radius:999px;width:92px;height:12px;top:72px;left:58%}.cake-table-active .knife{animation:1.2s ease-in-out infinite alternate knifeCut}.table-top{background:linear-gradient(#fff5dd,#e6b777);border-radius:999px;width:250px;height:24px;top:152px}.table-front{background:linear-gradient(#f3c17f,#d88a52);border-radius:0 0 24px 24px;width:220px;height:92px;top:168px}.confetti-layer{z-index:6;pointer-events:none;position:absolute;inset:0}.confetti{background:linear-gradient(#ff7ca8,#ffd35a);border-radius:4px;width:14px;height:22px;animation:linear infinite confettiFall;position:absolute;top:-10%}.confetti:nth-child(3n){background:linear-gradient(#7ec8ff,#4e8fe6)}.confetti:nth-child(4n){background:linear-gradient(#ffd07d,#ff8e6e)}@keyframes wave{0%{transform:rotate(10deg)}to{transform:rotate(-34deg)}}@keyframes cutCake{0%{transform:rotate(-10deg)translateY(0)}to{transform:rotate(26deg)translateY(14px)}}@keyframes knifeCut{0%{transform:translate(-50%)rotate(-22deg)translateY(-2px)}to{transform:translate(-50%)rotate(12deg)translateY(18px)}}@keyframes flicker{0%{transform:translate(-50%)scale(1)rotate(-3deg)}to{transform:translate(-50%)scale(1.08)rotate(4deg)}}@keyframes cakeFire{0%,to{background:#fef86180;transform:translateY(0)scale(1);box-shadow:0 0 40px 10px #f8e9d133}50%{background:#ff32001a;transform:translateY(-20px)scale(0);box-shadow:0 0 40px 20px #f8e9d133}}@keyframes cakeCandleIn{to{transform:translateY(0)}}@keyframes cakeDisplayShow{to{opacity:1}}@keyframes popperBurst{0%{opacity:0;transform:scale(.2)}18%{opacity:1}to{opacity:0;transform:scale(1.2)}}@keyframes popperDotLeftOne{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(28px,-78px)scale(1)}}@keyframes popperDotLeftTwo{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(12px,-92px)scale(.9)}}@keyframes popperDotLeftThree{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(40px,-54px)scale(.9)}}@keyframes popperDotLeftFour{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(22px,-64px)scale(.8)}}@keyframes popperDotRightOne{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(-28px,-78px)scale(1)}}@keyframes popperDotRightTwo{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(-12px,-92px)scale(.9)}}@keyframes popperDotRightThree{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(-40px,-54px)scale(.9)}}@keyframes popperDotRightFour{0%{opacity:0;transform:translate(0)scale(.2)}16%{opacity:1}to{opacity:0;transform:translate(-22px,-64px)scale(.8)}}@keyframes decorFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes confettiFall{0%{opacity:0;transform:translateY(-8vh)rotate(0)}10%{opacity:1}to{opacity:.9;transform:translateY(108vh)rotate(520deg)}}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shellShuffleBounce{0%{transform:translate(-6px)translateY(0)rotate(-4deg)}25%{transform:translate(0)translateY(-8px)rotate(-1deg)}50%{transform:translate(6px)translateY(-2px)rotate(3deg)}75%{transform:translate(1px)translateY(-10px)rotate(1deg)}to{transform:translate(-6px)translateY(0)rotate(-4deg)}}@keyframes shellArcLeft{0%{transform:translate(0)translateY(0)rotate(5deg)scale(1)}30%{transform:translate(-18px)translateY(-66px)rotate(1deg)scale(1.04)}55%{transform:translate(-34px)translateY(-96px)rotate(-2deg)scale(1.05)}80%{transform:translate(-14px)translateY(-42px)rotate(-4deg)scale(1.02)}to{transform:translate(0)translateY(0)rotate(-5deg)scale(1)}}@keyframes shellArcRight{0%{transform:translate(0)translateY(0)rotate(-5deg)scale(1)}28%{transform:translate(16px)translateY(-44px)rotate(-1deg)scale(1.02)}52%{transform:translate(30px)translateY(-74px)rotate(2deg)scale(1.03)}78%{transform:translate(12px)translateY(-32px)rotate(4deg)scale(1.01)}to{transform:translate(0)translateY(0)rotate(5deg)scale(1)}}@media (width<=980px){.platform-navbar,.platform-footer,.screen-topbar,.arcade-hero,.reveal-shell{flex-direction:column;grid-template-columns:1fr;align-items:flex-start}.platform-stage{width:calc(100% - 28px)}.platform-stage-game{width:100%}.game-card-grid{grid-template-columns:1fr}.screen-stats{justify-content:flex-start}.scene,.level-one-arena,.level-two-arena{min-height:60vh}.platform-stage-game .arcade-screen{min-height:calc(100vh - 84px)}.genie-composer{grid-template-columns:1fr}}@media (width<=680px){.platform-navbar,.platform-footer,.platform-stage,.arcade-home,.arcade-screen,.reveal-shell{padding-left:14px;padding-right:14px}.platform-navbar,.platform-footer{padding-top:14px;padding-bottom:14px}.platform-stage{width:calc(100% - 16px);margin-top:10px}.platform-stage-game{width:100%;margin-top:0}.session-warning,.arcade-home,.arcade-screen,.reveal-shell{border-radius:24px}.platform-stage-game .arcade-screen{border-radius:0;padding:14px}.nav-links,.nav-actions,.footer-links,.screen-stats,.game-instructions{flex-wrap:wrap}.arcade-copy h1,.reveal-sidebar h1{font-size:clamp(2.4rem,12vw,3.8rem)}.game-card h2,.screen-topbar h2{font-size:1.8rem}.falling-item{width:70px;height:92px}.falling-bomb{width:66px;height:66px}.platform-stage-game .level-one-arena,.platform-stage-game .level-two-arena{border-radius:24px 24px 0 0;min-height:calc(100vh - 218px)}.real-shell-button{width:15%}.birthday-message{max-width:250px;top:18px;left:18px}.cake-surprise-stage{min-height:62vh}.cake-banner{width:94%}.cake-banner-flags{gap:5px}.cake-banner-flag{width:24px;height:34px;padding-top:5px;font-size:.58rem}.cake-side-balloons{gap:8px;top:120px}.cake-side-balloons-left{left:12px}.cake-side-balloons-right{right:12px}.decor-balloon{width:34px;height:48px}.party-popper{width:56px;height:88px;bottom:30px}.party-popper-left{left:10px}.party-popper-right{right:10px}.cake-surprise-candle{bottom:110px}.cake-surprise-text{margin-top:-48px}.character{width:108px;height:240px;bottom:160px}.character-left{left:2%}.character-right{right:2%}.head{width:62px;height:66px;left:23px}.hair{width:74px;height:60px;left:17px}.body{width:72px;height:96px;left:18px}.arm{height:82px}.leg{height:70px;top:170px}.leg-left{left:34px}.leg-right{right:34px}.cake-table{width:270px;bottom:104px}.table-top{width:220px}.table-front{width:190px}}
