.mobile-controls{position:fixed;inset:0;pointer-events:none;z-index:2147483000}
.mobile-controls [hidden]{display:none!important}
.mobile-controls button{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
.mobile-cursor{position:absolute;transform:translate(-50%,-50%);width:56px;height:56px;padding:14px;border:1px solid #dca8ff99;border-radius:50%;background:#21102f88;box-shadow:0 0 18px #9e48df55;display:grid;place-items:center}
.mobile-cursor svg{width:24px;height:28px;fill:#e9cbff;stroke:#291537;stroke-width:1.5;pointer-events:none;transform:translate(8px,10px)}
.mobile-cursor.is-dragging{background:#422359bb;border-color:#efd6ff;box-shadow:0 0 24px #bd71ff88}
.is-divine .mobile-cursor{background:#fff3c799;border-color:#b3904d;box-shadow:0 0 22px #ffe5a599}.is-divine .mobile-cursor svg{fill:#fff7d5;stroke:#9c7535}
.mobile-attacks{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));display:flex;gap:14px}
.mobile-attacks button{display:grid;place-items:center;gap:2px;width:66px;height:66px;border:1px solid #b977ed;border-radius:18px;color:#f6e5ff;background:#281536ed;box-shadow:0 4px 15px #0005;font:600 14px/1.1 sans-serif}
.mobile-attacks span{font-size:27px}.mobile-attacks small{font:inherit}.mobile-attacks button.is-held{background:#7841a3;box-shadow:0 0 26px #bd68ff99;transform:scale(.96)}
.mobile-attacks button:disabled{opacity:.4}.mobile-controls button:focus-visible{outline:3px solid #ffdb95;outline-offset:3px}
.has-mobile-cursor .divine-cursor,.has-mobile-cursor .raid-magic-hint{display:none!important}
.has-mobile-cursor.golem-cage-captured .mobile-cursor svg,.has-mobile-cursor.ravager-virtual-cursor .mobile-cursor svg{opacity:0}
@media(hover:hover),(pointer:fine){.mobile-controls{display:none}}
