/**
 * Custom CSS for migrating from pos_sonic1 theme to probusiness theme
 * Adjusts colors to match the original pompe-vide-fut.fr site
 */

:root {
    /* Override main colors to match original site */
    --brand-primary: #1a75b7; /* IWAKI blue from original site */
    --brand-secondary: #f39d72;
    --brand-success: #46a74e;
    --brand-warning: #f0ad4e;
    --brand-danger: #d9534f;
    --brand-info: #5192f3;
    
    /* Text colors */
    --gray-base: #000;
    --gray-darker: #222;
    --gray-dark: #333;
    --gray: #555;
    --gray-light: #999;
    --gray-lighter: #eee;
    
    /* Body and text colors */
    --body-bg: #fff;
    --text-color: #777777;
    --base-text-color: #333;
    --base-heading-color: #555454;
    --link-color: #777;
    --link-hover-color: #555;
    
    /* Product colors */
    --product-name-color: #3a3939;
    --product-name-hover-color: #515151;
    --price-color: #777777;
    --product-price-color: #333;
    --product-reduced-price: #f00;
    --product-special-price-color: #f13340;
    --product-old-price-color: #6f6f6f;
    
    /* Category/Navigation colors */
/*    --category-bg: #ffcd39; /* Yellow from original site */
    --featured-bg: #ffcd39; /* Yellow from original site */
}

/* Header styling to match the original site */
#header {
    background-color: #1a75b7 !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

/* Hide contact-link as requested */
#contact-link, #_desktop_contact_link {
    display: none !important;
}

/* Adjust header layout */
#header .header-top > .container > .row {
    display: flex;
    align-items: center;
    position: relative;
    flex-wrap: wrap;
}

/* Adjust the shopping cart position
#_desktop_cart {
    position: absolute;
    right: 15px;
    top: 0;
}
*/
.mm_menus_li_title {
background-color:#ffcd39 !important;
}
#header .header-nav {
    background-color: #16608f !important;
    border-bottom: none !important;
    padding: 5px 0;
    margin-bottom: 0;
    color: white;
}

#header .header-top {
    background-color: #1a75b7 !important;
    padding: 15px 0;
}

/* Logo area styling */
.logo {
    max-height: 60px;
    margin-top: 5px;
}

#_desktop_logo {
    padding-right: 20px;
    z-index: 10;
}

#_desktop_logo a {
    display: block;
}

/* Main navigation styling */
#_desktop_top_menu {
    background-color: #1a75b7 !important;
    margin-top: 10px;
    clear: both;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-top: 5px;
    width: 100%;
}

#_desktop_top_menu .top-menu {
    display: flex;
    justify-content: space-between;
}

#_desktop_top_menu .top-menu a[data-depth="0"] {
    color: white !important;
    font-weight: 600;
    text-transform: uppercase;
    padding: 10px 15px;
    font-size: 14px;
}

#_desktop_top_menu .top-menu a[data-depth="0"]:hover {
    color: #ffcd39 !important;
}

/* Dropdown menu styling */
#_desktop_top_menu .sub-menu {
    border: none;
    box-shadow: 0 5px 10px rgba(0,0,0,0.2);
    padding: 15px;
    width: auto;
    min-width: 200px;
}

#_desktop_top_menu .sub-menu a {
    color: #333 !important;
    font-weight: normal;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}

#_desktop_top_menu .sub-menu a:hover {
    color: #1a75b7 !important;
}

/* User account links styling */
.header-nav .nav .ybc_myaccout a,
.header-nav .nav .userinfor {
    color: white !important;
    font-weight: normal;
    font-size: 0.9rem;
    text-decoration: none;
}

.header-nav .nav .ybc_myaccout a:hover,
.header-nav .nav .userinfor:hover {
    color: #ffcd39 !important;
}

/* Currency selector styling */
.currency-selector {
    margin-right: 15px;
}

.currency-selector span,
.currency-selector a {
    color: white !important;
}

