/* =============================================================================
   TOPNYZEBRIK.CZ — Hlavní stylesheet
   Verze: 2.0
   Konsolidováno: 2025
   Pořadí načítání: tento soubor se načítá jako jediný hlavní CSS
   -----------------------------------------------------------------------------
   OBSAH:
   1.  Písma (Poppins)
   2.  Typografie & globální elementy
   3.  Hlavička & top-bar (telefon, e-mail, provozní doba)
   4.  Hlavní navigace (barvy, hover, hamburgeru)
   5.  Tlačítka & formulářové prvky
   6.  Systémové příznaky (štítky/flags)
   7.  Produktový výpis — název produktu
   8.  Podkategorie (seo-subcategories + subcategories)
   9.  Filtrační panel (box-filters, filter-section)
  10.  Pořadí filtrů — parametry (topnyzebrik-parametry)
  11.  Produktový detail (pořadí prvků, tabulky)
  12.  Propojení produktů (interconnection)
  13.  Slevový kód (dm-coupon)
  14.  Benefit banner (homepage)
  15.  Mediální dotazy (souhrnné overrides)
   ============================================================================= */


/* =============================================================================
   1. PÍSMA — Poppins pro celý projekt
   ============================================================================= */

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.navigation-in a,
.price strong,
.products-block.products .p .price span,
.btn:not(.cart-count),
a.btn:not(.cart-count),
.fav-cat li a,
.user-action-tabs li a,
.cart-widget .popup-widget-inner::before,
.cart-widget-product-name a,
.quantity .increase::before,
.quantity .decrease::before,
.cart-widget-product > span,
.search-whisperer ul::before,
.search-whisperer .p-info span,
.search-whisperer .price,
.search-box::before,
.search-whisperer-documents a,
.box-bg-variant .categories a,
.box-filters::before,
.param-filter-top::before,
.subcategories.with-image li a .text,
.name,
.category-header label,
.pagination > a,
.pagination > strong,
.search-results-groups #search-group-categories .search-results-group-list ul li a,
.availability-value,
.price-final,
.p-gifts-heading,
.p-gift-name,
.shp-tabs-holder ul.shp-tabs li a,
.all-param span,
#productsAlternative::before,
.rate-average,
.vote-form::before,
#variants::before,
.var-dostupnost,
.variant-name,
.vote-title,
ol.cart-header li a,
ol.cart-header li strong,
.cart-table tr td.p-name a,
.price-wrapper,
a.cart-related-name,
.empty-cart-boxes ul li a,
.payment-info,
.payment-shipping-price,
.cart-item-name,
.cart-item-price,
.order-summary-item.helper,
.recapitulation-single,
.reca-number,
.id--15 .cart-table .p-name,
.id--15 .cart-table .p-price,
#register-form > fieldset .form-group:not(.consents) label,
a.login-btn.facebook,
a.login-btn.google,
a.login-btn.seznam,
ul.manufacturers ul li,
.search-whisperer-empty,
.menu-helper > ul > li a,
.filtrovat,
.tab-mobil,
.free-gift-name,
.id--9 .free-product-gifts-wrapper::before,
.vote-form > form::before,
#footer .contact-box::before {
    font-family: 'Poppins', sans-serif !important;
}

.external-fonts-loaded,
.blank-mode,
body,
html,
.external-fonts-loaded body,
body.blank-mode,
.category-appendix,
.empty-content-404 h1,
.dropdown-menu > li > a,
.header-top .btn.cart-count .cart-price,
.news-item-widget h5,
.header-top .oblibeneBtn em,
.navigation-buttons > a[data-target="cart"] i {
    font-family: 'Poppins', sans-serif !important;
}


/* =============================================================================
   2. TYPOGRAFIE & GLOBÁLNÍ ELEMENTY
   ============================================================================= */

h1, .h1 {
    font-size: 2.3em;
}

@media only screen and (max-width: 800px) {
    h2, .h2 {
        font-size: 35px !important;
    }
}

/* Zaoblené rohy tlačítek a prvků */
.btn:not(.cart-count),
.compact-form .form-control,
.pagination > a,
.pagination > strong,
a.login-btn {
    border-radius: 30px;
}

/* Checkbox — ikona zaškrtnutí */
input[type="checkbox"] + label[for="add-note"]::after {
    width: 22px;
    height: 22px;
    content: "\e919";
    font-family: ikony;
    color: #fff;
    left: 0;
    font-size: 10px;
    text-align: center;
    line-height: 22px;
    background-color: var(--color-primary);
}


