/* PACK333R122R16 — desktop MENU/SELECT mouse reactivation after returning from FIGHT. UI/input only. */
html.pack333r122r3-menu-select-active #pack185MenuSurface,
html.pack333r122r3-menu-select-active #pack185SelectSurface,
body.pack333r122r3-menu-select-active #pack185MenuSurface,
body.pack333r122r3-menu-select-active #pack185SelectSurface,
body.pack185-overlay-active #pack185MenuSurface,
body.pack185-overlay-active #pack185SelectSurface{
  pointer-events:auto!important;
  touch-action:manipulation!important;
  z-index:82002!important;
}

html.pack333r122r3-menu-select-active #pack185MenuSurface button,
html.pack333r122r3-menu-select-active #pack185SelectSurface button,
body.pack333r122r3-menu-select-active #pack185MenuSurface button,
body.pack333r122r3-menu-select-active #pack185SelectSurface button,
body.pack185-overlay-active #pack185MenuSurface button,
body.pack185-overlay-active #pack185SelectSurface button{
  pointer-events:auto!important;
  touch-action:manipulation!important;
  cursor:pointer!important;
}

/* Graphics/audio/online overlays still win; this patch must not make hidden surfaces clickable over panels. */
body.pack185-gfx-open #pack185MenuSurface,
body.pack185-gfx-open #pack185SelectSurface,
body.pack182-gfx-open #pack185MenuSurface,
body.pack182-gfx-open #pack185SelectSurface,
body.pack223-audio-prompt-open #pack185MenuSurface,
body.pack223-audio-prompt-open #pack185SelectSurface{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}


/* R40R25 block removed by R40R27 hardening: stale classes are cleaned/neutralized by R40R27. */

/* R40R26 — safer authoritative desktop pointer/cursor restore.
   Scene/modal classes now decide active surfaces; no active state outside MENU/SELECT. */
html.r40r26-pointer-active,
body.r40r26-pointer-active,
body.r40r26-pointer-active canvas,
body.r40r26-pointer-active #gc,
body.r40r26-pointer-active #pack185MenuSurface,
body.r40r26-pointer-active #pack185SelectSurface{
  cursor:default!important;
}
body.r40r26-pointer-active #pack185MenuSurface button,
body.r40r26-pointer-active #pack185SelectSurface button,
body.r40r26-pointer-active #pack164MenuMouseSurface button{
  cursor:pointer!important;
}
html.r40r26-menu-pointer:not(.r40r26-modal-open) #pack185MenuSurface,
body.r40r26-menu-pointer:not(.r40r26-modal-open) #pack185MenuSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r26-menu-pointer #pack185SelectSurface,
body.r40r26-menu-pointer #pack185SelectSurface{
  pointer-events:none!important;
}
html.r40r26-select-pointer:not(.r40r26-modal-open) #pack185SelectSurface,
body.r40r26-select-pointer:not(.r40r26-modal-open) #pack185SelectSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r26-select-pointer #pack185MenuSurface,
body.r40r26-select-pointer #pack185MenuSurface{
  pointer-events:none!important;
}
html.r40r26-modal-open #pack185MenuSurface,
html.r40r26-modal-open #pack185SelectSurface,
body.r40r26-modal-open #pack185MenuSurface,
body.r40r26-modal-open #pack185SelectSurface,
html.r40r26-non-menu-select #pack185MenuSurface,
html.r40r26-non-menu-select #pack185SelectSurface,
body.r40r26-non-menu-select #pack185MenuSurface,
body.r40r26-non-menu-select #pack185SelectSurface{
  pointer-events:none!important;
}


/* R40R27 — hardened pointer restore.
   Default outside active MENU/SELECT: no PACK185 surface captures pointer.
   R40R25/R40R26 stale classes are neutralized unless R40R27 active. */
html.r40r27-pointer-active,
body.r40r27-pointer-active,
body.r40r27-pointer-active canvas,
body.r40r27-pointer-active #gc,
body.r40r27-pointer-active #pack185MenuSurface,
body.r40r27-pointer-active #pack185SelectSurface{
  cursor:default!important;
}
body.r40r27-pointer-active #pack185MenuSurface button,
body.r40r27-pointer-active #pack185SelectSurface button,
body.r40r27-pointer-active #pack164MenuMouseSurface button{
  cursor:pointer!important;
}
html.r40r27-menu-pointer:not(.r40r27-modal-open) #pack185MenuSurface,
body.r40r27-menu-pointer:not(.r40r27-modal-open) #pack185MenuSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r27-menu-pointer #pack185SelectSurface,
body.r40r27-menu-pointer #pack185SelectSurface{
  pointer-events:none!important;
}
html.r40r27-select-pointer:not(.r40r27-modal-open) #pack185SelectSurface,
body.r40r27-select-pointer:not(.r40r27-modal-open) #pack185SelectSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r27-select-pointer #pack185MenuSurface,
body.r40r27-select-pointer #pack185MenuSurface{
  pointer-events:none!important;
}
html.r40r27-modal-open #pack185MenuSurface,
html.r40r27-modal-open #pack185SelectSurface,
body.r40r27-modal-open #pack185MenuSurface,
body.r40r27-modal-open #pack185SelectSurface,
html.r40r27-non-menu-select #pack185MenuSurface,
html.r40r27-non-menu-select #pack185SelectSurface,
body.r40r27-non-menu-select #pack185MenuSurface,
body.r40r27-non-menu-select #pack185SelectSurface,
html.r40r27-modal-open #pack185MenuSurface *,
html.r40r27-modal-open #pack185SelectSurface *,
body.r40r27-modal-open #pack185MenuSurface *,
body.r40r27-modal-open #pack185SelectSurface *,
html.r40r27-non-menu-select #pack185MenuSurface *,
html.r40r27-non-menu-select #pack185SelectSurface *,
body.r40r27-non-menu-select #pack185MenuSurface *,
body.r40r27-non-menu-select #pack185SelectSurface *{
  pointer-events:none!important;
}

