/* PDP theme hook (bere tvoje CSS variables, fallbacky jsou jen pojistka) */
     .pdp-root{
      --tbl-border: rgba(0,0,0,.08); /* hotovo */
      --tbl-head-bg: rgba(15,23,42,.06);
      --tbl-zebra: rgba(15,23,42,.06); /* hotovo */
      --tbl-color:  rgba(15,23,42,.85); /* hotovo */
      --pdp-img-border: rgba(0,0,0,.12);
      --pdp-primary: var(--itd-primary, var(--brand-primary, var(--primary, #101826)));
      --pdp-accent:  var(--itd-accent,  var(--brand-accent,  var(--accent,  #2563eb)));
      --pdp-surface: var(--itd-surface, #fff);
      --pdp-border:  var(--itd-border, rgba(0,0,0,.08));
      --pdp-muted:   var(--itd-muted,  rgba(0,0,0,.70));
      --pdp-text:    var(--itd-text,   #0f172a);
      --pdp-green: #16a34a; /* stejná jako cena */
    }


    /* OUTER: 2 sloupce (galerie | pravý obsah) */
    .pdp-grid{
      display:grid;
      grid-template-columns:420px 1fr;
      gap:18px;
      align-items:start;
    }
    .pdp-rightwrap{
      display:flex;
      flex-direction:column;
      gap:14px;
    }


    .pdp-h1{
      margin:0;
      font-size:22px;
      font-weight:500;
      line-height:1.20;
      letter-spacing:-0.01em;
    }

    

    /* POPTÁVKA */
    /* TOP řádek: breadcrumb vlevo + košík poptávky vpravo */
    
    
    /* mobil */
    @media (max-width: 980px){
      .pdp-h1{ font-size:22px; line-height:1.18; }
    }

    /* Nadpis BEZ bílého pozadí a BEZ rámečku */
    .pdp-title{
      padding:2px 2px 6px;
    }

    /* 2 boxy vedle sebe */
    .pdp-rightgrid{
      display:grid;
      grid-template-columns:1fr 320px;
      gap:18px;
      align-items:start;
    }

    @media (max-width: 980px){
      
      
      .pdp-buy{position:relative;top:auto}
    }
    .pdp-rightwrap{ gap:10px; }
    .pdp-title{ padding:0 2px 2px; }
    .pdp-card{background:var(--pdp-surface);border:1px solid var(--pdp-border);border-radius:14px}
    .pdp-pad{padding:14px}

    .pdp-meta{display:grid;grid-template-columns:140px 1fr;gap:8px 10px;margin:8px 0 10px}
    .pdp-meta .k{opacity:.65;font-size:13px}
    .pdp-meta .v{font-weight:600;font-size:13px}

    
    .pdp-buy{top:14px}
    .pdp-kpi{display:grid;grid-template-columns:1fr auto;gap:8px 10px;align-items:center}
    .pdp-kpi .lab{opacity:.7;font-size:13px}
    .pdp-kpi .val{font-weight:600}

    .pdp-price{
     
      margin:5px 0;
      padding:5px;
      /*
      border-radius:12px;
      background:rgba(0,0,0,.03);
      border:1px solid rgba(0,0,0,.06)
      */
      }
    .pdp-price .big{
        font-size:22px;
        font-weight:600;
        display: inline-flex;
        gap: 6px;
        justify-content: flex-end;
        align-items: baseline;
    }
    .pdp-price .sub{
        margin-top: 6px;
        padding: 0;           /* zruší badge */
        display: block;       /* ať je to pod cenou */
        font-size: 12px;      /* jako v katalogu */
        line-height: 1.1;
        text-align: right;
        color: black;       /* stejná šedá jako “od” */
    }
    /* OK cena -> "bez DPH" šedě (jako 'od') */
    .pdp-price .sub.sub-ok{
        font-size: 12px;   
        color: black;
    }

    /* Cena na dotaz -> "bez DPH" zeleně */
    .pdp-price .sub.sub-rfq{
        font-size: 12px;   
        color: var(--pdp-green);
    }/* Cena vpravo (celý blok) */
    .pdp-price{ text-align:right; }

    /* “od” jako v katalogu (malý šedý) */
    .pdp-price-prefix{
      color: #008992;
      font-size: 14px;
      margin-right: 4px;
    }
    .pdp-rfq_price{
      color: #008992;
      font-weight: 700;        /* tučné, jak chceš */
      font-size: 18px;
    }


    /* zeleně jen hodnota, label zůstává normální */
    .pdp-kpi.is-instock .val{
      color: var(--pdp-green);
    }

    .pdp-kpi .lab{
      opacity:.7;
      font-size:13px;
      color: var(--pdp-text);
    }
    /* jen částka zeleně */
    .pdp-price-amt{
      color:var(--pdp-green); 
    }
    
    
    




    .pdp-buyrow{
        display:flex;
        gap:10px;
        align-items:center;
        justify-content:flex-end; /* doprava */
    }
    .pdp-buyrow .row-qty{ 
        width:56px; 
        height:32px; 
        padding:0 8px; 
        text-align:center; 
    }
    .pdp-buyrow .row-btn{ 
        height:32px; 
        min-width:120px;
        padding:0 12px; 
        white-space:nowrap; 
    }
    .pdp-buyrow .qty-label{
        font-size:12px;
        font-weight:500;
        opacity:.75;
        line-height:1;
        white-space:nowrap;
    }

    /* Gallery – thumbs POD hlavním obrázkem */
    

    .pdp-gal{display:block;text-align:center;}
    .pdp-thumbs{
      display:inline-flex;
      flex-wrap:wrap;
      justify-content:flex-start;
      align-content:flex-start;
      gap:8px;
      margin-top:10px;
      padding:10px 2px 2px;
      max-width:100%;
      overflow:visible;
      margin-left:auto;
      margin-right:auto;
    }

    .pdp-main{
      position:relative;
      cursor:zoom-in;
      display:flex;justify-content:center;align-items:center;
      border:1px solid var(--pdp-img-border);
      border-radius:14px;
      min-height:420px;
      background:var(--pdp-surface)
    }
    .pdp-main img{max-width:100%;max-height:420px;object-fit:contain;display:block;margin:0 auto}

    .pdp-zoom{
      position:absolute;
      top:10px;
      right:10px;
      width:34px;height:34px;
      border-radius:999px;
      display:flex;align-items:center;justify-content:center;
      background: rgba(255,255,255,.92);
      color: var(--pdp-text);
      border: 1px solid var(--pdp-img-border);
      box-shadow: 0 6px 18px rgba(0,0,0,.10);
      backdrop-filter: blur(2px);
      font-size:18px;
      pointer-events:none;
    }
    .pdp-main:hover .pdp-zoom{
      border-color: var(--pdp-accent);
      box-shadow: 0 10px 26px rgba(0,0,0,.14);
    }

    .pdp-thumbs button{ cursor:pointer; flex:0 0 auto; width:66px;height:66px;padding:6px; border:1px solid var(--pdp-img-border);
      background: var(--pdp-surface); border-radius:12px; outline:none; -webkit-appearance:none; appearance:none;
    }
    .pdp-thumbs button:hover{ border-color: var(--pdp-accent); }
    .pdp-thumbs button.active{
      border-color:var(--pdp-accent);
      box-shadow:0 0 0 2px rgba(0,0,0,.06);
    }
    .pdp-thumbs img{width:52px;height:52px;object-fit:contain;display:block}

    @media (max-width: 980px){
      .pdp-grid{grid-template-columns:1fr}
      .pdp-buy{position:relative;top:auto}
      .pdp-main{min-height:320px}
    }

    /* Lightbox */
    .pdp-lightbox{
      position:fixed; inset:0; z-index:9999;
      background:rgba(0,0,0,.86);
      display:none;
      align-items:center; justify-content:center;
      padding:22px;
    }
    .pdp-lightbox.is-on{ display:flex; }
    .pdp-lightbox .lb-img{
      max-width:min(1100px, 92vw);
      max-height:86vh;
      object-fit:contain;
      border-radius:14px;
      background:#fff;
    }
    .pdp-lightbox .lb-close{
      position:absolute; top:16px; right:16px;
      width:44px; height:44px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.25);
      background:rgba(0,0,0,.35);
      color:#fff; font-size:26px; line-height:1;
      cursor:pointer;
    }
    .pdp-lightbox .lb-nav{
      position:absolute; top:50%;
      transform:translateY(-50%);
      width:54px; height:54px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.25);
      background:rgba(0,0,0,.35);
      color:#fff; font-size:34px; line-height:1;
      cursor:pointer;
    }
    .pdp-lightbox .lb-prev{ left:16px; }
    .pdp-lightbox .lb-next{ right:16px; }
    .pdp-lightbox .lb-count{
      position:absolute; bottom:16px; left:50%;
      transform:translateX(-50%);
      padding:6px 10px;
      border-radius:999px;
      background:rgba(0,0,0,.35);
      border:1px solid rgba(255,255,255,.2);
      color:#fff; font-weight:700; font-size:12px;
    }

    /* WIDE dole pod galerií */
    .pdp-wide{ margin-top:18px; }
    .pdp-widegrid{ display:grid; grid-template-columns: 1fr; gap:18px; align-items:start; }

    .pdp-sectiontitle{ font-weight:700; font-size:18px; margin:0 0 10px; }


    /* hint pod galerií */
    .pdp-gallery-hint{
      margin-top:10px;
      opacity:.7;
      font-size:12px;
    }


    /* PŮVODNÍ LOOK NADPISU + layout vlevo/vpravo */
    .pdp-midhead{
      font-weight: 600;
      font-size: 13px;
      /*
      color: var(--tbl-color);
      */
      color: #333333;
      margin: 0 0 10px;
      padding: 0 2px;
      letter-spacing: .02em;
      text-transform: uppercase;
      opacity: .9;

      display:flex;
      align-items:baseline;
      justify-content:space-between;
      gap:10px;
      flex-wrap:wrap;
    }

    .pdp-midhead-l{ 
      white-space:nowrap; 
    }

    /* pravá část – PLAIN, bez bublin */
    .pdp-midhead-r{
      display:inline-flex;
      gap:8px;
      flex-wrap:wrap;
      justify-content:flex-end;

      text-transform:none;   /* ať se to nechová jako headline */
      letter-spacing:0;
      font-size:12px;
      font-weight:600;
      opacity:.85;
    }
    .pdp-midid b{ font-weight:300; color: var(--tbl-color); opacity:.99; }
    .pdp-midid { font-weight:300; color: var(--tbl-color); opacity:.99;}
    .pdp-midsep{ opacity:.5; }

    @media (max-width:700px){
      .pdp-midhead-r{ justify-content:flex-start; }
    }

    /* buy button flex */
    .pdp-btn-flex{ flex:1; }

    /* disclaimer pod tlačítkem */
    .pdp-disclaimer{
       opacity:.7;
      font-size:14px;
      margin-top:10px;
      display:block;
      text-align:right;
    }

    /* debug pre */
    .pdp-debug{
      margin-top:12px;
      background:#111;
      color:#0f0;
      padding:12px;
      border-radius:12px;
      white-space:pre-wrap;
      font-size:12px;
    }

    

    /* Marketing: obrázky mezi textem (float) */
    .pdp-mkt{ display: flow-root; }
    .pdp-mkt-sec{ display: flow-root; } /* clearfix pro floaty v sekci */
    
    .pdp-mkt{
      font-size: 16px;
      line-height: 1.75;
      color: rgba(15,23,42,.92);
      font-size: 14.5px;
      line-height: 1.65;
    }
    
     
    .pdp-desc-p{
        margin: 0 0 14px;
        opacity: 1;
        line-height: inherit; /* <- klíč */
        font-size: inherit;   /* volitelné, ale hezké */
      }
    

    .pdp-mkt-float img{
      width:100%;
      height:auto;
      display:block;
      object-fit:contain;
    }

        
    @media (max-width: 700px){
      .pdp-mkt-float{
        float:none;
        width:100%;
        max-width:100%;
        margin:0 0 10px 0;
      }
    }
    /* POPIS produktu – čitelnost */
    .pdp-descbox{ padding: 22px; } /* víc vzduchu jen pro popis */

    .pdp-descbox .pdp-mkt{
      max-width: 980px;      /* KLÍČ: zkrátí řádky */
      margin: 0 auto;        /* vystředí blok */
      font-size: 17px;       /* větší text */
      line-height: 1.85;     /* lepší čitelnost */
      color: #0f172a;        /* ztmavit */
    }

    .pdp-descbox .pdp-desc-p{
      margin: 0 0 14px;      /* odstavce */
      opacity: 1;            /* žádný ztmavení přes opacity */
    }

    
    /* UL/LI sjednocení */
    .pdp-descbox .pdp-ul{ margin: 0 0 14px 18px; padding: 0; }
    .pdp-descbox .pdp-li{ margin: 0 0 8px; }
    .pdp-descbox .pdp-li::marker{ color: rgba(15,23,42,.35); }

    /* Mobil: trochu menší */
    @media (max-width: 700px){
      .pdp-descbox .pdp-mkt{ font-size: 15.5px; line-height: 1.75; max-width: 100%; }
      .pdp-descbox{ padding: 16px; }
    }
    /* SROVNAT NADPIS POPISU S OBSAHEM (ať “nelítá”) */
    .pdp-descbox .pdp-sectiontitle{
      max-width: 980px;   /* stejné jako .pdp-mkt */
      margin: 0 auto 14px;/* vystředit a dát spacing dolů */
      padding: 0;
    }
    .pdp-descbox ul{ max-width: 980px; margin: 0 auto 14px  auto; }
    
    /* =========================
   Jednotné nadpisy v PDP
   ========================= */

    /* velký nadpis sekce (Popis produktu, Specifikace) */
    .pdp-sectiontitle{
      font-weight: 700;
      font-size: 18px;
      line-height: 1.2;
      color: #0f172a;
      margin: 0 0 14px;
    }

    /* ať nadpis v Popisu nelítá mimo text (pokud centruješ obsah) */
    .pdp-descbox .pdp-sectiontitle,
    .pdp-descbox .pdp-grouphead{
      max-width: 980px;
      margin-left: auto;
      margin-right: auto;
    }
    /* SPEC BOX – stejně úzké jako popis */
    .pdp-specbox{ padding: 22px; }
    .pdp-specwrap{
      max-width: 980px;
      margin: 0 auto;
    }

    /* Rámeček tabulky kvůli radiusu + přehlednosti */
    .pdp-specframe{
      border: 1px solid rgba(0,0,0,.08);
      border-radius: 14px;
      overflow: hidden;
      background: #fff;
    }


   
    .pdp-root{ color: var(--pdp-text); }

    /* Tabulka */
    .pdp-spec2{
      width: 100%;
      border-collapse: separate;
      border-spacing: 0;
    }

   
    /* Hlavička tabulky */
    .pdp-spec2 thead th{
      text-align: left;
      padding: 8px 10px;
      font-weight: 700;
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: .05em;
      /*
      color: var(--tbl-color);
      background: var(--tbl-head-bg);
      */
      color: white;
      background: #74747C;      

      
      
      border-bottom: 1px solid var(--tbl-border);
    }
    /* specs_all: hlavička tabulky = název groupy */
    .pdp-specframe--nested .pdp-spec2 thead th{
      text-transform:none;
      letter-spacing:.02em;
      font-size:13px;
      padding:10px 12px;
    }

    /* Buňky */
    .pdp-spec2 td{
      padding: 12px 14px;
      vertical-align: top;
      font-size: 14.5px;
      line-height: 1.55;
      color: var(--tbl-color);
      border-bottom: 1px solid var(--tbl-border);
    }

    /* dělicí čára mezi sloupci */
    .pdp-spec2 th + th,
    .pdp-spec2 td + td{
      /*
      border-left: 1px solid rgba(0,0,0,.06);
      */
       border-left: 1px solid var(--tbl-border);
    }

    /* první sloupec */
    .pdp-spec2 td:first-child{
      width: 38%;
      font-weight: 600;
      color: var(--tbl-color);
    }

    /* Zebra řádky */
    .pdp-spec2 tbody tr:nth-child(even) td{
      /*
      background: rgba(15,23,42,.02);
      */
       background: rgba(15,23,42,.06);
    }

    /* Poslední řádek bez spodní čáry */
    .pdp-spec2 tbody tr:last-child td{
      border-bottom: 0;
    }

    /* Sekční řádky (colspan) */
    .pdp-spec2 td.pdp-spec-section{
      background: rgba(37,99,235,.08);
      font-weight: 900;
      color: var(--tbl-color);
      border-left: 0 !important;
    }

    /* Mobil */
    @media (max-width: 700px){
      .pdp-specbox{ padding: 16px; }
      .pdp-spec2 td, .pdp-spec2 thead th{ padding: 10px 12px; }
      .pdp-spec2 td:first-child{ width: 44%; }
    }


    /* MID: kompaktní tabulka */
    .pdp-midframe{
      border: 1px solid var(--tbl-border);
      border-radius: 14px;
      overflow: hidden;
      background: #fff;
    }

    .pdp-midtable{
      width: 100%;
      border-collapse: collapse; /* linky do kraje */
      table-layout: fixed;
    }

    .pdp-midtable td{
      padding: 7px 12px;                 /* menší řádky */
      border-bottom: 1px solid var(--tbl-border);
      vertical-align: top;
      font-size: 12.5px;                 /* menší čísla/text */
      line-height: 1.35;
      color: var(--tbl-color);
    }

    .pdp-midtable tr:last-child td{ border-bottom: 0; }

    /* zebra jako dole */
    .pdp-midtable tbody tr:nth-child(even) td{
      background: rgba(15,23,42,.06);
    }

    /* levý sloupec – label menší */
    .pdp-midtable td.k{
      width: 110px;            /* <- klíč: už ne % */
      color: var(--tbl-color);
      font-weight: 600;
      font-size: 13px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: normal;
      overflow: visible;
      text-overflow: unset;
    }

    @media (max-width: 700px){
      .pdp-midtable td.k{ width: 110px; }  /* na mobilu klidně zpět na % */
    }

    /* pravý sloupec – hodnota */
    .pdp-midtable td.v{
      font-weight: 600;
      font-size: 13px;                 /* trochu menší než teď */
      word-break: break-word;
    }

    /* případný "sekční" řádek */
    /*
    .pdp-midtable td.sec{
      font-weight: 700;
      background: rgba(37,99,235,.08) !important;
      border-left: 0;
    }
      */
    .pdp-midtable td.k-empty{
      color: transparent;   /* drží šířku, ale není vidět */
    }
    /* default hodnota */
    .pdp-midval{ font-weight:300; }

    /* MPN tučně */
    .pdp-midid.is-mpn .pdp-midval{ font-weight:400; }

    /* volitelně i label "MPN" tučně (když chceš) */
    .pdp-midid.is-mpn b{ font-weight:400; }
    /* TOP řádek: breadcrumb vlevo + košík poptávky vpravo */
    


    /* specs_all: skupiny jako samostatné tabulky, odsazené */
    .pdp-specgroup{
      margin: 25px 0 0 0px;   /* odsazení doprava + mezera mezi tabulkama */
    }
    .pdp-specgroup:first-child{ margin-top: 0; }

    .pdp-grouphead{
      font-weight: 600;
      font-size: 14px;
      color: #0f172a;
      margin: 0 0 8px;
      opacity: .9;
    }

    .pdp-specframe--nested{
      border-radius: 12px;
    }

    /* mobil: menší odsazení */
    @media (max-width: 700px){
      .pdp-specgroup{ margin-left: 10px; }
    }

    .pdp-h1-mpn{
      display:inline-block;
      white-space:nowrap;
      font-size:.62em;      /* menší */
      font-weight:700;      /* čitelný, ale neřve */
      opacity:.55;          /* nenápadný */
      letter-spacing:.04em;
      text-transform:uppercase;
      margin-right:10px;    /* odsazení od nadpisu */
    }
    .catalog-bc a.is-active,
      .catalog-bc span.is-active{
        font-weight:700;
        text-decoration:none;
        opacity:1;
      }


.pdp-price .big{
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:nowrap;
}

.pdp-price .pdp-price-amt,
.pdp-price .pdp-price-vat,
.pdp-price .pdp-price-prefix{
  white-space:nowrap;
}

.pdp-price .pdp-price-vat{
  font-size:12px;
  opacity:.75;
}

/* MICRO – čistý text pod tlačítkem (bez boxu) */
.pdp-buy .row-add .row-micro{
  margin-top:0px;
  padding-top:10px;
  border-top:1px solid rgba(0,0,0,.08);

  font-size:13px;
  line-height:1.35;
  color:#233443;
  opacity:.72;
  text-align:left;
}

/* řádky */
.pdp-buy .row-add .row-micro > div{
  position:relative;
  padding-left:14px;          /* odsazení od kraje */
}

/* malá tečka */
.pdp-buy .row-add .row-micro > div::before{
  content:"•";
  position:absolute;
  left:0;
  top:0;
  opacity:.5;
}

.pdp-buy .row-add .row-micro > div + div{ margin-top:6px; }
/* čára – NEBO – čára */
.pdp-buyor{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top: 12px;
  opacity: .9;
}
.pdp-buyor:before,
.pdp-buyor:after{
  content:"";
  flex:1;
  height:1px;
  background: rgba(15,23,42,.14);
}
.pdp-buyor span{
  letter-spacing: .22px;
  color: #6b7280;
  font-size: 12px;
  padding: 0 6px;
  line-height: 1;
  transform: translateY(-.5px);
}

/* ať i B2C "cena s DPH" drží stejnou pravou hranu */
.row-add--b2c .row-price-b2c{
  width: 100%;
  text-align: right;
  margin-top: 6px;
  white-space: nowrap;
}
.pdp-b2c_price{ 
  color: #00949F;     
  font-weight: 700;    
  font-size: 18px; 
}


/* sekční nadpisy v buy boxu */
.pdp-buy .pdp-buycap{
  font-size: 18px;
  font-weight: 600;
  letter-spacing: .2px;
  opacity: .8;
  margin: 2px 0 8px;
}

/* jemný předěl mezi režimy */
.pdp-buy .pdp-buysep{
  height: 1px;
  background: rgba(0,0,0,.08);
  margin: 6px 0;
}

/* PDP – vypnuté KOUPIT (není skladem) */
.row-add--b2c.is-disabled .row-btn{
  opacity: .55;
  cursor: not-allowed;
}
.row-add--b2c.is-disabled .row-qty{
  opacity: .6;
}
.row-add--b2c.is-disabled .row-qtywrap{
  pointer-events: none; /* ať nejde klikat +/− když je lock */
}