/* =============================================================================
   3. HLAVIČKA & TOP-BAR
   ============================================================================= */

/* Telefon + e-mail — velikost a váha */
@media screen and (min-width: 768px) {
    .project-email,
    .project-phone {
        font-weight: 400 !important;
        font-size: 14px !important;
    }
}

/* Provozní doba za telefonním číslem */
@media screen and (min-width: 768px) {
    .top-navigation-bar .project-phone::after {
        content: " (Po - Pá 8:00 - 17:00)" !important;
    }
}

@media screen and (min-width: 992px) {
    .top-navigation-bar .project-phone::after {
        color: #A3A3A3;
        font-size: 13px;
        font-weight: 400;
        margin-left: 5px;
        display: inline-block;
    }
}

/* E-mail v hlavičce — desktop */
@media screen and (min-width: 1200px) {
    .top-navigation-bar .project-email {
        display: inline-block;
        font-size: 16px;
        font-weight: bold;
        margin-left: 24px;
        color: var(--color-primary);
    }

    a.project-email::before {
        content: '\e910';
        font-size: 16px;
    }
}

/* E-mail v hlavičce — mobil (ikona) */
@media screen and (min-width: 360px) and (max-width: 767px) {
    .top-navigation-contacts {
        display: block !important;
    }

    .top-navigation-contacts .project-phone {
        display: none !important;
    }

    .top-navigation-contacts .project-email {
        display: block !important;
        position: absolute;
        right: 164px;
        top: 15px;
        color: #A3A3AF;
    }

    a.project-email::before {
        content: '\e910';
    }

    .top-navigation-contacts .project-email span {
        display: none;
    }
}


/* =============================================================================
   4. HLAVNÍ NAVIGACE
   ============================================================================= */

/* Červené pozadí lišty pod logem */
@media screen and (min-width: 768px) {
    #header::after {
        background-color: #da2935;
    }

    .navigation-in {
        background-color: transparent;
    }

    /* Bílý text v menu */
    .navigation-in > ul > li > a,
    .submenu-arrow::after {
        color: #fff;
    }

    .menu-helper::after {
        color: #fff;
    }

    /* Hover — tmavší červená */
    .navigation-in a:hover {
        background-color: #aa1721 !important;
    }

    /* Hover submenu — bílé pozadí */
    .menu-level-2 a:hover {
        background-color: #ffffff !important;
    }
}

/* Větší padding položek menu na wide desktopech */
@media screen and (min-width: 1200px) {
    .navigation-in > ul > li > a {
        padding: 25px 30px;
    }
}

/* Výška rozbalených sloupců mega-menu */
@media (min-width: 768px) {
    .navigation-in > ul > li.ext > ul > li {
        min-height: 130px;
    }

    .navigation-in li.has-third-level {
        min-height: 130px;
    }

    .navigation-in > ul > li.ext > ul > li > div > ul {
        max-height: 160px;
        min-height: 100px;
    }
}


/* =============================================================================
   5. SYSTÉMOVÉ PŘÍZNAKY (ŠTÍTKY / FLAGS)
   ============================================================================= */

.flag.flag-action,
.flag.flag-tip,
.flag.flag-new,
.flag.flag-gift,
.flag.flag-discount,
.flag.flag-freeshipping {
    background-color: #ff7925;
}


/* =============================================================================
   6. PRODUKTOVÝ VÝPIS — název produktu
   ============================================================================= */

.products-block.products .p .name {
    height: 80px;
}


/* =============================================================================
   7. PODKATEGORIE — seo-subcategories (SEO sekce v textu kategorie)
   ============================================================================= */

.seo-subcategories {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 -6px 36px -6px;
    padding: 26px 0;
    position: relative;
}

.seo-subcategories li {
    list-style: none;
    flex: 0 0 auto;
    padding: 6px;
}

.seo-subcategories li a {
    box-shadow: none;
    position: relative;
    display: flex;
    align-items: center;
    height: 88px;
    padding: 12px;
    font-weight: 500;
    color: #24242E;
    border: 1px solid #e4e4e4;
    text-decoration: none !important;
}

.seo-subcategories li a:hover {
    border-color: #00a8ee !important;
}

.seo-subcategories.with-image li a {
    display: flex;
    align-items: center;
}

