/* ==========================================================================
   WOODEC.CZ - MODERN LUXURY BOUTIQUE DESIGN SYSTEM (V7 - FULL FIX)
   Fonts: Plus Jakarta Sans & Inter (100% Czech Diacritics)
   Palette: #8F6D5D (Taupe), #e3c1a6 (Champagne), #e2c7b1 (Sand),
            #F9F9F9 (Alabaster), #161616 (Anthracite), #FFFFFF (White)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

/* 1. ZÁKLADNÍ NASTAVENÍ A BARVA OZNAČENÍ */
::selection {
    background-color: #e3c1a6;
    color: #161616;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #161616 !important;
    background-color: #FFFFFF !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 2. NADPISY (MODERNÍ BEZPATKOVÉ, ČITELNÉ NA VŠECH ZAŘÍZENÍCH) */
h1, .h1, h2, .h2, h3, .h3, h4, .h4,
.homepage-group-title, .p-detail-info h1, .category-title h1 {
    font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
    letter-spacing: -0.02em !important;
    font-weight: 600 !important;
}

h1, .h1, .category-title h1, .p-detail-info h1 {
    font-size: 32px !important;
    line-height: 1.25 !important;
    margin-bottom: 16px !important;
}

h2, .h2, .homepage-group-title {
    font-size: 24px !important;
    line-height: 1.3 !important;
}

h3, .h3 {
    font-size: 19px !important;
    line-height: 1.35 !important;
}

@media (max-width: 767px) {
    h1, .h1, .category-title h1, .p-detail-info h1 {
        font-size: 24px !important;
    }
    h2, .h2, .homepage-group-title {
        font-size: 20px !important;
    }
}

/* 3. HORNÍ MENU LIŠTA (100% VIDITELNÝ TEXT I PŘI NAJETÍ MYŠÍ) */
#header #navigation .navigation-in ul > li > a,
#navigation .navigation-in ul > li > a,
.navigation-in ul > li > a,
#header #navigation .navigation-in ul > li > a span,
#header #navigation .navigation-in ul > li > a b,
#navigation .navigation-in ul > li > a span,
#navigation .navigation-in ul > li > a b,
.navigation-in ul > li > a span,
.navigation-in ul > li > a b {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    color: #161616 !important;
    -webkit-text-fill-color: #161616 !important;
}

/* Hover stav v hlavním menu - vždy sytě černý text #161616 na béžovém podkladu */
#header #navigation .navigation-in ul > li:hover > a,
#header #navigation .navigation-in ul > li.hovered > a,
#header #navigation .navigation-in ul > li.exp > a,
#navigation .navigation-in ul > li:hover > a,
#navigation .navigation-in ul > li.hovered > a,
#navigation .navigation-in ul > li.exp > a,
.navigation-in ul > li > a:hover,
.navigation-in ul > li:hover > a,
.navigation-in ul > li.hovered > a,
.navigation-in ul > li.exp > a,
#header #navigation .navigation-in ul > li:hover > a span,
#header #navigation .navigation-in ul > li:hover > a b,
#header #navigation .navigation-in ul > li.hovered > a span,
#header #navigation .navigation-in ul > li.hovered > a b,
#header #navigation .navigation-in ul > li.exp > a span,
#header #navigation .navigation-in ul > li.exp > a b,
#navigation .navigation-in ul > li:hover > a span,
#navigation .navigation-in ul > li:hover > a b,
#navigation .navigation-in ul > li.hovered > a span,
#navigation .navigation-in ul > li.hovered > a b,
#navigation .navigation-in ul > li.exp > a span,
#navigation .navigation-in ul > li.exp > a b,
.navigation-in ul > li > a:hover span,
.navigation-in ul > li > a:hover b,
.navigation-in ul > li:hover > a span,
.navigation-in ul > li:hover > a b,
.navigation-in ul > li.hovered > a span,
.navigation-in ul > li.hovered > a b,
.navigation-in ul > li.exp > a span,
.navigation-in ul > li.exp > a b {
    color: #161616 !important;
    -webkit-text-fill-color: #161616 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Rozbalovací podmenu (2. úroveň) */
#navigation .navigation-in ul.menu-level-2,
.navigation-in ul.menu-level-2,
.navigation-in ul ul {
    background-color: #FFFFFF !important;
    border: 1px solid rgba(226, 199, 177, 0.6) !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08) !important;
}

#navigation .navigation-in ul.menu-level-2 li a,
#navigation .navigation-in ul.menu-level-2 li a span,
#navigation .navigation-in ul.menu-level-2 li a b,
.navigation-in ul ul li a,
.navigation-in ul ul li a span,
.navigation-in ul ul li a b {
    color: #161616 !important;
    -webkit-text-fill-color: #161616 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

#navigation .navigation-in ul.menu-level-2 li:hover > a,
#navigation .navigation-in ul.menu-level-2 li:hover > a span,
#navigation .navigation-in ul.menu-level-2 li:hover > a b,
.navigation-in ul ul li:hover > a,
.navigation-in ul ul li:hover > a span,
.navigation-in ul ul li:hover > a b {
    color: #8F6D5D !important;
    -webkit-text-fill-color: #8F6D5D !important;
    background-color: #F9F9F9 !important;
}

/* 4. OPRAVA NEVIDITELNÝCH IKON, TOOLTIPŮ (?) A PRVKŮ V KOŠÍKU
   (Protože Barva šablony 1 je #FFFFFF, Shoptet jinak kreslí bílý otazník na bílém pozadí!) */
.question-tooltip,
.show-tooltip.question-tooltip,
span.question-tooltip,
.form-group-tooltip {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 19px !important;
    height: 19px !important;
    min-width: 19px !important;
    line-height: 19px !important;
    border-radius: 50% !important;
    background-color: #8F6D5D !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin-left: 6px !important;
    vertical-align: middle !important;
    cursor: pointer !important;
    box-shadow: 0 2px 5px rgba(143, 109, 93, 0.3) !important;
    transition: background-color 0.2s ease, transform 0.2s ease !important;
}

.question-tooltip:hover,
.show-tooltip.question-tooltip:hover {
    background-color: #161616 !important;
    color: #e3c1a6 !important;
    -webkit-text-fill-color: #e3c1a6 !important;
    transform: scale(1.08) !important;
}

/* Vyskakovací bublina nápovědy (např. adresa výdejního místa Kavárna Zašívárna) */
.tooltip-inner,
.ui-tooltip {
    background-color: #161616 !important;
    color: #FFFFFF !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    line-height: 1.5 !important;
    padding: 10px 14px !important;
    border-radius: 6px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22) !important;
    max-width: 280px !important;
}

.tooltip.top .tooltip-arrow {
    border-top-color: #161616 !important;
}
.tooltip.bottom .tooltip-arrow {
    border-bottom-color: #161616 !important;
}
.tooltip.left .tooltip-arrow {
    border-left-color: #161616 !important;
}
.tooltip.right .tooltip-arrow {
    border-right-color: #161616 !important;
}

/* Viditelnost přepínačů (radio buttonů a checkboxů) v košíku a dopravě */
input[type="radio"] + label::before,
input[type="checkbox"] + label::before,
.radio-wrapper label::before {
    border-color: #8F6D5D !important;
}

input[type="radio"]:checked + label::after,
.radio-wrapper input[type="radio"]:checked + label::after {
    background-color: #8F6D5D !important;
    border-color: #8F6D5D !important;
}

input[type="checkbox"]:checked + label::before {
    background-color: #8F6D5D !important;
    border-color: #8F6D5D !important;
    color: #FFFFFF !important;
}

/* Aktivní kroky v košíku a objednávce */
ol.cart-header li.active a,
ol.cart-header li.active strong,
ol.cart-header li.active span {
    color: #8F6D5D !important;
}

/* Ikonky v hlavičce (košík, účet, hledání) - vždy viditelné */
#header .navigation-buttons a,
#header .header-top a,
.top-navigation-bar a {
    color: #161616 !important;
}

#header .cart-count,
#header .navigation-buttons a i[data-acronym],
.cart-price {
    color: #161616 !important;
}

/* 5. PRODUKTOVÉ KARTY - ČISTĚ BÍLÉ A BEZ PŘEKRÝVÁNÍ POLÍČEK */
.products-block,
.products-block .product,
.products-block .product .p,
.products-block .product .p-in,
.products-block .product .p-bottom,
.products-block .product .image,
.p-card,
.p-card .image {
    background-color: #FFFFFF !important;
    background: #FFFFFF !important;
}

/* Zabránění překrývání karet a textů uvnitř karty produktu */
.products-block .product {
    border: none !important;
    box-shadow: none !important;
    height: auto !important;
    margin-bottom: 24px !important;
    box-sizing: border-box !important;
}

.products-block .product .p,
.p-card {
    border: 1px solid rgba(226, 199, 177, 0.45) !important;
    border-radius: 8px !important;
    padding: 14px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.3s ease !important;
    box-shadow: 0 2px 10px rgba(22, 22, 22, 0.03) !important;
}

.products-block .product:hover .p,
.p-card:hover {
    transform: translateY(-3px) !important;
    border-color: #8F6D5D !important;
    box-shadow: 0 14px 28px -10px rgba(22, 22, 22, 0.1) !important;
}

/* Uvolnění pevných výšek uvnitř karty, aby název nepřetékal přes cenu */
.products-block .product .p-in,
.products-block .product .p-in-in,
.products-block .product .name,
.products-block .product .p-bottom,
.products-block .product .prices,
.products-block .product .availability {
    height: auto !important;
    min-height: 0 !important;
    position: static !important;
    overflow: visible !important;
}

.products-block .product .name,
.p-card .name {
    display: block !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.38 !important;
    color: #161616 !important;
    margin: 10px 0 8px 0 !important;
}

/* Spodní část karty (cena + tlačítko) zarovnaná bez překrývání */
.products-block .product .p-bottom {
    margin-top: auto !important;
    padding-top: 10px !important;
}

.products-block .product .p-tools {
    margin-top: 8px !important;
}

/* Obrázek produktu - jemný zoom */
.products-block .product .image,
.p-card .image {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    border-radius: 4px !important;
}

.products-block .product .image img,
.p-card .image img {
    transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.products-block .product:hover .image img,
.p-card:hover .image img {
    transform: scale(1.04) !important;
}

/* Cena produktu */
.products-block .product .price-final,
.price-final {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 16.5px !important;
    font-weight: 700 !important;
    color: #161616 !important;
}

.p-detail-info .price-final {
    font-size: 26px !important;
    font-weight: 700 !important;
}

/* 6. ŠTÍTKY NA PRODUKTECH (AKCE, NOVINKA) */
.flags .flag,
.flags-default .flag {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    border-radius: 3px !important;
    padding: 4px 8px !important;
    border: none !important;
}

.flags .flag-action {
    background-color: #8F6D5D !important;
    color: #FFFFFF !important;
}

.flags .flag-new {
    background-color: #161616 !important;
    color: #FFFFFF !important;
}

/* 7. TLAČÍTKA - ROZLIŠENÍ VELKÝCH A KOMPAKTNÍCH TLAČÍTEK (PROTI PŘEKRÝVÁNÍ!) */
.btn-primary,
.btn-conversion,
.add-to-cart-button {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    background-color: #8F6D5D !important;
    border: 1px solid #8F6D5D !important;
    color: #FFFFFF !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    border-radius: 4px !important;
    transition: all 0.25s ease !important;
}

/* Kompaktní tlačítka v kartách produktů, aby se nepřekrývala s cenou */
.products-block .product .btn,
.products-block .product .add-to-cart-button,
.p-card .btn {
    padding: 8px 14px !important;
    font-size: 11.5px !important;
    letter-spacing: 0.04em !important;
    width: auto !important;
    max-width: 100% !important;
    white-space: nowrap !important;
}

/* Velké hlavní tlačítko pouze na detailu produktu a v posledním kroku košíku */
.p-detail-info .add-to-cart-button,
.p-detail-inner .add-to-cart-button,
.next-step-forward,
#order-form .btn-conversion {
    padding: 13px 26px !important;
    font-size: 13px !important;
    box-shadow: 0 4px 14px rgba(143, 109, 93, 0.25) !important;
}

.btn-primary:hover,
.btn-conversion:hover,
.add-to-cart-button:hover {
    background-color: #e3c1a6 !important;
    border-color: #e3c1a6 !important;
    color: #161616 !important;
}

/* Tlačítka + a - u množství (nesmí mít velký padding!) */
.quantity .increase,
.quantity .decrease,
.amount-buttons button {
    padding: 0 !important;
    color: #161616 !important;
}

/* 8. ČISTÁ VSTUPNÍ POLE A VYHLEDÁVÁNÍ */
input[type="text"],
input[type="email"],
input[type="search"],
input[type="tel"],
input[type="number"],
select.form-control,
textarea.form-control {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: #161616 !important;
    background-color: #FFFFFF !important;
    border: 1px solid rgba(143, 109, 93, 0.35) !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
}

input:focus,
select:focus,
textarea:focus {
    outline: none !important;
    border-color: #8F6D5D !important;
    box-shadow: 0 0 0 3px rgba(227, 193, 166, 0.25) !important;
}

/* 9. NADPISY SEKCÍ NA ÚVODNÍ STRANĚ */
.homepage-group-title {
    margin-top: 44px !important;
    margin-bottom: 24px !important;
    text-align: center !important;
}