/* MySifa — paysage forcé sur mobile (façon YouTube plein écran).
   Quand le téléphone est physiquement en portrait sur une page qui exige
   le paysage (MyProd, MyExpé, Planning, Fabrication, DB viewer), on tourne
   tout l'affichage de 90° en CSS pour donner une expérience paysage
   continue, sans demander à l'utilisateur de tourner son appareil et
   sans afficher de message bloquant. */

@media (max-width: 900px) and (orientation: portrait) {

  html {
    overflow: hidden !important;
  }

  body.mysifa-force-landscape {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vh !important;
    height: 100vw !important;
    transform-origin: top left;
    transform: translateX(100vw) rotate(90deg);
    -webkit-transform-origin: top left;
    -webkit-transform: translateX(100vw) rotate(90deg);
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  /* Sécurité : pas de message ::before bloquant. */
  body.mysifa-force-landscape::before,
  body.mysifa-landscape-required::before {
    content: none !important;
    display: none !important;
  }

  /* Sécurité : pas de pointer-events:none résiduel sur le contenu. */
  body.mysifa-force-landscape #root,
  body.mysifa-force-landscape #app,
  body.mysifa-force-landscape .app,
  body.mysifa-force-landscape .layout,
  body.mysifa-force-landscape .rh-main,
  body.mysifa-force-landscape .planning-container {
    pointer-events: auto !important;
    user-select: auto !important;
  }
}

/* Vue Repiquage : on N'A PAS BESOIN du rotate forcé en portrait.
   La vue Repiquage est conçue pour être utilisée VERTICALEMENT sur mobile
   (gros bouton +1 carton, compteurs empilés, etc. - cf. fab-main--repiquage-dossier).
   On annule donc la rotation et on rétablit l'overflow vertical natif. */
@media (max-width: 900px) and (orientation: portrait) {
  body.mysifa-force-landscape.fab-repiquage-mode,
  body.mysifa-portrait.fab-repiquage-mode {
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    height: 100% !important;
    -webkit-transform-origin: 0 0 !important;
    transform-origin: 0 0 !important;
    -webkit-transform: none !important;
    transform: none !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
  }
  html:has(body.fab-repiquage-mode) {
    overflow: auto !important;
  }
}
