/* ======================================== */
/* CSS pro skrytí původního Shoptet záhlaví */
/* ======================================== */
body > .overall-wrapper > header#header,
html body header#header {
  display: none !important; visibility: hidden !important; opacity: 0 !important;
  height: 0 !important; min-height: 0 !important; overflow: hidden !important;
  padding: 0 !important; margin: 0 !important; border: none !important;
  line-height: 0 !important; font-size: 0 !important; position: absolute !important;
  width: 0 !important;
}

/* ========================================================== */
/* CSS pro novou prémiovou 'Cleanwave' HLAVIČKU (s prefixy)   */
/* ========================================================== */
:root {
    /* Naše proměnné */
    --cw-bg: rgba(255, 255, 255, 0.88); /* Pozadí hlavičky s lehkou průhledností */
    --cw-primary: #00bcd4; --cw-secondary: #0097a7;
    --cw-accent-light: rgba(224, 247, 250, 0.7); --cw-accent-medium: rgba(178, 235, 242, 0.6);
    --cw-accent-dark: rgba(128, 222, 234, 0.8); --cw-text-dark: #004d40; --cw-text-light: #546e7a;
    --cw-border: rgba(0, 188, 212, 0.18);
    --cw-shadow: rgba(0, 151, 167, 0.12);
    --cw-glow: rgba(0, 188, 212, 0.35); --cw-glass-blur: 6px;
    --header-z-index: 1200; --transition-speed-fast: 0.2s; --transition-speed-normal: 0.3s;
    --transition-timing-smooth: cubic-bezier(0.4, 0, 0.2, 1); --transition-timing-elastic: cubic-bezier(0.68, -0.55, 0.27, 1.55);
    --search-input-width: 450px;
    --font-primary: 'Lato', sans-serif; --font-secondary: 'Poppins', sans-serif;
    --top-bar-height: 30px;
    --header-main-padding-y: 15px;
    --header-nav-padding-y: 10px;
    /* Proměnná pro padding navigačního řádku */
    --header-nav-padding-x: 40px;
    --logo-height-normal: 50px;
    --logo-height-scrolled: 40px;
    --nav-link-padding-y: 12px;
    --action-button-padding-y: 10px;
    --nav-dropdown-min-width: 220px;
    --nav-dropdown-padding: 10px 0;
    --nav-dropdown-item-padding: 8px 20px;
    --nav-dropdown-font-size: 0.9em;
    --nav-dropdown-transition-duration: 0.25s;
    --user-dropdown-transition-duration: 0.2s;
     /* Proměnná pro bílou barvu */
    --cw-white: #ffffff;
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font-family: var(--font-primary); background-color: #f8fafa; }

/* --- Celý Kontejner Záhlaví --- */
#cw-header { /* Prefix */
  background-color: var(--cw-bg);
  /* backdrop-filter: blur(var(--cw-glass-blur)); */ /* Stále zakomentováno pro testování */
  /* -webkit-backdrop-filter: blur(var(--cw-glass-blur)); */
  border-bottom: 1px solid var(--cw-border);
  box-shadow: 0 4px 15px var(--cw-shadow);
  position: sticky; top: 0; left: 0; width: 100%;
  z-index: var(--header-z-index);
  transition: box-shadow var(--transition-speed-normal) var(--transition-timing-smooth),
              background-color var(--transition-speed-normal) var(--transition-timing-smooth);
  padding: 0;
  display: block;
  visibility: visible; opacity: 1; height: auto; overflow: visible;
}
#cw-header::before { /* Prefix */
    content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background-image: radial-gradient(circle at 10% 10%, var(--cw-accent-light) 1px, transparent 1px),
                      radial-gradient(circle at 80% 90%, var(--cw-accent-medium) 1px, transparent 1px),
                      radial-gradient(circle at 30% 70%, var(--cw-accent-dark) 1px, transparent 1px);
    background-size: 100px 100px, 150px 150px, 80px 80px; opacity: 0;
    animation: subtle-particles 25s linear infinite; z-index: -1; pointer-events: none;
}
@keyframes subtle-particles { /* Zůstává */
    0% { background-position: 0% 0%, 100% 100%, 50% 50%; opacity: 0; } 25% { opacity: 0.3; }
    75% { opacity: 0.3; } 100% { background-position: 100% 100%, 0% 0%, -50% -50%; opacity: 0; }
}
body.scrolled #cw-header { /* Prefix */
    box-shadow: 0 8px 25px rgba(0, 151, 167, 0.20);
    background-color: rgba(255, 255, 255, 0.96); /* Mírně méně průhledné při scrollu */
}
body.scrolled #cw-header .cw-logo img { max-height: var(--logo-height-scrolled); }
body.scrolled #cw-header .cw-main-content { padding-top: calc(var(--header-main-padding-y) - 5px); padding-bottom: calc(var(--header-main-padding-y) - 5px); }
body.scrolled #cw-header .cw-navigation-row { padding-top: calc(var(--header-nav-padding-y) - 3px); padding-bottom: calc(var(--header-nav-padding-y) - 3px); }


