/* Oraimo-Style Tech Theme Overrides */

/* 1. Global Variables Override */
:root {
    --primary: #000000 !important;
    --hov-primary: #333333 !important;
    --soft-primary: rgba(0, 0, 0, 0.15) !important;
}

/* 2. Soft & Rounded UI Elements */
/* Cards & Containers */
.card,
.aiz-card-box,
.carousel-box,
.aiz-user-panel,
.rounded-2,
.rounded-3,
.modal-content,
.dropdown-menu,
.toast {
    border-radius: 16px !important;
}

/* Hardcoded border radius overrides */
.rounded, .rounded-sm, .rounded-lg, .rounded-xl {
    border-radius: 16px !important;
}

/* Buttons */
.btn,
.btn-primary,
.btn-outline-primary,
.btn-light,
.btn-soft-primary,
.input-group-text {
    border-radius: 12px !important;
}

.btn.rounded-pill {
    border-radius: 50px !important;
}

/* Inputs & Form Controls */
.form-control,
.custom-select,
.aiz-selectpicker .btn {
    border-radius: 12px !important;
}

/* Product Images and Banners */
.img-fit,
.has-transition,
.slider-full img,
.home-slider .aiz-carousel {
    border-radius: 16px !important;
}

/* Remove harsh shadows and replace with soft, elegant drop shadows */
.shadow-sm {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
}
.shadow {
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08) !important;
}
.hov-shadow-md:hover {
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
}

/* 2.5. Oraimo specific product card spacing and borderless aesthetic */
.aiz-card-box, .product-box-2 {
    border: none !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02) !important;
    padding: 24px !important;
    transition: all 0.3s ease !important;
}

.aiz-card-box:hover, .product-box-2:hover {
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08) !important;
    transform: translateY(-5px);
}

.carousel-box {
    border: none !important;
    padding: 12px !important;
}

/* Ensure images have room to breathe */
.product-main-image, .product-hover-image {
    padding: 8px;
    object-fit: contain !important;
}

