/* Giftbox : ecran d envoi du code apres l inscription, un panneau centre
   aux couleurs du jeu (voile et boutons du theme commun). */
.gb-jeu { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; padding: 72px 16px 24px; min-height: 100%; box-sizing: border-box; text-align: center; }
.gb-jeu[hidden] { display: none; }
.gb-titre { margin: 0; font-size: 1.8rem; font-weight: 800; color: var(--jeu-hud-texte, #fff); }
.gb-message { margin: 0; max-width: 460px; font-size: 1.15rem; line-height: 1.5; color: var(--jeu-hud-texte, #fff); }
.gb-en-cours { color: var(--jeu-chargement, var(--jeu-hud-texte, #fff)); }
/* Giftbox digitale (tablette) : saisie du code, resultat avec le visuel du lot. */
.gb-saisie { display: flex; flex-direction: column; align-items: center; gap: 12px; width: min(90vw, 420px); }
.gb-saisie[hidden], .gb-resultat[hidden] { display: none; }
.gb-saisie-libelle { font-weight: 800; font-size: 1.2rem; color: var(--jeu-hud-texte, #fff); }
.gb-code { width: 100%; box-sizing: border-box; text-align: center; font-size: 2.6rem; letter-spacing: 0.4em; font-weight: 800; padding: 12px; border-radius: 14px; border: 0; }
.gb-resultat { display: flex; flex-direction: column; align-items: center; gap: 14px; }
.gb-resultat-image { max-width: min(80vw, 420px); max-height: 45vh; object-fit: contain; border-radius: 16px; }
.gb-resultat-texte { margin: 0; max-width: 460px; font-size: 1.4rem; font-weight: 800; line-height: 1.4; color: var(--jeu-hud-texte, #fff); }
.gb-gagne .gb-resultat-texte { font-size: 1.7rem; }
.gb-rejoue .gb-resultat-image { opacity: 0.45; }
.gb-rejoue .gb-resultat-texte { font-size: 1.2rem; }
