/* ============================================
   KAISERWÄNDE S.R.O. — Pracovné odevy (pracovne-odevy.php)
   Dopytový systém: lišta sekcie, hlavička stránky, profily, druhy, produkty, košík a formulár dopytu.
   Vzhľad: svetlé plochy, jasná hierarchia, fotky produktov v popredí. Stavia na tokenoch a triedach z css/style.css
   (--dark, --accent, --accent-text, --accent-ui, --bg-soft, --border, --border-input, .container, .btn, .form-group,
   .form-row, .sr-only) — načítava sa len na stránkach sekcie, za style.css.
   Červená #B91C1C a zelená #047857 sú tie isté odtiene ako stavy tlačidiel v style.css (kontrast ≥ 4,5:1).
   ============================================ */

/* ---------- ZÁKLAD SEKCIE ----------
   Lišta webu (isset/navbar.php) je na stránkach sekcie rovnaká ako na zvyšku webu a css/odevy.css jej vzhľad nemení:
   navrchu stránky je priehľadná nad tmavým pásom (.odevy-band) s bielym logom, po posunutí o viac ako 50px zbelie
   a zníži sa (.scrolled z js/main.js). Jej výšky (padding + riadok lišty; padding je súmerný okolo osi písmen loga —
   zhora o posun k písmenám menší, zdola o rovnaký posun väčší, súčet sa nemení):
   --odevy-nav-top      — navrchu: padding spolu 40px (20px ∓ posun) + tlačidlá 44px; do 768px riadok drží logo
                          (--nav-logo-top zo style.css, najmenej 24,5px hamburgera — ikona Košíka je nižšia),
   --odevy-nav-scrolled — po posunutí: padding spolu 24px (12px ∓ posun) + tlačidlá 44px; do 768px rovnaký padding
                          a logo --nav-logo-scrolled.
   --odevy-nav — aktuálna výška: bez .scrolled výška navrchu, s .scrolled ju prepíše pravidlo nižšie pre súrodencov lišty
   v <body> (pás, lišta sekcie, <main>), od ktorých ju dedia prilepené panely. Bez JS lišta .scrolled nedostane.
   Prilepená je len lišta webu — lišta sekcie je v toku stránky a pri posúvaní odíde hore (inak by spolu s panelom
   profilu zabrali priveľa výšky obrazovky). Z --odevy-nav sa preto počíta poloha prilepených panelov (profil, druh,
   produkt) aj odsadenie cieľa kotvy.
   --odevy-bar: výška lišty sekcie na počítači (na mobile má dva riadky s výškou podľa obsahu, preto 0) — z nej
   a z --odevy-nav sa počíta najväčšia výška rozbaľovacích ponúk. Miesto pod pevnou lištou webu drží tmavý pás
   (je v toku stránky). */
.odevy-body {
    --odevy-nav-top: 84px;
    --odevy-nav-scrolled: 68px;
    --odevy-nav: var(--odevy-nav-top);
    --odevy-bar: 64px;
    --odevy-radius: 12px;
    --odevy-radius-sm: 8px;
    --odevy-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 10px 30px rgba(0, 0, 0, 0.07);
}

.odevy-body > .navbar.scrolled ~ * { --odevy-nav: var(--odevy-nav-scrolled); }

/* Cieľ kotvy (#profily, #tim, #modely, #riadok-…, #pridat) nesmie skončiť pod lištou webu — po skoku na kotvu je stránka
   posunutá, lišta webu má teda výšku po posunutí */
.odevy [id] { scroll-margin-top: calc(var(--odevy-nav-scrolled) + 20px); }

/* Odsadenie výrezu pre fokus (WCAG 2.4.11): prehliadač posúva fokusovaný prvok aj pri pohybe späť (Shift+Tab) tak,
   aby neskončil pod lištou webu ani pod prilepeným panelom profilu. Platí pre každý prvok, nielen ciele kotiev s id —
   preto na <html>, kde premenné z .odevy-body nie sú, a hodnoty sú čísla: 68 px lišta webu po posune + 20 px;
   na profile od 1024 px navyše kompaktný panel počtu pracovníkov (odstup 12 px + do 72 px + 20 px);
   do 768 px má lišta webu 54 px (+ 20 px), na profile tam dole drží lištu s tlačidlom (asi 70 px).
   Prehliadač s :has() dostane odsadenie výrezu a odsadenie cieľa kotvy vyššie sa vynuluje (inak by sa sčítali). */
@supports selector(html:has(body)) {
    .odevy [id] { scroll-margin-top: 0; }
    html:has(.odevy-body) { scroll-padding-top: 88px; }
}
@media (min-width: 1024px) {
    @supports selector(html:has(body)) {
        html:has(.odevy-plan) { scroll-padding-top: 172px; }
    }
}
@media (max-width: 768px) {
    @supports selector(html:has(body)) {
        html:has(.odevy-body) { scroll-padding-top: 74px; }
        html:has(.odevy-plan-bar) { scroll-padding-bottom: 90px; }
    }
}

/* Tlačidlo formulára počas odosielania cez fetch (js/odevy.js) — ostáva fokusovateľné, len vyzerá neaktívne */
.odevy-body button[aria-disabled="true"] { opacity: 0.7; cursor: progress; }

/* ---------- TMAVÝ PÁS POD LIŠTOU WEBU ----------
   Nahrádza tmavé hero ostatných stránok — lišta webu je nad ním priehľadná s bielym logom, navrchu stránky teda vyzerá
   presne ako na úvode a právnych stránkach. Lepí sa k hornému okraju, kým lišta nezbelie (pri posune do 50px by inak
   biele logo ostalo nad svetlým obsahom), potom zmizne v rovnakom čase, ako lišta mení farbu (--transition zo style.css).
   z-index: nad lištou sekcie (900, jej ponuky) a obsahom, pod lištou webu (1000). */
.odevy-band {
    position: sticky;
    top: 0;
    z-index: 950;
    height: var(--odevy-nav-top);
    background: var(--dark);
    transition: opacity var(--transition), visibility var(--transition);
}

.navbar.scrolled ~ .odevy-band { opacity: 0; visibility: hidden; }

/* ---------- LIŠTA SEKCIE ----------
   Svetlá, na počítači jeden riadok (na mobile dva). Nelepí sa — je v toku stránky pod tmavým pásom a pri posúvaní
   odíde hore; prilepená je len lišta webu, aby na obrazovke ostalo miesto na obsah. z-index drží otvorené ponuky
   nad obsahom stránky (aj nad prilepenými panelmi profilu, druhu a produktu). */
.odevy-bar {
    position: relative;
    z-index: 900;
    background: var(--bg);
    border-bottom: 1px solid var(--border);
}

/* Rozbaľovacie panely ponúk sa na počítači zarovnávajú na šírku obsahu kontajnera */
.odevy-bar__inner {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px 24px;
    min-height: var(--odevy-bar);
    padding-top: 10px;
    padding-bottom: 10px;
}

.odevy-bar__main { display: flex; align-items: center; gap: 8px 16px; min-width: 0; }

.odevy-bar__home {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    font-size: 1rem;
    font-weight: 600;
    white-space: nowrap;
    color: var(--text-heading);
}

.odevy-bar__home i { color: var(--accent-ui); }
.odevy-bar__home:hover { color: var(--accent-text); }

.odevy-bar__menus {
    display: flex;
    align-items: center;
    gap: 4px;
    padding-left: 12px;
    border-left: 1px solid var(--border);
}

/* Prepínač ponuky — dotyková plocha 44px na výšku */
.odevy-menu__toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 14px;
    border-radius: var(--odevy-radius-sm);
    list-style: none;
    font-size: 0.92rem;
    font-weight: 500;
    color: var(--text-heading);
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s ease;
}

.odevy-menu__toggle::-webkit-details-marker { display: none; }
.odevy-menu__toggle i { font-size: 0.7rem; color: var(--text-light); transition: transform 0.2s ease; }
.odevy-menu__toggle:hover,
.odevy-menu[open] .odevy-menu__toggle { background: var(--bg-soft); }
.odevy-menu[open] .odevy-menu__toggle i { transform: rotate(180deg); }
/* Aktuálna časť sekcie (stránka profilu alebo druhu) */
.odevy-menu__toggle.is-active { color: var(--accent-text); box-shadow: inset 0 -2px 0 var(--accent-ui); border-radius: var(--odevy-radius-sm) var(--odevy-radius-sm) 0 0; }

/* Panel ponuky visí pod lištou sekcie. Najvyššie (navrchu stránky) je jeho horný okraj pod lištou webu a lištou sekcie —
   max-height ho drží v okne aj vtedy (o 24px nad spodným okrajom); dlhší zoznam sa posúva vo vnútri. Keď lišta sekcie
   pri posúvaní zájde pod lištu webu, js/odevy.js otvorenú ponuku zavrie (inak by jej vrch zmizol pod lištou webu). */
.odevy-menu__panel {
    position: absolute;
    top: 100%;
    left: 30px;
    right: 30px;
    z-index: 10;
    max-height: calc(100vh - var(--odevy-nav) - var(--odevy-bar) - 24px);
    max-height: calc(100dvh - var(--odevy-nav) - var(--odevy-bar) - 24px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 24px 28px 20px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 0 0 var(--odevy-radius) var(--odevy-radius);
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.12);
}

.odevy-menu__title {
    margin-bottom: 10px;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--text-light);
}

/* Profily — mriežka odkazov s ikonou */
.odevy-menu__profiles {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr));
    gap: 2px 16px;
}

.odevy-menu__link {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 44px;
    padding: 6px 10px;
    border-radius: var(--odevy-radius-sm);
    font-size: 0.9rem;
    line-height: 1.3;
    color: var(--text-heading);
}

.odevy-menu__link i {
    flex: 0 0 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bg-soft);
    font-size: 0.85rem;
    color: var(--accent-ui);
}

.odevy-menu__link:hover { background: var(--bg-soft); }
.odevy-menu__link:hover i { background: var(--bg); }

/* Druhy — skupiny v stĺpcoch, dlhé skupiny (viac ako 12 druhov) majú dva stĺpce */
.odevy-menu__groups {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 20px 28px;
}

