.footer::after {
  content: "© 2026 - Plateforme de commande de documents imprimés pour le Crédit Agricole Centre France, mise à disposition par Siman France. Tous droits réservés.";
  display: block;
  text-align: center;
  margin-top: 10px;
  color: #ccc;
  font-size: 14px;
}

@media (min-width: 1199px) and (max-width: 1299px) {
    .category .main-content,     .home .middle-section {
        width: 1160px;
    }
}

@media (min-width: 1300px) {
    .category .main-content,     .home .middle-section {
        width: 1300px;
    }
}


.promotion-item .title-area *{
  align-self: auto !important;
  text-align: left;
}

.promotion-item .title-area .button, .layout.home .featured-products-wrapper{
 display: none;
}

.promotion-item .title-area .subtitle{
  color: red;
  font-size: 16px;
  width : 1000px; 
}
.promotion-item .title-area .description{
  color: red;
  font-size: 13px;
  width : 1000px; 
}

.product-item .image-wrapper {
    padding: 0px !important;
    background: #FFF;

}

.switcher.currency.dropdown{
display: none; 
}

.sticky-price-panel .total-price{
display: none;
}

.product-layout img.show {
 background-color: #FFF !important;
}

.product-layout .image-wrapper {
 background-color: var(--color-fill) !important;
 padding : 0px !important;
}

.static-product .right .product-details .product-name {
    margin-bottom: 20px;
    color: var(--color-highlight);
}

.category .title, .subtitleProductName, .kit-name {
    color: var(--color-highlight) !important;
    text-transform: uppercase;
}

.static-product-wizard{
    margin-top: 70px;
    margin-bottom: 50px !important;
}

.CustomizationProperties #customization {
       padding: 20px;
    padding-bottom: 40px;
    border: 1px solid var(--color-line);
    border-top: 3px solid var(--color-highlight);
    border-radius: 5px;
    box-shadow: 0 5px 15px -5px rgba(0, 0, 0, .12);
}

#tblOrderFinalStepContent #tdDocCtrlLeft {
       padding: 20px;
    border: 1px solid var(--color-line);
    border-top: 3px solid var(--color-highlight);
    border-radius: 5px;
    box-shadow: 0 5px 15px -5px rgba(0, 0, 0, .12);
}

#tblOrderFinalStepContent #tdPropertyList{
 padding: 0px !important;
}

#docCtrlContainer{
    background-color: var(--color-fill);
    padding: 20px;
    border-radius: 5px;
    width: 100%;
}

.ShoppingCartSubtotalCaption, #proofMainPagerPrev,#proofMainPagerNext{
 display:none !important;
}

#trAboveTop, #trTop{
    display: none;
    height: auto !important;
    padding: 0px !important;
}

.Duc dl .dtiName .FormLabel {
    margin-bottom: 0px !important;
}

.image-zoom .scroll-wrapper {
    margin-left: auto;
    margin-right: auto;
    margin-top: initial;
    margin-bottom: initial;

}
.imageCarousel-component .imageCarousel .img-wrapper .image, uStoreImagesViewer_Container {
    height: 100%;
}

.uStoreImagesViewer_MainPdfDiv {
    margin: 0 !important;
    height: 110% !important;
}

#ctl00_cphMainContent_trBillingAddress > td, #ctl00_cphMainContent_trShipping > td {
    padding: 20px;
    border: 1px solid var(--color-line);
    border-top: 3px solid var(--color-highlight);
    border-radius: 5px;
    box-shadow: 0 5px 15px -5px rgba(0, 0, 0, .12);
}






a.category-item{
  display:block;
  border-radius:15px;
  transition:background-color .2s ease;
}

a.category-item:hover{
  background-color:#f5f5f5;
}


.product-item{border-radius:5px;transition:background-color .2s ease;}
.product-item:hover{background-color:#f5f5f5;}



#add-to-cart-button{
  transition:background-color 0.7s ease,border-color 1s ease;
}

#add-to-cart-button:hover{
  background-color:#81c784;
  border-color:#81c784;
}


.product-properties .duc-wrapper .duc-head .duc-title {
    font-weight: 600 !important;
    font-family: 'Work Sans';
}

.file-upload-duc .upload-control>div{
    background-color: #E8F5E9;
}

.file-upload-duc .upload-control>.download-wrapper-link{
    background-color: transparent !important;
}

.product-properties .product-description{
 background:#e8f5e9;
 border:1px solid #c8e6c9;
 border-radius:6px;
 padding:14px;
 color:#000000;
 font-size:14px;
}









.product-properties .product-description p {
 margin:6px 0;
}

.static-product.product-layout .main-wrapper .view-proof-wrapper{
    width: 100%;
}



.static-product.product-layout .main-wrapper .view-proof-wrapper.desktop .view-proof div {
    display: inline-block;
    color: var(--button-primary-border-color);
}

.main-carousel-wrapper .image-carousel-wrapper .arrows {
    bottom: -35px;
    top: initial;
}

.main-carousel-wrapper .image-carousel-wrapper div:not(.image):not(.thumbnail-title-wrapper):not(.img-zoomed){
    overflow: visible;
}

.main-carousel-wrapper .image-carousel-wrapper {
    overflow: visible;
}








.main a.category-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 10px !important;
  box-sizing: border-box;
  text-align: center;
}

.main a.category-item .image-wrapper {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main a.category-item .image-wrapper img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

.main a.category-item .category-name {
  margin-top: 8px;
  text-align: center;
  text-transform: uppercase;
}

.product-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 10px !important;
  box-sizing: border-box;
  text-align: center;
}

.product-item .image-wrapper {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-item .image-wrapper img {
  max-width: 100%;
  object-fit: contain;
  display: block;
}

.product-item .product-name,
.product-item .product-description,
.product-item .LinesEllipsis {
  margin-top: 8px;
  text-align: center;
}

/* CATÉGORIES (page catégorie) : slider / right-column */
.layout.category .categories-wrapper .slider a.category-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  padding: 10px !important;
  box-sizing: border-box;
  text-align: center;
}

.layout.category .categories-wrapper .slider a.category-item .image-wrapper {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.layout.category .categories-wrapper .slider a.category-item .image-wrapper img {
  width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
  display: block;
}

.layout.category .categories-wrapper .slider a.category-item .category-name {
  margin-top: 8px;
  text-align: center;
  width: 100%;
}

body#body-legacy #preview{
    width: 50%;
}

