/*
Theme Name: Ruze - Bulharská růže
Theme URI: https://ruze.jvmr.top
Description: Custom child theme pro eshop Bulharská růže (OceanWP child)
Author: pivdmin
Template: oceanwp
Version: 2.0.0
Text Domain: ruze
*/

/* ===== VARIABLES ===== */
:root {
    --ruze-pink: #F15697;
    --ruze-pink-hover: #d44484;
    --ruze-yellow: #FFB907;
    --ruze-yellow-hover: #e5a600;
    --ruze-text: #4D4D4D;
    --ruze-heading: #1F1F1F;
    --ruze-sidebar-bg: #F6F6F6;
    --ruze-white: #FFFFFF;
}

/* ===== TOP INFO BAR (email | privacy | login) ===== */
.ruze-top-info-bar {
    background: var(--ruze-white);
    border-bottom: 1px solid #eee;
    font-size: 13px;
    font-family: "Source Sans 3", sans-serif;
    padding: 4px 20px;
}
.ruze-top-info-inner {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.ruze-top-info-bar a {
    color: #767676;
    text-decoration: none;
}
.ruze-top-info-bar a:hover {
    color: var(--ruze-pink);
}
.ruze-top-center a {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.5px;
}

/* ===== PROMO BANNER (below nav) ===== */
.ruze-promo-banner {
    width: 100%;
    overflow: hidden;
    line-height: 0;
}
.ruze-promo-banner img {
    width: 100%;
    height: auto;
    display: block;
}

/* ===== FLOATING FREE SHIPPING NOTICE (bottom-left) ===== */
.ruze-shipping-notice {
    position: fixed;
    bottom: 20px;
    left: 20px;
    background: #FDF3DA;
    color: #000;
    font-size: 12px;
    font-family: "Source Sans 3", sans-serif;
    padding: 6px 30px 6px 12px;
    z-index: 9999;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    border-radius: 2px;
}
.ruze-shipping-notice .close-notice {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    font-size: 16px;
    color: #000;
    background: none;
    border: none;
    padding: 0;
    line-height: 1;
}

/* ===== PAYMENT ICONS (footer) ===== */
.ruze-payment-icons {
    text-align: center;
    padding: 29px 20px;
    border-bottom: 1px solid #eee;
}
.ruze-payment-icons img {
    margin: 0 10px;
    vertical-align: middle;
}

/* ===== NAVIGATION BAR (OceanWP) ===== */
#site-navigation-wrap,
#site-navigation-wrap .dropdown-menu {
    background-color: var(--ruze-pink) !important;
}
#site-navigation-wrap .dropdown-menu > li > a,
.oceanwp-mobile-menu-icon a {
    color: var(--ruze-white) !important;
    font-family: "Source Sans 3", sans-serif;
    font-size: 14px;
    text-transform: none;
}
#site-navigation-wrap .dropdown-menu > li > a:hover,
#site-navigation-wrap .dropdown-menu > li.sfHover > a {
    color: var(--ruze-white) !important;
    opacity: 0.85;
}
/* Submenu dropdown */
#site-navigation-wrap .dropdown-menu ul.sub-menu {
    background-color: var(--ruze-pink) !important;
}
#site-navigation-wrap .dropdown-menu ul.sub-menu li a {
    color: var(--ruze-white) !important;
    font-family: "Source Sans 3", sans-serif;
    font-size: 13px;
}
#site-navigation-wrap .dropdown-menu ul.sub-menu li a:hover {
    opacity: 0.85;
}

/* ===== TYPOGRAPHY ===== */
body, p {
    color: var(--ruze-text);
    font-family: "Source Sans 3", sans-serif;
}
h1, h2, h3, h4, h5, h6,
.woocommerce div.product .product_title,
.woocommerce .products .product .woocommerce-loop-product__title {
    font-family: "Exo 2", sans-serif;
    color: var(--ruze-heading);
}

/* ===== LINKS ===== */
a, a:visited {
    color: var(--ruze-pink);
}
a:hover, a:focus {
    color: var(--ruze-pink-hover);
}

/* ===== PRICES ===== */
.woocommerce .price,
.woocommerce .amount,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: var(--ruze-pink) !important;
    font-family: "Exo 2", sans-serif;
    font-weight: 400;
}

/* ===== BUTTONS — Pink outline (category "Do košíku") ===== */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button {
    background-color: var(--ruze-white);
    color: var(--ruze-pink);
    border: 1px solid var(--ruze-pink);
    border-radius: 0;
    text-transform: uppercase;
    font-family: "Exo 2", sans-serif;
    font-size: 13px;
    padding: 8px 20px;
    transition: all 0.2s;
}
.woocommerce ul.products li.product .button:hover {
    background-color: var(--ruze-pink);
    color: var(--ruze-white);
}

