/* FRBC V36.15 — Garde anti-interface historique.
   Cette feuille est chargée en DERNIER. Le moteur conserve ses ID et ses
   callbacks originaux ; seul le rendu ancien est neutralisé PENDANT LE MATCH.
   Ne pas modifier les menus d'accueil ou l'interface portrait existante. */

/* Le style du vieux HUD ne doit jamais reprendre le contrôle pendant un
   tween de caméra, un changement de vue ou un sync différé du V28. */
html.frbc-v36-game-active.frbc-v36-game-active:not(.frbc-mobile-vertical) body :is(
  #side-stats,.side-stats,.view-switch,#board-orientation-switch,
  .room-note,.top-actions,#hud-wallet,#menu-button,#frbc-chat-open,
  .frbc-pc-rail,.frbc-pc-layout-toggle,.frbc-pc-sessions
){
 display:none!important;
 visibility:hidden!important;
 pointer-events:none!important;
}

/* Le jeu utilise le VRAI #game-dock pour ses actions natives.
   Si le V28 se désactive entre deux frames, on masque son ancien rendu, mais
   on ne détruit jamais le conteneur ni ses écouteurs. Dès que le V28 revient,
   le dock validé retrouve ses règles V36 et son état normal. */
html.frbc-v36-game-active.frbc-v36-game-active:not(.frbc-mobile-vertical):not(.frbc-v28-demo)
  body #game-dock {
 display:none!important;
 visibility:hidden!important;
 pointer-events:none!important;
}

/* La classe [hidden] du moteur prime toujours, même si un ancien CSS
   essaye de faire réapparaître une commande ou un panneau supprimé à l'écran. */
html.frbc-v36-game-active.frbc-v36-game-active :is(
  #v28-rail,#v28-match-hint,#moves-panel,#frbc-chat-modal,
  #game-dock,#frbc-chat-open
)[hidden]{display:none!important;}
