/*
Theme Name: ExpliqueMoiCa V2
Template: radiate
Description: Thème sur-mesure ExpliqueMoiCa - direction app (fond sombre, accent ambre), catalogue WooCommerce, header sans photo.
Author: ExpliqueMoiCa
Version: 1.1.8
Text Domain: expliquemoica-v2
*/

:root{
  --emc-bg-0:#0b0f1a;
  --emc-bg-1:#121728;
  --emc-bg-2:#1a2038;
  --emc-border:#262d47;
  --emc-text-0:#f5f6fa;
  --emc-text-1:#aab0c6;
  --emc-text-2:#6d7490;
  --emc-accent:#f5a524;
  --emc-accent-dark:#8a5c0f;
  --emc-accent-ink:#2a1a02;
  --emc-green:#3ecf8e;
  --emc-green-bg:#0f2c22;
  --emc-card-bg:#ffffff;
  --emc-card-text:#1a1a1a;
  --emc-radius-lg:16px;
  --emc-radius-md:10px;
  --emc-radius-pill:999px;
}

html, body{
  background:var(--emc-bg-0) !important;
  color:var(--emc-text-0);
}
body{
  font-family:'Public Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
h1,h2,h3,h4,h5,h6,
.site-title, .entry-title, .page-title, .woocommerce-loop-product__title{
  font-family:'Bricolage Grotesque', sans-serif;
  font-weight:800;
  color:var(--emc-text-0);
}
a{ color:var(--emc-text-0); }
a:hover{ color:var(--emc-accent); }

#content, .site-content, .content-area, main{
  background:var(--emc-bg-0);
}

/* ===== HEADER ===== */
.emc-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 32px;border-bottom:1px solid var(--emc-border);
  max-width:1280px;margin:0 auto;
}
.emc-logo{
  display:flex;align-items:center;gap:10px;
  font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:20px;
  text-decoration:none;color:var(--emc-text-0);
}
.emc-logo:hover{ color:var(--emc-text-0); }
.emc-logo .emc-meeple{
  width:34px;height:34px;border-radius:10px;background:var(--emc-accent);
  display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--emc-accent-ink);
}
.emc-nav{display:flex;gap:26px;font-size:14px;flex-wrap:wrap;}
.emc-nav a{color:var(--emc-text-1);text-decoration:none;}
.emc-nav a:hover, .emc-nav a.emc-active{color:var(--emc-text-0);font-weight:600;}
.emc-header-icons{display:flex;gap:14px;align-items:center;}
.emc-icon-btn{
  width:38px;height:38px;border-radius:50%;background:var(--emc-bg-2);
  display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--emc-text-1);
  border:1px solid var(--emc-border);text-decoration:none;position:relative;
}
.emc-icon-btn:hover{color:var(--emc-text-0);border-color:var(--emc-accent);}
.emc-cart-count{
  position:absolute;top:-4px;right:-4px;background:var(--emc-accent);color:var(--emc-accent-ink);
  font-size:10px;font-weight:800;min-width:16px;height:16px;border-radius:999px;
  display:flex;align-items:center;justify-content:center;padding:0 3px;
}
.emc-mobile-toggle{display:none;}

/* ===== HERO ===== */
.emc-hero{max-width:1280px;margin:0 auto;padding:56px 32px 40px;text-align:center;}
.emc-hero h1{font-size:42px;margin:0 0 12px;line-height:1.15;}
.emc-hero h1 .emc-hl{color:var(--emc-accent);}
.emc-hero p.emc-sub{color:var(--emc-text-1);font-size:16px;margin:0 0 32px;font-family:'Public Sans',sans-serif;font-weight:400;}

.emc-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:32px;}
.emc-chip{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 18px;border-radius:var(--emc-radius-pill);font-size:14px;font-weight:600;
  background:var(--emc-bg-2);color:var(--emc-text-1);border:1px solid var(--emc-border);
  white-space:nowrap;text-decoration:none;
}
.emc-chip:hover{border-color:var(--emc-accent);color:var(--emc-text-0);}
.emc-chip.emc-active{background:var(--emc-accent);color:var(--emc-accent-ink);border-color:var(--emc-accent);}
.emc-chip .emc-count{opacity:.75;font-weight:500;}

.emc-searchbar{
  display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:10px;
  background:var(--emc-bg-1);border:1px solid var(--emc-border);border-radius:var(--emc-radius-lg);padding:8px;
  max-width:900px;margin:0 auto;
}
.emc-searchbar input, .emc-searchbar select{
  background:var(--emc-bg-2);border:none;border-radius:var(--emc-radius-md);padding:12px 16px;
  font-size:14px;color:var(--emc-text-0);width:100%;font-family:'Public Sans',sans-serif;
}
.emc-searchbar input::placeholder{color:var(--emc-text-1);}

