html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: #05070d; color: #e8eef8;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; touch-action: none; -webkit-user-select: none; user-select: none; }
#jeu { position: fixed; inset: 0; }
#unity-canvas { width: 100%; height: 100%; display: block; background: #05070d; outline: none; }

#chargement { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px;
  background: radial-gradient(ellipse at 60% 40%, #1b1f4a 0%, #0a0c1c 45%, #05070d 100%); transition: opacity .6s ease; z-index: 5; padding: 16px; box-sizing: border-box; }
#chargement.fini { opacity: 0; pointer-events: none; }
#chargement .logo { width: min(560px, 88vw); height: auto; filter: drop-shadow(0 0 18px rgba(74,168,255,.35)); }
#chargement .barre { width: min(520px, 80vw); height: 14px; border-radius: 8px; border: 2px solid #c9d1dc; background: #0b1020; overflow: hidden;
  box-shadow: 0 0 14px rgba(74,168,255,.35); }
#barre-pleine { width: 0; height: 100%; background: linear-gradient(90deg, #2f7fe0, #4aa8ff); transition: width .2s; }
#chargement-texte { font-size: 15px; color: #9fb4d0; }
#chargement .aide { font-size: 14px; color: #7f93b0; text-align: center; max-width: 90vw; }
body.est-pc .aide.mobile, body.est-mobile .aide.pc { display: none; }

#plein-ecran { position: absolute; top: 6px; right: 6px; z-index: 20; width: 46px; height: 46px; border-radius: 10px; touch-action: manipulation;
  border: 2px solid rgba(201,209,220,.85); background: rgba(10,16,32,.55); color: #e8eef8; cursor: pointer; display: flex; align-items: center; justify-content: center; }
#plein-ecran:hover { border-color: #4aa8ff; color: #4aa8ff; }
#plein-ecran::after { content: ""; position: absolute; inset: -6px; }   /* zone tactile 58 px */
#plein-ecran .quitter { display: none; }
body.plein #plein-ecran { opacity: .8; border-color: #ff8a2a; color: #ffd2a8; }
body.plein #plein-ecran .entrer { display: none; }
body.plein #plein-ecran .quitter { display: block; }


#erreur { display: none; position: absolute; left: 16px; right: 16px; bottom: 16px; z-index: 7; background: #7a1420; color: #fff; padding: 12px 14px; border-radius: 8px; }