.seo-subcategories.with-image li a .image {
    text-align: center;
}

.seo-subcategories.with-image li a .text {
    padding-left: 5px;
    flex-grow: 0;
    text-align: left;
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
}

.seo-subcategories li a .text {
    max-height: 62px;
    overflow: hidden;
    line-height: 20px;
    font-size: 14px;
    font-weight: bold;
}

@media (min-width: 768px) {
    .seo-subcategories li a {
        height: 70px !important;
    }

    .seo-subcategories.with-image li a .image {
        width: 55px !important;
    }

    .seo-subcategories.with-image li a .text {
        width: auto !important;
    }
}

@media (max-width: 768px) {
    .seo-subcategories.with-image li a .image {
        width: 30% !important;
    }

    .seo-subcategories li {
        padding: 4px;
    }

    .seo-subcategories li a {
        height: 73px;
    }
}

/* Přepis velikosti textu v SEO podkategoriích (kategorie-stránka) */
html .type-category .seo-subcategories li a .text {
    font-size: 11.9px;
    line-height: 1.3em;
    font-weight: 500 !important;
}


/* =============================================================================
   8. PODKATEGORIE — subcategories (systémový widget)
   ============================================================================= */

.subcategories::before,
.subcategories::after {
    height: 0px !important;
}

/* Desktop — výška a rozměry obrázku */
@media (min-width: 768px) {
    .subcategories li a {
        height: 70px !important;
    }

    .subcategories.with-image li a .image {
        width: 55px !important;
    }

    .subcategories.with-image li a .image img {
        max-height: 45px !important;
    }

    .subcategories.with-image li a .text {
        width: auto !important;
    }
}

/* Mobil — dvě položky vedle sebe */
@media (max-width: 767px) {
    .subcategories li {
        width: 50% !important;
    }

    .subcategories.with-image li a {
        width: 100%;
    }

    .subcategories.with-image li a .image {
        width: 30% !important;
    }

    .subcategories.with-image li a .text {
        width: 70% !important;
    }
}

/* Zvýrazněná podkategorie (custom třída .highlitedsub) */
.highlitedsub a {
    background: #ffe9eb;
}

.highlitedsub a:hover {
    background: #ffd8db;
}

/* Logo značky nad podkategorií */
.imageznacka {
    width: 100%;
    text-align: center;
}

.imageznacka img {
    max-height: 30px !important;
}

/* Výpis podkategorií v příspěvcích (blog/post) */
.type-post .subcategories.with-image li a {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 0, 0, 0.07);
    padding-right: 0;
}

.type-post .subcategories.with-image li a .text {
    font-size: 85%;
    line-height: 1.3em;
    color: #000 !important;
    padding-top: 30px;
    width: 100% !important;
}

.type-post .subcategories .text {
    padding-top: 25px;
}

.type-post .subcategories li a:after,
.type-post .subcategories li a:before {
    display: none;
}


/* =============================================================================
   9. FILTRAČNÍ PANEL
   ============================================================================= */

/* Zrušení výchozích pozadí a rámečků obálky */
html .box-filters {
    background-color: transparent !important;
    border: 0 solid #E4E4E4 !important;
}

.filter-sections {
    background-color: unset !important;
}

/* Každá filtrační sekce jako "karta" */
.type-category #filters .param-filter-top form,
.type-category .filter-section form {
    padding: 15px;
    margin-bottom: 20px !important;
    background: #F6F6F6;
    border-radius: 5px;
    border: 1px solid #E4E4E4 !important;
    padding-bottom: 0px !important;
}

.filter-section {
    padding: 0px !important;
    border-top: 0px !important;
}

/* Hover na položce filtru — bez přebarvení pozadí */
.filter-section form > fieldset > div:not(.advanced-filters-wrapper):hover {
    background-color: transparent !important;
}

/* Stockový filtr — bez rámečku */
.type-category #filters .param-filter-top form[action="/action/ProductsListing/setStockFilter/"] {
    border-width: 0px !important;
    background: transparent !important;
    margin: 0px !important;
}

/* Doubledot filtr — opravy odsazení labelů */
.filter-section form[action="/action/ProductsListing/setStockFilter/"] fieldset div label,
.filter-section form[action="/action/ProductsListing/setDoubledotFilter/"] fieldset div:first-of-type label {
    margin: 0 !important;
}

.filter-section form[action="/action/ProductsListing/setDoubledotFilter/"] {
    padding-top: 0px !important;
}