#divProgress, #SlideShow, .gallerylayer, img.customizationPreview{
    width: auto !important;
    height: auto !important;
    max-height: 100vh;
}
#ctl00_cphMainContent_ucDialCustomization_SlideShow_tblNavigationPanel{
    width:100% !important;
}

.imageInfoLine.selector{
    display:none !important;
}

.expander{
    bottom: 30px !important;
}

#tblOrderFinalStepContent {
    table-layout: auto;
}

.gallerylayer{
  background-color: #EEE;
}

#ctl00_cphMainContent_ucDialCustomization_SlideShow_divWrapper .gallerylayer{
  background-color: #FFF;
}

/**
 * Styles CACF/U-STORE pour les tables
 * Design moderne type Tailwind/Bootstrap, adapté au thème
 * Classes ciblées : .rgMasterTable, .rgHeader, .rgRow, .rgAltRow
 */

/* ============================================
   Container & Table de base
   ============================================ */

.rgMasterTable {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
  font-family: var(--font-family, 'Open Sans'), sans-serif;
}

/* ============================================
   En-tête de table
   ============================================ */

.rgMasterTable .rgHeader,
.rgMasterTable thead th {
  background: linear-gradient(180deg, var(--color-highlight, #20a8ce) 0%, color-mix(in srgb, var(--color-highlight, #20a8ce) 92%, black) 100%) !important;
  color: var(--text-color-on-highlight-bg, #fff) !important;
  font-weight: 600;
  font-size: var(--text-size-regular, 14px);
  letter-spacing: 0.02em;
  text-align: left;
  padding: 14px 16px;
  border: none !important;
  border-bottom: 2px solid color-mix(in srgb, var(--color-highlight, #20a8ce) 85%, black) !important;
}

.rgMasterTable .rgHeader a,
.rgMasterTable thead th a {
  color: var(--text-color-on-highlight-bg, #fff) !important;
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.rgMasterTable .rgHeader a:hover,
.rgMasterTable thead th a:hover {
  opacity: 0.9;
}

/* ============================================
   Corps de table - lignes alternées
   ============================================ */

.rgMasterTable .rgRow > td,
.rgMasterTable .rgAltRow > td {
  padding: 12px 16px;
  font-size: var(--text-size-regular, 14px);
  color: var(--text-color-dark, #484848);
  border-bottom: 1px solid var(--color-line, #e5e7eb);
  transition: background-color 0.15s ease;
}

.rgMasterTable .rgRow > td {
  background-color: #fff;
}

.rgMasterTable .rgAltRow > td {
  background-color: var(--color-fill, #f9fafb);
}

/* Effet hover sur les lignes */
.rgMasterTable tbody tr:hover > td {
  background-color: color-mix(in srgb, var(--color-highlight, #20a8ce) 6%, white) !important;
}

/* Dernière ligne sans bordure */
.rgMasterTable tbody tr:last-child > td {
  border-bottom: none;
}

/* ============================================
   Liens dans les cellules
   ============================================ */

.rgMasterTable .Link,
.rgMasterTable td a.Link {
  color: var(--color-highlight, #20a8ce) !important;
  text-decoration: none;
  font-weight: 500;
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.rgMasterTable .Link:hover,
.rgMasterTable td a.Link:hover {
  border-bottom-color: var(--color-highlight, #20a8ce);
}

/* ============================================
   Statuts de commande
   ============================================ */

/* Statut "En cours" - vert/success */
.rgMasterTable td a span:not(.RejectText) {
  color: var(--color-success, #2fc943);
}

/* Statut "Rejeté" */
.rgMasterTable .RejectText {
  color: var(--color-error, #ff625a) !important;
  font-weight: 500;
}

/* Alignement icône + texte statut */
.rgMasterTable td img.uStoreLegacy-verticalAlignMiddle {
  vertical-align: middle;
  margin-right: 6px;
}

/* ============================================
   Ligne "Pas d'enregistrement"
   ============================================ */

.rgMasterTable .rgNoRecords td {
  padding: 32px 16px;
  text-align: center;
  color: var(--text-color-medium, #767676);
  font-style: italic;
  background-color: var(--color-fill, #f9fafb) !important;
}

/* ============================================
   Boutons d'action (Drafts table)
   ============================================ */

.rgMasterTable .DrafOrderButton {
  cursor: pointer;
  opacity: 0.85;
  transition: opacity 0.2s ease;
}

.rgMasterTable .DrafOrderButton:hover {
  opacity: 1;
}

/* Groupes de boutons mobile */
.rgMasterTable .btn-group.mobile {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.rgMasterTable .btn-group.mobile .btn {
  padding: 6px 12px;
  font-size: 12px;
  border-radius: 6px;
  border: 1px solid var(--color-line);
  background: #fff;
  color: var(--text-color-dark);
  text-decoration: none;
  transition: all 0.2s ease;
}

.rgMasterTable .btn-group.mobile .btn:hover {
  background: var(--color-fill);
  border-color: var(--color-highlight);
  color: var(--color-highlight);
}

/* ============================================
   Liens SiteLink (ex: Produits inclus)
   ============================================ */

.rgMasterTable .SiteLink {
  color: var(--color-highlight, #20a8ce) !important;
  font-size: var(--text-size-fineprint, 12px);
  text-decoration: none;
  display: inline-block;
  margin-top: 4px;
}

.rgMasterTable .SiteLink:hover {
  text-decoration: underline;
}

/* ============================================
   Responsive - tables empilées sur mobile
   ============================================ */

@media (max-width: 767px) {
  .rgMasterTable.stacktable {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  }

  .rgMasterTable .rgHeader {
    padding: 12px 14px;
    font-size: var(--text-size-fineprint, 12px);
  }

  .rgMasterTable .rgRow > td,
  .rgMasterTable .rgAltRow > td {
    padding: 10px 14px;
    font-size: var(--text-size-fineprint, 12px);
  }
}

/* ============================================
     HIDE PRICE   ============================================ */

th.ShoppingCartGrid_Column_Price, td.ShoppingCartGrid_Column_Price {
    display:none;
}

#ctl00_cphMainContent_OrderListTable th:nth-child(3), #ctl00_cphMainContent_OrderListTable td:nth-child(3) {
    display:none;
}

#ctl00_cphMainContent_dgLastDrafts_dgDrafts_ctl00 .RadGrid .rgRow>td {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#ctl00_cphMainContent_trPriceSummary, #ctl00_cphMainContent_lnkShowReceipt, form.ustore_OrderDetails div#fullpage div:nth-child(10), form.ustore_OrderDetails div#fullpage #ctl00_cphMainContent_OrderTable_ctl00 tbody tr:nth-child(even), .OrderDetailsGrid_Column_Price{
   display: none;
}

#ctl00_cphMainContent_ucCurrentCart_LblTitle, #ctl00_cphMainContent_ucSaveForLaterCart_LblTitle{
    color:grey;
}

form.ustore_CheckoutFinal .breadCrumbs{
    display:none;
}

#ctl00_cphMainContent_divShippingItems .ShippingItemContainer, .checkoutSubmissionOrderPriceContainerContainer{
  display: none;
}

/* ============================================

VALIDATION COMMANDE
     
============================================ */


.addressBodyWrapper {
    padding:15px 0;
}

#ctl00_cphMainContent_ShippingAddress_tblAddressDetails, #ctl00_cphMainContent_BillingAddress_tblAddressDetails {
    padding: 15px;
    background-color: rgba(134, 206, 0, 0.22);
    border-radius: 10px;
    min-width: 380px;
}

#ctl00_cphMainContent_ShippingAddress_lblHeading, #ctl00_cphMainContent_BillingAddress_lblHeading {
    padding-bottom: 10px;
    color: gray;
}

#ctl00_cphMainContent_ShippingAddress_lnkEditAddress, #ctl00_cphMainContent_BillingAddress_lnkEditAddress{
    text-align: right;
    width: 100% !important;
    display: inline-block;
}

/* Page Profil */

#ctl00_cphMainContent_trEmailAddress,
#ctl00_cphMainContent_trFaxNumber,
#ctl00_cphMainContent_trCompanyName,
#ctl00_cphMainContent_trDepartment,
#ctl00_cphMainContent_trJobTitle, #ctl00_cphMainContent_ucCurrentCart_dgOrderTable_ctl00 td.tdUnits span:nth-child(1) {
 display: none;
}

@media (min-width: 1500px) {
    .category .main-content, .home .middle-section {
        width: 1500px;
    }
}

.tblPriceTagsWrapper.table-responsive, #ctl00_cphMainContent_btnRecalculate, #ctl00_cphMainContent_trPricingTableLink{
    display: none !important;
}

#tblOrderFinalStepContent tr:nth-child(n+5):nth-child(-n+10){
    display: none !important;
}



.summary-table,
.summary-header,
#total-price-component {
    display: none !important;
}




.bloc_descriptif_evenement_bdd {
    display: flex;
    width: 500px;
    max-width: 100%;
    min-height: 160px;
    height: auto;
    background-color: #ffffff;
    box-shadow: 0 0 7px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0 0 7px rgba(0,0,0,0.2);
    -moz-box-shadow: 0 0 7px rgba(0,0,0,0.2);
    -o-box-shadow: 0 0 7px rgba(0,0,0,0.2);
    -ms-box-shadow: 0 0 7px rgba(0,0,0,0.2);
    border-left: solid 3px #86ce00;
    margin-bottom: 16px;
}

.bloc_descriptif_evenement_bdd .bloc_event_image {
    display: inline-block;
    flex: 0 0 30%;
    vertical-align: top;
    width: 30%;
    min-height: 160px;
}

.bloc_descriptif_evenement_bdd .bloc_event_texte {
    display: inline-block;
    vertical-align: top;
    flex: 1;
    width: 70%;
    height: auto;
    box-sizing: border-box;
    padding: 20px 16px;
}

.bloc_descriptif_evenement_bdd .bloc_event_texte h4 {
    margin-top: 0;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    color: #86ce00;
    font-size: 20px;
    margin-bottom: 12px;
    line-height: 23px;
}

.bloc_descriptif_evenement_bdd .bloc_event_texte h4 .color_noir {
    color: #646464;
    font-weight: 400;
}

.bloc_descriptif_evenement_bdd .bloc_event_texte p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #000000;
    font-size: 15px;
    text-align: justify;
}

.bloc_descriptif_evenement_bdd .bloc_event_texte span.fichiers_acceptes {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #000000;
    font-size: 12px;
    color: #646464;
    display: block;
    margin-top: 12px;
}

#bloc_description_produits_evenements_bdd {
    margin-top: 20px;
}

@media (max-width: 640px) {
    .bloc_descriptif_evenement_bdd {
        display: block;
    }

    .bloc_descriptif_evenement_bdd .bloc_event_image,
    .bloc_descriptif_evenement_bdd .bloc_event_texte {
        width: 100%;
    }

    .bloc_descriptif_evenement_bdd .bloc_event_image {
        height: 160px;
        min-height: 160px;
    }
}

/**
* UStore - Personnalisation du carnet d'adresses
* CACF - Carnet global uniquement (bridage du carnet personnel)
*
* Intégration : ajouter ce contenu à Custom.css du thème ou charger ce fichier
* après les styles du thème.
*/

/* ============================================
 CHECKOUT - Facturation
 Garder "Paramétrer l'adresse de facturation" quand aucune adresse
 Masquer "Ajouter" et "Modifier" quand une adresse existe déjà
 ============================================ */

/* Masquer "Modifier" en facturation (adresse déjà configurée) */
#ctl00_cphMainContent_trBillingAddress #ctl00_cphMainContent_BillingAddress_lnkEditAddress, #ctl00_cphMainContent_trBillingAddress {
  display: none !important;
}

/* Masquer "Ajouter" en facturation quand une adresse existe (version avec icône) */
#ctl00_cphMainContent_trBillingAddress #ctl00_cphMainContent_BillingAddress_lnkAddAddress:has(img) {
  display: none !important;
}

/* ============================================
   CHECKOUT - Adresse de livraison
   Masquer les radios, garder dropdown + bouton carnet global
   ============================================ */

/* Masquer "Utiliser l'adresse de facturation" (radio + label) */
#ctl00_cphMainContent_trShippingAddress .ShippingAddressWrapper {
  display: none !important;
}

/* Masquer "Sélectionner parmi mes adresses" (radio + label), garder le select */
#ctl00_cphMainContent_trShippingAddress .selectAddressWrapper span:has(> #radSelectAddress) {
  display: none !important;
}

/* Masquer le lien "Ajouter" en livraison (carnet global uniquement) */
#ctl00_cphMainContent_ShippingAddress_lnkAddAddress {
  display: none !important;
}

/* Réactiver "Modifier" en livraison (champs bridés au Contact uniquement via le script) */
/* #ctl00_cphMainContent_ShippingAddress_lnkEditAddress - laissé visible */

/* Option stricte : masquer aussi "Sélectionner parmi mes adresses" + dropdown
   Décommenter si vous voulez que l'utilisateur ne voie QUE "Utiliser facturation" et "Sélectionner une adresse"
#ctl00_cphMainContent_ShippingAddress_radSelectAddress,
#ctl00_cphMainContent_ShippingAddress_ddlAddresses,
label[for="radSelectAddress"] {
  display: none !important;
}
*/

/* Mettre en avant le lien "Sélectionner une adresse" (carnet global) */
#ctl00_cphMainContent_ShippingAddress_lnkAddGlobalAddress {
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 4px;
  background-color: color-mix(in srgb, var(--color-highlight, #20a8ce) 12%, white);
}

#ctl00_cphMainContent_ShippingAddress_lnkAddGlobalAddress:hover {
  background-color: color-mix(in srgb, var(--color-highlight, #20a8ce) 20%, white);
}

/* ============================================
   MODE AGENCE - Checkout livraison
   Masquer la selection d'adresse et certains champs
   ============================================ */

body.ustore-agency-mode #ctl00_cphMainContent_lblSelectShippingAddress,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_ddlAddresses,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_lnkAddGlobalAddress,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_lnkEditAddress,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_lblCity,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_lblZip,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_lblCountry,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_lblAddressReferenceRemark,
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_lblAddressRef {
  display: none !important;
}

body.ustore-agency-mode #ctl00_cphMainContent_trShippingAddress .selectAddressWrapper span:has(> #radSelectAddress) {
  display: none !important;
}

body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_tblAddressDetails tr:has(#ctl00_cphMainContent_ShippingAddress_lblCity),
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_tblAddressDetails tr:has(#ctl00_cphMainContent_ShippingAddress_lblCountry),
body.ustore-agency-mode #ctl00_cphMainContent_ShippingAddress_tblAddressDetails tr:has(#ctl00_cphMainContent_ShippingAddress_lblAddressReferenceRemark) {
  display: none !important;
}

body.ustore-agency-mode select[id*="txtCostCenter"],
body.ustore-agency-mode select[name*="txtCostCenter"] {
  background-color: #f1f3f5 !important;
  color: #6c757d !important;
  border-color: #ced4da !important;
  cursor: not-allowed !important;
  opacity: 1 !important;
}

/* ============================================
   MODE AGENCE - Page "Mes adresses"
   ============================================ */
body.ustore-agency-mode .ustore_DeliveryAddress a[id*="_lnkAddAddress"],
body.ustore-agency-mode .ustore_DeliveryAddress a[id*="_lnkEdit"],
body.ustore-agency-mode .ustore_DeliveryAddress a[id*="_lnkDelete"] {
  display: none !important;
}

/* Masquer ville + code postal (regroupés) */
body.ustore-agency-mode .ustore_DeliveryAddress [id*="_lblCityStateZip"],
/* Masquer pays */
body.ustore-agency-mode .ustore_DeliveryAddress [id*="_lblCountry"],
/* Masquer référence (toutes variantes d'ID possibles) */
body.ustore-agency-mode .ustore_DeliveryAddress [id*="AddressReference"],
body.ustore-agency-mode .ustore_DeliveryAddress [id*="AddressRef"],
body.ustore-agency-mode .ustore_DeliveryAddress [id*="AddressReferenceRemark"] {
  display: none !important;
}

body.ustore-agency-mode .ustore_DeliveryAddress li[id*="_trCityStateZip"],
body.ustore-agency-mode .ustore_DeliveryAddress li:has([id*="_lblCityStateZip"]),
body.ustore-agency-mode .ustore_DeliveryAddress li:has([id*="_lblCountry"]),
body.ustore-agency-mode .ustore_DeliveryAddress li:has([id*="AddressReference"]),
body.ustore-agency-mode .ustore_DeliveryAddress li:has([id*="AddressRef"]) {
  display: none !important;
}

/* ============================================
   MODE SIEGE - Page "Mes adresses"
   - Facturation : pas d'ajout / modif / suppression
   - Livraison : pas d'ajout
   ============================================ */
body.ustore-siege-mode .ustore_DeliveryAddress #ctl00_cphMainContent_billingPane_lnkAddAddress,
body.ustore-siege-mode .ustore_DeliveryAddress a[id*="billingPane"][id*="_lnkEdit"],
body.ustore-siege-mode .ustore_DeliveryAddress a[id*="billingPane"][id*="_lnkDelete"],
body.ustore-siege-mode .ustore_DeliveryAddress #ctl00_cphMainContent_shippingPane_lnkAddAddress {
  display: none !important;
}

/* Mode Siege - masquer certains champs dans les cadres d'adresses */
body.ustore-siege-mode #ctl00_cphMainContent_BillingAddress_lblCity,
body.ustore-siege-mode #ctl00_cphMainContent_BillingAddress_lblZip,
body.ustore-siege-mode #ctl00_cphMainContent_BillingAddress_lblCountry,
body.ustore-siege-mode #ctl00_cphMainContent_BillingAddress_lblAddressReferenceRemark,
body.ustore-siege-mode #ctl00_cphMainContent_BillingAddress_lblAddressRef,
body.ustore-siege-mode #ctl00_cphMainContent_BillingAddress_lblPhone,
body.ustore-siege-mode #ctl00_cphMainContent_BillingAddress_lblFax,
body.ustore-siege-mode #ctl00_cphMainContent_ShippingAddress_lblCity,
body.ustore-siege-mode #ctl00_cphMainContent_ShippingAddress_lblZip,
body.ustore-siege-mode #ctl00_cphMainContent_ShippingAddress_lblCountry,
body.ustore-siege-mode #ctl00_cphMainContent_ShippingAddress_lblAddressReferenceRemark,
body.ustore-siege-mode #ctl00_cphMainContent_ShippingAddress_lblAddressRef,
body.ustore-siege-mode #ctl00_cphMainContent_ShippingAddress_lblPhone,
body.ustore-siege-mode #ctl00_cphMainContent_ShippingAddress_lblFax,
body.ustore-siege-mode .ustore_DeliveryAddress [id*="_lblCityStateZip"],
body.ustore-siege-mode .ustore_DeliveryAddress [id*="_lblCountry"],
body.ustore-siege-mode .ustore_DeliveryAddress [id*="AddressReference"],
body.ustore-siege-mode .ustore_DeliveryAddress [id*="AddressRef"],
body.ustore-siege-mode .ustore_DeliveryAddress [id*="_lblPhone"],
body.ustore-siege-mode .ustore_DeliveryAddress [id*="_lblFax"] {
  display: none !important;
}


/* ============================================
   POPUP SelectGlobalAddress.aspx
   Remplacer la recherche par un menu déroulant
   ============================================ */

/* Masquer la ligne de recherche native (label + input + bouton Trouver + Réinitialiser) */
#selectGlobalAddressWrapper #ctl00_cphMainContent_lblSearch,
#selectGlobalAddressWrapper #txtSearch,
#selectGlobalAddressWrapper #ctl00_cphMainContent_btnSearch,
#selectGlobalAddressWrapper #ctl00_cphMainContent_lbClearSearch,
#selectGlobalAddressWrapper .ustore-search-row-hidden {
  display: none !important;
}

/* Style pour le nouveau dropdown injecté par le script */
#selectGlobalAddressWrapper .ustore-address-filter-row {
  display: flex !important;
  align-items: center;
  gap: 12px;
  margin-bottom: 15px;
  padding: 12px 0;
}

#selectGlobalAddressWrapper .ustore-address-filter-row label {
  font-weight: 600;
  margin: 0;
  white-space: nowrap;
}

#selectGlobalAddressWrapper .ustore-address-filter-select {
  flex: 1;
  min-width: 200px;
  max-width: 400px;
  padding: 8px 12px;
  font-size: 14px;
  border: 1px solid var(--color-line, #ddd);
  border-radius: 4px;
  background: #fff;
}

#selectGlobalAddressWrapper .ustore-address-filter-reset {
  color: var(--color-highlight, #20a8ce);
  text-decoration: none;
  white-space: nowrap;
}

#selectGlobalAddressWrapper .ustore-address-filter-reset:hover {
  text-decoration: underline;
}

