body#adherent { background-color: #ffffff; background-image: url("img/amap_fond_adherent.jpg"); background-position: left top; background-size: cover; background-repeat: no-repeat; background-attachment: fixed; }
body#admin { background-color: #ffffff; background-image: url("img/amap_fond_admin.jpg"); background-position: left top; background-size: cover; background-repeat: no-repeat; background-attachment: fixed; }
body#producteur { background-color: #ffffff; background-image: url("img/amap_fond_producteur.jpg"); background-position: left top; background-size: cover; background-repeat: no-repeat; background-attachment: fixed; }
.tab_content {background-color: #FFF; padding:0.5em; margin-bottom:1em;}

.effet_bt_zoom {-webkit-transition: all 0.5s; transition: all 0.5s; opacity:0.9; cursor: pointer; opacity:0.7}
.effet_bt_zoom:hover {opacity:1; transform: scale(1.2); opacity:1;}
.look_lien {color:blue; cursor: pointer; text-decoration: underline;}
.look_lien:hover {text-decoration: none;}
.look_bloc {border:1px solid grey; border-radius: 10px; padding:0.5em; font-size:12px;}
.nav-link {font-weight: bold;}
.bt_zebre {border: 1px solid grey; border-radius: 5px;}
/*Fred */
.bt_etendu {border: 1px solid grey; border-radius: 5px;}
/*Fred*/

#adh_commande_tab, #adh_bondecommande_tab, #prod_commandes_tab, #adh_coordonnee_tab {color:red;}
#pro_bondecommande_tab {color:blue;}
.mention_pragmatice {border-top:1px solid grey; padding-top:15px; text-align: center; font-style: italic;}
.accueil_admin {border-top:1px solid grey; padding:15px 0;}

table#bondecommande th {border:1px solid black; padding:0; font-size:11px; font-weight: bold; text-align: center;}
table#bondecommande td.euro {text-align: right;}
table#bondecommande td {border:1px solid black; padding:0 2px; font-size:11px;}
table#bondecommande th.date_fixe {width: 55px;}
table#bondecommande th.euro {width: 50px; text-align: right;}

/*Ajout Fred pour 2 feuilles de contrat */
#printArea table#bondecommande th {font-size:16px;}/* 11px par défaut */
#printArea table#bondecommande td {font-size:16px;}/* 11px par défaut */
#printArea .look_bloc {font-size:16px;}/* 12px par défaut */
/*Fin ajout Fred */

#adh_tablo_commande input {width: 60px;}
#adh_tablo_commande th {text-align: center;}
#adh_tablo_commande th.date_fixe {width: 90px;}
table .euro {text-align: right;}
table .quantite {text-align: center;}


.bloc_entete h3, .aff_entete h3 {font-weight: bold; font-size: 28px;}
.bloc_entete h4, .aff_entete h4 {font-weight: bold; font-size: 20px;}
.bloc_entete h5, .aff_entete h5 {font-weight: bold; font-size: 18px; font-style: italic;}
.aff_producteur td, .aff_producteur th, .tablo_calendrier td, .tablo_calendrier th, .tablo_liste_info td {border: 1px solid grey;}
.tablo_calendrier, .aff_producteur table {font-size: 12px;}
.tablo_calendrier td, .tablo_calendrier .colavecdate {text-align: center;}
.referent_lieu table td, .referent_lieu table th {border: 1px solid grey; text-align: center;}
.bloc_engagement ul {margin-bottom:0; padding-left:15px;}
.precision_lien {padding-top:0; padding-bottom:0; margin:5px 5px 0 5px; font-weight: bold;}

.taille_bt {width: 34px;}
.taille_lieu {width: 100px;}
.taille_prix {width: 100px; text-align: center;}
.th_prix {width: 60px; text-align: center;}
.th_date {width: 80px; text-align: center;}
.th_quantite {width: 30px; text-align: center;}
.th_total {width: 70px; text-align: center;}
.th_produit {text-align: center;}
.td_prix, .td_total {text-align: right;}

#adh_tablo_commande .com_bt {width: 34px;}
#adh_tablo_commande .com_date {width: 120px;}
#adh_tablo_commande .com_prix {width: 80px; text-align: right;}
#adh_tablo_commande .com_quantite, #adh_tablo_commande .quantite_produit {width: 60px;}
#adh_tablo_commande .com_quantite {text-align: center;}
#adh_tablo_commande .com_qxp {width: 100px; text-align: right;}
#adh_tablo_commande .com_libelle_montant, #adh_tablo_commande .com_montant {text-align: right; font-weight: bold;}
.coordonnes_adhesion input, .coordonnes_adhesion .input-group, .coordonnes_adhesion .input-group-text {padding-top:0; padding-bottom:0;}

.choix_logo {width:96px; height:54px; cursor: pointer; margin:10px; display: inline-block;}
.choix_logo.on {-webkit-box-shadow: 0px 0px 8px 3px red; box-shadow: 0px 0px 8px 3px red;}
.bloc_init {border:1px solid grey; margin:1em 0; border-radius:1em; padding-top:0.5em; padding-bottom:0.5em; background-color: #E7F1F8;}
#contrats_init .action {width: 40px;}
#contrats_init td {padding:1px;}
#tablo_lieux tbody input {background-color: transparent;}
#tablo_lieux tbody td:first-child input {font-weight: bold;}
#tablo_lieux thead th {text-align: center;}
#bt_onglet-init h3 span {font-size: 16px; font-style: italic;}

#tablo_compteur {margin:auto; border:1px solid grey;}
#tablo_compteur th, #tablo_compteur td {border:1px solid grey; padding:5px 15px; background-color: #FFF; text-align: center;}
.tablo_stat_histo td, .tablo_stat_histo th {text-align: left!important;}
.tablo_stat_resume td, .tablo_stat_resume th {text-align: center;}
.tablo_stat_resume td:first-child {text-align: left;}
.bloc_stat {border:1px solid grey; margin:1em 0; border-radius:1em; padding-top:0.5em; padding:0.5em; background-color: #E7F1F8;}

/* Gestion du bouton de retour en haut de page */
#returnOnTop {background: url('img/return_on_top.png') no-repeat; bottom: 1%; cursor: pointer; display: none; filter: alpha(opacity = 50); height: 48px; opacity: 0.5; position: fixed; right: 1%; width: 48px;}
#returnOnTop:hover { filter: alpha(opacity = 100); opacity: 1;}

/* Gestion de l'impression  */
.impression_slt {display:none;} 
@media print {
  .no_imprim {display:none;}
  .container {max-width: 100%;}
  @page {
    size: A4 portrait; /* Force le format paysage */
    margin: 0; /* Supprime toutes les marges */
  }
  body {margin: 0.5cm;} /* Supprime toute marge supplémentaire */
  header, footer {display: none !important;} /* Cache les en-têtes et pieds de page */
  body#adherent { background-color: #ffffff; background-image: none;}
  body#admin { background-color: #ffffff; background-image: none;}
  body#producteur { background-color: #ffffff; background-image: none;}
  #aff_bondecommande > div {width: 50%;}
  #returnOnTop {display:none!important;}
  .bt_zebre {display:none;}
}

@media only screen and (max-width: 576px) {
  /*.nav-tabs {display: block;}*/
  #page_calendrier_lieu .logo_tous {display:none;}
  #page_producteur .logo_tous {display:none;}
  .modal{position: fixed; top:50%;}
}
#tablo_calendrier td, #tablo_calendrier th {padding:5px!important;}

/* V4.4.15.2 : impression de l'onglet Amapiens et commandes écran masquées. */
@media print {
  .no_imprim, .no_imprim * { display:none !important; }
  body.print-amapiens .nav-tabs, body.print-amapiens #admin_accueil,
  body.print-amapiens #admin_calendrier, body.print-amapiens #admin_contrats,
  body.print-amapiens #admin_maintenance, body.print-amapiens #returnOnTop { display:none !important; }
  body.print-amapiens #admin_amapiens { display:block !important; opacity:1 !important; }
  body.print-amapiens #admin_amapiens .table-responsive { overflow:visible !important; }
  body.print-amapiens #admin_amapiens table { font-size:9pt; width:100%; }
  body.print-amapiens #admin_amapiens th, body.print-amapiens #admin_amapiens td { padding:3px 5px; }
  body.print-amapiens #admin_amapiens a { color:#000; text-decoration:none; }
}

/* V4.4.15.2 : impression de l'onglet Amapiens et commandes écran masquées. */
@media print {
  .no_imprim, .no_imprim * { display:none !important; }
  body.print-amapiens .nav-tabs, body.print-amapiens #admin_accueil,
  body.print-amapiens #admin_calendrier, body.print-amapiens #admin_contrats,
  body.print-amapiens #admin_maintenance, body.print-amapiens #returnOnTop { display:none !important; }
  body.print-amapiens #admin_amapiens { display:block !important; opacity:1 !important; }
  body.print-amapiens #admin_amapiens .table-responsive { overflow:visible !important; }
  body.print-amapiens #admin_amapiens table { font-size:9pt; width:100%; }
  body.print-amapiens #admin_amapiens th, body.print-amapiens #admin_amapiens td { padding:3px 5px; }
  body.print-amapiens #admin_amapiens a { color:#000; text-decoration:none; }
}


/* V4.4.15.33 : harmonisation Admin / impression Amapiens compacte. */
#admin_amapiens .admin-action-col { width: 54px; min-width: 54px; text-align: center; white-space: nowrap; }
.admin-amapiens-print-header { display:none; }
.admin-producteurs-print-header { display:none; }
@media print {
  body.print-amapiens { margin:0.35cm; }
  body.print-amapiens .container { margin:0; padding:0; max-width:100%; }
  body.print-amapiens #admin_amapiens > h2 { display:none !important; }
  body.print-amapiens .admin-amapiens-print-header {
    display:flex !important; align-items:center; justify-content:center; position:relative;
    min-height:62px; margin:0 0 7px 0; padding:0 95px;
  }
  body.print-amapiens .admin-amapiens-print-header img {
    position:absolute; left:0; top:0; width:82px; height:62px; object-fit:contain;
  }
  body.print-amapiens .admin-amapiens-print-header > div { text-align:center; }
  body.print-amapiens .admin-amapiens-print-title { font-size:18pt; line-height:1.05; font-weight:700; }
  body.print-amapiens .admin-amapiens-print-subtitle { font-size:13pt; line-height:1.15; font-weight:700; margin-top:5px; }
  body.print-amapiens #admin_amapiens > .row.g-2.mb-4 {
    display:flex !important; flex-wrap:nowrap !important; gap:5px !important; margin:0 0 8px 0 !important;
  }
  body.print-amapiens #admin_amapiens > .row.g-2.mb-4 > [class*="col-"] {
    flex:1 1 25% !important; width:25% !important; max-width:25% !important; padding:0 !important;
  }
  body.print-amapiens #admin_amapiens .card { min-height:0 !important; height:auto !important; }
  body.print-amapiens #admin_amapiens .card-body { padding:4px 7px !important; display:flex; align-items:baseline; justify-content:space-between; gap:5px; }
  body.print-amapiens #admin_amapiens .card-body .text-muted { font-size:8.5pt; line-height:1.05; color:#000 !important; }
  body.print-amapiens #admin_amapiens .card-body .fs-2 { font-size:11pt !important; line-height:1; white-space:nowrap; }
  body.print-amapiens #admin_amapiens h3 { font-size:13pt; margin:7px 0 3px !important; }
  body.print-amapiens #admin_amapiens .table-responsive.mb-4 { margin-bottom:7px !important; }
  body.print-amapiens #admin_amapiens table { margin-bottom:5px !important; }
}


/* V4.4.15.34 : impression Amapiens dédiée, indépendante des cartes écran. */
.admin-amapiens-print-summary { display:none; }
@media print {
  body.print-amapiens .admin-amapiens-screen-summary { display:none !important; }
  body.print-amapiens .admin-amapiens-print-summary {
    display:grid !important; grid-template-columns:repeat(4,1fr); gap:5px; margin:0 0 7px 0 !important;
  }
  body.print-amapiens .admin-amapiens-print-summary > div {
    border:1px solid #b8b8b8; border-radius:3px; padding:4px 6px; min-height:0;
    display:flex; align-items:baseline; justify-content:space-between; gap:6px;
  }
  body.print-amapiens .admin-amapiens-print-summary span { font-size:8.5pt; line-height:1; }
  body.print-amapiens .admin-amapiens-print-summary strong { font-size:10.5pt; line-height:1; white-space:nowrap; }
}


/* V4.4.15.35 : téléphone Amapiens sur une seule ligne. */
#admin_amapiens_table th:nth-child(4),
#admin_amapiens_table td:nth-child(4) {
  white-space: nowrap;
  min-width: 118px;
}