/* ===== BUTTONS — Yellow CTA (product detail "Přidat do košíku") ===== */
.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce #respond input#submit,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    background-color: var(--ruze-yellow) !important;
    color: var(--ruze-white) !important;
    border: 1px solid var(--ruze-yellow) !important;
    border-radius: 0;
    font-family: "Exo 2", sans-serif;
    font-size: 15px;
    padding: 12px 30px;
    text-transform: none;
    font-weight: 600;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover {
    background-color: var(--ruze-yellow-hover) !important;
    border-color: var(--ruze-yellow-hover) !important;
}

/* ===== SEARCH BUTTON (OceanWP) ===== */
form.search-form .search-submit,
#searchform .search-submit {
    background-color: var(--ruze-pink);
    color: var(--ruze-white);
    border: none;
    text-transform: uppercase;
}

/* ===== HORIZONTAL PRODUCT CARDS (OceanWP category pages) ===== */
.woocommerce ul.products li.product {
    width: 100% !important;
    float: none !important;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}
/* CSS Grid: image left (150px), content right */
.woocommerce ul.products li.product .product-inner {
    display: grid;
    grid-template-columns: 150px 1fr;
    column-gap: 20px;
    row-gap: 2px;
    align-items: start;
}
/* Product image in left column, spanning all rows */
/* OceanWP hides top-level .woo-entry-image by default — override */
.woocommerce ul.products li.product .product-inner > .woo-entry-image {
    display: block !important;
    grid-column: 1;
    grid-row: 1 / span 20;
}
.woocommerce ul.products li.product .product-inner > .woo-entry-image img {
    width: 150px !important;
    max-width: 150px;
    height: auto;
}
/* All other content in right column */
.woocommerce ul.products li.product .product-inner > .woo-entry-inner,
.woocommerce ul.products li.product .product-inner > .stock,
.woocommerce ul.products li.product .product-inner > .product-excerpt,
.woocommerce ul.products li.product .product-inner > .product-sku {
    grid-column: 2;
}
/* All right-column content: left-aligned */
.woocommerce ul.products li.product .product-inner > .woo-entry-inner,
.woocommerce ul.products li.product .product-inner > .stock,
.woocommerce ul.products li.product .product-inner > .product-excerpt,
.woocommerce ul.products li.product .product-inner > .product-sku {
    text-align: left;
}
/* Visual order: inner list (title+price+button) → stock → excerpt → sku */
.woocommerce ul.products li.product .product-inner > .woo-entry-inner { order: 1; }
.woocommerce ul.products li.product .product-inner > .stock { order: 2; }
.woocommerce ul.products li.product .product-inner > .product-excerpt { order: 3; }
.woocommerce ul.products li.product .product-inner > .product-sku { order: 4; }
/* Inner list: strip default list styling */
.woocommerce ul.products li.product .woo-entry-inner {
    list-style: none;
    padding: 0;
    margin: 0;
}
.woocommerce ul.products li.product .woo-entry-inner > li {
    list-style: none;
    text-align: left;
    padding: 0;
    margin: 0;
}
/* Hide duplicate image and category label inside inner list */
.woocommerce ul.products li.product .woo-entry-inner > li.image-wrap,
.woocommerce ul.products li.product .woo-entry-inner > li.category {
    display: none !important;
}
/* Hide OceanWP description (we use our own excerpt hook) */
.woocommerce ul.products li.product .woo-entry-inner > li.woo-desc {
    display: none !important;
}
/* Title styling */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px;
    padding: 0;
    margin: 0 0 4px 0;
    text-align: left;
}
/* Price and button left-aligned */
.woocommerce ul.products li.product .woo-entry-inner .price-wrap,
.woocommerce ul.products li.product .woo-entry-inner .btn-wrap {
    text-align: left;
}
/* Hide OceanWP quick view overlay */
.woocommerce ul.products li.product .owp-quick-view {
    display: none !important;
}

/* ===== OceanWP TOOLBAR (hide grid/list toggle and per-page) ===== */
.oceanwp-toolbar .oceanwp-grid-list,
.oceanwp-toolbar .result-count {
    display: none !important;
}
.oceanwp-toolbar {
    font-size: 0;
}
.oceanwp-toolbar .woocommerce-ordering {
    font-size: 14px;
    float: none;
}

/* ===== SIDEBAR ===== */
.widget-area,
#right-sidebar,
#left-sidebar {
    background-color: var(--ruze-sidebar-bg);
    padding: 20px;
}
.widget-area .widget-title,
#right-sidebar .widget-title,
#left-sidebar .widget-title {
    font-family: "Exo 2", sans-serif;
    font-size: 16px;
    color: var(--ruze-heading);
    text-transform: uppercase;
    border-bottom: 2px solid var(--ruze-pink);
    padding-bottom: 8px;
    margin-bottom: 15px;
}
/* Active category highlight */
.widget_product_categories .current-cat > a {
    color: var(--ruze-pink);
    font-weight: 600;
}

