/* ========================================================================== 
   MHTM UNIVERSAL POPUP SYSTEM — v2.0.153
   Référence visuelle: popup.zip fourni par l'utilisateur.
   Cette feuille est chargée en dernier par le rendu web-app pour harmoniser
   tous les popups/modales sans modifier leur logique métier.
   ========================================================================== */
:root{
  --mhtm-popup-overlay:rgba(3,6,10,.74);
  --mhtm-popup-surface-top:#131a26;
  --mhtm-popup-surface-bottom:#101620;
  --mhtm-popup-field:#121923;
  --mhtm-popup-border:rgba(255,255,255,.10);
  --mhtm-popup-control-border:rgba(160,180,210,.32);
  --mhtm-popup-divider:rgba(255,255,255,.06);
  --mhtm-popup-text:#fff;
  --mhtm-popup-text-secondary:#aeb4be;
  --mhtm-popup-text-muted:#7e8795;
  --mhtm-popup-text-soft:#e7e9ed;
  --mhtm-popup-red:#f0202b;
  --mhtm-popup-red-hover:#ea3038;
  --mhtm-popup-green:#33d17a;
  --mhtm-popup-blue:#58a9e9;
  --mhtm-popup-radius:11px;
  --mhtm-popup-control-radius:6px;
  --mhtm-form-control-height:40px;
  --mhtm-form-control-font-size:15px;
  --mhtm-form-control-padding-inline:14px;
  --mhtm-form-textarea-min-height:90px;
  --mhtm-popup-shadow:0 20px 60px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.02);
}

/* Overlay commun — même obscurcissement / blur que la maquette. */
:is(
  .mhtm-site-dialog,
  .match-result-modal,
  .admin-games-modal-backdrop,
  .match-planner-modal,
  .tournament-signup-modal,
  .admin-shop-edit-modal,
  .admin-b2b-modal,
  .admin-new-game-modal,
  .admin-panel-command-overlay,
  .site-typography-editor,
  .fortune-welcome-overlay,
  .fortune-result-modal
){
  font-family:Inter,Arial,sans-serif!important;
}
:is(
  .mhtm-site-dialog,
  .match-result-modal,
  .admin-games-modal-backdrop,
  .match-planner-modal,
  .tournament-signup-modal,
  .admin-new-game-modal,
  .admin-panel-command-overlay,
  .site-typography-editor,
  .fortune-result-modal
){
  background:var(--mhtm-popup-overlay)!important;
  -webkit-backdrop-filter:blur(3px)!important;
  backdrop-filter:blur(3px)!important;
}
:is(
  .mhtm-site-dialog-backdrop,
  .tournament-signup-backdrop,
  .admin-shop-edit-backdrop,
  .admin-b2b-modal-backdrop,
  .site-typography-editor-backdrop,
  .fortune-welcome-backdrop,
  .fortune-welcome-result-backdrop
){
  background:var(--mhtm-popup-overlay)!important;
  -webkit-backdrop-filter:blur(3px)!important;
  backdrop-filter:blur(3px)!important;
}

/* Surface commune des fenêtres. */
:is(
  .mhtm-site-dialog-card,
  .match-result-modal-card,
  .admin-games-modal,
  .match-planner-modal>section,
  .tournament-signup-card,
  .admin-shop-edit-dialog,
  .admin-b2b-modal-card,
  .admin-new-game-modal>section,
  .admin-panel-command,
  .site-typography-editor-card,
  .fortune-welcome-card,
  .fortune-welcome-result-card,
  .fortune-result-card
){
  color:var(--mhtm-popup-text)!important;
  font-family:Inter,Arial,sans-serif!important;
  border:1px solid var(--mhtm-popup-border)!important;
  border-radius:var(--mhtm-popup-radius)!important;
  background:linear-gradient(180deg,var(--mhtm-popup-surface-top) 0%,var(--mhtm-popup-surface-bottom) 100%)!important;
  box-shadow:var(--mhtm-popup-shadow)!important;
  scrollbar-width:none!important;
  overscroll-behavior:contain;
}
:is(
  .mhtm-site-dialog-card,
  .match-result-modal-card,
  .admin-games-modal,
  .match-planner-modal>section,
  .tournament-signup-card,
  .admin-shop-edit-dialog,
  .admin-b2b-modal-card,
  .admin-new-game-modal>section,
  .admin-panel-command,
  .site-typography-editor-card,
  .fortune-welcome-card,
  .fortune-welcome-result-card,
  .fortune-result-card
)::-webkit-scrollbar{width:0;height:0}

