*{box-sizing:border-box;margin:0}:root{--game-control-bg: #3c2c1e;--game-control-bg-hover: #4a3727;--game-control-border: #7a5b3f;--game-control-border-hover: #927151;--game-control-text: #f1e6d8;--game-control-shadow: 0 2px 7px rgba(20, 12, 7, .3);--safe-top: env(safe-area-inset-top);--safe-right: env(safe-area-inset-right);--safe-bottom: env(safe-area-inset-bottom);--safe-left: env(safe-area-inset-left)}html,body{height:100%}body{background:linear-gradient(180deg,#100a0580,#100a059e),linear-gradient(180deg,var(--frame-wall, #463226) 0%,var(--frame-floor, #32231a) 100%);background-attachment:fixed;color:#f1e6d8;font-family:ui-rounded,SF Pro Rounded,system-ui,sans-serif;min-height:100dvh;overflow:hidden;overscroll-behavior:none}.app{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;overflow:hidden;container:game / size}.app.rot-cw{width:100dvh;height:100dvw;max-width:none;max-height:none;top:0;left:0;right:auto;bottom:auto;margin:0;transform-origin:top left;transform:rotate(90deg) translateY(-100%);--safe-top: env(safe-area-inset-right);--safe-right: env(safe-area-inset-bottom);--safe-bottom: env(safe-area-inset-left);--safe-left: env(safe-area-inset-top)}header{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;padding:max(6px,var(--safe-top)) max(12px,var(--safe-right)) 10px max(12px,var(--safe-left));pointer-events:none}header button{pointer-events:auto}.stats button,.options-toggle,.dev-tools button,.replay-bar button,.touch-bar button{min-height:36px;border:1px solid var(--game-control-border);border-radius:11px;background:var(--game-control-bg);box-shadow:var(--game-control-shadow);color:var(--game-control-text);font-family:inherit;font-weight:700;line-height:1.2;cursor:pointer}.stats button:hover,.options-toggle:hover,.dev-tools button:hover,.replay-bar button:hover,.touch-bar button:hover{border-color:var(--game-control-border-hover);background:var(--game-control-bg-hover)}.stats button:focus-visible,.options-toggle:focus-visible,.dev-tools button:focus-visible,.replay-bar button:focus-visible,.touch-bar button:focus-visible{outline:2px solid #d8ed92;outline-offset:2px}.stats{display:flex;flex:1;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;align-items:center}.stats b{color:#f3cdb4}.stats button{padding:6px 12px;font-size:.9rem}.stats .icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;padding:6px 0;font-size:1.05rem;line-height:1}.stats .icon-btn svg{display:block}.sfida-icon{vertical-align:-.18em}.skip-btn{animation:skip-appear .55s ease-out 1 both}@keyframes skip-appear{0%{transform:scale(.85);opacity:0}35%{transform:scale(1);opacity:1}50%{transform:translate(-3px) rotate(-2.5deg)}65%{transform:translate(3px) rotate(2.5deg)}80%{transform:translate(-2px) rotate(-1deg)}to{transform:translate(0) rotate(0)}}@media(prefers-reduced-motion:reduce){.skip-btn{animation:none}}.stage{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--frame-wall, #f0b48a) 0%,var(--frame-floor, #7e5a3c) 100%)}.canvas-host{width:100%;height:100%;display:block}.canvas-host canvas{display:block;width:100%;height:100%;cursor:crosshair;touch-action:none}.corner-controls{position:absolute;left:max(12px,var(--safe-left));bottom:max(10px,var(--safe-bottom));z-index:12;display:flex;align-items:center;gap:6px}.options-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;font-size:.88rem}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#28190e80}.card{background:#4a3727;border:1px solid #82613f;padding:24px 32px;border-radius:16px;text-align:center;display:flex;flex-direction:column;gap:10px}.card h2{color:#f3cdb4}.card button{background:#e8a87c;border:none;color:#3a2716;font-weight:700;font-size:1rem;padding:10px 18px;border-radius:10px;cursor:pointer}.card button:hover{filter:brightness(1.08)}.options-overlay{z-index:22}.options-card{width:min(520px,92%);max-height:calc(100% - 16px);overflow-y:auto;padding:22px;text-align:left;gap:18px}.options-head{display:flex;align-items:center;gap:12px}.options-head h2{flex:1}.options-card .options-close{padding:6px 11px;border-radius:9px;background:#5a4332;color:#f1e6d8;font-size:.9rem}.options-card fieldset{min-width:0;padding:0;border:0}.options-card legend{margin-bottom:9px;color:#e8d6c0;font-weight:800}.input-options{display:grid;gap:9px}.options-card .input-option{display:grid;grid-template-columns:18px 1fr;align-items:start;gap:11px;width:100%;padding:12px 14px;border:1px solid #6b4f35;border-radius:12px;background:#3c2c1e;color:#f1e6d8;text-align:left}.options-card .input-option.active{border-color:#a9c45e;background:#43502b;box-shadow:0 0 0 1px #a9c45e inset}.input-option-mark{width:17px;height:17px;margin-top:2px;border:2px solid #a99172;border-radius:50%;box-shadow:inset 0 0 0 3px #3c2c1e}.input-option.active .input-option-mark{border-color:#d8ed92;background:#a9c45e;box-shadow:inset 0 0 0 3px #43502b}.input-option b,.input-option small{display:block}.input-option small{margin-top:3px;color:#cbb9a4;font-size:.82rem;font-weight:500;line-height:1.35}.options-card .language-row{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#e8d6c0;font-weight:800}.options-card .language-select{flex:0 1 230px;min-width:0;padding:9px 38px 9px 14px;border:1px solid #6b4f35;border-radius:12px;background:linear-gradient(45deg,transparent 50%,#cbb9a4 50%) calc(100% - 20px) 50% / 6px 6px no-repeat,linear-gradient(135deg,#cbb9a4 50%,transparent 50%) calc(100% - 14px) 50% / 6px 6px no-repeat,#3c2c1e;color:#f1e6d8;font:inherit;font-weight:700;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.options-card .language-select:focus-visible{outline:2px solid #a9c45e;outline-offset:2px}.win-badges-carousel{width:100%;max-width:340px;margin:2px auto 0}.win-badges-wrap{position:relative}.win-badges{display:flex;gap:8px;align-items:stretch;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.win-badges::-webkit-scrollbar{display:none}.win-badges-carousel:not(.multi) .win-badge{flex:0 0 100%}.win-badges-carousel.multi .win-badge{flex:0 0 84%;scroll-snap-align:center}.card .win-badge{display:flex;align-items:center;gap:11px;padding:8px 12px;border-radius:12px;background:#1a110966;border:1px solid rgba(138,106,31,.55);text-align:left}.win-badge-medal{flex:0 0 auto;width:38px;height:38px;border-radius:50%;background:linear-gradient(160deg,#f4cf63,#e0a93a);border:2px solid #8a6a1f;font-size:1.2rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #140a0459}.win-badge-text{display:flex;flex-direction:column;min-width:0}.win-badge-text b{font-size:.88rem;color:#f4cf63}.win-badge-text small{margin-top:2px;font-size:.78rem;font-weight:500;color:#e6d6c3;line-height:1.3}.card .win-badges-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:none;width:26px;height:26px;padding:0;border-radius:50%;background:#1a1109b8;color:#f4cf63;font-size:1.15rem;line-height:1;align-items:center;justify-content:center}.card .win-badges-arrow.prev{left:2px}.card .win-badges-arrow.next{right:2px}.card .win-badges-arrow:disabled{opacity:.3;cursor:default}@media(hover:hover){.win-badges-carousel.multi .win-badges-arrow{display:inline-flex}}.win-badges-dots{display:flex;justify-content:center;gap:6px;margin-top:8px}.card .win-badges-dot{width:7px;height:7px;padding:0;border-radius:50%;background:#f4cf6352;transition:background .15s}.card .win-badges-dot.active{background:#f4cf63}.card.win-card{max-height:calc(100% - 16px);overflow-y:auto;overflow-x:hidden}.card-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.card-actions button{background:#5a4332;color:#f1e6d8;font-size:.9rem;padding:8px 12px}.coin-icon,.pistachio-icon{vertical-align:-.18em}.stats .coins b{color:#f4cf63}.wallet-bump{display:inline-block;animation:wallet-bump .35s ease-out}@keyframes wallet-bump{0%{transform:scale(1)}40%{transform:scale(1.35);color:#fff3c4}to{transform:scale(1)}}.stats .coins-shop{display:inline-flex;align-items:center;gap:5px}.coins-won{color:#f4cf63;font-size:1.05rem}.coins-slots{display:flex;gap:10px;justify-content:center;margin:8px 0 4px}.coin-slot{display:inline-flex}.coin-slot.had{opacity:.6}.coin-slot.new .coin-icon{animation:coin-pop .35s ease-out both}.coin-slot.new:nth-child(2) .coin-icon{animation-delay:.1s}.coin-slot.new:nth-child(3) .coin-icon{animation-delay:.2s}@keyframes coin-pop{0%{transform:scale(0) rotate(-30deg)}70%{transform:scale(1.25) rotate(6deg)}to{transform:scale(1) rotate(0)}}.card-actions .double-btn{background:linear-gradient(160deg,#f4cf63,#e0a93a);color:#3a2716;font-weight:700}.dev-tools{position:fixed;left:max(112px,calc(var(--safe-left) + 100px));bottom:max(10px,var(--safe-bottom));z-index:31;display:none;gap:7px}.dev-tools button{min-height:36px;padding:6px 10px;font-size:.85rem;opacity:.85}.dev-tools button:hover{opacity:1}.dev-tools kbd{padding:1px 5px;border:1px solid rgba(241,230,216,.35);border-radius:5px;font:inherit;font-size:.72rem;opacity:.75}.dev-level-form{width:172px;padding:11px;border:1px solid rgba(255,255,255,.28);border-radius:10px;background:#2b1f19f0;color:#fff8ee;box-shadow:0 6px 18px #27160e33;display:flex;flex-direction:column;gap:9px}.dev-difficulty{box-sizing:border-box;width:172px;padding:11px;border:1px solid rgba(255,255,255,.28);border-radius:10px;background:#212b2ef2;color:#f3fbf8;box-shadow:0 6px 18px #12202033;font-size:.72rem}.dev-difficulty>strong{display:block;margin-bottom:8px;font-size:.86rem}.dev-difficulty p{margin:6px 0;line-height:1.3}.dev-difficulty .difficulty-running{color:#f4d38a}.dev-difficulty .difficulty-found{color:#a7e8bd}.dev-difficulty .difficulty-not-found,.dev-difficulty .difficulty-caveat{color:#ffd19d}.difficulty-rating{display:flex;align-items:baseline;gap:7px;margin:8px 0}.difficulty-rating b{font-size:1.25rem;color:#f4cc68}.difficulty-rating span{color:#f3fbf8c7}.dev-difficulty dl{display:grid;gap:4px;margin:8px 0}.dev-difficulty dl div{display:flex;justify-content:space-between;gap:7px}.dev-difficulty dt{color:#f3fbf8ab}.dev-difficulty dd{margin:0;text-align:right}.dev-difficulty .difficulty-best,.dev-difficulty .difficulty-guided{padding-top:6px;border-top:1px solid rgba(255,255,255,.12)}.dev-difficulty small{display:block;margin-top:8px;color:#f3fbf885;line-height:1.3}.dev-level-form strong{font-size:.86rem}.dev-level-form label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px;font-size:.74rem;font-weight:700}.dev-level-form label input{grid-column:1 / -1;box-sizing:border-box;width:100%;min-width:0;padding:7px 8px;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:#fffaf3;color:#35251d;font:inherit;font-size:.82rem}.dev-level-form label input:focus{outline:2px solid #f1bd55;outline-offset:1px}.dev-level-form .dev-save{width:100%;min-width:0}.dev-level-form .dev-delete{width:100%;min-width:0;border-color:#ff97888c;background:#752720e0;color:#fff5f2}.dev-level-form small{overflow:hidden;color:#fff8ee9e;font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.dev-shotmap{position:fixed;left:12px;right:12px;bottom:12px;z-index:31;display:none;flex-direction:column;height:320px;min-height:140px;max-height:70vh;resize:vertical;overflow:hidden;box-sizing:border-box;padding:8px 10px 10px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:#141b1ef5;color:#f3fbf8;box-shadow:0 -6px 24px #0a06044d}.dev-shotmap-head{flex-shrink:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.78rem;padding-bottom:6px}.dev-shotmap-head strong{font-size:.86rem}.dev-shotmap-head label{display:flex;align-items:center;gap:4px;opacity:.85}.dev-shotmap-head select{font:inherit;padding:2px 4px;border-radius:6px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:inherit}.dev-shotmap-head button{min-height:26px;padding:3px 9px;font-size:.78rem;opacity:.85}.dev-shotmap-head button:hover{opacity:1}.dev-shotmap-stat{margin-right:auto;opacity:.7;font-variant-numeric:tabular-nums}.dev-shotmap-plot{position:relative;flex:1;min-height:0;cursor:crosshair}.dev-shotmap-plot canvas{position:absolute;top:0;right:0;bottom:0;left:0}.dev-shotmap-tip{position:absolute;display:flex;flex-direction:column;gap:1px;pointer-events:none;padding:6px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0e1416f2;font-size:.72rem;line-height:1.35;white-space:nowrap;font-variant-numeric:tabular-nums}.dev-analyzer-toggle{width:100%}.shop-card{width:min(560px,92%);height:min(560px,86cqh);text-align:left;gap:12px}.shop-head{display:flex;align-items:center;gap:12px}.shop-head h2{margin:0;flex:1}.shop-wallet b{color:#f4cf63}.shop-card .shop-close{background:#5a4332;color:#f1e6d8;font-size:.9rem;padding:6px 11px;border-radius:9px}.shop-tabs{display:flex;flex-wrap:wrap;gap:6px}.shop-tabs button{background:#3c2c1e;color:#d9c6b2;border:1px solid #6b4f35;border-radius:999px;padding:5px 12px;font-size:.85rem;font-weight:600;cursor:pointer}.shop-tabs button.active{background:#e8a87c;color:#3a2716;border-color:#e8a87c}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;flex:1;min-height:0;align-content:start;overflow-y:auto;padding:2px}.shop-item{display:flex;flex-direction:column;align-items:center;gap:6px;background:#3c2c1e;border:1px solid #6b4f35;border-radius:12px;padding:10px 6px 8px}.shop-item.equipped{border-color:#a9c45e;box-shadow:0 0 0 1px #a9c45e inset}.skin-preview{border-radius:8px;background:#2a1f15;display:block}.shop-name{font-size:.8rem;color:#e6d6c3;text-align:center;line-height:1.1}.shop-item button{border:none;border-radius:8px;padding:5px 10px;font-size:.8rem;font-weight:700;cursor:pointer}.shop-buy{background:linear-gradient(160deg,#f4cf63,#e0a93a);color:#3a2716}.shop-buy:disabled{background:#5a4a39;color:#9c8a76;cursor:not-allowed}.shop-equip{background:#e8a87c;color:#3a2716}.shop-badge{font-size:.78rem;color:#a9c45e;font-weight:700;padding:4px 0}.ach-card{width:min(560px,92%);height:min(560px,86cqh);text-align:left;gap:12px}.ach-head{display:flex;align-items:center;gap:12px}.ach-head h2{margin:0;flex:1}.ach-progress{color:#d9c6b2;font-size:.9rem}.ach-progress b{color:#f4cf63}.ach-card .ach-close{background:#5a4332;color:#f1e6d8;font-size:.9rem;padding:6px 11px;border-radius:9px}.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:8px;flex:1;min-height:0;align-content:start;overflow-y:auto;padding:2px}.ach-item{display:flex;align-items:center;gap:10px;background:#3c2c1e;border:1px solid #6b4f35;border-radius:12px;padding:9px 11px}.ach-icon{font-size:1.45rem;line-height:1}.ach-item.locked{opacity:.55}.ach-item.locked .ach-icon{filter:grayscale(1)}.ach-body{min-width:0}.ach-body b{display:block;font-size:.88rem;color:#f3cdb4}.ach-body small{display:block;margin-top:2px;color:#cbb9a4;font-size:.78rem;line-height:1.3}.ach-toast{position:absolute;top:calc(12% + 56px);left:50%;z-index:30;background:linear-gradient(160deg,#f4cf63,#e0a93a);color:#3a2716;border:2px solid #8a6a1f;font-weight:700;font-size:.95rem;padding:8px 18px;border-radius:999px;width:max-content;max-width:calc(100% - 32px);white-space:normal;text-align:center;line-height:1.25;pointer-events:none;box-shadow:0 5px 12px #140a0473;animation:ach-toast 2.6s ease both}@keyframes ach-toast{0%{opacity:0;transform:translate(-50%) translateY(-16px) scale(.9)}10%,84%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-10px) scale(.97)}}.map-card{width:min(440px,92%);height:min(600px,86cqh);gap:12px;text-align:left}.map-head{display:flex;align-items:center;gap:12px}.map-head h2{margin:0;flex:1}.map-progress{color:#d9c6b2;font-size:.9rem}.map-progress b{color:#f4cf63}.map-card .map-close{background:#5a4332;color:#f1e6d8;font-size:.9rem;padding:6px 11px;border-radius:9px}.map-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:2px}.map-world{border-radius:14px;padding:12px 10px 4px;display:flex;flex-direction:column;gap:2px;color:#3a2716cc}.map-world.mystery{background:#3c2c1e;color:#e6d6c366}.wood-sign{position:relative;background:radial-gradient(circle at 9px 50%,#40290f 2px,transparent 2.6px),radial-gradient(circle at calc(100% - 9px) 50%,#40290f 2px,transparent 2.6px),repeating-linear-gradient(0deg,rgba(58,36,16,.14) 0 2px,transparent 2px 7px),linear-gradient(#9a6b3f,#7c5330);border:2px solid #55381c;border-radius:8px;color:#f6e3c2;font-weight:800;text-shadow:0 1px 0 rgba(40,22,8,.55);box-shadow:0 2px 4px #28190e59,inset 0 1px #fff0d238}.map-world-sign{align-self:center;margin:0;padding:6px 20px 7px;font-size:.9rem;z-index:1}.map-world-sign:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:9px;height:15px;background:linear-gradient(#7c5330,#5f3e21);border:2px solid #55381c;border-top:none;border-radius:0 0 3px 3px}.map-sign-coins{color:#f4cf63;font-size:.75rem;margin-left:8px}.map-trail{position:relative}.map-trail-line{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.trail-bed,.trail-dash{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.trail-bed{stroke-width:16;opacity:.12}.trail-dash{stroke-width:3;stroke-dasharray:6 10;opacity:.5}.map-spot{position:absolute;transform:translate(-50%,-50%)}.map-card .map-node{position:relative;display:block;padding:0;border:none;border-radius:50%;background:none;color:inherit;line-height:0;cursor:pointer;transition:transform .15s ease}.map-card .map-node:hover:not(:disabled){transform:scale(1.1)}.map-card .map-node:disabled{cursor:default}.map-node.passed{opacity:.88}.map-node.passed svg,.map-node.frontier svg{filter:drop-shadow(0 3px 3px rgba(40,25,14,.45))}.map-card .map-node.frontier{animation:map-pulse 1.6s ease-in-out infinite}.map-num{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;line-height:normal;font-size:.92rem;font-weight:800;color:#4a3a24;pointer-events:none}.map-node.frontier .map-num{font-size:1.05rem;color:#3a2716}.map-node.locked .map-num{color:currentColor;font-weight:700}@keyframes map-pulse{0%,to{box-shadow:0 0 #fff6e88c}50%{box-shadow:0 0 0 10px #fff6e800}}.map-coins{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:-6px;display:flex;gap:1px}.map-deco{position:absolute;transform:translate(-50%,-50%);opacity:.5;line-height:0;pointer-events:none}.world-toast{position:absolute;top:12%;left:50%;z-index:15;padding:10px 28px 12px;font-size:1.05rem;white-space:nowrap;border-width:3px;box-shadow:0 5px 12px #140a0473,inset 0 1px #fff0d238;pointer-events:none;animation:world-toast 3.4s ease both}@keyframes world-toast{0%{opacity:0;transform:translate(-50%) translateY(-16px) scale(.9)}9%,86%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-10px) scale(.97)}}.spot-overlay{background:#0a0603c7;z-index:21}.spot-card{position:relative;width:min(420px,86%);background:linear-gradient(160deg,#1b2a4a,#122038);border:2px solid #4f7fd0;border-radius:16px;padding:28px 24px 18px;text-align:center;color:#eaf1ff;box-shadow:0 14px 40px #0000008c;display:flex;flex-direction:column;gap:10px}.spot-label{position:absolute;top:8px;left:11px;font-size:.6rem;letter-spacing:1px;text-transform:uppercase;opacity:.55}.spot-card h2{font-size:1.7rem;letter-spacing:2px;color:#8fc0ff}.spot-tagline{font-style:italic;opacity:.85;font-size:.88rem;line-height:1.4}.spot-body{font-size:.92rem;line-height:1.45}.spot-skip{align-self:flex-end;margin-top:6px;background:#ffffff1f;color:#eaf1ff;border:1px solid rgba(255,255,255,.35);border-radius:8px;padding:6px 12px;font-size:.82rem;cursor:pointer}.spot-skip:disabled{opacity:.5;cursor:default}.spot-skip:not(:disabled):hover{background:#ffffff38}.replay-bar{position:absolute;left:50%;bottom:14px;transform:translate(-50%);z-index:11}.replay-bar button{min-height:38px;padding:7px 14px}.hint{opacity:.8;font-size:.85rem;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.45)}.editor-toast{position:absolute;left:50%;top:14px;transform:translate(-50%);background:#1e140cd9;color:#f6e3c2;border:1px solid #a9c45e;font-weight:600;font-size:.85rem;padding:6px 14px;border-radius:999px;z-index:32;pointer-events:none;white-space:nowrap}.hint-touch,.fs-btn,.stats .fs-btn{display:none}.touch-footer{display:flex;flex-direction:column;align-items:center;gap:4px}.touch-bar{display:flex;align-self:flex-end;align-items:center;gap:10px}.touch-bar button{padding:6px 11px;font-size:.84rem;white-space:nowrap}.touch-bar .fs-btn,.touch-bar .rot-toggle{display:inline-flex;align-items:center;justify-content:center}.touch-bar .fs-btn svg,.touch-bar .rot-toggle svg{display:block}@media(pointer:coarse){html,body{height:100%;overflow:hidden;overscroll-behavior:none}body{min-height:100dvh}.app{position:fixed;top:0;left:0;width:100vw;height:100dvh;max-width:none;padding:0;gap:0}header{position:absolute;top:0;left:0;right:0;z-index:10;gap:6px;padding:max(6px,var(--safe-top)) max(10px,var(--safe-right)) 14px max(10px,var(--safe-left));pointer-events:none}header button{pointer-events:auto}.stats{gap:8px;font-size:.8rem}.stats button{min-height:34px;padding:5px 9px;font-size:.8rem}.stats .icon-btn{width:34px}.stats .fs-btn{display:inline-flex}.stage{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:0;background:linear-gradient(180deg,var(--frame-wall, #f0b48a) 0%,var(--frame-floor, #7e5a3c) 100%)}.canvas-host{width:100%;height:100%;aspect-ratio:auto;max-width:none;max-height:none;border-radius:0;box-shadow:none}.touch-footer{position:absolute;left:0;right:0;bottom:0;z-index:10;padding:16px max(10px,var(--safe-right)) max(8px,var(--safe-bottom)) max(10px,var(--safe-left));background:linear-gradient(0deg,#1c11099e,#1c110900);pointer-events:none}.touch-footer button{pointer-events:auto}.overlay{z-index:20}.replay-bar{z-index:11;bottom:max(108px,calc(var(--safe-bottom) + 100px))}.hint-touch{display:block;margin:0 auto 6px;max-width:30rem;text-shadow:0 1px 3px rgba(0,0,0,.5)}}@media(pointer:coarse){.app.landscape .replay-bar{bottom:max(64px,calc(var(--safe-bottom) + 56px))}}@container game (max-height: 430px){.card{padding:14px 20px;gap:7px}.coins-slots{margin:2px 0 0}.coins-slots .coin-icon{width:24px;height:24px}.card-actions button{padding:6px 10px}}@media(pointer:fine)and (min-width:1024px){html:not(.embedded){--poki-w: 640px;--poki-h: 360px}html:not(.embedded) body{background:#83ffe7}html:not(.embedded) .poki-mock{display:block}html:not(.embedded) .app{width:min(var(--poki-w),100vw,calc((100vh - 96px) * 16 / 9));height:min(var(--poki-h),56.25vw,calc(100vh - 96px));margin:16px auto auto;box-shadow:none}html:not(.embedded) .dev-tools{display:flex;top:16px;bottom:auto;left:calc(50% + 344px);max-height:calc(100vh - 32px);padding-right:4px;overflow-y:auto;flex-direction:column;align-items:stretch}html:not(.embedded) .dev-tools button{min-width:120px}html:not(.embedded) .dev-shotmap{display:flex}html:not(.embedded):has(.dev-shotmap) .dev-tools{max-height:calc(100vh - 368px)}}@media(pointer:fine)and (min-width:1220px){html:not(.embedded){--poki-w: 836px;--poki-h: 470px}html:not(.embedded) .dev-tools{left:calc(50% + 442px)}}@media(pointer:fine)and (min-width:1540px){html:not(.embedded){--poki-w: 1031px;--poki-h: 580px}html:not(.embedded) .dev-tools{left:calc(50% + 527.5px)}}.poki-mock{display:none;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.pm-tiles{position:absolute;top:0;right:0;bottom:0;left:0;padding:14px;display:grid;grid-template-columns:repeat(auto-fill,94px);grid-auto-rows:94px;grid-auto-flow:dense;gap:14px;justify-content:space-between;align-content:start}.pm-tiles i{border-radius:16px;background:#ffffff80}.pm-tiles i:nth-child(4n){background:#ffd6e899}.pm-tiles i:nth-child(7n){background:#d6e6ffa6}.pm-tiles i:nth-child(9n){background:#fff3c4a6}.pm-tiles i:nth-child(11n){grid-row:span 2;grid-column:span 2}.pm-card{position:absolute;top:4px;left:50%;transform:translate(-50%);width:calc(var(--poki-w) + 24px);height:calc(var(--poki-h) + 12px + 60px);background:#fff;border-radius:18px;box-shadow:0 12px 30px #09443938}.pm-bar{position:absolute;left:16px;right:16px;bottom:0;height:60px;display:flex;align-items:center;gap:10px;color:#0b4a3f;font-weight:800}.pm-bar small{font-weight:600;opacity:.55}.pm-thumbs{margin-left:auto;font-weight:600;opacity:.6}.onboarding-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:5;animation:onboarding-fade-in .5s ease-in}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}.onboarding-mouse{width:clamp(220px,46vmin,320px);aspect-ratio:8 / 5;filter:drop-shadow(var(--game-control-shadow))}.onboarding-mouse .onb-panel{fill:var(--game-control-bg);stroke:var(--game-control-border)}.onboarding-mouse .onb-cut{stroke:var(--game-control-bg)}.onboarding-mouse .onb-cut-fill{fill:var(--game-control-bg)}.onboarding-mouse svg{display:block;width:100%;height:100%}.onboarding-hint.onboarding-flip{transform:translate(-50%,-50%) scaleX(-1)}.onboarding-flip .onb-cursor{transform:scaleX(-1);transform-origin:0 0}.onboarding-touch{--rotation: -20deg;--offset-x: 10px;--offset-y: 40px;--swipe-x: -80px;--swipe-y: 110px}.onboarding-hand{display:block;width:80px;height:auto;animation:onboarding-drag 2s ease-in-out infinite;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));transform-origin:60% 10%}.onboarding-touch-hold .onboarding-hand{animation-name:onboarding-hold;animation-duration:2.6s}.onboarding-hold-ring{position:absolute;left:calc(48px + var(--offset-x));top:calc(10.7px + var(--offset-y));width:64px;height:64px;transform:translate(-50%,-50%)}.onboarding-hold-ring svg{display:block;width:100%;height:100%}@keyframes onboarding-hold{0%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:0}8%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:1}20%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation)) scale(.75);opacity:1}70%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation)) scale(.75);opacity:1}73%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:1}85%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:0}to{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:0}}@keyframes onboarding-drag{0%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:0}8%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:1}25%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation)) scale(.75);opacity:1}35%{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation)) scale(.75);opacity:1}60%{transform:translate(calc(var(--offset-x) + var(--swipe-x)),calc(var(--offset-y) + var(--swipe-y))) rotate(var(--rotation)) scale(.75);opacity:1}61%{transform:translate(calc(var(--offset-x) + var(--swipe-x)),calc(var(--offset-y) + var(--swipe-y))) rotate(var(--rotation)) scale(.75);opacity:0}to{transform:translate(var(--offset-x),var(--offset-y)) rotate(var(--rotation));opacity:0}}