.currency-selector .dropdown-menu {
    background-color: white;
    border-radius: 3px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    border: none;
    min-width: 120px;
}

.currency-selector .dropdown-menu a {
    color: #333 !important;
    padding: 5px 10px;
}

.currency-selector .dropdown-menu a:hover {
    background-color: #f5f5f5;
    color: #1a75b7 !important;
}

/* Search bar styling */
.search-widget {
    margin-bottom: 0;
    max-width: 300px;
    float: right;
    margin-top: 10px;
    position: absolute;
    right: 100px;
    top: 0;
}

.search-widget form input[type="text"] {
    border: none;
    border-radius: 3px 0 0 3px;
    padding: 8px 15px;
    min-width: 250px;
    height: 38px;
    background-color: white;
}

.search-widget form button[type="submit"] {
    background: #ffcd39;
    color: #333;
    border-radius: 0 3px 3px 0;
    padding: 8px 12px;
    height: 38px;
}

/* Category navigation styling (left column) */
.block-categories, 
.sidebar .block {
    background-color: var(--category-bg) !important;
    border: none !important;
}

.block-categories .category-top-menu > li > a,
.sidebar .block .h6 {
    color: #333 !important;
    font-weight: bold !important;
}

/* NOS PRODUITS styling */
.category-top-menu > li > a,
.sidebar .block .h6 {
    text-transform: uppercase;
    font-weight: bold !important;
    font-size: 1.1rem !important;
    padding: 10px;
    margin: 0;
    background-color: #ffcd39;
    display: block;
    text-align: center;
    color: #333 !important;
    text-decoration: none;
}

/* Left menu styling */
.category-sub-menu li a {
    font-weight: normal;
    padding: 8px 0;
    display: block;
    border-bottom: 1px solid rgba(0,0,0,0.1);
}

.category-sub-menu li:last-child a {
    border-bottom: none;
}

/* Featured section styling */
.featured-products h2.h2,
.products-section-title {
    background-color: var(--featured-bg) !important;
    color: #333 !important;
    text-align: center;
    padding: 10px !important;
    text-transform: uppercase;
    font-weight: bold !important;
}

/* Button styling */
.btn-primary, 
.btn-primary.disabled, 
.btn-primary:disabled,
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
    background-color: #1a75b7 !important;
    border-color: #1a75b7 !important;
    color: white !important;
}

/* ACHETER button styling */
.btn-primary.acheter,
a.acheter {
    background-color: #1a75b7 !important;
    color: white !important;
    text-transform: uppercase;
    font-weight: bold;
    padding: 8px 15px;
}

/* DÉCOUVRIR button styling */
.btn-secondary.decouvrir,
a.decouvrir {
    background-color: white !important;
    color: #333 !important;
    border: 1px solid #333 !important;
    text-transform: uppercase;
    font-weight: bold;
    padding: 8px 15px;
}

/* Override success colors */
.btn-success, 
.btn-success.disabled, 
.btn-success:disabled,
.btn-success:hover,
.btn-success:active,
.btn-success:focus {
    background-color: #46a74e !important;
    border-color: #3e9546 !important;
}

/* Override warning colors */
.btn-warning, 
.btn-warning.disabled, 
.btn-warning:disabled,
.btn-warning:hover,
.btn-warning:active,
.btn-warning:focus {
    background-color: #f0ad4e !important;
    border-color: #eea236 !important;
}

/* Override danger colors */
.btn-danger, 
.btn-danger.disabled, 
.btn-danger:disabled,
.btn-danger:hover,
.btn-danger:active,
.btn-danger:focus {
    background-color: #d9534f !important;
    border-color: #d43f3a !important;
}

/* Override info colors */
.alert-info {
    background-color: #5192f3 !important;
    border-color: #4b80c3 !important;
}

/* Text colors */
body {
    color: #777777;
}

h1, h2, h3, h4, h5, h6 {
    color: #555454;
}

a {
    color: #777;
}

a:hover, a:focus {
    color: #555;
}

