/* =========================
Terms of Use / basic layout
========================= */
.cgu {
  line-height: 1.5;
}
.western {
  font-family: "Times New Roman", serif;
}

/* =========================
Spaces around inline tags (strong/b/a)
========================= */
.cgu a::before,
.cgu b::before,
.cgu strong::before {
  content: " ";
}
.cgu a::after,
.cgu b::after,
.cgu strong::after {
  content: " ";
}

/* =========================
Robust italic spacing (fix for “d’une<em>condition</em>…” etc.)
Use margins instead of pseudo-elements to force visual spacing even if
framework resets block ::before/::after. Works for inline flow.
========================= */
.cgu em,
.cgu i {
  margin-left: .25em !important;
  margin-right: .25em !important;
}

/* Avoid extra left margin when <em>/<i> is the first child of a block */
.cgu p > em:first-child,
.cgu p > i:first-child,
.cgu li > em:first-child,
.cgu li > i:first-child {
  margin-left: 0 !important;
}

/* If italics are nested inside <strong>/<b>, don’t double space */
.cgu :is(strong, b) :is(em, i) {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ===== Translation spans (JP/TH...) ===== */
.cgu span[style*="font-family"]::before,
.cgu span[style*="font-family"]::after {
  content: " ";
}

/* Headings (e.g., <h1 class="western"><span>…</span>Beluga Casino</h1>) */
.cgu h1.western span[style*="font-family"]::after,
.cgu h2.western span[style*="font-family"]::after {
  content: " ";
}

/* =========================================
Vuetify contexts (labels, overlays, selection controls, cards)
Apply the same italic spacing so it works everywhere the text appears
========================================= */
.v-label :where(em, i),
.v-overlay-container .v-label :where(em, i),
.v-selection-control :where(em, i),
.v-card-text :where(em, i),
.v-card-text .d-flex :where(em, i),
.v-overlay-container .v-card-text :where(em, i),
.mb-4.text-medium-emphasis.text-body-3 :where(em, i) {
  margin-left: .25em !important;
  margin-right: .25em !important;
}

/* Keep existing spacing behavior for strong/b/a in those contexts */
.v-label :where(a, b, strong)::before,
.v-label :where(a, b, strong)::after,
.v-overlay-container .v-label :where(a, b, strong)::before,
.v-overlay-container .v-label :where(a, b, strong)::after,
.v-selection-control :where(a, b, strong)::before,
.v-selection-control :where(a, b, strong)::after,
.v-card-text :where(a, b, strong)::before,
.v-card-text :where(a, b, strong)::after,
.v-card-text .d-flex :where(a, b, strong)::before,
.v-card-text .d-flex :where(a, b, strong)::after,
.v-overlay-container .v-card-text :where(a, b, strong)::before,
.v-overlay-container .v-card-text :where(a, b, strong)::after,
.mb-4.text-medium-emphasis.text-body-3 :where(a, b, strong)::before,
.mb-4.text-medium-emphasis.text-body-3 :where(a, b, strong)::after {
  content: " ";
}

/* Listes compactes + accordéons natifs */
.list-compact li.li-split { margin-bottom: 0.75rem; }
.list-compact { margin: 0; padding-left: 1.2rem; }
.list-compact > li { margin: 0.2rem 0; }
details { margin: 0.25rem 0; }
summary { cursor: pointer; }
summary::-webkit-details-marker { display: none; }