/* PC Gaming Product Pages v1.7.1 — public/css/product.css */
:root{
  /* ── Aliases dynamiques — suivent automatiquement le preset injecté par class-presets.php ── */
  --ora:var(--pcg-acc,#ff6b1a);--ora2:var(--pcg-acc2,#d94f00);
  --ora-g:rgba(255,107,26,.22);--ora-d:rgba(255,107,26,.09);
  --blu:var(--pcg-cyan,#1a8fff);--blu2:var(--pcg-accent2,#1a8fff);
  --bg:var(--pcg-bg,#090f1f);--bg2:var(--pcg-bg2,#0d0d0f);--bg3:var(--pcg-card2,#111215);
  --card:var(--pcg-card,#131417);--input:#0a0a0c;
  --bdr:var(--pcg-bdr,rgba(255,255,255,.06));--bdr-h:rgba(255,107,26,.35);
  /* ── TEXTE — suit --pcg-tx / --pcg-muted selon mode dark/light ── */
  --tx:var(--pcg-tx,#f4f4f6);
  --tx2:var(--pcg-muted,#9898a8);
  --tx3:#525260;
  --grn:#00e56b;--red:#ff3355;--gold:#ffcc00;
  --fh:'Barlow Condensed',sans-serif;--fb:'Barlow',sans-serif;
  --fp:'Orbitron',sans-serif;--fm:'JetBrains Mono',monospace;
  --r1:5px;--r2:10px;--r3:14px;
}
[data-theme="light"]{
  --bg:#f0f0f4;--bg2:#e8e8ee;--bg3:#fff;--card:#fff;--input:#eaeaf0;
  --bdr:rgba(0,0,0,.07);--bdr-h:rgba(255,107,26,.4);
  --tx:#0c0c10;--tx2:#4a4a5a;--tx3:#9898a8;
}
.pcgaming-wrap *{box-sizing:border-box;}
/* Breadcrumb */
.pcg-breadcrumb{padding:10px 60px;background:var(--bg2);border-bottom:1px solid var(--bdr);display:flex;align-items:center;gap:7px;font-size:11px;color:var(--tx3);font-family:var(--fm);}
.pcg-breadcrumb a{color:var(--tx2);text-decoration:none;transition:color .15s;}
.pcg-breadcrumb a:hover{color:var(--ora);}
/* Product Hero */
.pcg-product-hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:1280px;margin:0 auto;padding:32px 60px 0;align-items:stretch;background:transparent;}
/* Gallery */

.pcg-gallery-wrap{display:flex;gap:12px;}
.pcg-thumbs{display:flex;flex-direction:column;gap:8px;flex-shrink:0;}
.pcg-thumb{width:72px;height:72px;border-radius:var(--r2);border:2px solid var(--bdr);cursor:pointer;overflow:hidden;object-fit:cover;opacity:.55;transition:all .2s;}
.pcg-thumb:hover,.pcg-thumb.active{border-color:var(--ora);opacity:1;}
.pcg-thumb.active{box-shadow:0 0 0 1px var(--ora);}
.pcg-main-img{flex:1;aspect-ratio:1/1;background:var(--bg2);border:1px solid var(--bdr);border-radius:var(--r3);overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative;}
.pcg-main-img img{max-width:100%;max-height:100%;object-fit:contain;}
.pcg-gal-badge {
  position: absolute;
  top: 10px; left: 10px;
  z-index: 20;
  background: var(--pcg-badge-color, var(--ora, #ff3b5c));
  color: #fff;
  padding: 0 10px;
  border-radius: 4px;
  /* Hauteur fixe: bloque les emojis qui débordent verticalement */
  height: 24px;
  line-height: 24px;
  max-width: 150px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  box-shadow: 0 2px 8px rgba(0,0,0,.4);
  /* Police qui maîtrise l'emoji */
  font: 700 11px/24px var(--fm, 'JetBrains Mono', monospace);
  letter-spacing: .8px;
  text-transform: uppercase;
  /* Clamp emoji dans la hauteur de la ligne */
  vertical-align: middle;
}
.pcg-gal-ctr{position:absolute;top:12px;right:12px;font:500 10px/1 var(--fm);color:var(--tx2);background:rgba(0,0,0,.6);backdrop-filter:blur(4px);padding:3px 8px;border-radius:var(--r1);}
.pcg-gal-nav{position:absolute;bottom:12px;right:12px;display:flex;gap:5px;}
.pcg-gal-arr{width:30px;height:30px;border-radius:var(--r1);background:rgba(0,0,0,.6);border:1px solid var(--bdr);color:var(--tx);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;backdrop-filter:blur(8px);transition:all .2s;}
.pcg-gal-arr:hover{background:var(--ora);color:#000;border-color:var(--ora);}
/* Product info */
.pcg-kicker{font:600 9px/1 var(--fm);color:var(--ora);letter-spacing:3px;text-transform:uppercase;margin-bottom:10px;}
.pcg-prod-name{font-family:var(--fh);font-size:clamp(34px,4vw,56px);font-weight:900;font-style:italic;line-height:.9;letter-spacing:-.5px;color:var(--tx);margin-bottom:14px;}
.pcg-badges{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:22px;}
.pcg-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:999px;font-size:11px;font-weight:700;border:1px solid;}
.pcg-badge-grn{background:rgba(0,229,107,.1);color:var(--grn);border-color:rgba(0,229,107,.3);}
.pcg-badge-ora{background:var(--ora-d);color:var(--ora);border-color:rgba(255,107,26,.3);}
.pcg-badge-blu{background:rgba(26,143,255,.08);color:var(--blu);border-color:rgba(26,143,255,.3);}
.pcg-price-wrap{display:flex;align-items:baseline;gap:13px;margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--bdr);}
.pcg-price{font:900 clamp(32px,4vw,50px)/1 var(--fp);color:var(--ora);letter-spacing:-.04em;text-shadow:0 0 32px var(--ora-g);}
.pcg-price-old{font-size:20px;font-weight:800;color:var(--tx3);text-decoration:line-through;font-family:var(--fh);}
.pcg-price-eco{font-size:12px;font-weight:700;background:rgba(0,229,107,.1);color:var(--grn);border:1px solid rgba(0,229,107,.25);padding:2px 8px;border-radius:999px;font-family:var(--fm);}
.pcg-section-lbl{font:700 9px/1 var(--fm);letter-spacing:2.5px;text-transform:uppercase;color:var(--tx3);margin-bottom:11px;display:flex;align-items:center;gap:8px;}
.pcg-section-lbl::after{content:'';flex:1;height:1px;background:var(--bdr);}
.pcg-comp-list{display:flex;flex-direction:column;gap:6px;margin-bottom:20px;}
.pcg-comp-row{display:grid;grid-template-columns:minmax(115px,130px) 1fr;gap:8px;padding:8px 13px;background:var(--card);border:1px solid var(--bdr);border-radius:var(--r2);font-size:13px;transition:border-color .15s;}
.pcg-comp-row:hover{border-color:rgba(255,107,26,.2);}
.pcg-comp-k{font-weight:700;color:var(--tx);}
.pcg-comp-v{color:var(--tx2);line-height:1.45;}
.pcg-atc-wrap{display:flex;gap:9px;align-items:center;margin-bottom:16px;}
.pcg-qty{display:flex;align-items:center;border:1px solid var(--bdr);border-radius:var(--r1);background:var(--card);overflow:hidden;}
.pcg-qty-btn{width:36px;height:46px;border:none;background:transparent;color:var(--tx2);font-size:18px;cursor:pointer;transition:all .2s;}
.pcg-qty-btn:hover{background:var(--ora-d);color:var(--ora);}
.pcg-qty-n{width:40px;height:46px;display:flex;align-items:center;justify-content:center;font:700 14px/1 var(--fp);color:var(--tx);border-left:1px solid var(--bdr);border-right:1px solid var(--bdr);}
.pcg-btn-atc{flex:1;height:46px;border:none;border-radius:var(--r1);background:linear-gradient(135deg,var(--ora),var(--ora2));color:#000;font-family:var(--fh);font-size:16px;font-weight:900;font-style:italic;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 22px var(--ora-g);transition:all .25s;}
.pcg-btn-atc:hover{box-shadow:0 4px 32px var(--ora-g);transform:translateY(-1px);}
.pcg-wc-atc{margin-bottom:16px;}
.pcg-wc-atc form.cart{display:flex;gap:9px;align-items:center;margin:0 0 16px;}
.pcg-wc-atc form.cart .quantity{margin:0;}
.pcg-wc-atc form.cart .qty{width:72px;height:46px;background:var(--card);border:1px solid var(--bdr);border-radius:var(--r1);color:var(--tx);font:700 14px/1 var(--fp);text-align:center;}
.pcg-wc-atc .single_add_to_cart_button,.pcg-sticky-right .single_add_to_cart_button{height:46px;border:none!important;border-radius:var(--r1)!important;background:linear-gradient(135deg,var(--ora),var(--ora2))!important;color:#000!important;font-family:var(--fh)!important;font-size:16px!important;font-weight:900!important;font-style:italic;letter-spacing:1.5px;text-transform:uppercase;padding:0 26px!important;box-shadow:0 4px 22px var(--ora-g);transition:all .25s;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;}
.pcg-wc-atc .single_add_to_cart_button:hover,.pcg-sticky-right .single_add_to_cart_button:hover{box-shadow:0 4px 32px var(--ora-g);transform:translateY(-1px);}
.pcg-trust-row{display:flex;gap:14px;flex-wrap:wrap;padding:14px 0;border-top:1px solid var(--bdr);font-size:11px;color:var(--tx2);}
/* Specs section (v1.4 style) */
.pcg-specs-section{padding:80px 0;background:transparent;position:relative;z-index:1;}
.pcg-sec-cnt{max-width:1280px;margin:0 auto;padding:0 60px;}
.pcg-sec-hd{text-align:center;margin-bottom:50px;}
.pcg-sec-kicker{font:600 9px/1 var(--fm);color:var(--ora);letter-spacing:4px;text-transform:uppercase;display:block;margin-bottom:11px;}
.pcg-sec-title{font-family:var(--fh);font-size:clamp(30px,4.5vw,52px);font-weight:900;font-style:italic;letter-spacing:.5px;color:var(--tx);margin-bottom:11px;}
.pcg-sec-sub{font-size:15px;color:var(--tx2);max-width:500px;margin:0 auto;}
.pcg-specs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.pcg-sc{background:var(--card);border:1px solid var(--bdr);border-radius:var(--r3);overflow:hidden;transition:border-color .22s,transform .22s,box-shadow .22s;}
.pcg-sc:hover{border-color:rgba(255,107,26,.45);transform:translateY(-4px);box-shadow:0 12px 36px rgba(0,0,0,.3),0 0 28px var(--ora-d);}
.pcg-sc-head{display:flex;align-items:center;gap:11px;padding:13px 18px;background:var(--bg2);border-bottom:1px solid var(--bdr);position:relative;}
.pcg-sc-head::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--ora),var(--blu) 40%,transparent);}
.pcg-sc-ico{font-size:20px;}
.pcg-sc-lbl{font:600 10px/1 var(--fm);letter-spacing:2px;text-transform:uppercase;color:var(--ora);}
.pcg-sc-list{list-style:none;padding:12px 18px;}
.pcg-sc-item{display:flex;justify-content:space-between;align-items:flex-start;gap:9px;padding:8px 0;border-bottom:1px solid var(--bdr);font-size:13px;}
.pcg-sc-item:last-child{border:none;padding-bottom:0;}
.pcg-sc-k{color:var(--tx3);}
.pcg-sc-v{color:var(--tx);font-weight:600;text-align:right;max-width:55%;}
/* Tabs */
.pcg-tabs-wrap{max-width:1280px;margin:0 auto;padding:40px 60px 70px;background:transparent;}
.pcg-tabs-nav{display:flex;gap:1px;background:var(--bdr);border:1px solid var(--bdr);border-radius:var(--r2);overflow:hidden;margin-bottom:28px;}
.pcg-tab{flex:1;padding:11px 14px;font-size:12px;font-weight:700;cursor:pointer;border:none;background:var(--card);color:var(--tx3);font-family:var(--fb);transition:all .2s;display:flex;align-items:center;justify-content:center;gap:5px;}
.pcg-tab.active{background:var(--bg3);color:var(--ora);border-bottom:2px solid var(--ora);}
.pcg-tab:hover:not(.active){color:var(--tx);}
.pcg-tab-panel{display:none;}
.pcg-tab-panel.active{display:block;}
/* Benchmarks */
.pcg-res-filter{display:flex;gap:6px;margin-bottom:22px;}
.pcg-res-btn{padding:7px 20px;border-radius:999px;border:1px solid var(--bdr);background:transparent;color:var(--tx2);font:600 10px/1 var(--fm);cursor:pointer;transition:all .2s;letter-spacing:1.5px;}
.pcg-res-btn.active,.pcg-res-btn:hover{background:var(--ora);color:#000;border-color:var(--ora);}
.pcg-bench-list{display:grid;gap:9px;}
.pcg-bitem{background:var(--card);border:1px solid var(--bdr);border-radius:var(--r2);padding:16px 20px;transition:border-color .2s;}
.pcg-bitem:hover{border-color:rgba(255,107,26,.25);}
.pcg-bitem-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:9px;}
.pcg-bitem-game{font-family:var(--fh);font-size:16px;font-weight:800;font-style:italic;letter-spacing:.5px;color:var(--tx);}
.pcg-bitem-meta{font:500 10px/1 var(--fm);color:var(--tx3);letter-spacing:1px;}
.pcg-bitem-row{display:flex;align-items:center;gap:12px;}
.pcg-bitem-track{flex:1;background:var(--bg);border-radius:4px;height:21px;overflow:hidden;}
.pcg-bitem-fill{height:100%;border-radius:4px;width:0;transition:width 1.1s cubic-bezier(.22,.6,.36,1);}
.pcg-bitem-fps{font-family:var(--fh);font-size:28px;font-weight:900;font-style:italic;}
.pcg-bitem-fpu{font:500 10px/1 var(--fm);color:var(--tx3);}
.pcg-bitem-mm{display:flex;gap:12px;justify-content:flex-end;font:500 10px/1 var(--fm);color:var(--tx3);margin-top:5px;}
/* AI Chat */
.pcg-ai-chat{background:var(--bg2);border:1px solid var(--bdr);border-radius:var(--r3);overflow:hidden;}
.pcg-ai-hd{display:flex;align-items:center;gap:10px;padding:13px 16px;background:linear-gradient(135deg,var(--ora-d),rgba(26,143,255,.08));border-bottom:1px solid var(--bdr);}
.pcg-ai-title{font-family:var(--fh);font-size:15px;font-weight:800;font-style:italic;color:var(--tx);}
.pcg-ai-msgs{padding:14px 16px;display:flex;flex-direction:column;gap:10px;max-height:260px;overflow-y:auto;}
.pcg-ai-msg{max-width:85%;font-size:13px;line-height:1.6;padding:10px 14px;border-radius:var(--r2);}
.pcg-ai-msg.bot{background:var(--card);color:var(--tx);border:1px solid var(--bdr);align-self:flex-start;}
.pcg-ai-msg.user{background:linear-gradient(135deg,var(--ora),var(--ora2));color:#000;font-weight:600;align-self:flex-end;}
.pcg-ai-inp-wrap{display:flex;gap:8px;padding:10px 16px;border-top:1px solid var(--bdr);}
.pcg-ai-inp{flex:1;background:var(--card);border:1px solid var(--bdr);color:var(--tx);border-radius:var(--r1);padding:8px 12px;font-size:13px;font-family:var(--fb);outline:none;transition:border-color .2s;}
.pcg-ai-inp:focus{border-color:var(--ora);}
.pcg-ai-send{width:36px;height:36px;border:none;border-radius:var(--r1);background:var(--ora);color:#000;cursor:pointer;transition:all .2s;flex-shrink:0;}
.pcg-ai-send:hover{box-shadow:0 4px 12px var(--ora-g);transform:scale(1.05);}
/* Sticky bar */
.pcg-sticky-bar{position:fixed;top:0;left:0;right:0;z-index:999;height:0;overflow:hidden;background:color-mix(in srgb,var(--pcg-bg,#080809) 97%,transparent);border-bottom:1px solid var(--bdr);backdrop-filter:blur(18px);transition:height .3s cubic-bezier(.4,0,.2,1),opacity .3s;opacity:0;box-shadow:0 6px 30px rgba(0,0,0,.5);}
.pcg-sticky-bar.visible{height:64px;opacity:1;}
.pcg-sticky-inner{max-width:1280px;margin:0 auto;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 60px;gap:20px;}
.pcg-sticky-left{display:flex;align-items:center;gap:14px;}
.pcg-sticky-img{width:46px;height:46px;border-radius:var(--r1);object-fit:cover;border:1px solid var(--bdr);flex-shrink:0;}
.pcg-sticky-name{font-family:var(--fh);font-size:17px;font-weight:900;font-style:italic;color:var(--tx);}
.pcg-sticky-stock{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:700;font-family:var(--fm);background:rgba(0,229,107,.1);color:var(--grn);border:1px solid rgba(0,229,107,.25);}
.pcg-sticky-right{display:flex;align-items:center;gap:14px;flex-shrink:0;}
.pcg-sticky-old{font-size:13px;color:var(--tx3);text-decoration:line-through;}
.pcg-sticky-price{font:900 22px/1 var(--fp);color:var(--ora);}
.pcg-sticky-btn{height:40px;padding:0 22px;border:none;border-radius:var(--r1);background:linear-gradient(135deg,var(--ora),var(--ora2));color:#000;font-family:var(--fh);font-size:14px;font-weight:900;font-style:italic;letter-spacing:1.5px;cursor:pointer;box-shadow:0 4px 18px var(--ora-g);transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;text-align:center;}
.pcg-sticky-btn:hover{box-shadow:0 4px 28px var(--ora-g);transform:translateY(-1px);}
/* Related */
.pcg-related{background:transparent;border-top:1px solid var(--bdr);padding:70px 0 90px;}
.pcg-related-hd{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:40px;}
.pcg-related-title{font-family:var(--fh);font-size:clamp(28px,4vw,48px);font-weight:900;font-style:italic;letter-spacing:.5px;color:var(--tx);}
.pcg-related-title em{background:linear-gradient(90deg,var(--ora),var(--blu));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:normal;}
.pcg-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.pcg-rcard{background:var(--card);border:1px solid var(--bdr);border-radius:var(--r3);overflow:hidden;transition:border-color .2s,transform .25s,box-shadow .25s;cursor:pointer;display:flex;flex-direction:column;}
.pcg-rcard:hover{border-color:rgba(255,107,26,.5);transform:translateY(-5px);box-shadow:0 16px 48px rgba(0,0,0,.4),0 0 28px var(--ora-d);}
.pcg-rcard-img{height:160px;position:relative;overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center;}
.pcg-rcard-img::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--ora),var(--blu));z-index:1;}
.pcg-rcard-img img{max-width:100%;max-height:100%;object-fit:contain;}
.pcg-rcard-body{padding:14px;flex:1;display:flex;flex-direction:column;}
.pcg-rcard-name{font-family:var(--fh);font-size:16px;font-weight:900;font-style:italic;color:var(--tx);margin-bottom:4px;}
.pcg-rcard-foot{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--bdr);margin-top:auto;}
.pcg-rcard-price{font-family:var(--fh);font-size:20px;font-weight:900;font-style:italic;color:var(--ora);}
.pcg-rcard-btn{background:var(--ora);color:#000;border:none;padding:6px 14px;border-radius:var(--r1);font-family:var(--fh);font-size:12px;font-weight:900;font-style:italic;cursor:pointer;transition:all .2s;}
.pcg-rcard-btn:hover{box-shadow:0 4px 12px var(--ora-g);transform:translateY(-1px);}
/* Description */
.pcg-desc-lead{font-size:16px;font-weight:600;color:var(--tx);line-height:1.7;margin-bottom:24px;padding:18px 22px;background:linear-gradient(135deg,var(--ora-d),rgba(26,143,255,.08));border:1px solid var(--ora-g);border-radius:var(--r3);}
.pcg-desc-h2{font-family:var(--fh);font-size:22px;font-weight:900;font-style:italic;color:var(--tx);margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.pcg-desc-h2::before{content:'';display:inline-block;width:4px;height:20px;background:var(--ora);border-radius:2px;}
.pcg-desc-p{font-size:14px;color:var(--tx2);line-height:1.8;margin-bottom:10px;}
.pcg-desc-ul{list-style:none;display:flex;flex-direction:column;gap:7px;margin-bottom:14px;}
.pcg-desc-ul li{display:flex;align-items:flex-start;gap:8px;font-size:14px;color:var(--tx2);}
.pcg-desc-ul li::before{content:'→';color:var(--ora);flex-shrink:0;font-weight:700;}
/* Responsive */
@media(max-width:900px){
  .pcg-product-hero{grid-template-columns:1fr;padding:16px 16px 0;gap:24px;}

  .pcg-gallery-wrap{flex-direction:column-reverse;}
  .pcg-thumbs{flex-direction:row;overflow-x:auto;}
  .pcg-thumb{width:60px;height:60px;flex-shrink:0;}
  .pcg-tabs-wrap{padding:24px 16px 50px;}
  .pcg-sec-cnt{padding:0 16px;}
  .pcg-specs-grid{grid-template-columns:1fr 1fr;}
  .pcg-related-grid{grid-template-columns:1fr 1fr;}
  .pcg-sticky-inner{padding:0 16px;gap:10px;}
  .pcg-breadcrumb{padding:8px 16px;}
}
@media(max-width:640px){
  .pcg-prod-name{font-size:28px;}
  .pcg-price{font-size:28px;}
  .pcg-specs-grid{grid-template-columns:1fr;}
  .pcg-related-grid{grid-template-columns:1fr;}
  .pcg-atc-wrap{flex-wrap:wrap;}
  .pcg-btn-atc{flex:1 1 100%;}
  .pcg-sticky-name{font-size:13px;max-width:120px;overflow:hidden;text-overflow:ellipsis;}
  .pcg-sticky-old{display:none;}
  .pcg-sticky-price{font-size:17px;}
}
::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:var(--bdr);border-radius:3px;}
::-webkit-scrollbar-thumb:hover{background:rgba(255,107,26,.35);}

/* v1.7.2 — force clean frontend rendering inside any WooCommerce theme */
body.single-product .pcgaming-product,
body.single-product .pcg-page{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:var(--bg);
  color:var(--tx);
  min-height:100vh;
  /* overflow-x retiré du body : il casse position:sticky sur les enfants */
  font-family:var(--fb);
}
/* Note v3.1.6: pas d'overflow sur les ancêtres de .pcg-gallery : casse position:sticky */
body.single-product .pcgaming-product a{color:inherit}
body.single-product .pcgaming-product img{box-shadow:none;border-radius:0}
body.single-product .pcgaming-product .price,
body.single-product .pcgaming-product .amount{color:inherit}
body.single-product .pcgaming-product form.cart::before,
body.single-product .pcgaming-product form.cart::after{display:none!important;content:none!important}
body.single-product .pcgaming-product .woocommerce-notices-wrapper{max-width:1280px;margin:0 auto;padding:0 60px}
body.single-product .pcgaming-product .product_meta,
body.single-product .pcgaming-product .woocommerce-product-gallery,
body.single-product .pcgaming-product .summary.entry-summary{display:none!important}
.pcg-price .woocommerce-Price-amount,
.pcg-sticky-price .woocommerce-Price-amount{color:inherit!important;font:inherit!important}
@media(max-width:900px){body.single-product .pcgaming-product .woocommerce-notices-wrapper{padding:0 16px}}
/* v1.7.3 standalone frontend shell — closer to preview */
/* v3.4.0: standalone mode CSS removed (unused) */


/* v1.7.4 — intégration thème : on garde le header du site, on ne stylise que la zone produit */
body.single-product .pcgaming-product{background:transparent!important;color:var(--tx)!important;padding-top:0!important;}
body.single-product .pcgaming-product .pcg-product-hero{max-width:1280px!important;}
body.single-product .pcgaming-product .pcg-tabs-nav{background:var(--bdr)!important;border:1px solid var(--bdr)!important;border-radius:var(--r2)!important;overflow:hidden!important;display:flex!important;gap:1px!important;}
body.single-product .pcgaming-product .pcg-tab{background:var(--card)!important;color:var(--tx3)!important;border:0!important;border-right:1px solid var(--bdr)!important;border-radius:0!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;min-height:auto!important;}
body.single-product .pcgaming-product .pcg-tab.active{background:var(--bg3)!important;color:var(--ora)!important;border-bottom:2px solid var(--ora)!important;}
body.single-product .pcgaming-product .pcg-wc-atc button.single_add_to_cart_button,
body.single-product .pcgaming-product .pcg-wc-atc .single_add_to_cart_button{background:linear-gradient(135deg,var(--ora),var(--ora2))!important;color:#000!important;border:0!important;border-radius:var(--r1)!important;font-family:var(--fh)!important;font-size:16px!important;font-weight:900!important;font-style:italic!important;letter-spacing:1.5px!important;text-transform:uppercase!important;height:46px!important;padding:0 30px!important;}
body.single-product .pcgaming-product .quantity input.qty{height:46px!important;background:var(--card)!important;color:var(--tx)!important;border:1px solid var(--bdr)!important;border-radius:var(--r1)!important;}
.pcg-chrome-front{display:none!important;}

/* v1.7.5 — frontend plus proche de la preview, sans header ajouté par le plugin */
.pcg-chrome-front{display:none!important;}
body.single-product .pcgaming-product{background:transparent!important;color:var(--tx)!important;font-family:var(--fb)!important;}
/* v3.1.6: hero radial supprimé — géré par presets-frontend.js FX layer */
.pcg-breadcrumb{background:var(--bg2)!important;border-bottom:1px solid var(--bdr)!important;}
.pcg-product-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:50px!important;max-width:1280px!important;padding:32px 60px 0!important;align-items:stretch!important;}

.pcg-main-img{background:var(--bg2)!important;border:1px solid var(--bdr)!important;border-radius:14px!important;aspect-ratio:1/1!important;}
.pcg-main-img img{width:100%!important;height:100%!important;object-fit:contain!important;padding:24px!important;}
.pcg-thumb{border-radius:10px!important;border:2px solid var(--bdr)!important;background:var(--bg2)!important;opacity:.55!important;}
.pcg-thumb.active{border-color:var(--ora)!important;opacity:1!important;box-shadow:0 0 0 1px var(--ora)!important;}
.pcg-kicker{font:600 9px/1 var(--fm)!important;color:var(--ora)!important;letter-spacing:3px!important;text-transform:uppercase!important;margin-bottom:10px!important;}
.pcg-prod-name{font-family:var(--fh)!important;font-size:clamp(34px,4vw,56px)!important;font-weight:900!important;font-style:italic!important;line-height:.9!important;letter-spacing:-.5px!important;color:var(--tx)!important;margin-bottom:14px!important;}
.pcg-price-wrap{display:flex!important;align-items:baseline!important;gap:13px!important;margin-bottom:22px!important;padding-bottom:22px!important;border-bottom:1px solid var(--bdr)!important;}
.pcg-price{font:900 clamp(32px,4vw,50px)/1 var(--fp)!important;color:var(--ora)!important;letter-spacing:-.04em!important;text-shadow:0 0 32px var(--ora-g)!important;}
.pcg-price-old{font-size:20px!important;font-weight:800!important;color:var(--tx3)!important;text-decoration:line-through!important;font-family:var(--fh)!important;}
.pcg-tabs-nav{display:flex!important;gap:1px!important;background:var(--bdr)!important;border:1px solid var(--bdr)!important;border-radius:10px!important;overflow:hidden!important;margin-bottom:28px!important;}
.pcg-tabs-nav .pcg-tab{flex:1!important;padding:11px 14px!important;font-size:12px!important;font-weight:700!important;border:none!important;background:var(--card)!important;color:var(--tx3)!important;font-family:var(--fb)!important;box-shadow:none!important;border-radius:0!important;}
.pcg-tabs-nav .pcg-tab.active{background:var(--bg3)!important;color:var(--ora)!important;border-bottom:2px solid var(--ora)!important;}
.pcg-wc-atc form.cart{display:flex!important;gap:9px!important;align-items:center!important;margin-bottom:16px!important;}
.pcg-wc-atc .quantity input{width:70px!important;height:46px!important;background:var(--card)!important;color:var(--tx)!important;border:1px solid var(--bdr)!important;border-radius:5px!important;text-align:center!important;font:700 14px/1 var(--fp)!important;}
.pcg-wc-atc button.single_add_to_cart_button{flex:1!important;min-width:220px!important;height:46px!important;border:none!important;border-radius:5px!important;background:linear-gradient(135deg,var(--ora),var(--ora2))!important;color:#000!important;font-family:var(--fh)!important;font-size:16px!important;font-weight:900!important;font-style:italic!important;letter-spacing:1.5px!important;text-transform:uppercase!important;box-shadow:0 4px 22px var(--ora-g)!important;}
.pcg-sticky-bar{top:var(--pcg-sticky-top,96px)!important;z-index:9999!important;}
body.admin-bar .pcg-sticky-bar{top:calc(var(--pcg-sticky-top,96px) + 32px)!important;}
.pcg-sticky-bar.visible{height:64px!important;}
@media(max-width:1024px){.pcg-product-hero{grid-template-columns:1fr!important;padding:16px 16px 0!important}.pcg-sticky-inner{padding:0 16px!important}}
@media(max-width:782px){body.admin-bar .pcg-sticky-bar{top:calc(var(--pcg-sticky-top,70px) + 46px)!important;}}
@media(max-width:640px){.pcg-product-hero{padding:12px 12px 0!important}.pcg-tabs-nav{display:none!important}.pcg-sticky-name{font-size:13px!important;max-width:120px!important;overflow:hidden!important;text-overflow:ellipsis!important}.pcg-sticky-stock,.pcg-sticky-old{display:none!important}.pcg-sticky-price{font-size:18px!important}.pcg-sticky-btn{padding:0 14px!important;font-size:13px!important}}

/* v1.7.6 — corrections preview exacte */
.pcg-prod-actions{display:flex;gap:8px;margin-top:12px}.pcg-prod-act{flex:1;padding:8px 10px;border:1px solid var(--bdr);border-radius:var(--r1);background:var(--card);color:var(--tx2);font:700 11px/1 var(--fb);cursor:pointer;transition:.2s}.pcg-prod-act:hover{border-color:var(--ora);color:var(--ora);background:var(--ora-d)}
.pcg-related{background:transparent!important;border-top:1px solid var(--bdr)!important;padding:78px 0 90px!important;overflow:hidden}.pcg-related .pcg-sec-cnt{max-width:1280px;margin:0 auto;padding:0 60px}.pcg-related-hd{align-items:flex-end!important;margin-bottom:34px!important}.pcg-related-title{font-family:var(--fh)!important;font-size:clamp(38px,5vw,74px)!important;line-height:.98!important;font-weight:900!important;font-style:italic!important;color:var(--tx)!important;letter-spacing:.2px!important}.pcg-related-title em{font-style:normal!important;background:linear-gradient(90deg,var(--ora),var(--blu))!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important}.pcg-related-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important}.pcg-rcard{background:var(--card)!important;border:1px solid var(--bdr)!important;border-top:3px solid var(--ora)!important;border-radius:16px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;min-height:348px!important;cursor:pointer!important;transition:transform .25s,border-color .2s,box-shadow .25s}.pcg-rcard:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--ora) 40%,transparent);box-shadow:0 16px 48px rgba(0,0,0,.35)}.pcg-rcard-thumb{height:178px!important;background:#0d0d0f!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}.pcg-rcard-thumb img{width:100%!important;height:100%!important;object-fit:contain!important;transform:scale(.95);transition:.35s}.pcg-rcard:hover .pcg-rcard-thumb img{transform:scale(1.02)}.pcg-rcard-body{padding:16px 18px 8px!important;flex:1!important;border-top:1px solid rgba(255,255,255,.04)}.pcg-rcard-name{margin:0!important;color:var(--tx)!important;font:900 18px/1.15 var(--fh)!important;font-style:italic!important}.pcg-rcard-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:12px 18px 18px!important;border-top:1px solid var(--bdr)!important}.pcg-rcard-price{color:var(--ora)!important;font:900 24px/1 var(--fh)!important;font-style:italic!important}.pcg-rcard-price .woocommerce-Price-amount{color:inherit!important;font:inherit!important}.pcg-rcard-btn{border:0!important;border-radius:6px!important;background:var(--ora)!important;color:#000!important;font:900 12px/1 var(--fb)!important;padding:11px 13px!important;cursor:pointer!important}.pcg-specs-section{display:block!important;visibility:visible!important;clear:both!important;margin-top:48px!important}.pcg-sc{min-height:178px}.pcg-sticky-bar{top:var(--pcg-sticky-top,96px)!important;z-index:9998!important}body.admin-bar .pcg-sticky-bar{top:calc(var(--pcg-sticky-top,96px) + 32px)!important}@media(max-width:1024px){.pcg-related .pcg-sec-cnt{padding:0 24px}.pcg-related-grid{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:640px){.pcg-related .pcg-sec-cnt{padding:0 14px}.pcg-related-grid{grid-template-columns:1fr!important}.pcg-related-title{font-size:42px!important}.pcg-prod-actions{flex-direction:column}}

/* v1.7.8 fixes */
body.single-product .woocommerce-message,body.single-product .woocommerce-info,body.single-product .woocommerce-error,body.single-product .wc-block-components-notice-banner{display:none!important}.pcgaming-wrap::after,.pcg-page::after{display:none!important;content:none!important}.pcg-related{overflow:hidden;background:transparent!important;padding:70px 0 90px!important;position:relative;z-index:1}.pcg-related .pcg-sec-cnt{max-width:1280px;margin:0 auto;padding:0 60px}.pcg-related-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}.pcg-rcard{background:var(--pcg-card,#131417)!important;border:1px solid rgba(255,255,255,.08)!important;border-top:3px solid var(--ora)!important;border-radius:16px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;min-height:350px!important;cursor:pointer;transition:.22s}.pcg-rcard:hover{transform:translateY(-4px);border-color:rgba(255,107,26,.45)!important}.pcg-rcard-thumb{height:185px!important;background:var(--pcg-bg2,#0d0d0f)!important;display:flex!important;align-items:center!important;justify-content:center!important}.pcg-rcard-thumb img{max-width:100%!important;max-height:100%!important;object-fit:contain!important}.pcg-rcard-body{padding:14px 16px 0!important;flex:1}.pcg-rcard-name{font-family:var(--fh)!important;font-style:italic!important;font-weight:900!important;font-size:18px!important;color:var(--pcg-tx,var(--tx,#f4f4f6))!important;margin:0 0 12px!important}.pcg-rcard-line{height:1px;background:rgba(255,255,255,.08);margin-top:12px}.pcg-rcard-footer{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:10px!important;padding:14px 16px 16px!important;margin-top:auto}.pcg-rcard-prices{display:flex;flex-direction:column;gap:5px}.pcg-rcard-old{font-size:12px;color:var(--tx3);text-decoration:line-through}.pcg-rcard-price{font:900 22px/1 var(--fh)!important;color:var(--ora)!important}.pcg-rcard-btn{background:var(--ora)!important;color:#000!important;border:none!important;border-radius:6px!important;padding:10px 14px!important;font-weight:900!important;font-family:var(--fh)!important;font-style:italic!important;cursor:pointer!important}@media(max-width:900px){.pcg-related-grid{grid-template-columns:repeat(2,1fr)!important}.pcg-related .pcg-sec-cnt{padding:0 16px}}@media(max-width:560px){.pcg-related-grid{grid-template-columns:1fr!important}}

/* ================================================================
   v1.9.0 — Related cards : spec rows style homepage-manager
================================================================ */
.pcg-rcard-specs {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin: 8px 0 0;
}
.pcg-rcard-spec {
    display: grid;
    grid-template-columns: 18px 52px 1fr;
    align-items: center;
    gap: 6px;
    padding: 5px 9px;
    background: rgba(255,255,255,.04);
    border-radius: 7px;
    border: 1px solid rgba(255,255,255,.07);
    font-size: 12px;
}
.pcg-rcard-spec-ico {
    width: 16px;
    height: 16px;
    color: var(--pcg-acc, var(--ora, #ff6b1a));
    opacity: .9;
    display: flex;
    align-items: center;
}
.pcg-rcard-spec-ico svg { width: 100%; height: 100%; }
.pcg-rcard-spec-k {
    font-weight: 700;
    font-size: 11px;
    opacity: .65;
    white-space: nowrap;
    color: var(--pcg-tx, var(--tx, #f4f4f6));
}
.pcg-rcard-spec-v {
    color: var(--pcg-tx, var(--tx, #f4f4f6));
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ================================================================
   v1.9.0 — FIX Light mode : preset CSS sur :root + selecteurs specifiques
   Assure que le fond/couleurs du thème s'appliquent en mode clair
================================================================ */
:root {
    --pcg-acc:   var(--pcg-accent, #ff6b1a);
    --pcg-acc2:  var(--pcg-accent2, #d94f00);
    --pcg-cyan:  #1a8fff;
    --pcg-bg:    #090f1f;
    --pcg-bg2:   #0d0d0f;
    --pcg-card:  #131417;
    --pcg-card2: #111215;
    --pcg-tx:    #f4f4f6;
    --pcg-muted: #9898a8;
    --pcg-bdr:   rgba(255,255,255,.06);
    --pcg-price: #ff6b1a;
    --pcg-btn-bg:#ff6b1a;
    --pcg-btn-tx:#000;
}
/* WP Dark Mode light fallback — resets defaults only if dark mode OFF */
html:not([data-wp-dark-mode-active]):not(.wp-dark-mode-active) .pcgaming-product {
    background: var(--pcg-bg) !important;
    color: var(--pcg-tx) !important;
}

/* ================================================================
   v1.9.0 — FIX watermark sur images galerie
================================================================ */
.pcg-main-img::before,
.pcg-main-img::after,
.pcg-gallery-wrap::before,
.pcg-gallery-wrap::after,
.woocommerce-product-gallery::before,
.woocommerce-product-gallery::after,
.woocommerce-product-gallery__image::before,
.woocommerce-product-gallery__image::after {
    display: none !important;
    content: none !important;
}

/* ================================================================
   v1.9.0 — Description blocs (identiques preview v1.7)
================================================================ */
.pcg-desc-lead {
    font-size: 17px;
    font-weight: 600;
    color: var(--tx, var(--pcg-tx, #f4f4f6));
    line-height: 1.7;
    margin-bottom: 24px;
    padding: 18px 22px;
    background: linear-gradient(135deg, var(--ora-d, rgba(255,107,26,.09)), rgba(26,143,255,.08));
    border: 1px solid var(--ora-g, rgba(255,107,26,.2));
    border-radius: 14px;
}
.pcg-desc-h2 {
    font-family: var(--fh, 'Barlow Condensed', sans-serif);
    font-size: 22px;
    font-weight: 900;
    font-style: italic;
    color: var(--tx, var(--pcg-tx, #f4f4f6));
    margin: 0 0 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.pcg-desc-h2::before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 20px;
    background: var(--ora, var(--pcg-acc, #ff6b1a));
    border-radius: 2px;
    flex-shrink: 0;
}
.pcg-desc-p {
    font-size: 14px;
    color: var(--tx2, var(--pcg-muted, #9898a8));
    line-height: 1.8;
    margin-bottom: 10px;
}
.pcg-desc-ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin-bottom: 14px;
    padding: 0;
}
.pcg-desc-ul li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px;
    color: var(--tx2, var(--pcg-muted, #9898a8));
    line-height: 1.5;
}
.pcg-desc-ul li::before {
    content: '→';
    color: var(--ora, var(--pcg-acc, #ff6b1a));
    flex-shrink: 0;
    font-weight: 700;
    margin-top: 1px;
}
.pcg-desc-callout {
    padding: 14px 18px;
    border-radius: 10px;
    margin-top: 14px;
    border-left: 3px solid var(--ora, var(--pcg-acc, #ff6b1a));
    background: var(--ora-d, rgba(255,107,26,.09));
    font-size: 13px;
    color: var(--tx, var(--pcg-tx, #f4f4f6));
    font-style: italic;
    line-height: 1.6;
}
.pcg-desc-hl-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 16px;
}
.pcg-desc-hl {
    padding: 14px;
    border-radius: 10px;
    border: 1px solid var(--bdr, rgba(255,255,255,.06));
    background: var(--card, var(--pcg-card, #131417));
    text-align: center;
    transition: border-color .2s, transform .2s;
}
.pcg-desc-hl:hover { border-color: rgba(255,107,26,.3); transform: translateY(-2px); }
.pcg-desc-hl-ico { font-size: 24px; margin-bottom: 8px; }
.pcg-desc-hl-t { font-family: var(--fh, 'Barlow Condensed', sans-serif); font-size: 14px; font-weight: 800; color: var(--tx, #f4f4f6); margin-bottom: 4px; }
.pcg-desc-hl-s { font-size: 11px; color: var(--tx3, #525260); }
@media(max-width:640px){
    .pcg-desc-hl-grid { grid-template-columns: 1fr 1fr; }
}

/* ================================================================
   v1.9.0 — WP Dark Mode : surcharge explicite des couleurs de texte
   Quand WP Dark Mode est CLAIR, le fond et le texte doivent s'adapter
================================================================ */

/* Mode SOMBRE actif — forcer les couleurs dark sur tous les éléments texte */
html[data-wp-dark-mode-active] .pcgaming-product,
html.wp-dark-mode-active .pcgaming-product {
    color: var(--pcg-tx, #f4f4f6) !important;
    background: var(--pcg-bg, #090f1f) !important;
}

/* Textes spécifiques en mode sombre */
html[data-wp-dark-mode-active] .pcg-prod-name,
html.wp-dark-mode-active .pcg-prod-name,
html[data-wp-dark-mode-active] .pcg-desc-h2,
html.wp-dark-mode-active .pcg-desc-h2,
html[data-wp-dark-mode-active] .pcg-comp-k,
html.wp-dark-mode-active .pcg-comp-k,
html[data-wp-dark-mode-active] .pcg-rcard-name,
html.wp-dark-mode-active .pcg-rcard-name,
html[data-wp-dark-mode-active] .pcg-sec-title,
html.wp-dark-mode-active .pcg-sec-title,
html[data-wp-dark-mode-active] .pcg-kicker,
html.wp-dark-mode-active .pcg-kicker,
html[data-wp-dark-mode-active] .pcg-badge,
html.wp-dark-mode-active .pcg-badge {
    color: var(--pcg-tx, #f4f4f6) !important;
}

html[data-wp-dark-mode-active] .pcg-desc-p,
html.wp-dark-mode-active .pcg-desc-p,
html[data-wp-dark-mode-active] .pcg-desc-ul li,
html.wp-dark-mode-active .pcg-desc-ul li,
html[data-wp-dark-mode-active] .pcg-comp-v,
html.wp-dark-mode-active .pcg-comp-v,
html[data-wp-dark-mode-active] .pcg-sc-k,
html.wp-dark-mode-active .pcg-sc-k,
html[data-wp-dark-mode-active] .pcg-rcard-spec-v,
html.wp-dark-mode-active .pcg-rcard-spec-v,
html[data-wp-dark-mode-active] .pcg-rcard-spec-k,
html.wp-dark-mode-active .pcg-rcard-spec-k {
    color: var(--pcg-muted, #9898a8) !important;
}

/* Mode CLAIR actif — forcer les couleurs light */
html:not([data-wp-dark-mode-active]):not(.wp-dark-mode-active) .pcgaming-product {
    background: var(--pcg-bg, #090f1f) !important;
    color: var(--pcg-tx, #f4f4f6) !important;
}

/* Supprimer les overrides de couleur de texte du thème WordPress en mode clair */
html:not([data-wp-dark-mode-active]):not(.wp-dark-mode-active) .pcgaming-product *:not(a):not(button) {
    /* On laisse les var() CSS faire leur travail — pas d'override ici */
    /* Le preset injecte les bonnes valeurs sur :root */
}
/* v2.0.0 — Suppression breadcrumb et barre de navigation */
.pcg-breadcrumb,
.woocommerce-breadcrumb,
.breadcrumb,
.pcgaming-product .woocommerce-breadcrumb,
nav.woocommerce-breadcrumb,
.pcg-page nav[aria-label="breadcrumb"] {
    display: none !important;
}
/* v2.1.3 hover zoom + mobile suggestions */
.pcg-zoom-box{cursor:zoom-in;overflow:hidden}.pcg-zoom-box img{transition:transform .18s ease,transform-origin .08s ease}.pcg-zoom-box.is-zooming img{transform:scale(2.15)!important;max-width:none!important;max-height:none!important;width:100%!important;height:100%!important;object-fit:contain!important}.pcg-import-bench-btn{display:none!important}@media(max-width:640px){.pcg-product-hero{grid-template-columns:1fr!important;padding-left:14px!important;padding-right:14px!important;gap:20px!important}.pcg-gallery-wrap{flex-direction:column-reverse!important}.pcg-thumbs{display:flex!important;flex-direction:row!important;overflow-x:auto!important}.pcg-thumb{width:62px!important;height:62px!important;flex:0 0 auto!important}.pcg-prod-name{font-size:36px!important}.pcg-price{font-size:38px!important}.pcg-tabs-wrap{padding-left:14px!important;padding-right:14px!important}.pcg-related-grid{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;padding-bottom:14px}.pcg-rcard{min-width:78vw!important;scroll-snap-align:start}.pcg-related-title{font-size:36px!important}}

/* v2.1.5 — couleurs dynamiques selon preset actif + badges propres */
.pcgaming-product{
  --ora-g: color-mix(in srgb, var(--ora) 24%, transparent) !important;
  --ora-d: color-mix(in srgb, var(--ora) 10%, transparent) !important;
  --blu-g: color-mix(in srgb, var(--blu) 22%, transparent) !important;
  --blu-d: color-mix(in srgb, var(--blu) 9%, transparent) !important;
  --bdr-h: color-mix(in srgb, var(--ora) 38%, transparent) !important;
}
/* badge override — contrôle couleur dynamique seulement */
.pcg-gal-badge{
  background: var(--pcg-badge-color, var(--ora, #ff3b5c)) !important;
}
.pcg-badge{box-shadow:none!important;border-color:color-mix(in srgb, currentColor 32%, transparent)!important;}
.pcg-badge-ora{background:var(--ora-d)!important;color:var(--ora)!important;}
.pcg-badge-blu{background:var(--blu-d)!important;color:var(--blu)!important;}
.pcg-sc:hover,.pcg-rcard:hover,.pcg-comp-row:hover,.pcg-main-img:hover,.pcg-wc-atc button.single_add_to_cart_button:hover{box-shadow:0 12px 36px color-mix(in srgb, var(--ora) 18%, transparent)!important;border-color:var(--bdr-h)!important;}
.pcg-sc-head::after{background:linear-gradient(90deg,var(--ora),var(--blu) 48%,transparent)!important;}
.pcg-related-title em{background:linear-gradient(90deg,var(--ora),var(--blu))!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;}
.pcg-rcard{border-top-color:var(--ora)!important;}
.pcg-rcard-btn{background:var(--ora)!important;box-shadow:0 4px 16px var(--ora-g)!important;}
.pcg-specs-section{display:block!important;}

/* ================================================================
   v3.1.6 — FIX related cards specs overlap + active preset color
================================================================ */
.pcg-rcard{min-height:430px!important;}
.pcg-rcard-body{display:flex!important;flex-direction:column!important;min-width:0!important;}
.pcg-rcard-specs{display:flex!important;flex-direction:column!important;gap:8px!important;margin:14px 0 0!important;min-width:0!important;width:100%!important;}
.pcg-rcard-spec{display:grid!important;grid-template-columns:22px minmax(78px,96px) minmax(0,1fr)!important;gap:9px!important;align-items:center!important;padding:8px 10px!important;min-width:0!important;width:100%!important;line-height:1.15!important;}
.pcg-rcard-spec-ico{width:17px!important;height:17px!important;min-width:17px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--ora)!important;}
.pcg-rcard-spec-k{display:block!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:10px!important;letter-spacing:.1px!important;}
.pcg-rcard-spec-v{display:block!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:left!important;font-size:11px!important;}
.pcg-rcard-footer{margin-top:auto!important;}
@media(max-width:1100px){.pcg-rcard-spec{grid-template-columns:20px minmax(70px,82px) minmax(0,1fr)!important}.pcg-rcard-spec-k,.pcg-rcard-spec-v{font-size:10px!important}}
@media(max-width:640px){.pcg-rcard{min-height:420px!important}.pcg-rcard-spec{grid-template-columns:22px minmax(82px,100px) minmax(0,1fr)!important}.pcg-rcard-spec-k,.pcg-rcard-spec-v{font-size:11px!important}}

/* ================================================================
   v2.2.0 — Architecture d'arrière-plan conforme preview
   - présentation produit : blanc/noir selon WP Dark Mode
   - Composants de Pointe : teinte du thème actif
   - description/benchmarks/expert IA : blanc/noir selon WP Dark Mode
================================================================ */
.pcgaming-wrap.pcg-page{
  --pcg-section-surface:#f7f8fc;
  --pcg-section-text:#0c0c1a;
  background:transparent!important;
  color:var(--tx)!important;
}
html[data-wp-dark-mode-active] .pcgaming-wrap.pcg-page,
html.wp-dark-mode-active .pcgaming-wrap.pcg-page,
.pcgaming-wrap.pcg-page[data-theme="dark"]{
  --pcg-section-surface:var(--bg,#090f1f);
  --pcg-section-text:var(--tx,#f4f4f6);
}
html:not([data-wp-dark-mode-active]):not(.wp-dark-mode-active) .pcgaming-wrap.pcg-page{
  --pcg-section-surface:#f7f8fc;
  --pcg-section-text:#0c0c1a;
}
.pcg-product-hero,
.pcg-tabs-wrap{
  position:relative!important;
  z-index:1!important;
  color:var(--pcg-section-text)!important;
}
.pcg-product-hero::before,
.pcg-tabs-wrap::before{
  content:''!important;
  position:absolute!important;
  top:0!important;bottom:0!important;
  left:50%!important;
  width:100vw!important;
  transform:translateX(-50%)!important;
  background:var(--pcg-section-surface)!important;
  z-index:-1!important;
  pointer-events:none!important;
}
.pcg-product-hero::before{bottom:-32px!important;}
.pcg-tabs-wrap::before{top:-32px!important;bottom:-70px!important;}
.pcg-specs-section{
  background:color-mix(in srgb, var(--ora,#ff6b1a) 12%, var(--bg,#090f1f))!important;
  box-shadow:0 0 0 100vmax color-mix(in srgb, var(--ora,#ff6b1a) 12%, var(--bg,#090f1f))!important;
  clip-path:inset(0 -100vmax)!important;
  margin-top:32px!important;
}
html:not([data-wp-dark-mode-active]):not(.wp-dark-mode-active) .pcg-specs-section{
  background:color-mix(in srgb, var(--ora,#ff6b1a) 9%, #ffffff)!important;
  box-shadow:0 0 0 100vmax color-mix(in srgb, var(--ora,#ff6b1a) 9%, #ffffff)!important;
}
.pcg-specs-section .pcg-sc{
  border-top-color:var(--ora)!important;
  box-shadow:0 12px 34px color-mix(in srgb, var(--ora,#ff6b1a) 12%, transparent)!important;
}
.pcg-specs-section .pcg-sc-head::after{background:linear-gradient(90deg,var(--ora),var(--blu),transparent)!important;}
.pcg-sc-ico{min-width:24px;text-align:center;}
.pcg-sc-lbl{text-transform:uppercase;}

/* ================================================================
   v2.2.3 — UX preview
   - Galerie sticky fidèle à la preview, sans translation JS
   - Effets d'arrière-plan JS selon preset actif
   - Zoom image activé uniquement après 1 clic
   - Quantité WooCommerce avec boutons - / + comme la preview
================================================================ */



.pcg-zoom-box{cursor:zoom-in!important;position:relative!important;}
.pcg-zoom-box::after{
  content:'Cliquer pour activer le zoom';
  position:absolute;left:12px;bottom:12px;z-index:3;
  padding:5px 9px;border-radius:5px;background:rgba(0,0,0,.62);color:#fff;
  font:700 9px/1 var(--fm);letter-spacing:1px;text-transform:uppercase;opacity:.75;pointer-events:none;transition:.2s;
}
.pcg-zoom-box.pcg-zoom-enabled::after{content:'Zoom actif';background:var(--ora);color:#000;opacity:.95;}
.pcg-zoom-box:not(.pcg-zoom-enabled).is-zooming img{transform:none!important;}
.pcg-zoom-box.pcg-zoom-enabled.is-zooming img{transform:scale(2.15)!important;}
@media(max-width:900px){.pcg-zoom-box::after{display:none!important}.pcg-zoom-box.pcg-zoom-enabled.is-zooming img{transform:none!important}}

.pcg-wc-atc form.cart .quantity.pcg-qty-enhanced{
  display:flex!important;align-items:center!important;overflow:hidden!important;border:1px solid var(--bdr)!important;border-radius:var(--r1)!important;background:var(--card)!important;height:46px!important;margin:0!important;
}
.pcg-wc-atc form.cart .quantity.pcg-qty-enhanced input.qty{
  width:42px!important;height:46px!important;min-width:42px!important;border:0!important;border-left:1px solid var(--bdr)!important;border-right:1px solid var(--bdr)!important;border-radius:0!important;background:transparent!important;color:var(--tx)!important;text-align:center!important;font:700 14px/1 var(--fp)!important;appearance:textfield!important;box-shadow:none!important;margin:0!important;padding:0!important;
}
.pcg-wc-atc form.cart .quantity.pcg-qty-enhanced input.qty::-webkit-outer-spin-button,
.pcg-wc-atc form.cart .quantity.pcg-qty-enhanced input.qty::-webkit-inner-spin-button{appearance:none!important;margin:0!important;}
.pcg-wc-qty-btn{
  width:36px!important;height:46px!important;border:0!important;background:transparent!important;color:var(--tx2)!important;display:flex!important;align-items:center!important;justify-content:center!important;font:900 18px/1 var(--fb)!important;cursor:pointer!important;transition:.2s!important;padding:0!important;margin:0!important;border-radius:0!important;
}
.pcg-wc-qty-btn:hover{background:var(--ora-d)!important;color:var(--ora)!important;}
@media(max-width:640px){.pcg-wc-atc form.cart{flex-wrap:wrap!important}.pcg-wc-atc form.cart .quantity.pcg-qty-enhanced{flex:0 0 auto!important}.pcg-wc-atc button.single_add_to_cart_button{min-width:0!important;flex:1 1 calc(100% - 120px)!important}}

/* ================================================================
   v2.2.3 — Galerie sticky preview + effets d'arrière-plan créatifs
   Remplace le faux effet parallaxe : la galerie reste sticky comme dans la prévisualisation.
================================================================ */






/* ================================================================
   v3.1.6 — Conteneur FX (position:fixed, dessous tout le contenu)
================================================================ */
/* ================================================================
   FX layer — inséré dans body par presets-frontend.js
   z-index 0 : SOUS le contenu page
   Le wrapper page en position:relative sans z-index passe naturellement dessus
================================================================ */
.pcg-theme-fx {
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
}
/* Le wrapper page passe au-dessus du FX naturellement */
.pcgaming-wrap.pcgaming-product,
.pcgaming-wrap.pcg-page {
  position: relative;
  z-index: 1;
  /* background transparent : le FX dans body est visible dessous */
  background: transparent !important;
}
/* Le BODY reçoit la couleur de fond — pas le wrapper */
body.single-product {
  /* Fond transparent : la couleur vient du ::before en z-index:-1 */
  background: transparent !important;
}
/* Couleur de fond du preset sur un pseudo-élément SOUS le canvas FX */
body.single-product::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;  /* sous le canvas FX (z-index:0) ET sous tout le contenu */
  background: var(--pcg-bg, #090f1f);
  pointer-events: none;
}

/* Canvas FX plein écran */
.pcg-fx-canvas {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

/* Orbes par défaut (utilisés quand pas d'animation spéciale) */
.pcg-fx-orb {
  position: fixed;
  border-radius: 999px;
  filter: blur(54px);
  pointer-events: none;
  will-change: transform;
  z-index: 2;
}
.pcg-fx-orb-a {
  width: 42vw; height: 42vw; left: -14vw; top: 12vh;
  background: radial-gradient(circle at 40% 40%, var(--pcg-acc, #ff6b1a), transparent 65%);
  opacity: .22;
  animation: pcgOrbA 16s ease-in-out infinite alternate;
}
.pcg-fx-orb-b {
  width: 32vw; height: 32vw; right: -11vw; top: 38vh;
  background: radial-gradient(circle at 60% 60%, var(--pcg-cyan, #1a8fff), transparent 65%);
  opacity: .18;
  animation: pcgOrbB 20s ease-in-out infinite alternate;
}
.pcg-fx-orb-c {
  width: 24vw; height: 24vw; left: 36%; bottom: 8vh;
  background: radial-gradient(circle, color-mix(in srgb, var(--pcg-acc, #ff6b1a) 50%, var(--pcg-cyan, #1a8fff)), transparent 70%);
  opacity: .14; filter: blur(70px);
  animation: pcgOrbC 24s ease-in-out infinite alternate;
}
@keyframes pcgOrbA {
  0%   { transform: translate(-20px,  0px) scale(.94); }
  33%  { transform: translate( 14px,-30px) scale(1.02); }
  66%  { transform: translate( -8px, 22px) scale(.97); }
  100% { transform: translate( 22px,-15px) scale(1.04); }
}
@keyframes pcgOrbB {
  0%   { transform: translate(  0, 18px) scale(1.02); }
  50%  { transform: translate(-18px,-28px) scale(.96); }
  100% { transform: translate( 14px, 12px) scale(1.03); }
}
@keyframes pcgOrbC {
  0%   { transform: translate(0,0) scale(1);    opacity:.14; }
  40%  { transform: translate(-22px,18px) scale(1.06); opacity:.20; }
  100% { transform: translate(16px,-20px) scale(.95);  opacity:.10; }
}
/* Raies diagonales (pour presets sans animation canvas) */
.pcg-fx-ray {
  position: fixed; height: 2px; width: 320px; border-radius: 2px;
  background: linear-gradient(90deg, transparent, var(--pcg-acc,#ff6b1a) 40%, var(--pcg-cyan,#1a8fff) 60%, transparent);
  filter: blur(.5px); pointer-events: none; opacity: 0;
}
.pcg-fx-ray-a { left:8%; top:24%; transform:rotate(-16deg); animation:pcgRay 9s ease-in-out infinite; }
.pcg-fx-ray-b { right:10%; top:58%; transform:rotate(12deg); animation:pcgRay 9s ease-in-out infinite; animation-delay:-4.5s; }
@keyframes pcgRay {
  0%,100% { opacity:0; filter:blur(1px); }
  30%,70% { opacity:.24; filter:blur(.2px); }
  50%     { opacity:.16; filter:blur(.4px); }
}
/* Grille perspective */
.pcg-fx-grid {
  position: fixed; inset: -25%;
  background-image:
    linear-gradient(color-mix(in srgb, var(--pcg-acc,#ff6b1a) 28%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--pcg-cyan,#1a8fff) 24%, transparent) 1px, transparent 1px);
  background-size: 60px 60px;
  transform: perspective(1000px) rotateX(58deg) translateY(0);
  transform-origin: 50% 100%;
  mask-image: linear-gradient(to bottom, transparent 0%, black 20%, black 70%, transparent 100%);
  opacity: .10; pointer-events: none;
  animation: pcgGrid 22s linear infinite;
  z-index: 2;
}
@keyframes pcgGrid {
  from { background-position: 0 0, 0 0; }
  to   { background-position: 0 120px, 120px 0; }
}
/* Bruit */
.pcg-fx-noise {
  position: fixed; inset: 0; pointer-events: none;
  background-image: radial-gradient(circle, color-mix(in srgb, var(--pcg-acc,#ff6b1a) 80%, transparent) 1px, transparent 2px);
  background-size: 28px 28px;
  opacity: .06; animation: pcgNoise 30s linear infinite;
  z-index: 2;
}
@keyframes pcgNoise {
  from { background-position: 0 0; }
  to   { background-position: 28px 28px; }
}

/* ================================================================
   v3.1.6 — Galerie sticky CSS pur
================================================================ */
.pcg-gallery {
  position: sticky !important;
  top: calc(var(--pcg-sticky-top, 96px) + 20px) !important;
  align-self: start !important;
  height: fit-content !important;
}
@media (max-width: 900px) {
  .pcg-gallery { position: static !important; top: auto !important; }
}

/* Zoom galerie */
.pcg-zoom-box { cursor: zoom-in !important; position: relative !important; overflow: hidden !important; }
.pcg-zoom-box::after {
  content: 'Clic pour zoomer';
  position: absolute; left: 12px; bottom: 12px; z-index: 3;
  padding: 5px 9px; border-radius: 5px; background: rgba(0,0,0,.6); color: #fff;
  font: 700 9px/1 var(--fm, monospace); letter-spacing: 1px; text-transform: uppercase;
  opacity: .7; pointer-events: none; transition: .2s;
}
.pcg-zoom-box.pcg-zoom-enabled::after {
  content: 'Zoom actif'; background: var(--pcg-acc, #ff6b1a); color: #000; opacity: 1;
}
.pcg-zoom-box.pcg-zoom-enabled img {
  transition: transform .2s ease, transform-origin .1s ease;
}
@media (max-width: 900px) { .pcg-zoom-box::after { display: none !important; } }

/* Suppression breadcrumb */
.pcg-breadcrumb,
.woocommerce-breadcrumb,
nav.woocommerce-breadcrumb { display: none !important; }

/* Suppression watermarks galerie */
.pcg-main-img::before, .pcg-main-img::after,
.woocommerce-product-gallery::before, .woocommerce-product-gallery::after,
.woocommerce-product-gallery__image::before, .woocommerce-product-gallery__image::after {
  display: none !important; content: none !important;
}

/* Mobile FX atténués */
@media (max-width: 640px) {
  .pcg-fx-orb-a { opacity: .14 !important; }
  .pcg-fx-orb-b { opacity: .10 !important; }
  .pcg-fx-orb-c { opacity: .08 !important; }
  .pcg-fx-ray   { display: none !important; }
  .pcg-fx-grid  { opacity: .06 !important; }
  .pcg-fx-noise { display: none !important; }
  .pcg-fx-canvas { opacity: .5 !important; }
}

/* ================================================================
   v3.2.7 — Light surfaces, transparence réelle et correctifs description
   - supprime les anciens fonds blancs/pastel qui bloquaient les FX
   - garde seulement le hero produit + tabs comme surfaces solides
   - laisse .pcg-specs-section et .pcg-related totalement traversants
================================================================ */

/* Base page : le fond vient du preset/WP Dark Mode, pas des sections. */
/* v3.4.0: body::before duplicate removed — see single rule above */

body.single-product .pcgaming-wrap.pcg-page,
body.single-product .pcgaming-wrap.pcgaming-product,
.pcgaming-wrap.pcg-page,
.pcgaming-wrap.pcgaming-product {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Surfaces dures uniquement là où elles sont voulues : hero + zone tabs. */
:root {
  --pcg-solid-surface: var(--pcg-bg, var(--bg, #ffffff));
  --pcg-solid-text: var(--pcg-tx, var(--tx, #0b1020));
}
html[data-theme="dark"],
html[data-wp-dark-mode-active],
html.wp-dark-mode-active,
html[data-pcg-dark="1"],
body.wp-dark-mode-active,
body.pcg-dark,
body.pcgaming-dark {
  --pcg-solid-surface: var(--pcg-bg, var(--bg, #090f1f));
  --pcg-solid-text: var(--pcg-tx, var(--tx, #f4f4f6));
}
html:not([data-theme="dark"]):not([data-wp-dark-mode-active]):not(.wp-dark-mode-active):not([data-pcg-dark="1"])
body.single-product:not(.wp-dark-mode-active):not(.pcg-dark):not(.pcgaming-dark) {
  --pcg-solid-surface: var(--pcg-bg, var(--bg, #ffffff));
  --pcg-solid-text: var(--pcg-tx, var(--tx, #0b1020));
}

body.single-product #primary,
body.single-product #main,
body.single-product main.site-main,
body.single-product .site-main,
body.single-product .content-area,
body.single-product .woocommerce,
body.single-product .entry-content,
body.single-product div.product {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.single-product .pcg-product-hero,
body.single-product .pcgaming-product .pcg-product-hero {
  margin-top: 0 !important;
  padding-top: 0 !important;
  background: var(--pcg-solid-surface) !important;
  color: var(--pcg-solid-text) !important;
  box-shadow:
    0 -120px 0 100vmax var(--pcg-solid-surface),
    0 0 0 100vmax var(--pcg-solid-surface) !important;
  clip-path: inset(-120px -100vmax 0 -100vmax) !important;
  isolation: isolate !important;
}
body.single-product .pcg-product-hero::before,
body.single-product .pcg-product-hero::after,
body.single-product .pcgaming-product .pcg-product-hero::before,
body.single-product .pcgaming-product .pcg-product-hero::after {
  content: none !important;
  display: none !important;
}

body.single-product .pcg-tabs-wrap,
body.single-product .pcgaming-product .pcg-tabs-wrap {
  background: var(--pcg-solid-surface) !important;
  color: var(--pcg-solid-text) !important;
  box-shadow: 0 0 0 100vmax var(--pcg-solid-surface) !important;
  clip-path: inset(0 -100vmax) !important;
  margin-top: 0 !important;
  isolation: isolate !important;
}
body.single-product .pcg-tabs-wrap::before,
body.single-product .pcg-tabs-wrap::after,
body.single-product .pcgaming-product .pcg-tabs-wrap::before,
body.single-product .pcgaming-product .pcg-tabs-wrap::after {
  content: none !important;
  display: none !important;
}

/* Les sections demandées sont 100% transparentes, y compris leurs wrappers. */
body.single-product .pcg-specs-section,
body.single-product .pcg-specs-section > .pcg-sec-cnt,
body.single-product .pcg-specs-section .pcg-sec-hd,
body.single-product .pcg-specs-section .pcg-specs-grid,
body.single-product .pcg-related,
body.single-product .pcg-related > .pcg-sec-cnt,
body.single-product .pcg-related .pcg-related-hd,
body.single-product .pcg-related .pcg-related-grid,
body.single-product .pcgaming-product .pcg-specs-section,
body.single-product .pcgaming-product .pcg-specs-section > .pcg-sec-cnt,
body.single-product .pcgaming-product .pcg-specs-section .pcg-sec-hd,
body.single-product .pcgaming-product .pcg-specs-section .pcg-specs-grid,
body.single-product .pcgaming-product .pcg-related,
body.single-product .pcgaming-product .pcg-related > .pcg-sec-cnt,
body.single-product .pcgaming-product .pcg-related .pcg-related-hd,
body.single-product .pcgaming-product .pcg-related .pcg-related-grid,
.pcgaming-wrap.pcg-page .pcg-specs-section,
.pcgaming-wrap.pcg-page .pcg-specs-section > .pcg-sec-cnt,
.pcgaming-wrap.pcg-page .pcg-specs-section .pcg-sec-hd,
.pcgaming-wrap.pcg-page .pcg-specs-section .pcg-specs-grid,
.pcgaming-wrap.pcg-page .pcg-related,
.pcgaming-wrap.pcg-page .pcg-related > .pcg-sec-cnt,
.pcgaming-wrap.pcg-page .pcg-related .pcg-related-hd,
.pcgaming-wrap.pcg-page .pcg-related .pcg-related-grid {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  isolation: auto !important;
}

body.single-product .pcg-specs-section::before,
body.single-product .pcg-specs-section::after,
body.single-product .pcg-specs-section > .pcg-sec-cnt::before,
body.single-product .pcg-specs-section > .pcg-sec-cnt::after,
body.single-product .pcg-specs-section .pcg-sec-hd::before,
body.single-product .pcg-specs-section .pcg-sec-hd::after,
body.single-product .pcg-specs-section .pcg-specs-grid::before,
body.single-product .pcg-specs-section .pcg-specs-grid::after,
body.single-product .pcg-related::before,
body.single-product .pcg-related::after,
body.single-product .pcg-related > .pcg-sec-cnt::before,
body.single-product .pcg-related > .pcg-sec-cnt::after,
body.single-product .pcg-related .pcg-related-hd::before,
body.single-product .pcg-related .pcg-related-hd::after,
body.single-product .pcg-related .pcg-related-grid::before,
body.single-product .pcg-related .pcg-related-grid::after {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.single-product .pcg-related {
  border-top-color: transparent !important;
  border-bottom: 0 !important;
}

/* Les cartes restent lisibles, mais elles ne repeignent jamais tout le bloc. */
body.single-product .pcg-specs-section .pcg-sc,
body.single-product .pcg-related .pcg-rcard {
  background: color-mix(in srgb, var(--card, rgba(255,255,255,.9)) 86%, transparent) !important;
  background-image: none !important;
  clip-path: none !important;
}
body.single-product .pcg-specs-section .pcg-sc-head,
body.single-product .pcg-related .pcg-rcard-img {
  background: color-mix(in srgb, var(--bg2, rgba(0,0,0,.12)) 88%, transparent) !important;
}

/* Le calque FX du preset doit être visible derrière les sections transparentes. */
body.single-product .pcg-theme-fx,
body.single-product .pcg-fx-canvas,
body.single-product .pcg-fx-orb,
body.single-product .pcg-fx-orb-a,
body.single-product .pcg-fx-orb-b,
body.single-product .pcg-fx-orb-c,
body.single-product .pcg-fx-ray,
body.single-product .pcg-fx-grid,
body.single-product .pcg-fx-noise {
  visibility: visible !important;
  pointer-events: none !important;
}
html:not([data-theme="dark"]) body.single-product .pcg-theme-fx,
html:not([data-theme="dark"]) body.single-product .pcg-fx-canvas {
  opacity: .72 !important;
}

@media(max-width:640px){
  body.single-product .pcg-product-hero,
  body.single-product .pcgaming-product .pcg-product-hero { padding-top: 8px !important; }
}

/* =========================================================
   v3.2.8 — Fix hero 3.2.6 + light mode propre
   - le hero redevient full-width comme en 3.2.6
   - en mode clair hero + tabs sont blancs
   - en mode sombre hero + tabs suivent WP Dark Mode
   - specs/related restent transparentes
========================================================= */

/* Surface solide par défaut : contrôlée par le thème / WP Dark Mode */
body.single-product .pcgaming-product{
  --pcg-solid-surface: var(--pcg-bg, var(--bg, #090f1f));
  --pcg-solid-text: var(--pcg-tx, var(--tx, #f4f4f6));
}

/* Mode clair réel uniquement */
html:not([data-theme="dark"]):not([data-wp-dark-mode-active]):not(.wp-dark-mode-active)
body.single-product:not(.wp-dark-mode-active):not(.pcg-dark):not(.pcgaming-dark) .pcgaming-product{
  --pcg-solid-surface:#ffffff!important;
  --pcg-solid-text:#0b1020!important;
}

/* HERO — restauration comportement 3.2.6 */
body.single-product .pcg-product-hero,
body.single-product .pcgaming-product .pcg-product-hero{
  background:var(--pcg-solid-surface)!important;
  background-color:var(--pcg-solid-surface)!important;
  color:var(--pcg-solid-text)!important;

  /* IMPORTANT : remet le fond full-width */
  box-shadow:
    0 -120px 0 100vmax var(--pcg-solid-surface),
    0 0 0 100vmax var(--pcg-solid-surface)!important;

  clip-path:inset(-120px -100vmax 0 -100vmax)!important;
  margin-top:0!important;
  isolation:isolate!important;
}

/* TABS — surface solide full-width aussi */
body.single-product .pcg-tabs-wrap,
body.single-product .pcgaming-product .pcg-tabs-wrap{
  background:var(--pcg-solid-surface)!important;
  background-color:var(--pcg-solid-surface)!important;
  color:var(--pcg-solid-text)!important;

  box-shadow:0 0 0 100vmax var(--pcg-solid-surface)!important;
  clip-path:inset(0 -100vmax)!important;

  margin-top:0!important;
  isolation:isolate!important;
}

/* On ne coupe PAS les pseudo-elements du hero.
   Sinon certains effets/presets peuvent disparaître. */
body.single-product .pcg-tabs-wrap::before,
body.single-product .pcg-tabs-wrap::after,
body.single-product .pcgaming-product .pcg-tabs-wrap::before,
body.single-product .pcgaming-product .pcg-tabs-wrap::after{
  display:none!important;
  content:none!important;
  background:none!important;
}

/* Specs + related : ne jamais repeindre le fond de section */
body.single-product .pcg-specs-section,
body.single-product .pcg-specs-section > .pcg-sec-cnt,
body.single-product .pcg-specs-section .pcg-sec-hd,
body.single-product .pcg-specs-section .pcg-specs-grid,
body.single-product .pcg-related,
body.single-product .pcg-related > .pcg-sec-cnt,
body.single-product .pcg-related .pcg-related-hd,
body.single-product .pcg-related .pcg-related-grid,
body.single-product .pcg-related .pcg-related-inner,
body.single-product .pcg-related .pcg-related-wrap,
body.single-product .pcg-related .pcg-related-bg,
body.single-product .pcgaming-product .pcg-specs-section,
body.single-product .pcgaming-product .pcg-related{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* On enlève aussi les faux fonds en pseudo-elements */
body.single-product .pcg-specs-section::before,
body.single-product .pcg-specs-section::after,
body.single-product .pcg-specs-section > .pcg-sec-cnt::before,
body.single-product .pcg-specs-section > .pcg-sec-cnt::after,
body.single-product .pcg-specs-section .pcg-sec-hd::before,
body.single-product .pcg-specs-section .pcg-sec-hd::after,
body.single-product .pcg-specs-section .pcg-specs-grid::before,
body.single-product .pcg-specs-section .pcg-specs-grid::after,
body.single-product .pcg-related::before,
body.single-product .pcg-related::after,
body.single-product .pcg-related > .pcg-sec-cnt::before,
body.single-product .pcg-related > .pcg-sec-cnt::after,
body.single-product .pcg-related .pcg-related-hd::before,
body.single-product .pcg-related .pcg-related-hd::after,
body.single-product .pcg-related .pcg-related-grid::before,
body.single-product .pcg-related .pcg-related-grid::after{
  display:none!important;
  content:none!important;
  background:none!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Sécurité affichage description unicode */
body.single-product .pcg-panel-desc,
body.single-product .pcg-desc-p,
body.single-product .pcg-desc-lead,
body.single-product .pcg-desc-callout,
body.single-product .pcg-desc-hl{
  unicode-bidi:isolate!important;
}

/* =========================================================
   v3.3.0 — Patches ciblés stable
   - anti-débordement horizontal mobile
   - galerie swipable / touch-friendly
========================================================= */
@media(max-width:900px){
  html,
  body{
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  body.single-product .pcgaming-product,
  body.single-product .pcg-page{
    max-width:100vw !important;
    overflow-x:clip !important;
  }
  body.single-product .pcgaming-product *,
  body.single-product .pcgaming-product *::before,
  body.single-product .pcgaming-product *::after{
    box-sizing:border-box !important;
  }
  body.single-product .pcg-product-hero,
  body.single-product .pcgaming-product .pcg-product-hero,
  body.single-product .pcg-tabs-wrap,
  body.single-product .pcgaming-product .pcg-tabs-wrap,
  body.single-product .pcg-gallery,
  body.single-product .pcg-gallery-wrap,
  body.single-product .pcg-prod-info,
  body.single-product .pcg-tab-panel,
  body.single-product .pcg-comp-list,
  body.single-product .pcg-wc-atc,
  body.single-product .pcg-wc-atc form.cart{
    min-width:0 !important;
    max-width:100% !important;
  }
  body.single-product .pcg-gallery-wrap{
    width:100% !important;
  }
  body.single-product .pcg-main-img{
    min-width:0 !important;
    max-width:100% !important;
    touch-action:pan-y pinch-zoom !important;
    -webkit-user-select:none !important;
    user-select:none !important;
  }
  body.single-product .pcg-main-img img,
  body.single-product .pcg-zoom-box img{
    display:block !important;
    max-width:100% !important;
    max-height:100% !important;
    object-fit:contain !important;
    box-sizing:border-box !important;
  }
  body.single-product .pcg-prod-name,
  body.single-product .pcg-price,
  body.single-product .pcg-comp-row,
  body.single-product .pcg-comp-k,
  body.single-product .pcg-comp-v,
  body.single-product .pcg-desc-p,
  body.single-product .pcg-desc-lead,
  body.single-product .pcg-desc-callout,
  body.single-product .pcg-bitem,
  body.single-product .pcg-bitem-game,
  body.single-product .pcg-bitem-meta{
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
}
@media(max-width:640px){
  body.single-product .pcg-product-hero,
  body.single-product .pcgaming-product .pcg-product-hero{
    grid-template-columns:minmax(0,1fr) !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }
  body.single-product .pcg-tabs-wrap,
  body.single-product .pcgaming-product .pcg-tabs-wrap{
    padding-left:12px !important;
    padding-right:12px !important;
  }
  body.single-product .pcg-thumbs{
    display:flex !important;
    flex-direction:row !important;
    overflow-x:auto !important;
    overscroll-behavior-x:contain !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x proximity !important;
    max-width:100% !important;
    padding-bottom:2px !important;
  }
  body.single-product .pcg-thumb{
    flex:0 0 58px !important;
    width:58px !important;
    height:58px !important;
    scroll-snap-align:start !important;
  }
  body.single-product .pcg-zoom-box.pcg-zoom-enabled img,
  body.single-product .pcg-zoom-box.is-zooming img{
    transform:none !important;
    max-width:100% !important;
    max-height:100% !important;
  }
}


/* ================================================================
   v3.4.0 — OVERRIDE FINAL : sections transparentes sans exception
   Garantit que le FX canvas est visible partout
================================================================ */
.pcg-specs-section,
body.single-product .pcg-specs-section,
body.single-product .pcgaming-product .pcg-specs-section {
  background: transparent !important;
  background-color: transparent !important;
}
.pcg-related,
body.single-product .pcg-related,
body.single-product .pcgaming-product .pcg-related {
  background: transparent !important;
  background-color: transparent !important;
}
.pcg-product-hero,
body.single-product .pcg-product-hero {
  background: transparent !important;
  background-color: transparent !important;
}
.pcg-tabs-wrap,
body.single-product .pcg-tabs-wrap {
  background: transparent !important;
  background-color: transparent !important;
}
.pcgaming-wrap.pcgaming-product,
.pcgaming-wrap.pcg-page,
body.single-product .pcgaming-product {
  background: transparent !important;
  background-color: transparent !important;
}

/* =========================================================
   v3.4.4 — highlights frontend/backend alignés
   Le titre + sous-texte des highlights doivent rester visibles.
========================================================= */
body.single-product .pcg-desc-hl{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:96px!important;
  gap:4px!important;
}
body.single-product .pcg-desc-hl-ico{
  display:block!important;
  font-size:24px!important;
  line-height:1!important;
  margin:0 0 6px!important;
}
body.single-product .pcg-desc-hl-t{
  display:block!important;
  font-weight:900!important;
  color:var(--tx, var(--pcg-tx, #f4f4f6))!important;
  line-height:1.15!important;
  text-align:center!important;
}
body.single-product .pcg-desc-hl-s{
  display:block!important;
  color:var(--tx2, var(--pcg-tx2, #b8c4d6))!important;
  line-height:1.35!important;
  text-align:center!important;
}
@media(max-width:640px){
  body.single-product .pcg-desc-hl-grid{ grid-template-columns:1fr!important; }
}

/* =========================================================
   v3.4.5 — Highlights frontend sur une seule ligne
   - desktop/tablette : 4 cartes alignées sur la même rangée
   - mobile : une seule rangée scrollable/swipable, sans retour ligne
========================================================= */
body.single-product .pcg-desc-hl-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:12px!important;
  align-items:stretch!important;
  width:100%!important;
}
body.single-product .pcg-desc-hl{
  min-width:0!important;
  width:100%!important;
  height:100%!important;
}
body.single-product .pcg-desc-hl-ico,
body.single-product .pcg-desc-hl-t,
body.single-product .pcg-desc-hl-s{
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

@media(max-width:900px){
  body.single-product .pcg-desc-hl-grid{
    grid-template-columns:repeat(4,minmax(160px,1fr))!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x proximity!important;
    padding-bottom:8px!important;
  }
  body.single-product .pcg-desc-hl{
    scroll-snap-align:start!important;
  }
}

@media(max-width:640px){
  body.single-product .pcg-desc-hl-grid{
    grid-template-columns:none!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(220px,82vw)!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x mandatory!important;
    overscroll-behavior-x:contain!important;
  }
  body.single-product .pcg-desc-hl{
    scroll-snap-align:start!important;
  }
}

/* =========================================================
   v3.4.7 — Bouton favoris produit compatible homepage-manager
   Classe utilisée : .sh-fav-btn / storage localStorage ev_shop_favs
========================================================= */
body.single-product .pcg-wc-atc{
  display:flex!important;
  align-items:flex-start!important;
  gap:9px!important;
  margin-bottom:16px!important;
}
body.single-product .pcg-wc-atc form.cart{
  flex:1 1 auto!important;
  min-width:0!important;
  margin:0!important;
}
body.single-product .pcg-product-fav-btn.sh-fav-btn{
  width:46px!important;
  height:46px!important;
  flex:0 0 46px!important;
  display:inline-grid!important;
  place-items:center!important;
  border:1px solid var(--bdr)!important;
  border-radius:var(--r1)!important;
  background:var(--card)!important;
  color:var(--tx2)!important;
  cursor:pointer!important;
  transition:transform .18s ease, border-color .18s ease, color .18s ease, background .18s ease, box-shadow .18s ease!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
}
body.single-product .pcg-product-fav-btn.sh-fav-btn svg{
  width:19px!important;
  height:19px!important;
  display:block!important;
}
body.single-product .pcg-product-fav-btn.sh-fav-btn:hover,
body.single-product .pcg-product-fav-btn.sh-fav-btn.is-on,
body.single-product .pcg-product-fav-btn.sh-fav-btn.on{
  border-color:var(--red, #ff3355)!important;
  color:var(--red, #ff3355)!important;
  background:color-mix(in srgb, var(--red, #ff3355) 12%, var(--card))!important;
  box-shadow:0 8px 22px color-mix(in srgb, var(--red, #ff3355) 18%, transparent)!important;
}
body.single-product .pcg-product-fav-btn.sh-fav-btn.burst{animation:pcgFavBurst .38s ease!important;}
@keyframes pcgFavBurst{50%{transform:scale(1.16)}100%{transform:scale(1)}}
@media(max-width:640px){
  body.single-product .pcg-wc-atc{align-items:stretch!important;}
  body.single-product .pcg-wc-atc form.cart{flex:1 1 calc(100% - 55px)!important;}
  body.single-product .pcg-product-fav-btn.sh-fav-btn{height:46px!important;align-self:flex-start!important;}
}

/* =========================================================
   v3.4.8 — Fix affichage achats rapides WooCommerce
   Les boutons Google Pay / Link / Stripe / Klarna restent sous
   Ajouter au panier et ne se mélangent plus avec le bouton favoris.
========================================================= */
body.single-product .pcg-wc-atc.pcg-buybox-fixed{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 46px!important;
  gap:9px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart{
  grid-column:1!important;
  grid-row:1!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  overflow:visible!important;
}
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-product-fav-btn.sh-fav-btn{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  margin:0!important;
}
body.single-product .pcg-cart-primary-row{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
}
body.single-product .pcg-cart-primary-row .quantity{
  flex:0 0 auto!important;
  margin:0!important;
}
body.single-product .pcg-cart-primary-row .single_add_to_cart_button{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payment-row,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .wc-stripe-payment-request-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > #wc-stripe-payment-request-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .wc-stripe-payment-request-button,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > #wc-stripe-payment-request-button,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .wc-block-components-express-payment,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .express-payment-methods,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .wcpay-payment-request-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .ppc-button-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [class*="payment-request"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [id*="payment-request"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [class*="express"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [id*="express"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [class*="klarna"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [id*="klarna"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [class*="link"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > [id*="link"]{
  display:block!important;
  clear:both!important;
  float:none!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:10px 0 0!important;
  padding-left:0!important;
  padding-right:0!important;
  z-index:1!important;
}
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart iframe,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart [role="button"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart .StripeElement,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart .__PrivateStripeElement{
  max-width:100%!important;
}

@media(max-width:640px){
  body.single-product .pcg-wc-atc.pcg-buybox-fixed{
    grid-template-columns:minmax(0,1fr) 46px!important;
  }
  body.single-product .pcg-cart-primary-row{
    gap:7px!important;
  }
  body.single-product .pcg-cart-primary-row .single_add_to_cart_button{
    font-size:13px!important;
    letter-spacing:.8px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
}


/* =========================================================
   v3.4.10 — Achats rapides en vrais blocs de 2 moyens de paiement
   Google Pay / Link / Stripe / Klarna sont affichés dans une
   grille propre sous le bouton panier, 2 par ligne.
========================================================= */
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:10px 0 0!important;
  padding:0!important;
  clear:both!important;
}
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid.is-empty{
  display:none!important;
}
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid > .pcg-express-payment-row,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid > *{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:none!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  grid-column:auto!important;
  justify-self:stretch!important;
  align-self:stretch!important;
  z-index:1!important;
}
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payment-row{
  width:100%!important;
  max-width:100%!important;
  margin:10px 0 0!important;
}
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid iframe,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid [role="button"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid button,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid .StripeElement,
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid .__PrivateStripeElement{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

@media(max-width:520px){
  body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
}


/* =========================================================
   v3.4.10 — Correctif fort : les boutons express internes
   passent aussi en grille 2 colonnes.
   Cas visé : WooPayments/Stripe peut mettre Google Pay + Link
   dans un seul wrapper, donc la grille parent seule ne suffit pas.
========================================================= */
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}

/* Si un wrapper contient lui-même plusieurs moyens de paiement, il devient une sous-grille. */
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .pcg-express-payment-row,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .pcg-express-inner-grid,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .pcg-express-inner-grid,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wc-block-components-express-payment,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wc-block-components-express-payment__event-buttons,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .express-payment-methods,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wcpay-payment-request-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wc-stripe-payment-request-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid [class*="payment-request"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid [class*="express-payment"]{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:none!important;
}

/* Les vrais boutons/iframes deviennent des cartes de paiement. */
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .pcg-express-payment-card,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid button,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid [role="button"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid iframe,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .StripeElement,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .__PrivateStripeElement{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  margin:0!important;
  display:block!important;
  box-sizing:border-box!important;
}

/* Empêche les styles inline des plugins de reprendre toute la ligne inutilement. */
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > div:has(> button),
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > div:has(> iframe),
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .pcg-express-inner-grid > div{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

@media(max-width:520px){
  body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .pcg-express-payment-row,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .pcg-express-inner-grid,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .pcg-express-inner-grid,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wc-block-components-express-payment,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wc-block-components-express-payment__event-buttons,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .express-payment-methods,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wcpay-payment-request-wrapper,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .wc-stripe-payment-request-wrapper{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   v3.4.11 — Paiements rapides : vraie grille 2 colonnes
   Le bug venait de .pcg-express-payment-row forcé en grid-column:1/-1.
   Maintenant chaque moyen de paiement direct occupe une colonne.
========================================================= */
body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
  width:100%!important;
}

body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .pcg-express-payment-row,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .wcpay-payment-request-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .wc-stripe-payment-request-wrapper,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .wc-block-components-express-payment,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .express-payment-methods,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > [class*="payment-request"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > [class*="express-payment"]{
  grid-column:auto!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:none!important;
}

/* Seuls les wrappers contenant plusieurs méthodes internes prennent toute la ligne et créent une sous-grille. */
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .pcg-has-multiple-payments,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .pcg-has-multiple-payments{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
}

body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .pcg-express-payment-card,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid button,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid [role="button"],
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid iframe,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .StripeElement,
body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .__PrivateStripeElement{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  box-sizing:border-box!important;
}

@media(max-width:520px){
  body.single-product .pcg-wc-atc.pcg-buybox-fixed form.cart > .pcg-express-payments-grid,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid > .pcg-has-multiple-payments,
  body.single-product .pcg-wc-atc.pcg-buybox-fixed .pcg-express-payments-grid .pcg-has-multiple-payments{
    grid-template-columns:1fr!important;
  }
}


/* v3.4.12 — Description : listes IA lisibles et verticales */
body.single-product .pcg-desc-ul{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;columns:auto!important;column-count:1!important;gap:9px!important;width:100%!important;}
body.single-product .pcg-desc-ul li{display:flex!important;width:100%!important;max-width:100%!important;break-inside:avoid!important;}

/* v3.5.0 — Highlights intelligents + UX description */
body.single-product .pcg-desc-hl-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
body.single-product .pcg-desc-hl{
  min-width:0!important;
  overflow:hidden!important;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease!important;
}
body.single-product .pcg-desc-hl:hover{
  transform:translateY(-3px)!important;
  border-color:var(--ora)!important;
  box-shadow:0 14px 28px rgba(0,0,0,.12)!important;
}
body.single-product .pcg-desc-hl-t,
body.single-product .pcg-desc-hl-s{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:anywhere!important;
}
@media(max-width:760px){
  body.single-product .pcg-desc-hl-grid{
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:8px!important;
  }
  body.single-product .pcg-desc-hl{
    flex:0 0 78%!important;
    scroll-snap-align:start!important;
  }
}


/* ================================================================
   v3.6.0 — Wishlist proof, suggestions intelligentes, bloc E-Ven, UX dashboard
================================================================ */
.pcg-badge-popular{background:rgba(249,115,22,.12)!important;color:#f97316!important;border-color:rgba(249,115,22,.35)!important;}
.pcg-wishlist-proof{margin:-6px 0 14px;padding:9px 12px;border:1px solid rgba(255,51,85,.18);border-radius:12px;background:rgba(255,51,85,.07);color:var(--tx2);font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:4px;}
.pcg-wishlist-proof strong{color:#ff3355;font-family:var(--fm,monospace);}
.pcg-rcard-reason{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin:-4px 0 10px;padding:5px 9px;border-radius:999px;background:rgba(255,107,26,.10);border:1px solid rgba(255,107,26,.22);color:var(--ora);font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pcg-even-compare{padding:36px 0;background:transparent;position:relative;z-index:1;}
.pcg-even-compare-card{border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:28px;background:linear-gradient(135deg,rgba(255,107,26,.08),rgba(26,143,255,.06));box-shadow:0 18px 50px rgba(0,0,0,.16);}
.pcg-even-compare-head span{font-family:var(--fm);font-size:10px;color:var(--ora);letter-spacing:3px;text-transform:uppercase;font-weight:800;}
.pcg-even-compare-head h2{font-family:var(--fh);font-size:clamp(28px,4vw,46px);font-weight:900;font-style:italic;margin:10px 0;color:var(--tx);}
.pcg-even-compare-head p{color:var(--tx2);max-width:760px;line-height:1.7;margin:0 0 18px;}
.pcg-even-compare-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.pcg-even-compare-grid div{padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.04);}
.pcg-even-compare-grid b{display:block;color:var(--tx);font-size:14px;margin-bottom:7px;}
.pcg-even-compare-grid small{display:block;color:var(--tx2);line-height:1.55;font-size:12px;}
@media(max-width:900px){.pcg-even-compare-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pcg-even-compare-card{padding:18px}.pcg-even-compare-grid{grid-template-columns:1fr}.pcg-wishlist-proof{display:flex;width:100%;justify-content:center}}


/* v3.6.2 — Wishlist proof caché si compteur réel à zéro */
.pcg-wishlist-proof-hidden,
.pcg-wishlist-proof[hidden],
.pcg-wishlist-proof[data-fav-count="0"]{display:none!important;}


/* ================================================================
   v3.8.1 — Composants de Pointe : rendu final aligné sur preview-v1.7
   - 6 cartes homogènes
   - 4 lignes fixes par carte
   - en-têtes / espacements protégés contre les thèmes WooCommerce
================================================================ */
body.single-product .pcgaming-product .pcg-specs-section,
.pcgaming-wrap.pcg-page .pcg-specs-section{
  display:block!important;
  visibility:visible!important;
  padding:80px 0!important;
  margin-top:0!important;
  position:relative!important;
  z-index:1!important;
}
body.single-product .pcgaming-product .pcg-specs-section .pcg-sec-cnt,
.pcgaming-wrap.pcg-page .pcg-specs-section .pcg-sec-cnt{
  max-width:1280px!important;
  margin:0 auto!important;
  padding:0 60px!important;
}
body.single-product .pcgaming-product .pcg-specs-section .pcg-sec-hd,
.pcgaming-wrap.pcg-page .pcg-specs-section .pcg-sec-hd{
  text-align:center!important;
  margin:0 0 50px!important;
}
body.single-product .pcgaming-product .pcg-specs-section .pcg-sec-kicker,
.pcgaming-wrap.pcg-page .pcg-specs-section .pcg-sec-kicker{
  display:block!important;
  margin-bottom:11px!important;
  color:var(--ora)!important;
  font:600 9px/1 var(--fm)!important;
  letter-spacing:4px!important;
  text-transform:uppercase!important;
}
body.single-product .pcgaming-product .pcg-specs-section .pcg-sec-title,
.pcgaming-wrap.pcg-page .pcg-specs-section .pcg-sec-title{
  margin:0 0 11px!important;
  color:var(--tx)!important;
  font-family:var(--fh)!important;
  font-size:clamp(30px,4.5vw,52px)!important;
  font-weight:900!important;
  font-style:italic!important;
  line-height:1!important;
  letter-spacing:.5px!important;
}
body.single-product .pcgaming-product .pcg-specs-section .pcg-sec-sub,
.pcgaming-wrap.pcg-page .pcg-specs-section .pcg-sec-sub{
  max-width:500px!important;
  margin:0 auto!important;
  color:var(--tx2)!important;
  font-size:15px!important;
  line-height:1.55!important;
}
body.single-product .pcgaming-product .pcg-specs-grid,
.pcgaming-wrap.pcg-page .pcg-specs-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
  list-style:none!important;
}
body.single-product .pcgaming-product .pcg-specs-grid .pcg-sc,
.pcgaming-wrap.pcg-page .pcg-specs-grid .pcg-sc{
  display:flex!important;
  flex-direction:column!important;
  min-height:202px!important;
  background:var(--card)!important;
  border:1px solid var(--bdr)!important;
  border-radius:var(--r3)!important;
  overflow:hidden!important;
  box-shadow:none!important;
  transition:border-color .22s,transform .22s,box-shadow .22s!important;
}
body.single-product .pcgaming-product .pcg-specs-grid .pcg-sc:hover,
.pcgaming-wrap.pcg-page .pcg-specs-grid .pcg-sc:hover{
  border-color:rgba(255,107,26,.45)!important;
  transform:translateY(-4px)!important;
  box-shadow:0 12px 36px rgba(0,0,0,.3),0 0 28px var(--ora-d)!important;
}
body.single-product .pcgaming-product .pcg-sc-head,
.pcgaming-wrap.pcg-page .pcg-sc-head{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  padding:13px 18px!important;
  background:var(--bg2)!important;
  border-bottom:1px solid var(--bdr)!important;
  position:relative!important;
  min-height:58px!important;
}
body.single-product .pcgaming-product .pcg-sc-head::after,
.pcgaming-wrap.pcg-page .pcg-sc-head::after{
  content:''!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:2px!important;
  background:linear-gradient(90deg,var(--ora),var(--blu) 40%,transparent)!important;
}
body.single-product .pcgaming-product .pcg-sc-ico,
.pcgaming-wrap.pcg-page .pcg-sc-ico{
  flex:0 0 24px!important;
  min-width:24px!important;
  font-size:20px!important;
  line-height:1!important;
  text-align:center!important;
}
body.single-product .pcgaming-product .pcg-sc-lbl,
.pcgaming-wrap.pcg-page .pcg-sc-lbl{
  color:var(--ora)!important;
  font:600 10px/1 var(--fm)!important;
  letter-spacing:2px!important;
  text-transform:uppercase!important;
}
body.single-product .pcgaming-product .pcg-sc-list,
.pcgaming-wrap.pcg-page .pcg-sc-list{
  flex:1!important;
  list-style:none!important;
  margin:0!important;
  padding:12px 18px!important;
  display:flex!important;
  flex-direction:column!important;
}
body.single-product .pcgaming-product .pcg-sc-item,
.pcgaming-wrap.pcg-page .pcg-sc-item{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:9px!important;
  min-height:32px!important;
  padding:8px 0!important;
  border-bottom:1px solid var(--bdr)!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body.single-product .pcgaming-product .pcg-sc-item:last-child,
.pcgaming-wrap.pcg-page .pcg-sc-item:last-child{border-bottom:0!important;}
body.single-product .pcgaming-product .pcg-sc-k,
.pcgaming-wrap.pcg-page .pcg-sc-k{color:var(--tx3)!important;white-space:nowrap!important;}
body.single-product .pcgaming-product .pcg-sc-v,
.pcgaming-wrap.pcg-page .pcg-sc-v{
  color:var(--tx)!important;
  font-weight:600!important;
  text-align:right!important;
  max-width:58%!important;
  overflow-wrap:anywhere!important;
}
@media(max-width:1100px){
  body.single-product .pcgaming-product .pcg-specs-grid,
  .pcgaming-wrap.pcg-page .pcg-specs-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:900px){
  body.single-product .pcgaming-product .pcg-specs-section .pcg-sec-cnt,
  .pcgaming-wrap.pcg-page .pcg-specs-section .pcg-sec-cnt{padding:0 16px!important;}
}
@media(max-width:640px){
  body.single-product .pcgaming-product .pcg-specs-grid,
  .pcgaming-wrap.pcg-page .pcg-specs-grid{grid-template-columns:1fr!important;}
}


/* ================================================================
   v3.8.14 — Galerie frontend : miniatures scrollables après 4 photos
   Objectif : la colonne des miniatures ne doit plus agrandir la cellule
   de l'image principale quand une fiche contient 5, 6, 8 images ou plus.
================================================================ */
body.single-product .pcgaming-product .pcg-gallery-wrap{
  align-items:flex-start!important;
}
body.single-product .pcgaming-product .pcg-main-img{
  align-self:flex-start!important;
  width:100%!important;
  flex:1 1 auto!important;
}
body.single-product .pcgaming-product .pcg-thumbs{
  --pcg-thumb-visible:4;
  --pcg-thumb-size:72px;
  --pcg-thumb-gap:8px;
}
body.single-product .pcgaming-product .pcg-thumbs.is-scrollable{
  max-height:calc((var(--pcg-thumb-size) * var(--pcg-thumb-visible)) + (var(--pcg-thumb-gap) * (var(--pcg-thumb-visible) - 1)))!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:5px!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:var(--ora, #ff6b1a) rgba(255,255,255,.08)!important;
  scroll-behavior:smooth!important;
  -webkit-overflow-scrolling:touch!important;
}
body.single-product .pcgaming-product .pcg-thumbs.is-scrollable::-webkit-scrollbar{
  width:5px!important;
}
body.single-product .pcgaming-product .pcg-thumbs.is-scrollable::-webkit-scrollbar-track{
  background:rgba(255,255,255,.06)!important;
  border-radius:999px!important;
}
body.single-product .pcgaming-product .pcg-thumbs.is-scrollable::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,var(--ora, #ff6b1a),var(--blu, #1a8fff))!important;
  border-radius:999px!important;
}
body.single-product .pcgaming-product .pcg-thumbs.is-scrollable .pcg-thumb{
  flex:0 0 var(--pcg-thumb-size)!important;
}
@media(max-width:900px){
  body.single-product .pcgaming-product .pcg-thumbs.is-scrollable{
    max-height:none!important;
    max-width:100%!important;
    overflow-y:hidden!important;
    overflow-x:auto!important;
    padding-right:0!important;
    padding-bottom:5px!important;
    overscroll-behavior-x:contain!important;
  }
}