/* ===== SECTIONS ===== */
.emc-section{max-width:1280px;margin:0 auto;padding:40px 32px;}
.emc-section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px;}
.emc-section-head h2{font-size:22px;margin:0;}
.emc-section-head a{color:var(--emc-accent);font-size:14px;text-decoration:none;font-weight:600;}

/* ===== PRODUCT GRID / CARDS (homepage + shop) ===== */
.emc-grid, ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:20px !important;
  list-style:none;margin:0;padding:0;
}
@media (max-width:900px){
  .emc-grid, ul.products{grid-template-columns:repeat(2,1fr) !important;}
}
.emc-card, ul.products li.product{
  background:var(--emc-card-bg);border-radius:var(--emc-radius-lg);overflow:hidden;color:var(--emc-card-text);
  display:flex;flex-direction:column;margin:0 !important;border:none;
}
.emc-card .emc-thumb{
	position:relative;display:block;width:100%;height:0;padding-top:62.5%;overflow:hidden;
	background:linear-gradient(135deg,#eef0f5,#dde1ec);
}
.emc-card .emc-thumb img{
	position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;padding:8px;box-sizing:border-box;
}
ul.products li.product a img{
	aspect-ratio:16/10;object-fit:cover;width:100%;display:block;
}
.emc-card .emc-body, ul.products li.product .emc-body{padding:14px 16px 16px;flex:1;display:flex;flex-direction:column;gap:8px;}
.emc-card .emc-title, ul.products li.product h2, ul.products li.product .woocommerce-loop-product__title{
  font-weight:700;font-size:15px;color:var(--emc-card-text) !important;font-family:'Bricolage Grotesque',sans-serif;
}
.emc-card .emc-meta{font-size:12px;color:#767b8c;}
.emc-badges{display:flex;gap:6px;flex-wrap:wrap;}
.emc-badge{font-size:11px;font-weight:700;padding:4px 9px;border-radius:var(--emc-radius-pill);}
.emc-badge.emc-coup{background:#fff1dc;color:#9a5b00;}
.emc-badge.emc-stock{background:var(--emc-green-bg);color:var(--emc-green);}
.emc-badge.emc-location{background:#e8ecff;color:#3446c9;}
.emc-tag-corner{
  position:absolute;bottom:10px;left:10px;background:#1a1a1a;color:#fff;
  font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;letter-spacing:.03em;text-transform:uppercase;
}

/* Refonte carte jeu (specs, mecaniques, actions louer/acheter) */
.emc-card .emc-title-link{text-decoration:none;display:block;}
.emc-card .emc-editeur{font-size:12px;color:#767c8c;margin-top:-4px;}
.emc-card .emc-specs{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--emc-card-text);opacity:.85;}
.emc-card .emc-spec{white-space:nowrap;}
.emc-card .emc-mecaniques{display:flex;flex-wrap:wrap;gap:4px;}
.emc-card .emc-chip-mec{font-size:10px;font-weight:600;padding:3px 8px;border-radius:var(--emc-radius-pill);background:var(--emc-bg-2);color:var(--emc-text-1);}
.emc-card .emc-mecaniques-txt{font-size:11px;color:#767c8c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.emc-card .emc-pills{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;}
.emc-card .emc-condition-pill{font-size:10px;font-weight:700;padding:3px 8px;border-radius:var(--emc-radius-pill);background:#fff1dc;color:#9a5b00;white-space:nowrap;}
.emc-card .emc-rating-badge{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.92);color:#1a1a1a;font-size:11px;font-weight:700;padding:4px 8px;border-radius:var(--emc-radius-pill);}
.emc-card .emc-avis{margin-top:2px;font-size:11px;color:#767c8c;}
.emc-card .emc-avis summary{cursor:pointer;font-weight:600;list-style:none;}
.emc-card .emc-avis summary::-webkit-details-marker{display:none;}
.emc-card .emc-avis p{margin:4px 0 0;font-size:11px;color:#555;}
.emc-card .emc-video-btn{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--emc-bg-2);font-size:13px;text-decoration:none;line-height:1;}
.emc-card .emc-video-btn:hover{background:var(--emc-border);}
.emc-card .emc-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;}
.emc-card .emc-release{font-size:11px;color:#767c8c;}
.emc-card-actions{display:flex;gap:6px;margin-top:6px;align-items:center;flex-wrap:nowrap;}
.emc-btn{flex:1 1 auto;min-width:0;text-align:center;font-size:12px;font-weight:700;padding:7px 8px;border-radius:var(--emc-radius-pill);text-decoration:none;white-space:nowrap;}
.emc-btn-buy{background:var(--emc-accent);color:var(--emc-accent-ink);}
.emc-btn-buy:hover{opacity:.9;}
.emc-btn-rent{background:#e8ecff;color:#3446c9;}
.emc-btn-rent:hover{opacity:.85;}
/* WooCommerce price / buttons on cards */
ul.products li.product .price{color:var(--emc-card-text);font-weight:700;padding:0 16px;}
ul.products li.product .button{
  margin:0 16px 16px;border-radius:var(--emc-radius-pill) !important;
  background:var(--emc-accent) !important;color:var(--emc-accent-ink) !important;
  font-weight:700;border:none;padding:10px 16px;
}

/* ===== WOOCOMMERCE GLOBAL (shop archive / single product wrapper) ===== */
.woocommerce, .woocommerce-page{color:var(--emc-text-0);}
.woocommerce .woocommerce-breadcrumb{color:var(--emc-text-1);}
.woocommerce .woocommerce-breadcrumb a{color:var(--emc-text-1);}
.woocommerce ul.products li.product .price{color:var(--emc-card-text);}

/* Sidebar filters (WooBeWoo) dark shell */
.wbw-product-filter, .woobewoo-product-filter{
  background:var(--emc-bg-1) !important;border:1px solid var(--emc-border) !important;
  border-radius:var(--emc-radius-lg) !important;color:var(--emc-text-1) !important;
}

/* Buttons "jeton" global */
.button, button, input[type="submit"], .woocommerce a.button, .woocommerce button.button{
  border-radius:var(--emc-radius-pill);
  font-weight:700;
}
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.single_add_to_cart_button{
  background:var(--emc-accent) !important;color:var(--emc-accent-ink) !important;border:none !important;
}
.woocommerce a.button.alt:hover, .single_add_to_cart_button:hover{
  background:var(--emc-accent-dark) !important;color:#fff !important;
}

/* ===== FOOTER ===== */
.emc-footer{
  max-width:1280px;margin:40px auto 0;padding:32px;border-top:1px solid var(--emc-border);
  color:var(--emc-text-2);font-size:13px;
}
.emc-footer .emc-footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.emc-footer .emc-social{display:flex;gap:12px;}
.emc-footer .emc-social a{
  width:34px;height:34px;border-radius:50%;background:var(--emc-bg-2);border:1px solid var(--emc-border);
  display:flex;align-items:center;justify-content:center;color:var(--emc-text-1);text-decoration:none;
}
.emc-footer .emc-social a:hover{color:var(--emc-accent);border-color:var(--emc-accent);}

@media (max-width:820px){
  .emc-nav{display:none;}
  .emc-hero h1{font-size:30px;}
  .emc-searchbar{grid-template-columns:1fr;}
  .emc-grid, ul.products{grid-template-columns:repeat(2,1fr) !important;}
}


/* Fix: la largeur des cartes produit ne remplissait pas la cellule du grid (bug post-migration) */
ul.products li.product{
	  width:100% !important;
	  float:none !important;
}

/* Fix : le widget filtre (WooBeWoo, id=8) s'est retrouve par erreur dans la zone de recherche de la fiche produit (bug d'enregistrement de l'ecran Widgets). On le masque uniquement sur les pages produit. */
body.single-product [id^="wpfMainWrapper-8_"]{
	display:none !important;
}


/* Barre de filtres + resultats de la page ludotheque (archive-product.php) */
.emc-hero-compact{padding-bottom:24px;}
.emc-subtabs{display:flex;flex-wrap:wrap;gap:10px;max-width:1280px;margin:0 auto;padding:0 24px 20px;}
.emc-shop-layout{display:flex;flex-direction:column;gap:24px;max-width:1280px;margin:0 auto;padding:0 24px 60px;}
.emc-filters{width:100%;background:var(--emc-bg-1);border:1px solid var(--emc-border);border-radius:var(--emc-radius-md);padding:20px;position:static;}
.emc-filters form{display:flex;flex-direction:row;flex-wrap:wrap;gap:16px;align-items:flex-end;}
.emc-filter-group{display:flex;flex-direction:column;gap:6px;flex:1 1 170px;min-width:150px;}
.emc-filter-group-search{flex:2 1 220px;}
.emc-filter-group-actions{flex:0 0 auto;flex-direction:row;gap:12px;align-items:center;}
.emc-filter-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--emc-text-1);margin-top:0;}
.emc-filter-input,.emc-filter-select{background:var(--emc-bg-0);border:1px solid var(--emc-border);color:var(--emc-text-0);border-radius:var(--emc-radius-md);padding:8px 10px;font-size:14px;width:100%;height:38px;box-sizing:border-box;}
.emc-filter-submit{margin-top:0;width:auto;text-align:center;display:inline-block;white-space:nowrap;}
.emc-filter-reset{display:inline-block;text-align:center;margin-top:0;color:var(--emc-text-1);text-decoration:underline;white-space:nowrap;}
.emc-shop-results{flex:1;min-width:0;width:100%;}
.emc-results-count{color:var(--emc-text-1);font-size:14px;margin-bottom:10px;}
.emc-no-results{color:var(--emc-text-1);padding:60px 0;text-align:center;margin-top:32px;flex-wrap:wrap;}
.emc-pagination{display:flex;gap:8px;justify-content:center;margin-top:32px;}
.emc-pagination a,.emc-pagination span{padding:8px 14px;border:1px solid var(--emc-border);border-radius:var(--emc-radius);color:var(--emc-text-0);}
.emc-pagination .current{background:var(--emc-accent);color:var(--emc-accent-ink);}
@media (max-width:768px){.emc-filters form{flex-direction:column;align-items:stretch;}.emc-filter-group,.emc-filter-group-search{flex:1 1 auto;}}


/* ===== WooCommerce Panier / Checkout / Mon compte -- theme sombre ===== */
body.woocommerce-page article.hentry{
	background:transparent;
	box-shadow:none;
	border:none;
	padding:0;
	color:var(--emc-text-0);
}
body.woocommerce-page .entry-title{
	color:var(--emc-text-0);
	margin-bottom:24px;
}

/* Notices (coupon toggle, messages info/erreur) */
body.woocommerce-page .woocommerce-info,
body.woocommerce-page .woocommerce-message,
body.woocommerce-page .woocommerce-error,
body.woocommerce-page .woocommerce-noreviews{
	background:var(--emc-bg-1);
	border-top-color:var(--emc-accent);
	color:var(--emc-text-0);
	border-radius:var(--emc-radius-md);
	padding:16px 20px 16px 52px;
}
body.woocommerce-page .woocommerce-info::before{ color:var(--emc-accent); }
body.woocommerce-page .woocommerce-error{ border-top-color:#e5484d; }
body.woocommerce-page .woocommerce-error::before{ color:#e5484d; }

/* Panneaux généraux (panier, totaux, sections checkout, compte) */
body.woocommerce-page .woocommerce-cart-form,
body.woocommerce-page .cart_totals,
body.woocommerce-page .cart-collaterals,
body.woocommerce-page .woocommerce-checkout .col2-set .col-1,
body.woocommerce-page .woocommerce-checkout .col2-set .col-2,
body.woocommerce-page #order_review,
body.woocommerce-page #payment,
body.woocommerce-page .woocommerce-MyAccount-navigation,
body.woocommerce-page .woocommerce-MyAccount-content,
body.woocommerce-page .woocommerce-orders-table__cell,
body.woocommerce-page .woocommerce-address-fields{
	background:var(--emc-bg-1);
	border:1px solid var(--emc-border);
	border-radius:var(--emc-radius-lg);
	padding:24px;
	margin-bottom:24px;
}
body.woocommerce-page .col2-set{ display:flex; gap:24px; flex-wrap:wrap; }
body.woocommerce-page .col2-set .col-1, body.woocommerce-page .col2-set .col-2{ flex:1 1 320px; margin-bottom:0; }
body.woocommerce-page h3, body.woocommerce-page #order_review_heading{
	font-family:'Bricolage Grotesque',sans-serif;
	color:var(--emc-text-0);
	margin-top:0;
}

/* Tableaux (panier + récapitulatif commande + historique commandes) */
body.woocommerce-page table.shop_table,
body.woocommerce-page table.woocommerce-orders-table,
body.woocommerce-page table.my_account_orders{
	border:none;
	width:100%;
	background:transparent;
	border-collapse:collapse;
}
body.woocommerce-page table.shop_table th{
	color:var(--emc-text-2);
	font-family:'Bricolage Grotesque',sans-serif;
	font-weight:700;
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:.04em;
	border-bottom:1px solid var(--emc-border);
	padding:14px 10px;
	text-align:left;
}
body.woocommerce-page table.shop_table td{
	border-bottom:1px solid var(--emc-border);
	padding:14px 10px;
	color:var(--emc-text-0);
}
body.woocommerce-page table.shop_table tr:last-child td{ border-bottom:none; }
body.woocommerce-page table.shop_table td.product-thumbnail img{
	border-radius:var(--emc-radius-md);
	max-width:64px;
}
body.woocommerce-page table.shop_table td.product-name a{
	color:var(--emc-text-0);
	font-weight:700;
}
body.woocommerce-page table.shop_table td.product-price,
body.woocommerce-page table.shop_table td.product-subtotal,
body.woocommerce-page table.shop_table .amount{
	color:var(--emc-text-0);
	font-weight:700;
}
body.woocommerce-page table.shop_table td.product-remove a{
	color:var(--emc-text-2) !important;
	background:var(--emc-bg-2);
	border-radius:var(--emc-radius-pill);
}
body.woocommerce-page table.shop_table td.product-remove a:hover{
	color:#fff !important;
	background:#e5484d;
}
body.woocommerce-page .cart_totals .order-total .amount,
body.woocommerce-page .cart_totals .order-total th{
	color:var(--emc-text-0);
	font-size:18px;
	font-weight:800;
	font-family:'Bricolage Grotesque',sans-serif;
}

/* Quantité */
body.woocommerce-page .quantity .qty{
	background:var(--emc-bg-2);
	border:1px solid var(--emc-border);
	border-radius:var(--emc-radius-md);
	color:var(--emc-text-0);
	padding:8px;
	width:64px;
	text-align:center;
}

/* Coupon */
body.woocommerce-page .woocommerce-cart-form .coupon{
	display:flex;gap:10px;align-items:center;flex-wrap:wrap;
	padding:16px 0 4px;
}
body.woocommerce-page #coupon_code{
	background:var(--emc-bg-2) !important;
	border:1px solid var(--emc-border) !important;
	border-radius:var(--emc-radius-pill) !important;
	color:var(--emc-text-0) !important;
	padding:10px 18px !important;
	width:auto !important;
}
body.woocommerce-page .woocommerce-cart-form .coupon .button,
body.woocommerce-page [name="update_cart"]{
	background:var(--emc-bg-2) !important;
	color:var(--emc-text-0) !important;
	border:1px solid var(--emc-border) !important;
}
body.woocommerce-page .woocommerce-cart-form .coupon .button:hover,
body.woocommerce-page [name="update_cart"]:hover{
	background:var(--emc-bg-2) !important;
	border-color:var(--emc-accent) !important;
}

/* Champs de formulaire (checkout, adresses, compte) */
body.woocommerce-page .woocommerce form .form-row label{
	color:var(--emc-text-1);
	font-size:13px;
}
body.woocommerce-page .woocommerce form .form-row .required{ color:var(--emc-accent); }
body.woocommerce-page .woocommerce form .form-row input.input-text,
body.woocommerce-page .woocommerce form .form-row textarea,
body.woocommerce-page .woocommerce-additional-fields textarea,
body.woocommerce-page .select2-container .select2-selection,
body.woocommerce-page .woocommerce form select,
body.woocommerce-page .woocommerce-address-fields input,
body.woocommerce-page .woocommerce-EditAccountForm input{
	background:var(--emc-bg-2) !important;
	border:1px solid var(--emc-border) !important;
	border-radius:var(--emc-radius-md) !important;
	color:var(--emc-text-0) !important;
	padding:10px 14px !important;
}
body.woocommerce-page .select2-container .select2-selection__rendered{ color:var(--emc-text-0) !important; }
body.woocommerce-page .select2-dropdown{ background:var(--emc-bg-2); border-color:var(--emc-border); }
body.woocommerce-page .select2-results__option{ color:var(--emc-text-0); }
body.woocommerce-page ::placeholder{ color:var(--emc-text-2); opacity:1; }

/* Paiement */
body.woocommerce-page ul.wc_payment_methods{ list-style:none; margin:0; padding:0; }
body.woocommerce-page ul.wc_payment_methods li.wc_payment_method{
	border-bottom:1px solid var(--emc-border);
	padding:12px 0;
}
body.woocommerce-page ul.wc_payment_methods li.wc_payment_method label{ color:var(--emc-text-0); font-weight:700; }
body.woocommerce-page .payment_box{
	background:var(--emc-bg-2) !important;
	color:var(--emc-text-1) !important;
	border-radius:var(--emc-radius-md);
}
body.woocommerce-page .payment_box::before{ border-bottom-color:var(--emc-bg-2) !important; }

/* Mon compte : navigation + tableaux */
body.woocommerce-page .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; }
body.woocommerce-page .woocommerce-MyAccount-navigation li{
	border-bottom:1px solid var(--emc-border);
}
body.woocommerce-page .woocommerce-MyAccount-navigation li:last-child{ border-bottom:none; }
body.woocommerce-page .woocommerce-MyAccount-navigation a{
	display:block;padding:10px 4px;color:var(--emc-text-1);font-weight:600;
}
body.woocommerce-page .woocommerce-MyAccount-navigation li.is-active a{ color:var(--emc-accent); }
body.woocommerce-page .woocommerce-MyAccount-navigation a:hover{ color:var(--emc-accent); }
body.woocommerce-page .account-details-form legend, body.woocommerce-page .woocommerce-Address-title h3{
	color:var(--emc-text-0);
}

/* Checkbox / radio accent */
body.woocommerce-page input[type="checkbox"], body.woocommerce-page input[type="radio"]{
	accent-color:var(--emc-accent);
}

/* Bouton "Valider la commande" / "Commander" pleine largeur */
body.woocommerce-page .wc-proceed-to-checkout .checkout-button{
	width:100%;
	text-align:center;
	padding:14px;
	font-size:16px;
}


/* ===== Widgets sidebar (recherche, YouTube/Instagram/Facebook) -- theme sombre ===== */
#secondary .widget,
.sidebar .widget,
aside.widget{
	background:transparent !important;
	padding:0 !important;
	border:none !important;
	box-shadow:none !important;
}
#secondary .widget_search,
.sidebar .widget_search{
	background:var(--emc-bg-1) !important;
	border:1px solid var(--emc-border) !important;
	border-radius:var(--emc-radius-md) !important;
	padding:16px !important;
}
#secondary .widget_search input[type="search"],
#secondary .is-search-input,
.sidebar .is-search-input{
	background:var(--emc-bg-2) !important;
	border:1px solid var(--emc-border) !important;
	border-radius:var(--emc-radius-pill) !important;
	color:var(--emc-text-0) !important;
}
#secondary .widget_search button, #secondary .is-search-icon{
	color:var(--emc-text-0) !important;
	background:transparent !important;
}
#secondary .widget_media_image, .sidebar .widget_media_image{
	border-radius:var(--emc-radius-md);
	overflow:hidden;
}
#secondary .widget_media_image img, .sidebar .widget_media_image img{
	display:block;width:100%;
}
#secondary .widget_block, .sidebar .widget_block{
	color:var(--emc-text-1);
}



/* ===== Pages standards / articles / 404 / recherche -- theme sombre (site-wide) ===== */
article.hentry{
	background:transparent;
	box-shadow:none;
	border:none;
	padding:0;
	color:var(--emc-text-0);
	margin:0 0 40px;
}
.page-header{
	background:transparent;
	border:none;
	border-bottom:1px solid var(--emc-border);
	padding:0 0 16px;
	margin:0 0 24px;
}
.page-content{
	background:transparent;
	border:none;
	box-shadow:none;
	padding:0;
	color:var(--emc-text-1);
}
.page-header .page-title,
.page-header h1{
	color:var(--emc-text-0);
	margin:0;
}
article.hentry .entry-title,
article.hentry .entry-title a{
	color:var(--emc-text-0);
}
article.hentry .entry-content,
article.hentry .entry-summary{
	color:var(--emc-text-1);
}
article.hentry .entry-content p,
article.hentry .entry-content li,
article.hentry .entry-content span,
article.hentry .entry-content blockquote,
article.hentry .entry-summary p{
	color:var(--emc-text-0);
}
article.hentry .entry-content a,
.page-content a{
	color:var(--emc-accent);
}
article.hentry .entry-meta,
article.hentry .entry-footer{
	color:var(--emc-text-2);
}
.search-form .search-field,
.search-field{
	background:var(--emc-bg-2) !important;
	border:1px solid var(--emc-border) !important;
	border-radius:var(--emc-radius-pill) !important;
	color:var(--emc-text-0) !important;
}


/* ===== Fix specificite : parent theme Radiate a des regles plus specifiques (.not-found .page-content, etc) ===== */
.page-content,
.not-found .page-content,
.error404 .page-content,
.search .page-content,
.archive .page-content,
body .page-content{
	background:transparent !important;
	border:none !important;
	box-shadow:none !important;
	color:var(--emc-text-1) !important;
}
.page-header,
.not-found .page-header,
.error404 .page-header,
body .page-header{
	background:transparent !important;
	border:none !important;
	border-bottom:1px solid var(--emc-border) !important;
}
.page-header .page-title,
.page-header h1,
body .page-content p{
	color:var(--emc-text-0) !important;
}


/* ===== Zone commentaires (articles blog) -- theme sombre ===== */
.comments-area,
.comment-respond,
#respond{
	background:transparent !important;
	border:none !important;
	box-shadow:none !important;
	color:var(--emc-text-0) !important;
}
.comments-area .comment-list{
	list-style:none;
	margin:0;
	padding:0;
}
.comments-area .comment-body{
	background:var(--emc-bg-1) !important;
	border:1px solid var(--emc-border) !important;
	border-radius:var(--emc-radius-md) !important;
	padding:16px !important;
	margin-bottom:16px !important;
	color:var(--emc-text-0) !important;
}
.comments-area .comment-author,
.comments-area .fn{
	color:var(--emc-text-0) !important;
}
.comments-area .comment-metadata,
.comments-area .comment-metadata a{
	color:var(--emc-text-2) !important;
}
.comments-area textarea,
.comments-area input[type="text"],
.comments-area input[type="email"],
.comments-area input[type="url"],
#respond textarea,
#respond input[type="text"],
#respond input[type="email"],
#respond input[type="url"]{
	background:var(--emc-bg-2) !important;
	border:1px solid var(--emc-border) !important;
	border-radius:var(--emc-radius-md) !important;
	color:var(--emc-text-0) !important;
	padding:10px 14px !important;
}
.comments-area label,
#respond label{
	color:var(--emc-text-1) !important;
}
#reply-title,
.comments-title{
	color:var(--emc-text-0) !important;
}