/* Product styles */
.product-title a {
    color: #3a3939;
    font-weight: 600;
    font-size: 1rem;
}

.product-title a:hover {
    color: #1a75b7;
}

.product-price-and-shipping .price {
    color: #333;
    font-weight: bold;
    font-size: 1.1rem;
}

.product-price-and-shipping .regular-price {
    color: #6f6f6f;
    text-decoration: line-through;
    font-size: 0.9rem;
}

.product-price-and-shipping .discount-percentage {
    color: #f13340;
    background: #f13340;
    color: white;
    padding: 2px 5px;
    font-size: 0.8rem;
    margin-left: 5px;
}

/* Product page specific styling */
.product-page-container,
#product .card,
#product #content-wrapper,
#product #main .row,
#product #main > div {
    background-color: white;
    padding: 0px;
    border: 0px solid #d6d4d4;
    margin-bottom: 0px;
}

.product-page-container h1,
.product-detail-name {
    color: #1a75b7;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 20px;
    text-transform: lowercase;
}

.product-page-container h1::first-letter,
.product-detail-name::first-letter {
    text-transform: uppercase;
}

/* Breadcrumb styling to match old theme */
.breadcrumb {
    background-color: #fbfbfb;
    border: 1px solid #d6d4d4;
    padding: 10px 15px;
    margin-bottom: 20px;
    font-size: 0.9rem;
}

.breadcrumb ol {
    padding: 0;
    margin: 0;
    list-style: none;
}

.breadcrumb li {
    display: inline;
}

.breadcrumb li:after {
    content: '/';
    margin: 0 5px;
    color: #777;
}

.breadcrumb li:last-child:after {
    content: '';
}

.breadcrumb a {
    color: #777;
}

.breadcrumb .active {
    color: #1a75b7;
    font-weight: 600;
}

/* Product images styling */
.product-cover {
    border: 1px solid #d6d4d4;
    padding: 5px;
    margin-bottom: 10px;
    background: white;
}

.product-cover img {
    max-width: 100%;
    height: auto;
}

.product-images {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 10px;
}

.product-images > div,
.product-images > li {
    border: 1px solid #d6d4d4;
    padding: 2px;
    margin-bottom: 5px;
    background: white;
}

.product-images img {
    cursor: pointer;
    max-width: 100%;
    height: auto;
}

/* Image zoom effect */
.zoomin {
    cursor: zoom-in;
}

/* Product flags (new, sale, etc.) */
.product-flags {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
}

.product-flags li {
    display: inline-block;
    margin-right: 5px;
    padding: 2px 5px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
}

.product-flags .product-flag.new {
    background-color: #4cbb6c;
    color: white;
}

.product-flags .product-flag.discount,
.product-flags .product-flag.on-sale {
    background-color: #f13340;
    color: white;
}

/* Product tabs styling */
.product-tabs,
.tabs {
    margin-top: 20px;
    clear: both;
}

.product-tabs .nav-tabs,
.tabs .nav-tabs {
    border-bottom: 1px solid #d6d4d4;
    background: #fbfbfb;
}

.product-tabs .nav-link,
.tabs .nav-tabs .nav-link,
.tabs .nav-tabs .nav-item a {
    color: #555;
    background-color: #fbfbfb;
    border: 1px solid #d6d4d4;
    margin-right: 5px;
    padding: 8px 15px;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9rem;
}

.product-tabs .nav-link.active,
.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-item.active a {
    color: #1a75b7;
    background-color: white;
    border-bottom-color: white;
}

.product-tabs .tab-content,
.tabs .tab-content {
    padding: 15px;
    border: 1px solid #d6d4d4;
    border-top: none;
    background-color: white;
    margin-bottom: 20px;
}

/* More information tab styling */
.tabs .tab-pane#more-info {
    line-height: 1.6;
}

.tabs .tab-pane#more-info h4 {
    color: #1a75b7;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 10px;
    text-transform: uppercase;
}

