/* --- SHAMAN MODERN BADGE (ODZNÁČEK RECENZÍ) --- */
.shaman-modern-badge {
    position: fixed;
    bottom: 60px;
    left: 30px;
    background: #ffffff;
    border-radius: 50px;
    padding: 8px 20px 8px 10px;
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
    text-decoration: none !important;
    color: #111111;
    font-family: system-ui, -apple-system, sans-serif;
    z-index: 9999;
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.3s ease;
}
.shaman-modern-badge:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 15px 30px -5px rgba(229, 139, 34, 0.2);
}
.shaman-avatars { display: flex; }
.shaman-avatar {
    width: 32px; height: 32px; border-radius: 50%; background: #e58b22; color: #ffffff;
    display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 800;
    border: 2px solid #ffffff; margin-left: -10px; box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.shaman-avatar:first-child { margin-left: 0; z-index: 3; }
.shaman-avatar:nth-child(2) { background: #111111; z-index: 2; }
.shaman-avatar:nth-child(3) { background: #f0a54b; z-index: 1; }
.shaman-badge-content { display: flex; flex-direction: column; justify-content: center; }
.shaman-badge-top { display: flex; align-items: center; gap: 5px; }
.shaman-star-svg { width: 16px; height: 16px; color: #e58b22; fill: currentColor; }
.shaman-badge-score { font-weight: 900; font-size: 15px; line-height: 1; }
.shaman-badge-text { font-size: 12px; color: #6b7280; margin-top: 3px; font-weight: 500; }

@media (max-width: 600px) {
    .shaman-modern-badge {
        bottom: 30px; left: 15px; flex-direction: column; padding: 10px 12px; gap: 4px; border-radius: 16px; align-items: center; text-align: center;
    }
    .shaman-avatars { margin-bottom: 2px; }
    .shaman-avatar { width: 26px; height: 26px; font-size: 9px; margin-left: -8px; }
    .shaman-badge-content { align-items: center; }
    .shaman-badge-top { justify-content: center; gap: 4px; }
    .shaman-badge-score { font-size: 14px; }
    .shaman-badge-text { font-size: 10px; margin-top: 2px; }
    .shaman-star-svg { width: 14px; height: 14px; }
}

/* --- ČISTÝ KOŠÍK A MĚNY --- */
table.cart-table td.p-availability, table.cart-table td.p-name .show-related, table.cart-table td.p-price { display: none !important; }
table.cart-table td.p-name .main-link-variant { font-size: 13px !important; color: #777777 !important; margin-top: 5px !important; display: block !important; }
table.cart-table td.p-name .main-link { font-size: 15px !important; line-height: 1.3 !important; }
body.in-krok-1 .order-summary, body.in-krok-1 #summary-box { display: none !important; }

/* --- 3 BANNERY VEDLE SEBE --- */
.next-to-carousel-banners { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 20px !important; width: 100% !important; margin-top: 20px !important; }
.next-to-carousel-banners .banner-wrapper, .next-to-carousel-banners .banner-wrapper a { display: block !important; width: 100% !important; margin: 0 !important; }
.next-to-carousel-banners .banner-wrapper img { width: 100% !important; height: auto !important; max-width: 100% !important; display: block !important; object-fit: cover !important; }
@media (max-width: 991px) { .next-to-carousel-banners { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 575px) { .next-to-carousel-banners { grid-template-columns: 1fr !important; } }

/* --- ROZŠÍŘENÍ PRO VELKÉ MONITORY --- */
@media (min-width: 1200px) { .container { width: 90% !important; max-width: 1650px !important; } }

/* --- HOMEPAGE PÁSY PRODUKTŮ A ŠIPKY --- */
.homepage-tabs-wrapper .shp-tabs-row { display: none !important; }
.homepage-tabs-wrapper .tab-content > .tab-pane { display: block !important; opacity: 1 !important; visibility: visible !important; height: auto !important; margin-bottom: 50px !important; position: relative !important; }
.homepage-tabs-wrapper .homepage-group-title { display: block !important; font-size: 26px !important; font-weight: 700 !important; margin-bottom: 20px !important; border-bottom: 2px solid #eaeaea; padding-bottom: 10px; color: #333; }
.homepage-tabs-wrapper .products-block { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto !important; gap: 20px !important; padding-bottom: 10px !important; -webkit-overflow-scrolling: touch; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none !important; -ms-overflow-style: none !important; }
.homepage-tabs-wrapper .products-block::-webkit-scrollbar { display: none !important; }
.homepage-tabs-wrapper .products-block .product { flex: 0 0 17.5% !important; width: 17.5% !important; max-width: none !important; margin: 0 !important; scroll-snap-align: start; }
.homepage-tabs-wrapper .products-block:before, .homepage-tabs-wrapper .products-block:after { display: none !important; }
.shaman-arrow { position: absolute; top: 55%; transform: translateY(-50%); width: 45px; height: 45px; background: #111; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 10; font-size: 22px; font-weight: bold; box-shadow: 0 4px 10px rgba(0,0,0,.3); border: none; transition: all 0.3s ease; user-select: none; opacity: 0.8; }
.shaman-arrow:hover { background: #ff6b6b; opacity: 1; transform: translateY(-50%) scale(1.1); }
.shaman-arrow.left-arrow { left: -20px; }
.shaman-arrow.right-arrow { right: -20px; }
.homepage-tabs-wrapper .products-block .product .p, .homepage-tabs-wrapper .products-block .product .p-in { border: none !important; box-shadow: none !important; background: transparent !important; }
.homepage-tabs-wrapper .products-block .product .p:hover, .homepage-tabs-wrapper .products-block .product .p-in:hover { border: none !important; box-shadow: none !important; }
.homepage-texts-wrapper .top-products-wrapper { display: none !important; }
body.in-index .banners-row { margin-top: 30px !important; }

/* --- GLOBÁLNÍ MOBILNÍ OPTIMALIZACE (DO 768PX) --- */
@media (max-width: 768px) {
    .add-to-cart-button, .btn-cart { padding: 15px 20px !important; font-size: 18px !important; width: 100% !important; border-radius: 8px !important; }
    .product-name { font-size: 16px !important; }
    body { font-size: 15px !important; line-height: 1.5 !important; }
    .footer-bottom, .some-annoying-banner { display: none !important; }
    #search .form-control { height: 48px !important; font-size: 16px !important; border-radius: 8px !important; border: 1px solid #ccc !important; }
    #search .btn { height: 48px !important; border-radius: 0 8px 8px 0 !important; }
    .subcategories .sub-category { width: 48% !important; float: left !important; margin: 1% !important; background: #fcfcfc !important; border-radius: 8px !important; padding: 10px 5px !important; box-shadow: 0 2px 5px rgba(0,0,0,0.08) !important; border: 1px solid #eee !important; }
    .subcategories .sub-category h3 { font-size: 13px !important; margin-top: 8px !important; line-height: 1.2 !important; }
    .subcategories::after { content: ""; display: table; clear: both; }

/* ==========================================================================
   SUPER-MOBILNÍ UPGRADE (Aplikuje se pouze na mobilech do 768px)
   ========================================================================== */
@media (max-width: 768px) {

    /* 1. EFEKT MOBILNÍ APLIKACE (Zaoblení a stíny produktových karet) */
    .products-block .product, .product-layout-grid .product {
        background: #ffffff !important;
        border-radius: 12px !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.05) !important;
        padding: 10px !important;
        border: 1px solid #f0f0f0 !important;
    }

    /* Odsazení a vyčištění textu u produktů, aby se nepřekrýval */
    .products-block .product .name, .product-layout-grid .product .name {
        font-weight: 600 !important;
        line-height: 1.3 !important;
        min-height: 40px;
        margin-bottom: 8px !important;
    }

    /* 2. RYCHLEJŠÍ NÁKUP (Zvýraznění ceny a zjednodušení košíku) */
    .products-block .price-final strong, .product-layout-grid .price-final strong {
        font-size: 18px !important;
        color: #111111 !important;
    }
    
    /* Větší mezery mezi produkty v mobilním výpisu, ať web "dýchá" */
    .products-block, .product-layout-grid {
        gap: 15px !important;
        padding: 5px !important;
    }

    /* 3. VYČIŠTĚNÍ MOBILNÍHO MENU a HLAVIČKY */
    /* Zpřehlednění horní lišty s logem, aby nebyla zbytečně obří */
    #header {
        padding-top: 5px !important;
        padding-bottom: 5px !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important;
    }
    
    #header .site-name img {
        max-height: 40px !important; /* Zmenší logo na mobilu, aby nezabíralo půl obrazovky */
    }

    /* 4. MODERNÍ PLOVOUCÍ TLAČÍTKA (Inputs & Formuláře) */
    /* Na mobilech se často špatně trefuje do políček, tak je zvětšíme pro palec */
    input[type="text"], input[type="search"], input[type="email"], select {
        height: 45px !important;
        font-size: 16px !important; /* Brání iOS zařízením v automatickém přibližování obrazovky při kliknutí */
        border-radius: 8px !important;
    }

    /* 5. SKRYTÍ VIZUÁLNÍHO BALASTU NA MOBILU */
    /* Věci, které na desktopu vypadají dobře, ale na mobilu jen nutí lidi nekonečně scrollovat */
    .index-content-wrapper .banners-content.body-banners img {
        border-radius: 12px !important; /* Udělá hezké zaoblené rohy u vašich bannerů */

/* ==========================================================================
   PAS KATEGORIÍ NA MOBILNÍ ÚVODNÍ STRÁNCE
   ========================================================================== */
@media (max-width: 768px) {
    /* 1. Zviditelníme schovaný postranní panel pouze na úvodce a dáme ho nahoru */
    body.in-index .sidebar-left {
        display: block !important;
        float: none !important;
        width: 100% !important;
        margin: 15px 0 5px 0 !important;
        padding: 0 !important;
    }

    /* Skryjeme ostatní boxy v panelu (Top produkty, hodnocení), chceme jen kategorie */
    body.in-index .sidebar-left .box:not(.box-categories) {
        display: none !important;
    }

    /* Vyčistíme Shoptet design rámečku kolem kategorií */
    body.in-index .box-categories {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }

    /* Skryjeme nadpis "Kategorie", protože pás mluví sám za sebe */
    body.in-index .box-categories .pageElement__heading {
        display: none !important;
    }

    /* 2. VYTVOŘENÍ POSUVNÉHO PÁSU (FLEXBOX) */
    body.in-index #categories {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        gap: 8px !important;
        padding: 5px 15px 15px 15px !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        
        /* Skryjeme ošklivou posuvnou lištu */
        scrollbar-width: none !important;
    }
    body.in-index #categories::-webkit-scrollbar {
        display: none !important;
    }

    /* 3. STYL JEDNOTLIVÝCH TLAČÍTEK (PILLS) */
    body.in-index #categories .categories {
        flex: 0 0 auto !important; /* Zabrání smrštění tlačítek */
        margin: 0 !important;
        background: #0b3c5d !important; /* Vaše tmavě modrá Shaman barva */
        border-radius: 25px !important; /* Kulaté rohy tlačítek */
        padding: 8px 18px !important;
        border: none !important;
        box-shadow: 0 4px 10px rgba(11, 60, 93, 0.15) !important;
        scroll-snap-align: start;
    }

    /* Zvýrazníme hlavní tahák "VÍCE ZA MÉNĚ" do vaší zelené barvy */
    body.in-index #categories #cat-1326 {
        background: #01b704 !important; /* Shaman zelená */
        box-shadow: 0 4px 10px rgba(1, 183, 4, 0.25) !important;
    }

    /* Úprava textu uvnitř tlačítek */
    body.in-index #categories .categories .topic a {
        color: #ffffff !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        white-space: nowrap !important; /* Zabrání zalomení textu na dva řádky */
        display: block !important;
        padding: 0 !important;
        letter-spacing: 0.5px;
    }

    /* Skryjeme šipky rozbalování podkategorií, chceme jen čisté prokliky */
    body.in-index #categories .cat-trigger {
        display: none !important;