/* --- Horní Lišta --- */
#cw-header .cw-top-bar { /* Prefix */
  background-color: rgba(240, 248, 250, 0.7);
  border-bottom: 1px solid var(--cw-border);
  padding: 0 var(--header-nav-padding-x); /* Použití proměnné pro padding */
  height: var(--top-bar-height);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.85em;
  color: var(--cw-text-light);
  transition: height var(--transition-speed-normal) var(--transition-timing-smooth);
  width: 100%;
}
#cw-header .cw-top-bar .contact-info a { /* Prefix */
  color: var(--cw-text-light); text-decoration: none; margin-right: 15px; transition: color 0.2s ease;
}
#cw-header .cw-top-bar .contact-info a:hover { color: var(--cw-secondary); } /* Prefix */
#cw-header .cw-top-bar .contact-info i { margin-right: 5px; color: var(--cw-primary); } /* Prefix */
#cw-header .cw-top-bar .badges img { max-height: calc(var(--top-bar-height) - 10px); width: auto; } /* Prefix */


/* --- Hlavní Obsah Hlavičky --- */
#cw-header .cw-main-content { /* Prefix */
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--header-main-padding-y) var(--header-nav-padding-x); /* Použití proměnné pro padding */
  gap: 30px;
  transition: padding var(--transition-speed-normal) var(--transition-timing-smooth);
  width: 100%;
}

/* --- Logo --- */
#cw-header .cw-logo { /* Prefix */
  flex-shrink: 0;
  flex-basis: auto;
  transition: transform var(--transition-speed-normal) var(--transition-timing-elastic);
}
#cw-header .cw-logo:hover { transform: scale(1.05); } /* Prefix */
#cw-header .cw-logo img { /* Prefix */
  max-height: var(--logo-height-normal); width: auto; display: block;
  transition: max-height var(--transition-speed-normal) var(--transition-timing-smooth);
}

/* --- Vyhledávání (Uprostřed) --- */
#cw-header .cw-search-container { /* Prefix */
  flex-grow: 1;
  display: flex;
  justify-content: center;
  margin: 0 20px;
  position: relative;
}
#cw-header .cw-search-form { /* Prefix */
    display: flex;
    width: 100%;
    max-width: var(--search-input-width);
    border: 1px solid var(--cw-border);
    border-radius: 30px;
    overflow: visible;
    background-color: #fff;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.06);
    position: relative;
}
#cw-header #cw-search-input { /* Prefix ID */
    flex-grow: 1; padding: 10px 20px; font-size: 1em; border: none;
    border-radius: 30px 0 0 30px; outline: none; color: var(--cw-text-dark);
    background-color: transparent;
}
#cw-header #cw-search-input::placeholder { color: var(--cw-text-light); opacity: 0.8; } /* Prefix ID */
#cw-header .cw-search-button { /* Prefix */
    flex-shrink: 0; padding: 0 20px; border: none; background-color: var(--cw-primary);
    color: white; cursor: pointer; font-size: 1.1em; border-radius: 0 30px 30px 0;
    transition: background-color 0.2s ease;
}
#cw-header .cw-search-button:hover { background-color: var(--cw-secondary); } /* Prefix */
#cw-header .cw-search-button i { display: block; } /* Prefix */

