.cs-game{width:min(100%,480px);height:100dvh;padding:max(10px,env(safe-area-inset-top))12px max(12px,env(safe-area-inset-bottom));grid-template:"top""ticket""coach""stage"minmax(0,1fr)"controls"/minmax(0,1fr);gap:8px;margin:0 auto;display:grid;overflow:hidden}.cs-a-top{grid-area:top}.cs-a-ticket{grid-area:ticket;padding-top:6px}.cs-a-coach{grid-area:coach}.cs-a-stage{grid-area:stage;min-height:140px}.cs-a-controls{grid-area:controls}.cs-coach{min-height:58px}@media (max-height:720px){.cs-game{gap:6px}.cs-ticket-def{display:none}.cs-coach{min-height:46px}.cs-coach svg{width:44px;height:44px}.cs-controls button{min-height:58px!important}}@media (max-height:560px) and (min-width:560px){.cs-game{grid-template:"top top""stage ticket""stage coach""stage controls"1fr/minmax(0,1fr) minmax(280px,340px);column-gap:14px;width:min(100%,980px)}.cs-a-controls{align-self:end}.cs-ticket-def{display:block}}.cs-mast{z-index:1;opacity:.8;background:repeating-linear-gradient(135deg,#0000 0 7px,#facc15b3 7px 9px);border-left:2px solid #facc15cc;border-right:2px solid #facc15cc;width:14px;position:absolute;top:0;bottom:12px;left:3.5%}.cs-jib{z-index:4;background:repeating-linear-gradient(135deg,#0f172a80 0 7px,#facc15d9 7px 9px);border-top:2px solid #facc15;border-bottom:2px solid #facc15;width:70%;height:14px;position:absolute;top:5px;left:0}.cs-trolley{z-index:5;background:#475569;border:2px solid #facc15;border-radius:4px;width:32px;height:18px;position:absolute;top:3px;left:calc(50% - 16px)}.cs-tape{z-index:4;background:repeating-linear-gradient(135deg,#facc15 0 12px,#1c1917 12px 24px);height:12px;position:absolute;left:-6px;right:-6px;transform:rotate(-.7deg);box-shadow:0 2px 5px #00000080}.cs-tape-label{color:#facc15;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;background:#1c1917;border-radius:8px 8px 0 0;padding:2px 9px;font-size:10px;font-weight:900;position:absolute;top:-19px;left:13%}.cs-stage-danger{animation:1.1s ease-in-out infinite cs-danger-glow}.cs-tape-flash{animation:.7s steps(2,jump-none) infinite cs-tape-flash}@keyframes cs-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes cs-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px,2px)}45%{transform:translate(5px,-2px)}70%{transform:translate(-3px,1px)}}@keyframes cs-hero-in{0%{opacity:0;transform:translateY(-80%)scale(.92)}60%{opacity:1;transform:translateY(6%)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cs-rubble-in{0%{opacity:.2;transform:translateY(-14px)scale(.5)}60%{opacity:1;transform:translateY(2px)scale(1.08)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cs-slot-pop{0%{transform:scale(.7)}55%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes cs-slot-next{0%,to{box-shadow:0 0 #f59e0b8c}50%{box-shadow:0 0 0 6px #f59e0b00}}@keyframes cs-ring{0%{box-shadow:0 4px #1e3a8a,0 0 #60a5facc}to{box-shadow:0 4px #1e3a8a,0 0 0 16px #60a5fa00}}@keyframes cs-btn-glow{0%{filter:brightness(1.12);box-shadow:0 6px 0 var(--cs-edge),0 0 0 0 #ffffffe6}to{filter:brightness();box-shadow:0 6px 0 var(--cs-edge),0 0 0 16px #fff0}}@keyframes cs-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes cs-jump{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-9px)rotate(3deg)}}@keyframes cs-wobble{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes cs-twinkle{0%,to{opacity:.25}50%{opacity:.95}}@keyframes cs-spark{0%{opacity:1;transform:translate(0)scale(1)}to{transform:translate(var(--dx),var(--dy))scale(.15);opacity:0}}@keyframes cs-float{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)}15%{opacity:1;transform:translate(-50%,-80%)scale(1.15)}to{opacity:0;transform:translate(-50%,-260%)scale(1)}}@keyframes cs-badge{0%{opacity:0;transform:translate(-50%)scale(.4)}14%{opacity:1;transform:translate(-50%)scale(1.12)}24%{transform:translate(-50%)scale(1)}72%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-10px)scale(1)}}@keyframes cs-fade{0%,70%{opacity:1}to{opacity:0}}@keyframes cs-star-in{0%{transform:scale(0)rotate(-120deg)}70%{transform:scale(1.3)rotate(8deg)}to{transform:scale(1)rotate(0)}}@keyframes cs-house-pop{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes cs-danger-glow{0%,to{box-shadow:inset 0 0 40px #0206178c,inset 0 0 #ef444400,0 8px 24px #0006}50%{box-shadow:inset 0 0 40px #0206178c,inset 0 0 36px 4px #ef444473,0 8px 24px #0006}}@keyframes cs-tape-flash{0%{filter:brightness()}to{filter:brightness(1.7)}}@keyframes cs-drop-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(10px)}}@keyframes cs-slide-in{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.cs-shake{animation:.26s ease-in-out cs-shake}.cs-pop{animation:.26s cubic-bezier(.34,1.56,.64,1) cs-pop}.cs-hero-in{animation:.38s cubic-bezier(.34,1.3,.64,1) cs-hero-in}.cs-rubble-in{animation:.32s cubic-bezier(.34,1.56,.64,1) cs-rubble-in}.cs-slot-pop{animation:.36s cubic-bezier(.34,1.56,.64,1) cs-slot-pop}.cs-slot-next{animation:1.2s ease-out infinite cs-slot-next}.cs-speaker-pulse{animation:1.2s ease-out infinite cs-ring}.cs-glow{animation:1.1s ease-out infinite cs-btn-glow}.cs-bob{animation:2.6s ease-in-out infinite cs-bob}.cs-jump{animation:.55s ease-in-out infinite cs-jump}.cs-wobble{animation:.45s ease-in-out infinite cs-wobble}.cs-twinkle{animation:2.4s ease-in-out infinite cs-twinkle}.cs-spark{animation:.7s ease-out forwards cs-spark}.cs-star-in{animation:.52s cubic-bezier(.34,1.56,.64,1) backwards cs-star-in}.cs-house-pop{transform-box:fill-box;transform-origin:50% 100%;animation:.52s cubic-bezier(.34,1.56,.64,1) cs-house-pop}.cs-float{text-shadow:0 2px #0000008c,0 0 10px #00000059;white-space:nowrap;pointer-events:none;font-size:24px;font-weight:900;animation:.95s ease-out forwards cs-float;position:fixed;transform:translate(-50%,-50%)}.cs-badge{color:#fff;white-space:nowrap;pointer-events:none;border:3px solid;border-radius:999px;padding:6px 16px;font-size:18px;font-weight:900;animation:1s ease-out forwards cs-badge;position:fixed;transform:translate(-50%);box-shadow:0 4px #0000004d}.cs-badge-still{animation:1.1s linear forwards cs-fade}.cs-banner{z-index:40;color:#fde68a;text-align:center;background:#0f172aeb;border:3px solid #facc15;border-radius:18px;padding:12px 22px;font-size:22px;font-weight:900;animation:.32s cubic-bezier(.34,1.56,.64,1) cs-pop;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 28px #0000008c}.cs-join-out{animation:.42s ease-in forwards cs-drop-out;display:inline-block}.cs-join-in{animation:.42s ease-out cs-slide-in;display:inline-block}.cs-btn{touch-action:manipulation;min-width:44px;min-height:44px;transition:transform 80ms ease-out,filter .12s}.cs-btn:active:not(:disabled){transform:translateY(3px)}.cs-btn:disabled{cursor:default}.cs-btn:focus-visible{outline-offset:3px;outline:3px solid #fff}.cs-level:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px)}.cs-skip{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:999px;flex:none;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:700}.cs-keyhint,.cs-keyhint-note{display:none}@media (hover:hover) and (pointer:fine){.cs-keyhint{letter-spacing:.4px;opacity:.85;background:#00000047;border-radius:6px;padding:1px 7px;font-size:10px;font-weight:800;display:inline-block;position:absolute;top:6px;right:10px}.cs-keyhint-note{display:block}}@media (prefers-reduced-motion:reduce){.cs-shake,.cs-pop,.cs-hero-in,.cs-rubble-in,.cs-slot-pop,.cs-slot-next,.cs-speaker-pulse,.cs-glow,.cs-bob,.cs-jump,.cs-wobble,.cs-twinkle,.cs-spark,.cs-star-in,.cs-house-pop,.cs-banner,.cs-stage-danger,.cs-tape-flash{animation:none!important}.cs-float{transform:translate(-50%,-120%);animation:1.1s linear forwards cs-fade!important}.cs-btn{transition:none}.cs-join-out{opacity:0;transition:opacity .3s linear;animation:none!important}.cs-join-in{opacity:1;transition:opacity .3s linear;animation:none!important}}