.odevy-menu__group--wide { grid-column: span 2; }
.odevy-menu__group--wide .odevy-menu__list { columns: 2; column-gap: 28px; }
.odevy-menu__list li { break-inside: avoid; }

.odevy-menu__item {
    display: block;
    padding: 5px 0;
    font-size: 0.875rem;
    line-height: 1.35;
    color: var(--text-heading);
}

.odevy-menu__item:hover { color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; }

.odevy-menu__more {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 28px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--border);
}

.odevy-menu__more a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--accent-text);
}

.odevy-menu__more a:hover { color: var(--dark); }

/* Odkaz Tabuľka veľkostí — vzhľadom ako prepínače ponúk; od nich ho delí len medzera lišty, preto záporný okraj.
   Text sa skracuje podľa šírky (RESPONSIVE): plný názov, „Veľkosti“ do 480px a len ikona do 360px (text pre čítačky). */
.odevy-bar__sizes {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    margin-left: -20px;
    padding: 0 14px;
    border-radius: var(--odevy-radius-sm);
    font-size: 0.92rem;
    font-weight: 500;
    white-space: nowrap;
    color: var(--text-heading);
    transition: background-color 0.2s ease;
}
.odevy-bar__sizes i { font-size: 0.85rem; color: var(--accent-ui); }
.odevy-bar__sizes:hover { background: var(--bg-soft); }
.odevy-bar__sizes.is-active { color: var(--accent-text); box-shadow: inset 0 -2px 0 var(--accent-ui); border-radius: var(--odevy-radius-sm) var(--odevy-radius-sm) 0 0; }
.odevy-bar__sizes-short { display: none; }

/* Vyhľadávanie — zaoblený obdĺžnik so svetlosivým pozadím, výška 42px; rámik 3:1 voči bielej (--border-input) */
.odevy-bar__search {
    display: flex;
    align-items: center;
    flex: 0 1 360px;
    min-width: 0;
    height: 42px;
    margin-left: auto;
    background: var(--bg-soft);
    border: 1px solid var(--border-input);
    border-radius: 10px;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.odevy-bar__search:focus-within { background: var(--bg); border-color: var(--accent-text); box-shadow: 0 0 0 1px var(--accent-text); }

.odevy-bar__search input {
    flex: 1;
    min-width: 0;
    height: 100%;
    padding: 0 0 0 14px;
    border: none;
    background: transparent;
    font-family: inherit;
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--text-heading);
    outline: none;
    appearance: none;
    -webkit-appearance: none;
}

.odevy-bar__search input::placeholder { color: var(--text-light); opacity: 1; }

/* Prázdne pole: prehliadač by pre krížik „vymazať“ rezervoval miesto aj bez textu a na úzkom mobile by orezal koniec
   zástupného textu; krížik sa ukáže, až keď je v poli text */
.odevy-bar__search input:placeholder-shown::-webkit-search-cancel-button { display: none; }

.odevy-bar__search-btn {
    flex-shrink: 0;
    width: 44px;
    height: 100%;
    border: none;
    background: none;
    font-size: 0.95rem;
    color: var(--text-heading);
    cursor: pointer;
}

.odevy-bar__search-btn:hover { color: var(--accent-text); }

/* ---------- HLAVIČKA STRÁNKY ----------
   Svetlá a kompaktná: drobčeky, H1, jedna-dve vety, drobné údaje ako čipy; pri produkte len drobčeky */
.odevy-head {
    padding: 20px 0 26px;
    background: var(--bg-soft);
    border-bottom: 1px solid var(--border);
}

.odevy-head--crumbs { padding: 14px 0 0; background: var(--bg); border-bottom: none; }
.odevy-head--crumbs .odevy-crumbs ol { margin-bottom: 0; }

.odevy-crumbs ol {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin-bottom: 10px;
    font-size: 0.8rem;
    line-height: 1.6;
    color: var(--text-light);
}

/* Oddeľovač je za položkou (nie pred ďalšou) — pri zalomení ostane na konci riadka a nový riadok nezačne „›“ */
.odevy-crumbs li { min-width: 0; overflow-wrap: anywhere; }
.odevy-crumbs li:not(:last-child)::after { content: '›'; margin: 0 8px; color: var(--text-light); }
.odevy-crumbs a { color: var(--text); text-decoration: underline; text-decoration-color: var(--border-input); text-underline-offset: 3px; }
.odevy-crumbs a:hover { color: var(--accent-text); text-decoration-color: currentColor; }
.odevy-crumbs [aria-current] { color: var(--text-heading); }

.odevy-head__main {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
}

.odevy-head__title {
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    font-weight: 500;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.odevy-head__meta { display: flex; flex-wrap: wrap; gap: 6px; }

.odevy-head__lead {
    max-width: 780px;
    margin-top: 8px;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--text);
}

/* ---------- ČIPY ---------- */
.odevy-chips { display: flex; flex-wrap: wrap; gap: 6px; }

.odevy-chip {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: var(--bg-soft);
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 1.4;
    color: var(--text-heading);
}

/* Na sivej hlavičke biele čipy */
.odevy-head .odevy-chip { background: var(--bg); border-color: var(--border); }

/* Čip ako odkaz — dotyková plocha aspoň 32px (malé súvisiace odkazy, hlavné ovládanie má 44px) */
.odevy-chip--link { min-height: 32px; border-color: var(--border-input); background: var(--bg); }
.odevy-chip--link:hover { border-color: var(--dark); color: var(--dark); }
.odevy-head .odevy-chip--link { border-color: var(--border-input); }

/* ---------- ÚVOD SEKCIE (HERO) ---------- */
.odevy-hero {
    padding: 44px 0 48px;
    background: linear-gradient(180deg, var(--bg-soft) 0%, var(--bg) 100%);
    border-bottom: 1px solid var(--border);
}

.odevy-hero__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    align-items: center;
    gap: 48px;
}

.odevy-hero__title {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 500;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.odevy-hero__lead {
    max-width: 600px;
    margin-top: 14px;
    font-size: 1.05rem;
    line-height: 1.65;
    color: var(--text);
}

/* Tri kroky v jednom kompaktnom riadku */
.odevy-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, max-content));
    gap: 14px 28px;
    margin-top: 24px;
    list-style: none;
}

.odevy-steps__item { display: flex; align-items: center; gap: 10px; }

/* Tmavý text na oranžovej — 6,2:1 (rovnako ako .btn--accent) */
.odevy-steps__number {
    flex: 0 0 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--accent);
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--dark);
}

.odevy-steps__item strong { display: block; font-size: 0.92rem; font-weight: 600; line-height: 1.3; color: var(--text-heading); }
.odevy-steps__text { display: block; font-size: 0.8rem; line-height: 1.4; color: var(--text-light); }

.odevy-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }

/* ---------- ŽIVÁ VITRÍNA V HERO ----------
   Na počítači tri zvislé stĺpce bielych kariet s fotkami, ktoré sa pomaly a nekonečne posúvajú — susedné stĺpce opačným
   smerom a inou rýchlosťou; hore a dole jemne zoslabnú (mask-image). Každý stĺpec má dve rovnaké sady kariet za sebou
   (druhá je kópia s aria-hidden) a posúva sa presne o polovicu svojej výšky — koniec slučky tak splynie so začiatkom.
   Sada má spodný odstup rovnaký ako medzera medzi kartami, aby boli obe polovice rovnako vysoké.
   Pohyb sa zastaví pri prejdení myšou, pri fokuse v karte, tlačidlom (trieda is-paused) a mimo výrezu (is-idle,
   js/odevy.js). Animuje sa len transform; pri obmedzení pohybu v systéme je vitrína statická (OBMEDZENIE POHYBU). */
.odevy-showcase { position: relative; min-width: 0; }