/* Styly pro našeptávač */
#cw-header .cw-search-form.is-searching { /* Prefix */
    box-shadow: 0 3px 6px rgba(0,0,0,.1);
    border-radius: 8px 8px 0 0;
    border: 1px solid #e0e5ee;
    border-bottom: none;
    background-color: #ffffff;
}
#cw-header .cw-search-form.is-searching #cw-search-input { /* Prefix */
    background: white;
    border-color: transparent;
    border-radius: 8px 0 0 0;
    position: relative;
}
#cw-header .cw-search-form.is-searching .cw-search-button { /* Prefix */
    background: white;
    color: var(--cw-primary);
    border-left: 1px solid #e0e5ee;
    border-radius: 0 8px 0 0;
}
#cw-header .search-whisperer { /* Cílení přes prefix */
    position: absolute;
    left: -1px;
    border-radius: 0 0 8px 8px;
    border: 1px solid #e0e5ee;
    border-top: none;
    width: calc(100% + 2px);
    top: 100%;
    background-color: #fff;
    z-index: calc(var(--header-z-index) + 10);
    max-height: 400px;
    overflow-y: auto;
    box-shadow: 0 6px 12px rgba(0,0,0,0.08);
    display: none;
}
#cw-header .cw-search-form.is-searching .search-whisperer { display: block; }

/* Vnitřní struktura našeptávače */
#cw-header .search-whisperer-group { padding: 10px 15px; border-bottom: 1px solid #eee; }
#cw-header .search-whisperer-group:last-child { border-bottom: none; }
#cw-header .search-whisperer-title { font-weight: bold; color: var(--cw-text-light); font-size: 0.9em; margin-bottom: 8px; text-transform: uppercase; }
#cw-header .search-whisperer ul { list-style: none; padding: 0; margin: 0; }
#cw-header .search-whisperer ul li a { display: flex; align-items: center; padding: 8px 5px; text-decoration: none; color: var(--cw-text-dark); border-radius: 4px; transition: background-color 0.2s ease; }
#cw-header .search-whisperer ul li a:hover { background-color: #f0f3f7; }
#cw-header .search-whisperer-image { width: 40px; height: 40px; object-fit: contain; margin-right: 10px; flex-shrink: 0; border-radius: 3px; }
#cw-header .search-whisperer .p-info { flex-grow: 1; }
#cw-header .search-whisperer .p-name { font-weight: 600; margin-bottom: 3px; }
#cw-header .search-whisperer .price { font-weight: bold; color: var(--cw-primary); margin-left: 10px; white-space: nowrap; }
#cw-header .cw-search-whisperer-category-group a,
#cw-header .cw-search-whisperer-tags-group a { padding: 6px 5px; font-size: 0.95em; }
#cw-header .cw-search-whisperer-category-group .category-link__icon,
#cw-header .cw-search-whisperer-tags-group .category-link__icon { width: 20px; height: 20px; margin-right: 8px; }
#cw-header .cw-search-whisperer-category-group .category-link__icon span,
#cw-header .cw-search-whisperer-tags-group .category-link__icon span { width: 10px; height: 1px; }
#cw-header .cw-search-whisperer-category-group .category-link__icon span:first-child,
#cw-header .cw-search-whisperer-tags-group .category-link__icon span:first-child { margin-top: -3px; }
#cw-header .cw-search-whisperer-category-group .category-link__icon span:last-child,
#cw-header .cw-search-whisperer-tags-group .category-link__icon span:last-child { margin-top: 3px; }
#cw-header .cw-search-whisperer-btn { padding: 15px; border-top: 1px solid #eee; }
#cw-header .cw-search-whisperer-btn .btn { width: 100%; }
#cw-header .search-whisperer-empty { padding: 20px; text-align: center; color: var(--cw-text-light); }


