/* Ajustements fins du panier : grille alignee et apercu du montage. */
.woocommerce-cart .woocommerce-cart-form__contents{table-layout:fixed!important}
.woocommerce-cart .product-remove{width:38px!important}
.woocommerce-cart .product-thumbnail{width:96px!important}
.woocommerce-cart .product-price{width:70px!important;white-space:nowrap}
.woocommerce-cart .product-quantity{width:74px!important;white-space:nowrap}
.woocommerce-cart .product-subtotal{width:78px!important;white-space:nowrap}
/* Apercu expire cote moteur : cadre neutre, jamais une image cassee. */
.woocommerce-cart .dtf-cart-sheet-thumbnail--absent{background:repeating-linear-gradient(45deg,#f4f8f2,#f4f8f2 6px,#eaf2e7 6px,#eaf2e7 12px)!important;border-style:dashed!important;border-color:#cddccb!important;font-size:0!important;color:transparent!important}
.woocommerce-cart .product-thumbnail img,.woocommerce-cart .product-thumbnail .dtf-cart-sheet-thumbnail{display:block!important;width:82px!important;height:82px!important;box-sizing:border-box!important;object-fit:contain!important;padding:5px!important;border:1px solid #dce8d8!important;border-radius:7px!important;background:linear-gradient(135deg,#f7fbf6,#eef7ec)!important}
.woocommerce-cart dl.variation{grid-template-columns:max-content minmax(0,max-content) max-content minmax(0,1fr)!important;gap:5px 16px!important;padding:8px 12px!important;font-size:13px!important}
.woocommerce-cart dl.variation dt,.woocommerce-cart dl.variation dd{grid-column:auto!important;align-self:start!important}
.woocommerce-cart dl.variation dt{white-space:nowrap!important}
.woocommerce-cart dl.variation dt,.woocommerce-cart dl.variation dd{font-weight:400!important}
/* Nom de la ligne : « Outil : DTF Flow », pose par cart_item_name(). Ce
   n'est plus un lien, les regles ecrites pour .product-name a ne
   l’atteignent donc pas. */
.woocommerce-cart .product-name .dtf-cart-tool{display:block;margin-bottom:0;color:#1d2d1d;font-size:17px;font-weight:800}
.woocommerce-cart .product-name .dtf-cart-tool + dl.variation{margin-top:0!important}

.woocommerce-cart dl.variation dd p{margin:0!important;padding:0!important}
.woocommerce-cart dl.variation dd{line-height:1.35!important}
@media(max-width:760px){.woocommerce-cart .product-thumbnail{display:none!important}.woocommerce-cart dl.variation{grid-template-columns:104px minmax(0,1fr)!important}}

.woocommerce-cart .dtf-cart-delivery{display:flex;flex-wrap:wrap;align-items:center;gap:7px 10px;margin-top:9px;padding:8px 10px;border:1px solid #dce8d8;border-radius:7px;background:#f6fbf5;color:#567052;font-size:11px;line-height:1.35}.woocommerce-cart .dtf-cart-delivery>b{color:#365b37;font-size:11px}.woocommerce-cart .dtf-delivery-date{font-weight:750;color:#26703a}.woocommerce-cart .dtf-cart-delivery small{color:#8a6750}.woocommerce-cart .dtf-j0-toggle{margin-left:auto;display:flex;align-items:center;gap:5px;color:#276b36;font-weight:800;cursor:pointer}.woocommerce-cart .dtf-j0-toggle input{width:15px;height:15px;accent-color:#4d943b}.woocommerce-cart .dtf-j0-toggle em{font-style:normal;color:#6b8066;font-weight:600}
.woocommerce-cart .dtf-line-carrier{margin-left:auto;display:flex;align-items:center;gap:6px;font-weight:700;color:#456446}.woocommerce-cart .dtf-line-carrier select,.woocommerce-cart .dtf-grouped-carrier select{border:1px solid #cfe0cb;border-radius:5px;background:#fff;padding:4px 22px 4px 7px;color:#29472e;font:inherit}.woocommerce-cart .dtf-cart-transport{margin:22px 0 0;padding:18px 20px;border:1px solid #d9e8d4;border-radius:10px;background:#f8fcf7}.woocommerce-cart .dtf-transport-eyebrow{margin:0 0 4px;color:#3f7433;font-size:11px;font-weight:800;letter-spacing:.12em}.woocommerce-cart .dtf-cart-transport h3{margin:0;font-size:18px;color:#203c28}.woocommerce-cart .dtf-cart-transport>div>p:not(.dtf-transport-eyebrow){margin:5px 0 14px;color:#617161;font-size:13px}.woocommerce-cart .dtf-transport-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.woocommerce-cart .dtf-transport-option{display:grid;grid-template-columns:18px 1fr;column-gap:8px;padding:11px;border:1px solid #d3ded0;border-radius:7px;background:#fff;cursor:pointer}.woocommerce-cart .dtf-transport-option:has(input:checked){border-color:#539a46;background:#f0faed;box-shadow:inset 0 0 0 1px #539a46}.woocommerce-cart .dtf-transport-option input{grid-row:span 2;accent-color:#4d943b}.woocommerce-cart .dtf-transport-option b{font-size:13px;color:#29472e}.woocommerce-cart .dtf-transport-option span{font-size:11px;color:#687568;line-height:1.35}.woocommerce-cart .dtf-grouped-carrier{display:flex;align-items:center;gap:10px;margin-top:13px;font-size:12px;font-weight:750;color:#456446}.woocommerce-cart .dtf-transport-note{display:block;margin-top:10px;color:#8a6750;font-size:11px}@media(max-width:760px){.woocommerce-cart .dtf-transport-options{grid-template-columns:1fr}.woocommerce-cart .dtf-line-carrier{margin-left:0;width:100%;justify-content:space-between}}
.dtf-checkout-modal[hidden]{display:none}.dtf-checkout-modal[hidden]:target{display:flex}.dtf-checkout-modal{position:fixed;z-index:99999;inset:0;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(22,31,24,.58)}.dtf-checkout-box{width:min(570px,100%);max-height:88vh;overflow:auto;box-sizing:border-box;padding:25px;border:1px solid #d9e8d4;border-radius:13px;background:#fff;box-shadow:0 22px 65px rgba(0,0,0,.3)}.dtf-checkout-box h2{margin:0;color:#213a28;font-size:25px}.dtf-checkout-lead{margin:7px 0 18px;color:#627162;line-height:1.45}.dtf-checkout-mode{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #d6e8d1;border-radius:8px;background:#f4fbf2;color:#355a39}.dtf-checkout-mode b{font-size:15px}.dtf-checkout-mode span{font-size:12px;text-align:right}.dtf-checkout-lines{margin:15px 0;padding:0;list-style:none;border-top:1px solid #e3ece0}.dtf-checkout-lines li{display:flex;justify-content:space-between;gap:15px;padding:10px 2px;border-bottom:1px solid #e3ece0}.dtf-checkout-lines b{color:#29472e;font-size:13px}.dtf-checkout-lines span{color:#687568;font-size:12px;text-align:right}.dtf-checkout-note{margin:0;color:#8a6750;font-size:12px}.dtf-checkout-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.dtf-checkout-actions a{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;padding:11px 14px;font:700 13px inherit;text-decoration:none;cursor:pointer}.dtf-checkout-back{background:#edf1ec;color:#526052}.dtf-checkout-go{background:#4d943b;color:#fff}@media(max-width:600px){.dtf-checkout-mode,.dtf-checkout-lines li{display:block}.dtf-checkout-mode span,.dtf-checkout-lines span{display:block;margin-top:4px;text-align:left}.dtf-checkout-actions{flex-direction:column-reverse}.dtf-checkout-actions a{width:100%;box-sizing:border-box}}
.woocommerce-cart .dtf-cart-checkout-note{margin:18px 0 0;padding:13px 16px;border:1px solid #d9e8d4;border-radius:8px;background:#f8fcf7;color:#3c5a3d;font-size:14px}.woocommerce-checkout .dtf-checkout-transport{margin:18px 0;padding:18px 20px;border:1px solid #d9e8d4;border-radius:10px;background:#f8fcf7}.woocommerce-checkout .dtf-checkout-transport h3{margin:0;color:#203c28;font-size:19px}.woocommerce-checkout .dtf-checkout-transport>p:not(.dtf-transport-eyebrow){margin:5px 0 14px;color:#617161;font-size:13px;line-height:1.45}.woocommerce-checkout .dtf-checkout-transport .dtf-transport-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.woocommerce-checkout .dtf-checkout-transport .dtf-transport-option{display:grid;grid-template-columns:18px 1fr;column-gap:8px;padding:12px;border:1px solid #d3ded0;border-radius:7px;background:#fff;cursor:pointer}.woocommerce-checkout .dtf-checkout-transport .dtf-transport-option:has(input:checked){border-color:#539a46;background:#f0faed;box-shadow:inset 0 0 0 1px #539a46}.woocommerce-checkout .dtf-checkout-transport input{grid-row:span 2;accent-color:#4d943b}.woocommerce-checkout .dtf-checkout-transport b{font-size:13px;color:#29472e}.woocommerce-checkout .dtf-checkout-transport span{font-size:11px;color:#687568;line-height:1.35}.woocommerce-checkout .dtf-checkout-transport .dtf-transport-note{display:block;margin-top:10px;color:#8a6750;font-size:11px}@media(max-width:760px){.woocommerce-checkout .dtf-checkout-transport .dtf-transport-options{grid-template-columns:1fr}}
.woocommerce-checkout main.wp-block-group{max-width:1180px;padding-top:34px!important;padding-bottom:52px!important}.woocommerce-checkout form.checkout{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}.dtf-checkout-heading{max-width:760px;margin:0 0 24px}.dtf-checkout-heading h1{margin:0!important;color:#1c321f!important;font-size:clamp(32px,4vw,44px)!important;letter-spacing:-.055em}.dtf-checkout-heading>p:last-child{margin:6px 0 0;color:#60715f;font-size:15px;line-height:1.5}.dtf-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:24px;align-items:start}.dtf-checkout-steps{display:grid;gap:12px}.dtf-checkout-step{border:1px solid #dce8d8;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 7px 20px rgba(24,48,20,.05)}.dtf-checkout-step.is-open{border-color:#97bf8d;box-shadow:0 9px 24px rgba(53,97,42,.09)}.dtf-checkout-step__toggle{display:grid!important;grid-template-columns:34px 1fr 18px;align-items:center;gap:10px;width:100%;padding:16px!important;border:0!important;background:#fff!important;color:#1e3421!important;text-align:left!important;cursor:pointer}.dtf-checkout-step__toggle b{display:block;font-size:16px;line-height:1.2}.dtf-checkout-step__toggle small{display:block;margin-top:3px;color:#71806e;font-size:12px;font-weight:500;line-height:1.35}.dtf-checkout-step__number{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#edf6e9;color:#3c7a31;font-size:13px;font-weight:850}.dtf-checkout-step__chevron{font-size:23px;color:#668262;line-height:1;transition:transform .18s}.dtf-checkout-step.is-open .dtf-checkout-step__chevron{transform:rotate(180deg)}.dtf-checkout-step__content{padding:0 16px 18px}.dtf-checkout-step__content[hidden]{display:none!important}.dtf-checkout-step #customer_details{width:auto!important;float:none!important;margin:0!important}.dtf-checkout-step #customer_details .col-1,.dtf-checkout-step #customer_details .col-2{width:100%!important;float:none!important}.dtf-checkout-step #customer_details h3{margin:4px 0 16px!important;color:#213d27!important;font-size:18px!important}.dtf-checkout-step .form-row{margin-bottom:13px!important}.dtf-checkout-step input.input-text,.dtf-checkout-step select,.dtf-checkout-step textarea{min-height:42px!important;border-color:#cddccc!important;border-radius:7px!important;background:#fff!important}.dtf-checkout-step textarea{min-height:90px!important}.dtf-checkout-step .dtf-checkout-transport{margin:0!important;box-shadow:none}.dtf-checkout-step #payment{margin:0!important;padding:0!important;border:0!important;background:transparent!important}.dtf-checkout-step #payment ul.payment_methods{padding:0!important;border:0!important}.dtf-checkout-step #payment div.payment_box{margin:10px 0!important;border-radius:8px!important;background:#f4f8f2!important}.dtf-checkout-step #payment div.form-row{padding:0!important}.dtf-checkout-step #payment .button{width:100%;border-radius:7px!important;background:#4d943b!important;color:#fff!important;padding:14px 16px!important;font-size:13px!important;font-weight:800!important}.dtf-checkout-summary{position:sticky;top:18px;padding:20px;border:1px solid #cfe4ca;border-top:4px solid #4d943b;border-radius:12px;background:linear-gradient(135deg,#f5fbf3,#fff);box-shadow:0 9px 25px rgba(24,48,20,.07)}.dtf-checkout-summary #order_review_heading{margin:0 0 14px!important;color:#1b321d!important;font-size:21px!important;letter-spacing:-.035em}.dtf-checkout-summary #order_review{float:none!important;width:auto!important}.dtf-checkout-summary table.shop_table{margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.dtf-checkout-summary table.shop_table th,.dtf-checkout-summary table.shop_table td{padding:9px 0!important;border-color:#dbe8d7!important;background:transparent!important;color:#587052!important;font-size:12px!important}.dtf-checkout-summary table.shop_table td{text-align:right;font-weight:750}.dtf-checkout-summary table.shop_table .product-name{padding-right:12px!important;color:#29472e!important;text-align:left!important}.dtf-checkout-summary table.shop_table .order-total th,.dtf-checkout-summary table.shop_table .order-total td{padding-top:14px!important;color:#1c3620!important;font-size:17px!important;font-weight:850!important}.dtf-checkout-summary .woocommerce-privacy-policy-text{margin:14px 0 0!important;color:#6e786d!important;font-size:11px!important;line-height:1.45}.woocommerce-checkout .woocommerce-notices-wrapper{margin-bottom:16px}@media(max-width:900px){.dtf-checkout-layout{grid-template-columns:1fr}.dtf-checkout-summary{position:static;order:-1}.dtf-checkout-summary #order_review_heading{font-size:18px!important}}@media(max-width:600px){.woocommerce-checkout main.wp-block-group{padding:24px 15px 40px!important}.dtf-checkout-heading{margin-bottom:17px}.dtf-checkout-heading h1{font-size:31px!important}.dtf-checkout-step__toggle{padding:14px!important}.dtf-checkout-step__content{padding:0 13px 15px}.dtf-checkout-summary{padding:16px}.woocommerce-checkout .dtf-checkout-transport .dtf-transport-options{grid-template-columns:1fr}}
.dtf-checkout-step__toggle{grid-template-columns:34px minmax(0,1fr) auto!important}.dtf-checkout-step__edit{color:#4b833e;font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.dtf-checkout-step.is-open .dtf-checkout-step__edit{color:#6c786b;text-decoration:none}.dtf-checkout-summary>.place-order{margin:15px 0 0!important;padding-top:15px!important;border-top:1px solid #dbe8d7!important}.dtf-checkout-summary>.place-order .button{display:block!important;width:100%!important;border-radius:7px!important;background:#4d943b!important;color:#fff!important;padding:14px 16px!important;font-size:13px!important;font-weight:850!important;letter-spacing:.04em!important}.dtf-checkout-summary>.place-order .button:hover{background:#34792b!important}.dtf-checkout-summary>.place-order .woocommerce-terms-and-conditions-wrapper{margin-bottom:12px}.dtf-checkout-summary>.place-order .woocommerce-privacy-policy-text{margin:0 0 10px!important}
.dtf-address-book{margin:0 0 16px;padding:15px;border:1px solid #d6e4d2;border-radius:9px;background:#fbfdfb}.dtf-address-book h3{margin:0 0 12px!important;padding-bottom:10px!important;border-bottom:1px solid #dbe8d7;color:#213d27!important;font-size:16px!important}.dtf-address-book__list{display:grid;gap:8px}.dtf-address-card{display:grid;grid-template-columns:20px 1fr;gap:9px;align-items:flex-start;padding:11px;border:1px solid #d4dfd1;border-radius:7px;background:#fff;cursor:pointer}.dtf-address-card:has(input:checked){border-color:#4d943b;background:#f1faee;box-shadow:inset 0 0 0 1px #4d943b}.dtf-address-card input{width:15px;height:15px;margin:3px 0 0;accent-color:#4d943b}.dtf-address-card__body{display:grid;gap:2px;color:#526052;font-size:12px;line-height:1.35}.dtf-address-card__body b{color:#203921;font-size:13px}.dtf-address-card__body small{color:#637160;font-size:11px}.dtf-address-card__body em{margin-top:3px;color:#3e7b34;font-size:11px;font-style:normal;font-weight:750}.dtf-address-card--other{border-style:dashed}.dtf-address-book__empty{margin:0;color:#667563;font-size:12px;line-height:1.45}
.dtf-checkout-step .dtf-checkout-transport{padding:15px!important;border-color:#d6e4d2!important;border-radius:9px!important;background:#fbfdfb!important}.dtf-checkout-step .dtf-checkout-transport h3{margin-bottom:5px!important;font-size:16px!important}.dtf-checkout-step .dtf-checkout-transport .dtf-transport-options{gap:8px!important}.dtf-checkout-step .dtf-checkout-transport .dtf-transport-option{min-height:68px;padding:11px!important;border-radius:7px!important}.dtf-checkout-step #payment .payment_methods li{margin:0 0 8px!important;padding:12px!important;border:1px solid #d4dfd1!important;border-radius:7px!important;background:#fff!important}.dtf-checkout-step #payment .payment_methods li:has(input:checked){border-color:#4d943b!important;background:#f1faee!important;box-shadow:inset 0 0 0 1px #4d943b}.dtf-checkout-step #payment .payment_methods label{color:#203921!important;font-weight:750!important}.dtf-checkout-summary table.shop_table .variation,.dtf-checkout-summary table.shop_table .wc-item-meta,.dtf-checkout-summary table.shop_table .product-name dl,.dtf-checkout-summary table.shop_table .product-name .wc-item-meta{display:none!important}.dtf-checkout-summary table.shop_table .product-name{font-size:13px!important;line-height:1.4!important}.dtf-checkout-summary table.shop_table thead th{color:#586b54!important;font-size:10px!important;letter-spacing:.08em!important;text-transform:uppercase!important}.dtf-checkout-summary table.shop_table .cart-subtotal th,.dtf-checkout-summary table.shop_table .cart-subtotal td,.dtf-checkout-summary table.shop_table .woocommerce-shipping-totals th,.dtf-checkout-summary table.shop_table .woocommerce-shipping-totals td{font-size:12px!important}.dtf-checkout-summary table.shop_table .order-total th,.dtf-checkout-summary table.shop_table .order-total td{border-top:1px solid #cfe0cb!important}
.dtf-address-save{display:flex;align-items:center;gap:10px;margin-top:14px}.dtf-address-save button{border:0;border-radius:7px;background:#4d943b;color:#fff;padding:11px 14px;font:800 12px inherit;cursor:pointer}.dtf-address-save button:disabled{opacity:.65;cursor:wait}.dtf-address-save span{color:#50734c;font-size:12px}
.woocommerce-checkout main.wp-block-group{width:min(1180px,calc(100% - 80px))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
/* Confirmation de commande : meme langage visuel que le panier et le compte.
   WooCommerce 11 rend cette page avec ses propres blocs des que le theme en est
   un — ce qui est le cas de tous les themes recents. Les classes classiques
   (.woocommerce-order-overview, .woocommerce-table--order-details) n'existent
   alors plus dans la page, et les regles ecrites pour elles ne trouvaient plus
   rien a habiller. Chacune ci-dessous est la traduction de son ancienne, vers
   le nom que WooCommerce emploie desormais. */
.woocommerce-order-received main{max-width:980px!important;padding-top:38px!important;padding-bottom:58px!important;font-family:Inter,Poppins,Arial,sans-serif;color:#263326}
/* Bandeau d'accuse de reception */
/* Le bloc de WooCommerce reunit le titre de page et le message d'accuse de
   reception. Le balisage classique les separait : le titre venait du theme,
   au-dessus. On rend donc au titre son role de titre, et on reserve le
   bandeau vert au seul message. */
.woocommerce-order-received .wc-block-order-confirmation-status{margin:0 0 26px!important;padding:0!important;border:0!important;background:none!important}
.woocommerce-order-received .wc-block-order-confirmation-status h1{margin:0 0 14px!important;color:#1d321f!important;font-size:34px!important;letter-spacing:-.035em;line-height:1.15}
.woocommerce-order-received .wc-block-order-confirmation-status>p{margin:0!important;padding:17px 19px!important;border:1px solid #b9ddb2;border-left:5px solid #4d943b;border-radius:10px;background:linear-gradient(120deg,#eff9ec,#fff);color:#285c2a;font-size:15px!important;font-weight:800}
.woocommerce-order-received .wc-block-order-confirmation-status-description{margin:9px 0 0;color:#3f6b41;font-size:13px;font-weight:600}
/* Resume : numero, date, total, courriel, paiement */
.woocommerce-order-received .wc-block-order-confirmation-summary{margin:0 0 30px!important}
.woocommerce-order-received .wc-block-order-confirmation-summary-list{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0!important;padding:0!important;list-style:none!important}
.woocommerce-order-received .wc-block-order-confirmation-summary-list-item{float:none!important;width:auto!important;min-width:0;margin:0!important;padding:13px 14px!important;border:1px solid #dfe9dc!important;border-radius:9px;background:#fff}
.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key{display:block;color:#71806e;font-size:9px!important;font-weight:750;letter-spacing:.06em;line-height:1.35;text-transform:uppercase}
.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value{display:block;margin-top:5px;overflow-wrap:anywhere;color:#263d28;font-size:12px!important;font-weight:850;letter-spacing:0;line-height:1.35;text-transform:none}
/* Titres de section : detail, facturation, livraison */
.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper h2,
.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper h2,
.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper h2{margin:0 0 13px!important;color:#1d321f;font-size:22px!important;letter-spacing:-.035em}
.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper{margin:0 0 26px!important}
/* Detail des articles */
.woocommerce-order-received table.wc-block-order-confirmation-totals__table{overflow:hidden;width:100%;border:1px solid #d9e7d6!important;border-radius:11px!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;box-shadow:0 8px 24px rgba(24,48,20,.055)!important}
.woocommerce-order-received table.wc-block-order-confirmation-totals__table thead th{padding:13px 15px!important;border:0!important;border-bottom:1px solid #d5e4d2!important;background:#eef7ec!important;color:#4e6948!important;font-size:10px!important;letter-spacing:.09em!important;text-transform:uppercase}
.woocommerce-order-received table.wc-block-order-confirmation-totals__table tbody td{padding:16px 15px!important;border-color:#e4ece2!important;background:#fff!important;color:#344635!important;font-size:12px!important;vertical-align:top!important}
.woocommerce-order-received table.wc-block-order-confirmation-totals__table td.wc-block-order-confirmation-totals__product>a{color:#245f2a!important;font-size:13px;font-weight:850;text-decoration:none!important}
.woocommerce-order-received table.wc-block-order-confirmation-totals__table .wc-item-meta{margin:8px 0 0!important;padding:10px 12px!important;border:1px solid #e0eade;border-radius:8px;background:#f9fcf8;color:#5f705c;font-size:11px!important;line-height:1.45;list-style:none}
.woocommerce-order-received table.wc-block-order-confirmation-totals__table tfoot th,
.woocommerce-order-received table.wc-block-order-confirmation-totals__table tfoot td{padding:11px 15px!important;border-color:#dfe8dd!important;background:#fbfdfb!important;color:#526650!important;font-size:11px!important}
.woocommerce-order-received table.wc-block-order-confirmation-totals__table tfoot tr:last-child th,
.woocommerce-order-received table.wc-block-order-confirmation-totals__table tfoot tr:last-child td{border-top:2px solid #b9d7b3!important;background:#eff8ed!important;color:#1e3b22!important;font-size:14px!important;font-weight:850!important}
/* Adresses de facturation et de livraison */
.woocommerce-order-received .wc-block-order-confirmation-address-wrapper{margin:0 0 26px!important}
/* La carte porte sur le conteneur, pas sur <address> : le telephone est un
   paragraphe frere et se retrouvait sinon a l'exterieur du cadre. */
.woocommerce-order-received .wc-block-order-confirmation-billing-address,
.woocommerce-order-received .wc-block-order-confirmation-shipping-address{padding:17px 19px!important;border:1px solid #dce8d9!important;border-left:4px solid #75a86b!important;border-radius:10px!important;background:#fff!important;color:#465745;font-size:12px!important;line-height:1.65!important;box-shadow:0 7px 20px rgba(24,48,20,.04)}
.woocommerce-order-received .wc-block-order-confirmation-billing-address address,
.woocommerce-order-received .wc-block-order-confirmation-shipping-address address{margin:0!important;padding:0!important;border:0!important;background:none!important;font-size:inherit!important;font-style:normal;line-height:inherit!important}
.woocommerce-order-received .woocommerce-customer-details--phone{margin:9px 0 0!important;padding:9px 0 0!important;border-top:1px dashed #dce8d9;font-size:inherit!important}
@media(max-width:780px){.woocommerce-order-received main{padding:25px 15px 42px!important}.woocommerce-order-received .wc-block-order-confirmation-summary-list{grid-template-columns:1fr 1fr}.woocommerce-order-received .wc-block-order-confirmation-summary-list-item:last-child{grid-column:1/-1}.woocommerce-order-received table.wc-block-order-confirmation-totals__table th,.woocommerce-order-received table.wc-block-order-confirmation-totals__table td{padding:10px!important}.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper h2,.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper h2{font-size:19px!important}}


/* Le total etait un frere du formulaire, donc rejete sous les deux encarts
   « transporteur » et « mettre de cote ». display:contents fait remonter les
   enfants du formulaire au niveau de la grille : le tableau prend toute la
   largeur, les deux encarts se rangent a gauche, le total leur fait face. */
.woocommerce-cart .woocommerce{display:grid!important;width:100%!important;max-width:none!important;grid-template-columns:minmax(0,1fr) 372px!important;gap:16px 22px!important;align-items:start!important}
.woocommerce-cart form.woocommerce-cart-form{display:contents!important}
.woocommerce-cart .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1!important;grid-row:1!important}
.woocommerce-cart table.shop_table{grid-column:1/-1!important;grid-row:2!important}
.woocommerce-cart .dtf-cart-checkout-note{grid-column:1!important;grid-row:3!important;margin:0!important}
.woocommerce-cart .dtf-cart-stash{grid-column:1!important;grid-row:4!important;margin:0!important}
.woocommerce-cart .cart-collaterals{grid-column:2!important;grid-row:3/span 2!important;margin:0!important}
.woocommerce-cart .cart-collaterals .cart_totals{width:100%!important;margin:0!important}
@media(max-width:900px){.woocommerce-cart .woocommerce{grid-template-columns:1fr!important}.woocommerce-cart .woocommerce>*{grid-column:1!important;grid-row:auto!important}}
/* --- DTF Easy : le panier montre les visuels deposes, jamais le montage ---
   La liste occupe toute la largeur de la grille dl.variation, sinon chaque
   vignette se retrouve dans une colonne de 120 px. Le :has() force une ligne
   propre ; sur un navigateur qui ne le connait pas, la liste reste lisible mais
   serree — c'est le seul repli possible sans toucher au balisage WooCommerce. */
.woocommerce-cart dl.variation dt:has(+ dd .dtf-cart-visual-list),
.woocommerce-cart dl.variation dd:has(.dtf-cart-visual-list){grid-column:1/-1!important}
.dtf-cart-visual-list{display:flex;flex-direction:column;gap:5px;margin-top:3px}
.dtf-cart-visual-row{display:flex;align-items:center;gap:11px;min-width:0}
.dtf-cart-visual{display:block;flex:0 0 auto;box-sizing:border-box;width:40px;height:40px;padding:3px;object-fit:contain;border:1px solid #dce8d8;border-radius:6px;background:linear-gradient(135deg,#f7fbf6,#eef7ec)}
.dtf-cart-visual--absent{background:repeating-linear-gradient(45deg,#f4f8f2,#f4f8f2 6px,#eaf2e7 6px,#eaf2e7 12px);border-style:dashed;border-color:#cddccb}
.dtf-cart-visual-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#29472e}
.dtf-cart-visual-qty{flex:0 0 auto;font-weight:750;color:#365b37;white-space:nowrap}
.dtf-cart-lot{color:#26703a;font-weight:800;font-size:14px}

/* --- Alignement de « Prix », « Quantite » et « Sous-total » ---
   Les trois cellules sont deja calees en haut avec le meme remplissage de
   14 px, mais la quantite est un champ de saisie : sa bordure de 2 px et son
   remplissage interne descendaient sa valeur de 13,5 px sous le prix. Le
   champ etait donc seul a ne pas etre sur la ligne des deux autres.
   On retire ce decalage du remplissage de la cellule plutot que de descendre
   le prix, sinon les trois valeurs quittaient la ligne du nom du produit.
   Le calcul : champ de 46 px de haut, valeur centree a 23 px du bord ; prix de
   19 px de haut, texte centre a 9,5 px. 14 - (23 - 9,5) = 0,5, arrondi a 1. */
.woocommerce-cart table.shop_table td.product-quantity{padding-top:1px!important}

/* --- Separation verticale entre les colonnes ---
   Un filet plus clair que le contour du tableau : il doit se lire sans
   decouper la ligne en cases. Pose aussi sur l'en-tete pour que la colonne se
   suive de haut en bas. La derniere colonne et la ligne d'actions, qui occupe
   toute la largeur, en sont exclues. */
.woocommerce-cart table.shop_table thead th:not(:last-child):not(.product-remove):not(.product-thumbnail),
.woocommerce-cart table.shop_table tr.woocommerce-cart-form__cart-item td:not(:last-child):not(.product-remove):not(.product-thumbnail){border-right:1px solid #eaf1e8!important}

/* --- Colonne « Référence » ---
   Elle vient d'une surcharge de cart/cart.php : WooCommerce n'offre aucun
   point d'accroche dans le tableau du panier. Largeur bornee pour ne pas
   reprendre la place gagnee sur prix / quantite / sous-total ; au-dela de la
   borne la reference se coupe, elle n'est jamais tres longue en pratique. */
.woocommerce-cart .dtf-product-reference{width:132px!important;vertical-align:top}
.woocommerce-cart td.dtf-product-reference{padding-top:18px!important}
.dtf-cart-reference{display:flex;flex-direction:column;gap:1px;min-width:0}
.dtf-cart-reference small{color:#7c8a7a;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.dtf-cart-reference b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#26703a;font-size:14px;font-weight:800}
.dtf-cart-reference--absente{color:#9aa799;font-size:15px}
@media(max-width:760px){.woocommerce-cart .dtf-product-reference{width:auto!important}.woocommerce-cart td.dtf-product-reference{padding-top:10px!important}.dtf-cart-reference{flex-direction:row;align-items:baseline;gap:7px}}