/* Popup SelectGlobalAddress - colonnes masquées dynamiquement en mode Siège */
#selectGlobalAddressWrapper .ustore-col-hidden {
  display: none !important;
}

/* Popup CustomerAddress.aspx (iframe) - masquage CSS direct
   Sans dépendance à l'initialisation JS */
form[action*="CustomerAddress.aspx"] #tblAddressEdit tr.Address_City,
form[action*="CustomerAddress.aspx"] #tblAddressEdit tr.Address_Company,
form[action*="CustomerAddress.aspx"] #tblAddressEdit tr.Address_Country,
form[action*="CustomerAddress.aspx"] #tblAddressEdit tr.Address_Zip,
form[action*="CustomerAddress.aspx"] #tblAddressEdit tr.Address_AddressReference,
form[action*="CustomerAddress.aspx"] #tblAddressEdit tr.Address_Phone,
form[action*="CustomerAddress.aspx"] #tblAddressEdit tr.Address_Fax {
  display: none !important;
}

/* ============================================
   Style dédié à la section centre de coût (page d'exemple)
   ============================================ */

#ctl00_cphMainContent_trPaymentMethods {
  position: relative;
}

#ctl00_cphMainContent_trPaymentMethods > td {
  padding: 0;
}

#ctl00_cphMainContent_trPaymentMethods table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: linear-gradient(180deg, #ffffff 0%, rgba(134, 206, 0, 0.14) 100%);
  border: 1px solid #d9e5f3;
  border-radius: 12px;
  box-shadow: 0 8px 22px rgba(34, 78, 122, 0.08);
  overflow: hidden;
}