/* --- Akční Tlačítka (Vpravo) --- */
#cw-header .cw-actions-mobile-group {
    display: flex;
    align-items: center;
    gap: 10px;
}
#cw-header .cw-actions { /* Prefix */
  display: flex;
  align-items: center;
  gap: 25px;
  flex-shrink: 0;
}
#cw-header .cw-actions a, /* Prefix */
#cw-header .cw-actions button, /* Prefix */
#cw-header .cw-actions .dropdown-toggle { /* Prefix */
  color: var(--cw-text-dark); font-size: 1.6em; text-decoration: none; position: relative;
  background: none; border: none; padding: var(--action-button-padding-y); cursor: pointer;
  line-height: 1; transition: color var(--transition-speed-fast) var(--transition-timing-smooth), transform var(--transition-speed-normal) var(--transition-timing-elastic);
  display: flex; align-items: center;
}
#cw-header .cw-actions .dropdown-toggle::after { display: none; } /* Prefix */
#cw-header .cw-action-user-dropdown { position: relative; } /* Prefix */
#cw-header .cw-actions a:hover, /* Prefix */
#cw-header .cw-actions button:hover, /* Prefix */
#cw-header .cw-actions .dropdown-toggle:hover { color: var(--cw-primary); transform: scale(1.1); } /* Prefix */
#cw-header .cw-actions .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0; } /* Prefix */
#cw-header .cw-cart-count-indicator { /* Prefix */
    position: absolute; top: -5px; right: -8px; background: radial-gradient(circle, var(--cw-primary) 60%, var(--cw-secondary) 100%); color: white; border-radius: 50%; font-size: 0.6em; padding: 3px 5px; line-height: 1; font-weight: 700; border: 2px solid var(--cw-bg); box-shadow: 0 1px 3px rgba(0,0,0,0.2); min-width: 18px; min-height: 18px; display: flex; justify-content: center; align-items: center; text-align: center;
}
#cw-header .cw-action-text { /* Prefix */
    font-size: 0.55em; margin-left: 8px; font-weight: 600; color: var(--cw-text-dark);
    line-height: 1.2; text-transform: uppercase; white-space: nowrap;
}
#cw-header .cw-action-cart .cw-action-text { font-size: 0.6em; font-weight: 700; } /* Prefix */


/* --- Navigační Lišta --- */
#cw-header .cw-navigation-row { /* Prefix */
    background-color: rgba(255, 255, 255, 0.9);
    border-top: 1px solid var(--cw-border);
    padding: var(--header-nav-padding-y) var(--header-nav-padding-x); /* Použití proměnné */
    display: flex;
    justify-content: center;
    transition: padding var(--transition-speed-normal) var(--transition-timing-smooth);
    width: 100%;
    position: relative; /* <<<< DŮLEŽITÉ: Nutné pro pozicování full-width mega menu */
}
#cw-header .cw-nav { /* Prefix */
    display: flex;
    justify-content: center;
    margin: 0;
    flex-grow: 0;
    position: static;
}
#cw-header .cw-nav ul { /* Prefix */
    list-style: none; padding: 0; margin: 0; display: flex;
    gap: 35px;
    align-items: center;
    flex-wrap: wrap;
}
#cw-header .cw-nav li {
    position: relative;
 }