/* 3. Glassmorphism Sticky Header */
.sticky-top {
    /* Support both light and dark modes */
    background-color: rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* Dark mode specific sticky header */
.dark-mode .sticky-top {
    background-color: rgba(26, 26, 26, 0.85) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* 4. Color Fixes */
/* Ensure text that uses primary color is readable */
.text-primary {
    color: #000000 !important;
}

.bg-primary {
    background-color: #000000 !important;
}

.border-primary {
    border-color: #000000 !important;
}

.badge-primary {
    background-color: #000000 !important;
}

/* Perpetual Dark Mode Overrides for Header and Footer */
#perpetual-dark-footer section,
#perpetual-dark-footer div[style*="background-color"] {
    background-color: #1a1a1a !important;
}

.dark-mode.top-navbar,
.dark-mode.stikcy-header-visibility {
    background-color: rgba(10, 10, 10, 0.92) !important;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}

#perpetual-dark-footer h1,
#perpetual-dark-footer h2,
#perpetual-dark-footer h3,
#perpetual-dark-footer h4,
#perpetual-dark-footer h5,
#perpetual-dark-footer h6,
#perpetual-dark-footer p,
#perpetual-dark-footer a,
#perpetual-dark-footer span,
#perpetual-dark-footer div,
#perpetual-dark-footer svg path,
#perpetual-dark-footer *[style*="color"],
.dark-mode.top-navbar a,
.dark-mode.top-navbar span,
.dark-mode.stikcy-header-visibility a,
.dark-mode.stikcy-header-visibility span,
.dark-mode.stikcy-header-visibility h4,
.dark-mode.top-navbar *[style*="color"],
.dark-mode.stikcy-header-visibility *[style*="color"] {
    color: #e0e0e0 !important;
    fill: #e0e0e0 !important;
}

.dark-mode.top-navbar .dropdown-menu:not(.mt-cart-dropdown-menu) {
    background-color: #1a1a1a !important;
}
.dark-mode.top-navbar .dropdown-menu:not(.mt-cart-dropdown-menu) .dropdown-item {
    color: #e0e0e0 !important;
}
.dark-mode.top-navbar .dropdown-menu:not(.mt-cart-dropdown-menu) .dropdown-item:hover {
    background-color: #333 !important;
}

/* Fix cart dropdown text overrides for all headers */
.mt-cart-dropdown-menu,
.mt-cart-dropdown-menu.bg-white,
.dark-mode.top-navbar .mt-cart-dropdown-menu,
.dark-mode.stikcy-header-visibility .mt-cart-dropdown-menu {
    background-color: #ffffff !important;
}

.mt-cart-dropdown-menu span,
.mt-cart-dropdown-menu a,
.mt-cart-dropdown-menu div,
.dark-mode.top-navbar .mt-cart-dropdown-menu span,
.dark-mode.top-navbar .mt-cart-dropdown-menu a,
.dark-mode.top-navbar .mt-cart-dropdown-menu div,
.dark-mode.stikcy-header-visibility .mt-cart-dropdown-menu span,
.dark-mode.stikcy-header-visibility .mt-cart-dropdown-menu a,
.dark-mode.stikcy-header-visibility .mt-cart-dropdown-menu div {
    color: #1a1a1a !important;
}

.mt-cart-dropdown-menu .text-secondary,
.dark-mode.top-navbar .mt-cart-dropdown-menu .text-secondary,
.dark-mode.stikcy-header-visibility .mt-cart-dropdown-menu .text-secondary,
.dark-mode.stikcy-header-visibility .mt-cart-dropdown-menu .text-secondary span {
    color: #888888 !important;
}

/* Off-white background for distinction */
body, .aiz-main-wrapper {
    background-color: #f7f8fa !important;
}

.aiz-card-box, .bg-white, .carousel-box .bg-white {
    background-color: #ffffff !important;
}

/* Hide empty top navbar to fix sticky header snap issue */
.top-navbar {
    display: none !important;
}

/* Simple Dividers for Grid Elements */
.aiz-card-box, .carousel-box .bg-white {
    background-color: #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 15px !important;
    border: 1px solid #eee !important;
    margin-top: -1px !important;
    margin-bottom: 0 !important;
    margin-left: -1px !important;
    margin-right: 0 !important;
    transform: none !important;
}

.aiz-card-box:hover, .carousel-box .bg-white:hover {
    box-shadow: none !important;
    background-color: #ffffff !important;
    transform: none !important;
}

/* Transform gutters into contiguous visual dividers */
.row.gutters-10 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.row.gutters-10 > [class*="col-"] {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

/* Remove bottom mobile nav */
.aiz-mobile-bottom-nav {
    display: none !important;
}

/* Search Dropdown Dark Theme */
.typed-search-box.bg-white,
.typed-search-box {
    background-color: #1a1a1a !important;
    border: 1px solid #333 !important;
}

.typed-search-box .search-nothing {
    color: #e0e0e0 !important;
}

.typed-search-box .bg-soft-secondary {
    background-color: #222 !important;
    color: #9d9da6 !important;
    border-bottom: 1px solid #333 !important;
}

.typed-search-box .list-group-item {
    background-color: #1a1a1a !important;
    border-color: #333 !important;
    color: #e0e0e0 !important;
}

.typed-search-box .list-group-item a.text-reset {
    color: #e0e0e0 !important;
}

.typed-search-box .list-group-item a.text-reset:hover {
    color: #000000 !important;
}

/* Custom Add to Cart Button Style */
.btn-custom-outline-black {
    background-color: transparent !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: color 0.4s ease !important;
    transform: none !important;
    position: relative !important;
    overflow: hidden !important;
    z-index: 1 !important;
}
.btn-custom-outline-black::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 0 !important;
    height: 100% !important;
    background-color: #000 !important;
    z-index: -1 !important;
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}
.btn-custom-outline-black:hover::before {
    width: 100% !important;
}
.btn-custom-outline-black:hover {
    color: #fff !important;
    border-color: #000 !important;
    transform: none !important;
}
.btn-custom-outline-black i {
    transition: transform 0.3s ease, color 0.3s ease !important;
    display: inline-block;
}
.btn-custom-outline-black:hover i {
    transform: translateX(4px) !important;
}
.btn-custom-outline-black span {
    transition: color 0.3s ease !important;
}

.btn-custom-solid-black {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: 1px solid #000000 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: background-color 0.3s ease, color 0.3s ease !important;
}

.btn-custom-solid-black:hover {
    background-color: #333333 !important;
    color: #ffffff !important;
    border-color: #333333 !important;
}

.typed-search-box .product-name {
    color: #e0e0e0 !important;
}
