/* Formulaires métier : mêmes données, contrôles lisibles dans leur panneau. */
#banqueCarnet .carnet-grille{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
#banqueComblement .diff-grille{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}
#banqueCarnet .carte-contact,#banqueComblement .carte-diff{box-sizing:border-box;max-width:100%}
#banqueCarnet .cc-tete>label{flex:1;min-width:0}
#banqueCarnet .cc-duo>label{flex:1 1 150px;min-width:0}
#banqueCarnet .carte-contact label:has(.banque-champ){display:grid;gap:6px;font-size:14px;line-height:1.5;color:var(--texte-2)}
#banqueCarnet .carte-contact .banque-champ{box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;font:inherit;font-size:1rem}
#banqueCarnet .cc-pied{gap:12px}
#banqueCarnet .cc-actif{min-height:44px}
#banqueComblement .diff-periode .ctl-reglage>label{display:grid;gap:6px;min-width:0;font-size:14px;line-height:1.5;color:var(--texte-2)}
#banqueComblement .cd-nom{white-space:normal;overflow-wrap:anywhere}
#banqueComblement .cd-actions .btn-envoi,#banqueComblement .cd-actions .btn-assigner{height:auto;min-height:44px;white-space:normal;line-height:1.5;padding-block:8px;box-sizing:border-box;max-width:100%}

/* Les champs natifs gardent leur valeur et leur sélecteur iOS dans la largeur utile. */
#banqueComblement input[type=date],#mContenu .fact-champ input[type=date],#profilEtablissement .profil-exception input[type=date],#profilEtablissement .profil-exception input[type=time]{
  display:block;box-sizing:border-box;inline-size:100%;min-inline-size:0;max-inline-size:100%;min-height:44px;font:inherit;font-size:1rem;appearance:none;-webkit-appearance:none;
}
#banqueComblement input[type=date]::-webkit-date-and-time-value,#mContenu .fact-champ input[type=date]::-webkit-date-and-time-value,#profilEtablissement .profil-exception input::-webkit-date-and-time-value{min-width:0;text-align:left}
#banqueComblement input[type=date]::-webkit-datetime-edit,#mContenu .fact-champ input[type=date]::-webkit-datetime-edit,#profilEtablissement .profil-exception input::-webkit-datetime-edit{min-width:0;padding:0}

#profilEtablissement .profil-exception{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;padding-block:16px;border-bottom:1px solid var(--filet)}
#profilEtablissement .profil-exception>label{display:grid;gap:6px;min-width:0;font-size:14px;line-height:1.5;color:var(--texte-2)}
#profilEtablissement .profil-exception>.profil-exception-fermee{display:flex;align-items:center;gap:8px;min-height:44px}
#profilEtablissement .profil-exception>.btn{min-height:44px;white-space:normal;max-width:100%;box-sizing:border-box}

#editeurPharmacien .ligne-conge{min-width:0;flex-wrap:wrap;line-height:1.5;row-gap:8px}
#editeurPharmacien .ligne-conge button[data-suppconge],#editeurPharmacien .ligne-conge button[data-suppdispo]{
  display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:44px;min-height:44px;flex:none;padding:8px;
}
#editeurPharmacien .ligne-conge button[data-suppconge] .ico-sm,#editeurPharmacien .ligne-conge button[data-suppdispo] .ico-sm{margin:0}

/* Facturation : le montant reste associé à la personne, sans ligne incompressible. */
#rhPaiements .fact-barre,#rhPaiements .fact-pers-tete{min-width:0}
#rhPaiements .fact-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:center;min-width:0;max-width:100%;width:min(100%,320px)}
#rhPaiements .fact-mois{min-width:0;white-space:normal;line-height:1.5}
#rhPaiements .fact-nav>.btn-mini{box-sizing:border-box;width:44px;height:44px}
#rhPaiements .fact-a-droite{flex-wrap:wrap;min-width:0;max-width:100%}
#rhPaiements .fact-a-droite select{box-sizing:border-box;max-width:100%;min-width:0;min-height:44px;font:inherit}
#rhPaiements .fact-pers-chiffres{min-width:0;max-width:100%;flex-wrap:wrap;white-space:normal;row-gap:12px;line-height:1.5}
#rhPaiements .fact-pers-chiffres label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}
#rhPaiements .fact-taux{box-sizing:border-box;min-height:44px;font-size:1rem;max-width:100%}
#rhPaiements .fact-pers-nom{white-space:normal;overflow-wrap:anywhere;flex:1 1 150px;line-height:1.5}
#rhPaiements .fact-q,#mContenu .fact-q{min-width:0;flex-wrap:wrap;row-gap:6px;line-height:1.5}
#rhPaiements .fact-q .l,#mContenu .fact-q .l{white-space:normal;overflow-wrap:anywhere;flex-basis:120px}
#rhPaiements .fact-q .d,#rhPaiements .fact-q .m,#rhPaiements .fact-lien,#mContenu .fact-q .d,#mContenu .fact-q .m{white-space:normal;overflow-wrap:anywhere;max-width:100%}
#rhPaiements .facture-actions{min-width:0;max-width:100%}
#rhPaiements .facture-actions .btn-envoi,#rhPaiements .fact-actions .btn-envoi,#rhPaiements .fact-actions .btn-assigner,#mContenu .fact-actions .btn-envoi,#mContenu .fact-actions .btn-assigner{
  box-sizing:border-box;height:auto;min-height:44px;max-width:100%;white-space:normal;line-height:1.5;padding-block:8px;
}
#mContenu .fact-champs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;min-width:0}
#mContenu .fact-champ{display:grid;gap:6px;min-width:0;font-size:14px;line-height:1.5}
#mContenu .fact-champ input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;font:inherit;font-size:1rem}
#mContenu .facture-piece{max-width:100%;white-space:normal;overflow-wrap:anywhere}