.odevy-showcase__cols {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    height: 440px;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 12%, #000 88%, transparent 100%);
    mask-image: linear-gradient(to bottom, transparent 0, #000 12%, #000 88%, transparent 100%);
}

/* Vodorovný pás je pre úzke obrazovky (RESPONSIVE) */
.odevy-showcase__strip { display: none; }

.odevy-showcase__track {
    display: flex;
    flex-direction: column;
    animation: odevyShowcaseUp 48s linear infinite;
    will-change: transform;
}

/* Prostredný stĺpec ide opačným smerom, tretí rýchlejšie a od iného miesta (záporné oneskorenie) */
.odevy-showcase__col--2 .odevy-showcase__track { animation-name: odevyShowcaseDown; animation-duration: 58s; }
.odevy-showcase__col--3 .odevy-showcase__track { animation-duration: 42s; animation-delay: -14s; }

/* Prejdenie myšou a fokus sa sledujú na kartách (stĺpce, pás), nie na celej vitríne — inak by po kliknutí na
   „Spustiť“ ostala vitrína stáť, kým kurzor alebo fokus neopustí tlačidlo */
.odevy-showcase__cols:hover .odevy-showcase__track,
.odevy-showcase__cols:focus-within .odevy-showcase__track,
.odevy-showcase__strip:hover .odevy-showcase__track,
.odevy-showcase__strip:focus-within .odevy-showcase__track,
.odevy-showcase.is-paused .odevy-showcase__track,
.odevy-showcase.is-idle .odevy-showcase__track { animation-play-state: paused; }

.odevy-showcase__set {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding-bottom: 14px;
    list-style: none;
}

/* Karta — fotka na bielom, pri prejdení myšou alebo fokuse sa zdvihne a ukáže názov druhu */
.odevy-showcase__card {
    position: relative;
    display: block;
    aspect-ratio: 1 / 1;
    padding: 14px;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 6px 18px rgba(0, 0, 0, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.odevy-showcase__card img { width: 100%; height: 100%; object-fit: contain; }

.odevy-showcase__card:hover,
.odevy-showcase__card:focus-visible { transform: translateY(-4px); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06), 0 16px 34px rgba(0, 0, 0, 0.14); }

/* Fokus vo vnútri karty — orezávanie stĺpca by rámik okolo karty orezalo */
.odevy .odevy-showcase__card:focus-visible { outline-offset: -3px; }

.odevy-showcase__name {
    position: absolute;
    left: 8px;
    right: 8px;
    bottom: 8px;
    padding: 5px 10px;
    border-radius: var(--odevy-radius-sm);
    background: var(--dark);
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    color: var(--white);
    opacity: 0;
    transform: translateY(6px);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.odevy-showcase__card:hover .odevy-showcase__name,
.odevy-showcase__card:focus-visible .odevy-showcase__name { opacity: 1; transform: none; }

/* Zastavenie pohybu — okrúhle tlačidlo v rohu vitríny (dotyková plocha 44px) */
.odevy-showcase__toggle {
    position: absolute;
    right: 8px;
    bottom: 8px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid var(--border-input);
    border-radius: 50%;
    background: var(--bg);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
    font-size: 0.85rem;
    color: var(--text-heading);
    cursor: pointer;
}

.odevy-showcase__toggle:hover { border-color: var(--dark); }
.odevy-showcase__toggle[hidden] { display: none; }

@keyframes odevyShowcaseUp {
    from { transform: translateY(0); }
    to { transform: translateY(-50%); }
}

@keyframes odevyShowcaseDown {
    from { transform: translateY(-50%); }
    to { transform: translateY(0); }
}

@keyframes odevyShowcaseLeft {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

/* ---------- ZJAVENIE KARIET PRI POSÚVANÍ ----------
   Karty profilov a druhov sa pri vstupe do výrezu plynulo objavia, postupne s malým oneskorením (data-odevy-delay
   0–5). Triedu odevy-reveal pridáva až js/odevy.js — bez JS a pri obmedzení pohybu sú karty hneď viditeľné. */
.odevy-reveal { transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1); }
.odevy-reveal:not(.is-revealed) { opacity: 0; transform: translateY(18px); }
.odevy-reveal[data-odevy-delay="1"] { transition-delay: 70ms; }
.odevy-reveal[data-odevy-delay="2"] { transition-delay: 140ms; }
.odevy-reveal[data-odevy-delay="3"] { transition-delay: 210ms; }
.odevy-reveal[data-odevy-delay="4"] { transition-delay: 280ms; }
.odevy-reveal[data-odevy-delay="5"] { transition-delay: 350ms; }

/* ---------- SEKCIE A NADPISY ---------- */
.odevy-section { padding: 56px 0; }
.odevy-section--first { padding-top: 32px; }
.odevy-section--soft { background: var(--bg-soft); }

.odevy-section__header { max-width: 760px; margin-bottom: 24px; }

/* Časté otázky úvodu sekcie — rozbaľovací zoznam z úvodu webu (.faq__list v css/style.css), zarovnaný vľavo pod
   nadpisom sekcie ako ostatné časti (na úvode webu je v strede) */
.odevy-faq .faq__list { max-width: 820px; margin: 0; }
/* Odkaz v odpovedi (odevy_faq_answer_html v isset/odevy/seo.php, napr. na Tabuľku veľkostí) — podčiarknutý ako odkazy
   v texte stránok sekcie */
.odevy-faq .faq-item__answer a { color: var(--accent-text); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }
.odevy-faq .faq-item__answer a:hover { color: var(--dark); }

.odevy-section__lead {
    margin-top: 8px;
    font-size: 1rem;
    line-height: 1.65;
    color: var(--text);
}

/* Nadpisy sekcie sú menšie ako h2/h3 prezentačnej stránky (4rem / 2,6rem) — ide o pracovné rozhranie */
.odevy-h2 { font-size: clamp(1.5rem, 2.4vw, 2rem); font-weight: 500; line-height: 1.2; }
.odevy-h3 { margin-bottom: 12px; font-size: 1.25rem; font-weight: 500; }
.odevy-h4 { margin: 24px 0 10px; font-size: 1.05rem; font-weight: 500; }

.odevy-narrow { max-width: 880px; }

/* Slovo so spojovníkom (e-mail) sa nezalomí za spojovníkom */
.odevy-nowrap { white-space: nowrap; }

.odevy-help {
    margin-top: 6px;
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--text-light);
}

/* ---------- UPOZORNENIA A SPRÁVY ---------- */
.odevy-notice {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 18px;
    background: var(--bg-soft);
    border-left: 3px solid var(--accent-ui);
    border-radius: 0 var(--odevy-radius-sm) var(--odevy-radius-sm) 0;
}

.odevy-notice i { margin-top: 4px; color: var(--accent-ui); }

/* Upozornenie vo formulári profilu — časť výbavy už je v košíku */
.odevy-notice--cart { margin-bottom: 16px; font-size: 0.9rem; line-height: 1.6; }
.odevy-notice--cart a { color: var(--accent-text); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }

/* Jednorazová správa po akcii bez JS */
.odevy-flash {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0 0 20px;
    padding: 14px 18px;
    border-left: 3px solid #047857;
    border-radius: 0 var(--odevy-radius-sm) var(--odevy-radius-sm) 0;
    background: #ECFDF5;
    color: #064E3B;
}

.odevy-flash i { margin-top: 4px; }
/* Správa navrchu stránky (bez kotvy) — odstup od hlavičky */
.odevy-flash-top { padding-top: 24px; }
.odevy-flash-top .odevy-flash { margin-bottom: 0; }
.odevy-line .odevy-flash { margin: 10px 0 4px; padding: 10px 14px; font-size: 0.9rem; }
.odevy-flash--error { border-left-color: #B91C1C; background: #FEF2F2; color: #7F1D1D; }
.odevy-flash a { color: inherit; font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }

/* Prázdny stav (prázdny košík, nič nenájdené, 404) */
.odevy-empty {
    padding: 44px 28px;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
    text-align: center;
}

.odevy-empty i { margin-bottom: 14px; font-size: 2rem; color: var(--accent-ui); }
.odevy-empty p { margin-top: 6px; line-height: 1.7; }
.odevy-empty a:not(.btn) { color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; }

/* ---------- KARTY PROFILOV ---------- */
.odevy-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr));
    gap: 20px;
}

.odevy-cards > li { display: flex; }

.odevy-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.odevy-card:hover { border-color: rgba(0, 0, 0, 0.25); box-shadow: var(--odevy-shadow); transform: translateY(-2px); }

/* Koláž fotiek odporúčanej výbavy — tenké deliace čiary tvorí pozadie mriežky */
.odevy-card__photos {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    background: var(--border);
    border-bottom: 1px solid var(--border);
}

.odevy-card__photos--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.odevy-card__photos--1 { grid-template-columns: minmax(0, 1fr); }

/* overflow: hidden — bunka s pomerom strán by sa inak natiahla podľa výšky fotky na výšku (fotka sa zmenší, object-fit) */
.odevy-card__photo {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    padding: 8px;
    overflow: hidden;
    background: var(--bg);
}

/* Pri dvoch a jednej fotke je pás koláže rovnako vysoký ako pri troch (tretina šírky karty) — karty v rade lícujú */
.odevy-card__photos--2 .odevy-card__photo { aspect-ratio: 3 / 2; }
.odevy-card__photos--1 .odevy-card__photo { aspect-ratio: 3 / 1; }
.odevy-card__photo img { width: 100%; height: 100%; object-fit: contain; }

.odevy-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 8px;
    padding: 16px 18px 18px;
}

.odevy-card__head { display: flex; align-items: center; gap: 12px; }

.odevy-card__icon {
    flex: 0 0 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bg-soft);
    font-size: 1rem;
    color: var(--accent-ui);
}

.odevy-card__title { font-size: 1.05rem; font-weight: 500; line-height: 1.3; }

.odevy-card__text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    font-size: 0.875rem;
    line-height: 1.5;
    color: var(--text);
}

.odevy-card__meta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding-top: 4px;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--accent-text);
}

/* ---------- VÝBAVA PRE CELÝ TÍM ---------- */
.odevy-box {
    padding: 28px;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
}

.odevy-fieldset {
    min-width: 0;
    margin: 0 0 20px;
    padding: 0;
    border: none;
}

.odevy-fieldset__legend {
    margin-bottom: 14px;
    padding: 0;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--text-heading);
}

.odevy-team__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(330px, 100%), 1fr));
    gap: 0 36px;
}

.odevy-team__row {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 8px 0;
    border-bottom: 1px solid var(--border);
}

.odevy-team__thumb {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3px;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg);
    font-size: 0.95rem;
    color: var(--accent-ui);
}

.odevy-team__thumb img { width: 100%; height: 100%; object-fit: contain; }
.odevy-team__row label { font-size: 0.92rem; line-height: 1.35; color: var(--text-heading); }
.odevy-team__row .odevy-num { width: 76px; }

.odevy-team__incart {
    display: block;
    margin-top: 2px;
    font-size: 0.78rem;
    color: #047857;
}

.odevy-team__foot {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 8px 24px;
}

.odevy-team__foot .odevy-fieldset { margin-bottom: 0; }
.odevy-team__foot .odevy-radios { margin-bottom: 0; }

/* Číselné pole s rámikom (počty ľudí, ks na veľkosť) — rámik 3:1 voči pozadiu (--border-input) */
.odevy-num {
    width: 84px;
    height: 42px;
    flex-shrink: 0;
    padding: 6px;
    border: 1px solid var(--border-input);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg);
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    text-align: center;
    color: var(--text-heading);
}

.odevy-num:focus { border-color: var(--accent-text); outline: 2px solid var(--accent-text); outline-offset: 1px; }
.odevy-num::placeholder { color: var(--text-light); opacity: 1; }

/* ---------- DRUHY (karty s fotkou podľa skupín) ---------- */
.odevy-group + .odevy-group { margin-top: 40px; }

.odevy-group__title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    font-size: 1.2rem;
    font-weight: 500;
}

.odevy-group__count {
    padding: 2px 9px;
    border-radius: 999px;
    background: var(--bg-soft);
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text);
}

.odevy-tiles {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(168px, 100%), 1fr));
    gap: 16px;
}

.odevy-tiles > li { display: flex; }

