/* Tunnel d'achat et pages simples Signature. Tunnel (panier, paiement, confirmation, redirection PayPal) : maquettes épurées
   de ChatGPT du 2026-10-12 (tunnel-consultation-layout.php, panier-consultation-epure.css, tunnel-consultation-signature.css) :
   sans menu ni pied de page de navigation. Pages simples (newsletter, affiliation, maintenance) : maquettes du 2026-10-11
   (parcours-consultation-signature.css). Variables : socle (signature.css). Repris sans les éléments de démonstration
   (sélecteurs d'états, aperçus Stripe et PayPal, boutons de quantité, volet panier). */

/* Éléments communs */
.pc-kicker{font-size:12px;color:var(--cv-purple);margin:0 0 16px}
.pc-lead{font-size:16px;line-height:1.9}
.pc-muted{font-size:12px;color:var(--cv-muted);line-height:1.85}
.pc-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.kin-signature :is(.pc-button,.pc-link,.checkout-submit,.remove,.pc-method-title input,.checkout-top a):focus-visible{outline:2px solid var(--cv-purple);outline-offset:3px}
.pc-button{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;padding:14px 20px;border:1px solid var(--cv-purple);border-radius:0;background:var(--cv-purple);color:#fff;font:500 13px/1.6 'Work Sans',sans-serif;cursor:pointer;text-decoration:none;transition:background .2s}
.pc-button:hover{background:#51365b;color:#fff;text-decoration:none}
.pc-button>span{flex-shrink:0}
.pc-secondary{background:transparent;color:var(--cv-purple)}
.pc-secondary:hover{background:var(--cv-lilac);color:var(--cv-purple)}
.pc-button:disabled{opacity:.5;cursor:default}
.pc-link{display:inline-block;border:0;background:none;font:400 12px/1.7 'Work Sans',sans-serif;color:var(--cv-purple);text-decoration:underline;text-underline-offset:4px;padding:0;cursor:pointer}
.pc-link:hover{color:#51365b}
.pc-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.pc-error{background:var(--cv-rose);border-left:2px solid #a7665d;color:#7b3e37;font-size:12px;line-height:1.8;padding:13px 16px;margin:18px 0}
.pc-error:empty{display:none}
.pc-emblem{width:62px;height:62px;background:var(--cv-sage);border-radius:50%;display:inline-grid;place-items:center;color:#526548;font:400 30px Lora,serif;margin:0 0 12px}
.pc-emblem svg{width:28px;height:28px}
.pc-spinner{display:inline-block;width:22px;height:22px;border:2px solid #ddd0e2;border-top-color:var(--cv-purple);border-radius:50%;animation:pc-spin 1.3s linear infinite;flex-shrink:0}
.pc-spinner-large{width:35px;height:35px}
@keyframes pc-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pc-spinner{animation-duration:4s}}

/* Résultat (confirmation, redirection, liens de la newsletter, maintenance) */
.pc-result{max-width:740px;margin:55px auto;text-align:center;padding:35px 45px}
.pc-result h1{margin:16px 0 22px;font:400 clamp(30px,3.4vw,44px)/1.22 Lora,serif;letter-spacing:-.8px}
.pc-result p{font-size:14px;line-height:1.85;max-width:600px;margin:18px auto}
.pc-result .pc-actions{justify-content:center}
.pc-result>.pc-button,.pc-result form .pc-button{width:fit-content;max-width:100%;margin:25px auto}
.pc-result-pending .pc-emblem{background:#f6ecd9;color:#79623b}
.pc-result-failed .pc-emblem{background:var(--cv-rose);color:#8c554c}

/* ---------- Tunnel d'achat épuré ---------- */
.checkout-tunnel{--tk-line:#e4dfda;--tk-muted:#796e7d;--tk-lilac:#f2eef3;min-height:100vh;display:flex;flex-direction:column}
.checkout-header{background:#fff;border-bottom:1px solid var(--tk-line)}
.checkout-header>div{max-width:1120px;padding:24px 30px;margin:auto;display:flex;justify-content:space-between;align-items:center}
.checkout-header a{display:inline-flex}
.checkout-header img{display:block;width:138px;height:auto}
.checkout-lock{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--tk-muted)}
.checkout-lock svg,.payment-security svg,.checkout-reassurance svg{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.checkout-tunnel #main-content{width:100%;max-width:1120px;margin:0 auto;padding:46px 30px 64px;flex:1}
.checkout-top{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:13px}
.checkout-top h1{font:400 34px/1.2 Lora,serif;letter-spacing:-.7px;margin:0}
.checkout-top ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:62%;gap:28px;margin:0;padding:0;color:var(--tk-muted);font-size:12px}
.checkout-top li{display:flex;gap:8px;align-items:center;position:relative;min-width:0;white-space:nowrap;padding-bottom:15px;border-bottom:1px solid var(--tk-line)}
.checkout-top li>span,.checkout-top li>a>span{display:grid;place-items:center;width:23px;height:23px;flex-shrink:0;border:1px solid var(--tk-line);border-radius:50%;font-size:11px}
.checkout-top li>a{display:flex;align-items:center;gap:8px;width:100%;text-decoration:none;color:inherit}
.checkout-top li>a:hover{color:var(--cv-purple)}
.checkout-top li[aria-current]{color:var(--cv-purple);font-weight:500}
.checkout-top li[aria-current]::after{content:"";position:absolute;height:2px;background:var(--cv-purple);bottom:-1px;left:0;right:0}
.checkout-top li[aria-current]>span{background:var(--cv-purple);color:#fff;border-color:var(--cv-purple)}
.checkout-note{font-size:12px;color:var(--tk-muted);margin:0 0 27px}
.checkout-notice{background:var(--tk-lilac);border:1px solid var(--tk-line);padding:14px 18px;font-size:13px;line-height:1.7;margin:24px 0 0}
.checkout-notice p{margin:0}
.checkout-notice+.checkout-notice{margin-top:12px}
.checkout-notice+.checkout-note{margin-top:20px}
.checkout-footer{max-width:1060px;width:calc(100% - 60px);margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;padding:22px 0;border-top:1px solid var(--tk-line);color:var(--tk-muted);font-size:11px}
.checkout-footer-links{display:flex;flex-wrap:wrap;gap:6px 18px}
.checkout-footer a,.checkout-footer .ck-footer-link{color:var(--tk-muted);font:inherit;text-decoration:underline;text-underline-offset:3px;background:none;border:0;padding:0;cursor:pointer}
.checkout-footer a:hover,.checkout-footer .ck-footer-link:hover{color:var(--cv-ink)}
/* Conditions générales en fenêtre (javascript/cart/terms.js) : le client reste dans le tunnel */
.checkout-terms{width:min(680px,calc(100vw - 30px));max-height:min(82vh,760px);padding:0;border:0;background:var(--cv-paper);color:var(--cv-ink);box-shadow:0 20px 50px #382b3e33}
.checkout-terms[open]{display:flex;flex-direction:column}
.checkout-terms::backdrop{background:rgba(48,38,54,.45)}
.checkout-terms-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 26px 16px;border-bottom:1px solid var(--cv-line)}
.checkout-terms-head h2{margin:0;font:400 23px/1.35 'Lora',Georgia,serif;color:#48354f}
.checkout-terms-close{flex:none;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--cv-line);background:transparent;color:#48354f;cursor:pointer}
.checkout-terms-close svg{stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.checkout-terms-close:hover{background:var(--cv-lilac)}
.checkout-terms-close:focus-visible,.checkout-terms-body:focus-visible{outline:2px solid var(--cv-purple);outline-offset:-2px}
.checkout-terms-body{overflow-y:auto;overscroll-behavior:contain;padding:18px 26px 26px;font-size:13px;line-height:1.8}
.checkout-terms-status{display:flex;align-items:center;gap:12px;color:var(--cv-muted);font-size:12px}
.checkout-terms-body .dl-note{font-size:12px;color:#80698a}
.checkout-terms-body :is(h2,h3){margin:22px 0 10px;font:400 19px/1.4 'Lora',Georgia,serif;color:#48354f}
.checkout-terms-body h2.ip-part{padding-top:18px;border-top:1px solid #e1d8e5;font-size:21px}
.checkout-terms-body p{margin:0 0 12px}
.checkout-terms-body :is(ul,ol){margin:0 0 12px;padding-left:20px}
.checkout-terms-body a{color:var(--cv-purple);text-decoration:underline;text-underline-offset:3px}
.checkout-terms-body img{max-width:100%;height:auto}

/* Panier : un bloc par vendeur */
.checkout-baskets{display:grid;gap:24px;margin-top:27px}
.checkout-basket{display:grid;grid-template-columns:minmax(0,1fr) 320px;border:1px solid var(--tk-line);background:#fff;margin:0}
.checkout-items{padding:24px 28px;min-width:0}
.checkout-items h2{font:600 14px/1.5 'Work Sans',sans-serif;margin:0;padding-bottom:19px;border-bottom:1px solid var(--tk-line)}
.checkout-item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:18px;padding:24px 0;align-items:start}
.checkout-item+.checkout-item{border-top:1px solid var(--tk-line)}
.checkout-item:last-child{padding-bottom:0}
.item-icon{width:56px;height:64px;display:grid;place-items:center;background:#eee9f0;color:var(--cv-purple)}
.item-icon-pack{background:#e9eee5}
.item-icon svg{width:26px;height:26px}
.item-description{min-width:0}
.item-description h3{font:500 14px/1.4 'Work Sans',sans-serif;margin:0;overflow-wrap:anywhere}
.item-description p{color:var(--tk-muted);font-size:12px;margin:4px 0 0;line-height:1.5}
.item-price{font-size:14px;font-weight:500;white-space:nowrap}
.item-controls{display:flex;gap:16px;align-items:center;margin-top:13px;font-size:12px;color:var(--tk-muted)}
/* Quantité : boutons − et + (maquette panier-consultation-epure.css, 2026-10-12) */
.quantity{display:inline-flex;align-items:stretch;height:32px;border:1px solid var(--tk-line);background:#fff}
.quantity button{width:30px;padding:0;border:0;background:transparent;color:var(--cv-ink);font:400 16px/1 'Work Sans',sans-serif;cursor:pointer}
.quantity button:hover:not(:disabled){background:var(--cv-lilac)}
.quantity button:disabled{color:#c5bcc8;cursor:default}
.quantity button:focus-visible{outline:2px solid var(--cv-purple);outline-offset:-2px}
.quantity-value{display:grid;place-items:center;min-width:28px;font-size:12px;color:var(--cv-ink)}
.remove{padding:5px 0;color:var(--tk-muted);font-size:11px;text-decoration:underline;text-underline-offset:3px}
.remove:hover{color:var(--cv-ink)}
.checkout-summary{background:var(--tk-lilac);border-left:1px solid var(--tk-line);padding:28px;display:flex;flex-direction:column;justify-content:center}
.summary-total{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin:0 0 21px;color:var(--cv-ink)}
.summary-total>span{font-size:14px}
.summary-total small{font-size:11px;color:var(--tk-muted);margin-left:3px}
.summary-total strong{font-size:24px;letter-spacing:-.5px;font-weight:500;white-space:nowrap}
.checkout-submit{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:49px;padding:13px 17px;border:1px solid var(--cv-purple);background:var(--cv-purple);color:#fff;font:500 13px 'Work Sans',sans-serif;cursor:pointer;transition:background .2s}
.checkout-submit:hover{background:#4e3557}
.checkout-reassurance{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;margin:18px 0 0;padding-top:16px;border-top:1px solid #ded5e2;color:#66556d}
.checkout-reassurance svg{margin-top:1px}
.checkout-empty{padding:60px 0;text-align:center}
.checkout-empty h2{font:400 24px/1.4 Lora,serif;margin:0 0 14px}
.checkout-empty p{font-size:13px;line-height:1.7;color:var(--tk-muted);margin:0}
.checkout-empty .pc-actions{justify-content:center}

/* Paiement : moyen de paiement à gauche, récapitulatif à droite */
.pc-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:32px;margin:32px 0 0;align-items:start}
.pc-payment{background:#fff;border:1px solid var(--tk-line);padding:26px;min-width:0}
.pc-payment h2{font:500 16px/1.5 'Work Sans',sans-serif;margin:0 0 22px}
.pc-methods{border:0;padding:0;margin:0;min-width:0}
.pc-method{border-top:1px solid var(--tk-line);padding:20px 0}
.pc-method:last-child{border-bottom:1px solid var(--tk-line)}
.pc-method-title{display:flex;align-items:center;gap:14px;cursor:pointer;font-size:14px;margin:0}
.pc-method-title input{accent-color:var(--cv-purple);width:17px;height:17px;flex-shrink:0;margin:0}
.pc-method-title>span:nth-of-type(1){flex:1}
.pc-method-title small{display:block;margin-top:6px;color:var(--tk-muted);font-size:11px}
.pc-method-mark{display:flex;gap:6px;align-items:center}
.pc-method-mark img{width:34px;height:auto}
.pc-method-mark svg{width:90px;height:auto}
.pc-method-panel{padding:6px 0 0}
.pc-card-frame{margin:16px 0 4px;min-height:60px}
.pc-loading{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--tk-muted);margin:16px 0}
.pc-paypal-slot{margin:16px 0 0}
.pc-paypal-slot paypal-button,.pc-paypal-slot paypal-pay-later-button{display:block;margin-bottom:12px}
.pc-pay{width:100%;margin-top:25px}
.pc-status{font-size:12px;color:var(--cv-purple);margin:14px 0 0;line-height:1.8}
.pc-status:empty{display:none}
.payment-security{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.6;color:var(--tk-muted);margin:16px 0 0}
.payment-security svg{margin-top:2px}
.payment-availability{font-size:12px;line-height:1.6;color:var(--tk-muted);margin:10px 0 0}
.pc-payment-summary{position:sticky;top:25px;background:var(--tk-lilac);border:1px solid var(--tk-line);padding:26px}
.pc-payment-summary h2{font:500 14px/1.5 'Work Sans',sans-serif;margin:0 0 14px;overflow-wrap:anywhere}
.pc-order-detail summary{cursor:pointer;font-size:12px;margin:12px 0;color:var(--cv-ink)}
.pc-summary-line{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--tk-line);padding:16px 0;font-size:12px}
.pc-summary-line>span{min-width:0;overflow-wrap:anywhere}
.pc-summary-line strong{font-weight:400;white-space:nowrap}
.pc-summary-line small{display:block;font-size:11px;color:var(--tk-muted);margin-top:6px}
.pc-total{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-top:1px solid var(--tk-line);padding:21px 0 0;font-size:12px;margin:0;color:var(--cv-ink)}
.pc-total strong{font:500 24px/1.2 'Work Sans',sans-serif;white-space:nowrap}

/* Confirmation et redirection : carte centrée */
.checkout-tunnel .pc-result{max-width:620px;margin:36px auto 0;padding:34px;background:#fff;border:1px solid var(--tk-line)}
.checkout-tunnel .pc-result h2{font:400 28px/1.3 Lora,serif;margin:14px 0}
.checkout-tunnel .pc-result p{font-size:13px;line-height:1.7;margin:14px auto}
.checkout-tunnel .pc-result .pc-kicker{font:500 12px 'Work Sans',sans-serif;color:var(--tk-muted);margin:0}
.checkout-tunnel .pc-result .pc-actions{margin:24px 0 0}
.checkout-tunnel .pc-result>.pc-link{margin-top:20px}
.pc-next{background:var(--tk-lilac);margin:25px 0 0;padding:20px}
.pc-next h3{font:500 14px/1.5 'Work Sans',sans-serif;margin:0 0 12px}
.pc-next .pc-button{justify-content:center;gap:12px}
.pc-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;margin:20px 0 0!important}

@media(max-width:850px){
	.checkout-basket{grid-template-columns:minmax(0,1fr) 260px}
	.checkout-items{padding:22px}
	.checkout-summary{padding:22px}
	.checkout-item{grid-template-columns:44px minmax(0,1fr) auto;gap:12px}
	.item-icon{width:44px;height:54px}
	.checkout-top ol{gap:14px}
}
@media(max-width:800px){
	.pc-checkout-grid{grid-template-columns:1fr;gap:20px}
	.pc-payment-summary{position:static;grid-row:1}
	.pc-payment-summary .pc-total{padding-top:16px}
}
@media(max-width:680px){
	.checkout-top{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:20px}
	.checkout-top ol{width:100%;gap:8px}
	.checkout-basket{grid-template-columns:1fr}
	.checkout-summary{border-left:0;border-top:1px solid var(--tk-line);padding:20px 22px}
	.summary-total{margin-bottom:14px}
	.summary-total strong{font-size:22px}
	.checkout-baskets{gap:20px}
	.checkout-header>div{padding-top:19px;padding-bottom:19px}
	.checkout-top h1{font-size:30px}
	.checkout-note{margin-bottom:20px}
}
@media(max-width:580px){
	.checkout-tunnel #main-content{padding:26px 15px 40px}
	.checkout-header>div{padding-right:15px;padding-left:15px}
	.checkout-header img{width:120px}
	.checkout-footer{width:calc(100% - 30px);padding:18px 0}
	.checkout-terms{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}
	.checkout-terms-head{padding:16px 15px 12px}
	.checkout-terms-head h2{font-size:20px}
	.checkout-terms-body{padding:15px 15px 24px}
	.checkout-items{padding:19px 16px 22px}
	.checkout-summary{padding:18px 16px}
	.checkout-item{gap:12px;grid-template-columns:40px minmax(0,1fr) auto;padding-top:20px;padding-bottom:20px}
	.item-icon{width:40px;height:50px}
	.item-icon svg{width:23px;height:23px}
	.item-description h3,.item-price{font-size:13px}
	.item-description p{font-size:11px}
	.item-controls{gap:12px;flex-wrap:wrap}
	.checkout-top ol{font-size:11px}
	.checkout-top li,.checkout-top li>a{gap:6px}
	.checkout-top li>span,.checkout-top li>a>span{width:21px;height:21px}
	.checkout-empty .pc-actions{flex-direction:column}
	.checkout-empty .pc-actions a{justify-content:center}
	.pc-payment,.pc-payment-summary{padding:20px 16px}
	.pc-method-mark img{width:28px}
	.pc-method-mark svg{width:72px}
	.checkout-tunnel .pc-result{padding:28px 18px;margin-top:26px}
	.checkout-tunnel .pc-result h2{font-size:25px}
	.checkout-tunnel .pc-result .pc-actions{flex-direction:column;gap:12px}
	.checkout-tunnel .pc-result .pc-actions a{justify-content:center}
	.pc-next{padding:18px 14px}
}

/* ---------- Pages simples ---------- */
/* Newsletter : texte à gauche, formulaire lilas à droite */
.pc-editorial-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;max-width:1110px;margin:55px 0}
.pc-editorial-grid h1{margin:18px 0 24px;font:400 clamp(30px,3.4vw,44px)/1.22 Lora,serif;letter-spacing:-.8px}
.pc-editorial-grid>section{min-width:0}
.pc-sage-panel{background:var(--cv-sage);padding:34px;margin-top:38px}
.pc-sage-panel .pc-emblem{background:#d9e3d3}
.pc-sage-panel h2{font:400 25px/1.4 Lora,serif;margin:15px 0}
.pc-sage-panel p{font-size:13px;line-height:1.85;margin-bottom:0}
.pc-form-panel{background:var(--cv-lilac);padding:36px;min-width:0}
.pc-form-panel h2{margin:0 0 10px;font:400 26px/1.4 Lora,serif}
.pc-form-panel>p{font-size:12px;margin:0 0 24px}
.pc-field{display:block;font-size:12px;margin-bottom:21px;min-width:0}
.pc-field label{display:block}
.pc-field :is(input,textarea){display:block;width:100%;margin-top:9px;background:var(--cv-paper);border:1px solid #cdbdd4;border-radius:0;font:400 14px/1.6 'Work Sans',sans-serif;color:var(--cv-ink);padding:12px;min-width:0}
.pc-field label.error{color:#7b3e37;font-size:11px;margin-top:6px}
.pc-form-panel .pc-button{width:100%}
.pc-form-panel .pc-actions{display:grid;grid-template-columns:1fr 1fr}

/* Page autonome : maintenance */
.pc-standalone{margin:0;min-height:100vh;min-height:100dvh;background:var(--cv-paper);color:var(--cv-ink);font-family:'Work Sans',sans-serif}
.pc-standalone main{max-width:1000px;margin:0 auto;padding:55px 40px}
.pc-brand{display:block;width:150px;height:auto;margin:0 auto}
.pc-standalone .pc-result{margin-top:40px}
.pc-maintenance-line{display:block;width:45px;height:1px;background:#b8a2c2;margin:32px auto}
.pc-maintenance small{font-size:12px;color:var(--cv-muted)}

@media(max-width:1000px){
	.pc-editorial-grid{gap:35px}
	.pc-form-panel{padding:28px}
}
@media(max-width:800px){
	.pc-editorial-grid{grid-template-columns:1fr;margin-top:30px;gap:25px}
	.pc-sage-panel{display:none}
}
@media(max-width:580px){
	.pc-standalone main{padding:35px 15px 40px}
	.pc-result{padding:20px 5px;margin:35px auto}
	.pc-result h1{font-size:30px}
	.pc-result .pc-actions{flex-direction:column}
	.pc-result .pc-actions a{justify-content:center}
	.pc-form-panel{padding:25px 20px}
	.pc-field :is(input,textarea){font-size:16px}
	.pc-form-panel .pc-actions{grid-template-columns:1fr}
}