/* V4.4.15.36 : proportions du tableau Amapiens et impression fiable. */
#admin_amapiens_table { width:100%; table-layout:auto; }
#admin_amapiens_table th:nth-child(1), #admin_amapiens_table td:nth-child(1) { width:10%; }
#admin_amapiens_table th:nth-child(2), #admin_amapiens_table td:nth-child(2) { width:11%; }
#admin_amapiens_table th:nth-child(3), #admin_amapiens_table td:nth-child(3) { width:20%; }
#admin_amapiens_table th:nth-child(4), #admin_amapiens_table td:nth-child(4),
#admin_amapiens_table .admin-phone-col { width:13%; min-width:135px; white-space:nowrap !important; }
#admin_amapiens_table th:nth-child(5), #admin_amapiens_table td:nth-child(5) { width:7%; white-space:nowrap; }
#admin_amapiens_table th:nth-child(6), #admin_amapiens_table td:nth-child(6) { width:9%; white-space:nowrap; }
#admin_amapiens_table th:nth-child(8), #admin_amapiens_table td:nth-child(8) { width:52px; min-width:52px; }
@media print {
  body.print-amapiens .admin-amapiens-print-header { display:flex !important; }
  body.print-amapiens .admin-amapiens-print-summary { display:grid !important; }
  body.print-amapiens .admin-amapiens-screen-summary { display:none !important; }
}


