/* CrateMarket 1.1.28 — one active gameplay session. */
html.cm-game-session-checking body {
  cursor: progress;
}

html.cm-game-session-blocked,
html.cm-game-session-blocked body {
  min-height: 100%;
  overflow: hidden !important;
  overscroll-behavior: none;
  background: #090710 !important;
}

html.cm-game-session-blocked body > :not(#cmGameSessionModal):not(script):not(style):not(link) {
  visibility: hidden !important;
  pointer-events: none !important;
  user-select: none !important;
}

#cmGameSessionModal.cm-game-session-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  padding:
    max(20px, env(safe-area-inset-top))
    max(18px, env(safe-area-inset-right))
    max(24px, calc(env(safe-area-inset-bottom) + 16px))
    max(18px, env(safe-area-inset-left));
  background: rgba(4, 3, 9, 0.96);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  overflow: auto;
  visibility: visible !important;
  pointer-events: auto !important;
}

#cmGameSessionModal.cm-game-session-modal.hidden {
  display: none !important;
}

/* Reuse the game's modal-card and button classes; these rules only provide a
   safe fallback on the standalone Account/Admin/VIP pages. */
#cmGameSessionModal .modal-card {
  width: min(520px, 100%);
  max-height: min(720px, calc(100dvh - 48px));
  overflow: auto;
  border: 1px solid var(--border, rgba(157, 126, 255, 0.32));
  border-radius: 22px;
  background:
    radial-gradient(circle at 50% -10%, rgba(135, 90, 255, 0.18), transparent 42%),
    var(--panel, #15111f);
  box-shadow: var(--shadow, 0 24px 70px rgba(0, 0, 0, 0.58));
  padding: clamp(22px, 5vw, 34px);
  text-align: center;
  color: var(--text, #f6f1ff);
}

#cmGameSessionModal .eyebrow {
  margin: 0 0 8px;
  color: var(--muted, #b9aecf);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

#cmGameSessionModal h2 {
  margin: 0 0 14px;
  font-size: clamp(1.55rem, 5vw, 2.1rem);
  line-height: 1.12;
}

#cmGameSessionModal .cm-game-session-message {
  display: grid;
  gap: 10px;
  margin: 0 auto 22px;
  max-width: 42ch;
  color: var(--muted, #c5bbd8);
  line-height: 1.55;
}

#cmGameSessionModal .cm-game-session-message p {
  margin: 0;
}

#cmGameSessionModal .cm-game-session-platform {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 34px;
  padding: 7px 12px;
  margin: 2px auto 0;
  border: 1px solid rgba(171, 143, 255, 0.28);
  border-radius: 999px;
  background: rgba(133, 93, 238, 0.1);
  color: var(--text, #f6f1ff);
  font-size: 0.9rem;
  font-weight: 750;
}

#cmGameSessionModal .cm-game-session-actions {
  display: grid;
  gap: 10px;
}

#cmGameSessionModal .btn {
  width: 100%;
  min-height: 48px;
}

#cmGameSessionModal .btn[aria-busy="true"] {
  cursor: progress;
}

@media (max-width: 520px) {
  #cmGameSessionModal.cm-game-session-modal {
    align-items: center;
    padding-bottom: max(28px, calc(env(safe-area-inset-bottom) + 22px));
  }
  #cmGameSessionModal .modal-card {
    border-radius: 19px;
    padding: 24px 18px;
  }
}