/* Le drawer produit devient lui aussi une modale centrée, cohérente avec le système. */
.admin-new-shop-drawer.admin-shop-edit-modal{
  position:fixed!important;
  inset:0!important;
  z-index:140500!important;
  display:grid!important;
  place-items:center!important;
  padding:24px!important;
  background:transparent!important;
}
.admin-new-shop-drawer-panel.admin-shop-edit-dialog{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:min(900px,calc(100vw - 48px))!important;
  max-width:900px!important;
  max-height:calc(100dvh - 48px)!important;
  overflow:auto!important;
}

/* Headers : titre blanc, description secondaire, séparation fine. */
:is(
  .match-result-modal-head,
  .admin-games-modal-header,
  .match-planner-modal>section>header,
  .tournament-signup-card>header,
  .admin-shop-edit-head,
  .admin-b2b-modal-head,
  .admin-new-game-modal>section>header,
  .admin-panel-command>header
){
  border-bottom:1px solid var(--mhtm-popup-divider)!important;
  background:transparent!important;
}
:is(
  .match-result-modal-head,
  .admin-games-modal-header,
  .match-planner-modal>section>header,
  .tournament-signup-card>header,
  .admin-shop-edit-head,
  .admin-b2b-modal-head
){
  padding:20px 24px 16px!important;
}
:is(
  .match-result-modal-head h2,
  .admin-games-modal-header h2,
  .match-planner-modal h2,
  .tournament-signup-card>header h2,
  .admin-shop-edit-head h2,
  .admin-b2b-modal-card h2,
  .admin-new-game-modal h2,
  .site-typography-editor-card h2
){
  margin-top:0!important;
  color:var(--mhtm-popup-text)!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:22px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
:is(
  .match-result-modal-head p,
  .admin-games-modal-header p,
  .tournament-signup-card>header p,
  .admin-shop-edit-head p,
  .admin-b2b-modal-card>p,
  .site-typography-editor-zone
){
  color:var(--mhtm-popup-text-secondary)!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.4!important;
  letter-spacing:0!important;
}
:is(
  .match-result-modal-head small,
  .match-planner-modal header small,
  .tournament-signup-card>header small,
  .admin-shop-edit-head>div>span,
  .admin-b2b-modal-kicker,
  .admin-new-game-modal header small,
  .site-typography-editor-kicker,
  .mhtm-site-dialog-kicker
){
  color:#f05258!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:.04em!important;
}

/* Boutons fermer : 36 × 36, discrets comme le modèle. */
:is(
  .match-result-modal-close,
  .admin-games-close,
  .match-planner-modal header button,
  .tournament-signup-close,
  .admin-shop-edit-close,
  .admin-b2b-modal-close,
  .admin-new-game-modal header>button,
  .site-typography-editor-close,
  .mhtm-site-dialog-close,
  .fortune-welcome-close-button,
  .fortune-welcome-result-close
){
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:6px!important;
  background:transparent!important;
  color:var(--mhtm-popup-text-secondary)!important;
  box-shadow:none!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:20px!important;
  line-height:1!important;
  cursor:pointer!important;
}
:is(
  .match-result-modal-close,
  .admin-games-close,
  .match-planner-modal header button,
  .tournament-signup-close,
  .admin-shop-edit-close,
  .admin-b2b-modal-close,
  .admin-new-game-modal header>button,
  .site-typography-editor-close,
  .mhtm-site-dialog-close,
  .fortune-welcome-close-button,
  .fortune-welcome-result-close
):hover{background:rgba(255,255,255,.05)!important;color:#fff!important}

/* Corps / formulaires. */
:is(
  .match-result-modal-form,
  .match-planner-modal>section>form,
  .tournament-signup-card form,
  .admin-games-modal-body
){
  padding:20px 24px!important;
}
:is(
  .match-result-modal-form,
  .match-planner-modal>section>form,
  .tournament-signup-card form
){gap:14px!important}

/* Labels et aides. */
:is(
  .match-result-modal-form label,
  .match-planner-modal label,
  .tournament-signup-card form>label,
  .admin-games-modal label,
  .admin-shop-edit-dialog label,
  .admin-b2b-modal-card label,
  .admin-new-game-modal label,
  .site-typography-editor-card label
){
  color:var(--mhtm-popup-text-soft)!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
:is(
  .match-result-modal-form label>span,
  .match-planner-modal label>span,
  .tournament-signup-card label>span,
  .admin-games-modal label>span,
  .admin-shop-edit-dialog label>span,
  .admin-b2b-modal-card label>span,
  .admin-new-game-modal label>span,
  .site-typography-editor-card label>span
){
  color:var(--mhtm-popup-text-soft)!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
:is(
  .match-result-modal-form label small,
  .tournament-signup-card label small,
  .admin-games-modal label small,
  .admin-shop-edit-dialog label small,
  .admin-b2b-modal-card small,
  .admin-new-game-modal label small,
  .site-typography-editor-help,
  .site-typography-editor-current
){
  color:var(--mhtm-popup-text-muted)!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.4!important;
  letter-spacing:0!important;
}

/* Champs standards : exactement la géométrie et les couleurs de popup.zip. */
:is(
  .match-result-modal,
  .admin-games-modal,
  .match-planner-modal,
  .tournament-signup-card,
  .admin-shop-edit-dialog,
  .admin-b2b-modal-card,
  .admin-new-game-modal,
  .site-typography-editor-card
) :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  width:100%!important;
  min-height:var(--mhtm-form-control-height)!important;
  border:1px solid var(--mhtm-popup-control-border)!important;
  border-radius:var(--mhtm-popup-control-radius)!important;
  background:var(--mhtm-popup-field)!important;
  color:var(--mhtm-popup-text-soft)!important;
  padding:0 var(--mhtm-form-control-padding-inline)!important;
  outline:none!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:var(--mhtm-form-control-font-size)!important;
  font-weight:400!important;
  line-height:1.3!important;
  letter-spacing:0!important;
}
:is(
  .match-result-modal,
  .admin-games-modal,
  .match-planner-modal,
  .tournament-signup-card,
  .admin-shop-edit-dialog,
  .admin-b2b-modal-card,
  .admin-new-game-modal,
  .site-typography-editor-card
) textarea{
  min-height:var(--mhtm-form-textarea-min-height)!important;
  padding:10px var(--mhtm-form-control-padding-inline)!important;
  resize:vertical!important;
}
:is(
  .match-result-modal,
  .admin-games-modal,
  .match-planner-modal,
  .tournament-signup-card,
  .admin-shop-edit-dialog,
  .admin-b2b-modal-card,
  .admin-new-game-modal,
  .site-typography-editor-card
) :is(input,select,textarea):focus{
  border-color:var(--mhtm-popup-red)!important;
  box-shadow:0 0 0 2px rgba(240,32,43,.10),0 0 14px rgba(240,32,43,.18)!important;
}
:is(
  .match-result-modal,
  .admin-games-modal,
  .match-planner-modal,
  .tournament-signup-card,
  .admin-shop-edit-dialog,
  .admin-b2b-modal-card,
  .admin-new-game-modal,
  .site-typography-editor-card
) :is(input,select,textarea):disabled{
  opacity:.45!important;
  border-color:rgba(255,255,255,.08)!important;
  cursor:not-allowed!important;
}
:is(
  .match-result-modal,
  .admin-games-modal,
  .match-planner-modal,
  .tournament-signup-card,
  .admin-shop-edit-dialog,
  .admin-b2b-modal-card,
  .admin-new-game-modal,
  .site-typography-editor-card
) :is(input[type="checkbox"],input[type="radio"]){accent-color:var(--mhtm-popup-red)!important}

/* Uploads : zone pointillée et feedback rouge au focus/hover. */
:is(.admin-games-upload,.admin-shop-category-icon-upload,.admin-shop-edit-image-field){
  border-color:#708096!important;
  border-radius:7px!important;
  background:rgba(255,255,255,.01)!important;
}
:is(.admin-games-upload,.admin-shop-category-icon-upload):hover{
  border-color:var(--mhtm-popup-red)!important;
  background:rgba(240,32,43,.04)!important;
}

/* Alertes / avertissements dans une modale. */
.match-result-modal-warning{
  margin:0!important;
  padding:12px 14px!important;
  border:1px solid #3b82c4!important;
  border-radius:6px!important;
  background:rgba(44,120,205,.16)!important;
  color:var(--mhtm-popup-text-secondary)!important;
  font:400 13px/1.4 Inter,Arial,sans-serif!important;
}

/* Footers / séparateurs / actions. */
:is(
  .match-result-modal-form footer,
  .match-planner-modal footer,
  .tournament-signup-card footer,
  .admin-games-modal-footer,
  .admin-shop-edit-actions,
  .admin-b2b-settings-actions,
  .site-typography-editor-actions,
  .mhtm-site-dialog-actions
){
  border-top:1px solid var(--mhtm-popup-divider)!important;
  background:transparent!important;
  padding-top:16px!important;
  gap:10px!important;
}
:is(
  .match-result-modal-form footer button,
  .match-planner-modal footer button,
  .tournament-signup-card footer button,
  .admin-games-modal-footer button,
  .admin-shop-edit-actions button,
  .admin-b2b-modal-card button,
  .site-typography-editor-actions button,
  .mhtm-site-dialog-btn
){
  min-height:40px!important;
  height:40px!important;
  padding:0 20px!important;
  border:1px solid var(--mhtm-popup-control-border)!important;
  border-radius:var(--mhtm-popup-control-radius)!important;
  background:#151e2a!important;
  color:var(--mhtm-popup-text-soft)!important;
  box-shadow:none!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  cursor:pointer!important;
}
:is(
  .match-result-modal-submit,
  .match-planner-modal footer button[type="submit"],
  .tournament-signup-card footer .red-btn,
  .admin-games-save,
  .admin-shop-edit-actions .admin-filter-btn,
  .admin-b2b-modal-card button[type="submit"],
  .site-typography-editor-actions button.is-primary,
  .mhtm-site-dialog-btn.is-confirm
){
  border-color:#f3424b!important;
  background:var(--mhtm-popup-red)!important;
  color:#fff!important;
  font-weight:700!important;
  box-shadow:0 0 18px rgba(240,32,43,.24)!important;
}
:is(
  .match-result-modal-submit,
  .match-planner-modal footer button[type="submit"],
  .tournament-signup-card footer .red-btn,
  .admin-games-save,
  .admin-shop-edit-actions .admin-filter-btn,
  .admin-b2b-modal-card button[type="submit"],
  .site-typography-editor-actions button.is-primary,
  .mhtm-site-dialog-btn.is-confirm
):hover{background:var(--mhtm-popup-red-hover)!important}
:is(
  .match-result-modal-cancel,
  .tournament-signup-card footer .outline-btn,
  .admin-games-cancel,
  .admin-shop-edit-actions .admin-reset-btn,
  .admin-b2b-settings-actions .is-secondary,
  .mhtm-site-dialog-btn.is-cancel
){background:#151e2a!important;color:var(--mhtm-popup-text-soft)!important}

/* Confirmation MHTM : conserver le sens danger/succès sans changer la structure. */
.mhtm-site-dialog-card{width:min(520px,calc(100vw - 32px))!important;padding:24px 27px 22px!important}
.mhtm-site-dialog-icon{
  width:48px!important;height:48px!important;margin:0 0 14px!important;
  border-radius:8px!important;background:rgba(214,40,40,.18)!important;
  border:1px solid rgba(214,40,40,.55)!important;color:#f05258!important;
  font:700 24px/1 Inter,Arial,sans-serif!important;
}
.mhtm-site-dialog-copy h2{font:700 22px/1.2 Inter,Arial,sans-serif!important;letter-spacing:0!important}
.mhtm-site-dialog-copy p{margin:7px 0 0!important;color:var(--mhtm-popup-text-secondary)!important;font:400 13px/1.4 Inter,Arial,sans-serif!important}
.mhtm-site-dialog-actions{margin-top:20px!important}
.mhtm-site-dialog.is-success .mhtm-site-dialog-icon{background:rgba(51,209,122,.12)!important;border-color:rgba(51,209,122,.42)!important;color:var(--mhtm-popup-green)!important}
.mhtm-site-dialog.is-success .mhtm-site-dialog-kicker{color:var(--mhtm-popup-green)!important}
.mhtm-site-dialog.is-success .mhtm-site-dialog-btn.is-confirm{background:var(--mhtm-popup-green)!important;border-color:var(--mhtm-popup-green)!important;color:#07110b!important}

/* Match result : la carte suit le même cadre universel. */
.match-result-modal-card{width:min(520px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important;overflow:auto!important}
.match-result-modal-versus{gap:10px!important}
.match-result-modal-versus>span{color:var(--mhtm-popup-text-muted)!important;font:700 13px/1 Inter,Arial,sans-serif!important}
.match-result-modal-versus input{font-size:18px!important;font-weight:700!important;text-align:center!important}

/* Inscription tournoi. */
.tournament-signup-card{width:min(470px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important}
.tournament-signup-card>header{position:relative!important;top:auto!important;min-height:0!important}
.tournament-signup-card form{padding-top:18px!important}
.tournament-signup-card footer{display:flex!important;justify-content:flex-end!important;margin-top:2px!important}

/* Admin jeux / matches / shop / B2B. */
.admin-games-modal{width:min(820px,calc(100vw - 48px))!important;max-height:calc(100dvh - 48px)!important}
.admin-games-modal-header,.admin-games-modal-footer{position:sticky!important;background:rgba(19,26,38,.98)!important}
.admin-games-modal-footer{padding:14px 24px!important}
.match-planner-modal>section{width:min(600px,calc(100vw - 40px))!important;max-height:calc(100dvh - 40px)!important}
.admin-b2b-modal-card{padding:24px 27px 22px!important}
.admin-b2b-agent-card{width:min(430px,calc(100vw - 32px))!important}
.admin-b2b-tools-card{width:min(760px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important;overflow:auto!important}
.admin-b2b-modal-card details{border-color:var(--mhtm-popup-divider)!important;background:rgba(255,255,255,.015)!important}
.admin-b2b-modal-card summary{color:var(--mhtm-popup-text-soft)!important;font:600 14px/1.35 Inter,Arial,sans-serif!important}
.admin-shop-edit-dialog{padding:24px 27px 22px!important}
.admin-shop-edit-head{padding:0 0 16px!important}
.admin-shop-edit-actions{margin-top:20px!important;padding-top:16px!important}

/* Ancienne fenêtre /admin/jeux encore utilisée sur certains écrans. */
.admin-new-game-modal>section{width:min(760px,calc(100vw - 48px))!important;max-height:calc(100dvh - 48px)!important}
.admin-new-game-modal>section>header{background:rgba(19,26,38,.98)!important;border-bottom-color:var(--mhtm-popup-divider)!important}
.admin-new-game-form{padding:20px 24px!important}
.admin-new-game-form footer{background:rgba(19,26,38,.98)!important;border-top-color:var(--mhtm-popup-divider)!important}

/* Recherche Admin et outil typographie : même langage visuel, sans casser leurs layouts. */
.admin-panel-command{border-radius:var(--mhtm-popup-radius)!important;background:linear-gradient(180deg,var(--mhtm-popup-surface-top),var(--mhtm-popup-surface-bottom))!important}
.admin-panel-command>header input{background:transparent!important;border:0!important;box-shadow:none!important;color:#fff!important;font:500 14px/1 Inter,Arial,sans-serif!important}
.admin-panel-command>div>a{border-radius:6px!important}
.admin-panel-command>div>a:hover{background:rgba(240,32,43,.08)!important}
.site-typography-editor-card{border-top:1px solid var(--mhtm-popup-border)!important;padding:24px 27px 22px!important}
.site-typography-editor-preview{border-radius:7px!important;background:rgba(255,255,255,.01)!important}

/* Roue de la fortune : préserver l'identité de la roue mais harmoniser la fenêtre. */
.fortune-welcome-card{border-radius:var(--mhtm-popup-radius)!important}
.fortune-welcome-result-card{border-radius:var(--mhtm-popup-radius)!important;background:linear-gradient(180deg,var(--mhtm-popup-surface-top),var(--mhtm-popup-surface-bottom))!important}
.fortune-welcome-spin,.fortune-welcome-actions .fortune-result-confirm{
  border-radius:var(--mhtm-popup-control-radius)!important;
  background:var(--mhtm-popup-red)!important;
  font-family:Inter,Arial,sans-serif!important;
}

@media(max-width:700px){
  :is(
    .mhtm-site-dialog,
    .match-result-modal,
    .admin-games-modal-backdrop,
    .match-planner-modal,
    .tournament-signup-modal,
    .admin-shop-edit-modal,
    .admin-b2b-modal,
    .admin-new-game-modal,
    .admin-panel-command-overlay,
    .site-typography-editor,
    .fortune-result-modal
  ){padding:12px!important;align-items:center!important}
  :is(
    .mhtm-site-dialog-card,
    .match-result-modal-card,
    .admin-games-modal,
    .match-planner-modal>section,
    .tournament-signup-card,
    .admin-shop-edit-dialog,
    .admin-b2b-modal-card,
    .admin-new-game-modal>section,
    .admin-panel-command,
    .site-typography-editor-card
  ){
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    border-radius:10px!important;
  }
  :is(
    .match-result-modal-head,
    .admin-games-modal-header,
    .match-planner-modal>section>header,
    .tournament-signup-card>header,
    .admin-shop-edit-head,
    .admin-b2b-modal-head
  ){padding:16px!important}
  :is(
    .match-result-modal-form,
    .match-planner-modal>section>form,
    .tournament-signup-card form,
    .admin-games-modal-body
  ){padding:16px!important}
  .admin-games-modal-body{grid-template-columns:1fr!important}
  .match-planner-modal form>div{grid-template-columns:1fr!important}
  .tournament-signup-card footer{display:grid!important;grid-template-columns:1fr!important}
  .tournament-signup-card footer .red-btn{order:-1!important}
  .admin-new-shop-drawer.admin-shop-edit-modal{padding:12px!important}
  .admin-new-shop-drawer-panel.admin-shop-edit-dialog{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important}
  .site-typography-editor-actions{align-items:stretch!important;flex-direction:column-reverse!important}
}

/*
 * v2.0.153 — Champs du web-app harmonisés sur le rendu de /admin/jeux.
 * La spécificité du conteneur racine protège ces dimensions des réglages
 * typographiques enregistrés dans /admin/taille-texte. Les champs intégrés
 * dans un contrôle composite conservent leur géométrie propre.
 */
html body :is(#mhtm-react-root,.direct-payment-root,.b2b-chat-root) :is(
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="image"]),
  select,
  textarea
){
  box-sizing:border-box!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:var(--mhtm-form-control-font-size)!important;
  font-weight:400!important;
  line-height:1.3!important;
  letter-spacing:0!important;
}
html body :is(#mhtm-react-root,.direct-payment-root,.b2b-chat-root) :is(input,textarea)::placeholder{
  font:inherit!important;
  font-weight:400!important;
  letter-spacing:0!important;
}
html body :is(#mhtm-react-root,.direct-payment-root,.b2b-chat-root) :is(
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="image"]),
  select:not([multiple])
):not(:where(
  .header-search-inline *,
  .modern-home-search *,
  .games-v3-search *,
  .games-v3-sort *,
  .new-games-search *,
  .new-games-sort *,
  .shop-quantity-control *,
  .cart-line-quantity *,
  .admin-panel-command>header *,
  .admin-new-games-toolbar>label *,
  .planning-reference-settings label>div *
)){
  height:var(--mhtm-form-control-height)!important;
  min-height:var(--mhtm-form-control-height)!important;
  padding:0 var(--mhtm-form-control-padding-inline)!important;
  border:1px solid var(--mhtm-popup-control-border)!important;
  border-radius:var(--mhtm-popup-control-radius)!important;
  background-color:var(--mhtm-popup-field)!important;
  color:var(--mhtm-popup-text-soft)!important;
  outline:none!important;
  box-shadow:none!important;
}
html body :is(#mhtm-react-root,.direct-payment-root,.b2b-chat-root) textarea:not(:where(
  .b2b-chat-compose *,
  .admin-b2b-compose *
)){
  height:auto!important;
  min-height:var(--mhtm-form-textarea-min-height)!important;
  padding:10px var(--mhtm-form-control-padding-inline)!important;
  border:1px solid var(--mhtm-popup-control-border)!important;
  border-radius:var(--mhtm-popup-control-radius)!important;
  background-color:var(--mhtm-popup-field)!important;
  color:var(--mhtm-popup-text-soft)!important;
  outline:none!important;
  box-shadow:none!important;
  resize:vertical!important;
}
html body :is(#mhtm-react-root,.direct-payment-root,.b2b-chat-root) :is(
  .b2b-chat-compose textarea,
  .admin-b2b-compose textarea
){
  min-height:var(--mhtm-form-control-height)!important;
  padding:9px var(--mhtm-form-control-padding-inline)!important;
  border-radius:var(--mhtm-popup-control-radius)!important;
}
html body :is(#mhtm-react-root,.direct-payment-root,.b2b-chat-root) :is(input,select,textarea):focus:not(:where(
  .header-search-inline *,
  .modern-home-search *,
  .games-v3-search *,
  .games-v3-sort *,
  .new-games-search *,
  .new-games-sort *,
  .shop-quantity-control *,
  .cart-line-quantity *,
  .admin-panel-command>header *,
  .admin-new-games-toolbar>label *,
  .planning-reference-settings label>div *
)){
  border-color:var(--mhtm-popup-red)!important;
  box-shadow:0 0 0 2px rgba(240,32,43,.10),0 0 14px rgba(240,32,43,.18)!important;
}

/* Validation admin inscription + paiement : choix explicite sans confondre les deux statuts. */
.admin-registration-payment-dialog .mhtm-site-dialog-card{width:min(650px,calc(100vw - 32px))!important}
.admin-registration-payment-actions{grid-template-columns:1fr 1fr 1.25fr!important}
.admin-registration-payment-action-form{display:contents}
.admin-registration-payment-actions .mhtm-site-dialog-btn{width:100%!important;padding-inline:12px!important}
.admin-registration-payment-actions .mhtm-site-dialog-btn.is-secondary{background:#151e2a!important;color:var(--mhtm-popup-text-soft)!important}
@media (max-width:640px){
  .admin-registration-payment-actions{grid-template-columns:1fr!important}
  .admin-registration-payment-actions .mhtm-site-dialog-btn.is-confirm{order:-2}
  .admin-registration-payment-actions .mhtm-site-dialog-btn.is-secondary{order:-1}
}