#ctl00_cphMainContent_trPaymentMethods hr {
  height: 0;
  margin: 0;
  border: 0;
}

#ctl00_cphMainContent_trPaymentMethods .ClearingConfigCell {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 18px 20px;
}

#ctl00_cphMainContent_trPaymentMethods
  #ctl00_cphMainContent_ctlClearingUserData10003_lblCostCenter {
  color: rgba(134, 206, 0, 1);
  font-weight: 600;
  margin: 0;
}

#ctl00_cphMainContent_trPaymentMethods
  #ctl00_cphMainContent_ctlClearingUserData10003_txtCostCenter,
#ctl00_cphMainContent_trPaymentMethods
  select[id*="txtCostCenter"],
#ctl00_cphMainContent_trPaymentMethods
  input[id*="txtCostCenter"] {
  min-width: 240px;
  width: clamp(240px, 34vw, 360px) !important;
  height: 40px;
  padding: 8px 12px;
  border: 1px solid #bccfe6;
  border-radius: 10px;
  background: #ffffff;
  color: #000;
  font-size: 14px;
  box-shadow: inset 0 1px 2px rgba(134, 206, 0, 0.08);
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

#ctl00_cphMainContent_trPaymentMethods
  #ctl00_cphMainContent_ctlClearingUserData10003_txtCostCenter:focus,
#ctl00_cphMainContent_trPaymentMethods
  select[id*="txtCostCenter"]:focus,
#ctl00_cphMainContent_trPaymentMethods
  input[id*="txtCostCenter"]:focus {
  outline: none;
  border-color: #000;
  box-shadow: 0 0 0 3px rgba(134, 206, 0, 0.22);
}

@media (max-width: 700px) {
  #ctl00_cphMainContent_trPaymentMethods .ClearingConfigCell {
    align-items: stretch;
    padding: 14px;
  }

  #ctl00_cphMainContent_trPaymentMethods
    #ctl00_cphMainContent_ctlClearingUserData10003_txtCostCenter,
  #ctl00_cphMainContent_trPaymentMethods
    select[id*="txtCostCenter"],
  #ctl00_cphMainContent_trPaymentMethods
    input[id*="txtCostCenter"] {
    width: 100% !important;
    min-width: 0;
  }
}