/* Data sheet styling */
.tabs .tab-pane#data-sheet {
    line-height: 1.6;
}

.tabs .tab-pane#data-sheet .data-sheet {
    width: 100%;
    margin-bottom: 20px;
}

.tabs .tab-pane#data-sheet .data-sheet dt {
    background: #fbfbfb;
    padding: 8px;
    width: 30%;
    font-weight: 600;
    border: 1px solid #d6d4d4;
}

.tabs .tab-pane#data-sheet .data-sheet dd {
    padding: 8px;
    width: 70%;
    border: 1px solid #d6d4d4;
    border-left: none;
}

/* Attachments tab styling */
.tabs .tab-pane#attachments {
    line-height: 1.6;
}

.tabs .tab-pane#attachments h4 {
    color: #1a75b7;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.tabs .tab-pane#attachments .attachment {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #d6d4d4;
}

.tabs .tab-pane#attachments .attachment:last-child {
    border-bottom: none;
}

.tabs .tab-pane#attachments .attachment a {
    display: block;
    padding: 5px 0;
    color: #777;
}

.tabs .tab-pane#attachments .attachment a:hover {
    color: #1a75b7;
}

/* Product description styling */
.product-description {
    color: #666;
    line-height: 1.5;
}

.product-description ul {
    list-style-type: disc;
    padding-left: 20px;
    margin-bottom: 15px;
}

.product-description li {
    margin-bottom: 5px;
}

/* Product information and purchase area */
.product-information,
.product-prices,
.product-variants,
.product-discounts,
.product-add-to-cart {
    margin-bottom: 15px;
}

/* Product reference and condition */
.product-reference,
.product-condition {
    font-size: 0.9rem;
    color: #777;
    margin-bottom: 10px;
}

.product-reference span,
.product-condition span {
    font-weight: 600;
}

/* Product prices - matching old theme */
.product-prices {
    margin-top: 15px;
}

.product-prices .current-price {
    font-size: 1.5rem;
    font-weight: 600;
    color: #0091d5;
}

.product-prices .regular-price {
    font-size: 1.1rem;
    color: #6f6f6f;
    text-decoration: line-through;
    margin-left: 10px;
}

.product-prices .discount {
    background: #f13340;
    color: white;
    padding: 2px 5px;
    font-size: 0.9rem;
    margin-left: 10px;
}

.product-prices .tax-shipping-delivery-label {
    font-size: 0.8rem;
    color: #777;
    margin-top: 5px;
}

/* Product variants (size, color, etc.) */
.product-variants {
    margin-top: 15px;
}

.product-variants .control-label {
    display: block;
    font-weight: 600;
    margin-bottom: 5px;
    color: #333;
}

.product-variants select {
    width: 100%;
    padding: 8px;
    border: 1px solid #d6d4d4;
    background-color: white;
}

/* Product actions (add to cart, quantity) */
.product-actions {
    background-color: #f6f6f6;
    padding: 15px;
    border: 1px solid #d6d4d4;
    margin-bottom: 20px;
}

