/* Pages WooCommerce aux couleurs du site : fond #081221, cartes #10233E, bleu #2B8CFF, vert #27D66F, texte secondaire #8CA3C2 */
body.wo-boutique{background:#081221;color:#fff;}
.wo-main{max-width:980px;margin:0 auto;padding:130px 16px 70px;}
.wo-titre{font-size:36px;font-weight:800;margin-bottom:26px;}
.wo-main h2,.wo-main h3{text-align:left;font-size:22px;margin:22px 0 12px;}
.wo-main p,.wo-main li,.wo-main label,.wo-main td,.wo-main th{color:#cdd9ea;}
.wo-main a{color:#2b8cff;}

/* Formulaires */
.woocommerce form .form-row{margin-bottom:14px;}
.woocommerce form .form-row label{display:block;margin-bottom:6px;font-size:15px;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select,.woocommerce form .form-row textarea,
.select2-container--default .select2-selection--single{width:100%;background:#10233e;color:#fff;border:1px solid #23406a;border-radius:10px;padding:12px 14px;font:inherit;min-height:46px;}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:#fff;line-height:22px;padding:0;}
.select2-dropdown{background:#10233e;color:#fff;border-color:#23406a;}
.woocommerce form .form-row input:focus{outline:2px solid #2b8cff;border-color:#2b8cff;}
.woocommerce form .form-row .required{color:#ff6b6b;text-decoration:none;border:0;}
.wo-case label{display:flex !important;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45;}
.wo-case input{margin-top:4px;flex:none;width:18px;height:18px;accent-color:#27d66f;}

/* Paiement : coordonnées à gauche, récapitulatif + paiement à droite ; empilés sur mobile.
   Les clearfix (::before/::after) de WooCommerce deviendraient des cases de grille : supprimés. */
.woocommerce .col2-set::before,.woocommerce .col2-set::after,form.checkout::before,form.checkout::after{display:none !important;content:none !important;}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:auto;float:none;}
.woocommerce-checkout .col2-set .col-2:empty,.woocommerce-checkout .woocommerce-shipping-fields:empty{display:none;}
form.checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:36px;align-items:start;}
form.checkout > *{grid-column:1 / -1;}
form.checkout #wc-stripe-express-checkout-element{grid-row:1;}
form.checkout #wc-stripe-express-checkout-button-separator{grid-row:2;}
form.checkout #customer_details{grid-column:1;grid-row:3 / span 2;}
form.checkout #order_review_heading{grid-column:2;grid-row:3;margin-top:0;}
form.checkout #order_review{grid-column:2;grid-row:4;}
.woocommerce-billing-fields h3{margin-top:0;}
#order_review,.woocommerce-order,.woocommerce-MyAccount-content,.woocommerce-MyAccount-navigation,.wo-install{background:#10233e;border-radius:18px;padding:24px;}
@media(max-width:860px){
	form.checkout{grid-template-columns:minmax(0,1fr);}
	form.checkout > *,form.checkout #customer_details,form.checkout #order_review_heading,form.checkout #order_review{grid-column:1;grid-row:auto;}
	form.checkout #order_review_heading{margin-top:26px;}
	.wo-main{padding-top:110px;}
	.wo-titre{font-size:28px;}
	#order_review{padding:16px;}
}

/* Paiement express (Stripe : Apple Pay / Google Pay / Link) */
#wc-stripe-express-checkout-element,#wc-stripe-express-checkout-button-separator{max-width:100%;}
#wc-stripe-express-checkout-button-separator{color:#8ca3c2;margin:14px 0 22px;}

/* Tableaux */
.woocommerce table.shop_table{width:100%;border-collapse:collapse;}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px 8px;border-bottom:1px solid #23406a;text-align:left;background:transparent;color:#cdd9ea;}
.woocommerce table.shop_table tfoot .order-total th,.woocommerce table.shop_table tfoot .order-total td{color:#fff;font-size:18px;border-bottom:0;}
.woocommerce table.shop_table .product-quantity{color:#8ca3c2;font-weight:400;}
.woocommerce-privacy-policy-text p{font-size:14px;color:#8ca3c2;}
.woocommerce table.shop_table .amount{color:#fff;font-weight:700;}

/* Moyens de paiement (Stripe) */
/* Un seul bloc à plat : ni bulle, ni cadre imbriqué, toute la largeur pour le formulaire Stripe */
.woocommerce-checkout #payment{background:none;border-radius:0;margin-top:6px;}
#payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{display:block;list-style:none;padding:0;margin:0;border:0;} /* le site met tous les ul en flex */
.woocommerce-checkout #payment ul.payment_methods li{padding:0;margin:0;line-height:1.4;}
.woocommerce-checkout #payment ul.payment_methods li.payment_method_stripe > input.input-radio,
.woocommerce-checkout #payment ul.payment_methods li.payment_method_stripe > label{display:none;}
.woocommerce-checkout #payment div.payment_box{background:none;color:#cdd9ea;border-radius:0;padding:0;margin:0;}
.woocommerce-checkout #payment div.payment_box::before{display:none;}
#payment fieldset.wc-upe-form,#payment .payment_box fieldset{border:0;padding:0;margin:0;min-width:0;}
#payment .wc-stripe-upe-element{margin:0;}
#payment .form-row.place-order,.woocommerce-checkout #payment div.form-row{padding:0;margin:18px 0 0;}
.wo-paiement-tete{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:22px 0 14px;padding-top:18px;border-top:1px solid #23406a;}
.wo-paiement-titre{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:700;font-size:17px;}
.wo-paiement-titre svg{color:#27d66f;}
.wo-cartes{display:inline-flex;gap:6px;}
.wo-cartes img{display:block;height:24px;width:auto;border-radius:4px;background:#fff;}
.wo-garantie{margin:12px 0 0;font-size:13px;line-height:1.5;color:#8ca3c2;text-align:center;}
.woocommerce table.shop_table th.product-total{white-space:nowrap;}

/* Boutons */
.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,#place_order{
	background:#27d66f;color:#081221;border:0;border-radius:12px;padding:14px 26px;font:inherit;font-weight:700;cursor:pointer;display:inline-block;text-decoration:none;}
#place_order{width:100%;font-size:18px;}
.woocommerce button.button:hover,#place_order:hover,.woocommerce a.button:hover{filter:brightness(1.08);}

/* Messages */
.woocommerce-error,.woocommerce-info,.woocommerce-message{list-style:none;background:#10233e;border-left:4px solid #2b8cff;border-radius:10px;padding:14px 18px;margin:0 0 20px;color:#fff;}
.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{display:none !important;}
.woocommerce-form-login-toggle .woocommerce-info,.woocommerce-form-coupon-toggle .woocommerce-info{font-size:15px;padding:12px 16px;margin-bottom:12px;}
/* Code promo : ligne discrète, champ + bouton côte à côte une fois ouvert */
.woocommerce-form-coupon-toggle .woocommerce-info{background:none;border:0;border-radius:0;padding:0;margin:0 0 14px;color:#8ca3c2;font-size:14px;}
.woocommerce-form-coupon-toggle .showcoupon{color:#2b8cff;font-weight:600;text-decoration:none;border-bottom:1px dashed #2b8cff;}
.woocommerce-form-coupon-toggle .showcoupon:hover{color:#27d66f;border-bottom-color:#27d66f;}
.woocommerce form.checkout_coupon{background:#10233e;border:1px solid #23406a;border-radius:12px;padding:14px;margin:0 0 20px;max-width:520px;}
.woocommerce form.checkout_coupon .form-row{margin:0;padding:0;}
.woocommerce form.checkout_coupon .form-row-first{float:left;width:calc(100% - 142px);}
.woocommerce form.checkout_coupon .form-row-last{float:right;width:130px;}
.woocommerce form.checkout_coupon button.button{width:100%;padding:0 12px;}
.woocommerce form.checkout_coupon input.input-text,.woocommerce form.checkout_coupon button.button{box-sizing:border-box;height:50px;min-height:0;}
.woocommerce form.checkout_coupon input.input-text{text-transform:uppercase;letter-spacing:.04em;}
.woocommerce form.checkout_coupon input.input-text::placeholder{text-transform:none;letter-spacing:0;}
.woocommerce-error{border-left-color:#ff6b6b;}
.woocommerce-message{border-left-color:#27d66f;}

/* Mon compte */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:220px 1fr;gap:24px;}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;}
.woocommerce-MyAccount-navigation li{margin-bottom:8px;}
.woocommerce-MyAccount-navigation li.is-active a{color:#27d66f;font-weight:700;}
@media(max-width:760px){.woocommerce-account .woocommerce{grid-template-columns:1fr;}}

/* Confirmation + aide à l'installation */
.woocommerce-order-downloads{margin:20px 0;}
.wo-install{margin-top:24px;}
.wo-install ol{margin:10px 0 10px 22px;}
.wo-install li{margin-bottom:8px;}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}

/* Aide sous le champ « compte Google » */
.woocommerce-checkout form .form-row .description,.woocommerce form .form-row .description{display:block !important;position:static !important;color:#8ca3c2 !important;font-size:13px;margin:6px 0 0 !important;line-height:1.45;background:none !important;padding:0 !important;border-radius:0;box-shadow:none;}
.woocommerce-checkout form .form-row .description::before,.woocommerce form .form-row .description::before{display:none !important;}
/* Choix du mode de livraison (téléchargement direct / Google Play) */
.wo-livraison fieldset{border:0;margin:0;padding:0;min-width:0;}
.wo-livraison legend{padding:0;margin-bottom:8px;font-size:15px;color:#cdd9ea;}
.wo-liv-choix{display:grid;gap:10px;}
.woocommerce form .form-row label.wo-liv-option{display:flex;gap:12px;align-items:flex-start;margin:0;padding:14px 16px;background:#10233e;border:1px solid #23406a;border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s;}
.wo-liv-option:hover{border-color:#2b8cff;}
.wo-liv-option:has(input:checked){border-color:#27d66f;background:#0f2a3a;box-shadow:0 0 0 1px #27d66f inset;}
.wo-liv-option input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:#27d66f;}
.wo-liv-option input:focus-visible{outline:2px solid #2b8cff;outline-offset:2px;}
.wo-liv-corps{display:flex;flex-direction:column;gap:4px;min-width:0;}
.wo-liv-tete{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;}
.wo-liv-tete strong{color:#fff;font-size:16px;}
.wo-liv-badge{font-size:12px;font-weight:600;color:#27d66f;background:rgba(39,214,111,.12);border-radius:999px;padding:2px 9px;}
.wo-liv-texte{color:#8ca3c2;font-size:14px;line-height:1.45;}