#cw-header .cw-nav a { /* Prefix */
    font-family: var(--font-secondary); text-decoration: none; color: var(--cw-text-dark);
    font-weight: 600; font-size: 1.0em; padding: var(--nav-link-padding-y) 10px;
    position: relative; transition: color var(--transition-speed-fast) var(--transition-timing-smooth);
    letter-spacing: 0.5px; overflow: visible; display: inline-flex; align-items: center; gap: 5px; white-space: nowrap;
    text-transform: uppercase;
}
#cw-header .cw-nav .cw-nav-arrow { font-size: 0.7em; transition: transform 0.3s ease; } /* Prefix */
#cw-header .cw-nav li.cw-nav-item-dropdown > a[aria-expanded="true"] .cw-nav-arrow, /* Prefix */
#cw-header .cw-nav li.cw-nav-item-megamenu > a[aria-expanded="true"] .cw-nav-arrow { transform: rotate(180deg); } /* Prefix */
#cw-header .cw-nav a:hover { color: var(--cw-primary); } /* Prefix */
#cw-header .cw-nav a::before { display: none; } /* Prefix */
#cw-header .cw-nav a::after { /* Prefix */
    content: ''; position: absolute; bottom: 5px; left: 10px; right: 10px; height: 2px;
    background-color: var(--cw-primary); transform: scaleX(0); transform-origin: center;
    transition: transform 0.3s var(--transition-timing-smooth);
}
#cw-header .cw-nav a:hover::after { transform: scaleX(1); } /* Prefix */


/* ================================= */
/* --- STYLY PRO SDÍLENÉ MEGA MENU (FULL-WIDTH ZOBRAZENÍ - Oprava Calc v.12) --- */
/* ================================= */

/* Kontejner Sdíleného Mega Menu */
#cw-header .cw-navigation-row .cw-shared-megamenu-container { /* <<<< ZMĚNA SELEKTORU */
    position: absolute;
    top: 100%;
    /* OPRAVA: Použití calc() pro přesné zarovnání a šířku */
    left: calc(-1 * var(--header-nav-padding-x));
    width: calc(100% + (2 * var(--header-nav-padding-x)));
    transform: translateY(15px);
    z-index: 1210;
    padding: 25px 0; /* Jen vertikální padding */
    margin-top: 0;
    /* Zajištění neprůhledného pozadí */
    background-color: var(--cw-white) !important;
    border-top: 1px solid var(--cw-border);
    border-bottom: 1px solid var(--cw-border);
    border-left: none;
    border-right: none;
    border-radius: 0;
    box-shadow: 0 10px 25px rgba(0, 97, 107, 0.15);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
    transform-origin: top center;
    box-sizing: border-box;
}

/* Vnitřní obsah Mega Menu (centrovaný) */
#cw-header .cw-navigation-row .cw-shared-megamenu-container .cw-megamenu-content { /* <<<< ZMĚNA SELEKTORU */
    display: grid;
    grid-template-columns: minmax(180px, 1fr) minmax(200px, 1.2fr) minmax(200px, 1fr);
    gap: 25px 40px;
    width: 100%;
    max-width: 1200px; /* Maximální šířka obsahu */
    margin: 0 auto; /* Centrování obsahu */
    /* Padding obsahu pro zarovnání s ostatním obsahem stránky */
    padding: 0 var(--header-nav-padding-x);
    box-sizing: border-box;
    align-items: start;
    /* Pozadí zde není potřeba */
    position: relative;
    z-index: 1;
}

/* Zobrazení Mega Menu při hover/focus */
/* Cílíme na kontejner přímo, JS přidává třídu 'visible' */
#cw-header .cw-navigation-row .cw-shared-megamenu-container.visible { /* <<<< ZMĚNA SELEKTORU */
    opacity: 1 !important;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
    transition-delay: 0s;
}