.product-quantity {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.product-quantity label {
    margin-right: 10px;
    font-weight: 600;
    color: #333;
    width: auto;
}

.product-quantity .qty {
    display: flex;
    align-items: center;
}

.product-quantity .input-group-btn-vertical {
    display: inline-block;
    vertical-align: middle;
}

.product-quantity .input-group-btn-vertical .btn {
    padding: 8px;
    border: 1px solid #d6d4d4;
    background-color: white;
    color: #777;
}

.product-quantity .input-group-btn-vertical .btn:hover {
    background-color: #f6f6f6;
}

.product-quantity .qty .input-group {
    width: auto;
    margin-right: 10px;
}

.product-quantity .qty .form-control {
    width: 60px;
    text-align: center;
    padding: 8px;
    border: 1px solid #d6d4d4;
    height: auto;
}

.product-add-to-cart .btn-primary {
    text-transform: uppercase;
    font-weight: 600;
    padding: 0px 10px;
    background: #0091d5;
    border: 1px solid #0091d5;
}

.product-add-to-cart .btn-primary:hover {
    background: #1a75b7;
    border-color: #1a75b7;
}

.product-minimal-quantity {
    font-size: 0.8rem;
    color: #777;
    margin-top: 5px;
}

/* Product additional info (social sharing, compare, etc.) */
.product-additional-info {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #d6d4d4;
}

.social-sharing {
    margin-bottom: 10px;
}

.social-sharing span {
    font-weight: 600;
    margin-right: 10px;
    color: #333;
}

.social-sharing ul {
    display: inline-block;
}

.social-sharing li {
    display: inline-block;
    margin-right: 5px;
}

.social-sharing a {
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 50%;
    color: white;
}

.social-sharing .facebook {
    background-color: #3b5998;
}

.social-sharing .twitter {
    background-color: #55acee;
}

.social-sharing .googleplus {
    background-color: #dd4b39;
}

.social-sharing .pinterest {
    background-color: #cb2027;
}

/* Product attachments */
.product-attachments {
    margin-top: 20px;
}

.product-attachments h4 {
    color: #1a75b7;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 10px;
}

.product-attachments a {
    display: block;
    padding: 5px 0;
    color: #777;
}

.product-attachments a:hover {
    color: #1a75b7;
}

/* Related products section */
.products-section-title,
.featured-products h2,
.product-accessories h2 {
    background-color: var(--featured-bg);
    color: #333;
    text-align: center;
    padding: 10px;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 20px;
    font-size: 1.1rem;
}

/* Product list in product page and home page */
.product-accessories .products,
.featured-products .products,
#posfeaturedproducts .products,
#psnewproducts .products,
.pos_featured_products .products,
.pos_new_products .products {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}

/* Reset the problematic styling */
.product-accessories .product-miniature,
.featured-products .product-miniature,
#posfeaturedproducts .product-miniature,
#psnewproducts .product-miniature,
.pos_featured_products .product-miniature,
.pos_new_products .product-miniature {
    /* Remove fixed width to allow theme's default grid system */
    width: auto;
    margin: 0 0 20px;
    padding: 0;
    border: none;
    background-color: transparent;
}

/* Add border only to the product container */
.product-miniature .thumbnail-container {
    border: 1px solid #d6d4d4;
    padding: 10px;
    background-color: white;
    height: 100%;
}

.product-miniature {
    margin-bottom: 30px;
    background-color: white;
    position: relative;
    border: 1px solid #d6d4d4;
    transition: all 0.3s;
    padding: 10px;
}

@media (max-width: 991px) {
    .product-accessories .product-miniature,
    .featured-products .product-miniature,
    #posfeaturedproducts .product-miniature,
    #psnewproducts .product-miniature,
    .pos_featured_products .product-miniature,
    .pos_new_products .product-miniature {
        width: calc(33.333% - 20px);
    }
}

@media (max-width: 767px) {
    .product-accessories .product-miniature,
    .featured-products .product-miniature,
    #posfeaturedproducts .product-miniature,
    #psnewproducts .product-miniature,
    .pos_featured_products .product-miniature,
    .pos_new_products .product-miniature {
        width: calc(50% - 20px);
    }
}

@media (max-width: 480px) {
    .product-accessories .product-miniature,
    .featured-products .product-miniature,
    #posfeaturedproducts .product-miniature,
    #psnewproducts .product-miniature,
    .pos_featured_products .product-miniature,
    .pos_new_products .product-miniature {
        width: calc(100% - 20px);
    }
}

/* Home page specific module styling */
.home-featured-section,
.home-new-products-section,
#posfeaturedproducts,
#psnewproducts,
.pos_featured_products,
.pos_new_products {
    margin-bottom: 30px;
}

/* Featured products and new products section titles */
.home-featured-section h2,
.home-new-products-section h2,
#posfeaturedproducts h2,
#psnewproducts h2,
.pos_featured_products h2,
.pos_new_products h2,
.pos_title,
.pos-title,
.section-title,
.popular-products-title {
    background-color: var(--featured-bg) !important;
    color: #333 !important;
    text-align: center;
    padding: 10px !important;
    text-transform: uppercase;
    font-weight: bold !important;
    margin-bottom: 20px !important;
    font-size: 1.1rem !important;
    border: none !important;
}

/* EN VEDETTE section styling */
.featured-section-title,
.section-title-with-bg,
.pos_title {
    background-color: var(--featured-bg) !important;
    color: #333 !important;
    text-align: center;
    padding: 10px 15px !important;
    text-transform: uppercase;
    font-weight: bold !important;
    margin: 20px 0 !important;
    border: none !important;
}

/* Popular products section styling */
.popular-products,
.popular-products-section {
    margin-bottom: 30px;
}

.popular-products-title {
    background-color: var(--featured-bg) !important;
    color: #333 !important;
    text-align: center;
    padding: 10px !important;
    text-transform: uppercase;
    font-weight: bold !important;
    margin-bottom: 20px !important;
}

/* Carousel navigation */
.owl-nav button,
.owl-prev,
.owl-next,
.slick-prev,
.slick-next {
    background-color: #1a75b7 !important;
    color: white !important;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.owl-prev,
.slick-prev {
    left: -15px;
}

.owl-next,
.slick-next {
    right: -15px;
}

.owl-nav button span,
.slick-prev:before,
.slick-next:before {
    font-size: 20px;
    line-height: 1;
}

.product-miniature .thumbnail-container {
    position: relative;
    margin-bottom: 10px;
    overflow: hidden;
}

.product-miniature .product-description {
    padding: 10px 0;
}

.product-miniature .product-title {
    margin-bottom: 5px;
    height: 40px;
    overflow: hidden;
}

.product-miniature .product-price-and-shipping {
    margin-bottom: 10px;
}

/* Quick view styling */
.quick-view {
    background-color: rgba(255, 255, 255, 0.8);
    color: #777;
    padding: 5px 10px;
    border: 1px solid #d6d4d4;
    text-transform: uppercase;
    font-size: 0.8rem;
}

.quick-view:hover {
    background-color: #1a75b7;
    color: white;
    border-color: #1a75b7;
}

/* Footer styles to match old theme */
.footer-container {
    background-color: #e5e5e5 !important;
}

.footer-container #footer {
    color: #777777;
}

/* Background colors */
.breadcrumb_wrapper {
    background-color: #fbfbfb;
    border-color: #d6d4d4;
}

/* Fix any specific elements with hard-coded colors */
.btn-outline-primary {
    color: #1a75b7;
    border-color: #1a75b7;
}

.btn-outline-primary:hover {
    background-color: #1a75b7;
    border-color: #1a75b7;
}

/* Search bar styling */
.search-widget form input[type=text] {
    border: 1px solid #d6d4d4;
}

.search-widget form button[type=submit] {
    background: #1a75b7;
}

/* EN VEDETTE section styling */
.featured-section-title,
.section-title-with-bg {
    background-color: var(--featured-bg) !important;
    color: #333 !important;
    text-align: center;
    padding: 10px 15px !important;
    text-transform: uppercase;
    font-weight: bold !important;
    margin: 20px 0 !important;
}

/* Adjust slider/carousel styling */
.carousel .carousel-inner {
    height: auto;
    margin-bottom: 20px;
}

/* Make sure product images maintain aspect ratio */
.product-miniature .thumbnail-container img {
    max-width: 100%;
    height: auto;
}

/* Adjust category page styling */
.block-category {
    border: 1px solid #d6d4d4;
    padding: 15px;
    margin-bottom: 20px;
}

/* Adjust pagination styling */
.pagination .page-list {
    background: #fbfbfb;
}

.pagination a {
    color: #777777;
}

.pagination .current a {
    color: #1a75b7;
    font-weight: bold;
}
