#touch-controls{position:fixed;inset:0;z-index:65;pointer-events:none;touch-action:none;user-select:none}#touch-controls[hidden]{display:none}#touch-controls button,#touch-controls .touch-stick{pointer-events:auto;touch-action:none;-webkit-user-select:none}#touch-controls button{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff7de;border:2px solid #e5ccff;border-radius:50%;background:radial-gradient(circle at 35% 25%,#8963ad,#342e65);box-shadow:0 4px #161d3e,0 0 20px #b792ff33;font:bold 25px Georgia;padding:0;width:58px;height:58px;transition:scale .12s,filter .12s}#touch-controls small{font:bold 8px sans-serif;letter-spacing:.04em}#touch-controls .pressed{scale:.9;filter:brightness(1.4)}#touch-controls .cooling{filter:saturate(.3);opacity:.75}.touch-stick{position:absolute;left:max(24px,env(safe-area-inset-left));bottom:max(26px,env(safe-area-inset-bottom));width:118px;height:118px;border:2px solid #bdeede88;border-radius:50%;background:radial-gradient(circle,#accaff22,#27345577);box-shadow:inset 0 0 20px #a3e9d633;display:grid;place-items:center}.touch-stick i{width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#c4f9dbaa,#71a7c288);border:2px solid #e7ffe5;box-shadow:0 3px 15px #151e4b;grid-area:1/1}.touch-stick span{position:absolute;bottom:10px;font:9px sans-serif;letter-spacing:.15em;color:#e5fff3}.touch-spells{position:absolute;right:max(22px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:230px;height:160px}.touch-spells button{position:absolute}.touch-spells [data-touch=bolt]{right:16px;bottom:0;width:86px!important;height:86px!important;font-size:42px!important;background:radial-gradient(circle at 30% 20%,#ffdc83,#bb6b37)!important;border-color:#ffe3a1!important}.touch-spells [data-touch=fire]{right:0;top:0}.touch-spells [data-touch=dash]{left:48px;bottom:0}.touch-spells [data-touch=reflect]{left:44px;top:0}.touch-spells [data-touch=ultimate]{left:0;top:63px}#touch-controls .touch-options{position:absolute;left:156px;bottom:24px;width:38px;height:38px;font-size:20px}.touch-playing .spell-bar{visibility:hidden}.touch-playing #tutorial-coach{top:70px;bottom:auto;width:min(380px,46vw);padding:7px 12px 15px;gap:8px}.touch-playing #tutorial-coach strong{font-size:17px}.touch-playing .tutorial-picture{width:32px;height:32px}.touch-playing .tutorial-keys{font:12px sans-serif;max-width:260px}.touch-playing #tutorial-coach small{font-size:8px}#touch-settings{width:min(560px,80vw);max-height:85dvh;box-sizing:border-box;padding:20px;background:linear-gradient(145deg,#243c57,#302448);border:3px solid #bdeecf;border-radius:24px;color:#fff4db;box-shadow:0 0 70px #8edbb955}#touch-settings::backdrop{background:#0b142ddd}#touch-settings h2{margin:5px 0 12px}#touch-settings [data-layout]{width:48%;display:inline-flex;vertical-align:top;flex-direction:column;gap:7px;min-height:105px;padding:12px;border:2px solid #6d7296;background:#2b304e;border-radius:16px;color:inherit;text-align:left}#touch-settings [data-layout][aria-pressed=true]{border-color:#f3cf7c;background:#4a3a2a;box-shadow:0 0 18px #bfffab33}#touch-settings [data-layout] span,#touch-settings p{font:12px/1.4 sans-serif}#touch-settings [data-close]{width:100%;padding:12px;border-radius:15px;background:#f0da9c;color:#283b39;font-weight:bold}#touch-settings>small{font:10px sans-serif;letter-spacing:.15em}@media(max-height:430px){#touch-settings{padding:12px}#touch-settings h2{font-size:21px}#touch-settings [data-layout]{min-height:90px}.touch-playing #tutorial-coach{top:55px}}@media(prefers-reduced-motion:reduce){#touch-controls button{transition:none}}

.touch-playing #match .bottom,.touch-playing #match .footer{visibility:hidden!important}#touch-controls button[hidden]{display:none!important}

/* Result overlays win even during a delayed touch animation frame. */
body:where([data-overlay-open]):not([data-overlay-result=victory]):not(#_o):not(._o) #touch-controls,body:where([data-overlay-open]):not([data-overlay-result=victory]):not(#_o):not(._o) .touch-editbar{display:none!important}