/* V4.4.15.37 : impression Amapiens sans doublon des indicateurs. */
@media print {
  body.print-amapiens #admin_amapiens .admin-amapiens-screen-summary {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
}

/* V4.5.12 : impression Admin > Amapiens adaptée au tableau actuel. */
@media print {
  body.print-amapiens #admin_amapiens .table-responsive {
    overflow: visible !important;
  }
  body.print-amapiens #admin_amapiens_table {
    width: 100% !important;
    table-layout: fixed !important;
    font-size: 8pt !important;
    line-height: 1.15 !important;
  }
  body.print-amapiens #admin_amapiens_table thead {
    display: table-header-group !important;
  }
  body.print-amapiens #admin_amapiens_table tr {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }
  body.print-amapiens #admin_amapiens_table th,
  body.print-amapiens #admin_amapiens_table td {
    padding: 2.5px 4px !important;
    vertical-align: top !important;
  }
  body.print-amapiens #admin_amapiens_table th:nth-child(1),
  body.print-amapiens #admin_amapiens_table td:nth-child(1) { width: 9% !important; }
  body.print-amapiens #admin_amapiens_table th:nth-child(2),
  body.print-amapiens #admin_amapiens_table td:nth-child(2) { width: 9% !important; }
  body.print-amapiens #admin_amapiens_table th:nth-child(3),
  body.print-amapiens #admin_amapiens_table td:nth-child(3) {
    width: 20% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
  body.print-amapiens #admin_amapiens_table th:nth-child(4),
  body.print-amapiens #admin_amapiens_table td:nth-child(4) {
    width: 14% !important;
    min-width: 0 !important;
    white-space: nowrap !important;
  }
  body.print-amapiens #admin_amapiens_table th:nth-child(5),
  body.print-amapiens #admin_amapiens_table td:nth-child(5) {
    width: 7% !important;
    white-space: nowrap !important;
    text-align: center !important;
  }
  body.print-amapiens #admin_amapiens_table th:nth-child(6),
  body.print-amapiens #admin_amapiens_table td:nth-child(6) {
    width: 10% !important;
    white-space: nowrap !important;
  }
  body.print-amapiens #admin_amapiens_table th:nth-child(7),
  body.print-amapiens #admin_amapiens_table td:nth-child(7) {
    width: 31% !important;
  }
  body.print-amapiens #admin_amapiens_table td:nth-child(7) a {
    display: inline-block !important;
    margin: 0 2px 2px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    color: #000 !important;
    background: transparent !important;
    text-decoration: none !important;
  }
  body.print-amapiens #admin_amapiens h3 {
    font-size: 12pt !important;
    margin: 5px 0 3px !important;
  }
  body.print-amapiens .admin-amapiens-print-header {
    min-height: 52px !important;
    margin-bottom: 5px !important;
  }
  body.print-amapiens .admin-amapiens-print-header img {
    width: 70px !important;
    height: 52px !important;
  }
  body.print-amapiens .admin-amapiens-print-title { font-size: 16pt !important; }
  body.print-amapiens .admin-amapiens-print-subtitle { font-size: 11pt !important; margin-top: 3px !important; }
  body.print-amapiens .admin-amapiens-print-summary {
    gap: 4px !important;
    margin-bottom: 5px !important;
  }
  body.print-amapiens .admin-amapiens-print-summary > div {
    padding: 3px 5px !important;
  }
}


