/* =============================================================================
   PrintPont — TERMÉK-ADATLAP ÉS KÉPGALÉRIA.
   Publikus rész: a termékoldal adatlap-sávja (galéria + hosszú leírás + tulajdonság-táblázat) és a „Hasonló termékek”.
   Admin rész: a „Termék-adatlap és képek” oldal képlistája. Telefonon minden elrendezés egy oszlop, vízszintes görgetés nélkül;
   a szöveg a hosszú szavaknál is tör (overflow-wrap), a képek a tárolójukhoz igazodnak. A színek a far360-tokenekből jönnek.
   ============================================================================= */

/* --- Publikus: az adatlap-sáv --------------------------------------------------------------- */
.pp-adatlap { display: grid; gap: 1.5rem 2rem; grid-template-columns: minmax(0, 1fr); margin: 0 0 2rem; }
.pp-adatlap__szoveg { display: grid; gap: 1.5rem; align-content: start; min-width: 0; }
@media (min-width: 900px) {
    .pp-adatlap { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: start; }
    .pp-adatlap > .pp-galeria:only-child { grid-column: 1 / -1; max-width: 44rem; }
}

/* --- Galéria: nagy kép + bélyegkép-sor -------------------------------------------------------- */
.pp-galeria { display: grid; gap: 0.75rem; min-width: 0; }
.pp-galeria__nagy {
    position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden;
    border: 1px solid var(--f-border); border-radius: var(--f-radius-md); background: var(--f-light);
}
/* A kép a 4:3-as keretet tölti ki, az arányát megtartva (fekvő és álló kép is belefér, levágás nélkül). */
.pp-galeria__nagy img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; }
.pp-galeria__sor { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
.pp-galeria__sor li { margin: 0; }
.pp-galeria__bely {
    display: block; width: 4.5rem; height: 3.4rem; overflow: hidden; border: 2px solid var(--f-border);
    border-radius: var(--f-radius-sm); background: var(--f-light); opacity: 0.8;
}
.pp-galeria__bely:hover, .pp-galeria__bely:focus-visible { opacity: 1; border-color: var(--f-ink-soft); }
.pp-galeria__bely[aria-current="true"] { opacity: 1; border-color: var(--f-primary); }
.pp-galeria__bely img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* --- Hosszú leírás és tulajdonságok ------------------------------------------------------------ */
.pp-leiras h2, .pp-tulajdonsagok-doboz h2 { margin-bottom: 0.6rem; font-size: 1.25rem; }
.pp-leiras p { margin: 0 0 0.85rem; white-space: pre-line; overflow-wrap: anywhere; color: var(--f-ink-soft); }
.pp-leiras p:last-child { margin-bottom: 0; }
.pp-tulajdonsagok { width: 100%; border-collapse: collapse; font-size: 0.94rem; }
.pp-tulajdonsagok th, .pp-tulajdonsagok td { padding: 0.55rem 0.75rem; border-bottom: 1px solid var(--f-border); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.pp-tulajdonsagok th { width: 38%; font-weight: 600; color: var(--f-ink); background: var(--f-light); }
.pp-tulajdonsagok tr:last-child th, .pp-tulajdonsagok tr:last-child td { border-bottom: 0; }
.pp-tulajdonsagok-doboz { overflow: hidden; }
.pp-tulajdonsagok-doboz > table { border: 1px solid var(--f-border); border-radius: var(--f-radius-sm); }

/* --- Hasonló termékek -------------------------------------------------------------------------- */
.pp-hasonlo { margin-top: 2.5rem; }

/* --- Admin: a „Termék-adatlap és képek” oldal képlistája ----------------------------------------- */
.pp-galeria-feltolto { margin-bottom: 1.25rem; }
.pp-galeria-admin { display: grid; gap: 1rem; margin: 0; padding: 0; list-style: none; }
.pp-galeria-admin__elem {
    display: grid; gap: 1rem 1.25rem; grid-template-columns: minmax(0, 1fr); padding: 1rem;
    border: 1px solid var(--f-border); border-radius: var(--f-radius-sm); background: var(--f-white);
}
.pp-galeria-admin__kep { position: relative; max-width: 15rem; aspect-ratio: 3 / 2; overflow: hidden; border-radius: var(--f-radius-xs); background: var(--f-light); }
.pp-galeria-admin__kep img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; }
.pp-galeria-admin__borito { position: absolute; top: 0.4rem; left: 0.4rem; }
.pp-galeria-admin__adat { display: grid; gap: 0.6rem; align-content: start; min-width: 0; }
.pp-galeria-admin__alt { display: grid; gap: 0.4rem; }
.pp-galeria-admin__alt input[type="text"] { width: 100%; }
.pp-galeria-admin__alt button { justify-self: start; }
.pp-galeria-admin__gombok { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.pp-galeria-admin__gombok form { margin: 0; }
@media (min-width: 700px) {
    .pp-galeria-admin__elem { grid-template-columns: 15rem minmax(0, 1fr); align-items: start; }
}