.odevy-tile {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.odevy-tile:hover { border-color: rgba(0, 0, 0, 0.25); box-shadow: var(--odevy-shadow); }

/* Fotka na bielom (alebo ikona druhu na svetlosivom, keď produkt s fotkou nie je) */
.odevy-tile__media {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    padding: 14px;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
    background: var(--bg);
    font-size: 2rem;
    color: var(--accent-ui);
}

.odevy-tile__media:has(> i) { background: var(--bg-soft); }
.odevy-tile__media img { width: 100%; height: 100%; object-fit: contain; }
.odevy-tile__name { padding: 12px 14px 0; font-size: 0.92rem; font-weight: 500; line-height: 1.3; color: var(--text-heading); }
.odevy-tile__meta { padding: 4px 14px 14px; font-size: 0.8rem; color: var(--text-light); }
.odevy-tile__name:last-child { padding-bottom: 14px; }

/* ---------- ÚVOD PROFILU ---------- */
.odevy-intro { max-width: 820px; margin-bottom: 24px; }
.odevy-intro p { font-size: 1rem; line-height: 1.7; color: var(--text); }

/* ---------- FORMULÁR PROFILU ---------- */
/* Panel navrchu: počet pracovníkov, sezóny, súhrn a tlačidlo; od 1024px prilepený tesne pod lištou webu a kompaktný
   (jeden riadok — pravidlá @media (min-width: 1024px) nižšie), pod 1024px v toku stránky (RESPONSIVE) */
.odevy-plan {
    position: sticky;
    top: calc(var(--odevy-nav) + 12px);
    z-index: 20;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 14px 28px;
    padding: 14px 20px;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
    box-shadow: var(--odevy-shadow);
}

.odevy-plan__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: none;
}

.odevy-plan__label {
    padding: 0;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--text-heading);
}

/* Legenda fieldsetu sa sama do flexu nezaradí — odstup pod ňou drží margin */
legend.odevy-plan__label { margin-bottom: 6px; }
.odevy-plan__seasons .odevy-radios { margin-bottom: 0; }
.odevy-plan__people { width: 96px; }
.odevy-plan .odevy-field-error { max-width: 260px; }

.odevy-plan__end {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px 18px;
    margin-left: auto;
}

.odevy-plan__summary { font-size: 0.92rem; font-weight: 500; line-height: 1.4; color: var(--text-heading); }

/* Od 1024px kompaktný panel v jednom riadku (výška ~68px) — s lištou webu po posunutí (68px) a odstupom 12px zaberajú
   prilepené vrstvy ~150px. Popis počtu pracovníkov je vľavo od poľa v dvoch riadkoch; nadpis Sezóny je len pre čítačky
   obrazovky (legenda, vizuálne skrytá ako .sr-only) — čipy Celoročne / Leto / Zima hovoria samy za seba a pomocný text
   pod panelom ich vysvetľuje. Súhrn je menším písmom a pri užšom paneli sa zalomí do dvoch riadkov vedľa tlačidla.
   Pole je mriežka (popis a pole vedľa seba, chyba pod nimi cez celú šírku) — šírka poľa je tak väčšia z oboch;
   chyba (po neúspešnom odoslaní) panel dočasne zvýši. Súhrn s tlačidlom sa nezúži pod najdlhšie slovo súhrnu —
   keď sa do riadku nezmestí, panel ho zalomí pod polia (nikdy sa neprekryjú). */
@media (min-width: 1024px) {
    .odevy-plan { align-items: center; gap: 0 24px; padding: 10px 12px 10px 20px; }
    .odevy-plan__field { display: grid; grid-template-columns: auto auto; align-items: center; gap: 0 12px; }
    .odevy-plan__seasons { grid-template-columns: auto; }
    .odevy-plan__field > .odevy-field-error { grid-column: 1 / -1; }
    label.odevy-plan__label { max-width: 7.5em; line-height: 1.35; }
    legend.odevy-plan__label {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        white-space: nowrap;
    }
    .odevy-plan__people { width: 76px; }
    .odevy-plan__end { flex: 1 1 0; flex-wrap: nowrap; gap: 16px; }
    .odevy-plan__end .odevy-plan__summary { font-size: 0.85rem; line-height: 1.35; text-align: right; }
    .odevy-plan__submit { flex-shrink: 0; padding: 13px 26px; }
}

.odevy-plan__help { margin: 10px 0 24px; }
.odevy-plan__help span + span::before { content: ' '; }

/* Mobil: súhrn a tlačidlo v lište pri spodku obrazovky — na počítači skrytá */
.odevy-plan-bar { display: none; }

/* Skupina výbavy jednej sezóny; nevybraná sezóna je stlmená (jej položky sa do košíka nepridajú) */
.odevy-season {
    min-width: 0;
    margin: 0 0 36px;
    padding: 0;
    border: none;
}

/* Legenda nesie nadpis H2 sezóny (navigácia čítačky podľa nadpisov) — vzhľad má nadpis, legenda je len obal */
.odevy-season__legend { width: 100%; padding: 0; }

.odevy-season__title {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 12px;
    width: 100%;
    margin: 0;
    padding: 0 0 10px;
    border-bottom: 2px solid var(--dark);
    font-size: 1.35rem;
    font-weight: 500;
    color: var(--text-heading);
}

.odevy-season__hint { font-size: 0.85rem; font-weight: 400; color: var(--text); }
.odevy-season__count { margin-left: auto; font-size: 0.8rem; font-weight: 400; color: var(--text-light); }
.odevy-season.is-off .odevy-items { opacity: 0.5; }

.odevy-season__off {
    margin: 10px 0 0;
    font-size: 0.85rem;
    color: var(--text);
}

.odevy-season__off[hidden] { display: none; }

/* Položka výbavy: riadok (pole, ikona, názov, odznaky | množstvo), poznámka a výber modelu pod ním */
.odevy-item { padding: 18px 0 20px; border-bottom: 1px solid var(--border); }

.odevy-item__row {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px 14px;
}

/* Medzery medzi názvom a odznakmi sú okraje, nie gap: WebKit (Safari, prehliadače na iPhone) nezapočítaval gap
   vnoreného flex kontajnera (ikona + názov) do jeho šírky — názov potom pretiekol do medzery a odznak „Odporúčané“
   sa ho dotýkal. Okraj 10px vpravo od každej časti (záporný okraj štítku ho na konci riadka vyrovná) drží odstup
   v každom prehliadači; zalomené odznaky majú zvislý odstup 6px (2 × 3px). */
.odevy-item__label {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: -3px -10px -3px 0;
    cursor: pointer;
}

.odevy-item__label > * { margin: 3px 10px 3px 0; }

/* Ikona a názov tvoria jeden celok — pri dlhom názve sa na ďalší riadok presunú odznaky („Povinné“, „V košíku“),
   nie celý názov (ikona by ostala sama); názov sa zalomí vedľa ikony */
.odevy-item__title {
    display: flex;
    align-items: center;
    min-width: 0;
}

.odevy-item__icon {
    flex: 0 0 32px;
    height: 32px;
    margin-right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bg-soft);
    font-size: 0.85rem;
    color: var(--accent-ui);
}

.odevy-item__name { min-width: 0; font-size: 1.02rem; font-weight: 500; color: var(--text-heading); }

/* Nezaškrtnutá položka sa stlmí — nepôjde do košíka. Len farbou: zmena hrúbky písma by menila šírku názvu
   a prehliadač, ktorý po zmene :has() neprepočíta rozloženie, by názov posunul k odznaku */
.odevy-item:has(.odevy-check:not(:checked)) .odevy-item__name { color: var(--text); }

.odevy-item__qty {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    font-size: 0.85rem;
    line-height: 1.4;
    white-space: nowrap;
    color: var(--text);
}

.odevy-item__total { font-weight: 600; color: var(--text-heading); }

/* Poznámka a výber modelu sú zarovnané s názvom (pole 20px + medzera 14px) */
.odevy-item__note,
.odevy-item__hint {
    margin: 6px 0 0 34px;
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--text-light);
}

.odevy-item__hint a { font-weight: 500; color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; }

/* Odkaz na stránku druhu pri položke s modelmi („Všetky modely: Reflexná vesta“) — drobný ako poznámka, farbou
   a podčiarknutím ako odkaz „O druhu“ pri položke bez modelov */
.odevy-item__more {
    margin: 6px 0 0 34px;
    font-size: 0.85rem;
    line-height: 1.5;
}

.odevy-item__more a { font-weight: 500; color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; }

/* Zaškrtávacie pole — farba podľa --accent-text (kontrast 4,5:1 na bielej) */
.odevy-check {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin: 0;
    accent-color: var(--accent-text);
    cursor: pointer;
}

.odevy-badge {
    display: inline-block;
    padding: 2px 9px;
    border: 1px solid var(--border-input);
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 500;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    color: var(--text);
}

.odevy-badge--required { border-color: var(--dark); background: var(--dark); color: var(--white); }
/* Položka už je v košíku (zelená #047857 na bielej — kontrast 5,5:1) */
.odevy-badge--cart { border-color: #047857; color: #047857; }
.odevy-badge[hidden] { display: none; }

/* ---------- VÝBER MODELU (karty s fotkami pri položke profilu) ---------- */
.odevy-pick {
    min-width: 0;
    margin: 12px 0 0 34px;
    padding: 0;
    border: none;
}

.odevy-pick__legend {
    margin-bottom: 8px;
    padding: 0;
    font-size: 0.8rem;
    color: var(--text-light);
}

.odevy-pick__rec { font-weight: 500; color: var(--accent-text); }

/* Karty aspoň 132px, rad vyplní celú šírku (pravý okraj radu lícuje s množstvami položky) */
.odevy-pick__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(132px, 1fr));
    gap: 10px;
}

.odevy-pick__opt {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.odevy-pick__opt:hover { border-color: rgba(0, 0, 0, 0.3); }

/* Vybraná karta — orámovanie --accent-text (4,5:1) a značka ✓ v rohu */
.odevy-pick__opt:has(.odevy-pick__input:checked) { border-color: var(--accent-text); box-shadow: 0 0 0 1px var(--accent-text); }

/* Rádiové tlačidlo je vizuálne skryté (vzor .sr-only), ovláda sa kartou; fokus klávesnice ukáže rámik karty */
.odevy-pick__input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

.odevy-pick__input:focus-visible + .odevy-pick__card { outline: 2px solid var(--accent-text); outline-offset: -3px; border-radius: var(--odevy-radius-sm); }
.odevy-pick__input:disabled + .odevy-pick__card { cursor: not-allowed; }

.odevy-pick__card {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 6px;
    padding: 8px 8px 4px;
    cursor: pointer;
}

.odevy-pick__input:checked + .odevy-pick__card::after {
    content: '\f00c';
    position: absolute;
    top: 6px;
    right: 6px;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--accent-text);
    font-family: 'Font Awesome 6 Free';
    font-size: 0.65rem;
    font-weight: 900;
    color: var(--white);
}