/**
* UStore - Styles du bloc "Date de livraison estimee"
* - Extraction ciblee depuis junot/style.css.
* - Regles dediees a:
*   - #SectionDateLivraison
*   - .LabelDate
*   - .ValeurDate
*
* Usage:
* - Charger cette feuille en complement de src/estimated-delivery-date.js.
* - Ajuster largeur/marges/padding selon la grille du checkout cible.
*/
form.ustore_CheckOut #cartOrderTableWrapper > #SectionDateLivraison {
  display: inline-block;
  vertical-align: top;
  width: 400px;
  max-width: 100%;
  height: 48px;
  padding: 0;
  margin: 0 24px 50px 0;
  box-sizing: border-box;
  background-color: #ffffff;
  box-shadow: 0 0 11px rgba(0, 0, 0, 0.1);
}

form.ustore_CheckOut #cartOrderTableWrapper > #SectionDateLivraison .LabelDate {
  display: inline-block;
  vertical-align: top;
  width: 60%;
  height: 100%;
  padding: 15px 20px;
  margin: 0;
  box-sizing: border-box;
  background-color: var(--cacf-green-100);
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
  color: #000000;
  text-align: center;
  text-transform: uppercase;
}

form.ustore_CheckOut #cartOrderTableWrapper > #SectionDateLivraison .ValeurDate {
  display: inline-block;
  vertical-align: top;
  width: 40%;
  height: 100%;
  padding: 12px 20px;
  margin: 0;
  box-sizing: border-box;
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
  color: #000000;
  text-align: center;
}