/* ===== Panier : suppression colonne laterale (widgets inutiles) ===== */
body.woocommerce-cart #secondary{
	display:none !important;
}
body.woocommerce-cart #primary{
	width:100% !important;
	float:none !important;
}


/* ===== FICHE PRODUIT (single product) - refonte ===== */
.emc-pdp{max-width:1100px;margin:0 auto;padding:32px 24px 8px;}
.emc-pdp-main{display:grid;grid-template-columns:340px 1fr;gap:40px;align-items:start;margin-bottom:8px;}
@media (max-width:760px){.emc-pdp-main{grid-template-columns:1fr;}}
.emc-pdp-gallery{position:relative;max-width:340px;}
.emc-pdp-image-box{
	background:linear-gradient(135deg,#eef0f5,#dde1ec);border-radius:var(--emc-radius-lg);
	aspect-ratio:1/1;overflow:hidden;display:flex;align-items:center;justify-content:center;
}
.emc-pdp-image-box img.emc-pdp-image{width:100%;height:100%;object-fit:contain;padding:20px;box-sizing:border-box;display:block;}
.emc-pdp-rating{position:absolute;top:12px;right:12px;}
.emc-pdp-title{font-size:28px;line-height:1.2;margin:0 0 4px;color:var(--emc-text-0);}
.emc-pdp-publisher{color:var(--emc-text-1);font-size:14px;margin-bottom:12px;}
.emc-pdp-price{font-size:24px;font-weight:700;color:var(--emc-accent);margin-bottom:10px;}
.emc-pdp-price ins{text-decoration:none;}
.emc-pdp-stock{margin-bottom:18px;font-size:14px;}
.emc-stock-ok{color:var(--emc-green);}
.emc-stock-out{color:#e2685f;}
.emc-pdp-actions{display:flex;gap:12px;flex-wrap:wrap;}
.emc-pdp-actions .emc-btn-lg{flex:0 0 auto;padding:12px 26px;font-size:14px;}
.emc-btn-static{cursor:default;}
.emc-pdp-section{max-width:1100px;margin:0 auto;padding:28px 0;border-top:1px solid var(--emc-border);}
.emc-pdp-section h2{font-size:19px;margin:0 0 14px;color:var(--emc-text-0);}
.emc-pdp-subtitle{color:var(--emc-text-1);margin:0 0 14px;font-size:15px;}
.emc-pdp-specs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;}
.emc-pdp-spec{background:var(--emc-bg-2);border:1px solid var(--emc-border);border-radius:var(--emc-radius-pill);padding:6px 14px;font-size:13px;color:var(--emc-text-0);white-space:nowrap;}
.emc-pdp-mechanics{display:flex;flex-wrap:wrap;gap:8px;}
.emc-pdp-pill{background:var(--emc-bg-1);color:var(--emc-text-1);border-radius:var(--emc-radius-pill);padding:4px 12px;font-size:12px;}
.emc-pdp-opinion{color:var(--emc-text-0);line-height:1.65;font-size:15px;max-width:760px;}
.emc-pdp-opinion p{margin:0 0 12px;}
.emc-pdp-videos{display:flex;flex-wrap:wrap;gap:12px;}
.emc-pdp-video-link{background:var(--emc-bg-2);border:1px solid var(--emc-border);border-radius:var(--emc-radius-pill);padding:10px 18px;color:var(--emc-text-0) !important;text-decoration:none !important;font-size:14px;font-weight:600;}
.emc-pdp-video-link:hover{border-color:var(--emc-accent);}
.emc-pdp-related h2{font-size:19px;margin:0 0 16px;}
.emc-pdp-related .emc-grid{margin-top:0;}
/* masque les blocs WooCommerce par défaut si jamais ils s'affichent encore (méta, onglets, avis) sur la fiche produit */
.single-product div.product .woocommerce-tabs,
.single-product div.product .product_meta,
.single-product div.product .sku_wrapper,
.single-product div.product .posted_in,
.single-product div.product .tagged_as,
.single-product #reviews{display:none !important;}


/* Correctif pied de page : le footer ne doit jamais chevaucher les colonnes flottantes (contenu / sidebar Radiate) */
.emc-footer{clear:both !important;}
/* Sur la fiche produit, pas de sidebar (cohérent avec le panier) */
.single-product #secondary.widget-area{display:none !important;}
.single-product #primary{float:none !important;width:100% !important;}

/* Tache 134 - suppression de la colonne laterale (recherche + archives) sur tout le site */
#secondary.widget-area{display:none !important;}
#primary{float:none !important;width:100% !important;}


/* Tache 83 - mise en page panier (colonnes ajustees, images plus grandes, colonne quantite supprimee, croix rouge) */
body.woocommerce-page table.shop_table{
	table-layout:fixed;
}
body.woocommerce-page table.shop_table th.product-remove,
body.woocommerce-page table.shop_table td.product-remove{
	width:40px;
	padding-left:0;
	padding-right:0;
	text-align:center;
}
body.woocommerce-page table.shop_table th.product-thumbnail,
body.woocommerce-page table.shop_table td.product-thumbnail{
	width:120px;
}
body.woocommerce-page table.shop_table td.product-thumbnail img{
	max-width:110px;
	width:100%;
	height:auto;
	display:block;
}
body.woocommerce-page table.shop_table th.product-name,
body.woocommerce-page table.shop_table td.product-name{
	width:auto;
}
body.woocommerce-page table.shop_table th.product-price,
body.woocommerce-page table.shop_table td.product-price{
	width:90px;
}
body.woocommerce-page table.shop_table th.product-subtotal,
body.woocommerce-page table.shop_table td.product-subtotal{
	width:110px;
	text-align:right;
}
body.woocommerce-page table.shop_table th.product-quantity,
body.woocommerce-page table.shop_table td.product-quantity{
	display:none !important;
}
body.woocommerce-page table.shop_table td.product-remove a{
	color:#e5484d !important;
	font-weight:800;
}
@media (max-width:768px){
	body.woocommerce-page table.shop_table th.product-thumbnail,
	body.woocommerce-page table.shop_table td.product-thumbnail{ width:72px; }
	body.woocommerce-page table.shop_table td.product-thumbnail img{ max-width:64px; }
	body.woocommerce-page table.shop_table th.product-price,
	body.woocommerce-page table.shop_table td.product-price{ display:none; }
}


/* Tache 85 - badge etat (Neuf sous cello.) a droite du prix */
body .emc-pdp-price-row{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:10px; }
body .emc-pdp-price-row .emc-pdp-price{ margin-bottom:0; }
body .emc-pdp-condition-badge{ display:inline-flex; align-items:center; gap:4px; background:rgba(90,200,120,0.12); border:1px solid var(--emc-green); color:var(--emc-green); border-radius:var(--emc-radius-pill); padding:4px 12px; font-size:12px; font-weight:700; white-space:nowrap; }


/* Tache 136 - badge "Serie" sur les cartes de mini-series Vlogs (Netflix-style) */
.emc-card-series{position:relative;}
.emc-card-series .emc-thumb{position:relative;}
.emc-tag-serie{
	position:absolute; top:.5rem; left:.5rem; z-index:2;
	background:var(--emc-accent, #ff8a00); color:#111; font-weight:800;
	font-size:11px; text-transform:uppercase; letter-spacing:.04em;
	padding:.2rem .55rem; border-radius:999px;
}