/* Sloupce, nadpisy, odkazy, vizuální prvky, CTA */
/* Selektory uvnitř menu zůstávají stejné */
#cw-header .cw-megamenu-heading { /* Prefix */
    font-family: var(--font-secondary);
    font-size: 1.0em;
    font-weight: 700;
    color: var(--cw-secondary);
    margin-top: 0;
    margin-bottom: 12px;
    padding-bottom: 6px;
    border-bottom: 2px solid var(--cw-primary);
    display: inline-block;
    white-space: nowrap;
}
#cw-header .cw-megamenu-list { /* Prefix */
    list-style: none;
    padding: 0;
    margin: 0;
}
#cw-header .cw-megamenu-list li { /* Prefix */
    margin-bottom: 6px;
}
#cw-header .cw-megamenu-item-link { /* Prefix */
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: var(--cw-text-dark);
    font-size: 0.9em;
    padding: 4px 0;
    transition: color 0.2s ease, padding-left 0.2s ease;
    position: relative;
    white-space: nowrap;
}
#cw-header .cw-megamenu-item-link:hover { /* Prefix */
    color: var(--cw-primary);
    padding-left: 5px;
}
#cw-header .cw-megamenu-item-link i { /* Styl pro ikonu */
    color: var(--cw-primary);
    font-size: 1.0em;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
}
#cw-header .cw-megamenu-visual-item { /* Prefix */
    margin-bottom: 12px;
}
#cw-header .cw-megamenu-visual-item a { /* Prefix */
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: var(--cw-text-dark);
    padding: 6px;
    border-radius: 4px;
    transition: background-color 0.2s ease;
}
#cw-header .cw-megamenu-visual-item a:hover { /* Prefix */
    background-color: var(--cw-accent-light);
    color: var(--cw-secondary);
}
#cw-header .cw-megamenu-image { /* Prefix */
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 3px;
    flex-shrink: 0;
}
#cw-header .cw-megamenu-visual-item span { /* Prefix */
    font-size: 0.85em;
    font-weight: 500;
    line-height: 1.3;
    white-space: normal;
}
#cw-header .cw-megamenu-cta-column { /* Prefix */
    display: flex;
    align-items: flex-start;
}
#cw-header .cw-megamenu-cta { /* Prefix */
    background-color: var(--cw-accent-light);
    padding: 15px;
    border-radius: 6px;
    text-align: center;
    width: 100%;
    border: 1px dashed var(--cw-secondary);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
#cw-header .cw-megamenu-cta-image { /* Prefix */
    max-width: 100%;
    max-height: 80px;
    width: auto;
    object-fit: contain;
    border-radius: 4px;
    margin: 0 auto 10px auto;
}
#cw-header .cw-megamenu-cta h5 { /* Prefix */
    font-family: var(--font-secondary);
    font-size: 1.0em;
    font-weight: 700;
    color: var(--cw-secondary);
    margin-top: 0;
    margin-bottom: 4px;
}
#cw-header .cw-megamenu-cta p { /* Prefix */
    font-size: 0.85em;
    color: var(--cw-text-light);
    margin-bottom: 12px;
    flex-grow: 1;
}
#cw-header .cw-btn { /* Prefix - obecné tlačítko */
    display: inline-block;
    padding: 8px 16px;
    font-size: 0.85em;
    font-weight: 600;
    text-decoration: none;
    border-radius: 16px;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.1s ease;
    border: none;
    text-transform: uppercase;
    margin-top: auto;
}
#cw-header .cw-btn-primary { /* Prefix - primární tlačítko */
    background-color: var(--cw-primary);
    color: white;
}
#cw-header .cw-btn-primary:hover { /* Prefix */
    background-color: var(--cw-secondary);
    transform: translateY(-1px);
}


/* --- USER Dropdown Menu --- */
#cw-header .cw-action-user-dropdown .dropdown-menu { /* Prefix */
    display: none; opacity: 0; visibility: hidden; transform: translateY(10px); pointer-events: none;
    position: absolute; top: 100%; right: 0; left: auto; z-index: calc(var(--header-z-index) + 5);
    min-width: 180px; padding: 10px 0; margin: 5px 0 0; font-size: 0.95rem;
    color: var(--cw-text-dark); text-align: left; list-style: none; background-color: #ffffff;
    background-clip: padding-box; border: 1px solid var(--cw-border); border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0, 97, 107, 0.18);
    transition: opacity var(--user-dropdown-transition-duration) ease,
                transform var(--user-dropdown-transition-duration) ease,
                visibility 0s linear var(--user-dropdown-transition-duration);
}
#cw-header .cw-action-user-dropdown .dropdown-menu.show { /* Prefix */
    display: block; opacity: 1; visibility: visible; transform: translateY(0);
    pointer-events: auto; transition-delay: 0s;
}
#cw-header .cw-action-user-dropdown .dropdown-item { /* Prefix */
    display: block; width: 100%; padding: 10px 20px; clear: both; font-weight: 500;
    color: var(--cw-text-dark); text-align: inherit; white-space: nowrap;
    background-color: transparent; border: 0; text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}
