/* Campania „Fără emoții, doar reduceri" 2026 — addons/my_changes/views/campanie/fara_emotii.tpl
   Sistemul de design: cercetările de design din 08.10.2026 (ISTORIC/2026-10.md). Tot e sub .fdr.
   2026-10-08: creat.
   2026-10-09: panoul din stânga cu padding (pastila activă nu mai e tăiată); logo Leanpay vectorial. */
.fdr {
  --bg: #f5f7f8; --hero: #e7edf0; --surface: #fff; --line: #dde3e7;
  --text: #1b2a3a; --muted: #5b6b7a;
  --accent: #fa4616; --accent-strong: #d93a0e; --accent-ink: #c2410c;
  --ok: #0083ca; --ok-bg: #0083ca; --ok-ink: #ffffff;   /* plin, ca în logo: albastru #0083CA + alb */   /* albastrul Trisport din logo (#0083CB, custom.less #0083CA), nu verde (Sorin 09.10) */
  --r: 8px;
  background: var(--bg); color: var(--text);
  font-family: Inter, Arial, sans-serif; font-size: 16px; line-height: 1.5;  /* fontul site-ului; „Barlow" normal nu există pe server, ieșea condensat */
  /* iese din containerul layout-ului: pe toată lățimea. 100vw INCLUDE bara de scroll pe Windows (17px) → scroll
     orizontal (Sorin 09.10); --fdr-bara = lățimea barei, pusă de campanie_fara_emotii.js */
  margin: 0 calc(50% - 50vw + var(--fdr-bara, 0px) / 2);
}
html:has(.fdr) { overflow-x: clip; }   /* plasă de siguranță până rulează JS-ul (clip nu strică position: sticky) */
.fdr *, .fdr *::before, .fdr *::after { box-sizing: border-box; }
.fdr a { color: inherit; text-decoration: none; }
.fdr img { max-width: 100%; }
.fdr h1, .fdr h2, .fdr h3 { font-family: "Barlow Condensed", Arial, sans-serif; color: var(--text); margin: 0; letter-spacing: 0; text-transform: none; }
.fdr button { font: inherit; cursor: pointer; }
.fdr :focus-visible { outline: 2px solid #1a83c6; outline-offset: 2px; }
.fdr-in { max-width: 1280px; margin: 0 auto; padding: 0 32px; }
html { scroll-padding-top: 16px; }

/* Pagina de campanie fără „balarii": se ascund header-ul, footer-ul și bara de anunț ale site-ului
   (la fel face landing_page/view.tpl). <head>-ul rămâne al site-ului: cookie-uri, GA4, Ads, Meta, TikTok, ts_px. */
.dispatch-campanie-fara_emotii header.header,
.dispatch-campanie-fara_emotii footer.footer,
.dispatch-campanie-fara_emotii .ts-f9,
.dispatch-campanie-fara_emotii .breadcrumbs { display: none !important; }
.dispatch-campanie-fara_emotii .content,
.dispatch-campanie-fara_emotii .tygh-content { padding: 0 !important; margin: 0 !important; background: #f5f7f8; }

/* ---- Bara de sus: doar logo + înapoi ---- */
.fdr-bara { background: var(--surface); border-bottom: 1px solid var(--line); }
.fdr-bara-in { display: flex; align-items: center; justify-content: space-between; height: 56px; }
.fdr-logo img { height: 32px; width: auto; display: block; }
.fdr-inapoi { font-size: 14px; color: var(--muted) !important; }
.fdr-inapoi:hover { color: var(--text) !important; }

/* ---- Hero: banner-ul campaniei ÎNTREG, netăiat (2800x1000, Sorin 08.10), textul dedesubt ---- */
.fdr-hero { background: var(--surface); }
.fdr-banner { padding-top: 16px; }
.fdr-banner img { display: block; width: 100%; height: auto; aspect-ratio: 1920 / 819; border-radius: var(--r); }   /* 09.10: header-ul nou (pistă + FINISH) */
.fdr-hero-text { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 24px; padding: 16px 0 20px; }
.fdr-hero h1 { font-size: 40px; line-height: 44px; font-weight: 700; }
.fdr-hero h1 span { color: var(--accent); }
.fdr-hero p { margin: 4px 0 0; font-size: 18px; line-height: 26px; color: var(--text); flex-basis: 100%; }
.fdr-hero-meta { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; }
.fdr-pastila { background: var(--ok-bg); color: var(--ok-ink); font-weight: 600; font-size: 14px; padding: 4px 12px; border-radius: 999px; }
.fdr-date { font-size: 13px; color: var(--muted); font-weight: 500; }

/* ---- Garanția în 3 pași ---- */
.fdr-garantie { background: var(--surface); border-bottom: 1px solid var(--line); }
.fdr-garantie-in { display: flex; align-items: center; gap: 24px; min-height: 72px; }
.fdr-garantie ol { flex: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; list-style: none; margin: 0; padding: 12px 0; }
.fdr-garantie li { display: flex; gap: 12px; align-items: center; }
.fdr-garantie i { flex: 0 0 24px; height: 24px; border: 1px solid var(--line); border-radius: 50%; font-style: normal; font-size: 13px; font-weight: 600; display: flex; align-items: center; justify-content: center; color: var(--muted); }
.fdr-garantie b { display: block; font-size: 15px; line-height: 20px; }
.fdr-garantie span { display: block; font-size: 13px; line-height: 18px; color: var(--muted); }
.fdr-reg { font-size: 13px; color: var(--accent-ink) !important; white-space: nowrap; font-weight: 600; }

/* ---- Plăcile de categorii (cuprinsul paginii) ---- */
/* plăcile: doar numele + „până la -X%" într-o etichetă mică, ca la titlul secțiunii (fără nr. de produse) */
/* categoriile fără produse după filtrare se ASCUND (Sorin, 08.10), nu doar se estompează */
.fdr-placa.gol, .fdr-cat.gol { display: none !important; }

/* ---- Plăcile de categorii = MOZAIC (09.10, „nici acum nu e wow"): Ultima șansă = placă mare portocalie 2×2 cu
   procentul uriaș; restul = carduri albe cu reducerea scrisă MARE (cifra e mesajul), nu într-o etichetă mică.
   8 coloane: 4 sloturi (Ultima șansă) + 12 categorii = exact 2 rânduri pline. */
.fdr-placi { padding: 24px 0 8px; }
.fdr-placi-in { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 12px; }   /* Ultima șansă 1×2 + 12 = 2 rânduri x 7 */
.fdr-placa { position: relative; display: flex; flex-direction: column; background: var(--surface); border-radius: var(--r); overflow: hidden;
  box-shadow: 0 1px 0 var(--line); transition: transform .15s, box-shadow .15s; }
.fdr-placa:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(27,42,58,.10); }
.fdr-placa-img { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; padding: 10px; background: #f0f2f3; overflow: hidden; }
.fdr-placa-img img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.fdr-placa-txt { display: grid; grid-template-columns: 1fr auto; align-items: end; column-gap: 6px; padding: 8px 10px 10px; }
.fdr-placa-txt b { grid-column: 1 / -1; font-size: 13px; line-height: 16px; font-weight: 600; color: var(--text); min-height: 32px; }
.fdr-placa-txt small { font-size: 11px; color: var(--muted); line-height: 1; padding-bottom: 4px; }
.fdr-placa-txt em { font-style: normal; font-family: "Barlow Condensed", Arial, sans-serif; font-weight: 800; font-size: 28px; line-height: 1; color: var(--accent-strong); }
/* Ultima șansă: placa mare portocalie */
.fdr-placa--sansa { grid-column: span 1; grid-row: span 2; background: var(--accent-strong); color: #fff; justify-content: flex-start; }
.fdr-placa--sansa .fdr-placa-txt { order: -1; display: flex; flex-direction: column; align-items: flex-start; padding: 14px 14px 0; }
.fdr-placa--sansa .fdr-placa-txt b { font-family: "Barlow Condensed", Arial, sans-serif; font-size: 24px; line-height: 1; color: #fff; min-height: 0; text-transform: uppercase; }
.fdr-placa--sansa .fdr-placa-txt small { color: #ffd9cc; font-size: 14px; padding: 8px 0 0; }
.fdr-placa--sansa .fdr-placa-txt em { color: #fff; font-size: 56px; line-height: .95; letter-spacing: -1px; }
.fdr-placa--sansa .fdr-placa-img { position: absolute; left: 12px; right: 12px; bottom: 12px; width: auto; aspect-ratio: 1 / 1; background: #fff; border-radius: 6px; padding: 8px; }
.fdr-placa--sansa .fdr-placa-img img { mix-blend-mode: normal; }
.fdr-placa--sansa:hover { box-shadow: 0 10px 28px rgba(217,58,14,.35); }
@media (max-width: 1100px) {
  .fdr-placi-in { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .fdr-placi { padding-top: 16px; }
  .fdr-placi-in { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .fdr-placa { flex-direction: row; align-items: center; box-shadow: 0 0 0 1px var(--line); }
  .fdr-placa-img { flex: 0 0 52px; height: 52px; aspect-ratio: auto; padding: 4px; }
  .fdr-placa-txt { flex: 1; min-width: 0; padding: 6px 8px; grid-template-columns: 1fr; }
  .fdr-placa-txt b { font-size: 13px; line-height: 15px; min-height: 0; }
  .fdr-placa-txt small { display: none; }
  .fdr-placa-txt em { font-size: 20px; margin-top: 2px; }
  .fdr-placa--sansa { grid-column: span 2; grid-row: auto; flex-direction: row; align-items: center; }
  .fdr-placa--sansa .fdr-placa-txt { order: 0; flex-direction: column; align-items: flex-start; gap: 2px; padding: 12px 14px; }
  .fdr-placa--sansa .fdr-placa-txt b { font-size: 22px; white-space: nowrap; }
  .fdr-placa--sansa .fdr-placa-txt small { display: none; }
  .fdr-placa--sansa .fdr-placa-txt em { font-size: 44px; line-height: 1; }
  .fdr-placa--sansa .fdr-placa-img { position: static; flex: 0 0 64px; width: 64px; height: 64px; margin: 6px 8px 6px 0; order: 2; }
}

/* ---- Corp: coloana de filtre + lista ---- */
.fdr-corp { display: grid; grid-template-columns: 240px 1fr; gap: 32px; padding-top: 24px; padding-bottom: 48px; }
.fdr-panou { position: sticky; top: 16px; align-self: start; max-height: calc(100vh - 32px); overflow-y: auto; scrollbar-width: none; }
.fdr-panou::-webkit-scrollbar { display: none; }
/* overflow-y taie marginea -10px a pastilei active (Sorin 09.10: „meniul a rămas strâmb") — panoul primește spațiul înapoi */
.fdr-panou { padding-left: 10px; padding-right: 10px; margin-left: -10px; margin-right: -10px; }   /* fără bara gri de scroll (Sorin 09.10: „AI flop") */
.fdr-panou-cap, .fdr-panou-jos { display: none; }
.fdr-bloc { margin-bottom: 24px; }
.fdr-bloc h3 { font-size: 13px; line-height: 18px; font-weight: 700; text-transform: uppercase; color: var(--muted); font-family: Inter, Arial, sans-serif; margin: 0 0 8px; letter-spacing: .4px; }
.fdr-bloc-filtre h3 + * { margin-bottom: 20px; }
/* Coloana de categorii, lucrată „ca de designer" (09.10): un rând pe categorie, procentul în fontul de titluri
   aliniat în coloană, activul pe o pastilă albă discretă — fără dunga colorată din stânga */
.fdr-cat { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 7px 10px; margin: 0 -10px;
  border-radius: 8px; font-size: 14px; line-height: 20px; color: var(--text); white-space: nowrap; transition: background .15s; }
.fdr-cat span { overflow: hidden; text-overflow: ellipsis; }
.fdr-cat small { font-family: "Barlow Condensed", Arial, sans-serif; font-weight: 700; font-size: 15px; color: #8a97a3; font-variant-numeric: tabular-nums; min-width: 38px; text-align: right; }
.fdr-cat:hover { background: #eaeef1; }
.fdr-cat.activ { background: var(--surface); box-shadow: 0 1px 3px rgba(27,42,58,.10); font-weight: 600; }
.fdr-cat.activ small { color: var(--accent-strong); }
/* rubricile speciale (Ultima șansă, Economii record) separate de categorii printr-o linie */
.fdr-cat--rubrica + .fdr-cat:not(.fdr-cat--rubrica) { margin-top: 9px; position: relative; }
.fdr-cat--rubrica + .fdr-cat:not(.fdr-cat--rubrica)::before { content: ""; position: absolute; left: 10px; right: 10px; top: -5px; height: 1px; background: var(--line); }

.fdr-transe { display: flex; border: 1px solid var(--line); border-radius: 6px; overflow: hidden; background: var(--surface); }
.fdr-transa { flex: 1; border: 0; background: none; padding: 8px 4px; font-size: 14px; font-weight: 600; color: var(--muted); }
.fdr-transa + .fdr-transa { border-left: 1px solid var(--line); }
.fdr-transa.activ { background: var(--text); color: #fff; }
.fdr-cauta-brand { width: 100%; height: 36px; border: 1px solid var(--line); border-radius: 6px; padding: 0 10px; font: inherit; font-size: 14px; margin-bottom: 8px !important; background: var(--surface); }
/* Brandurile = grilă de logo-uri (nu listă cu jumătate de rând gol), cele cu mai multe produse primele */
.fdr-branduri { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.fdr-brand { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; height: 64px; padding: 6px; margin: 0; background: var(--surface); border: 1px solid var(--line); border-radius: 6px; cursor: pointer; font-size: 13px; font-weight: 600; text-align: center; line-height: 1.1; }
.fdr-brand:hover { border-color: #9aa6b0; }
.fdr-brand input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.fdr-brand.ales, .fdr-brand:has(input:checked) { border: 2px solid var(--accent-strong); background: #fff4f0; padding: 5px; }
.fdr-brand:has(input:focus-visible) { outline: 2px solid #1a83c6; outline-offset: 2px; }
.fdr-brand-logo { display: flex; align-items: center; justify-content: center; height: 34px; width: 100%; overflow: hidden; color: var(--text); }
/* înălțime FIXĂ: SVG-urile fără width/height proprii (Brooks, Craft) ieșeau cu lățimea 0 la height:auto */
.fdr-brand-logo img { height: 28px; width: auto; max-width: 92%; object-fit: contain; }
/* semnul On e îngust și înalt: folosește toată înălțimea liberă a căsuței (Sorin, 08.10: „mai e loc în sus") */
.fdr-brand[data-nume="On"] .fdr-brand-logo { height: 42px; }
.fdr-brand[data-nume="On"] .fdr-brand-logo img { height: 40px; }
.fdr-brand[data-nume="On"] { gap: 0; padding-top: 2px; }
.fdr-brand small { color: var(--muted); font-size: 11px; font-weight: 500; }
.fdr-brand.zero { opacity: .4; }
.fdr-brand[hidden] { display: none; }

/* ---- Filtrele aplicate + zero rezultate ---- */
.fdr-active { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 16px; }
.fdr-active[hidden] { display: none; }
.fdr-chip { display: inline-flex; align-items: center; gap: 6px; background: var(--surface); border: 1px solid var(--line); border-radius: 999px; padding: 4px 8px 4px 12px; font-size: 14px; }
.fdr-chip button { border: 0; background: none; padding: 0 2px; font-size: 16px; line-height: 1; color: var(--muted); }
.fdr-active .fdr-sterge, .fdr-zero .fdr-sterge { border: 0; background: none; color: var(--accent-ink); font-weight: 600; font-size: 14px; padding: 4px; text-decoration: underline; }
.fdr-zero { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r); padding: 24px; text-align: center; }
.fdr-zero[hidden] { display: none; }

/* ---- Secțiuni ---- */
.fdr-sectiune { margin-bottom: 64px; scroll-margin-top: 16px; }
.fdr-sectiune[hidden] { display: none; }
/* Titlul de secțiune = bandă închisă la culoare: trebuie să se vadă imediat unde începe o categorie nouă
   (Sorin, 08.10: „așa titlu să nu-ți dai seama că e acolo?") */
.fdr-sectiune-cap { display: flex; align-items: center; justify-content: space-between; gap: 12px 16px; flex-wrap: wrap; margin-bottom: 24px; padding: 16px 20px; background: var(--text); border-radius: var(--r); }
.fdr-sectiune h2 { font-size: 34px; line-height: 38px; font-weight: 700; color: #fff; }
.fdr-sectiune-cap span { font-size: 14px; color: #c9d3db; white-space: nowrap; }
.fdr-sectiune-cap span b { color: #fff; }
.fdr-sectiune-cap .fdr-pana { display: inline-block; font-style: normal; background: var(--accent-strong); color: #fff; font-family: "Barlow Condensed", Arial, sans-serif; font-weight: 700; font-size: 18px; line-height: 1; padding: 6px 10px; border-radius: 4px; margin-right: 8px; }
.fdr-grila { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }   /* ca în listele magazinului: coloane 4+4px, rânduri mb-2 = 8px (Sorin 09.10) */
.fdr-sectiune-jos { text-align: center; margin-top: 16px; }
.fdr-toate { background: var(--surface); border: 1px solid var(--text); color: var(--text); border-radius: 6px; padding: 10px 20px; font-weight: 600; font-size: 15px; }
.fdr-toate:hover { background: var(--text); color: #fff; }
.fdr-toate[hidden] { display: none; }

/* Ultima șansă — marcată altfel: bandă portocalie în loc de bleumarin, placă și rând de meniu evidențiate */
.fdr-sectiune--sansa .fdr-sectiune-cap { background: var(--accent-strong); }
.fdr-sectiune--sansa .fdr-sectiune-cap .fdr-pana { background: #fff; color: var(--accent-strong); }
.fdr-sectiune--sansa .fdr-sectiune-cap span { color: #ffe1d6; }
.fdr .fdr-cat--sansa { color: var(--accent-strong); font-weight: 700; }   /* .fdr a { color: inherit } bătea clasa simplă */
.fdr .fdr-cat--sansa small { color: var(--accent-strong); }

/* Blocurile de brand printre categorii (On, TYR): bandă albă cu logo, nu bleumarin cu text */
.fdr-sectiune--brand .fdr-sectiune-cap { background: var(--surface); border: 2px solid var(--text); }
.fdr-sectiune--brand .fdr-sectiune-cap span { color: var(--muted); }
.fdr-sectiune--brand .fdr-sectiune-cap span b { color: var(--text); }
.fdr-bloc-logo { display: block; height: 40px; width: auto; max-width: 220px; object-fit: contain; }

/* Produs epuizat în timpul campaniei (urgență reală): poza estompată + eticheta „Stoc epuizat” peste ea */
.fdr-card--epuizat .fdr-img img { opacity: .35; filter: grayscale(1); }
.fdr-card--epuizat .fdr-red { background: #9aa6b0; }
.fdr-card--epuizat .fdr-card-pret b { color: var(--muted); }
.fdr-epuizat { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-8deg); white-space: nowrap;
  background: var(--text); color: #fff; font-family: "Barlow Condensed", Arial, sans-serif; font-weight: 700; font-size: 18px;
  letter-spacing: .5px; text-transform: uppercase; padding: 6px 14px; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,.2); }

/* Rubrica Cele mai mari economii: bandă albastru Trisport, eticheta pe poză în lei */
.fdr-sectiune[data-randuri] .fdr-sectiune-cap { background: var(--ok); }
.fdr-sectiune[data-randuri] .fdr-sectiune-cap .fdr-pana { background: #fff; color: var(--ok); }
.fdr-sectiune[data-randuri] .fdr-red { background: var(--ok); }

/* Zona de rate (Sorin 09.10: „meh") — bandă bleumarin: „0% dobândă" mare + băncile pe plăcuțe albe, un singur rând.
   Condițiile vin din pagina „Modalități de plată" (page_id 46) — dacă se schimbă acolo, se schimbă și aici. */
.fdr-rate { display: flex; align-items: center; gap: 22px; margin: -24px 0 56px; padding: 18px 22px; background: var(--text); color: #fff; border-radius: var(--r); }
.fdr-rate-cap { flex: 0 0 auto; display: flex; flex-direction: column; }
.fdr-rate-cap b { font-family: "Barlow Condensed", Arial, sans-serif; font-size: 40px; line-height: .9; font-weight: 800; color: #fff; }
.fdr-rate-cap b i { font-style: normal; color: #ff8a5c; }
.fdr-rate-cap span { font-size: 14px; font-weight: 600; color: #c9d3db; margin-top: 4px; }
.fdr-rate-cap a { font-size: 13px; color: #fff; font-weight: 600; text-decoration: underline; margin-top: 6px; }
.fdr-rate-grupuri { flex: 1; display: flex; gap: 16px; min-width: 0; }
.fdr-rate-grup { min-width: 0; flex: 4 1 0; }
.fdr-rate-grup + .fdr-rate-grup { flex: 3 1 0; }   /* 4 bănci / 3 credite: plăcuțe de aceeași lățime */
.fdr-rate-grup small { display: block; font-size: 11px; font-weight: 700; color: #9fb0bf; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 8px; white-space: nowrap; }
.fdr-rate-grup ul { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 8px; list-style: none; margin: 0; padding: 0; }
.fdr-rate-grup li { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.fdr-rate-logo { display: flex; align-items: center; justify-content: center; width: 100%; height: 46px; padding: 6px 8px; background: #fff; border-radius: 8px; }
/* înălțime FIXĂ: SVG-urile fără dimensiuni proprii ies cu lățime 0 la height:auto */
.fdr-rate-logo img { height: 24px; width: auto; max-width: 100%; object-fit: contain; }
.fdr-rate-logo--scut img { height: 32px; }   /* BT: doar scutul (Sorin, 09.10) */
.fdr-rate-grup li span { font-size: 13px; font-weight: 700; color: #fff; white-space: nowrap; }
.fdr-rate-grup li span.n24 { color: #ff8a5c; }

/* ---- Cardul (fără chenar/umbră; placa gri a pozei dă marginea; reducerea o singură dată, lângă preț) ---- */
.fdr-card { display: flex; flex-direction: column; }
.fdr-card[hidden], .fdr-card.ascuns { display: none; }
.fdr-img { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; padding: 7%; background: #f0f2f3; border-radius: 4px; }
/* procentul de reducere pe poză, ca în listele magazinului (Sorin, 08.10: „de ce a dispărut procentul?") */
.fdr-red { position: absolute; top: 8px; left: 8px; background: #d63200; color: #fff; font-family: "Barlow Condensed", Arial, sans-serif; font-weight: 700; font-size: 15px; line-height: 1; padding: 4px 8px; border-radius: 999px; }
.fdr-img img { max-width: 100%; max-height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.fdr-card:hover .fdr-card-nume { text-decoration: underline; }
.fdr-card-corp { display: flex; flex-direction: column; gap: 2px; padding-top: 10px; }
.fdr-card-brand { font-size: 12px; line-height: 16px; font-weight: 700; text-transform: uppercase; color: var(--muted); letter-spacing: .05em; }
/* numele pe cel mult 2 rânduri (Sorin, 08.10: „să încapă mai multe produse"); numele întreg rămâne în title */
.fdr-card-nume { font-size: 14px; line-height: 19px; font-weight: 400; color: var(--text); margin-top: 2px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 38px; }
.fdr-card-pret { display: flex; align-items: baseline; flex-wrap: wrap; gap: 0 8px; margin-top: 4px; }
/* prețul: mare, portocaliu, Barlow Condensed — ca în listele magazinului (Sorin, 08.10: „nu vezi bine prețul") */
.fdr-card-pret b { font-family: "Barlow Condensed", Arial, sans-serif; font-size: 26px; line-height: 28px; font-weight: 700; color: #d63200; }
.fdr-card-pret s { font-size: 14px; color: var(--muted); }
.fdr-card-pret { margin-top: 6px; }
.fdr-card-red { font-size: 14px; line-height: 20px; font-weight: 600; color: var(--accent-ink); }
.fdr-marimi { font-size: 13px; line-height: 18px; color: var(--muted); margin-top: 2px; }
.fdr-marimi.una { color: var(--accent-ink); font-weight: 600; }

/* ---- FAQ + subsol ---- */
.fdr-faq { background: var(--surface); border-radius: var(--r); padding: 24px; margin-top: 16px; }
.fdr-faq h2 { font-size: 28px; line-height: 32px; margin-bottom: 8px; }
.fdr-faq details { border-top: 1px solid var(--line); padding: 12px 0; }
.fdr-faq summary { font-weight: 600; cursor: pointer; }
.fdr-faq p { margin: 8px 0 0; color: var(--muted); }
.fdr-faq a { color: var(--accent-ink); text-decoration: underline; }
.fdr-subsol { border-top: 1px solid var(--line); background: var(--surface); padding: 24px 0 32px; font-size: 13px; color: var(--muted); }
.fdr-subsol a { text-decoration: underline; }
.fdr-mini { display: none; }

/* ---- Tabletă ---- */
@media (max-width: 1100px) {
  .fdr-rate { flex-direction: column; align-items: flex-start; }
  .fdr-rate-grupuri { width: 100%; }
  .fdr-grila { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
  .fdr-corp { grid-template-columns: 210px 1fr; gap: 24px; }
}

/* ---- Telefon: panoul devine foaie, bara fixă jos ---- */
@media (max-width: 760px) {
  .fdr-rate { gap: 14px; margin: -8px -16px 40px; padding: 16px; border-radius: 0; }
  .fdr-rate-cap b { font-size: 40px; }
  .fdr-rate-grupuri { flex-direction: column; gap: 14px; }
  .fdr-rate-grup ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
  .fdr-rate-logo { width: 100%; height: 40px; padding: 6px; }
  .fdr-rate-logo img { height: 20px; }
  .fdr-rate-logo--scut img { height: 28px; }
  .fdr-rate-text { font-size: 13px; }
  .fdr-in { padding: 0 16px; }
  .fdr-bara-in { height: 48px; }
  .fdr-banner { padding-top: 0; margin: 0 -16px; }
  .fdr-banner img { border-radius: 0; }
  .fdr-hero-text { padding: 12px 0 16px; }
  .fdr-hero h1 { font-size: 30px; line-height: 34px; }
  .fdr-hero h1 span { display: block; }
  .fdr-hero p { font-size: 16px; line-height: 24px; }
  .fdr-garantie-in { flex-direction: column; align-items: flex-start; gap: 0; padding-bottom: 12px; }
  .fdr-garantie ol { grid-template-columns: 1fr; gap: 8px; }
  .fdr-corp { display: block; padding-top: 16px; }
  /* scroll în panou pe iPhone: înălțime explicită + derulare proprie (cu html overflow:hidden nu derula) */
  .fdr-panou { position: fixed; top: 0; left: 0; right: 0; bottom: 0; height: 100%; height: 100dvh; z-index: 1000; max-height: none; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; touch-action: pan-y; background: var(--bg); padding: 0 16px 104px; margin: 0; transform: translateY(100%); transition: transform .25s ease; visibility: hidden; }
  .fdr-panou.deschis { transform: none; visibility: visible; }
  .fdr-panou-cap { display: flex; justify-content: space-between; align-items: center; height: 56px; position: sticky; top: 0; background: var(--bg); margin-bottom: 8px; border-bottom: 1px solid var(--line); }
  .fdr-panou-cap b { font-size: 18px; }
  .fdr-inchide { border: 0; background: none; font-size: 28px; line-height: 1; padding: 8px; color: var(--text); }
  .fdr-panou[data-mod="categorii"] .fdr-bloc-filtre, .fdr-panou[data-mod="filtre"] .fdr-bloc-cat { display: none; }
  .fdr-cat { padding: 12px 10px; font-size: 16px; }
  .fdr-branduri { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .fdr-brand { height: 72px; }
  .fdr-panou[data-mod="filtre"] .fdr-panou-jos { display: flex; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; padding: 12px 16px; background: var(--surface); border-top: 1px solid var(--line); }
  .fdr-panou-jos .fdr-sterge { flex: 0 0 auto; border: 1px solid var(--line); background: var(--surface); border-radius: 6px; padding: 12px 16px; font-weight: 600; }
  .fdr-panou-jos .fdr-vezi { flex: 1; border: 0; background: var(--accent-strong); color: #fff; border-radius: 6px; padding: 12px 16px; font-weight: 600; font-size: 16px; }
  .fdr-sectiune-cap { margin: 0 -16px 16px; border-radius: 0; padding: 14px 16px; }
  .fdr-sectiune h2 { font-size: 28px; line-height: 32px; }
  .fdr-grila { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .fdr-sectiune { margin-bottom: 40px; }
  .fdr-card-corp { padding-top: 8px; }
  .fdr-card-nume { font-size: 13px; line-height: 18px; min-height: 36px; }
  .fdr-card-pret b { font-size: 22px; line-height: 24px; }
  .fdr-card-red { font-size: 13px; }
  /* meniul de pe telefon: FIX SUS, vizibil mereu de la plăci în jos (nu jos, unde îl acoperea bannerul de cookie) */
  .fdr-mini { position: sticky; top: 0; z-index: 900; display: flex; gap: 8px; padding: 8px 16px; background: var(--surface); border-bottom: 1px solid var(--line); box-shadow: 0 2px 8px rgba(27,42,58,.06); }
  .fdr-mini button { height: 44px; border: 1px solid var(--line); background: var(--surface); color: var(--text); border-radius: 6px; font-weight: 600; font-size: 15px; }
  .fdr-mini-cat { flex: 1; min-width: 0; display: flex; align-items: center; gap: 6px; padding: 0 12px; text-align: left; }
  .fdr-mini-cat small { font-size: 12px; font-weight: 500; color: var(--muted); }
  .fdr-mini-cat b { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-weight: 700; }
  .fdr-mini-filtre { flex: 0 0 auto; padding: 0 16px; border-color: var(--text) !important; }
  .fdr-sectiune { scroll-margin-top: 72px; }
  .fdr-nr-filtre { display: inline-block; min-width: 20px; height: 20px; line-height: 20px; border-radius: 10px; background: var(--accent-strong); color: #fff; font-size: 12px; margin-left: 4px; }
  .fdr-nr-filtre[hidden] { display: none; }
  .fdr-subsol { padding-bottom: 88px; }
}
@media (prefers-reduced-motion: reduce) {
  .fdr *, .fdr-panou, .fdr-bara-jos { transition: none !important; }
  html { scroll-behavior: auto; }
}

/* Sub banner: stânga titlul + textul, dreapta cei 3 pași ai garanției (Sorin, 09.10: spațiul din dreapta era gol;
   regulamentul doar jos, în FAQ și subsol) */
.fdr-hero-jos { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 16px 40px; align-items: center; padding: 18px 0 22px; }
.fdr-hero-jos .fdr-hero-text { padding: 0; display: block; }
.fdr-hero-jos .fdr-hero-meta { margin-top: 10px; }
.fdr-pasi { list-style: none; margin: 0; padding: 0 0 0 28px; border-left: 1px solid var(--line); display: flex; flex-direction: column; gap: 12px; }
.fdr-pasi li { display: flex; gap: 12px; align-items: center; }
.fdr-pasi i { flex: 0 0 30px; height: 30px; border-radius: 50%; background: var(--ok-bg); color: var(--ok-ink); font-style: normal; font-weight: 700; font-size: 14px; display: flex; align-items: center; justify-content: center; }
.fdr-pasi b { display: block; font-size: 15px; line-height: 20px; }
.fdr-pasi span { display: block; font-size: 13px; line-height: 18px; color: var(--muted); }
@media (max-width: 1100px) {
  .fdr-hero-jos { grid-template-columns: minmax(0, 1fr) minmax(0, 340px); gap: 16px 24px; }
}
@media (max-width: 760px) {
  .fdr-hero-jos { grid-template-columns: 1fr; padding: 12px 0 16px; }
  .fdr-pasi { padding: 14px 0 0; border-left: 0; border-top: 1px solid var(--line); }
}

/* Poze de produs TOATE pătrate (Sorin 09.10: unele poze înalte stricau grila) — pătrat fix, poza încape în el */
.fdr-img { overflow: hidden; }
.fdr-img img { width: 100%; height: 100%; object-fit: contain; transition: transform .35s ease; }
/* Zoom ușor la hover (doar pe dispozitive cu mouse) */
@media (hover: hover) {
  .fdr-card:hover .fdr-img img { transform: scale(1.07); }
  .fdr-placa:hover .fdr-placa-img img { transform: scale(1.06); transition: transform .35s ease; }
}
/* Pe telefon: cardurile intră lin la scroll (clasa o pune campanie_fara_emotii.js); fără mișcare dacă telefonul cere asta */
@media (max-width: 760px) and (prefers-reduced-motion: no-preference) {
  .fdr-anim { opacity: 0; transform: translateY(18px); transition: opacity .45s ease, transform .45s ease; }
  .fdr-anim.fdr-in-vedere { opacity: 1; transform: none; }
  .fdr-sectiune-cap.fdr-anim { transform: translateY(10px) scale(.98); }
}

/* Cu filtru activ (clasa pusă de JS): fără plăci de categorii și fără zonele de rate — doar rezultatele */
.fdr-filtrat .fdr-placi, .fdr-filtrat .fdr-rate { display: none !important; }

/* ---- Cardul ca în listele magazinului (Sorin 09.10: „apropie-te de look and feel-ul site-ului, așa s-au obișnuit
   clienții"). Valorile = cele calculate de Chrome pe /incaltaminte-alergare/ (grid_list.tpl): card alb, chenar
   #e8eaee, colțuri 14px; poza pe #f7f8fa cu 16px; brand 9.5px spațiat; nume 13.5px pe 2 rânduri; preț Barlow 22px;
   Fără buton (Sorin 09.10: „scoate-l") și fără „Livrare" (toate sunt din stoc). */
.fdr-card { background: #fff; border: 1px solid #e8eaee; border-radius: 14px; overflow: hidden; }
.fdr-card .fdr-img { border-radius: 0; background: #f7f8fa; padding: 16px; }
.fdr-card .fdr-img img { mix-blend-mode: multiply; }
.fdr-card-corp { flex: 1; gap: 0; padding: 13px 14px 15px; }
.fdr-card-brand { font-size: 9.5px; line-height: 11.4px; font-weight: 700; color: #98a1af; letter-spacing: 1.33px; margin-bottom: 3px; }
.fdr .fdr-card-nume { font-size: 13.5px; line-height: 17.955px; color: #39414f; min-height: 35.91px; margin: 0 0 2px; text-decoration: none; }
.fdr .fdr-card-nume:hover { text-decoration: underline; }
.fdr-card:hover .fdr-card-nume { text-decoration: none; }
.fdr-card-pret { margin: 8px 0 0; }
.fdr-card-pret b { font-size: 22px; line-height: 23.1px; font-weight: 800; }
.fdr-card-pret s { font-size: 11.5px; color: #222; }
@media (max-width: 760px) {
  .fdr-card-corp { padding: 10px 10px 12px; }
  }

/* Meniul din stânga ascunde o parte sus/jos (se derulează separat, fără bară): umbră în culoarea paginii +
   săgeată rotundă, doar cât timp e ceva ascuns în direcția aia (Sorin 09.10). Clasele are-sus/are-jos le pune JS-ul. */
.fdr-umbra { position: sticky; z-index: 3; display: flex; justify-content: center; height: 44px; margin: 0 -10px;
  pointer-events: none; opacity: 0; transition: opacity .2s; }
.fdr-umbra-sus { top: 0; margin-bottom: -44px; align-items: flex-start; padding-top: 2px; background: linear-gradient(var(--bg) 30%, rgba(245, 247, 248, 0)); }
.fdr-umbra-jos { bottom: 0; margin-top: -44px; align-items: flex-end; padding-bottom: 2px; background: linear-gradient(rgba(245, 247, 248, 0), var(--bg) 70%); }
.fdr-panou.are-sus .fdr-umbra-sus, .fdr-panou.are-jos .fdr-umbra-jos { opacity: 1; }
.fdr-panou.are-sus .fdr-umbra-sus .fdr-umbra-btn, .fdr-panou.are-jos .fdr-umbra-jos .fdr-umbra-btn { pointer-events: auto; }
.fdr .fdr-umbra-btn { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; padding: 0; border-radius: 50%;
  background: #fff; border: 1px solid var(--line); box-shadow: 0 2px 8px rgba(27, 42, 58, .16); color: var(--text); cursor: pointer; }
.fdr .fdr-umbra-btn:hover { color: #0083ca; border-color: #0083ca; }
@media (max-width: 760px) { .fdr-umbra { display: none; } }   /* pe telefon panoul e ecran întreg, cu antet propriu */

/* „Cineva din <județ> a comandat … acum X minute" (campanie_ultimele_comenzi.js) — colțul din stânga jos, ca la eMAG.
   Card alb ca în magazin; intră de jos, stă 7 s. Doar comenzi reale (campanie/ultimele_comenzi.php). */
.fdr-uc { position: fixed; left: 16px; bottom: 16px; z-index: 950; display: flex; align-items: flex-start; width: 340px; max-width: calc(100vw - 32px);
  background: #fff; border: 1px solid #e8eaee; border-radius: 14px; box-shadow: 0 10px 30px rgba(27, 42, 58, .18);
  font-family: Inter, Arial, sans-serif; opacity: 0; transform: translateY(16px); pointer-events: none; transition: opacity .3s, transform .3s; }
.fdr-uc.vizibil { opacity: 1; transform: none; pointer-events: auto; }
.fdr-uc-corp { flex: 1; min-width: 0; display: flex; gap: 12px; align-items: center; padding: 10px 6px 10px 10px; color: #39414f; text-decoration: none; }
.fdr-uc-corp img { flex: 0 0 56px; width: 56px; height: 56px; object-fit: contain; background: #f7f8fa; border-radius: 8px; padding: 4px; }
.fdr-uc-txt { min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.fdr-uc-txt b { font-size: 13px; line-height: 17px; font-weight: 700; color: #1b2a3a; }
.fdr-uc-produs { font-size: 12.5px; line-height: 16px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.fdr-uc-corp:hover .fdr-uc-produs { text-decoration: underline; }
.fdr-uc-txt small { font-size: 11.5px; font-weight: 600; color: #0083ca; }
.fdr-uc-x { flex: 0 0 auto; width: 28px; height: 28px; margin: 4px 4px 0 0; border: 0; background: none; color: #98a1af; font-size: 20px; line-height: 1; cursor: pointer; border-radius: 50%; }
.fdr-uc-x:hover { background: #f0f2f3; color: #1b2a3a; }
@media (max-width: 760px) { .fdr-uc { left: 12px; right: 12px; bottom: 12px; width: auto; max-width: none; } }
@media (prefers-reduced-motion: reduce) { .fdr-uc { transition: none; transform: none; } }

/* Bara fixă de sus pe telefon: albastrul Trisport, ca meniul site-ului — albă pe carduri albe nu se vedea
   (Sorin 09.10: „alb pe alb"). Categoria = buton alb, Filtre = contur alb. */
@media (max-width: 760px) {
  .fdr-mini { background: #0083ca; border-bottom: 0; box-shadow: 0 2px 10px rgba(0, 60, 100, .28); }
  .fdr-mini button { border-color: #fff; }
  .fdr-mini-cat { background: #fff; }
  .fdr .fdr-mini-filtre { background: transparent; color: #fff; border: 1.5px solid #fff !important; }
  .fdr-mini-filtre .fdr-nr-filtre { background: #fff; color: #0083ca; }
}
