html,body,#root{margin:0;min-height:100%}body{background:var(--ds-page)}.arcade{max-width:680px;margin:0 auto}.scoreboard{display:flex;justify-content:space-between;padding:0 0 12px}.scoreboard>div{display:flex;flex-direction:column}.eyebrow{font-size:12px;color:var(--ds-ink-2)}.scoreboard strong{font-size:30px;line-height:36px;font-weight:600}.scoreboard small{font-size:16px;color:var(--ds-ink-2)}.right{text-align:right}.meter{height:6px;background:var(--ds-hairline);border-radius:9px;overflow:hidden;margin-bottom:14px}.meter>div{height:100%;background:var(--ds-teal);transition:width .2s}.arena{height:420px;position:relative;background:#d9eeed;border-radius:18px;overflow:hidden;isolation:isolate;user-select:none;touch-action:manipulation}.kiosk{position:absolute;bottom:0;left:-22%;width:144%;height:42%}.cloud{position:absolute;background:#f7fcf9;border-radius:99px;width:90px;height:24px;opacity:.8}.cloud:before{content:"";position:absolute;border-radius:50%;width:43px;height:36px;background:inherit;left:17px;top:-17px}.cloud-one{top:25%;left:10%}.cloud-two{top:12%;right:5%;transform:scale(.75)}.bird{border:0;padding:0;background:none;position:absolute;width:64px;height:64px;cursor:crosshair;animation:fly 2.3s ease-in-out infinite alternate;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.bird svg{width:100%;height:100%;filter:drop-shadow(0 4px 1px #47635f22)}.bird:active{filter:brightness(1.15)}.bird:focus-visible{outline:3px solid var(--ds-ink);border-radius:50%}.is-paused .bird{animation-play-state:paused}.splash{position:absolute;inset:0;background:#d9eeed}.splash>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:40% 50%;opacity:.58}.splash-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#f9f7edbb,#f9f7ed55);padding:20px}.badge{font-size:10px;letter-spacing:.1em;font-weight:600;line-height:1.5}.splash h2,.overlay h2{font-family:inherit;font-size:32px;line-height:1.05;letter-spacing:-.04em;margin:18px 0 10px;font-weight:800}.splash p,.overlay p{font-size:14px;line-height:22px;margin:4px 0 20px}.overlay{position:absolute;inset:0;z-index:4;background:#fcf8eeef;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.victory{background:#f5e7baf2}.victory h2{font-size:clamp(27px,6vw,52px);line-height:1.1;overflow-wrap:anywhere;max-width:100%}.result{font-size:12px!important;margin-top:0!important}.medal{font-size:48px}.confetti{font-size:30px;color:#b27935;letter-spacing:8px;margin-bottom:20px}.below{display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:12px;line-height:18px;padding:12px 0;min-height:42px}.rank{font-weight:600;color:var(--ds-ink)}.below>span:last-child{white-space:nowrap;color:var(--ds-ink-2)}.controls{display:flex;flex-wrap:wrap;gap:8px}.controls button{min-height:44px}.hint{font-size:12px;line-height:19px;color:var(--ds-ink-2);margin:12px 0 0}.pop{position:absolute;font-size:24px;color:#365e53;font-weight:800;pointer-events:none;animation:pop .6s ease-out forwards;z-index:3}@keyframes float{0%{transform:translateY(0) rotate(-5deg)}to{transform:translateY(20px) rotate(5deg)}}@keyframes pop{to{transform:translateY(-38px);opacity:0}}@media(min-width:768px){.arena{height:470px}.bird{width:78px;height:78px}.splash h2{font-size:44px}.kiosk{width:100%;left:0}}@media(max-width:350px){.arena{height:390px}.bird{width:58px;height:58px}.splash h2{font-size:28px}.splash-copy{padding:12px}.badge{font-size:9px}.controls{gap:5px}}@media(prefers-reduced-motion:reduce){.bird,.pop{animation:none}.meter>div{transition:none}}@keyframes fly{0%{transform:translate(0) rotate(-8deg)}35%{transform:translate(24px,48px) rotate(8deg)}70%{transform:translate(32px,12px) rotate(-5deg)}to{transform:translate(6px,60px) rotate(10deg)}}.victory{justify-content:center;padding:14px 12px;gap:0}.victory h2{font-size:clamp(26px,6vw,40px);margin:8px 0 0;animation:announce .45s .25s both}.colonel{width:142px;height:164px;flex-shrink:0;animation:entrance .7s cubic-bezier(.2,.9,.25,1.15) both}.shout-mouth{transform-origin:101px 105px;animation:shout .2s .45s 8 alternate}.victory .victory-line{font-size:12px;line-height:17px;margin:2px 0 6px}.victory .result{margin:0 0 8px!important}.win-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.audio-warning{font-size:11px;line-height:15px;margin-top:6px}.win-actions button{min-height:44px}.victory .badge{letter-spacing:.06em}@keyframes entrance{0%{transform:translate(240px) rotate(20deg);opacity:0}to{transform:translate(0) rotate(0);opacity:1}}@keyframes announce{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}@keyframes shout{0%{transform:scaleY(.6)}to{transform:scaleY(1.5)}}@media(prefers-reduced-motion:reduce){.colonel,.victory h2,.shout-mouth{animation:none}}.milestone{position:absolute;right:8px;bottom:8px;z-index:3;display:flex;flex-direction:column;align-items:center;pointer-events:none;animation:milestone-in .35s both}.milestone>span{background:#fff9df;border:2px solid #3b3b40;border-radius:10px;padding:7px 9px;font-size:15px;line-height:18px;font-weight:800;box-shadow:0 3px #3b3b4022}.milestone .colonel{width:100px;height:118px;animation:none}.dance{animation:dance .65s ease-in-out infinite alternate;transform-origin:50% 90%;height:164px;flex-shrink:0}.dance .colonel{animation:entrance .65s both}.dance .shout-mouth{animation:shout .18s infinite alternate}.victory-line{z-index:1}.is-paused .milestone{display:none}@keyframes dance{0%{transform:translate(-13px) rotate(-10deg)}50%{transform:translateY(-7px) rotate(0)}to{transform:translate(13px) rotate(10deg)}}@keyframes milestone-in{0%{transform:translate(150px);opacity:0}to{transform:translate(0);opacity:1}}@media(prefers-reduced-motion:reduce){.dance,.milestone,.dance .colonel,.dance .shout-mouth{animation:none}}.arena{background:radial-gradient(ellipse at 50% 30%,#373458,#141b32 75%);border:1px solid #575778}.cloud{display:none}.kiosk{opacity:.6;filter:saturate(.5);height:32%;bottom:44px}.club-decor{position:absolute;inset:0;pointer-events:none}.club-sign{position:absolute;top:48px;left:50%;transform:translate(-50%) rotate(-3deg);padding:7px 11px;border:2px solid #e3adff;color:#f3dfff;background:#29213f;font-size:11px;font-weight:800;white-space:nowrap;letter-spacing:.1em;box-shadow:0 0 22px #a461ce66}.disco-ball{position:absolute;width:42px;height:42px;left:calc(50% - 21px);top:-6px;border-radius:50%;background:repeating-conic-gradient(#a0a6c7 0deg 20deg,#d6f2e7 20deg 40deg);box-shadow:0 0 30px #9be1de77;animation:ball-spin 9s linear infinite}.spotlight{position:absolute;top:-20px;width:45%;height:120%;clip-path:polygon(47% 0,53% 0,100% 100%,0 100%);transform-origin:50% 0;opacity:.16;animation:sweep 5s ease-in-out infinite alternate;z-index:1}.light-a{left:-10%;background:linear-gradient(#e3a8ff,transparent);transform:rotate(-18deg)}.light-b{right:-10%;background:linear-gradient(#77ffe2,transparent);animation-delay:-2s}.light-c{left:30%;background:linear-gradient(#ffc96b,transparent);animation-delay:-4s}.dance-floor{position:absolute;inset:65% -25% -40%;transform:perspective(250px) rotateX(35deg);background:repeating-conic-gradient(#654682 0% 25%,#2c666b 0% 50%) 0 0/70px 70px;opacity:.8;border-top:2px solid #d8a5ff}.crowd{position:absolute;left:-4%;right:-4%;bottom:0;display:flex;align-items:end;justify-content:center;z-index:2;opacity:.75}.crowd span{width:14%;margin-left:-2%;animation:club-bounce .6s ease-in-out infinite alternate;transform-origin:50% 90%}.crowd svg{display:block;width:100%}.chaos-chip{position:absolute;top:10px;left:10px;color:#fff1c5;border:1px solid #e6bd6d66;background:#171827cc;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:800;z-index:2;pointer-events:none}.bird{z-index:2}.bird svg{filter:drop-shadow(0 3px 1px #0008)}.disco .spotlight,.rave .spotlight{opacity:.36}.rave .bird{animation-name:chaos-fly}.rave .club-sign{color:#b6fff0;border-color:#b6fff0;box-shadow:0 0 24px #73ffe766}.rave .dance-floor{background-size:48px 48px}.pop{color:#fff2a8;text-shadow:0 2px 3px #19132c;white-space:nowrap;font-size:18px;z-index:4}.pop i{position:absolute;left:0;top:0;font-size:22px;font-style:normal;animation:scatter-a .6s ease-out forwards}.pop i:nth-child(2){animation-name:scatter-b}.pop i:nth-child(3){animation-name:scatter-c}.victory{background:linear-gradient(#282441eb,#223a4ded);color:#fff4d6;z-index:5}.victory .badge{color:#b5ffec}.victory .result{color:#e4e7ed}.victory .dance{filter:drop-shadow(0 0 18px #c697ff77)}.phase-won .crowd{z-index:6;opacity:.9;pointer-events:none}.phase-won .crowd span{animation-duration:.3s}.splash-copy{background:linear-gradient(#171b32c9,#25223bc9);color:#fff4db}.splash>img{opacity:.3}.splash .badge{color:#b7ffe6}.splash-copy h2{text-shadow:0 2px 18px #0004}.splash-copy p{color:#e2e4ec}.is-paused .club-decor *{animation-play-state:paused}.calm .bird,.calm .club-decor *,.calm .dance,.calm .dance *,.calm .milestone{animation:none!important}.calm .spotlight{opacity:.12}.calm .pop i{display:none}.calm .pop{animation:none}.hint{max-width:62ch}@keyframes ball-spin{to{transform:rotate(360deg)}}@keyframes sweep{0%{transform:rotate(-25deg)}to{transform:rotate(25deg)}}@keyframes club-bounce{0%{transform:translateY(0) rotate(-9deg)}to{transform:translateY(-12px) rotate(9deg)}}@keyframes chaos-fly{0%{transform:translateY(10px) rotate(-13deg)}25%{transform:translate(22px,55px) rotate(17deg)}55%{transform:translate(-8px,26px) rotate(-16deg)}to{transform:translate(20px,65px) rotate(14deg)}}@keyframes scatter-a{to{transform:translate(-30px,-40px) rotate(-50deg);opacity:0}}@keyframes scatter-b{to{transform:translate(40px,-10px) rotate(60deg);opacity:0}}@keyframes scatter-c{to{transform:translate(15px,35px) rotate(90deg);opacity:0}}@media(prefers-reduced-motion:reduce){.club-decor *,.rave .bird,.pop i{animation:none!important}.spotlight{opacity:.12}}@media(max-width:350px){.victory .result{font-size:10px!important}.club-sign{font-size:9px}.victory .dance,.victory .colonel{height:150px}.victory h2{font-size:25px}}.arena{contain:layout paint}.phase-won .crowd{bottom:-15px}.flyby{position:absolute;z-index:3;pointer-events:none;display:flex;flex-direction:column;align-items:center;width:96px}.flyby>span{background:#fff9df;border:2px solid #3b3b40;border-radius:10px;padding:4px 7px;font-size:11px;line-height:14px;font-weight:800;white-space:nowrap;box-shadow:0 3px #3b3b4022}.flyby .colonel{width:90px;height:108px;animation:flyby-bob .7s ease-in-out infinite alternate}.flyby.rtl .colonel{animation-name:flyby-bob-flip}.flyby .shout-mouth{animation:shout .18s infinite alternate}.flyby.ltr{left:-120px;animation:flyby-ltr 3.4s linear both}.flyby.rtl{right:-120px;animation:flyby-rtl 3.4s linear both}.is-paused .flyby,.is-paused .flyby *{animation-play-state:paused}.calm .flyby{display:none}@keyframes flyby-ltr{0%{transform:translate(0) rotate(-6deg)}to{transform:translate(115vw) rotate(6deg)}}@keyframes flyby-rtl{0%{transform:translate(0) rotate(6deg)}to{transform:translate(-115vw) rotate(-6deg)}}@keyframes flyby-bob{0%{transform:translateY(-9px) rotate(-5deg)}to{transform:translateY(11px) rotate(5deg)}}@keyframes flyby-bob-flip{0%{transform:scaleX(-1) translateY(-9px) rotate(-5deg)}to{transform:scaleX(-1) translateY(11px) rotate(5deg)}}@media(prefers-reduced-motion:reduce){.flyby{display:none}}.inferno .spotlight{opacity:.42}.inferno .bird{animation-name:chaos-fly}.inferno .club-sign{color:#ffc2d2;border-color:#ff8fb0;box-shadow:0 0 26px #ff739699}.inferno .dance-floor{background-size:38px 38px}.arena{overscroll-behavior:contain}.board{margin:18px 0 0;padding:14px;border:1px solid var(--ds-hairline);border-radius:14px;background:#fff}.board h2{margin:0 0 4px;font-size:20px}.board-rule,.board-note{font-size:12px;line-height:18px;color:var(--ds-ink-2);margin:0 0 10px}.board-form{margin:10px 0 14px;padding:10px;border-radius:10px;background:#fff7e0;border:1px solid #e8d08a}.board-form label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.board-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.board-row input{flex:1 1 140px;min-width:0;font:inherit;font-size:16px;padding:10px 12px;border:1px solid #8a8190;border-radius:10px;min-height:44px}.board-msg{margin:8px 0;font-size:14px;font-weight:600}.board-empty{margin:8px 0;color:var(--ds-ink-2);font-size:14px}.board-list{list-style:none;margin:6px 0 0;padding:0}.board-list li{display:grid;grid-template-columns:28px 1fr auto auto;gap:10px;align-items:baseline;padding:8px 0;border-top:1px solid var(--ds-hairline);font-size:15px}.board-list .pos{font-weight:700;color:var(--ds-teal)}.board-list .who{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-list .t{font-variant-numeric:tabular-nums;font-weight:700}.board-list .m{font-size:12px;color:var(--ds-ink-2);min-width:48px;text-align:right}.splash-lb{font-size:12px!important;opacity:.85;margin:0 0 10px!important}.victory .win-actions,.victory .win-actions button{position:relative;z-index:6}.victory .fbtn-secondary{color:#fff;border-color:#ffffffb3}@media(min-width:560px){.phase-won .crowd{bottom:-52px}}:root{--ds-page:#f4efec;--ds-ink:#1d1b20;--ds-ink-2:#5b5560;--ds-hairline:#d9d1cc;--ds-teal:#0f766e}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ds-ink);background:var(--ds-page)}.page-card{max-width:720px;margin:0 auto;padding:20px 16px 40px}.page-header h1{font-size:clamp(26px,6vw,36px);line-height:1.1;margin:8px 0 6px}.page-header p{margin:0 0 16px;color:var(--ds-ink-2);line-height:1.45}.page-closing{margin-top:22px;font-size:12px;line-height:18px;color:var(--ds-ink-2)}.fbtn{font:inherit;font-weight:600;border:0;border-radius:999px;padding:11px 18px;background:#1d1b20;color:#fff;cursor:pointer;min-height:44px}.fbtn:disabled{opacity:.45;cursor:not-allowed}.fbtn-secondary{background:transparent;color:var(--ds-ink);border:1px solid var(--ds-hairline)}.fbtn:focus-visible,.board input:focus-visible{outline:3px solid #0f766e;outline-offset:2px}