#cw-header .cw-action-user-dropdown .dropdown-item:hover, /* Prefix */
#cw-header .cw-action-user-dropdown .dropdown-item:focus { /* Prefix */
    color: var(--cw-secondary); text-decoration: none; background-color: var(--cw-accent-light); outline: none;
}
#cw-header .cw-action-user-dropdown .dropdown-item:active { color: #fff; text-decoration: none; background-color: var(--cw-primary); } /* Prefix */
#cw-header .cw-action-user-dropdown .dropdown-item.disabled, /* Prefix */
#cw-header .cw-action-user-dropdown .dropdown-item:disabled { color: #adb5bd; pointer-events: none; background-color: transparent; } /* Prefix */
#cw-header .cw-action-user-dropdown .dropdown-divider { height: 0; margin: 8px 0; overflow: hidden; border-top: 1px solid var(--cw-border); } /* Prefix */


/* --- Mobilní Menu Tlačítko --- */
#cw-header .cw-mobile-menu-toggle { /* Prefix */
    display: none;
    font-size: 1.8em; background: none; border: none; cursor: pointer;
    color: var(--cw-text-dark); padding: 6px; line-height: 1;
    z-index: calc(var(--header-z-index) + 1);
    transition: transform 0.3s var(--transition-timing-elastic), color 0.2s ease;
    margin-left: 10px;
}
#cw-header .cw-mobile-menu-toggle:hover { transform: scale(1.15) rotate(15deg); color: var(--cw-primary); } /* Prefix */

/* --- Styly pro Bootstrap Tooltip --- */
.tooltip { font-family: var(--font-primary); font-size: 0.9em; z-index: calc(var(--header-z-index) + 10); }
.tooltip-inner { background-color: var(--cw-secondary); color: #fff; padding: 8px 12px; border-radius: 6px; box-shadow: 0 4px 12px rgba(0, 97, 107, 0.25); }
.tooltip.bs-tooltip-top .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before { border-top-color: var(--cw-secondary); }
.tooltip.bs-tooltip-right .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before { border-right-color: var(--cw-secondary); }
.tooltip.bs-tooltip-bottom .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before { border-bottom-color: var(--cw-secondary); }
.tooltip.bs-tooltip-left .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before { border-left-color: var(--cw-secondary); }

/* ================================= */
/* --- RESPONZIVITA (s prefixy) --- */
/* ================================= */

/* Tablet a menší (např. pod 1024px) */
@media (max-width: 1023px) {
    #cw-header .cw-top-bar { display: none; }
    #cw-header .cw-main-content {
        padding: 10px 15px; flex-wrap: wrap; gap: 10px 15px; justify-content: space-between;
    }
    #cw-header .cw-logo { order: 1; flex-grow: 0; flex-shrink: 0; flex-basis: auto; margin-right: auto; }
    #cw-header .cw-actions-mobile-group { order: 2; display: flex; align-items: center; gap: 10px; margin-left: auto; }
    #cw-header .cw-actions { order: 1; gap: 15px; }
    #cw-header .cw-mobile-menu-toggle { display: block; order: 2; margin-left: 0; }
    #cw-header .cw-search-container { order: 3; flex-basis: 100%; margin: 10px 0 0 0; }
    #cw-header .cw-action-text { display: none; }

    /* Skrytí desktopové navigace a mega menu */
    #cw-header .cw-navigation-row { display: none; }
    /* Cílíme na sdílený kontejner */
    #cw-header .cw-navigation-row .cw-shared-megamenu-container {
        display: none;
    }
}