.odevy-pick__media {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 6px;
    background: var(--bg);
    font-size: 1.6rem;
    color: var(--accent-ui);
}

.odevy-pick__opt--auto .odevy-pick__media { background: var(--bg-soft); }
.odevy-pick__media img { width: 100%; height: 100%; object-fit: contain; }

.odevy-pick__name {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    font-size: 0.76rem;
    line-height: 1.35;
    color: var(--text-heading);
}

.odevy-pick__opt--auto .odevy-pick__name { font-weight: 500; }

.odevy-pick__detail {
    align-self: flex-start;
    padding: 2px 8px 8px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--accent-text);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.odevy-pick__detail:hover { color: var(--dark); }

/* Farba vybraného modelu — výber (alebo jediná farba) sa ukáže len pri vybranej karte (:checked, funguje aj bez JS) */
.odevy-pick__color { display: none; padding: 0 8px 10px; font-size: 0.75rem; line-height: 1.4; color: var(--text-heading); }
.odevy-pick__input:checked ~ .odevy-pick__color { display: block; }
.odevy-pick__color label { display: block; margin-bottom: 4px; font-weight: 500; }

.odevy-pick__color select {
    width: 100%;
    min-height: 36px;
    padding: 6px 24px 6px 8px;
    border: 1px solid var(--border-input);
    border-radius: 6px;
    background: var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23757575' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 8px center;
    font-family: inherit;
    font-size: 0.78rem;
    color: var(--text-heading);
    appearance: none;
    cursor: pointer;
}

.odevy-pick__color select:focus-visible { outline: 2px solid var(--accent-text); outline-offset: 1px; }

.odevy-pick__more { margin-top: 10px; }

.odevy-pick__more summary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 36px;
    list-style: none;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--accent-text);
    cursor: pointer;
}

.odevy-pick__more summary::-webkit-details-marker { display: none; }
.odevy-pick__more summary::after { content: '\f078'; font-family: 'Font Awesome 6 Free'; font-size: 0.65rem; font-weight: 900; }
.odevy-pick__more[open] summary::after { content: '\f077'; }
.odevy-pick__more summary:hover { color: var(--dark); }
.odevy-pick__more .odevy-pick__list { margin-top: 6px; }

/* ---------- KARTY PRODUKTOV ---------- */
.odevy-products {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(210px, 100%), 1fr));
    gap: 20px;
}

.odevy-product-card { display: flex; }

.odevy-product-card__link {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.odevy-product-card__link:hover { border-color: rgba(0, 0, 0, 0.25); box-shadow: var(--odevy-shadow); }

/* Fotka 4 : 5 na bielom — pevný pomer strán, obrázok neposúva rozloženie pri načítaní */
.odevy-product-card__media {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 5;
    padding: 16px;
    overflow: hidden;
    background: var(--bg);
    font-size: 2.4rem;
    color: var(--accent-ui);
}

.odevy-product-card__media:has(> i) { background: var(--bg-soft); }
.odevy-product-card__media img { width: 100%; height: 100%; object-fit: contain; }

/* Sezóna produktu (Zima, Leto) v rohu obrázka */
.odevy-product-card__season {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 999px;
    background: var(--dark);
    font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    color: var(--white);
}

.odevy-product-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 6px;
    padding: 4px 16px 16px;
}

.odevy-product-card__title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    font-size: 0.98rem;
    font-weight: 500;
    line-height: 1.35;
}

.odevy-product-card__text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--text);
}

.odevy-product-card__facts { font-size: 0.8rem; line-height: 1.4; color: var(--text-light); }

.odevy-product-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
    padding-top: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--accent-text);
}

.odevy-product-card__link:hover .odevy-product-card__cta { color: var(--dark); }

/* ---------- STRÁNKA DRUHU: MODELY + PANEL „DO KOŠÍKA BEZ VÝBERU MODELU“ ---------- */
.odevy-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    align-items: start;
    gap: 36px;
}

/* Panel pridania do košíka sa drží pod lištou webu; vyšší ako okno sa posúva vo vnútri (tlačidlo ostane dosiahnuteľné) */
.odevy-split__side {
    position: sticky;
    top: calc(var(--odevy-nav) + 16px);
    max-height: calc(100vh - var(--odevy-nav) - 32px);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.odevy-narrow .odevy-split__side { position: static; max-height: none; overflow: visible; }

/* Nízka obrazovka (napr. 1280 × 720, 1366 × 768): prilepený panel by tlačidlo „Pridať do košíka“ schoval do vnútorného
   posunu, o ktorom nič nehovorí — panel sa preto neprilepí a ide s obsahom stránky */
@media (max-height: 820px) {
    .odevy-split__side { position: static; max-height: none; overflow: visible; }
}

.odevy-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 14px;
    margin-bottom: 16px;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--text-heading);
}

.odevy-toolbar__hint { font-size: 0.85rem; font-weight: 400; color: var(--text-light); }

/* Profily, do ktorých výbavy druh patrí — čipy pod mriežkou modelov (bez modelov pod formulárom) */
.odevy-related { margin-top: 28px; }
.odevy-related__label { margin-bottom: 8px; font-size: 0.85rem; font-weight: 500; color: var(--text-heading); }

/* Panel s formulárom (druh bez modelu, produkt, kontaktné údaje) */
.odevy-panel {
    padding: 22px 22px 24px;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
    box-shadow: var(--odevy-shadow);
}

.odevy-panel__title { margin-bottom: 6px; font-size: 1.2rem; font-weight: 500; line-height: 1.3; }
.odevy-panel__text { margin-bottom: 18px; font-size: 0.875rem; line-height: 1.55; color: var(--text); }
.odevy-panel__submit { width: 100%; justify-content: center; }
/* Široký panel (druh bez modelov) — tlačidlo podľa textu, nie cez celú šírku */
.odevy-narrow .odevy-panel__submit { width: auto; }
.odevy-panel .form-group { margin-bottom: 18px; }

/* Rozbaľovacia časť „Rozpísať podľa veľkostí“ v úzkom paneli */
.odevy-sizes-toggle {
    margin: -4px 0 18px;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}

.odevy-sizes-toggle summary {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    list-style: none;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--text-heading);
    cursor: pointer;
}

.odevy-sizes-toggle summary::-webkit-details-marker { display: none; }
.odevy-sizes-toggle summary i { color: var(--accent-ui); }
.odevy-sizes-toggle summary::after { content: '\f078'; margin-left: auto; font-family: 'Font Awesome 6 Free'; font-size: 0.7rem; font-weight: 900; color: var(--text-light); }
.odevy-sizes-toggle[open] summary::after { content: '\f077'; }
.odevy-sizes-toggle__hint { font-weight: 400; color: var(--text-light); }
.odevy-sizes-toggle .odevy-sizes { margin: 2px 0 14px; }

/* ---------- DETAIL PRODUKTU ---------- */
.odevy-product {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: 48px;
}

.odevy-gallery { position: sticky; top: calc(var(--odevy-nav) + 16px); }

.odevy-gallery__main {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    padding: 24px;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    background: var(--bg);
}

.odevy-gallery__main img { width: 100%; height: 100%; object-fit: contain; }

.odevy-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(76px, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.odevy-gallery__thumb {
    display: block;
    aspect-ratio: 1 / 1;
    padding: 6px;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg);
}

.odevy-gallery__thumb[aria-current="true"] { border-color: var(--accent-text); box-shadow: 0 0 0 1px var(--accent-text); }
.odevy-gallery__thumb img { width: 100%; height: 100%; object-fit: contain; }

.odevy-gallery__placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    aspect-ratio: 1 / 1;
    border-radius: var(--odevy-radius);
    background: var(--bg-soft);
    font-size: 3.5rem;
    color: var(--accent-ui);
}

.odevy-gallery__placeholder span { font-size: 0.85rem; color: var(--text-light); }

.odevy-product__code { font-size: 0.8rem; letter-spacing: 0.5px; color: var(--text-light); }
.odevy-product__code a { color: var(--text); text-decoration: underline; text-decoration-color: var(--border-input); text-underline-offset: 3px; }
.odevy-product__code a:hover { color: var(--accent-text); }

.odevy-product__title {
    margin-top: 6px;
    font-size: clamp(1.6rem, 2.6vw, 2.2rem);
    font-weight: 500;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.odevy-product__lead { margin-top: 10px; font-size: 1rem; line-height: 1.6; color: var(--text); }
.odevy-product__chips { margin-top: 14px; }
.odevy-product__form { margin-top: 24px; }

/* Popis, vlastnosti a parametre pod formulárom */
.odevy-details {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    gap: 48px;
}

.odevy-details--specs { grid-template-columns: minmax(0, 1fr); max-width: 760px; }
.odevy-details__label { margin: 20px 0 8px; font-size: 0.85rem; font-weight: 500; color: var(--text-heading); }

.odevy-prose p { margin-bottom: 12px; font-size: 1rem; line-height: 1.75; }

.odevy-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.odevy-list li {
    position: relative;
    padding-left: 24px;
    font-size: 0.95rem;
    line-height: 1.65;
}

.odevy-list li::before {
    content: '\f00c';
    position: absolute;
    left: 0;
    top: 1px;
    font-family: 'Font Awesome 6 Free';
    font-size: 0.75rem;
    font-weight: 900;
    color: var(--accent-ui);
}

.odevy-specs { border-top: 1px solid var(--border); }

.odevy-specs > div {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 16px;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
    font-size: 0.9rem;
}

.odevy-specs dt { font-weight: 500; color: var(--text-light); }
.odevy-specs dd { color: var(--text-heading); overflow-wrap: anywhere; }

.odevy-specs a,
.odevy-line__meta a {
    color: var(--accent-text);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* ---------- VEĽKOSTI A MNOŽSTVO ---------- */
.odevy-sizes {
    min-width: 0;
    margin: 0 0 18px;
    padding: 0;
    border: none;
}

.odevy-sizes__legend {
    margin-bottom: 10px;
    padding: 0;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--text-heading);
}

/* Odkaz Tabuľka veľkostí pri výbere veľkosti (produkt, druh, úprava riadku v košíku) */
.odevy-sizes__guide { margin-bottom: 10px; font-size: 0.85rem; line-height: 1.5; }
.odevy-sizes__guide a,
.odevy-line__guide { color: var(--accent-text); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.odevy-sizes__guide i,
.odevy-line__guide i { margin-right: 2px; color: var(--accent-ui); }
/* Medzera pred odkazom v riadku košíka je na texte veľkostí — po zalomení začne odkaz na kraji riadka bez odsadenia */
.odevy-line__sizes-text { margin-right: 8px; }

.odevy-sizes__optional {
    display: block;
    margin-top: 3px;
    font-size: 0.82rem;
    font-weight: 300;
    letter-spacing: 0;
    text-transform: none;
    color: var(--text-light);
}

/* Kompaktné polia 56–64px, zalamujú sa; na mobile štyri v rade (RESPONSIVE) */
.odevy-sizes__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(56px, 1fr));
    gap: 8px;
}

