:root{--bg:#07060b;--border:#ffffff1f;--text:#f4f2ff;--muted:#f4f2ff9e;--brand:#9146ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background-color:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--bg);overscroll-behavior:none;-webkit-font-smoothing:antialiased;width:100%;height:100%;margin:0;padding:0;overflow:hidden}.stage{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;position:fixed;inset:0;overflow:hidden}.stage__canvas,.stage__canvas canvas{touch-action:none;width:100%;height:100%;display:block}.stage__poster{background:radial-gradient(800px 420px at 50% 35%, #9146ff59, transparent 70%), var(--bg);justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.poster__sky{z-index:0;position:absolute;inset:0;overflow:hidden}.poster__aurora{will-change:transform;border-radius:50%;width:70vmax;height:70vmax;position:absolute}.poster__aurora--a{background:radial-gradient(circle,#9146ff80,#0000 65%);animation:19s ease-in-out infinite aurora-a;top:-28vmax;left:-18vmax}.poster__aurora--b{background:radial-gradient(circle,#25f4ee4d,#0000 65%);animation:24s ease-in-out infinite aurora-b;bottom:-30vmax;right:-22vmax}.poster__stars{will-change:transform, opacity;background-image:radial-gradient(1.7px 1.7px at 20% 30%,#ffffffd9,#0000 100%),radial-gradient(1.3px 1.3px at 70% 60%,#d7c8ffb3,#0000 100%),radial-gradient(1.1px 1.1px at 45% 85%,#ffffff80,#0000 100%);background-size:190px 140px,130px 170px,90px 110px;animation:42s linear infinite stars-drift,5.5s ease-in-out infinite stars-twinkle;position:absolute;inset:-10%}.poster__orbits{pointer-events:none;position:absolute;inset:0;overflow:hidden}.poster__orbit{width:0;height:0;animation:orbit-layer var(--dur) step-end var(--delay) infinite;position:absolute;top:50%;left:50%}.poster__flyer{aspect-ratio:1;width:clamp(34px,7.5vmin,66px);animation:orbit-sweep var(--dur) linear var(--delay) infinite;will-change:transform, opacity;position:absolute;top:0;left:0}.poster__flyer-body{width:100%;height:100%;transform:rotate(calc(var(--tilt) * -1));animation:2.6s ease-in-out infinite flyer-bob;position:relative}.poster__flyer img{z-index:1;object-fit:cover;border:2px solid #ffffff8c;border-radius:20%;width:100%;height:100%;display:block;position:relative;box-shadow:inset 0 -3px #00000059,0 10px 22px #00000073}.poster__wing{filter:drop-shadow(0 0 9px #cdb7ff99);background:linear-gradient(210deg,#fffffffa,#cdb7ffe6 50%,#25f4eebf);width:104%;height:118%;position:absolute;bottom:12%}.poster__wing--left{clip-path:polygon(8% 2%,40% 30%,70% 58%,98% 92%,66% 96%,74% 74%,44% 82%,52% 58%,26% 64%,32% 40%,10% 44%);transform-origin:96% 90%;animation:.44s ease-in-out infinite alternate wing-flap-left;right:62%}.poster__wing--right{clip-path:polygon(92% 2%,60% 30%,30% 58%,2% 92%,34% 96%,26% 74%,56% 82%,48% 58%,74% 64%,68% 40%,90% 44%);transform-origin:4% 90%;animation:.44s ease-in-out infinite alternate wing-flap-right;left:62%}@keyframes wing-flap-left{0%{transform:rotate(26deg)scale(.88,.72)}to{transform:rotate(-12deg)scale(1)}}@keyframes wing-flap-right{0%{transform:rotate(-26deg)scale(.88,.72)}to{transform:rotate(12deg)scale(1)}}@keyframes flyer-bob{0%,to{transform:rotate(calc(var(--tilt) * -1)) translateY(-4%)}50%{transform:rotate(calc(var(--tilt) * -1)) translateY(4%)}}@keyframes orbit-sweep{0%,to{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(var(--ra), 0) rotate(calc(var(--tilt) * -1)) scale(1.19);opacity:1}12.5%{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(calc(var(--ra) * .707), calc(var(--rb) * .707)) rotate(calc(var(--tilt) * -1)) scale(1.134);opacity:.94}25%{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(0, var(--rb)) rotate(calc(var(--tilt) * -1)) scale(1);opacity:.85}37.5%{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(calc(var(--ra) * -.707), calc(var(--rb) * .707)) rotate(calc(var(--tilt) * -1)) scale(.866);opacity:.72}50%{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(calc(var(--ra) * -1), 0) rotate(calc(var(--tilt) * -1)) scale(.81);opacity:.62}62.5%{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(calc(var(--ra) * -.707), calc(var(--rb) * -.707)) rotate(calc(var(--tilt) * -1)) scale(.866);opacity:.72}75%{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(0, calc(var(--rb) * -1)) rotate(calc(var(--tilt) * -1)) scale(1);opacity:.85}87.5%{transform:translate(-50%, -50%) rotate(var(--tilt)) translate(calc(var(--ra) * .707), calc(var(--rb) * -.707)) rotate(calc(var(--tilt) * -1)) scale(1.134);opacity:.94}}@keyframes orbit-layer{0%{z-index:3}26%{z-index:0}74%{z-index:3}}.poster__content{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:.4rem;padding:clamp(.75rem,3vh,1.5rem) clamp(.75rem,3vh,1.5rem) clamp(52px,10vh,80px);display:flex;position:relative}.poster__portrait{aspect-ratio:1;border:2px solid #ffffff38;border-radius:22%;width:clamp(72px,min(18vw,20vh),132px);margin-bottom:clamp(.6rem,2.5vh,1.1rem);animation:.6s cubic-bezier(.2,.8,.3,1.45) backwards block-in,4.6s ease-in-out .7s infinite portrait-float;overflow:hidden;box-shadow:inset 0 -3px #00000059,0 14px 30px #00000073,0 0 26px #9d6cff47}.poster__portrait img{object-fit:cover;width:100%;height:100%;display:block}@keyframes portrait-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.poster__blocks{justify-content:center;gap:clamp(.45rem,2.5vw,1rem);margin-bottom:clamp(.6rem,3vh,2rem);display:flex}.poster__block{aspect-ratio:1;width:clamp(32px,min(9vw,11vh),52px);color:var(--accent);cursor:pointer;animation:.55s cubic-bezier(.2,.8,.3,1.45) backwards block-in,3.1s ease-in-out infinite block-bob;animation-delay:calc(var(--i) * 80ms), calc(.6s + var(--i) * .16s);background:linear-gradient(#ffffff29,#ffffff0a);border:1px solid #fff3;border-radius:11px;place-items:center;padding:0;display:grid;box-shadow:inset 0 -3px #00000059,0 10px 22px #0006}.poster__block:hover,.poster__block:focus-visible{border-color:var(--accent);box-shadow:inset 0 -3px 0 #00000059, 0 10px 26px #00000073, 0 0 18px color-mix(in srgb, var(--accent) 55%, transparent);background:linear-gradient(#ffffff47,#ffffff14);outline:none}.poster__block:active{box-shadow:inset 0 2px 6px #00000080,0 4px 10px #0006}.stage__handle{color:var(--muted);letter-spacing:.08em;margin:0;font-size:.95rem;animation:.6s ease-out .15s backwards rise-in}.stage__title{letter-spacing:-.03em;margin:0;font-size:clamp(2.4rem,min(12vw,16vh),6rem);font-weight:800;line-height:1}.stage__letter{background:linear-gradient(120deg,#fff,#cdb7ff 55%,#25f4ee) 0 0/700% 100%;background-position:var(--pos,50%) 0;color:#0000;animation:.65s cubic-bezier(.2,.85,.3,1.4) backwards letter-drop,4.2s ease-in-out infinite letter-float;animation-delay:calc(.2s + var(--i) * 70ms), calc(.9s + var(--i) * .13s);-webkit-background-clip:text;background-clip:text;display:inline-block}.stage__tagline{color:var(--muted);max-width:34ch;margin:0 0 clamp(.7rem,3vh,1.5rem);animation:.6s ease-out .55s backwards rise-in}.button--play{animation:.6s ease-out .75s backwards rise-in,2.4s ease-in-out 1.4s infinite play-glow}.poster__hint{letter-spacing:.04em;color:#f4f2ff73;margin:clamp(.5rem,2vh,1rem) 0 0;font-size:.82rem;animation:.6s ease-out 1s backwards rise-in}.poster__badges{flex-wrap:wrap;justify-content:center;gap:.4rem;max-width:34rem;margin:clamp(.6rem,2vh,1.1rem) auto 0;animation:.6s ease-out 1.15s backwards rise-in;display:flex}.badge{color:#f4f2ff66;background:#120e1c8c;border:1px solid #f4f2ff1f;border-radius:999px;align-items:center;gap:.35rem;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;display:inline-flex}.badge__icon{filter:grayscale();opacity:.55;font-size:.95rem}.poster__badges-label{letter-spacing:.12em;text-transform:uppercase;color:#f4f2ff59;align-self:center;margin-right:.15rem;font-size:.7rem}.badge--earned{color:#ffe9a8;background:#ffd87a1f;border-color:#ffd87a8c}.badge--earned .badge__icon{filter:none;opacity:1}.badge--icon-only .badge__label{display:none}.badge--icon-only{padding:.3rem .45rem}.poster__ground{z-index:1;background:linear-gradient(#ffffff14,#0000 45%),repeating-linear-gradient(90deg,#2b2040 0 44px,#221936 44px 48px),repeating-linear-gradient(0deg,#0000 0 22px,#00000059 22px 24px);border-top:2px solid #ffffff29;height:clamp(42px,8vh,68px);animation:5s linear infinite ground-scroll;position:absolute;bottom:0;left:0;right:0}@keyframes aurora-a{0%,to{transform:translate(0,0)}50%{transform:translate(6vmax,4vmax)}}@keyframes aurora-b{0%,to{transform:translate(0,0)}50%{transform:translate(-7vmax,-5vmax)}}@keyframes stars-drift{to{transform:translate(-190px)}}@keyframes stars-twinkle{0%,to{opacity:.55}50%{opacity:1}}@keyframes block-in{0%{opacity:0;transform:translateY(-26px)scale(.75)}to{opacity:1;transform:none}}@keyframes block-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes letter-drop{0%{opacity:0;transform:translateY(-90%)rotate(-7deg)}to{opacity:1;transform:none}}@keyframes letter-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes play-glow{0%,to{box-shadow:0 12px 30px #9146ff66}50%{box-shadow:0 12px 38px #9146ffd9}}@keyframes ground-scroll{to{background-position:0 0,-96px 0,0 0}}.button{font:inherit;color:var(--text);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:.5rem;padding:.85rem 2rem;font-weight:650;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.button--primary{background:linear-gradient(120deg, var(--brand), #b06bff);box-shadow:0 12px 30px #9146ff66}.button--ghost{border:1px solid var(--border);background:#ffffff0f}.button:hover:not(:disabled){transform:translateY(-2px)}.button:disabled{opacity:.6;cursor:default}.stage__hud{z-index:10;top:max(.9rem, env(safe-area-inset-top));left:max(.9rem, env(safe-area-inset-left));pointer-events:none;flex-wrap:wrap;gap:.5rem;max-width:calc(100% - 12rem);display:flex;position:absolute}.pill{border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a081099;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.8rem;font-weight:650;display:inline-flex}.pill--toast{color:#bffdfb;border-color:#25f4ee80}.pill--level{color:#d9c6ff;border-color:#9146ff8c}.pill__dim{opacity:.55}.stage__points{z-index:10;top:max(.9rem, env(safe-area-inset-top));right:calc(max(.9rem, env(safe-area-inset-right)) + 3rem);font-variant-numeric:tabular-nums;color:#ffe9a8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#0a081099;border:1px solid #ffd16673;border-radius:999px;align-items:center;height:2.5rem;padding:0 .85rem;font-size:.85rem;font-weight:750;display:inline-flex;position:absolute}.stage__banner{z-index:15;inset-inline:0;pointer-events:none;text-align:center;text-shadow:0 2px 18px #05040ae6;flex-direction:column;align-items:center;gap:.35rem;animation:.26s ease-out both banner-in;display:flex;position:absolute;top:22%}.stage__banner strong{letter-spacing:.04em;color:#25f4ee;font-size:clamp(1.6rem,6vw,2.6rem);font-weight:800}.stage__banner--over strong{color:#ff6b81}.stage__banner span{color:var(--muted,#b9aecd);font-size:.85rem}.stage__banner-score{color:#ffe9a8;font-size:1.1rem;font-weight:750}.stage__score{letter-spacing:.01em;color:#ffe9a8;margin:0;font-size:clamp(2.2rem,9vw,3.2rem);font-weight:800;line-height:1}.stage__badge{z-index:15;pointer-events:none;white-space:nowrap;background:#120e1ce0;border:1px solid #ffd87a8c;border-radius:999px;align-items:center;gap:.6rem;padding:.55rem .95rem;animation:.32s ease-out both badge-in;display:flex;position:absolute;bottom:clamp(1rem,5vh,2.5rem);left:50%;transform:translate(-50%);box-shadow:0 10px 30px #05040a8c}.stage__badge-icon{font-size:1.4rem}.stage__badge strong{letter-spacing:.12em;text-transform:uppercase;color:#f4f2ff8c;font-size:.68rem;display:block}.stage__badge-name{color:#ffe9a8;font-size:.95rem;font-weight:750}.stage__modal-badges{flex-wrap:wrap;justify-content:center;gap:.35rem;margin:0;display:flex}.stage__stats{justify-content:center;gap:clamp(1.2rem,6vw,2.4rem);margin:0;display:flex}.stage__stats dt{letter-spacing:.12em;text-transform:uppercase;color:#f4f2ff73;font-size:.68rem}.stage__stats dd{color:#f4f2ff;justify-content:center;align-items:center;gap:.35rem;margin:.2rem 0 0;font-size:1.25rem;font-weight:750;display:flex}.stage__stat-flag{letter-spacing:.1em;text-transform:uppercase;color:#ffe9a8;background:#ffd87a2e;border-radius:999px;padding:.1rem .4rem;font-size:.6rem;font-weight:700}@keyframes badge-in{0%{opacity:0;transform:translate(-50%,16px)scale(.94)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes banner-in{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}.stage__modal{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#05040acc;place-items:center;padding:1.25rem;display:grid;position:absolute;inset:0}.stage__modal-card{text-align:center;border:1px solid var(--border);background:linear-gradient(160deg,#9146ff38,#14101ef5);border-radius:20px;flex-direction:column;align-items:center;gap:.6rem;max-width:420px;padding:1.75rem;display:flex}.stage__modal-card h2{margin:0;font-size:1.35rem}.stage__modal-card p{color:var(--muted);margin:0}.stage__modal-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.5rem;display:flex}.stage__modal-note{opacity:.7;font-size:.82rem}@media (height<=460px){.poster__blocks{margin-bottom:.35rem}.poster__badges{display:none}.poster__block{border-radius:8px;width:clamp(26px,9vh,38px)}.poster__portrait{width:clamp(52px,16vh,96px);margin-bottom:.4rem}.poster__orbits{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}.poster__aurora,.poster__stars,.poster__portrait,.poster__block,.stage__letter,.stage__handle,.stage__tagline,.button--play,.poster__hint,.poster__badges,.poster__ground,.stage__mute--locked{opacity:1;transform:none;animation:none!important}.poster__orbits{display:none}}.stage__mute{z-index:10;top:max(.9rem, env(safe-area-inset-top));right:max(.9rem, env(safe-area-inset-right));width:2.5rem;height:2.5rem;color:inherit;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#100c1a99;border:1px solid #ffffff24;border-radius:999px;place-items:center;font-size:1.1rem;line-height:1;display:grid;position:absolute}.stage__mute:hover{background:#1e1630cc}.stage__mute--locked{border-color:#9146ffb3;animation:1.6s ease-in-out infinite mute-pulse}@keyframes mute-pulse{0%,to{box-shadow:0 0 #9146ff80}50%{box-shadow:0 0 0 8px #9146ff00}}.language-picker{bottom:.9rem;z-index:6;align-items:center;gap:.4rem;display:inline-flex;position:absolute;inset-inline-end:.9rem}.language-picker__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.language-picker select{appearance:none;border:1px solid var(--border);color:var(--muted);font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07060bb8;border-radius:999px;padding:.35rem .7rem;font-size:.78rem}.language-picker select:hover,.language-picker select:focus-visible{color:var(--text);border-color:var(--brand)}