@media screen and (max-width:600px){
  #banqueCarnet .carnet-grille,#banqueComblement .diff-grille{grid-template-columns:minmax(0,1fr)}
  #banqueCarnet .cc-duo{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
  #banqueComblement .diff-periode .ctl-reglage{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;min-width:0;box-sizing:border-box}
  #banqueComblement .diff-periode .ctl-reglage>label{width:100%;box-sizing:border-box}
  #profilEtablissement .profil-exception{grid-template-columns:minmax(0,1fr)}
  #rhPaiements .fact-a-droite{width:100%;margin-left:0;gap:12px}
  #rhPaiements .fact-a-droite select,#rhPaiements .fact-a-droite .btn-envoi{flex:1 1 140px;min-width:0}
  #rhPaiements .fact-pers-chiffres{flex-direction:column;align-items:flex-start;width:100%;margin-left:0;gap:12px}
  #rhPaiements .facture-actions{width:100%;margin-left:0}
  #rhPaiements .fact-actions>*{min-width:0}
  #mContenu .fact-champs{grid-template-columns:minmax(0,1fr)}
  #editeurPharmacien #ch-cycleOnOff,#editeurPharmacien #ch-cumulValeurs{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
  #editeurPharmacien #ch-cycleOnOff>div,#editeurPharmacien #ch-cumulValeurs>div{min-width:0}
}
@media screen and (max-width:900px){
  #editeurPharmacien #f-couleur{min-height:44px;min-width:44px;box-sizing:border-box}
  #editeurPharmacien #btnSupprPh{min-height:44px;max-width:100%;white-space:normal;box-sizing:border-box}
  #banqueCarnet .cc-actif,#tab-rh .finance-confirmation,#tab-regles .finance-confirmation,#rhPaiements .fact-q,#mContenu .fact-q{min-height:44px;box-sizing:border-box}
  #reg-regles .info-reglage label[for]{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding-block:8px}
  #reg-regles .desc-reglage a{display:inline-flex;align-items:center;min-height:44px;line-height:1.6}
  #reg-regles .lien-feries,#reg-periodes summary,#financeZone summary{min-height:44px;box-sizing:border-box;padding-block:12px;white-space:normal}
  #aidePop #btnAideFermer{width:44px;height:44px;min-width:44px;min-height:44px;box-sizing:border-box}
  #aidePop h4{padding-right:56px}
  #profilEtablissement label:has(>input[type=checkbox]){display:flex;align-items:center;gap:8px;min-width:44px;min-height:44px;box-sizing:border-box}
  #btnReset{min-height:44px;max-width:100%;white-space:normal;line-height:1.5;box-sizing:border-box}
  #listeSauvegardes .ligne-conge{display:flex;flex-wrap:wrap;gap:8px;line-height:1.6;min-width:0}
  #listeSauvegardes .ligne-conge small{min-width:0;white-space:normal;word-break:normal;overflow-wrap:normal}
  #editeurPharmacien .apercu-cycle>div{grid-template-columns:minmax(0,1fr);gap:0}
  #editeurPharmacien .apercu-cycle>div>span{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;background:transparent;border-radius:0;border-bottom:1px solid var(--filet);font-size:14px;line-height:1.6;text-align:left;word-break:normal;overflow-wrap:normal}
  #editeurPharmacien .apercu-cycle>div>span strong{font-size:14px}
}
#listeSauvegardes button[data-restaurer]{color:var(--os);background:var(--graphite2);border:1px solid var(--bord-controle);border-radius:8px;min-width:44px;min-height:44px;flex:none;padding:10px 12px;font:inherit;line-height:1.5}

/* Tablet desktop mode keeps both payroll tables readable within the content pane. */
@media screen and (min-width:901px) and (max-width:1200px){
  #rh-periodes>.grille-basse-reglages{grid-template-columns:minmax(0,1fr)}
}