/* Stale R40R25/R40R26 classes must not win after R40R27 is installed. */
html:not(.r40r27-pointer-active).r40r25-pointer-active #pack185MenuSurface,
html:not(.r40r27-pointer-active).r40r25-pointer-active #pack185SelectSurface,
body:not(.r40r27-pointer-active).r40r25-pointer-active #pack185MenuSurface,
body:not(.r40r27-pointer-active).r40r25-pointer-active #pack185SelectSurface,
html:not(.r40r27-pointer-active).r40r26-pointer-active #pack185MenuSurface,
html:not(.r40r27-pointer-active).r40r26-pointer-active #pack185SelectSurface,
body:not(.r40r27-pointer-active).r40r26-pointer-active #pack185MenuSurface,
body:not(.r40r27-pointer-active).r40r26-pointer-active #pack185SelectSurface{
  pointer-events:none!important;
}


/* R40R28 — menu frame pacing + lightweight pointer guard classes. */
html.r40r28-pointer-active,
body.r40r28-pointer-active,
body.r40r28-pointer-active canvas,
body.r40r28-pointer-active #gc,
body.r40r28-pointer-active #pack185MenuSurface,
body.r40r28-pointer-active #pack185SelectSurface{
  cursor:default!important;
}
body.r40r28-pointer-active #pack185MenuSurface button,
body.r40r28-pointer-active #pack185SelectSurface button,
body.r40r28-pointer-active #pack164MenuMouseSurface button{
  cursor:pointer!important;
}
html.r40r28-menu-pointer:not(.r40r28-modal-open) #pack185MenuSurface,
body.r40r28-menu-pointer:not(.r40r28-modal-open) #pack185MenuSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r28-menu-pointer #pack185SelectSurface,
body.r40r28-menu-pointer #pack185SelectSurface{
  pointer-events:none!important;
}
html.r40r28-select-pointer:not(.r40r28-modal-open) #pack185SelectSurface,
body.r40r28-select-pointer:not(.r40r28-modal-open) #pack185SelectSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r28-select-pointer #pack185MenuSurface,
body.r40r28-select-pointer #pack185MenuSurface{
  pointer-events:none!important;
}
html.r40r28-modal-open #pack185MenuSurface,
html.r40r28-modal-open #pack185SelectSurface,
body.r40r28-modal-open #pack185MenuSurface,
body.r40r28-modal-open #pack185SelectSurface,
html.r40r28-non-menu-select #pack185MenuSurface,
html.r40r28-non-menu-select #pack185SelectSurface,
body.r40r28-non-menu-select #pack185MenuSurface,
body.r40r28-non-menu-select #pack185SelectSurface,
html.r40r28-modal-open #pack185MenuSurface *,
html.r40r28-modal-open #pack185SelectSurface *,
body.r40r28-modal-open #pack185MenuSurface *,
body.r40r28-modal-open #pack185SelectSurface *,
html.r40r28-non-menu-select #pack185MenuSurface *,
html.r40r28-non-menu-select #pack185SelectSurface *,
body.r40r28-non-menu-select #pack185MenuSurface *,
body.r40r28-non-menu-select #pack185SelectSurface *{
  pointer-events:none!important;
}


/* R40R29 — final pointer stability overrides.
   Only R40R29 active classes may enable Pack185 pointer surfaces.
   Old R40R25/R40R26/R40R27 active classes are neutralized unless R40R29 is active. */