/* Menší mobilní zařízení */
@media (max-width: 767px) {
    #cw-header .cw-main-content { padding: 10px 15px; }
    #cw-header .cw-actions-mobile-group { gap: 8px; margin-left: 8px; }
    #cw-header .cw-actions { gap: 8px; }
    #cw-header .cw-actions a, #cw-header .cw-actions button, #cw-header .cw-mobile-menu-toggle { font-size: 1.6em; padding: 5px; }
    #cw-header .cw-cart-count-indicator { font-size: 0.6em; padding: 1px 4px; min-width: 16px; min-height: 16px; top: -1px; right: -3px; }

    /* Úprava vnitřního obsahu mega menu pro mobil (pokud by bylo zobrazeno - nemělo by) */
    #cw-header .cw-navigation-row .cw-shared-megamenu-container .cw-megamenu-content {
       grid-template-columns: 1fr; /* Jeden sloupec */
       gap: 20px;
       padding: 0 15px;
       max-width: 100%;
    }
     #cw-header .cw-navigation-row .cw-shared-megamenu-container {
        padding: 15px 0;
        /* Upraveno pozicování pro mobil, pokud by bylo potřeba */
        left: 0;
        width: 100%; /* Na mobilu už 100% stačí */
        transform: translateY(15px);
     }
     /* Cílení na viditelný stav */
     #cw-header .cw-navigation-row .cw-shared-megamenu-container.visible {
        transform: translateY(0);
     }
}

/* Ještě menší mobilní zařízení */
@media (max-width: 479px) {
    #cw-header .cw-main-content { padding: 8px 10px; }
    :root { --logo-height-normal: 40px; }
    #cw-header .cw-actions-mobile-group { gap: 5px; margin-left: 5px; }
    #cw-header .cw-actions { gap: 5px; }
    #cw-header .cw-actions a, #cw-header .cw-actions button, #cw-header .cw-mobile-menu-toggle { font-size: 1.5em; padding: 4px; }
    #cw-header .cw-cart-count-indicator { font-size: 0.55em; padding: 1px 3px; min-width: 15px; min-height: 15px; }
}


/* --- Redukce pohybu --- */
@media (prefers-reduced-motion: reduce) {
   #cw-header, #cw-header::before, #cw-header::after { animation: none; }
   #cw-header .cw-nav a::before, #cw-header .cw-nav a::after, #cw-header .cw-actions a::before, #cw-header .cw-actions button::before,
   #cw-header .cw-search-clear-btn, #cw-header .cw-logo, #cw-header .cw-nav a, #cw-header .cw-actions a, #cw-header .cw-actions button,
   #cw-header .cw-mobile-menu-toggle, #cw-header .tooltip, #cw-header .dropdown-menu, #cw-header .cw-nav-dropdown-menu,
   #cw-header .cw-nav .cw-nav-arrow,
   #cw-header .cw-navigation-row .cw-shared-megamenu-container, /* Cílení na sdílený kontejner */
   #cw-header .cw-megamenu-item-link,
   #cw-header .cw-megamenu-visual-item a,
   #cw-header .cw-btn
   { transition: none !important; animation: none !important; }

   #cw-header .cw-logo:hover, #cw-header .cw-nav a:hover, #cw-header .cw-actions a:hover, #cw-header .cw-actions button:hover,
   #cw-header .cw-mobile-menu-toggle:hover,
   #cw-header .cw-megamenu-item-link:hover,
   #cw-header .cw-megamenu-visual-item a:hover,
   #cw-header .cw-btn:hover
   { transform: none !important; background-color: inherit; }

   #cw-header .cw-nav li.cw-nav-item-dropdown > a[aria-expanded="true"] .cw-nav-arrow,
   #cw-header .cw-nav li.cw-nav-item-megamenu > a[aria-expanded="true"] .cw-nav-arrow
   { transform: none !important; }
}
