:root{--pp-g:#0a8a3c;--pp-o:#f05a1a;--pp-soft:#eef8f1}
/* inainte de incarcare: fara flash al listei vechi (failsafe in PHP) */
html.pp-js .single-product .summary-inner:not(:has(.pp)) .tc-extra-product-options,
html.pp-js .single-product .summary-inner:not(:has(.pp)) .tc-totals-form{visibility:hidden;max-height:0;overflow:hidden}
.pp-band{background:var(--pp-g);color:#fff;font:600 15px Glegoo,serif;text-align:center;padding:10px 16px}
.pp-band b{color:#ffd54a}
.single-product .summary .woocommerce-product-attributes,.single-product .summary .stock.in-stock{display:none!important}
.single-product form.cart>h4,.single-product form.cart>h4+p{display:none!important}
.single-product .woocommerce-product-details__short-description .hide{display:none!important}
.single-product .summary-inner>.wd-social-icons{display:none!important}
.pp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}
.pp-chips span{border:1px solid #ddd;border-radius:99px;padding:3px 12px;font-size:13px;color:#555;background:#fff}
.pp-amb-price{font-size:14px;color:#888;margin-left:8px;font-weight:400}
.pp{font-family:Glegoo,serif;display:grid;gap:20px;margin:10px 0 16px}
.pp-h{font-weight:700;font-size:16px;margin-bottom:10px;display:flex;justify-content:space-between}.pp-h small{color:#888;font-weight:400}
.pp-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pp-card{border:1px solid #e6e6e6;border-radius:14px;padding:10px;text-align:center;font-size:13.5px;background:#fff;display:grid;gap:6px}
.pp-card .i{aspect-ratio:1;border-radius:10px;background:#fff;overflow:hidden}.pp-card .i img{width:100%;height:100%;object-fit:cover;display:block}
.pp-card .pp-pr{color:var(--pp-o);font-weight:700}
.pp-card button{border:0;border-radius:99px;background:var(--pp-soft);color:var(--pp-g);font:700 13px Glegoo,serif;padding:8px;cursor:pointer}
.pp-card button.on{background:var(--pp-g);color:#fff}
.pp .pp-more{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;color:var(--pp-g)!important;font:700 14px Glegoo,serif!important;text-transform:none!important;cursor:pointer;margin-top:12px}
.pp-prog{font-size:14px;color:#555}.pp-prog .tr{height:8px;background:#eee;border-radius:99px;margin-top:6px;overflow:hidden}.pp-prog .fl{height:100%;background:#ffc107;border-radius:99px;transition:width .3s}
.pp-prog:after{content:'Reducerea se aplica automat la finalizarea comenzii si nu se cumuleaza cu alte oferte.';display:block;font-size:12px;color:#999;margin-top:6px}
.pp-hide-all .tc-extra-product-options>ul>li:not(.pp-keep){display:none!important}
.pp-hide-all .tc-totals-form{display:none!important}
.single-product .pp-keep{display:none!important}
.tc-extra-product-options input[type=checkbox],.tc-extra-product-options input[type=radio]{accent-color:var(--pp-g)!important;width:18px;height:18px}
.tc-extra-product-options .tm-extra-product-options-product li.tmcp-field-wrap{border-radius:12px}
.single-product .single_add_to_cart_button{width:100%;display:flex!important;justify-content:space-between;align-items:center;background:var(--pp-o)!important;border-radius:14px!important;padding:18px 22px!important;font:700 18px Glegoo,serif!important}
.pp-amb-note{font-size:12.5px;color:#888;text-align:center;margin-top:8px}
.pp-trust{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:13px;color:#777;margin-top:16px}
.pp-trust div{border-top:1px solid #eee;padding-top:10px}.pp-trust b{display:block;color:#222;font-size:14px}
@media(min-width:769px){.single-product .product-images,.single-product .woocommerce-product-gallery{position:sticky!important;top:110px;align-self:flex-start}.single-product .product-image-summary-inner,.single-product .product-image-summary-wrap{align-items:flex-start!important}}
@media(max-width:768px){.pp-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.single-product .single_add_to_cart_button{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:auto;z-index:999;box-shadow:0 8px 24px rgba(0,0,0,.25)}body.single-product{padding-bottom:90px}}

/* recomandari compacte: garnitura, bautura, sosuri */
.ppx-xw{display:grid;gap:16px;margin-bottom:6px}
.ppx-xh{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7466;margin-bottom:8px;font-family:Figtree,system-ui,sans-serif}
.ppx-xr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ppx-xs{box-sizing:border-box;min-width:0;user-select:none;cursor:pointer;display:grid;grid-template-columns:44px minmax(0,1fr) auto 28px;align-items:center;gap:10px;padding:8px 10px 8px 8px;border:1px solid #ece6da;border-radius:14px;background:#fff;transition:border-color .2s,background .2s;font-family:Figtree,system-ui,sans-serif}
.ppx-xs:hover{border-color:#1c2419}
.ppx-xs:focus-visible{outline:2px solid #0a6b34;outline-offset:2px}
.ppx-xs img{width:44px;height:44px;object-fit:contain;border-radius:10px;background:#f5f1e8}
.ppx-xs span{min-width:0}
.ppx-xs b{display:block;font-size:13.5px;font-weight:600;color:#1c2419;line-height:1.2}
.ppx-xs small{font-size:12px;color:#6b7466}
.ppx-xs em{font-style:normal;font-size:13px;font-weight:700;color:#1c2419;white-space:nowrap}
.ppx-xs i{font-style:normal;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#fdeee6;color:#ef5a1c;font-weight:800}
.ppx-xs.on{border-color:#0a6b34;background:#f1f8f3}
.ppx-xs.on i{background:#0a6b34;color:#fff}
@media(max-width:560px){.ppx-xr{grid-template-columns:1fr}}
/* extra-uri cu cantitate (multi-selectie) */
.ppx-xs{grid-template-columns:44px minmax(0,1fr) auto auto!important;cursor:pointer}
.ppx-xs .ppx-q{display:flex;align-items:center;gap:2px;border-radius:10px;background:#fdeee6;padding:2px}
.ppx-xs .ppx-q button{width:28px;height:28px;min-height:0!important;padding:0!important;margin:0!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#ef5a1c!important;font:800 17px/1 Figtree,system-ui,sans-serif!important;display:grid;place-items:center;cursor:pointer;box-shadow:none!important;text-transform:none!important}
.ppx-xs .ppx-q output{min-width:18px;text-align:center;font:800 14px/1 Figtree,system-ui,sans-serif;color:#1c2419}
.ppx-xs:not(.on) .ppx-q .m,.ppx-xs:not(.on) .ppx-q output{display:none}
.ppx-xs.on .ppx-q{background:#0a6b34}
.ppx-xs.on .ppx-q button{color:#fff!important}
.ppx-xs.on .ppx-q output{color:#fff}
.ppx-xs.on .ppx-q button:hover{background:rgba(255,255,255,.16)!important}
.ppx-xs:not(.on) .ppx-q button:hover{background:#fbdccc!important}
.single_add_to_cart_button.pp-busy{opacity:.75;pointer-events:none}
@media(max-width:560px){.ppx-xs{grid-template-columns:40px minmax(0,1fr) auto auto!important;gap:8px}}
.ppx-xs{grid-template-columns:44px minmax(0,1fr) auto!important;grid-template-rows:auto auto;column-gap:10px!important;row-gap:2px!important}
.ppx-xs img{grid-row:1/3}
.ppx-xs span{grid-column:2;grid-row:1;align-self:end}
.ppx-xs span small{display:none}
.ppx-xs em{grid-column:2;grid-row:2;align-self:start;font-size:12.5px!important;color:#6b7466!important;font-weight:600!important}
.ppx-xs .ppx-q{grid-column:3;grid-row:1/3}
.ppx-xs.on em{color:#0a6b34!important}
/* extra-uri v2: carduri verticale, egale; numele pe 2 randuri fixe, actiunea jos pe toata latimea */
.ppx-xr{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.ppx-xs{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:0!important;padding:14px 12px 12px!important;border-radius:16px!important;height:100%;box-sizing:border-box}
.ppx-xs img{width:64px!important;height:64px!important;border-radius:14px!important;margin:0 0 10px!important}
.ppx-xs span{display:flex;align-items:center;justify-content:center;min-height:36px;width:100%}
.ppx-xs span b{font-size:14px!important;line-height:1.25!important;font-weight:700!important}
.ppx-xs em{display:block;margin:4px 0 12px;font-size:12.5px!important}
.ppx-xs .ppx-q{margin-top:auto;width:100%;height:38px;justify-content:space-between;box-sizing:border-box;padding:3px!important}
.ppx-xs .ppx-q button{width:32px!important;height:32px!important}
.ppx-xs:not(.on) .ppx-q{justify-content:center;background:#fdeee6}
.ppx-xs:not(.on) .ppx-q .p{width:100%!important;font-size:14px!important}
.ppx-xs:not(.on) .ppx-q .p::after{content:" Adauga";font-weight:700;margin-left:4px}
.ppx-xs:not(.on) .ppx-q .p{display:flex!important;align-items:center;justify-content:center}
@media(max-width:560px){.ppx-xr{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ppx-xs{padding:12px 10px 10px!important}}
.ppx-xs em{width:100%;text-align:center!important}
.ppx-xs .ppx-q button{text-transform:none!important;letter-spacing:0!important}
.ppx-xs img{background:#f6f2ea!important;padding:4px;box-sizing:border-box}
/* extra-uri v3: lista compacta pe o coloana */
.ppx-xr{display:flex!important;flex-direction:column;gap:0!important;border:1px solid #ece6da;border-radius:16px;background:#fff;overflow:hidden}
.ppx-xs{display:grid!important;grid-template-columns:40px minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center;text-align:left;column-gap:12px!important;row-gap:1px!important;padding:8px 10px 8px 8px!important;border:0!important;border-radius:0!important;border-top:1px solid #f1ece2!important;height:auto;background:#fff}
.ppx-xs:first-child{border-top:0!important}
.ppx-xs:hover{background:#fcfaf6}
.ppx-xs.on{background:#f3f9f5!important}
.ppx-xs img{grid-row:1/3;width:40px!important;height:40px!important;margin:0!important;border-radius:10px!important;padding:3px}
.ppx-xs span{grid-column:2;grid-row:1;display:block;min-height:0;width:auto;align-self:end}
.ppx-xs span b{font-size:14px!important;line-height:1.2!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.ppx-xs em{grid-column:2;grid-row:2;align-self:start;margin:0;width:auto;text-align:left!important;font-size:12px!important}
.ppx-xs .ppx-q{grid-column:3;grid-row:1/3;margin:0;width:auto;height:32px;padding:2px!important;gap:0}
.ppx-xs .ppx-q button{width:28px!important;height:28px!important;font-size:16px!important}
.ppx-xs:not(.on) .ppx-q{background:#fdeee6}
.ppx-xs:not(.on) .ppx-q .p{width:auto!important;padding:0 12px!important;font-size:13px!important}
.ppx-xs .ppx-q output{min-width:20px;font-size:13.5px}
@media(max-width:560px){.ppx-xs{padding:8px 8px 8px 6px!important}}
/* extra-uri: casuta de bifat + cantitate doar dupa bifare */
.ppx-xs{grid-template-columns:20px 40px minmax(0,1fr) auto!important;cursor:pointer}
.ppx-xs .ppx-ck{grid-row:1/3;width:20px;height:20px;border-radius:6px;border:1.5px solid #c9c2b4;background:#fff;display:grid;place-items:center;box-sizing:border-box;font-style:normal;transition:background .15s,border-color .15s}
.ppx-xs.on .ppx-ck{background:#0a6b34;border-color:#0a6b34}
.ppx-xs.on .ppx-ck::after{content:"";width:9px;height:5px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.ppx-xs:hover .ppx-ck{border-color:#1c2419}
.ppx-xs:focus-visible{outline:2px solid #0a6b34;outline-offset:-2px}
.ppx-xs img{grid-column:2}
.ppx-xs span,.ppx-xs em{grid-column:3}
.ppx-xs .ppx-q{grid-column:4}
.ppx-xs:not(.on) .ppx-q{display:none!important}
.ppx-xs.one .ppx-q .m{opacity:.35;cursor:default}
.ppx-xs .ppx-q .m{display:flex!important;align-items:center;justify-content:center;line-height:1!important}
/* 1.13.7 — un singur sistem de extra-uri: grupele vin din optiunile produsului */
.ppx-xg+.ppx-xg{margin-top:22px}
.ppx-more-i{display:none!important}
.ppx-xg.open .ppx-more-i{display:grid!important}
.ppx-xall{display:inline-flex!important;align-items:center;gap:6px;margin-top:10px!important;padding:8px 14px!important;border:0!important;border-radius:99px!important;background:#e9f3ec!important;color:#0a6b34!important;font:700 13px Figtree,system-ui,sans-serif!important;text-transform:none!important;letter-spacing:0!important;min-height:0!important;line-height:1.2!important;cursor:pointer;box-shadow:none!important}
.ppx-xall:hover{background:#dcebe1!important}
.pp-h[hidden]{display:none!important}
/* 1.13.43: fiecare grupa de extra-uri e un card: banda crem cu iconita + titlu verde, apoi produsele */
.ppx-xw{display:grid!important;gap:14px!important}
.ppx-xw .ppx-xg{margin:0!important;border:1px solid #ece6da;border-radius:18px;overflow:hidden;background:#fff}
.ppx-xh.ppx-xh2{display:flex!important;align-items:center;gap:12px;margin:0!important;padding:12px 14px!important;background:#faf6ef;border-bottom:1px solid #efe8db;text-transform:none!important;letter-spacing:0!important;font-size:inherit!important;color:inherit!important}
.ppx-xh2 .ic{flex:none;width:36px;height:36px;border-radius:10px;background:#fff;display:grid;place-items:center}
.ppx-xh2 .ic svg{width:20px;height:20px;fill:none;stroke:#ef5a1c;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ppx-xh2 .tx{display:flex;flex-direction:column;gap:2px;min-width:0}
.ppx-xh2 b{font:800 17px/1.15 Figtree,system-ui,sans-serif;letter-spacing:-.01em;color:#0a6b34}
.ppx-xh2 small{font:500 12.5px/1.3 Figtree,system-ui,sans-serif;color:#7a6f5c}
.ppx-xg .ppx-xr{border:0!important;border-radius:0!important}
.ppx-xs span b{font-weight:600!important;color:#2b3428!important}
.ppx-xg .ppx-xall{margin:10px 14px 12px!important}