html.r40r29-pointer-active,
body.r40r29-pointer-active,
body.r40r29-pointer-active canvas,
body.r40r29-pointer-active #gc,
body.r40r29-pointer-active #pack185MenuSurface,
body.r40r29-pointer-active #pack185SelectSurface{
  cursor:default!important;
}
body.r40r29-pointer-active #pack185MenuSurface button,
body.r40r29-pointer-active #pack185SelectSurface button,
body.r40r29-pointer-active #pack164MenuMouseSurface button{
  cursor:pointer!important;
}
html.r40r29-menu-pointer:not(.r40r29-modal-open) #pack185MenuSurface,
body.r40r29-menu-pointer:not(.r40r29-modal-open) #pack185MenuSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r29-menu-pointer #pack185SelectSurface,
body.r40r29-menu-pointer #pack185SelectSurface{
  pointer-events:none!important;
}
html.r40r29-select-pointer:not(.r40r29-modal-open) #pack185SelectSurface,
body.r40r29-select-pointer:not(.r40r29-modal-open) #pack185SelectSurface{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:82025!important;
}
html.r40r29-select-pointer #pack185MenuSurface,
body.r40r29-select-pointer #pack185MenuSurface{
  pointer-events:none!important;
}
html.r40r29-modal-open #pack185MenuSurface,
html.r40r29-modal-open #pack185SelectSurface,
body.r40r29-modal-open #pack185MenuSurface,
body.r40r29-modal-open #pack185SelectSurface,
html.r40r29-non-menu-select #pack185MenuSurface,
html.r40r29-non-menu-select #pack185SelectSurface,
body.r40r29-non-menu-select #pack185MenuSurface,
body.r40r29-non-menu-select #pack185SelectSurface,
html.r40r29-modal-open #pack185MenuSurface *,
html.r40r29-modal-open #pack185SelectSurface *,
body.r40r29-modal-open #pack185MenuSurface *,
body.r40r29-modal-open #pack185SelectSurface *,
html.r40r29-non-menu-select #pack185MenuSurface *,
html.r40r29-non-menu-select #pack185SelectSurface *,
body.r40r29-non-menu-select #pack185MenuSurface *,
body.r40r29-non-menu-select #pack185SelectSurface *{
  pointer-events:none!important;
}
html:not(.r40r29-pointer-active).r40r25-pointer-active #pack185MenuSurface,
html:not(.r40r29-pointer-active).r40r25-pointer-active #pack185SelectSurface,
body:not(.r40r29-pointer-active).r40r25-pointer-active #pack185MenuSurface,
body:not(.r40r29-pointer-active).r40r25-pointer-active #pack185SelectSurface,
html:not(.r40r29-pointer-active).r40r26-pointer-active #pack185MenuSurface,
html:not(.r40r29-pointer-active).r40r26-pointer-active #pack185SelectSurface,
body:not(.r40r29-pointer-active).r40r26-pointer-active #pack185MenuSurface,
body:not(.r40r29-pointer-active).r40r26-pointer-active #pack185SelectSurface,
html:not(.r40r29-pointer-active).r40r27-pointer-active #pack185MenuSurface,
html:not(.r40r29-pointer-active).r40r27-pointer-active #pack185SelectSurface,
body:not(.r40r29-pointer-active).r40r27-pointer-active #pack185MenuSurface,
body:not(.r40r29-pointer-active).r40r27-pointer-active #pack185SelectSurface,
html:not(.r40r29-pointer-active).r40r28-pointer-active #pack185MenuSurface,
html:not(.r40r29-pointer-active).r40r28-pointer-active #pack185SelectSurface,
body:not(.r40r29-pointer-active).r40r28-pointer-active #pack185MenuSurface,
body:not(.r40r29-pointer-active).r40r28-pointer-active #pack185SelectSurface{
  pointer-events:none!important;
}


/* R40R30 — final stale pointer class de-dup.
   Old r40r25/r40r26/r40r27/r40r28/r40r29 menu/select classes cannot activate surfaces
   unless the current r40r30-pointer-active class is present. */
html:not(.r40r30-pointer-active).r40r25-menu-pointer #pack185MenuSurface,
html:not(.r40r30-pointer-active).r40r26-menu-pointer #pack185MenuSurface,
html:not(.r40r30-pointer-active).r40r27-menu-pointer #pack185MenuSurface,
html:not(.r40r30-pointer-active).r40r28-menu-pointer #pack185MenuSurface,
html:not(.r40r30-pointer-active).r40r29-menu-pointer #pack185MenuSurface,
body:not(.r40r30-pointer-active).r40r25-menu-pointer #pack185MenuSurface,
body:not(.r40r30-pointer-active).r40r26-menu-pointer #pack185MenuSurface,
body:not(.r40r30-pointer-active).r40r27-menu-pointer #pack185MenuSurface,
body:not(.r40r30-pointer-active).r40r28-menu-pointer #pack185MenuSurface,
body:not(.r40r30-pointer-active).r40r29-menu-pointer #pack185MenuSurface,
html:not(.r40r30-pointer-active).r40r25-select-pointer #pack185SelectSurface,
html:not(.r40r30-pointer-active).r40r26-select-pointer #pack185SelectSurface,
html:not(.r40r30-pointer-active).r40r27-select-pointer #pack185SelectSurface,
html:not(.r40r30-pointer-active).r40r28-select-pointer #pack185SelectSurface,
html:not(.r40r30-pointer-active).r40r29-select-pointer #pack185SelectSurface,
body:not(.r40r30-pointer-active).r40r25-select-pointer #pack185SelectSurface,
body:not(.r40r30-pointer-active).r40r26-select-pointer #pack185SelectSurface,
body:not(.r40r30-pointer-active).r40r27-select-pointer #pack185SelectSurface,
body:not(.r40r30-pointer-active).r40r28-select-pointer #pack185SelectSurface,
body:not(.r40r30-pointer-active).r40r29-select-pointer #pack185SelectSurface{
  pointer-events:none!important;
}
