/* MW2 Create-a-Class: a full-screen canvas the menu system paints on (game/ui/mw2-menu), over a dimmed page. */
#cac{position:fixed;inset:0;z-index:40;overflow:hidden;color:#fff;background:#0009;backdrop-filter:blur(4px)}
#cac[hidden]{display:none}
.mw2-menu-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:default}
/* Escape for fingers: a Back pill at the bottom-left on touch screens, clear of the phone's home bar and of MW2's
   own prompts (they end at the list's right edge), in the touch controls' style. */
.mw2-menu-back{position:absolute;z-index:2;left:max(16px,env(safe-area-inset-left));bottom:max(14px,calc(env(safe-area-inset-bottom,0px) + 8px));display:flex;align-items:center;gap:9px;height:52px;min-width:120px;padding:0 22px 0 17px;border:1px solid #eeeeee66;border-radius:26px;background:#16211799;color:#f3edd9;font:600 13px/1 Field,'Arial Narrow',Arial,sans-serif;letter-spacing:2px;-webkit-tap-highlight-color:transparent;touch-action:manipulation;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 6px 24px #0006;transition:background .12s,border-color .12s,transform .12s}
.mw2-menu-back svg{width:14px;height:14px;flex:none}
#cac[data-suspended] .mw2-menu-back{display:none}
.mw2-menu-back:active{background:#d1ab6faa;border-color:#ffe0a2;transform:scale(.97)}
/* Touch screens: the open menu's rows again, big enough for a thumb (mw2-menu/touch-list.js): 52 px rows (the main
   action 60), a 6 px gap, MW2's font and selection bar, over the menu's own column; the art and details MW2 draws
   to the right stay in view. Mouse and pad keep MW2's rows (this panel is only shown on touch screens). */
.mw2-touch-menu{position:absolute;z-index:1;top:0;left:0;width:clamp(260px,40vw,380px);max-height:calc(100% - 70px - env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;padding:max(12px,env(safe-area-inset-top)) 18px 16px max(16px,env(safe-area-inset-left));box-sizing:border-box;background:linear-gradient(90deg,#070908f5 0,#070908f0 88%,#07090800 100%);-webkit-mask-image:linear-gradient(#000 calc(100% - 14px),#0000);mask-image:linear-gradient(#000 calc(100% - 14px),#0000);border-bottom-right-radius:6px;pointer-events:auto}
.mw2-touch-menu.measure{height:100%}
.mw2-touch-menu[hidden]{display:none}
.mw2-touch-title{margin:2px 0 8px;padding:0 4px;color:#f3edd9;font:400 22px/1.1 MW2Conduit,'Arial Narrow',Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 1px 2px #000}
.mw2-touch-rows{flex:0 1 auto;min-height:0;display:flex;flex-direction:column;gap:6px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none}
.mw2-touch-rows.scrolls{-webkit-mask-image:linear-gradient(#000 calc(100% - 18px),#0000);mask-image:linear-gradient(#000 calc(100% - 18px),#0000)}
.mw2-touch-rows::-webkit-scrollbar{display:none}
.mw2-touch-menu.two{width:clamp(420px,62vw,600px)}
.mw2-touch-menu.measure .mw2-touch-rows{flex:1}
.mw2-touch-menu.two .mw2-touch-rows{display:grid;grid-auto-flow:column;grid-template-rows:repeat(var(--touch-rows),auto);grid-auto-columns:1fr;align-content:start;column-gap:8px}
.mw2-touch-row{flex:none;position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:5px 16px 5px 18px;border:1px solid #ffffff1f;border-radius:4px;background:#ffffff0d;color:#e9e6d8;font:400 17px/1.15 MW2Conduit,'Arial Narrow',Arial,sans-serif;letter-spacing:.05em;text-align:left;text-transform:uppercase;-webkit-tap-highlight-color:transparent;touch-action:pan-y;cursor:pointer}
.mw2-touch-row.lead{min-height:56px;font-size:19px}
.mw2-touch-row::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:2px;background:transparent}
.mw2-touch-row.focused{border-color:#ffffff59;background:linear-gradient(90deg,#ffffff3d,#ffffff12);color:#fff}
.mw2-touch-row.focused::before{background:#f2e7b9}
.mw2-touch-row:active{background:#d1ab6f55;border-color:#ffe0a2;transform:scale(.985)}
.mw2-touch-row[aria-disabled=true]{opacity:.42}
.mw2-touch-row:focus-visible{outline:2px solid #f2e7b9;outline-offset:2px}
.mw2-touch-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mw2-touch-detail{flex:none;max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f2e7b9;font-size:15px;text-transform:none;letter-spacing:.02em}
@media (prefers-reduced-motion:reduce){.mw2-touch-row:active{transform:none}}
.mw2-menu-live{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* A real field sits invisibly over the edit field so keyboards, paste and IME work; the canvas draws the text. */
.mw2-menu-field{position:absolute;margin:0;padding:0;border:0;background:transparent;color:transparent;caret-color:transparent;outline:none;opacity:.01}
.mw2-menu-fallback{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;gap:6px;min-width:240px;padding:18px;background:#0b0d0bee;font:600 14px/1.2 system-ui,sans-serif}
.mw2-menu-fallback h2{margin:0 0 8px;font-size:16px;letter-spacing:.06em}
.mw2-menu-fallback button{padding:8px 12px;color:#fff;background:#ffffff14;border:1px solid #ffffff30;font:inherit;text-align:left;cursor:pointer}
.mw2-menu-fallback button:focus-visible,.mw2-menu-fallback button:hover{background:#000;outline:1px solid #fff}
/* Compact summary of the class in Settings. */
.cac-mini{margin:14px 0 10px;color:#fff;background:#0b0d0b;padding:10px;font:600 13px/1.35 system-ui,sans-serif}
.class-mini-name{display:block;font-size:15px;letter-spacing:.04em}
.class-mini-weapons{opacity:.7;margin-bottom:6px}
.class-mini-perk{display:flex;align-items:center;gap:8px}
.class-mini-perk img{width:24px;height:24px}
/* The in-game menu sits over the live game: MW2's own menu darkens it, so the overlay adds nothing. */
#cac[data-menu=game]{background:none;backdrop-filter:none}
/* The main menus paint MW2's own full-screen background: no dimming or blur of the page behind them. */
#cac[data-menu=front]{background:#000;backdrop-filter:none}
/* A menu set aside under Options stays on screen beneath it (Options is z-index 20), frozen and taking no input. */
#cac[data-suspended]{z-index:15;pointer-events:none}