.odevy-sizes__cell { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.odevy-sizes__cell label { font-size: 0.75rem; font-weight: 500; text-align: center; color: var(--text-heading); overflow-wrap: anywhere; }
.odevy-sizes__cell .odevy-num { width: 100%; height: 40px; padding: 4px; }

/* Súčet z js/odevy.js — živá oblasť ostáva v DOM aj prázdna (skrytá by ohlásenie nemusela odovzdať) */
.odevy-sizes__sum { margin-top: 10px; font-size: 0.88rem; font-weight: 500; color: var(--text-heading); }
.odevy-sizes__sum:empty { margin-top: 0; }

.odevy-qty { max-width: 320px; }
.odevy-panel .odevy-qty { max-width: none; }

/* ---------- CHYBY FORMULÁROV ----------
   Miesta pre chyby sú v DOM stále (aria-describedby, vpisuje ich aj js/odevy.js) — prázdne nezaberajú miesto */
.odevy-field-error { margin-top: 6px; font-size: 0.85rem; font-weight: 400; color: #B91C1C; }
.odevy-field-error:empty { margin: 0; }

.odevy .form-group [aria-invalid="true"] { border-bottom-color: #B91C1C; }
.odevy .odevy-num[aria-invalid="true"],
.odevy .odevy-check[aria-invalid="true"] { outline: 2px solid #B91C1C; outline-offset: 1px; }

.odevy-form-error {
    margin-bottom: 20px;
    padding: 12px 16px;
    border-left: 3px solid #B91C1C;
    border-radius: 0 var(--odevy-radius-sm) var(--odevy-radius-sm) 0;
    background: #FEF2F2;
    font-size: 0.9rem;
    color: #7F1D1D;
}

.odevy-form-error:empty { margin: 0; padding: 0; border: none; }

/* ---------- KOŠÍK ---------- */
.odevy-cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 400px;
    align-items: start;
    gap: 40px;
}

.odevy-cart { min-width: 0; }
.odevy-cart__head { margin-bottom: 14px; }

.odevy-cart__title {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 12px;
    font-size: 1.35rem;
    font-weight: 500;
}

.odevy-cart__summary { font-size: 0.9rem; font-weight: 400; color: var(--text); }

/* Skratka k formuláru dopytu — len do 1023 px, keď je formulár pod zoznamom (pravidlo v sekcii RESPONSIVE) */
.odevy-cart__skip { display: none; margin-top: 6px; font-size: 0.9rem; font-weight: 500; color: var(--accent-text); }
.odevy-cart__skip i { margin-left: 4px; font-size: 0.8em; }

.odevy-lines { border-top: 1px solid var(--border); }

/* Riadok ako v tabuľke: náhľad | popis | množstvo, akcie pod popisom */
.odevy-line {
    display: grid;
    grid-template-columns: 80px minmax(0, 1fr) auto;
    grid-template-areas:
        "media body qty"
        "media actions actions";
    gap: 4px 20px;
    padding: 18px 0;
    border-bottom: 1px solid var(--border);
}

.odevy-line__media {
    grid-area: media;
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg);
    font-size: 1.4rem;
    color: var(--accent-ui);
}

.odevy-line__media:has(> i) { background: var(--bg-soft); }
.odevy-line__media img { width: 100%; height: 100%; object-fit: contain; }

.odevy-line__body { grid-area: body; min-width: 0; }
.odevy-line__title { font-size: 1.05rem; font-weight: 500; line-height: 1.35; overflow-wrap: anywhere; }
.odevy-line__title a { text-decoration: underline; text-decoration-color: var(--border-input); text-underline-offset: 3px; }
.odevy-line__title a:hover { color: var(--accent-text); }

.odevy-line__code {
    display: inline-block;
    margin-left: 8px;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0.5px;
    color: var(--text-light);
}

/* Údaje riadku (druh, profil, sezóna, osoby × množstvo, farba) ako drobné čipy */
.odevy-line__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

/* Zaoblenie 12px: jednoriadkový čip vyzerá ako pilulka, dlhý text zalomený do dvoch riadkov ako zaoblený obdĺžnik */
.odevy-line__meta li {
    padding: 2px 10px;
    border-radius: 12px;
    background: var(--bg-soft);
    font-size: 0.78rem;
    line-height: 1.5;
    color: var(--text-heading);
    overflow-wrap: anywhere;
}

/* Vysvetlenie bez údaja („Konkrétny model navrhneme v cenovej ponuke“) — drobný text, nie čip */
.odevy-line__meta .odevy-line__plain { padding: 2px 0; background: none; color: var(--text); }

.odevy-line__sizes,
.odevy-line__note { margin-top: 6px; font-size: 0.85rem; line-height: 1.5; color: var(--text); overflow-wrap: anywhere; }
/* Odporúčanie položky výbavy profilu (norma, trieda) — drobnejšie a sivé, aby sa nepletlo s poznámkou zákazníka */
.odevy-line__hint { margin-top: 6px; font-size: 0.8rem; line-height: 1.5; color: var(--text-light); overflow-wrap: anywhere; }

/* Konkrétny model bez farby — výber farby priamo v riadku; po odmietnutom dopyte červený ako chyba */
.odevy-line__color {
    margin-top: 10px;
    padding: 12px 14px;
    border-left: 3px solid var(--accent-ui);
    border-radius: 0 var(--odevy-radius-sm) var(--odevy-radius-sm) 0;
    background: var(--bg-soft);
}

.odevy-line.is-error .odevy-line__color { border-left-color: #B91C1C; background: #FEF2F2; }

.odevy-line__color-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--text-heading);
}

.odevy-line__color-label i { color: var(--accent-ui); }
.odevy-line.is-error .odevy-line__color-label i { color: #B91C1C; }

.odevy-line__color-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin-top: 8px;
}

.odevy-line__color-row select {
    flex: 1 1 200px;
    min-width: 0;
    max-width: 340px;
    min-height: 42px;
    padding: 8px 32px 8px 12px;
    border: 1px solid var(--border-input);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23757575' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 12px center;
    font-family: inherit;
    font-size: 0.9rem;
    color: var(--text-heading);
    appearance: none;
    cursor: pointer;
}

.odevy-line__color-row select:focus-visible { outline: 2px solid var(--accent-text); outline-offset: 1px; }
.odevy-line__color-row select[aria-invalid="true"] { border-color: #B91C1C; }

.odevy-line__qty {
    grid-area: qty;
    font-size: 1.1rem;
    font-weight: 600;
    white-space: nowrap;
    color: var(--text-heading);
}

.odevy-line__actions {
    grid-area: actions;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 0 20px;
}

/* Otvorená úprava zaberie celý riadok, tlačidlo Odstrániť sa presunie pod ňu */
.odevy-line__edit[open] { flex-basis: 100%; }

.odevy-line__edit summary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    list-style: none;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--accent-text);
    cursor: pointer;
}

.odevy-line__edit summary::-webkit-details-marker { display: none; }
.odevy-line__edit summary:hover { color: var(--dark); }

.odevy-line__form { margin: 6px 0 12px; padding: 20px; border-radius: var(--odevy-radius-sm); background: var(--bg-soft); }

.odevy-link-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    padding: 0;
    border: none;
    background: none;
    font-family: inherit;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--text);
    cursor: pointer;
}