/* ===== PRODUCT DETAIL ===== */
.woocommerce div.product .stock {
    color: #27ae60;
    font-size: 18px;
}
.woocommerce div.product .product_meta {
    color: var(--ruze-text);
    font-size: 13px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--ruze-pink);
    border-bottom-color: var(--ruze-pink);
}
/* Parameter table */
.woocommerce div.product .woocommerce-product-attributes th {
    font-weight: 600;
    color: var(--ruze-heading);
    padding: 8px 15px;
}

/* ===== HEADER LAYOUT (OceanWP): White header with pink navigation ===== */
#site-header,
#site-header-inner {
    background-color: var(--ruze-white) !important;
    border-bottom: none;
}
/* Search in header (OceanWP) */
#site-header .search-toggle-li .search-field,
#site-header form.search-form .search-field {
    width: 400px;
    max-width: 459px;
    border: 1px solid #919191;
    border-radius: 3px;
    font-size: 14px;
    padding: 10px 12px;
}
#site-header form.search-form .search-submit {
    background-color: var(--ruze-pink);
    color: var(--ruze-white);
    text-transform: uppercase;
    font-family: "Source Sans 3", sans-serif;
    font-size: 14px;
    padding: 10px 20px;
    border: none;
}
/* Cart icon in header (OceanWP) */
.woo-menu-icon .wcmenucart,
.woo-menu-icon a {
    color: var(--ruze-pink) !important;
}
.wcmenucart .count,
.woo-menu-icon .count {
    background-color: var(--ruze-pink) !important;
}

/* ===== FOOTER (OceanWP) ===== */
#footer,
#footer-bottom {
    background-color: var(--ruze-white);
    border-top: 1px solid #eee;
}
#footer-bottom #copyright {
    text-align: center;
}
/* Hide OceanWP branding */
#footer-bottom a[href*="oceanwp"] {
    display: none !important;
}

/* ===== FIX: Hide site title text ===== */
#site-logo .site-title,
.site-title {
    display: none !important;
}

/* ===== HOMEPAGE CONTENT (centered ~800px column like original) ===== */
.page-id-658 .entry-content,
.page-id-658 article .entry-content {
    max-width: 800px;
    margin: 0 auto;
}
.page-id-658 .entry-content p {
    font-size: 14px;
    font-family: "Source Sans 3", sans-serif;
    color: var(--ruze-text);
    line-height: 1.38;
    margin-bottom: 19px;
}
.page-id-658 .entry-content h1 {
    font-family: "Exo 2", sans-serif;
    font-size: 26px;
    font-weight: 400;
    color: var(--ruze-heading);
    margin-bottom: 17px;
}
.page-id-658 .entry-content h2 {
    font-family: "Source Sans 3", sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: var(--ruze-text);
    margin-top: 30px;
    margin-bottom: 19px;
}
.page-id-658 .entry-content img {
    max-width: 800px;
    width: 100%;
    height: auto;
    display: block;
}
.page-id-658 .entry-content iframe {
    display: block;
    margin: 20px auto;
    max-width: 100%;
}

/* ===== MOBILE RESPONSIVE ===== */
@media (max-width: 768px) {
    /* Stack product cards vertically on mobile */
    .woocommerce ul.products li.product .product-inner {
        grid-template-columns: 1fr;
    }
    .woocommerce ul.products li.product .product-inner > .woo-entry-image {
        grid-row: auto;
    }
    .woocommerce ul.products li.product .product-inner > .woo-entry-image img {
        width: 100% !important;
        max-width: 100%;
    }
    .woocommerce ul.products li.product .product-inner > .woo-entry-inner,
    .woocommerce ul.products li.product .product-inner > .stock,
    .woocommerce ul.products li.product .product-inner > .product-excerpt,
    .woocommerce ul.products li.product .product-inner > .product-sku {
        grid-column: 1;
    }
    .ruze-shipping-notice {
        font-size: 11px;
        padding: 5px 30px 5px 10px;
    }
}

/* ===== FIX: Stock status color ===== */
.woocommerce ul.products li.product .stock.in-stock {
    color: #27ae60;
    font-weight: 600;
    font-size: 14px;
}

/* ===== FIX: Product excerpt in loop ===== */
.woocommerce ul.products li.product .product-excerpt {
    color: var(--ruze-text);
    font-size: 13px;
    line-height: 1.5;
    margin-top: 5px;
}

/* ===== FIX: Product SKU in loop ===== */
.woocommerce ul.products li.product .product-sku {
    color: #999;
    font-size: 12px;
    display: block;
    margin-top: 5px;
}

/* ===== FIX: Sale badge ===== */
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale {
    background-color: var(--ruze-pink);
    color: var(--ruze-white);
    border-radius: 0;
}

/* ===== OceanWP: Page header (title/breadcrumbs area) ===== */
.page-header {
    background-color: var(--ruze-sidebar-bg);
}
.page-header .page-header-title {
    font-family: "Exo 2", sans-serif;
    color: var(--ruze-heading);
}
