/* Every rule is scoped to the mobile presentation mode. */
body.mobile-revolution{--mui-gold:#c6a66b;--mui-ink:rgba(15,20,24,.88);--mui-text:#f4ebd6;background:#101417}
body.mobile-revolution.mmo-shell main{position:fixed!important;inset:0!important;margin:0!important;padding:0!important;width:100%!important;max-width:none!important;height:100dvh!important;max-height:none!important;overflow:hidden!important;border:0!important;display:block!important}
body.mobile-revolution .play,body.mobile-revolution .viewport{width:100%!important;height:100%!important;max-height:none!important;border:0!important;border-radius:0!important;aspect-ratio:auto!important}
body.mobile-revolution .viewport>canvas#game{width:100%!important;height:100%!important;object-fit:contain}
body.mobile-revolution #mmoStatusHud,body.mobile-revolution #mmoExpBar,body.mobile-revolution #mobileTopbar,body.mobile-revolution #mobileStatusHud,body.mobile-revolution #mobileChatPeek,body.mobile-revolution #mmoMenuButton,body.mobile-revolution #apkNav,body.mobile-revolution #apkMapTap,body.mobile-revolution #mmoQuestTracker,body.mobile-revolution #mmoPartyHud,body.mobile-revolution #apkEvent,body.mobile-revolution #eventBanner,body.mobile-revolution .closed-beta-banner,body.mobile-revolution #tutorial,body.mobile-revolution .map-badge,body.mobile-revolution #corruptionHud,body.mobile-revolution #dungeonObjective{display:none!important}
body.mobile-revolution .mui-root{position:absolute;inset:0;z-index:56;pointer-events:none;color:var(--mui-text);font:12px/1.3 system-ui,sans-serif}
body.mobile-revolution .mui-root[hidden]{display:none!important}
body.mobile-revolution .mui-hero{position:absolute;box-sizing:border-box;padding:6px 8px;background:linear-gradient(115deg,rgba(31,32,33,.92),rgba(13,21,25,.8));border:1px solid #9e824850;border-left:3px solid var(--mui-gold);border-radius:4px 12px 12px 4px;overflow:hidden}
body.mobile-revolution .mui-name{display:block;font-size:12px;color:#ecd5a7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:17px}
body.mobile-revolution .mui-meter{position:relative;background:#080c10cf;overflow:hidden;border-radius:3px;height:14px;margin:2px 0;box-shadow:inset 0 0 0 1px #ffffff0d}
body.mobile-revolution .mui-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#863537,#c25653)}
body.mobile-revolution .mui-meter.mp i{background:linear-gradient(90deg,#284b74,#568fb2)}
body.mobile-revolution .mui-meter.xp{height:9px}body.mobile-revolution .mui-meter.xp i{background:linear-gradient(90deg,#786432,#caa754)}
body.mobile-revolution .mui-meter span{position:absolute;inset:0;text-align:center;font-size:10px;line-height:14px;color:#fff;text-shadow:0 1px 2px #000}
body.mobile-revolution .mui-meter.xp span{font-size:8px;line-height:9px}
body.mobile-revolution .mui-nav{position:absolute;display:flex;gap:4px;justify-content:flex-end;pointer-events:auto}
body.mobile-revolution .mui-button{box-sizing:border-box;min-width:44px;min-height:44px;margin:0;padding:6px;color:var(--mui-text);border:1px solid #b090535e;border-radius:10px;background:linear-gradient(145deg,#303534dc,#111a20df);box-shadow:inset 0 1px 0 #e7cf8d18;touch-action:none;pointer-events:auto;font:16px system-ui}
body.mobile-revolution .mui-button:active,body.mobile-revolution .mui-button[aria-pressed=true]{border-color:#ecd296;background:#64563cd9}
body.mobile-revolution .mui-button:disabled{opacity:.48}
body.mobile-revolution .mui-target{position:absolute;left:50%;transform:translateX(-50%);top:8px;width:180px;padding:4px 8px;background:#15171b9e;border-radius:6px;box-sizing:border-box;max-width:22%}
body.mobile-revolution .mui-target strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;text-align:center}
body.mobile-revolution .mui-target[hidden]{display:none!important}
body.mobile-revolution .mui-root.mui-portrait .mui-target{top:94px;max-width:56%}
body.mobile-revolution #privateEnvelope{position:absolute!important;top:calc(8px + env(safe-area-inset-top,0px))!important;right:calc(8px + env(safe-area-inset-right,0px))!important;left:auto!important;bottom:auto!important;width:44px!important;min-height:44px!important;border-radius:10px!important;z-index:57!important}
body.mobile-revolution .mui-nav{padding-right:48px}
body.mobile-revolution #gameUI .mmo-window,body.mobile-revolution #gameUI #modal,body.mobile-revolution #gameUI #tradePanel{position:absolute!important;inset:calc(8px + env(safe-area-inset-top,0px)) calc(8px + env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) calc(8px + env(safe-area-inset-left,0px))!important;width:auto!important;max-width:none!important;max-height:none!important;height:auto!important;transform:none!important;overflow:auto!important;overscroll-behavior:contain;touch-action:pan-y;background:linear-gradient(130deg,#222828f5,#101921f8);border:1px solid #ad8e5266;border-radius:14px;padding:12px!important;z-index:100!important;box-sizing:border-box;pointer-events:auto}
body.mobile-revolution #gameUI .mmo-window[hidden],body.mobile-revolution #gameUI #tradePanel[hidden]{display:none!important}
body.mobile-revolution #gameUI .mmo-window:not([hidden]){display:block!important}
body.mobile-revolution #gameUI #modal:not([open]){display:none!important}
body.mobile-revolution #gameUI .mmo-window-heading{position:sticky;top:-12px;background:#151e24f5;z-index:4;min-height:44px;padding:8px 0;border-bottom:1px solid #ab8e5240}
body.mobile-revolution #gameUI .mmo-window-heading button,body.mobile-revolution #gameUI #modal .close{min-height:44px;min-width:44px}
body.mobile-revolution .mui-menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
body.mobile-revolution .mui-menu-tile{display:flex;align-items:center;gap:9px;text-align:left;font-size:12px;min-height:60px}
body.mobile-revolution .mui-menu-tile b{font-size:24px;color:#d1b577;font-weight:400}
body.mobile-revolution .mui-menu-tile span{overflow-wrap:anywhere}
body.mobile-revolution .mui-more{margin-top:12px;border-top:1px solid #b2934f40;padding-top:12px}
body.mobile-revolution .mui-more summary{min-height:44px;color:#d6bd85;cursor:pointer}
body.mobile-revolution .mui-community{width:100%;height:65dvh;border:0}
body.mobile-revolution .mui-panel-open .mui-root{visibility:hidden}
body.mobile-revolution #gameMenu header,body.mobile-revolution #gameMenu .map-heading{display:flex!important;flex-wrap:wrap;position:static!important;padding:8px!important}
body.mobile-revolution #gameUI input,body.mobile-revolution #gameUI select,body.mobile-revolution #gameUI textarea{font-size:16px!important;min-height:44px;max-width:100%;box-sizing:border-box}
body.mobile-revolution #gameUI .equipment-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:600px){body.mobile-revolution .mui-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
body.mobile-revolution.mui-controls-ready #mobileControls,body.mobile-revolution.mui-controls-ready #mobileJoystick,body.mobile-revolution.mui-controls-ready #apkCombat,body.mobile-revolution.mui-controls-ready #skillBar,body.mobile-revolution.mui-controls-ready .actionbar{display:none!important}
body.mobile-revolution .mui-joystick{position:absolute;border-radius:50%;background:radial-gradient(circle at center,#7b74652e 0 28%,#111a2260 29% 65%,#d5b67536 66% 68%,#0d192329 69%);box-shadow:inset 0 0 16px #0008,0 2px 7px #0003;pointer-events:auto;touch-action:none;border:1px solid #dcc69366;box-sizing:border-box;user-select:none}
body.mobile-revolution .mui-compass{position:absolute;inset:0;display:grid;place-items:center;font-size:88px;color:#d0ba7f25;line-height:1;pointer-events:none}
body.mobile-revolution .mui-stick{position:absolute;left:29%;top:29%;width:42%;height:42%;border-radius:50%;background:radial-gradient(circle at 35% 25%,#bbb49c,#5c6467 35%,#2f3b41 80%);box-shadow:0 3px 9px #0009,inset 0 1px 3px #f2ddab77;border:1px solid #e0c28666;pointer-events:none}
body.mobile-revolution .mui-joystick.pressed{border-color:#dfcb99cc}
body.mobile-revolution .mui-combat{position:absolute;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding-right:86px;box-sizing:border-box}
body.mobile-revolution .mui-attack{position:absolute;bottom:50px;right:0;width:76px;height:76px;border-radius:50%;font-size:32px;background:radial-gradient(circle at 40% 30%,#635444ef,#263038f0 70%);border:2px solid #cbae73aa;box-shadow:0 4px 12px #0005,inset 0 1px 2px #f0ddb970}
body.mobile-revolution .mui-attack.pressed{background:#8d7044e6;border-color:#f2d48d}
body.mobile-revolution .mui-attack::after{content:attr(data-cooldown);position:absolute;bottom:4px;left:0;right:0;font-size:12px}
body.mobile-revolution .mui-skills{display:grid;grid-template-columns:repeat(3,44px);gap:6px;justify-content:end}
body.mobile-revolution .mui-skill{position:relative;width:44px;height:44px;border-radius:12px;font-size:21px;background:linear-gradient(0deg,#0b121bc9 var(--mui-cooldown,0%),#36424dd9 var(--mui-cooldown,0%))}
body.mobile-revolution .mui-cd{position:absolute;bottom:1px;right:3px;font:10px system-ui;color:#fff;text-shadow:0 1px 2px #000;pointer-events:none}
body.mobile-revolution .mui-utility{display:flex;gap:4px;position:relative;min-width:188px;justify-content:flex-end}
body.mobile-revolution .mui-utility button{width:44px;height:44px;font-size:12px;font-weight:700;border-radius:8px}
body.mobile-revolution .mui-hp{border-bottom-color:#c86b65}body.mobile-revolution .mui-mp{border-bottom-color:#70a1d5}
body.mobile-revolution .mui-root.mui-portrait .mui-combat{padding-right:76px}
body.mobile-revolution .mui-root.mui-portrait .mui-skills{grid-template-columns:repeat(2,44px)}
body.mobile-revolution .mui-control-editor label{display:block;margin:14px 0;color:#d9c9a6}body.mobile-revolution .mui-control-editor input[type=range]{width:100%;accent-color:#bea064}body.mobile-revolution .mui-control-editor input[type=checkbox]{width:24px;margin-left:12px}
body.mobile-revolution #toast{display:none!important}
body.mobile-revolution .mui-chat{position:absolute;background:linear-gradient(90deg,#111b2463,#111b2436);border-top:1px solid #b5a47432;border-radius:6px;pointer-events:auto;font-size:10px;box-sizing:border-box;max-height:82px;overflow:hidden}
body.mobile-revolution .mui-chat-header{display:flex;justify-content:space-between;height:20px;align-items:center}
body.mobile-revolution .mui-chat-header .mui-button{min-height:44px;height:44px;min-width:44px;background:transparent;border:0;font-size:11px;padding:4px;position:relative;z-index:2}
body.mobile-revolution .mui-chat-lines{pointer-events:none;padding:1px 5px 5px}
body.mobile-revolution .mui-chat-lines span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:14px;text-shadow:0 1px 2px #000}
body.mobile-revolution .mui-chat-collapsed .mui-chat-lines{display:none}
body.mobile-revolution .mui-system{color:#b9cbd6}body.mobile-revolution .mui-event{color:#e9bc72}body.mobile-revolution .mui-pm{color:#e2c788}
body.mobile-revolution #gameUI #chatPanel{position:absolute!important;inset:calc(8px + env(safe-area-inset-top,0px)) calc(8px + env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) calc(8px + env(safe-area-inset-left,0px))!important;transform:none!important;width:auto!important;height:auto!important;max-height:none!important;overflow:auto!important;border-radius:12px;background:#101b24f2;padding:12px;z-index:100!important;box-sizing:border-box;pointer-events:auto}
body.mobile-revolution #gameUI #chatPanel[hidden]{display:none!important}
body.mobile-revolution #chatLog{max-height:calc(var(--mui-height,100dvh) - 165px);overflow:auto;overflow-wrap:anywhere;touch-action:pan-y;font-size:13px}
body.mobile-revolution #chatForm{position:sticky;bottom:0;display:flex;gap:6px;background:#111d26;align-items:center;padding-top:8px}
body.mobile-revolution #chatInput{min-width:0;flex:1}body.mobile-revolution #chatForm button{min-height:44px;min-width:60px}
body.mobile-revolution #privateChatLog{max-height:calc(var(--mui-height,100dvh) - 220px)!important;min-height:40px}
body.mobile-revolution #privateChatForm{position:sticky;bottom:0;background:#101a23;padding-top:8px}
body.mobile-revolution.mmo-shell main{inset:auto!important;left:var(--mui-left,0px)!important;top:var(--mui-top,0px)!important;width:var(--mui-width,100%)!important;height:var(--mui-height,100dvh)!important}
body.mobile-revolution .mui-combat{padding-bottom:52px}
body.mobile-revolution .mui-utility{position:absolute;bottom:0;right:0;width:188px;min-width:188px}
body.mobile-revolution .mui-root.mui-portrait .mui-combat{padding-right:82px}
body.mobile-revolution .mui-chat{max-height:90px;font-size:11px}
body.mobile-revolution .mui-chat-header{height:44px}
body.mobile-revolution .mui-chat-header .mui-button{font-size:12px}
body.mobile-revolution .mui-skill-icon{display:block;width:32px!important;height:32px!important;margin:auto;pointer-events:none}
body.mobile-revolution .mui-skill:disabled .mui-skill-icon{filter:grayscale(.7);opacity:.6}
body.mobile-revolution .mui-skill{padding:3px}
body.mobile-revolution .mui-skill .mui-cd{z-index:2;background:#090e16a0;border-radius:3px;padding:0 2px}
body.mobile-revolution .mui-root.mui-compact .mui-hero{padding-top:3px;padding-bottom:3px}
body.mobile-revolution.mui-typing .mui-root,body.mobile-revolution.mui-typing #privateEnvelope{visibility:hidden}
body.mobile-revolution #gameUI .mui-button:focus-visible{outline:2px solid #efd49a;outline-offset:2px}
body.mobile-revolution .mui-menu-grid[hidden],body.mobile-revolution .mui-more[hidden]{display:none!important}
body.mobile-revolution #gameUI #gameMenu .mui-more .actionbar{display:flex!important;flex-wrap:wrap;position:static!important}
@media(max-height:320px){body.mobile-revolution .mui-target{display:none}body.mobile-revolution .mui-chat{max-height:44px}body.mobile-revolution .mui-chat-lines{display:none}}
body.mobile-revolution #gameUI .mmo-window #tutorial:not([hidden]){display:block!important;position:static!important;max-width:none!important}
body.mobile-revolution #mmoTooltip,body.mobile-revolution #mobileOrientation{display:none!important}
body.mobile-revolution #gameUI .mui-button{min-width:44px!important;min-height:44px!important}
body.mobile-revolution .version-warning{display:none!important}

/* MUI 2.0.1: hide the legacy MMO navigation.
   This overrides body.mmo-shell.mobile-mode #mobileTopbar (display:flex!important). */
body.mobile-revolution.mmo-shell.mobile-mode #mobileTopbar,
body.mobile-revolution.mmo-shell.mobile-mode #apkNav{display:none!important}
/* Both world map and minimap remain available from the 3-dot menu. */
body.mobile-revolution .mui-nav .mui-map{display:none!important}
body.mobile-revolution .mui-nav .mui-menu{font-size:27px;line-height:1;letter-spacing:1px}

body.mobile-revolution .mui-button,body.mobile-revolution .mui-joystick,body.mobile-revolution .mui-menu-tile{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}
body.mobile-revolution .mui-joystick,body.mobile-revolution .mui-combat .mui-button{touch-action:none}
