.o-carte-rappel { display: grid; gap: 12px; margin-block: 18px; }
.cr-jeu { display: grid; gap: 8px; }
.cr-question { margin: 0; font-family: var(--titre); font-weight: 800; font-size: clamp(1.7rem, 7vw, 2.4rem); line-height: 1.05; text-transform: var(--casse-titre); }
.cr-question small { display: block; font-family: var(--texte); font-size: .92rem; font-weight: 600; text-transform: none; color: var(--gris); }
.cr-cadre { overflow: hidden; border-radius: var(--rayon); outline: 2px solid var(--trait); outline-offset: -2px; background: var(--encre); touch-action: none; }
.cr-cadre svg { display: block; inline-size: 100%; block-size: min(62dvh, 560px); cursor: crosshair; }
.cr-cadre svg:focus-visible { outline: 3px solid var(--peche); outline-offset: -3px; }
.cr-terre { fill: var(--asphalte); stroke: var(--trait); stroke-width: var(--trait-carte, 2); }
.cr-lac { fill: var(--encre); stroke: var(--trait); stroke-width: var(--trait-carte, 2); }
.cr-pin { fill: none; stroke: var(--orange); stroke-linejoin: miter; }
.cr-vrai { fill: var(--vert); }
.cr-zone { fill: #3ddc8433; stroke: var(--vert); }
.cr-ligne { stroke: var(--papier); stroke-dasharray: 6 6; }
.cr-retour { min-block-size: 1.5em; margin: 0; font-weight: 750; }
.cr-retour[data-bon] { color: var(--vert); }
.cr-retour[data-rate] { color: var(--corail); }
.cr-etat { display: grid; gap: 8px; }
.cr-etat h2 { margin: 0; font-size: clamp(1.6rem, 5vw, 2.1rem); }
.cr-etat p { margin: 0; }
@keyframes cr-bascule { from { transform: rotate(-90deg); } to { transform: none; } }
.cr-pin { transform-box: fill-box; transform-origin: center; animation: cr-bascule .18s cubic-bezier(.3, 1.3, .5, 1); }
@media (orientation: landscape) and (max-height: 520px) {
  .cr-jeu { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); grid-auto-rows: min-content; column-gap: 12px; }
  .cr-cadre { grid-column: 2; grid-row: 1 / span 4; }
  .cr-cadre svg { block-size: calc(100dvh - 80px); }
  .cr-jeu > :not(.cr-cadre) { grid-column: 1; }
}
