/* PACK185 — autonomous QA / layout / cache / mobile fix layer */
#pack185UiCanvas,#pack185QaCanvas{
  position:fixed;left:0;top:0;width:1px;height:1px;
  display:none;pointer-events:none;
}
#pack185UiCanvas{z-index:82000;}
#pack185QaCanvas{z-index:82003;}
#pack185MenuSurface,#pack185SelectSurface{
  position:fixed;left:0;top:0;width:1px;height:1px;
  z-index:82002;display:none;pointer-events:none;
}
#pack185MenuSurface button,#pack185SelectSurface button{
  position:absolute;border:0;background:transparent;opacity:0;padding:0;margin:0;
  pointer-events:auto;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
body.pack185-overlay-active #gc{opacity:0!important;pointer-events:none!important;}
body.pack185-overlay-active #pack183UiCanvas,
body.pack185-overlay-active #pack183MenuSurface,
body.pack185-overlay-active #pack183SelectSurface,
body.pack185-overlay-active #pack182UiCanvas,
body.pack185-overlay-active #pack182MenuSurface,
body.pack185-overlay-active #pack181MenuSurface,
body.pack185-overlay-active #pack164MenuMouseSurface,
body.pack185-overlay-active #pack162MenuMouseSurface,
body.pack185-overlay-active #pack159MenuSurface,
body.pack185-overlay-active #pack158MenuSurface,
body.pack185-overlay-active #pack156MenuSurface,
body.pack185-overlay-active #pack153MenuMouseLayer,
body.pack185-overlay-active #pack153GfxMenuRow,
body.pack185-overlay-active #pack153RenderCustomInfo,
body.pack185-overlay-active #pack152GfxTile{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
body.pack185-overlay-active #mobileControls,
body.pack185-overlay-active #mobileEsc,
body.pack185-overlay-active #mobileEnter,
body.pack185-overlay-active #mobileTab,
body.pack185-overlay-active #mobileF4,
body.pack185-overlay-active #touchFullscreen,
body.pack185-overlay-active .mobile-pad,
body.pack185-overlay-active .touch-btn,
body.pack185-overlay-active .mobile-hint{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
body.pack185-gfx-open #pack185UiCanvas,
body.pack185-gfx-open #pack185QaCanvas,
body.pack185-gfx-open #pack185MenuSurface,
body.pack185-gfx-open #pack185SelectSurface{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
body.pack185-qa-hitboxes #pack185QaCanvas{display:block!important;}
#pack182GfxPanel.open{
  z-index:93000!important;pointer-events:auto!important;
}
#pack182GfxPanel.open .p182-window{
  width:min(920px,96vw)!important;
  max-height:min(92dvh,calc(100dvh - 16px))!important;
  overflow-y:auto!important;overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;overscroll-behavior:contain!important;
}
#pack182GfxPanel.open select,
#pack182GfxPanel.open input,
#pack182GfxPanel.open button,
#pack182GfxPanel.open label{
  pointer-events:auto!important;touch-action:manipulation!important;
}
#pack182GfxPanel.open input[type=range]{touch-action:none!important;}
@media (pointer:coarse),(max-width:920px){
  #pack182GfxPanel.open .p182-window{padding:14px!important;border-radius:16px!important;}
  #pack182GfxPanel.open .p182-grid{grid-template-columns:1fr!important;gap:8px!important;}
  #pack182GfxPanel.open .p182-title{font-size:20px!important;}
  #pack182GfxPanel.open .p182-label{font-size:14px!important;margin-top:5px!important;}
  #pack182GfxPanel.open select,#pack182GfxPanel.open button{min-height:48px!important;font-size:16px!important;}
  #pack182GfxPanel.open input[type=range]{min-height:38px!important;}
  #pack182GfxPanel.open .p182-buttons{
    position:sticky!important;bottom:0!important;
    padding-top:12px!important;background:linear-gradient(180deg,rgba(3,7,17,0),rgba(3,7,17,.98) 25%)!important;
  }
}