/**
* UStore - Panier CACF inspire de Junot (version fidele)
* Source: adaptation directe de la section "PANIER" de junot/style.css.
* Contraintes:
* - Aucune modification HTML.
* - Conservation des cases a cocher (non masques).
* - Palette CACF verte a la place des teintes Junot.
*/

/* Palette CACF */
:root {
  --cacf-green-050: #eef7f1;
  --cacf-green-100: #dcefe2;
  --cacf-green-300: #8fc3a1;
  --cacf-green-500: #2e8b57;
  --cacf-green-700: #1f6b42;
  --cacf-text: #000000;
}

/* ===================== */
/* ====== PANIER ======= */
/* ===================== */

/* Version Junot masque certaines lignes structurelles 
form.ustore_CheckOut .CheckOutPage #trShoppingCart > table > tbody > tr:nth-child(1),
form.ustore_CheckOut .CheckOutPage #trShoppingCart > table > tbody > tr:nth-child(2),
form.ustore_CheckOut .CheckOutPage #trShoppingCart > table > tbody > tr:nth-child(5),
form.ustore_CheckOut .CheckOutPage #trShoppingCart > table > tbody > tr:nth-child(6) {
  display: none;
}*/

/* IMPORTANT: on garde le select-all et les checkboxes visibles */
form.ustore_CheckOut .CheckOutPage #trShoppingCart .shoppingCart_selectAll_wrapper {
  display: block;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div {
  border: 0;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table {
  border-spacing: 0 12px;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table > thead {
  display: none;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table > tbody > tr {
  background-color: #ffffff;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table > tbody > tr > td {
  padding: 20px 8px !important;
}

/* On NE masque PAS la 1re colonne pour conserver les checkboxes */
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table > tbody > tr:nth-child(even) > td:nth-child(1) {
  display: table-cell;
  padding: 0px !important;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table > tbody > tr > td:nth-child(1) input[type="checkbox"] {
  accent-color: var(--cacf-green-500);
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table > tbody > tr > td.ShoppingCartGrid_Column_Thumbnail {
  padding-left: 20px !important;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_Thumbnail
  .thumbnailWrapper
  #thumbnailBorder {
  border: 0;
  display: block;
  width: 100%;
  height: 100%;
  padding: 20px 0;
  margin: 0;
  box-sizing: border-box;
  text-align: center;
  background-color: var(--cacf-green-050);
  border-radius: 0 !important;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_Thumbnail
  .thumbnailWrapper
  #thumbnailBorder
  > input {
  display: block;
  width: auto;
  height: 60px;
  padding: 0 !important;
  margin: 0 auto;
  box-sizing: border-box;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: 0 0 8px rgb(0 0 0 / 1%);
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_ProductName
  .linkEditNickName,
form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_ProductName
  .MoreInfoLabel {
  display: none !important;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_ProductName
  .XmpTooltipPopup {
  display: block !important;
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  border: 0;
  background-color: transparent;
  font-size: 13px;
  font-weight: 300;
  color: #5b6a61;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_ProductName
  .productName {
  margin-bottom: 6px;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_ProductName
  .productName
  > label {
  font-weight: 600;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_ProductName
  .editProduct
  > a {
  display: block;
  width: auto;
  height: auto;
  padding: 4px 10px;
  margin: 12px 0 0;
  box-sizing: border-box;
  background-color: var(--cacf-green-100);
  color: var(--cacf-green-700);
  font-weight: 600;
  text-transform: uppercase;
  font-size: 11px;
  text-decoration: none;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_ProductName
  .editProduct
  > a:hover {
  background-color: var(--cacf-green-500);
  color: #ffffff !important;
  text-decoration: none !important;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_Units
  > table
  > tbody
  > tr
  > td
  > span:nth-child(3) {
  display: none;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_Units
  > table
  > tbody
  > tr
  > td
  > span:nth-child(4),
form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_Units
  > table
  > tbody
  > tr
  > td
  > span:nth-child(5) {
  font-weight: 600;
  margin-top: 6px;
  display: inline-block;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  > div
  > table
  > tbody
  > tr
  > td.ShoppingCartGrid_Column_Price
  .BoldPriceLabel {
  font-weight: 700;
  border-bottom: solid 2px var(--cacf-green-300);
  padding-bottom: 2px;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary {
  height: auto !important;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary > .CheckOutPage {
  margin: 0;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trAboveTop {
  display: none;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trBottom {
  display: block;
  width: 100%;
  height: auto;
  padding: 25px;
  margin: 0;
  box-sizing: border-box;
  border: 0;
  background-color: #ffffff;
  box-shadow: 0 0 11px rgba(0, 0, 0, 0.1);
  float: left;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop {
  display: block;
  width: 100%;
  height: auto;
  margin: 36px 0 24px 0;
  padding: 0;
  box-sizing: border-box;
  border: 0;
  background-color: #ffffff;
  box-shadow: 0 0 11px rgba(0, 0, 0, 0.1);
  display: none;
}

/*
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop > #ctl00_cphMainContent_trSubTotal {
  display: block;
  width: 100%;
  height: auto;
  padding: 25px !important;
  margin: 0;
  box-sizing: border-box;
  background-color: var(--cacf-green-100);
  display: none;
}*/

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop > #LignePrixTVA {
  display: block;
  width: 100%;
  height: auto;
  padding: 25px 25px 8px 25px !important;
  margin: 0;
  box-sizing: border-box;
  background-color: #ffffff;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop > #LignePrixTTC {
  display: block;
  width: 100%;
  height: auto;
  padding: 8px 25px 25px 25px !important;
  margin: 0;
  box-sizing: border-box;
  background-color: #ffffff;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop .ShoppingCartSubtotalCaption,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop .ShoppingCartPriceTD {
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
  line-height: 22px;
  font-weight: 600;
  color: var(--cacf-text);
  text-align: left;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop .ShoppingCartLabel,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop .ShoppingCartValue {
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
  line-height: 22px;
  font-weight: 400;
  color: var(--cacf-text);
  text-align: left;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop .ShoppingCartLabel {
  float: none;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop .ShoppingCartPriceTD,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop .ShoppingCartValue {
  width: 130px;
}


/*
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trBottom .buttons,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trBottom .buttonsContainer {
  display: block;
  width: 100%;
  height: auto;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trBottom .buttons .buttonContainer {
  display: inline-block;
  width: auto;
  height: auto;
  padding: 0;
  margin-left: 12px;
  box-sizing: border-box;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trBottom .buttons .buttonContainer > a.btn {
  display: block;
  width: 100%;
  height: 40px;
  padding: 9px 22px !important;
  margin: 0;
  box-sizing: border-box;
  box-shadow: none;
  border-radius: 0 !important;
  background-color: var(--cacf-green-100);
  font-family: "Open Sans", sans-serif;
  font-size: 15px;
  line-height: 20px;
  font-weight: 600;
  color: var(--cacf-green-700);
  text-transform: uppercase;
  text-align: left;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trBottom .buttons .buttonContainer > a.btn:hover {
  background-color: var(--cacf-green-500);
  color: #ffffff !important;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trBottom .buttons .buttonContainer > a.btn:after {
  font-family: "FontAwesome";
  font-size: 17px;
  font-weight: 900;
  color: currentColor;
  margin-left: 12px;
  content: "\f105";
}
*/
/* Bouton "continuer les achats" (secondaire) */
form.ustore_CheckOut
  .CheckOutPage
  #CurrentCartSummary
  #trBottom
  .buttons
  .buttonContainer
  > a#ctl00_cphMainContent_BtnShopping {
  border: solid 1px var(--cacf-green-700) !important;
  background-color: transparent !important;
  color: var(--cacf-green-700) !important;
}

form.ustore_CheckOut
  .CheckOutPage
  #CurrentCartSummary
  #trBottom
  .buttons
  .buttonContainer
  > a#ctl00_cphMainContent_BtnShopping:hover {
  color: #ffffff !important;
  border: solid 1px var(--cacf-green-700) !important;
  background-color: var(--cacf-green-700) !important;
}

/* Harmonisation borders */
form.ustore_CheckOut .container .CheckOutPage #trShoppingCart #cartOrderTableWrapper > div,
form.ustore_CheckOut .container .CheckOutPage #CurrentCartSummary .CheckOutPage,
form.ustore_CheckOut .container .CheckOutPage #cartOrderTableWrapper > div > table > tbody > tr > td {
  border: 0 !important;
}

form.ustore_CheckOut .container .CheckOutPage #cartOrderTableWrapper > div > table > tbody > tr > td {
  vertical-align: middle;
}


/**
 * UStore - Restyle panier CACF (inspiration Junot)
 * - Objectif: moderniser la presentation du panier (tableau, lignes produit,
 *   recapitulatif et CTA) sans modifier le HTML.
 * - Contrainte: conserver les cases a cocher et la dominante couleur verte CACF.
 * - Portee: page panier classique (form.ustore_CheckOut).
 */

/* =========================
   Variables couleurs CACF
   ========================= */
:root {
  --cacf-green: #2c8b57;
  --cacf-green-dark: #1f6b42;
  --cacf-green-soft: #eaf5ef;
  --cacf-text: #1f2937;
  --cacf-muted: #6b7280;
  --cacf-border: #dfe7e2;
  --cacf-surface: #ffffff;
  --cacf-surface-alt: #f7faf8;
  --cacf-shadow: 0 8px 24px rgba(17, 24, 39, 0.08);
}

/* =========================
   Layout global du panier
   ========================= */
form.ustore_CheckOut .CheckOutPage {
  max-width: 1280px;
  margin: 0 auto;
}

form.ustore_CheckOut .CheckOutPage #trShoppingCart {
  display: grid;
  /*grid-template-columns: minmax(0, 1fr) 340px;*/
  gap: 24px;
  align-items: start;
}

/* Colonne produits */
form.ustore_CheckOut .CheckOutPage #trShoppingCart #cartOrderTableWrapper #ctl00_cphMainContent_ucCurrentCart_dgOrderTable_ctl00 {
  background: var(--cacf-surface);
  border: 1px solid var(--cacf-border);
  border-radius: 14px;
  box-shadow: var(--cacf-shadow);
  padding: 14px;
}

/* Tableau principal */
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper > div > table,
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

/* Entete colonnes */
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper thead tr th {
  background: var(--cacf-surface-alt);
  color: var(--cacf-muted);
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-weight: 700;
  border-bottom: 1px solid var(--cacf-border);
  padding: 12px 10px;
}


form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper tbody tr td {
  border-bottom: 1px solid var(--cacf-border);
  padding: 16px 10px;
  vertical-align: top;
  color: var(--cacf-text);
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper tbody tr:last-child td {
  border-bottom: 0;
}

/* Colonne checkbox: on garde bien visible */
form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  td.ShoppingCartGrid_Column_ProductCheckbox,
form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  th.ShoppingCartGrid_Column_ProductCheckbox {
  width: 42px;
  text-align: center;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper input[type="checkbox"] {
  accent-color: var(--cacf-green);
  width: 16px;
  height: 16px;
  cursor: pointer;
}

/* Vignette produit */
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_Thumbnail {
  width: 110px;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_Thumbnail img {
  width: 86px;
  height: 86px;
  object-fit: cover;
  border-radius: 10px;
  border: 1px solid var(--cacf-border);
  background: #fff;
}

/* Bloc nom produit / meta infos */
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_ProductName {
  min-width: 280px;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  td.ShoppingCartGrid_Column_ProductName
  .ShoppingCartGrid_Column_ProductName_Name {
  color: var(--cacf-text);
  font-size: 16px;
  line-height: 1.35;
  font-weight: 700;
}

form.ustore_CheckOut
  .CheckOutPage
  #cartOrderTableWrapper
  td.ShoppingCartGrid_Column_ProductName
  .XmpTooltipPopup {
  display: inline-block;
  margin-top: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--cacf-green-soft);
  color: var(--cacf-green-dark);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 600;
}

/* Quantite / prix */
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_Units,
form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_Price {
  white-space: nowrap;
}

form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_Price {
  color: var(--cacf-green-dark);
  font-weight: 700;
  font-size: 16px;
}

/* =========================
   Colonne recapitulatif
   ========================= */
/* form.ustore_CheckOut .CheckOutPage #CurrentCartSummary {
  background: var(--cacf-surface);
  border: 1px solid var(--cacf-border);
  border-radius: 14px;
  box-shadow: var(--cacf-shadow);
  padding: 16px;
  position: sticky;
  top: 24px;
  display: none;
}*/

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary #trTop {
  background: transparent;
  border: 0;
  padding: 0;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .ShoppingCartLabel,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .ShoppingCartValue {
  color: var(--cacf-text);
  font-size: 14px;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .ShoppingCartValue {
  font-weight: 700;
}

form.ustore_CheckOut
  .CheckOutPage
  #CurrentCartSummary
  .ShoppingCartSubtotalCaption
  .ShoppingCartPriceTD {
  color: var(--cacf-green-dark);
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
}

/* Boutons principaux panier */
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons .btn,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons .button,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons input[type="submit"],
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons a {
  border-radius: 10px;
  border: 1px solid var(--cacf-green);
  background: var(--cacf-green);
  color: #fff;
  font-weight: 700;
  transition: all 0.2s ease;
}

form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons .btn:hover,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons .button:hover,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons input[type="submit"]:hover,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons a:hover {
  background: var(--cacf-green-dark);
  border-color: var(--cacf-green-dark);
}

/* Boutons secondaires */
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons .secondary,
form.ustore_CheckOut .CheckOutPage #CurrentCartSummary .buttons .btn-secondary {
  background: #fff;
  color: var(--cacf-green);
}

/* =========================
   Responsive
   ========================= */
@media (max-width: 1100px) {
  form.ustore_CheckOut .CheckOutPage #trShoppingCart {
    grid-template-columns: 1fr;
  }

  form.ustore_CheckOut .CheckOutPage #CurrentCartSummary {
    position: static;
  }
}

@media (max-width: 720px) {
  form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper {
    padding: 10px;
  }

  form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper thead {
    display: none;
  }

  form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper tbody tr {
    display: grid;
    grid-template-columns: 32px 84px 1fr;
    gap: 8px 10px;
    padding: 10px 0;
    border-bottom: 1px solid var(--cacf-border);
  }

  form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper tbody tr td {
    border-bottom: 0;
    padding: 0;
  }

  form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_ProductName,
  form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_Units,
  form.ustore_CheckOut .CheckOutPage #cartOrderTableWrapper td.ShoppingCartGrid_Column_Price {
    grid-column: 3 / 4;
  }
}

.shoppingCart_selectAll_wrapper{
  display: none !important;
}


/**
DIAL COLOR
============================================ */
.dial-color {
  font-family: Arial, Helvetica, sans-serif;
  max-width: 420px;
}

.dial-color__label {
  margin-bottom: 6px;
  font-size: 13px;
  color: #2a2a2a;
}

.dial-color__button {
  width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #cfcfcf;
  border-radius: 8px;
  background: #fff;
  color: #1f1f1f;
  cursor: pointer;
  user-select: none;
}

.dial-color__button:focus {
  outline: 2px solid #2f6feb;
  outline-offset: 2px;
}

.dial-color__swatch {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.25);
  background: transparent;
  flex: 0 0 auto;
}

.dial-color__text {
  flex: 1 1 auto;
  text-align: left;
  font-size: 14px;
  line-height: 1.2;
}

.dial-color__chev {
  flex: 0 0 auto;
  opacity: 0.8;
}

.dial-color__panel {
  margin-top: 8px;
  border: 1px solid #cfcfcf;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
  overflow: hidden;
}

.dial-color__list {
  list-style: none;
  padding: 6px;
  margin: 0;
  max-height: 280px;
  overflow: auto;
}

.dial-color__option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 10px;
  border-radius: 8px;
  cursor: pointer;
}

.dial-color__option[aria-selected="true"] {
  background: #7cc400; /* proche de ton screenshot */
  color: #fff;
}

.dial-color__option:hover {
  background: #f2f4f7;
}

.dial-color__option[aria-selected="true"]:hover {
  background: #73b700;
}

.dial-color__option-swatch {
  width: 22px;
  height: 22px;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.25);
  flex: 0 0 auto;
}

.dial-color__option-text {
  font-size: 14px;
  line-height: 1.2;
}

.ustore_CheckoutFinal .selectAddressWrapper span:nth-child(3){
  margin-top: 15px;

}

form.ustore_Login {
  background: #fffcfc url(https://simanwebtoprint.com/images/banniere5.jpg) no-repeat !important;
  background-size: 60% auto !important;
  background-position: right bottom !important;
  min-height: 100vh;
}

form.ustore_Login .mainareaFullWidth, form.ustore_Login #bodyarea{
background: transparent !important;
}

/* TEMP LAUNCH START - styles du message de lancement login */
form.ustore_Login .ustore-login-launch-notice {
max-width: 520px;
margin: 0 auto 16px;
padding: 12px 14px;
background: #fff7e8;
border: 1px solid #ffd08a;
border-left: 4px solid #f7a600;
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

form.ustore_Login .ustore-login-launch-notice p {
margin: 0;
color: #5a3d00;
font-size: 13px;
line-height: 1.45;
}

form.ustore_Login .ustore-login-launch-notice__title {
margin: 0 0 6px;
color: #5a3d00;
font-size: 16px;
line-height: 1.25;
font-weight: 700;
}
/* TEMP LAUNCH END */

form.ustore_Login .ustore-login-signup-cta {
max-width: 440px;
margin: 16px auto 0;
padding: 14px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
background: #ffffff;
border: 1px solid #dfe4ea;
border-radius: 8px;
}

form.ustore_Login .ustore-login-signup-cta__label {
color: #1f2937;
font-size: 14px;
font-weight: 600;
}

form.ustore_Login .ustore-login-signup-cta__button {
display: inline-flex;
align-items: center;
justify-content: center;

padding: 8px 5px;
border-radius: 999px;
background: #7cc400;
border: 1px solid #73b700;
color: #fff !important;
text-decoration: none !important;
font-size: 13px;
font-weight: 700;
}

form.ustore_Login .ustore-login-signup-cta__button:hover,
form.ustore_Login .ustore-login-signup-cta__button:focus {
background: #73b700;
border-color: #6aa700;
color: #fff !important;
}

@media (max-width: 640px) {
form.ustore_Login .ustore-login-launch-notice,
form.ustore_Login .ustore-login-signup-cta {
  max-width: 100%;
}

form.ustore_Login .ustore-login-signup-cta {
  flex-direction: column;
  align-items: stretch;
}

form.ustore_Login .ustore-login-signup-cta__button {
  width: 100%;
}
}

#ctl00_cphMainContent_trPaymentMethods td{
  padding-bottom: 20px !important;
}