.odevy-link-btn:hover { color: #B91C1C; }

.odevy-cart__clear { margin-top: 10px; text-align: right; }

/* Formulár dopytu vedľa zoznamu — polia pod sebou (úzky stĺpec) */
.odevy-cart-form .form-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
.odevy-cart-form .form-group { margin-bottom: 18px; }

/* ---------- FORMULÁR DOPYTU A PREPÍNAČE ---------- */
.odevy-radios {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
}

/* Prepínač ako čip — pole je priehľadné cez celý čip (klik aj fokus fungujú), vzhľad nesie span */
.odevy-radio { position: relative; display: inline-flex; }

.odevy-radio input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

.odevy-radio span {
    display: inline-block;
    padding: 9px 16px;
    border: 1px solid var(--border-input);
    border-radius: 999px;
    font-size: 0.88rem;
    line-height: 1.4;
    color: var(--text-heading);
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.odevy-radios--sm .odevy-radio span { padding: 8px 14px; font-size: 0.85rem; }
.odevy-radio input:checked + span { border-color: var(--dark); background: var(--dark); color: var(--white); }
.odevy-radio small { font-size: 0.78rem; opacity: 0.85; }
.odevy-radio input[aria-invalid="true"] + span { border-color: #B91C1C; }
.odevy-radio input:focus-visible + span { outline: 2px solid var(--accent-text); outline-offset: 2px; }

.odevy-consent {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 6px;
}

.odevy-consent .odevy-check { margin-top: 3px; }
.odevy-consent label { font-size: 0.88rem; line-height: 1.6; color: var(--text); cursor: pointer; }
.odevy-consent a { color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; }

/* Pasca na roboty — mimo obrazovky (nie display: none, niektoré roboty skryté polia vynechávajú) */
.odevy-hp {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.odevy-inquiry__submit { margin-top: 24px; }
.odevy-inquiry__submit .odevy-help { margin-top: 10px; text-align: center; }

/* Dvojica polí vedľa seba v každej šírke (DIČ | IČ DPH, PSČ | Mesto) — aj v úzkom stĺpci formulára vedľa košíka;
   medzera ako medzi stĺpcami .form-row (768 – 1023 px), aby polia lícovali s riadkami nad a pod */
.odevy-pair {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
}

.odevy-pair--zip { grid-template-columns: 6.5rem minmax(0, 1fr); }

/* Stav doplnenia údajov z registra pri IČO (text dopĺňa js/odevy.js; bez JS prázdny a skrytý) — ikona podľa stavu */
.odevy-reg-status {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-top: 6px;
    font-size: 0.82rem;
    line-height: 1.45;
    color: var(--text-light);
}

.odevy-reg-status:empty { display: none; }

.odevy-reg-status::before {
    flex: none;
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    content: '\f1ad';
}

.odevy-reg-status.is-busy::before { content: '\f110'; animation: odevyRegSpin 1s linear infinite; }
.odevy-reg-status.is-ok { color: #047857; }
.odevy-reg-status.is-ok::before { content: '\f058'; }
.odevy-reg-status.is-warn { color: #92400E; }
.odevy-reg-status.is-warn::before { content: '\f071'; }

@keyframes odevyRegSpin {
    to { transform: rotate(360deg); }
}

/* Pole práve doplnené z registra — krátke zvýraznenie, ktoré pomaly zmizne (trieda is-filled z js/odevy.js) */
.odevy-inquiry input { transition: var(--transition), background-color 1.2s ease; }
.odevy-inquiry input.is-filled { background-color: #ECFDF5; transition: none; }

/* ---------- ODKAZ NA TENTO KOŠÍK ---------- */
.odevy-share {
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid var(--border);
}

.odevy-share .odevy-help { margin-top: 2px; }
.odevy-share .odevy-flash { margin: 12px 0 0; font-size: 0.9rem; }
.odevy-share__create { color: var(--text-heading); }
.odevy-share__create:hover { color: var(--accent-text); }
.odevy-share__create i { color: var(--accent-ui); }

.odevy-share__result { margin-top: 14px; }

.odevy-share__label {
    display: block;
    margin-bottom: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--text-heading);
}

.odevy-share__row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

/* Adresa odkazu — celá sa dá označiť (bez JS jediný spôsob kopírovania) */
.odevy-share__url {
    flex: 1 1 200px;
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid var(--border-input);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg-soft);
    font-family: inherit;
    font-size: 0.85rem;
    color: var(--text-heading);
}

.odevy-share__url:focus-visible { outline: 2px solid var(--accent-text); outline-offset: 2px; }
.odevy-share__copy { flex: none; }
/* Kopírovať len s JS (bez neho ostáva skryté — .btn by atribút hidden prebil) */
.odevy-share__copy[hidden] { display: none; }
/* Výzva na nový odkaz po zmene košíka alebo údajov (namiesto skrytej adresy, js/odevy.js) — odlíšená od pomocného textu */
.odevy-share .odevy-share__stale { margin-top: 12px; color: var(--text-heading); }

/* Stránka voľby pri otvorení odkazu s neprázdnym košíkom (views/share.php) */
.odevy-share-choice__list {
    margin: 4px 0 18px;
    border-top: 1px solid var(--border);
}

.odevy-share-choice__list li {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 9px 0;
    border-bottom: 1px solid var(--border);
    font-size: 0.92rem;
}

.odevy-share-choice__name { min-width: 0; color: var(--text-heading); }
.odevy-share-choice__qty { flex: none; white-space: nowrap; color: var(--text); }

.odevy-share-choice__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 6px;
}

.odevy-share-choice__keep { margin-top: 16px; font-size: 0.9rem; }
.odevy-share-choice__keep a { color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; }

/* ---------- POĎAKOVANIE ---------- */
.odevy-thanks {
    padding: 44px 28px;
    border: 1px solid var(--border);
    border-radius: var(--odevy-radius);
    text-align: center;
}

.odevy-thanks__icon { margin-bottom: 18px; font-size: 2.6rem; color: #047857; }
.odevy-thanks__number { margin-bottom: 14px; font-size: 1.2rem; color: var(--text-heading); }
.odevy-thanks p { margin-bottom: 10px; line-height: 1.7; }
.odevy-thanks a:not(.btn) { color: var(--accent-text); text-decoration: underline; }

.odevy-thanks__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: 28px;
}

/* ---------- STRÁNKOVANIE MODELOV ---------- */
.odevy-pager {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px 18px;
    margin-top: 32px;
}

.odevy-pager__list { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; }

/* Číslo strany — dotyková plocha 44 × 44 px */
.odevy-pager__page {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 0 10px;
    border: 1px solid var(--border-input);
    border-radius: var(--odevy-radius-sm);
    background: var(--bg);
    font-weight: 500;
    color: var(--text-heading);
}

.odevy-pager__page:hover { border-color: var(--dark); }
.odevy-pager__page.is-current { border-color: var(--dark); background: var(--dark); color: var(--white); }

.odevy-pager__step {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--accent-text);
}

.odevy-pager__step:hover { color: var(--dark); }

/* ---------- OZNÁMENIE PO AKCII (js/odevy.js) ----------
   Skryté len priehľadnosťou — v strome prístupnosti ostáva, aby čítačky zmenu textu ohlásili */
.odevy-toast {
    position: fixed;
    left: 50%;
    bottom: 24px;
    z-index: 1100;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 18px;
    width: max-content;
    max-width: calc(100% - 32px);
    padding: 14px 22px;
    border-radius: var(--odevy-radius-sm);
    background: var(--dark);
    color: var(--white);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 20px);
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.odevy-toast.is-visible { opacity: 1; pointer-events: auto; transform: translate(-50%, 0); }
.odevy-toast.is-error { background: #B91C1C; }
.odevy-toast__text { font-size: 0.9rem; line-height: 1.5; }
.odevy-toast__link { font-weight: 500; color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.odevy-toast.is-error .odevy-toast__link { color: var(--white); }

/* Zavrieť — chybové oznámenie samo nezmizne (dotyková plocha 44px) */
.odevy-toast__close {
    min-width: 44px;
    min-height: 44px;
    margin: -10px -14px -10px 0;
    border: none;
    background: none;
    font-size: 1rem;
    color: var(--white);
    cursor: pointer;
}

.odevy-toast__close:hover { color: var(--accent); }
.odevy-toast.is-error .odevy-toast__close:hover { color: var(--white); opacity: 0.8; }

/* ---------- FOKUS A STAVY ---------- */
.odevy a:focus-visible,
.odevy button:focus-visible,
.odevy summary:focus-visible,
.odevy select:focus-visible,
.odevy .odevy-check:focus-visible,
.odevy-bar a:focus-visible,
.odevy-bar summary:focus-visible,
.odevy-bar button:focus-visible {
    outline: 2px solid var(--accent-text);
    outline-offset: 3px;
}

/* Tlačidlo v poli vyhľadávania a čipy majú rámik fokusu vnútri — vonkajší by presahoval cez okraj poľa */
.odevy-bar .odevy-bar__search-btn:focus-visible { outline-offset: -4px; border-radius: 8px; }

/* Na tmavom oznámení oranžová (6,2:1), --accent-text by na --dark nebola vidieť */
.odevy-toast a:focus-visible,
.odevy-toast button:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

/* Odosielanie cez fetch — tlačidlo je dočasne vypnuté (js/odevy.js) */
.odevy button:disabled { opacity: 0.6; cursor: progress; }

/* ---------- OBMEDZENIE POHYBU ----------
   Vitrína bez pohybu: na počítači statická mriežka 3 × 2 kariet, na úzkej obrazovke pás, ktorý sa dá posúvať prstom;
   kópie sád a tlačidlo zastavenia netreba. Tmavý pás sa s lištou webu mení bez prechodu. */
@media (prefers-reduced-motion: reduce) {
    .odevy-card:hover,
    .odevy-showcase__card:hover,
    .odevy-showcase__card:focus-visible { transform: none; }
    .odevy-toast,
    .odevy-menu__toggle i,
    .odevy-band,
    .odevy-showcase__name,
    .odevy-inquiry input { transition: none; }
    .odevy-reg-status.is-busy::before { animation: none; }
    /* Predpona .odevy-showcase zvyšuje váhu nad pravidlá stĺpcov a pásu (aj nad tie v sekcii RESPONSIVE nižšie) */
    .odevy-showcase .odevy-showcase__cols .odevy-showcase__track,
    .odevy-showcase .odevy-showcase__strip .odevy-showcase__track { animation: none; }
    .odevy-showcase__set[data-odevy-copy],
    .odevy-showcase__toggle { display: none; }
    .odevy-showcase__cols { height: auto; -webkit-mask-image: none; mask-image: none; }
    .odevy-showcase__cols .odevy-showcase__item:nth-child(n+3) { display: none; }
    .odevy-showcase .odevy-showcase__strip { overflow-x: auto; overscroll-behavior-x: contain; -webkit-mask-image: none; mask-image: none; }
    /* Statický pás začína a končí v zarovnaní s textom (pás siaha k okrajom okna, kontajner má okraj 30px) */
    .odevy-showcase .odevy-showcase__strip .odevy-showcase__set { padding-left: 30px; padding-right: 30px; }
}

/* Tlač — karty, ktoré sa ešte nezjavili, musia byť na papieri viditeľné */
@media print {
    .odevy-reveal:not(.is-revealed) { opacity: 1; transform: none; }
}

/* ---------- RESPONSIVE ---------- */
/* Pod 1200px: druhy v ponuke po dvoch skupinách v rade */
@media (max-width: 1199px) {
    .odevy-menu__groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .odevy-menu__group--wide { grid-column: auto; }
}

/* Pod 1024px: jeden stĺpec (druh, produkt, košík), panel profilu sa nelepí — tlačidlo je v spodnej lište */
@media (max-width: 1023px) {
    .odevy-hero__inner { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    /* Vitrína ako jeden vodorovný pás pod textom — siaha cez okraje kontajnera (30px) až k okrajom okna;
       pás orezáva svoj obsah, takže stránka do strany nepretečie */
    .odevy-showcase__cols { display: none; }
    .odevy-showcase__strip {
        display: block;
        margin: 0 -30px;
        overflow: hidden;
        -webkit-mask-image: linear-gradient(to right, transparent 0, #000 6%, #000 94%, transparent 100%);
        mask-image: linear-gradient(to right, transparent 0, #000 6%, #000 94%, transparent 100%);
    }
    .odevy-showcase__strip .odevy-showcase__track { flex-direction: row; width: max-content; animation-name: odevyShowcaseLeft; animation-duration: 75s; }
    .odevy-showcase__strip .odevy-showcase__set { flex-direction: row; gap: 12px; padding: 6px 12px 12px 0; }
    .odevy-showcase__strip .odevy-showcase__card { width: 128px; padding: 10px; }
    .odevy-split,
    .odevy-cart-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }
    .odevy-cart__skip { display: inline-block; }
    .odevy-split__side { position: static; max-height: none; overflow: visible; }
    .odevy-split__side .odevy-panel { max-width: 640px; }
    .odevy-cart-form .form-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
    .odevy-product { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .odevy-gallery { position: static; max-width: 520px; }
    .odevy-details { grid-template-columns: minmax(0, 1fr); gap: 32px; }

    .odevy-plan { position: static; }
    .odevy-plan__end { display: none; }
    /* Spodná lišta siaha cez okraje kontajnera (30px) — šírka = šírka okna, nič nepretečie */
    .odevy-plan-bar {
        position: sticky;
        bottom: 0;
        z-index: 30;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin: 0 -30px;
        padding: 12px 30px;
        padding-bottom: calc(12px + env(safe-area-inset-bottom));
        background: var(--bg);
        border-top: 1px solid var(--border);
        box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.08);
    }
    .odevy-plan-bar .odevy-plan__summary { font-size: 0.85rem; }
    .odevy-plan-bar .btn { flex-shrink: 0; padding: 14px 22px; }
}

/* Mobil: lišta webu presne ako na zvyšku webu (logo, Košík a hamburger — style.css), lišta sekcie v dvoch riadkoch.
   Výška lišty webu = padding + riadok s logom (hamburger má 24,5px — pri najužších displejoch je vyšší
   ako zmenšené logo, preto max()). */
@media (max-width: 768px) {
    .odevy-body {
        --odevy-nav-top: calc(40px + max(var(--nav-logo-top), 24.5px));
        --odevy-nav-scrolled: calc(24px + max(var(--nav-logo-scrolled), 24.5px));
        --odevy-bar: 0px;
    }

    /* Lišta sekcie: 1. riadok názov sekcie a ponuky (šírka 100 % vynúti zalomenie), 2. riadok vyhľadávanie na celú
       šírku — pole má na mobile výšku dotykového cieľa 44px */
    .odevy-bar__inner { position: static; flex-wrap: wrap; gap: 6px 8px; padding-top: 6px; padding-bottom: 12px; }
    .odevy-bar__main { position: relative; width: 100%; justify-content: space-between; }
    .odevy-bar__menus { padding-left: 8px; }
    .odevy-menu__toggle { padding: 0 10px; }
    .odevy-bar__sizes { margin-left: 0; padding: 0 10px 0 0; }
    .odevy-bar__sizes:hover { background: none; }
    .odevy-bar__search { flex: 1 1 0; height: 44px; margin-left: 0; }
    .odevy-menu__panel { left: 0; right: 0; padding: 18px 16px; border-radius: 0 0 var(--odevy-radius) var(--odevy-radius); max-height: 70vh; max-height: 70dvh; }
    .odevy-menu__groups { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    .odevy-menu__list { columns: 2; column-gap: 16px; }

    .odevy-head { padding: 16px 0 20px; }
    .odevy-hero { padding: 32px 0 36px; }
    .odevy-section { padding: 44px 0; }
    .odevy-section--first { padding-top: 24px; }
    .odevy-box { padding: 20px; }
    .odevy-cart-form .form-row { grid-template-columns: minmax(0, 1fr); }
    .odevy-specs > div { grid-template-columns: 100px minmax(0, 1fr); }
    .odevy-plan { padding: 14px 16px; box-shadow: none; }
}

/* Karty profilov ako kompaktný riadok (prvá fotka vľavo), karty produktov a druhov po dvoch, mriežka veľkostí
   po štyroch, výber modelu ako vodorovne posúvateľný rad */
@media (max-width: 600px) {
    /* Hlavička stránky: menšie odsadenie, drobnejšie čipy a písmo popisu — popis (1–2 vety) sa zobrazí celý, nič sa
       neoreže; hlavička tak ostane kompaktná a vecné údaje (napr. trieda respirátora) nezmiznú */
    .odevy-head { padding: 12px 0 16px; }
    .odevy-crumbs ol { margin-bottom: 6px; }
    .odevy-head__main { gap: 6px 10px; }
    .odevy-head__meta .odevy-chip { padding: 2px 10px; font-size: 0.75rem; }
    .odevy-head__lead { margin-top: 6px; font-size: 0.92rem; line-height: 1.55; }

    .odevy-cards { gap: 10px; }
    .odevy-card { flex-direction: row; }
    /* Fotka je pevný štvorec v strede stĺpca — výšku karty určuje text, nie pomer strán fotky (karty profilov majú
       rovnakú výšku a lenivo načítaná fotka stránku neposúva) */
    .odevy-card__photos { display: flex; flex: 0 0 92px; align-items: center; background: var(--bg); border-bottom: none; border-right: 1px solid var(--border); }
    .odevy-card__photos .odevy-card__photo { flex: none; width: 100%; aspect-ratio: 1 / 1; }
    .odevy-card__photo:not(:first-child) { display: none; }
    .odevy-card__body { gap: 4px; padding: 12px 14px; }
    /* Ikonu profilu nahrádza fotka */
    .odevy-card__photos + .odevy-card__body .odevy-card__icon { display: none; }
    .odevy-card__title { font-size: 0.98rem; }
    .odevy-card__text { -webkit-line-clamp: 1; line-clamp: 1; font-size: 0.82rem; }
    .odevy-card__meta { font-size: 0.8rem; }

    .odevy-products,
    .odevy-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .odevy-tile__media { aspect-ratio: 4 / 3; }
    .odevy-product-card__media { padding: 10px; }
    .odevy-product-card__body { padding: 2px 12px 12px; }
    /* Popis je na úzkej karte skrytý — názov sa preto ukáže celý (do 5 riadkov), aby sa modely dali rozlíšiť */
    .odevy-product-card__title { font-size: 0.9rem; -webkit-line-clamp: 5; line-clamp: 5; }
    .odevy-product-card__text { display: none; }
    .odevy-tile__media { padding: 10px; }
    .odevy-tile__name { padding: 10px 12px 0; font-size: 0.86rem; }
    .odevy-tile__meta { padding: 2px 12px 12px; }
    .odevy-tile__name:last-child { padding-bottom: 12px; }

    .odevy-sizes__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .odevy-steps { grid-template-columns: minmax(0, 1fr); gap: 12px; }

    .odevy-item__row { grid-template-columns: 20px minmax(0, 1fr); }
    .odevy-item__qty { grid-column: 2; flex-direction: row; flex-wrap: wrap; gap: 0 10px; align-items: baseline; white-space: normal; }
    .odevy-pick { margin-left: 0; }
    .odevy-item__note,
    .odevy-item__hint,
    .odevy-item__more { margin-left: 34px; }
    .odevy-pick__list {
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-auto-columns: 118px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x proximity;
        padding-bottom: 6px;
    }
    .odevy-pick__opt { scroll-snap-align: start; }

    .odevy-team__grid { grid-template-columns: minmax(0, 1fr); }
    .odevy-team__foot .btn { width: 100%; justify-content: center; }

    /* Množstvo a akcie lícujú s textom riadku (za náhľadom), otvorená úprava zaberie celú šírku karty */
    .odevy-line {
        grid-template-columns: 60px minmax(0, 1fr);
        grid-template-areas:
            "media body"
            "media qty"
            ". actions";
        gap: 4px 14px;
    }
    .odevy-line:has(.odevy-line__edit[open]) .odevy-line__actions { grid-column: 1 / -1; }
    .odevy-line__media { width: 60px; height: 60px; }
    .odevy-cart__clear { text-align: left; }
}

@media (max-width: 480px) {
    .odevy-bar__sizes-long { display: none; }
    .odevy-bar__sizes-short { display: inline; }
    .odevy-bar__home { font-size: 0.95rem; gap: 8px; }
    .odevy-menu__toggle { padding: 0 8px; font-size: 0.88rem; }
    .odevy-hero__actions .btn,
    .odevy-narrow .odevy-panel__submit { flex: 1 1 100%; width: 100%; justify-content: center; }
    .odevy-box,
    .odevy-panel { padding: 18px 16px; }
    .odevy-line__form { padding: 14px; }
    .odevy-thanks,
    .odevy-empty { padding: 32px 18px; }
    .odevy-notice { padding: 14px; }
    .odevy-plan-bar .btn { padding: 13px 16px; font-size: 0.75rem; }
}

/* Najužšie displeje (320px): názov sekcie bez ikony, aby sa vedľa neho zmestili obe ponuky */
@media (max-width: 360px) {
    /* Len ikona — text ostáva pre čítačky obrazovky (ako .sr-only) */
    .odevy-bar__sizes-short {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        white-space: nowrap;
    }
    .odevy-bar__sizes i { font-size: 1rem; }
    .odevy-bar__home i { display: none; }
    /* Pri 320 px by „Druhy“ presahovalo textový stĺpec o 16 px do okraja okna — užšie medzery (web 2.15.0) */
    .odevy-bar__main { gap: 8px; }
    .odevy-bar__menus { padding-left: 4px; gap: 0; }
    .odevy-menu__toggle { gap: 6px; padding: 0 5px; }
    /* Rovnaká váha ako pravidlo širokej skupiny (Oblečenie má inak 2 stĺpce a názvy sa lámu do 2–3 riadkov) */
    .odevy-menu__list,
    .odevy-menu__group--wide .odevy-menu__list { columns: 1; }

    /* Výbava pre celý tím: bez náhľadu a s užším poľom — dlhý názov profilu má celú šírku a nepretečie pod pole */
    .odevy-team__row { grid-template-columns: minmax(0, 1fr) auto; }
    .odevy-team__thumb { display: none; }
    .odevy-team__row label { overflow-wrap: anywhere; hyphens: auto; }
    .odevy-team__row .odevy-num { width: 64px; }
}