/* V4.5.45.9 - ventilation des contrats par lieu : écran + impression */
#ind_contrats_lieux.admin-screen-contrats-lieux {
  display:block;
  line-height:1.25;
}
#ind_contrats_lieux .contrats-lieu-ligne {
  display:block !important;
  white-space:nowrap;
  margin-top:2px;
}
.admin-amapiens-print-summary .admin-print-contrats-lieux { display:none; }
@media print {
  body.print-amapiens .admin-amapiens-print-summary > div.admin-print-contrats-box {
    display:block !important;
    align-items:initial !important;
    justify-content:initial !important;
  }
  body.print-amapiens .admin-print-contrats-top {
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:6px;
  }
  body.print-amapiens .admin-print-contrats-lieux {
    display:block !important;
    margin-top:2px;
    font-size:6.8pt;
    line-height:1.15;
    font-weight:400;
    color:#000;
  }
  body.print-amapiens .admin-print-contrats-lieux .contrats-lieu-ligne {
    display:block !important;
    white-space:nowrap;
  }
}


/* V4.5.45.10 - impression dédiée Admin > Producteurs. */
@media print {
  body.print-producteurs .nav-tabs,
  body.print-producteurs #admin_accueil,
  body.print-producteurs #admin_calendrier,
  body.print-producteurs #admin_contrats,
  body.print-producteurs #admin_amapiens,
  body.print-producteurs #admin_maintenance,
  body.print-producteurs #returnOnTop { display:none !important; }

  body.print-producteurs { margin:0.35cm; }
  body.print-producteurs .container { margin:0; padding:0; max-width:100%; }
  body.print-producteurs #admin_producteurs {
    display:block !important;
    opacity:1 !important;
  }
  body.print-producteurs .admin-producteurs-print-header {
    display:flex !important;
    align-items:flex-start;
    gap:18px;
    margin-bottom:8px;
  }
  body.print-producteurs .admin-producteurs-print-header img {
    width:54px;
    height:auto;
    flex:0 0 auto;
  }
  body.print-producteurs .admin-producteurs-print-header > div { text-align:center; flex:1 1 auto; }
  body.print-producteurs .admin-producteurs-print-title { font-size:18pt; line-height:1.05; font-weight:700; }
  body.print-producteurs .admin-producteurs-print-subtitle { font-size:13pt; line-height:1.15; font-weight:700; margin-top:5px; }
  body.print-producteurs #admin_producteurs .table-responsive {
    overflow:visible !important;
  }
  body.print-producteurs #admin_producteurs_commandes {
    width:100% !important;
    table-layout:auto !important;
    font-size:9pt !important;
    line-height:1.2 !important;
  }
  body.print-producteurs #admin_producteurs_commandes thead {
    display:table-header-group !important;
  }
  body.print-producteurs #admin_producteurs_commandes tr {
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }
  body.print-producteurs #admin_producteurs_commandes th,
  body.print-producteurs #admin_producteurs_commandes td {
    padding:4px 6px !important;
    vertical-align:top !important;
  }
  body.print-producteurs #admin_producteurs_commandes th:nth-child(6),
  body.print-producteurs #admin_producteurs_commandes td:nth-child(6) {
    display:none !important;
  }
  body.print-producteurs #admin_producteurs a {
    color:#000 !important;
    text-decoration:none !important;
  }
  body.print-producteurs #admin_producteurs_message,
  body.print-producteurs #admin_producteurs > .small.text-muted,
  body.print-producteurs #admin_producteurs .admin-producteurs-screen-header,
  body.print-producteurs #admin_producteurs .admin-producteurs-title-row {
    display:none !important;
  }
  body.print-producteurs #admin_producteurs .text-muted {
    color:#000 !important;
  }
}

/* ============================================================
   PragmAMAP V4.6 - numéro de version commun à toutes les pages.
   Affichage volontairement ajouté uniquement via la feuille CSS
   partagée pour ne pas modifier la logique PHP/JS des pages.
   ============================================================ */
:root {
  --pragmamap-version: "V4.6";
}

body::after {
  content: "PragmAMAP - 2026 - version " var(--pragmamap-version);
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin-top: 2rem;
  padding: 12px 16px;
  border-top: none;
  background: transparent;
  color: #52616b;
  font-size: 14px;
  line-height: 1.2;
  text-align: center;
}

@media print {
  body::after {
    display: none !important;
    content: none !important;
  }
}