/* První sekce bez horního paddingu */
.filter-section form:first-of-type {
    padding-top: 0px !important;
}

/* Prázdné formuláře bez rámečku */
.type-category .filter-section form:not(:has(div)) {
    border: none !important;
}

/* Formuláře s disabled vstupy — průhledné */
.type-category #filters .param-filter-top form,
.type-category .filter-section form:has(input[disabled]) {
    border-color: transparent !important;
    background: transparent !important;
}

/* Odsazení labelů uvnitř sekce */
.filter-section fieldset div:first-of-type label {
    margin-top: 15px;
}

.filter-section fieldset div:last-of-type label {
    margin-bottom: 15px;
}

/* Skrytí disabled (nedostupných) možností filtru */
.filter-section input[type="checkbox"]:disabled + label,
.filter-section input[type="radio"]:disabled + label {
    display: none;
}

/* Sloučení filtrů do flex sloupce (skryje výrobce v hover widgetu) */
#category-filter-hover #manufacturer-filter {
    display: none;
}

#category-filter-hover {
    display: flex !important;
    flex-direction: column !important;
}

/* Slider pro parametry — oprava margin */
.slider-wrapper.dkLab__slider-parameter {
    margin: unset !important;
}

.filters-wrapper > .filters > .slider-wrapper {
    display: none;
}

/* Zobrazení „Více / Méně" u filtračních hodnot */
.more-param:not(.rozbaleno) form fieldset div:nth-child(n+6) {
    display: none;
}

.more-param-link::after {
    content: " více";
}

.rozbaleno .more-param-link::after {
    content: " méně";
}

.more-param-link {
    font-size: 13px;
    color: var(--color-primary);
    margin-top: 12px;
    display: inline-block;
    text-decoration: underline;
    cursor: pointer;
    margin-bottom: 15px;
}

.more-param-link:hover {
    text-decoration: none;
}


/* =============================================================================
   10. POŘADÍ FILTRŮ — globální parametry
   ============================================================================= */

/* Cena s DPH */
.filter-section-parametric-id-221  { order: -101; }

/* Značka */
.filter-section-parametric-id-65   { order: -100; }

/* Šířka */
.filter-section-parametric-id-20   { order: -99; }

/* Příslušenství (override šířky — stejná priorita) */
.filter-section-parametric-id-104  { order: -99; }

/* Výška */
.filter-section-parametric-id-17   { order: -98; }

/* Výkon */
.filter-section-parametric-id-41   { order: -97; }

/* Barva */
.filter-section-parametric-id-38   { order: -96; }

/* Série */
.filter-section-parametric-id-62   { order: -95; }

/* Možnost vytápění */
.filter-section-parametric-id-56   { order: -94; }

/* Typ připojení */
.filter-section-parametric-id-293  { order: -93; }

/* Typ středového připojení */
.filter-section-parametric-id-200  { order: -92; }

/* Tvar */
.filter-section-parametric-id-23   { order: -91; }

/* Styl */
.filter-section-parametric-id-194  { order: -90; }

/* Výbava */
.filter-section-parametric-id-68   { order: -89; }

/* Materiál */
.filter-section-parametric-id-35   { order: -88; }

/* Místo určení */
.filter-section-parametric-id-53   { order: -87; }

/* Instalace */
.filter-section-parametric-id-287  { order: -86; }

/* Produkt */
.filter-section-parametric-id-95   { order: -85; }

/* Rozměr */
.filter-section-parametric-id-359  { order: -84; }


/* =============================================================================
   10a. POŘADÍ FILTRŮ — Topné tyče (přepis pro kategorii)
   ============================================================================= */

body[class*="in-topne-tyce"] .filter-section-parametric-id-485 { order: -96; }
body[class*="in-topne-tyce"] .filter-section-parametric-id-68  { order: -95; }
body[class*="in-topne-tyce"] .filter-section-parametric-id-23  { order: -94; }
body[class*="in-topne-tyce"] .filter-section-parametric-id-62  { order: -93; }


/* =============================================================================
   10b. POŘADÍ FILTRŮ — Topné žebříky + koupelnové radiátory
   ============================================================================= */

:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-221 { order: -101; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-65  { order: -100; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-20  { order: -99; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-17  { order: -98; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-41  { order: -97; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-59  { order: -96; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-38  { order: -95; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-62  { order: -94; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-56  { order: -93; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-293 { order: -92; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-200 { order: -91; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-23  { order: -90; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-194 { order: -89; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-68  { order: -88; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-35  { order: -87; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-53  { order: -86; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-287 { order: -85; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-95  { order: -84; }
:is(body[class*="-zebriky"], body[class*="in-koupelnove-radiatory"]) .filter-section-parametric-id-359 { order: -83; }


/* =============================================================================
   11. PRODUKTOVÝ DETAIL
   ============================================================================= */

/* Pořadí bloků v detailu */
#content .p-detail {
    display: flex;
    flex-direction: column;
}

#content .p-detail #related               { order: 31 !important; }
#content .p-detail .p-detail-tabs-wrapper { order: 32 !important; }
#content .p-detail #productsAlternative   { order: 33 !important; }

/* Tabulka v rozšířeném popisu — zebra řádky */
.type-detail .extended-description table tr:nth-child(odd) {
    background: #fbf9f9;
}

/* Zobrazení všech řádků tabulky i v sbalené verzi */
.type-detail .extended-description:not(.otevreno) table tr:nth-child(n+9) {
    display: table-row !important;
}

/* Parametry — skryje blok "Všechny parametry" (duplikát záložky) */
.type-detail .all-param {
    display: none !important;
}


/* =============================================================================
   12. PROPOJENÍ PRODUKTŮ (interconnection)
   ============================================================================= */

.c-product-interconnection-detail-params {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
}

.c-product-interconnection-detail-params.is-template--Classic
.c-product-interconnection-detail-params__type {
    max-width: 100%;
    line-height: 1;
    color: #000;
    font-weight: 700;
    font-size: 14px;
}

/* Výběrová čísla — šedé pozadí, bez podtržení */
.c-product-interconnection-detail-params__products.is-type--numbers.is-display--box
span[class^=item-type] {
    background-color: #F1F1F1 !important;
    text-decoration: none !important;
}

/* Bez podtržení odkazů */
.c-product-interconnection-detail-params__products a {
    text-decoration: none !important;
}

/* Hover — černý rámeček */
.c-product-interconnection-detail-params__products a:hover span[class^=item-type] {
    border-color: #000;
}

/* Aktivní varianta — zelený rámeček */
.c-product-interconnection-detail-params__products.is-type--numbers.is-display--box
a.is-current span[class^=item-type] {
    box-shadow: none;
    border-color: #008F1B;
}

.c-product-interconnection-detail-params__products {
    gap: 20px;
}

/* Oddělení skupin interconnection */
.c-product-interconnection-detail-params + .c-product-interconnection-detail-params {
    margin-top: 20px;
}

/* Obrázková varianta */
.c-product-interconnection-detail-params__products.is-type--photos .item-type-img {
    box-sizing: content-box;
    background-size: contain;
    background-position: center;
    border-color: #a3a3a3;
    border-radius: 15px;
    margin: 0;
    width: 84px;
    height: 84px;
}

.c-product-interconnection-detail-params__products.is-type--photos {
    gap: 8px;
}


/* =============================================================================
   13. SLEVOVÝ KÓD (dm-coupon)
   ============================================================================= */

.dm-coupon-div {
    border: dashed 1px #d53546 !important;
    border-radius: 0px !important;
    background-color: #fff5ee !important;
    color: #000000 !important;
    padding: 12px !important;
    font-size: 16px !important;
}

.dm-coupon-div span {
    color: #d53546 !important;
}

.dm-coupon-div:before {
    background-color: #f3782b !important;
    color: #ffffff !important;
    font-size: 16px !important;
}


/* =============================================================================
   14. BENEFIT BANNER (homepage)
   ============================================================================= */

.type-index .benefitBanner {
    border-bottom: none !important;
    margin-top: 10px;
}

.position--benefitHomepage {
    margin-bottom: 0px !important;
    padding-bottom: 0px !important;
}


/* =============================================================================
   15. MEDIÁLNÍ DOTAZY — souhrnné overrides
   (zde doplňujte globální responsivní úpravy, které se netýkají konkrétní sekce)
   ============================================================================= */

/* Příklad struktury pro budoucí doplnění:

@media (max-width: 1599px) and (min-width: 992px) {}
@media (max-width: 1439px) and (min-width: 1200px) {}
@media (max-width: 1199px) and (min-width: 992px) {}
@media (max-width: 991px) {}
@media (max-width: 767px) {}
@media (max-width: 499px) {}

*/
