/* Route-only worlds: the gallery does not download this game styling. */
.mini-game:has(.encore-stage){--glow:#e8cead}.mini-game:has(.encore-stage) .mini-art{opacity:.6}.mini-game:has(.encore-stage):before{background:linear-gradient(#070d20c9,#090f254d 42%,#080d20ce)}.mini-game:has(.encore-stage) .mini-arena{padding:24px 0;min-height:565px}.mini-game:has(.encore-stage) .mini-curtain{background:#0b1426d9}.encore-stage{display:flex;flex-direction:column;align-items:center;width:100%}.encore-hint{font-size:12px;line-height:1.75;text-align:center;max-width:490px;margin:17px 0 4px;color:#f4e9ef;min-height:42px}.encore-tools{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:14px 0}.encore-stage .encore-tools button{min-height:44px;padding:9px 17px;border:1px solid #e7d9ed55;border-radius:30px;background:#1d2743e8;font-size:12px;color:#f4e8ef}.encore-stage .encore-tools button[aria-pressed=true]{background:#ebcbbb;color:#261b32}.encore-stage button:disabled{opacity:.5}.encore-stage button:active:not(:disabled){scale:.97}.encore-stage button:focus-visible{outline:2px solid #fff0bb;outline-offset:2px;z-index:2}.encore-choice{margin:-8px 0 22px}.encore-choice button{flex:1;white-space:nowrap}
.fall-layout{display:flex;justify-content:center;align-items:flex-start;gap:24px;width:min(390px,100%)}.fall-well{width:240px;max-width:65%;aspect-ratio:5/9;border:1px solid #b2dbfa66;border-radius:13px;overflow:hidden;background-color:#0e1a31eb;background-image:linear-gradient(#c7dfff0b 1px,transparent 1px),linear-gradient(90deg,#c7dfff0b 1px,transparent 1px);background-size:10% 5.5556%;box-shadow:inset 0 0 50px #070c25,0 20px 70px #10061e55}.fall-well svg{display:block;width:100%;height:100%}.fall-crystal{stroke:#fff7;stroke-width:.7;filter:drop-shadow(0 2px 2px #081a2955)}.fall-ghost{fill:#bbddee0c;stroke:#dce9f178;stroke-dasharray:3 2;stroke-width:1}.fall-sidebar{flex:1;min-width:0;text-align:center}.fall-sidebar>span{font-size:9px;letter-spacing:2px;color:#c5e1ed}.fall-sidebar>svg{display:block;width:100%;max-width:100px;margin:10px auto;border:1px solid #d4daeb33;border-radius:13px;background:#0e193bc9}.fall-sidebar>p{font:italic 16px/1.5 'Fraunces',serif;color:#e6d5ed}.fall-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px}.encore-stage .fall-controls button{padding:8px 3px;min-width:0;border-radius:10px}.fall-controls button:nth-child(n+3){grid-column:span 2}
.chess-board{width:min(440px,100%);display:grid;grid-template-columns:repeat(8,minmax(0,1fr));border:8px solid #4e3040;border-radius:13px;overflow:hidden;box-shadow:0 25px 60px #02051966,0 0 0 1px #bb909566}.encore-stage .chess-square{position:relative;display:grid;place-items:center;aspect-ratio:1;min-width:0;min-height:0;border:0;border-radius:0;padding:0;background:#bda3a0;color:#24324a}.encore-stage .chess-square.is-dark{background:#765e75}.encore-stage .chess-square:disabled{opacity:1}.chess-piece{font:40px/1 Georgia,'Times New Roman',serif;z-index:1;pointer-events:none}.white-piece .chess-piece{color:#fff2d9;text-shadow:0 1px 1px #2f213e,1px 0 #392942,-1px 0 #392942,0 -1px #392942}.black-piece .chess-piece{color:#172439;text-shadow:0 1px #e7d9cf77}.chess-square small{position:absolute;left:3px;bottom:1px;font:8px 'DM Sans',sans-serif;color:#261d2dbb}.chess-square.is-dark small{color:#f4e6edb0}.encore-stage .chess-square.is-selected{background:#dbc48d;box-shadow:inset 0 0 0 3px #fff5c0}.chess-square.is-legal>i{position:absolute;inset:3px;border:3px solid #f3deaa;border-radius:50%;pointer-events:none}.chess-square.is-legal:not(.white-piece):not(.black-piece)>i{inset:36%;background:#30284088;border:1px solid #f3deaa88}.chess-promotion{width:100%;padding:12px;border:1px solid #f3d5ad77;border-radius:15px;background:#171d36}.chess-promotion button{flex:1 0 40%}
.four-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;width:min(470px,100%);padding:12px;border:1px solid #c9ddec66;border-radius:21px;background:linear-gradient(140deg,#2c5063ee,#1a263fea);box-shadow:inset 0 1px 1px #dbffff33,0 25px 65px #06122155}.encore-stage .four-column{display:flex;flex-direction:column;gap:7px;padding:0;min-width:0;border:0;background:transparent;border-radius:10px;color:#d0e0ec}.encore-stage .four-column:disabled{opacity:1}.four-column b{font-size:10px;font-weight:400;line-height:28px}.four-pearl{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:50%;border:1px solid #99bdcb3b;box-shadow:inset 0 4px 8px #050e244d;background:#091b3194;font:22px Georgia,serif}.four-pearl.pearl-1{background:linear-gradient(135deg,#ffe1d8,#d99dab);color:#87485c;box-shadow:inset 0 2px 4px #fff7,0 2px 6px #0003}.four-pearl.pearl-2{background:linear-gradient(135deg,#e4f3d4,#9fcbbb);color:#375e63;box-shadow:inset 0 2px 4px #fff7,0 2px 6px #0003}.four-pearl.is-winning{outline:2px solid #fff3b3;outline-offset:2px}.four-column:hover:not(:disabled){background:#d7eafa10}
.breaker-wrap{width:min(360px,100%)}.breaker-board{position:relative;aspect-ratio:400/470;border:1px solid #a7c8ed66;border-radius:19px;background:linear-gradient(160deg,#1a2144ec,#10293ae8);overflow:hidden;touch-action:none;box-shadow:inset 0 0 70px #050c264d,0 25px 60px #080e2344}.breaker-board svg{display:block;width:100%;height:100%}.breaker-brick{stroke:#ffffff77;stroke-width:.6;filter:drop-shadow(0 3px 3px #0b162966)}.breaker-paddle{fill:#d7f2ec;stroke:#fff;stroke-width:1;filter:drop-shadow(0 0 5px #9bffed80)}.breaker-ball{fill:#fff2cb;filter:drop-shadow(0 0 7px #ffd990)}.encore-serve{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:10px;letter-spacing:3px;color:#dfd9ed}
.bubble-wrap{width:min(356px,100%)}.encore-stage .bubble-board{width:100%;display:block;aspect-ratio:356/480;position:relative;padding:0;border:1px solid #cbcee777;border-radius:19px;background:linear-gradient(160deg,#372747ee,#163342ed);overflow:hidden;touch-action:manipulation;box-shadow:0 25px 65px #0a112444}.encore-stage .bubble-board:disabled{opacity:1}.encore-stage .bubble-board:active:not(:disabled){scale:1}.bubble-board svg{display:block;width:100%;height:100%}.bubble-pearl{stroke:#fff7;stroke-width:1;filter:drop-shadow(0 3px 3px #101c2755)}.bubble-mark{fill:#23304a;font:15px Georgia,serif}.bubble-danger{stroke:#f3c1cd88;stroke-dasharray:3 6;stroke-width:1}.bubble-ceiling{stroke:#efc6ce77;stroke-width:2}.bubble-aim{stroke:#f2e1c4aa;stroke-dasharray:2 7;stroke-linecap:round;stroke-width:2}.bubble-angle{display:flex;align-items:center;gap:15px;font-size:12px;color:#f5e8ee;margin-top:12px}.bubble-angle input{flex:1;min-width:0;height:32px;accent-color:#e7b8bc;cursor:pointer}
@media(max-width:600px){.mini-game:has(.encore-stage) .mini-arena{min-height:535px}.mini-game:has(.encore-stage) .mini-hud{flex-wrap:wrap;justify-content:center;padding:6px 0;gap:2px 16px}.mini-game:has(.encore-stage) .mini-hud>div{min-height:36px}.mini-game:has(.encore-stage) .mini-hud p{margin:0}.encore-hint{font-size:11px}.fall-layout{gap:14px}.fall-sidebar>p{font-size:14px}.chess-board{border-width:5px;border-radius:9px}.chess-piece{font-size:clamp(24px,8vw,36px)}.chess-square small{font-size:6px;left:2px}.chess-square.is-legal>i{border-width:2px;inset:2px}.encore-stage .encore-tools button{font-size:11px;padding:8px 12px}.encore-stage .fall-controls button{padding:8px 1px;font-size:11px}.four-board{gap:4px;padding:8px;border-radius:15px}.four-column{gap:5px}.four-pearl{font-size:17px}.four-column b{font-size:8px}.mini-game:has(.encore-stage) .mini-intro p{font-size:12px;line-height:1.75}.encore-stage .encore-choice button{padding:8px}.bubble-wrap{max-width:310px}}
@media(prefers-reduced-motion:reduce){.encore-stage *{transition:none!important;animation:none!important}.encore-stage button:active:not(:disabled){scale:1}}
