/* ADR-0065 Fase 4 — obligatorisk spillepause-kategorisering (lobby-popup).
 *
 * Design-referanse: docs/design/spillepause/«Spillepause velg spill (popup
 * forslag).dc.html» — gjenskapt 1:1 på tokens (gradient #571a26→#43121c→#380e17,
 * gull #e8c98a, tekst #fdf6ec, modal 620px/radius 24). `spkat-`-prefiks mot
 * kollisjon med lobby/min-konto-CSS. Eksternt fil pga. CSP (ingen inline-CSS).
 */
.spkat-root {
  position: fixed;
  inset: 0;
  z-index: 4100; /* over legitimation-notice (4000) — pausen er hardere gate */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  overflow-y: auto;
  font-family: "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, Helvetica, Arial, sans-serif;
}

.spkat-backdrop {
  position: fixed;
  inset: 0;
  /* Solid semi-transparent i stedet for backdrop-filter blur — prosjekt-lint
   * forbyr backdrop-filter på HTML-overlays over Pixi-canvas. */
  background: rgba(23, 9, 12, 0.9);
}

.spkat-modal {
  position: relative;
  z-index: 1;
  width: 620px;
  max-width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  box-sizing: border-box;
  background: linear-gradient(180deg, #571a26 0%, #43121c 60%, #380e17 100%);
  border: 1px solid rgba(232, 201, 138, 0.35);
  border-radius: 24px;
  padding: 40px 48px;
  color: #fdf6ec;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.7);
}

.spkat-hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.spkat-icon {
  width: 72px;
  height: 72px;
  border-radius: 20px;
  border: 2px solid #e8c98a;
  display: flex;
  align-items: center;
  justify-content: center;
}

.spkat-icon-glyph {
  width: 28px;
  height: 28px;
  border: 2.5px solid #fdf6ec;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

.spkat-icon-bar {
  width: 3.5px;
  height: 12px;
  background: #fdf6ec;
  border-radius: 2px;
}

.spkat-title {
  font-size: 30px;
  font-weight: 800;
  text-align: center;
}

.spkat-lead {
  font-size: 17px;
  color: rgba(253, 246, 236, 0.8);
  text-align: center;
  line-height: 1.55;
  max-width: 460px;
}

.spkat-pausecard {
  margin-top: 24px;
  border: 1px solid rgba(232, 201, 138, 0.4);
  background: rgba(232, 201, 138, 0.08);
  border-radius: 14px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.spkat-pausecard-label {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: rgba(253, 246, 236, 0.6);
}

.spkat-pausecard-value {
  font-size: 20px;
  font-weight: 800;
  color: #e8c98a;
  margin-top: 2px;
}

.spkat-pausecard-right {
  text-align: right;
  font-size: 15px;
  color: rgba(253, 246, 236, 0.7);
  line-height: 1.4;
}

.spkat-pausecard-date {
  font-weight: 700;
  color: #fdf6ec;
}

.spkat-section {
  margin-top: 24px;
}

.spkat-section-label {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: rgba(253, 246, 236, 0.6);
  text-align: center;
}

.spkat-cards {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 14px;
}

.spkat-card {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 12px 16px;
  border-radius: 14px;
  cursor: pointer;
  border: 1.5px solid rgba(255, 255, 255, 0.35);
  background: transparent;
  color: #fdf6ec;
  font-family: inherit;
  text-align: left;
  transition: border-color 0.15s, background-color 0.15s;
}

.spkat-card.is-on {
  border-color: #e8c98a;
  background: rgba(232, 201, 138, 0.12);
}

.spkat-check {
  width: 24px;
  height: 24px;
  border-radius: 7px;
  flex-shrink: 0;
  border: 2px solid rgba(255, 255, 255, 0.4);
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

.spkat-card.is-on .spkat-check {
  border-color: #e8c98a;
  background: #e8c98a;
}

/* Haken tegnes i CSS (ikke tekst-node) så DOM-en er ren og skjermlesere leser
 * aria-pressed i stedet for et løst «✓». */
.spkat-card.is-on .spkat-check::after {
  content: "✓";
  color: #43121c;
  font-size: 15px;
  font-weight: 800;
}

.spkat-card-text {
  flex: 1;
}

.spkat-card-name {
  display: block;
  font-size: 18px;
  font-weight: 700;
}

.spkat-card-desc {
  display: block;
  font-size: 14px;
  color: rgba(253, 246, 236, 0.7);
  margin-top: 2px;
}

.spkat-footer {
  margin-top: 24px;
}

.spkat-cta {
  width: 100%;
  padding: 15px;
  border-radius: 999px;
  border: none;
  background: #e8c98a;
  color: #43121c;
  font-size: 18px;
  font-weight: 800;
  cursor: pointer;
  font-family: inherit;
  transition: background-color 0.15s, color 0.15s;
}

.spkat-cta:disabled {
  background: rgba(255, 255, 255, 0.12);
  color: rgba(253, 246, 236, 0.45);
  cursor: default;
}

.spkat-helper {
  text-align: center;
  font-size: 14px;
  color: rgba(253, 246, 236, 0.6);
  margin-top: 10px;
}

.spkat-feedback {
  text-align: center;
  font-size: 14px;
  color: #e8c98a;
  margin-top: 8px;
}

.spkat-feedback.is-error {
  color: #ff9d8f;
}

/* Smale skjermer: behold hele modalen synlig og scrollbar. */
@media (max-width: 700px) {
  .spkat-modal {
    padding: 28px 20px;
  }

  .spkat-title {
    font-size: 24px;
  }

  .spkat-pausecard {
    flex-direction: column;
    align-items: flex-start;
  }

  .spkat-pausecard-right {
    text-align: left;
  }
}
