/* product.css — CSS specific paginii de produs (product detail).
   Încărcat via <link> în <head> doar pe pagina de produs.
   Nu se încarcă pe home, category, account etc. */

/* ---------- Layout + gallery ---------- */
.pd-container, .pd-container * { box-sizing:border-box; min-width:0; }
.pd-container { overflow-x:clip; }
.pd-layout { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:6px; align-items:flex-start; }

.pd-gallery { display:flex; gap:12px; align-items:flex-start; }
.pd-thumbs {
    display:flex; flex-direction:column; gap:8px; flex-shrink:0;
    max-height:520px; overflow-y:auto; padding-right:4px;
}
.pd-thumbs::-webkit-scrollbar { width:4px; }
.pd-thumbs::-webkit-scrollbar-thumb { background:rgba(0,0,0,.15); border-radius:2px; }
.pd-thumb {
    width:72px; height:72px; border:1px solid var(--border); border-radius:10px;
    overflow:hidden; cursor:pointer; background:#fff;
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.pd-thumb.on { border-color:var(--ink); }
.pd-thumb img { max-width:100%; max-height:100%; object-fit:contain; }
.pd-main-img {
    position:relative; flex:1 1 auto; aspect-ratio:1;
    background:#fff; border:1px solid var(--border); border-radius:16px;
    display:flex; align-items:center; justify-content:center; padding:24px;
}
.pd-main-img img { max-width:100%; max-height:100%; object-fit:contain; cursor:zoom-in; }

/* ---------- Lightbox ---------- */
.pd-lightbox {
    display:none; position:fixed; inset:0; z-index:2000;
    background:rgba(0,0,0,0.92);
    align-items:center; justify-content:center;
}
.pd-lightbox.open { display:flex; }
.pd-lightbox img { max-width:90vw; max-height:85vh; object-fit:contain; user-select:none; }
.pd-lightbox-close, .pd-lightbox-prev, .pd-lightbox-next {
    position:absolute; background:rgba(255,255,255,0.1); color:#fff;
    border:0; border-radius:50%; cursor:pointer;
    display:grid; place-items:center; transition:background .15s ease;
}
.pd-lightbox-close:hover, .pd-lightbox-prev:hover, .pd-lightbox-next:hover { background:rgba(255,255,255,0.25); }
.pd-lightbox-close { top:20px; right:20px; width:44px; height:44px; font-size:28px; line-height:1; }
.pd-lightbox-prev { top:50%; left:20px; transform:translateY(-50%); width:52px; height:52px; }
.pd-lightbox-next { top:50%; right:20px; transform:translateY(-50%); width:52px; height:52px; }
.pd-lightbox-counter { position:absolute; bottom:24px; left:50%; transform:translateX(-50%); color:#fff; font-family:var(--f-mono, monospace); font-size:13px; opacity:0.8; }
.pd-main-img .ph { color:var(--muted); font-family:var(--f-mono, monospace); font-size:12px; text-align:center; }

/* ---------- Badges ---------- */
.pd-badges { position:absolute; top:14px; left:14px; display:flex; flex-direction:column; gap:6px; z-index:2; }
.pd-badges .pd-badge {
    display:inline-block; padding:5px 10px; border-radius:6px;
    font-size:11px; font-weight:700; letter-spacing:0.03em; text-transform:uppercase;
    background:var(--ink, #0E1116); color:#fff;
}
.pd-badges .pd-badge.sale    { background:var(--accent, #f97316); }
.pd-badges .pd-badge.new     { background:#16a34a; }
.pd-badges .pd-badge.stock   { background:#2563eb; }
.pd-badges .pd-badge.preorder { background:#a855f7; }
.pd-badges .pd-badge.coming  { background:#6b7280; }

/* ---------- Similar + history grids (p-title clamp) ---------- */
.product-grid .p-title-clamp a, .pd-similar-grid .p-title-clamp a {
    display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical;
    overflow:hidden; text-overflow:ellipsis; line-height:1.35; max-height:calc(1.35em * 3);
}

/* ---------- Gallery extras (families + bonuses col stâng desktop) ---------- */
.pd-gallery-extras { margin-top:20px; display:flex; flex-direction:column; gap:14px; }
@media (min-width: 901px) {
    .pd-info > .pd-families-legacy { display:none; }
    .pd-gallery-extras > .pd-bonuses { display:none; }
}
@media (max-width: 900px) {
    .pd-gallery-extras { display:none; }
}

/* ---------- Variants ---------- */
.pd-variants { margin:14px 0; }
.pd-variants-label { font-size:12px; color:var(--muted); letter-spacing:0.04em; text-transform:uppercase; font-weight:600; margin-bottom:8px; font-family:var(--f-mono, monospace); }
.pd-variants-list { display:flex; gap:8px; flex-wrap:wrap; }
.pd-variant {
    display:inline-flex; align-items:center; gap:8px;
    padding:6px 10px; background:#fff; border:1px solid var(--border); border-radius:10px;
    text-decoration:none; color:var(--ink); font-size:13px;
    transition:all .15s ease;
}
.pd-variant:hover { border-color:var(--ink); }
.pd-variant img { width:32px; height:32px; object-fit:contain; }

/* ---------- Families legacy ---------- */
.pd-families-legacy { margin:14px 0; }
.pd-families-legacy > div { margin-bottom:18px; }
.pd-families-legacy > div > div:first-child {
    font-size:14px; color:var(--ink); font-weight:600; margin-bottom:10px;
}
.pd-families-legacy > div > div:first-child .accent { color:var(--ink); font-weight:700; }
.pd-families-legacy .d-flex { display:flex !important; gap:10px; flex-wrap:wrap; }
.pd-families-legacy .my-2 { margin:8px 0 !important; }

.pd-families-legacy .fam-item-text,
.pd-families-legacy .fam-item-text_selected {
    display:inline-flex; align-items:center; justify-content:center;
    padding:10px 20px; min-width:70px; height:44px;
    background:#fff; border:1.5px solid var(--border); border-radius:999px;
    font-size:14px; font-weight:600; color:var(--ink); cursor:pointer;
    transition:all .15s ease; white-space:nowrap;
}
.pd-families-legacy .fam-item-text_selected {
    background:var(--ink); color:#fff; border-color:var(--ink);
}
.pd-families-legacy .fam_link:hover .fam-item-text { border-color:var(--ink); }

.pd-families-legacy .fam-item-image,
.pd-families-legacy .fam-item-image_selected {
    display:flex; flex-direction:column; align-items:center; gap:6px;
    padding:8px; width:86px;
    background:#fff; border:1.5px solid var(--border); border-radius:12px;
    font-size:12px; color:var(--ink); cursor:pointer;
    transition:all .15s ease; text-align:center;
}
.pd-families-legacy .fam-item-image_selected {
    border:2.5px solid var(--ink); padding:7px;
}
.pd-families-legacy .fam_link:hover .fam-item-image { border-color:var(--ink); }
.pd-families-legacy .fam-item-image > div:first-child,
.pd-families-legacy .fam-item-image_selected > div:first-child {
    width:60px; height:60px; display:flex; align-items:center; justify-content:center;
    background:#f8f9fb; border-radius:8px; overflow:hidden;
}
.pd-families-legacy .fam-item-image img,
.pd-families-legacy .fam-item-image_selected img { width:56px !important; height:56px !important; object-fit:contain; }
.pd-families-legacy .fam-item-image > div:last-child,
.pd-families-legacy .fam-item-image_selected > div:last-child {
    font-size:12px; color:var(--ink); font-weight:500; line-height:1.2;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:70px;
}
.pd-families-legacy .fam_link { text-decoration:none; color:inherit; display:inline-block; }
.pd-families-legacy .fam-item-image.disabled,
.pd-families-legacy .fam-item-image-disabled { opacity:0.4; pointer-events:none; }

/* Bootstrap shims for families legacy */
.pd-families-legacy .align-self-center { align-self:center; }
.pd-families-legacy .h-100 { height:auto; }
.pd-families-legacy .flex-column { flex-direction:column; }
.pd-families-legacy .position-relative { position:relative; }
.pd-families-legacy .img-fluid { max-width:100%; height:auto; }
.pd-families-legacy .mx-auto { margin-left:auto; margin-right:auto; }
.pd-families-legacy .d-block { display:block; }

/* ---------- Bonuses ---------- */
.pd-bonuses {
    margin:16px 0; padding:14px 16px;
    background:linear-gradient(135deg, #fef3c7, #fed7aa);
    border:1px solid #f59e0b; border-radius:12px;
}
.pd-bonuses-head { display:flex; align-items:center; gap:8px; font-weight:700; color:#92400e; font-size:14px; margin-bottom:10px; }
.pd-bonuses-list { list-style:none; padding:0; margin:0; display:flex; gap:10px; flex-wrap:wrap; }
.pd-bonus {
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(255,255,255,.7); padding:6px 12px; border-radius:8px;
    font-size:13px; color:var(--ink);
}
.pd-bonus img { width:36px; height:36px; object-fit:contain; }

/* ---------- Secondary / alert buttons ---------- */
.pd-secondary-row { display:flex; gap:10px; margin-bottom:10px; flex-wrap:wrap; }
.pd-sec-btn {
    display:inline-flex; align-items:center; gap:8px;
    padding:8px 14px; background:#fff; color:var(--muted);
    border:1px solid var(--border); border-radius:10px;
    font-size:13px; font-weight:500; cursor:pointer;
    transition:all .15s ease;
}
.pd-sec-btn:hover { color:var(--ink); border-color:var(--ink); }
.pd-alert-btn {
    flex:1 1 auto;
    display:inline-flex; align-items:center; justify-content:center; gap:10px;
    padding:12px 22px; background:#fff; color:var(--ink);
    border:1.5px solid var(--border); border-radius:14px;
    font-size:15px; font-weight:700; cursor:pointer; letter-spacing:0.01em;
    transition:all .18s ease;
}
.pd-alert-btn:hover { border-color:var(--ink); background:#f8f9fb; }
.pd-alert-btn svg { flex:0 0 auto; color:var(--muted); transition:color .18s ease; }
.pd-alert-btn:hover svg { color:var(--ink); }

/* ---------- Reviews head + toolbar ---------- */
.pd-reviews-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; flex-wrap:wrap; margin-bottom:16px; }
.pd-reviews-head h2 { margin:0 !important; }
.pd-reviews-toolbar { display:flex; gap:16px; margin-bottom:20px; padding-bottom:16px; border-bottom:1px solid var(--border); flex-wrap:wrap; align-items:center; }
.pd-chk { display:inline-flex; align-items:center; gap:8px; font-size:13px; color:var(--ink); cursor:pointer; }
.pd-rev-stars-filter { display:flex; align-items:center; gap:6px; margin-left:auto; font-size:13px; flex-wrap:wrap; }
.pd-rev-stars-filter > span { color:var(--muted); margin-right:4px; }
.pd-rev-star-btn {
    padding:4px 10px; background:#fff; color:var(--muted);
    border:1px solid var(--border); border-radius:999px;
    font-size:12px; cursor:pointer; transition:all .15s ease;
}
.pd-rev-star-btn:hover { color:var(--ink); border-color:var(--ink); }
.pd-rev-star-btn.on { background:var(--ink); color:#fff; border-color:var(--ink); }

/* ---------- Forit modal (fm-*) ---------- */
.fm-backdrop {
    display:none; position:fixed; inset:0; background:rgba(0,0,0,.5);
    z-index:1998; backdrop-filter:blur(3px);
}
.fm-backdrop.open { display:block; }
.fm-modal {
    display:none; position:fixed; top:50%; left:50%; transform:translate(-50%, -50%);
    width:95%; max-width:500px; max-height:90vh; overflow-y:auto;
    background:#fff; border-radius:16px; z-index:1999;
    box-shadow:0 20px 60px rgba(0,0,0,.25);
}
.fm-modal.open { display:block; }
.fm-head {
    display:flex; justify-content:space-between; align-items:center;
    padding:20px 24px; border-bottom:1px solid var(--border);
}
.fm-head h3 { margin:0; font-family:var(--f-serif, 'Instrument Serif', serif); font-weight:400; font-size:20px; }
.fm-close {
    border:0; background:transparent; cursor:pointer;
    font-size:28px; line-height:1; color:var(--muted); padding:0; width:32px; height:32px;
}
.fm-close:hover { color:var(--ink); }
.fm-body { padding:20px 24px 24px; }
.fm-field { margin-bottom:14px; }
.fm-field label { display:block; font-size:12px; font-weight:600; color:var(--muted); letter-spacing:0.04em; text-transform:uppercase; margin-bottom:6px; }
.fm-field input, .fm-field textarea {
    width:100%; padding:10px 12px; border:1px solid var(--border); border-radius:8px;
    font:inherit; font-size:14px; color:var(--ink); background:#fff;
}
.fm-field input:focus, .fm-field textarea:focus { outline:none; border-color:var(--accent, #f97316); }
.fm-field textarea { resize:vertical; min-height:80px; }
.fm-note { font-size:12px; color:var(--muted); margin:12px 0; padding:10px 12px; background:#f8f9fb; border-radius:8px; }
.fm-stars-input { display:flex; gap:4px; font-size:28px; cursor:pointer; color:#d1d5db; }
.fm-stars-input .fm-star { cursor:pointer; transition:color .1s; }
.fm-stars-input .fm-star.on { color:#fbbf24; }

@media (max-width: 900px) {
    .pd-reviews-toolbar { flex-direction:column; align-items:flex-start; gap:10px; }
    .pd-rev-stars-filter { margin-left:0; }
    .pd-rev-stars-filter > span:first-child { display:none; }
}
@media (max-width: 600px) {
    .fm-modal { width:100%; max-height:100vh; top:auto; bottom:0; left:0; transform:none; border-radius:16px 16px 0 0; }
    .fm-head { padding:16px 20px; }
    .fm-body { padding:16px 20px 20px; }
}

/* ---------- Lazy skeleton ---------- */
.pd-lazy-skeleton { display:flex; gap:14px; overflow:hidden; padding:4px; }
.pd-lazy-card { flex:0 0 260px; height:380px; background:linear-gradient(90deg,#f3f4f6 0%,#e5e7eb 50%,#f3f4f6 100%); background-size:200% 100%; border-radius:12px; animation:pd-shimmer 1.4s infinite; }
.pd-lazy-mini { flex:0 0 140px; height:180px; background:linear-gradient(90deg,#f3f4f6 0%,#e5e7eb 50%,#f3f4f6 100%); background-size:200% 100%; border-radius:10px; animation:pd-shimmer 1.4s infinite; }
@keyframes pd-shimmer { 0% { background-position:200% 0; } 100% { background-position:-200% 0; } }

/* ---------- History mini cards ---------- */
.pd-history-wrap { position:relative; margin:0 -4px; }
.pd-history-track {
    display:flex; gap:10px; overflow-x:auto; overflow-y:hidden;
    scroll-snap-type:x proximity; scroll-behavior:smooth;
    padding:4px 4px 10px; scrollbar-width:thin; scrollbar-color:var(--border) transparent;
}
.pd-history-track::-webkit-scrollbar { height:6px; }
.pd-history-track::-webkit-scrollbar-thumb { background:var(--border); border-radius:3px; }
.pd-history-card {
    flex:0 0 140px; scroll-snap-align:start;
    display:flex; flex-direction:column; gap:6px; padding:10px;
    background:#fff; border:1px solid var(--border); border-radius:10px;
    text-decoration:none; color:var(--ink);
    transition:border-color .15s ease, transform .15s ease;
}
.pd-history-card:hover { border-color:var(--ink); transform:translateY(-2px); }
.pd-history-img {
    width:100%; aspect-ratio:1; background:#fff; border-radius:6px;
    display:flex; align-items:center; justify-content:center; overflow:hidden;
}
.pd-history-img img { width:100%; height:100%; object-fit:contain; }
.pd-history-title {
    font-size:12px; line-height:1.3; color:var(--ink);
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
    overflow:hidden; min-height:2.6em;
}
.pd-history-price { font-size:13px; font-weight:700; color:var(--ink); margin-top:auto; }
@media (max-width: 600px) {
    .pd-history-card { flex:0 0 120px; padding:8px; }
    .pd-lazy-mini { flex:0 0 120px; height:160px; }
}

/* ---------- Product info panel ---------- */
.pd-info .brand-line { font-size:12px; color:var(--muted); letter-spacing:0.04em; text-transform:uppercase; font-family:var(--f-mono, monospace); }
/* Disclaimer jos de tot pe pagina de produs */
.pd-disclaimer { margin:28px 0 8px; padding-top:16px; border-top:1px solid var(--border); font-size:12px; line-height:1.6; color:var(--muted); }
/* Coduri produs — contrast mare, foarte vizibile */
.pd-codes { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.pd-code { display:inline-flex; align-items:stretch; border-radius:8px; overflow:hidden; font-family:var(--f-mono, monospace); font-size:13px; line-height:1; box-shadow:0 1px 2px rgba(0,0,0,0.08); }
.pd-code .pd-code-lbl { display:flex; align-items:center; padding:6px 9px; background:var(--ink, #1a1a2e); color:#fff; font-weight:600; letter-spacing:0.03em; text-transform:uppercase; font-size:11px; }
.pd-code .pd-code-val { display:flex; align-items:center; padding:6px 11px; background:#fff; color:var(--ink, #1a1a2e); font-weight:700; letter-spacing:0.02em; border:1px solid var(--ink, #1a1a2e); border-left:none; }
/* Cod ForIT — accent brand pentru diferențiere */
.pd-code-forit .pd-code-lbl { background:var(--accent, #f5821f); color:#fff; }
.pd-code-forit .pd-code-val { color:var(--accent-ink, #b85c00); border-color:var(--accent, #f5821f); }
.pd-info h1 { font-size:32px; line-height:1.2; margin:12px 0 16px; font-family:var(--f-serif, 'Instrument Serif', serif); font-weight:400; }
.pd-info .sub-meta { display:flex; align-items:center; gap:10px; font-size:14px; color:var(--muted); margin-bottom:20px; }
.pd-info .sub-meta .stars { color:#fbbf24; font-size:16px; letter-spacing:2px; }

/* ---------- Price block ---------- */
.pd-price-block { display:flex; flex-direction:column; gap:0; margin:24px 0 6px; }
.pd-price-block .pd-price-top { display:flex; align-items:center; gap:8px; margin-bottom:-2px; }
.pd-price-block .pd-price-now { display:flex; align-items:baseline; }
.pd-price-block .now { font-size:40px; font-weight:800; color:var(--ink); line-height:1.05; }
.pd-price-block .cur { font-size:18px; color:var(--muted); font-weight:500; margin-left:4px; }
.pd-price-block .was { font-size:15px; color:var(--muted); text-decoration:line-through; }
.pd-price-block .save { background:var(--danger, #e11d48); color:#fff; padding:2px 8px; border-radius:6px; font-size:12px; font-weight:700; line-height:1.3; }
.vat-note { color:var(--muted); font-size:13px; margin-bottom:16px; }

/* ---------- Stock row ---------- */
.stock-row { display:flex; align-items:center; gap:10px; padding:12px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); font-size:14px; font-weight:600; margin-bottom:20px; }
.stock-row .dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
/* state colors — mirrors .p-stock-* din styles.css */
.stock-row--ok               { color:#16a34a; } .stock-row--ok               .dot { background:#22c55e; }
.stock-row--limited          { color:#2563eb; } .stock-row--limited          .dot { background:#3b82f6; }
.stock-row--supplier         { color:#65a30d; } .stock-row--supplier         .dot { background:#84cc16; }
.stock-row--supplier_limited { color:#ca8a04; } .stock-row--supplier_limited .dot { background:#eab308; }
.stock-row--preorder         { color:#7e22ce; } .stock-row--preorder         .dot { background:#a855f7; }
.stock-row--coming           { color:#6b7280; } .stock-row--coming           .dot { background:#9ca3af; }
.stock-row--out              { color:#1f2937; } .stock-row--out              .dot { background:#374151; }

/* ---------- CTA row ---------- */
.pd-cta-row { display:flex; align-items:stretch; gap:10px; margin-bottom:12px; flex-wrap:nowrap; max-width:480px; }
.pd-cta-row .qty {
    display:inline-flex; align-items:center; border:1px solid var(--border); border-radius:10px; background:#fff;
}
.pd-cta-row .qty button {
    width:40px; height:44px; border:0; background:transparent; cursor:pointer;
    font-size:18px; color:var(--ink); font-weight:600;
}
.pd-cta-row .qty button:hover { background:#f3f4f6; }
.pd-cta-row .qty input { width:4ch; min-width:4ch; max-width:8ch; padding:0; height:44px; text-align:center; font-weight:600; border:0; background:transparent; color:inherit; font-family:inherit; font-size:inherit; -moz-appearance:textfield; cursor:text; }
.pd-cta-row .qty input::-webkit-outer-spin-button, .pd-cta-row .qty input::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.pd-cta-row .qty input:focus { outline:none; }
.pd-cta-row .qty:focus-within { border-color: var(--accent); }
.pd-cta-row .btn.lg { padding:12px 22px 12px 2px; font-size:15px; font-weight:700; border-radius:14px; display:inline-flex; align-items:center; justify-content:flex-start; gap:0; letter-spacing:0.01em; white-space:nowrap; }
.pd-cta-row .btn.lg svg { flex:0 0 auto; display:block; }
.pd-cta-row .btn.primary > .pd-cart-ic { flex:0 0 32px; display:inline-flex; align-items:center; justify-content:center; line-height:0; margin-top:-11px; }
.pd-cta-row .btn.primary > span:not(.pd-cart-ic) { flex:1 1 auto; text-align:center; padding-right:32px; }
.pd-cta-row .btn.outline { background:#fff; color:var(--ink); border:1px solid var(--border); cursor:pointer; }
.pd-cta-row .btn.primary {
    position:relative; overflow:hidden; isolation:isolate;
    background:linear-gradient(90deg, #fb923c 0%, #f97316 60%, #ea580c 100%);
    color:#fff; border:0; cursor:pointer; flex:1 1 auto;
    box-shadow:0 6px 16px -4px rgba(249,115,22,0.5), 0 2px 4px rgba(234,88,12,0.2);
    transition:transform .18s ease, box-shadow .2s ease, filter .2s ease;
}
.pd-cta-row .btn.primary::before {
    content:""; position:absolute; inset:0; z-index:-1;
    background:linear-gradient(120deg, transparent 20%, rgba(255,255,255,0.28) 50%, transparent 80%);
    transform:translateX(-120%); transition:transform .6s ease;
}
.pd-cta-row .btn.primary:hover { transform:translateY(-1px); box-shadow:0 10px 24px -4px rgba(249,115,22,0.6), 0 3px 6px rgba(234,88,12,0.25); filter:brightness(1.04); }
.pd-cta-row .btn.primary:hover::before { transform:translateX(120%); }
.pd-cta-row .btn.primary:active { transform:translateY(0); box-shadow:0 3px 10px -2px rgba(234,88,12,0.5); }
.pd-cta-row .btn.primary .pd-cart-ic {
    flex:0 0 auto;
    width:48px; height:48px;
    display:inline-flex; align-items:center; justify-content:center;
    color:#fff;
    filter:drop-shadow(0 1px 2px rgba(0,0,0,0.25));
    transition:transform .25s cubic-bezier(.5,-0.25,.3,1.4);
}
.pd-cta-row .btn.primary:hover .pd-cart-ic { transform:scale(1.08) rotate(-6deg); }
.pd-cta-row .btn.primary .pd-cart-ic svg { width:32px; height:32px; }
.pd-cta-row .p-fav-lg { padding:0 18px; }

/* ---------- Perks ---------- */
.pd-perks {
    list-style:none; padding:18px 0 0; margin:0;
    display:flex; justify-content:space-between; gap:12px;
    border-top:1px solid var(--border);
}
.pd-perk { display:flex; align-items:center; gap:10px; color:var(--ink); flex:0 1 auto; min-width:0; }
.pd-perk-icon {
    display:inline-flex; align-items:center; justify-content:center;
    width:38px; height:38px; border-radius:50%;
    background:rgba(249, 115, 22, 0.12);
    color:var(--accent, #f97316); flex-shrink:0;
}
.pd-perk-text { display:flex; flex-direction:column; line-height:1.25; min-width:0; }
.pd-perk-label { font-size:11px; text-transform:uppercase; letter-spacing:0.04em; color:var(--muted); font-weight:600; }
.pd-perk-value { font-size:13px; font-weight:700; color:var(--ink); margin-top:2px; }
@media (max-width: 600px) {
    .pd-perks { gap:6px; padding-top:14px; }
    .pd-perk { gap:6px; }
    .pd-perk-icon { width:28px; height:28px; }
    .pd-perk-icon svg { width:14px; height:14px; }
    .pd-perk-label { font-size:9px; letter-spacing:0.02em; }
    .pd-perk-value { font-size:11px; font-weight:700; margin-top:1px; }
}

/* ---------- Wishlist heart on main image ---------- */
.pd-main-img .pd-img-fav {
    position:absolute; top:14px; right:14px; z-index:3;
    width:44px; height:44px; border-radius:50%;
    background:rgba(255,255,255,0.95); backdrop-filter:blur(6px);
    border:1px solid var(--border);
    display:grid; place-items:center; cursor:pointer; color:var(--muted);
    transition:all .15s ease;
}
.pd-main-img .pd-img-fav:hover,
.pd-main-img .pd-img-fav.on { color:#dc2626; border-color:#dc2626; }

/* ---------- Delivery estimate ---------- */
.pd-delivery-estimate {
    margin:16px 0; padding:16px 20px;
    background:#eff6ff; border:1px solid #bfdbfe; border-radius:12px;
    color:#1e40af; font-size:13px;
}
.pd-delivery-estimate .info_delivery { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:flex-start; }
.pd-delivery-estimate .info_date_delivery,
.pd-delivery-estimate .info_price_delivery { display:flex; gap:10px; align-items:flex-start; min-width:0; }
.pd-delivery-estimate .info_date_delivery > div:not(.info_date_delivery_icon),
.pd-delivery-estimate .info_price_delivery > div:not(.info_price_delivery_icon) { min-width:0; overflow-wrap:anywhere; }
.pd-delivery-estimate .info_date_delivery_icon,
.pd-delivery-estimate .info_price_delivery_icon {
    display:inline-block; width:28px; height:28px; flex-shrink:0;
    background-repeat:no-repeat; background-position:center; background-size:24px;
}
.pd-delivery-estimate .info_date_delivery_icon {
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d4ed8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
}
.pd-delivery-estimate .info_price_delivery_icon {
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d4ed8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='1' y='6' width='14' height='11' rx='1'/><path d='M15 9h4l3 4v4h-7z'/><circle cx='6' cy='19' r='2'/><circle cx='18' cy='19' r='2'/></svg>");
}
.pd-delivery-estimate .info_date_delivery_txt > div:first-child,
.pd-delivery-estimate .info_price_delivery > div:last-child > div:first-child {
    font-size:12px; color:#60a5fa; text-transform:uppercase; letter-spacing:0.04em; font-weight:600; margin-bottom:2px;
}
.pd-delivery-estimate .info_date { font-weight:700; font-size:14px; color:#1e3a8a; }
.pd-delivery-estimate .info_price_delivery > div:last-child > div:last-child { font-weight:600; color:#1e3a8a; line-height:1.6; }
.pd-delivery-estimate .text-free { color:#16a34a; font-weight:700; }
@media (max-width: 600px) {
    .pd-delivery-estimate { padding:12px 14px; }
    .pd-delivery-estimate .info_delivery { gap:10px; }
    .pd-delivery-estimate .info_date_delivery_icon,
    .pd-delivery-estimate .info_price_delivery_icon { width:22px; height:22px; background-size:20px; }
    .pd-delivery-estimate .info_date { font-size:12px; }
    .pd-delivery-estimate .info_price_delivery > div:last-child > div:last-child { font-size:11px; line-height:1.5; }
    .pd-delivery-estimate .info_date_delivery_txt > div:first-child,
    .pd-delivery-estimate .info_price_delivery > div:last-child > div:first-child { font-size:9px; letter-spacing:0.02em; }
}

/* ---------- Sections (stacked, no tabs) ---------- */
.pd-section {
    margin-top:16px; padding:28px 32px;
    background:#fff; border:1px solid var(--border); border-radius:16px;
    box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.pd-section h2 {
    margin:0 0 18px; font-family:var(--f-serif, 'Instrument Serif', serif);
    font-weight:400; font-size:26px;
    display:flex; align-items:baseline; gap:14px; flex-wrap:wrap;
}
.pd-section h2 .pd-reviews-meta { font-family:var(--f-mono, monospace); font-size:13px; color:var(--muted); font-weight:normal; letter-spacing:0.04em; }
.pd-section p, .pd-section .pd-desc { line-height:1.7; color:var(--ink); font-size:14px; }
.pd-section .pd-desc p { margin:0 0 12px; }

/* ---------- Rich description (pd-desc) ---------- */
.pd-desc { width:100%; text-align:center; }
.pd-desc * { max-width:100%; }
.pd-desc p, .pd-desc li, .pd-desc blockquote, .pd-desc .pd-text-left { text-align:left; }
.pd-desc table,
.pd-desc > div,
.pd-desc figure,
.pd-desc .pd-media,
.pd-desc .image-wrapper { margin-left:auto !important; margin-right:auto !important; }
.pd-desc img { display:block; margin-left:auto !important; margin-right:auto !important; }
.pd-desc img, .pd-desc iframe, .pd-desc video, .pd-desc embed {
    max-width:100%; height:auto; display:block; margin:12px auto;
}
.pd-desc pre, .pd-desc code { max-width:100%; overflow-x:auto; white-space:pre-wrap; word-wrap:break-word; }
.pd-desc ul, .pd-desc ol { padding-left:22px; margin:0 0 12px; }
.pd-desc h1, .pd-desc h2, .pd-desc h3, .pd-desc h4 {
    margin:20px 0 10px; line-height:1.3;
    font-family:var(--f-serif, 'Instrument Serif', serif); font-weight:400;
}
.pd-desc h1 { font-size:24px; }
.pd-desc h2 { font-size:20px; }
.pd-desc h3 { font-size:18px; }
.pd-desc h4 { font-size:16px; }
.pd-desc table { border-collapse:collapse; margin:16px 0; }
.pd-desc table td, .pd-desc table th { padding:10px; vertical-align:top; }
.pd-desc table td img { margin:0 auto; }

@media (max-width: 900px) {
    .pd-desc table,
    .pd-desc table tbody,
    .pd-desc table tr {
        display:block; width:100% !important; max-width:100% !important;
        height:auto !important; min-height:0 !important;
        padding:0 !important; border:0 !important; margin:0 !important;
    }
    .pd-desc table td,
    .pd-desc table th {
        display:flex; flex-direction:column; align-items:center;
        width:100% !important; max-width:100% !important;
        height:auto !important; min-height:0 !important;
        padding:0 !important; border:0 !important; margin:0 0 8px !important;
    }
    .pd-desc table td > p,
    .pd-desc table td > div { align-self:stretch; text-align:left; }
    .pd-desc table td img { margin:8px auto !important; max-width:100%; align-self:center; }
    .pd-desc table tr { margin-bottom:4px !important; }
    .pd-desc table.data-table { display:block; overflow-x:auto; white-space:nowrap; }
    .pd-desc br + br { display:none; }
    .pd-desc p:empty, .pd-desc div:empty { display:none; }
    .pd-desc td:empty { display:none !important; }
    .pd-desc p, .pd-desc div { margin-top:0; }
}

/* Override admin inline styles that break mobile */
.pd-desc [style*="font-size"] { font-size:inherit !important; }
.pd-desc [style*="width"] { width:auto !important; }
.pd-desc [style*="float"] { float:none !important; }
.pd-desc [style*="height"] { height:auto !important; }

/* ---------- Description clip + read-more ---------- */
.pd-desc-wrap { position:relative; }
.pd-desc-clipped { max-height:520px; overflow:hidden; }
.pd-desc-wrap.has-overflow .pd-desc-clipped {
    mask-image:linear-gradient(to bottom, #000 70%, transparent 100%);
    -webkit-mask-image:linear-gradient(to bottom, #000 70%, transparent 100%);
}
.pd-desc-toggle {
    display:none; width:100%; margin:14px 0 0; padding:14px 24px;
    background:#fff; color:var(--accent, #f97316); border:1.5px solid var(--accent, #f97316); border-radius:12px;
    font-weight:600; font-size:14px; cursor:pointer; transition:all .15s ease;
    text-align:center;
}
.pd-desc-toggle:hover { background:var(--accent, #f97316); color:#fff; }
.pd-desc-wrap.has-overflow .pd-desc-toggle { display:block; }
.pd-desc-wrap.expanded .pd-desc-clipped { max-height:none; mask-image:none; -webkit-mask-image:none; }

/* ---------- Spec table ---------- */
.spec-table { width:100%; border-collapse:collapse; table-layout:fixed; }
.spec-table td { padding:12px 16px; border-bottom:1px solid var(--border); font-size:14px; overflow-wrap:anywhere; word-break:break-word; }
.spec-table tr:last-child td { border-bottom:0; }
/* Valoarea care are filtru duce in categoria filtrata pe ea. Discret dinadins: pastreaza
   culoarea textului si arata legatura printr-o linie punctata, ca tabelul de specificatii
   sa ramana lizibil, nu un perete de linkuri colorate. */
.spec-table a.spec-filter-link { color:inherit; text-decoration:none; border-bottom:1px dotted var(--muted); }
.spec-table a.spec-filter-link:hover,
.spec-table a.spec-filter-link:focus-visible { color:var(--accent); border-bottom-color:var(--accent); }
.spec-table td:first-child { color:var(--muted); width:40%; }
@media (max-width: 600px) {
    .spec-table td { padding:10px 8px; font-size:13px; word-break:break-all; }
    .spec-table td:first-child { width:45%; }
}

/* ---------- Reviews list ---------- */
.pd-reviews-list { display:flex; flex-direction:column; gap:16px; }
.pd-review {
    display:flex; gap:20px; padding:18px 20px;
    background:#f8f9fb; border-radius:12px; align-items:flex-start;
}
.pd-review-user {
    flex-shrink:0; width:120px;
    display:flex; flex-direction:column; align-items:center; text-align:center; gap:4px;
}
.pd-review-avatar {
    width:48px; height:48px; border-radius:50%;
    background:#fff; border:1px solid var(--border);
    display:grid; place-items:center; color:var(--muted); margin-bottom:4px;
}
.pd-review-author { font-weight:600; font-size:13px; color:var(--ink); word-break:break-word; }
.pd-review-date { font-size:11px; color:var(--muted); font-family:var(--f-mono, monospace); }
.pd-review-badge {
    display:inline-flex; align-items:center; gap:4px;
    font-size:10px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase;
    padding:3px 8px; border-radius:6px; margin-top:4px;
}
.pd-review-badge-verified { background:#dcfce7; color:#15803d; }
.pd-review-badge-customer { background:#dbeafe; color:#1e40af; }
.pd-review-badge-visitor  { background:#f3f4f6; color:#6b7280; }
.pd-reviews-paging { margin-top:16px; text-align:center; }
.pd-reviews-paging .btn { padding:10px 20px; background:#fff; color:var(--ink); border:1px solid var(--border); border-radius:10px; cursor:pointer; font-weight:600; font-size:13px; }
.pd-reviews-paging .btn:hover { border-color:var(--ink); }
.pd-review-content { flex:1 1 auto; min-width:0; padding-top:4px; }
.pd-review-info-mobile { display:none; }
.pd-review-stars { color:#fbbf24; font-size:16px; letter-spacing:2px; display:block; margin-bottom:8px; }
.pd-review-title { display:block; font-size:15px; color:var(--ink); margin-bottom:8px; font-weight:600; }
.pd-review-body { line-height:1.65; color:var(--ink); font-size:14px; }

@media (max-width: 600px) {
    .pd-review {
        display:grid;
        grid-template-columns:auto 1fr;
        grid-template-areas:
            "avatar info"
            "body body";
        gap:14px;
        padding:16px; background:#fff;
        border:1px solid var(--border); border-radius:14px;
        box-shadow:0 1px 3px rgba(0,0,0,.04);
        text-align:left;
    }
    .pd-review-user { grid-area:avatar; width:auto; flex-direction:column; align-items:center; justify-content:flex-start; gap:0; }
    .pd-review-avatar { width:64px; height:64px; margin-bottom:0; }
    .pd-review-user > .pd-review-author,
    .pd-review-user > .pd-review-date,
    .pd-review-user > .pd-review-badge { display:none; }
    .pd-review-content { grid-area:info; text-align:left; padding:0; }
    .pd-review-info-mobile { display:flex; flex-direction:column; gap:3px; margin-bottom:6px; }
    .pd-review-info-mobile .pd-review-author { font-weight:600; font-size:14px; color:var(--ink); }
    .pd-review-info-mobile .pd-review-date { font-size:11px; color:var(--muted); font-family:var(--f-mono, monospace); }
    .pd-review-info-mobile .pd-review-badge { align-self:flex-start; margin-top:0; }
    .pd-review-stars { text-align:left; display:block; margin-bottom:6px; }
    .pd-review-title { text-align:left; }
    .pd-review-body {
        grid-area:body; text-align:left; font-size:13.5px;
        padding-top:12px; border-top:1px solid var(--border);
        word-wrap:break-word; overflow-wrap:break-word;
    }
}

/* =========================================================================
   BREAKPOINTS
   ========================================================================= */

/* 901–1200px: 2 col, thumbs sub imaginea mare (row) */
@media (max-width: 1200px) and (min-width: 901px) {
    .pd-gallery { flex-direction:column-reverse; align-items:stretch; }
    .pd-thumbs { flex-direction:row; flex-wrap:nowrap; max-height:none; overflow-x:auto; overflow-y:hidden; padding-right:0; padding-bottom:4px; }
    .pd-thumbs::-webkit-scrollbar { width:auto; height:4px; }
}

/* ≤900px: 1 coloană */
@media (max-width: 900px) {
    .pd-layout { grid-template-columns:1fr; gap:24px; }
    .pd-gallery { flex-direction:column-reverse; align-items:stretch; }
    .pd-thumbs { flex-direction:row; flex-wrap:nowrap; max-height:none; overflow-x:auto; overflow-y:hidden; padding-right:0; padding-bottom:4px; }
    .pd-thumbs::-webkit-scrollbar { width:auto; height:4px; }
    .pd-info h1 { font-size:22px; }
    .pd-price-block .now { font-size:32px; }
    .pd-perks { grid-template-columns:1fr 1fr; }
    .pd-thumb { width:56px; height:56px; }
    .pd-section { padding:20px; }
    .pd-section h2 { font-size:22px; }
}

/* ≤600px */
@media (max-width: 600px) {
    .pd-perks { grid-template-columns:1fr; }
    .pd-info h1 { font-size:20px; }
    .pd-price-block .now { font-size:28px; }
    .pd-main-img { padding:16px; }
    .pd-thumb { width:48px; height:48px; }
    .pd-cta-row .qty button { width:36px; height:40px; }
    .crumbs-title { display:none; }
    .pd-desc { font-size:13.5px; line-height:1.65; word-wrap:break-word; overflow-wrap:break-word; }
    .pd-desc h1 { font-size:20px; }
    .pd-desc h2 { font-size:18px; }
    .pd-desc h3 { font-size:16px; }
    .pd-section { padding:16px; }
}

/* ≤420px */
@media (max-width: 420px) {
    .pd-container { padding:0 12px; }
    .pd-cta-row { gap:6px; }
}

/* ---------- Promo scroller (produse similare) ---------- */
.promo-scroller { position: relative; margin: 0 -4px; }
.promo-track {
    display: flex; gap: 14px;
    overflow-x: auto; overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding: 4px;
    scrollbar-width: none;
    align-items: stretch;
}
.promo-track::-webkit-scrollbar { display: none; }
.promo-slide {
    flex: 0 0 260px;
    scroll-snap-align: start;
    display: flex;
}
.promo-slide > .p-card { width: 100%; display: flex; flex-direction: column; height: 100%; }
.promo-slide .p-bottom { margin-top: auto; }
.promo-nav {
    position: absolute;
    top: 50%; transform: translateY(-50%);
    width: 44px; height: 44px; border-radius: 50%;
    background: #fff; border: 1px solid var(--border);
    color: var(--ink);
    display: grid; place-items: center;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    z-index: 2;
    transition: background .15s, color .15s, transform .1s;
}
.promo-nav:hover { background: var(--accent); color: #fff; border-color: var(--accent); }
.promo-nav:active { transform: translateY(-50%) scale(0.95); }
.promo-nav.prev { left: -8px; }
.promo-nav.prev .icon svg { transform: rotate(180deg); transform-origin: center; }
.promo-nav.next { right: -8px; }
@media (max-width: 640px) {
    .promo-slide { flex-basis: 80vw; max-width: 300px; }
    .promo-nav { display: none; }
    .promo-scroller { margin: 0; overflow: hidden; }
    .promo-track { padding: 4px 0; }
}

/* Eticheta de campanie pe fişa produsului — peste galerie, mai mare decât pe card. */
.pd-badge.promo { background: var(--accent, #0b3cdc); color: #fff; }
.pd-badge-img {
  width: 84px; height: 84px; object-fit: contain; display: block;
  filter: drop-shadow(0 1px 3px rgba(0,0,0,.2));
}
@media (max-width: 640px) { .pd-badge-img { width: 64px; height: 64px; } }

/* Text de campanie pe fişa produsului — deasupra descrierii, vizibil dar nu strident. */
.pd-promo-desc {
  margin: 0 0 14px; padding: 12px 14px;
  border-left: 3px solid var(--accent, #0b3cdc);
  background: color-mix(in srgb, var(--accent, #0b3cdc) 6%, transparent);
  border-radius: 4px; font-size: .95rem; line-height: 1.55;
}
.pd-promo-desc p { margin: 0 0 .5em; }
.pd-promo-desc p:last-child { margin-bottom: 0; }
.pd-promo-desc a { color: var(--accent, #0b3cdc); text-decoration: underline; }

/* ── Resigilate — secţiune proprie, după recenzii ──────────────────────────
   Se văd DOAR aici: în categorii şi în căutare sunt ascunse dinadins, altfel acelaşi
   produs ar apărea de mai multe ori într-o listă şi ar concura cu el însuşi.
   Fiecare bucată e un produs de sine stătător, deci primeşte card propriu şi buton de coş. */
.pd-resealed-sec .pd-rs-intro { color:var(--muted,#6b7684); font-size:14px; margin:-4px 0 16px; max-width:70ch; }
.pd-rs-grid { display:grid; gap:14px; grid-template-columns:1fr; }
@media (min-width:760px)  { .pd-rs-grid { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1180px) { .pd-rs-grid { grid-template-columns:repeat(3,1fr); } }

.pd-rs-card { display:flex; flex-direction:column; gap:10px; padding:16px 18px 18px;
    border:1px solid var(--line,#e3e6ea); border-radius:12px; background:#fff;
    transition:border-color .15s, box-shadow .15s; }
.pd-rs-card:hover { border-color:var(--accent,#7c3aed); box-shadow:0 6px 22px -14px rgba(0,0,0,.35); }

.pd-rs-card-head { display:flex; align-items:center; gap:10px; }
.pd-rs-badge { font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
    padding:4px 10px; border-radius:100px; background:var(--accent-soft,#f3eeff); color:var(--accent,#7c3aed); }
.pd-rs-off { margin-left:auto; font-size:13px; font-weight:800; color:#15803d; }

.pd-rs-desc { margin:0; font-size:14px; line-height:1.5; color:var(--ink-2,#41505f); }

.pd-rs-facts { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:5px; }
.pd-rs-facts li { display:flex; align-items:center; gap:7px; font-size:13px; color:var(--muted,#6b7684); }
.pd-rs-facts svg { flex:0 0 auto; opacity:.75; }

.pd-rs-foot { margin-top:auto; padding-top:12px; border-top:1px solid var(--line,#eceff2);
    display:flex; flex-direction:column; gap:10px; }
.pd-rs-prices { display:flex; align-items:baseline; gap:10px; }
.pd-rs-now { font-size:21px; font-weight:800; color:var(--ink,#1b2430); }
.pd-rs-old { font-size:14px; color:var(--muted,#96a0ab); text-decoration:line-through; }

.pd-rs-actions { display:flex; align-items:center; gap:12px; }
.pd-rs-cart { flex:1 1 auto; display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.pd-rs-cart[disabled] { opacity:.6; cursor:progress; }
.pd-rs-link { font-size:13px; color:var(--muted,#6b7684); text-decoration:none; white-space:nowrap; }
.pd-rs-link:hover { color:var(--accent,#7c3aed); text-decoration:underline; }

/* Puntea de la preţ către secţiunea de resigilate (jos, după recenzii). */
/* 🔴 Plin, verde, scris alb (Octav, 19.08): dintr-un chenar punctat şterc nu sărea în ochi, iar
   asta e singura punte către marfa mai ieftină — dacă n-o vede, n-o cumpără. Verdele e cel al temei
   (`--success`), nu unul inventat aici, ca să se schimbe odată cu ea. */
.pd-rs-jump { display:inline-flex; align-items:center; gap:8px; margin:-2px 0 14px;
    padding:9px 14px; border:0; border-radius:8px;
    background:var(--success,#16a34a); color:#fff;
    font-size:14px; font-weight:600; text-decoration:none;
    box-shadow:0 1px 2px rgba(0,0,0,.12); transition:filter .15s, box-shadow .15s; }
.pd-rs-jump:hover { filter:brightness(1.07); box-shadow:0 2px 6px rgba(0,0,0,.18); color:#fff; }
.pd-rs-jump b { font-weight:800; }
.pd-rs-jump svg { opacity:1; }

/* Starea bucăţii resigilate, sub preţ. Discretă, dar nu de ratat: la un desigilat, starea e
   informaţia care decide cumpărarea. (19.08.2026) */
.pd-reseal-note{margin:.6rem 0;padding:.6rem .75rem;border:1px solid var(--border,#e4e4e7);
  border-left:3px solid var(--accent,#f59e0b);border-radius:.375rem;background:var(--surface-2,#fafafa);}
.pd-reseal-note__t{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.03em;opacity:.7;margin-bottom:.15rem;}
.pd-reseal-note__b{font-size:.875rem;line-height:1.45;}

/* 🔴 Ancora să oprească LA TITLU, nu sub el (Octav, 19.08): antetul e `position:sticky`, aşa că
   saltul din „Vezi şi resigilat" ducea titlul secţiunii fix sub el şi părea că te-a aruncat prea jos
   în pagină. `scroll-margin-top` rezervă loc cât ţine antetul, la orice secţiune cu ancoră. */
.pd-section[id] { scroll-margin-top: 96px; }
@media (max-width: 768px) { .pd-section[id] { scroll-margin-top: 72px; } }

/* Oney 3x/4x (14.10) — un rând discret sub preţ; pop-in-ul de simulare e al lor. */
.pd-oney { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:-8px 0 16px; padding:0; border:0; background:none; font:inherit; font-size:13px; color:var(--muted); cursor:pointer; text-align:left; }
.pd-oney img { height:18px; width:auto; display:block; }
.pd-oney .pd-oney-more { text-decoration:underline; color:var(--text, inherit); }
.pd-oney:hover .pd-oney-more { text-decoration:none; }

/* Rate (22.10, modelul evomag): „de la … lei/lună" sub preţ + căsuţa cu un rând pe finanţator. */
/* Linia de sub preţ: un singur rând; la clic se desface pe loc căsuţa cu finanţatorii (.pd-fin--inline). */
.pd-fin-jump { display:inline-flex; align-items:center; gap:4px; margin:-8px 0 16px; padding:0; border:0; background:none; font:inherit; font-size:13px; color:var(--muted); text-align:left; cursor:pointer; }
.pd-fin-jump b { color:var(--ink); }
.pd-fin-jump-more { text-decoration:underline; color:var(--ink); }
.pd-fin-jump:hover .pd-fin-jump-more { text-decoration:none; }
.pd-fin-jump svg { flex:0 0 auto; transition:transform .15s; }
.pd-fin-jump[aria-expanded="true"] svg { transform:rotate(180deg); }
.pd-fin.pd-fin--inline { margin:-10px 0 16px; padding:4px 12px; }
.pd-fin { margin:14px 0 16px; padding:12px; border:1px solid var(--border); border-radius:var(--r-md); background:var(--bg-elev, var(--surface)); scroll-margin-top:170px; }
.pd-fin-head { display:flex; justify-content:space-between; align-items:baseline; gap:8px; margin:0 2px 8px; }
.pd-fin-title { font-weight:700; font-size:15px; color:var(--ink); }
.pd-fin-min { font-size:13px; color:var(--muted); white-space:nowrap; }
.pd-fin-min b { color:var(--ink); }
.pd-fin-row { display:flex; align-items:center; gap:12px; width:100%; padding:8px 4px; border:0; border-top:1px solid var(--hairline, var(--border)); background:none; font:inherit; text-align:left; cursor:pointer; color:var(--ink); }
.pd-fin-row:first-of-type { border-top:0; }
.pd-fin-row:hover .pd-fin-chev { color:var(--accent); }
.pd-fin-logo { flex:0 0 92px; height:40px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; background:#fff; border-radius:var(--r-sm); padding:4px 6px; }
.pd-fin-logo img { max-width:100%; max-height:30px; width:auto; height:auto; display:block; }
.pd-fin-logo--duo img { max-height:14px; }
.pd-fin-txt { flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:2px; font-size:13px; line-height:1.35; }
.pd-fin-from b { font-size:15px; }
.pd-fin-sub { color:var(--muted); }
.pd-fin-chev { flex:0 0 auto; font-size:22px; line-height:1; color:var(--muted); }
@media (max-width:900px) { .pd-fin { scroll-margin-top:150px; } }
@media (max-width:600px) { .pd-fin { scroll-margin-top:134px; } .pd-fin-logo { flex-basis:80px; } }