/* PACK211: merged graphics settings panel from PACK182 into PACK185 */
#pack182GfxPanel{position:fixed;inset:0;z-index:90000;display:none;font-family:Arial,Helvetica,sans-serif;color:#eaf6ff;pointer-events:none;touch-action:auto;}
#pack182GfxPanel.open{display:block;pointer-events:auto;}
#pack182GfxPanel .p182-shade{position:absolute;inset:0;background:rgba(0,0,0,.94);pointer-events:auto;backdrop-filter:blur(1.5px);}
#pack182GfxPanel .p182-window{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(860px,94vw);max-height:min(90vh,calc(100dvh - 18px));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;pointer-events:auto;box-sizing:border-box;padding:18px;border-radius:18px;background:linear-gradient(180deg,rgba(7,14,31,.99),rgba(3,7,17,.995));border:1.5px solid rgba(124,247,255,.56);box-shadow:0 0 36px rgba(0,229,255,.18),inset 0 0 0 1px rgba(255,255,255,.055);}
#pack182GfxPanel .p182-title{font-weight:900;font-size:24px;color:#7cf7ff;letter-spacing:.04em;text-shadow:0 0 12px rgba(0,229,255,.26);}
#pack182GfxPanel .p182-sub{font-size:12px;opacity:.76;margin:5px 0 14px;line-height:1.35;}
#pack182GfxPanel .p182-grid{display:grid;grid-template-columns:220px 1fr;gap:10px 14px;align-items:center;}
#pack182GfxPanel .p182-label{font-size:13px;font-weight:900;color:#bfe8ff;}
#pack182GfxPanel .p182-rowbox{background:rgba(8,18,34,.72);border:1px solid rgba(255,255,255,.075);border-radius:12px;padding:10px 12px;}
#pack182GfxPanel select,#pack182GfxPanel input,#pack182GfxPanel button,#pack182GfxPanel label{pointer-events:auto!important;touch-action:manipulation;}
#pack182GfxPanel select,#pack182GfxPanel input[type=range]{width:100%;box-sizing:border-box;}
#pack182GfxPanel select{background:#081322;color:#eff7ff;border:1px solid rgba(148,163,184,.45);border-radius:10px;padding:9px 11px;font-weight:800;}
#pack182GfxPanel input[type=range]{accent-color:#38bdf8;touch-action:none;}
#pack182GfxPanel .p182-value{font-size:11px;opacity:.76;margin-top:5px;line-height:1.35;}
#pack182GfxPanel .p182-check{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:800;line-height:1.35;}
#pack182GfxPanel .p182-check input{transform:scale(1.15);}
#pack182GfxPanel .p182-summary{margin-top:14px;padding:12px 14px;border-radius:12px;background:rgba(2,10,24,.74);border:1px solid rgba(125,211,252,.20);font-size:12px;line-height:1.45;color:#d9e8fb;}
#pack182GfxPanel .p182-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;position:sticky;bottom:0;padding-top:10px;background:linear-gradient(180deg,rgba(3,7,17,0),rgba(3,7,17,.98) 28%);}
#pack182GfxPanel button{background:linear-gradient(180deg,#102543,#071426);color:#eff7ff;border:1px solid rgba(96,165,250,.52);border-radius:12px;padding:10px 14px;font-weight:900;cursor:pointer;min-height:44px;}
#pack182GfxPanel button.primary{border-color:rgba(34,197,94,.70);}#pack182GfxPanel button.warn{border-color:rgba(251,191,36,.70);}
#pack182GfxPanel.open .p182-buttons{z-index:20;position:sticky;bottom:0;pointer-events:auto!important;}
#pack182GfxPanel.open .p182-buttons button,#pack182GfxPanel.open #p182_close,#pack182GfxPanel.open #p182_apply,#pack182GfxPanel.open #p182_safe{position:relative;z-index:21;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(124,247,255,.22);}
@media (pointer:coarse),(max-width:920px){#pack182GfxPanel .p182-window{width:96vw;max-height:92dvh;padding:14px;border-radius:16px;}#pack182GfxPanel .p182-grid{grid-template-columns:1fr;gap:8px;}#pack182GfxPanel .p182-label{font-size:14px;margin-top:5px;}#pack182GfxPanel .p182-title{font-size:20px;}#pack182GfxPanel .p182-sub,#pack182GfxPanel .p182-value,#pack182GfxPanel .p182-summary{font-size:12px;}#pack182GfxPanel select,#pack182GfxPanel button{font-size:16px;min-height:48px;}#pack182GfxPanel input[type=range]{min-height:42px;}#pack182GfxPanel .p182-rowbox{padding:10px 11px;}#pack182GfxPanel .p182-buttons button{flex:1 1 30%;min-width:96px;}}


/* R40R67B3: when PACK185 graphics modal is open, do not let stale menu canvases flash behind it. */
body.pack185-gfx-open #gc,
body.pack185-gfx-open #pack181MenuSurface,
body.pack185-gfx-open #pack164MenuMouseSurface,
body.pack185-gfx-open #pack162MenuMouseSurface{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}

/* R40R67B4: Pack185 owns the visible main menu buttons; hide old helper badges/quickbars that duplicate the tile UI. */
body.pack185-overlay-active #pack226ComboQuickButton,
body.pack185-overlay-active #sk-r40r42-quickbar,
body.pack185-overlay-active #pack333r12RoomIdButton,
body.pack185-overlay-active #pack326aOnlineButton,
body.pack185-overlay-active #pack326aOnlineBadge,
body.pack185-overlay-active #pack123DifficultyBadge,
body.pack185-overlay-active #pack124DifficultyBadge,
body.pack185-overlay-active #pack125DifficultyBadge,
body.pack185-overlay-active #pack126DifficultyBadge,
body.pack185-overlay-active #pack127DifficultyBadge,
body.pack185-overlay-active .pack123-difficulty-badge,
body.pack185-overlay-active .pack124-difficulty-badge,
body.pack185-overlay-active .pack125-difficulty-badge,
body.pack185-overlay-active .pack126-difficulty-badge,
body.pack185-overlay-active .pack127-difficulty-badge{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
#pack185MenuSurface{pointer-events:auto!important;}
#pack185MenuSurface button{min-width:44px;min-height:44px;}


/* R40R67B5: hard-hide all legacy campaign difficulty/render/combo helper DOM while Pack185 owns main menu. */
body.pack185-overlay-active #sejmDiffBadgePack120,
body.pack185-overlay-active #sejmDiffBadgePack121,
body.pack185-overlay-active #sejmDiffBadgePack122,
body.pack185-overlay-active #sejmDiffBadgePack123,
body.pack185-overlay-active #sejmDiffBadgePack124,
body.pack185-overlay-active #sejmDiffBadgePack125,
body.pack185-overlay-active #sejmDiffBadgePack126,
body.pack185-overlay-active #sejmDiffBadgePack127,
body.pack185-overlay-active .difficulty-badge,
body.pack185-overlay-active .campaign-difficulty-badge{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
body.pack185-overlay-active #gc{opacity:0!important;visibility:hidden!important;pointer-events:none!important;filter:none!important;mix-blend-mode:normal!important;}
#pack185MenuSurface{z-index:82004!important;display:block;}
#pack185MenuSurface button{pointer-events:auto!important;}


/* R40R67B9: legacy campaign difficulty badge is removed unconditionally. Old Pack123-127 intervals may rewrite inline display after SELECT return, so this persistent stylesheet wins with !important. */
#sejmDiffBadgePack120,#sejmDiffBadgePack121,#sejmDiffBadgePack122,#sejmDiffBadgePack123,#sejmDiffBadgePack124,#sejmDiffBadgePack125,#sejmDiffBadgePack126,#sejmDiffBadgePack127,
.pack123-difficulty-badge,.pack124-difficulty-badge,.pack125-difficulty-badge,.pack126-difficulty-badge,.pack127-difficulty-badge,.difficulty-badge,.campaign-difficulty-badge{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
/* B9: keep authoritative surface above stale SELECT layers after returning to MENU. */
body.pack185-menu-scene #pack185MenuSurface{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;z-index:82004!important;}
body.pack185-menu-scene #pack185UiCanvas{display:block!important;visibility:visible!important;opacity:1!important;z-index:82000!important;}

/* R40R67B10: Pack232 top-layer difficulty HUD removed permanently from MENU and SELECT. */
#pack232DifficultyHud{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}


/* R40R67C1: authoritative single-roster SELECT surface. One shared hitbox layer for mouse, touch and accessibility focus. */
body.pack185-overlay-active #pack185SelectSurface{z-index:82004!important;}
#pack185SelectSurface button{pointer-events:auto!important;min-width:44px;min-height:44px;touch-action:manipulation!important;}
@media (pointer:coarse),(max-height:540px){#pack185SelectSurface button{min-width:48px;min-height:48px;}}


/* R40R67B23R1 — mobile SELECT owns the complete touch plane. */
#pack185SelectSurface{touch-action:none!important;overscroll-behavior:none!important;-webkit-user-select:none!important;user-select:none!important;}
#pack185SelectSurface button{touch-action:manipulation!important;}
html.r40r67b23r1-fight-loading-isolated #pack185UiCanvas,
body.r40r67b23r1-fight-loading-isolated #pack185UiCanvas,
html.r40r67b23r1-fight-loading-isolated #pack185QaCanvas,
body.r40r67b23r1-fight-loading-isolated #pack185QaCanvas,
html.r40r67b23r1-fight-loading-isolated #pack185MenuSurface,
body.r40r67b23r1-fight-loading-isolated #pack185MenuSurface,
html.r40r67b23r1-fight-loading-isolated #pack185SelectSurface,
body.r40r67b23r1-fight-loading-isolated #pack185SelectSurface,
html.r40r67b23r1-fight-loading-isolated #pack183UiCanvas,
body.r40r67b23r1-fight-loading-isolated #pack183UiCanvas,
html.r40r67b23r1-fight-loading-isolated #pack183SelectSurface,
body.r40r67b23r1-fight-loading-isolated #pack183SelectSurface,
html.r40r67b23r1-fight-loading-isolated #pack182UiCanvas,
body.r40r67b23r1-fight-loading-isolated #pack182UiCanvas,
html.r40r67b23r1-fight-loading-isolated #pack181MenuSurface,
body.r40r67b23r1-fight-loading-isolated #pack181MenuSurface,
html.r40r67b23r1-fight-loading-isolated #pack164MenuMouseSurface,
body.r40r67b23r1-fight-loading-isolated #pack164MenuMouseSurface,
html.r40r67b23r1-fight-loading-isolated #pack162MenuMouseSurface,
body.r40r67b23r1-fight-loading-isolated #pack162MenuMouseSurface,
html.r40r67b23r1-fight-loading-isolated #pack159MenuSurface,
body.r40r67b23r1-fight-loading-isolated #pack159MenuSurface,
html.r40r67b23r1-fight-loading-isolated #pack158MenuSurface,
body.r40r67b23r1-fight-loading-isolated #pack158MenuSurface,
html.r40r67b23r1-fight-loading-isolated #pack156MenuSurface,
body.r40r67b23r1-fight-loading-isolated #pack156MenuSurface,
html.r40r67b23r1-fight-loading-isolated #pack153MenuMouseLayer,
body.r40r67b23r1-fight-loading-isolated #pack153MenuMouseLayer{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
html.r40r67b23r1-fight-loading-isolated #gc,
body.r40r67b23r1-fight-loading-isolated #gc{visibility:hidden!important;opacity:0!important;pointer-events:none!important;}


/* R40R67B25R1 — opaque fight gate owns the entire viewport until first stable FIGHT paint. */
html.r40r67b23r1-fight-loading-isolated,body.r40r67b23r1-fight-loading-isolated{background:#02040c!important;overflow:hidden!important;}
html.r40r67b23r1-fight-loading-isolated body::after,
body.r40r67b23r1-fight-loading-isolated::after{content:'';position:fixed;inset:0;z-index:2147483200;background:#02040c;pointer-events:none;}
html.r40r67b23r1-fight-loading-isolated #skR40R34PreloadGateOverlay,
body.r40r67b23r1-fight-loading-isolated #skR40R34PreloadGateOverlay{display:flex!important;visibility:visible!important;opacity:1!important;z-index:2147483646!important;}
