/* =============================================
   DzStore — Complete Visual Redesign
   Premium Deep Purple & Coral Theme
   ============================================= */

/* =============================================
   Custom Properties (Design Tokens)
   ============================================= */
:root {
  --dz-primary: #6C3CE1;
  --dz-primary-light: #8B5CF6;
  --dz-primary-dark: #5521C4;
  --dz-coral: #FF6B6B;
  --dz-coral-light: #FF8A8A;
  --dz-gold: #F4C542;
  --dz-dark: #1A1033;
  --dz-dark-soft: #2D2145;
  --dz-text: #2D2145;
  --dz-text-light: #6B6580;
  --dz-bg: #FAFAFE;
  --dz-card-bg: #FFFFFF;
  --dz-border: #E8E4F0;
  --dz-success: #10B981;
  --dz-radius: 12px;
  --dz-radius-sm: 8px;
  --dz-radius-lg: 20px;
  --dz-shadow-sm: 0 2px 8px rgba(108, 60, 225, 0.08);
  --dz-shadow-md: 0 4px 20px rgba(108, 60, 225, 0.12);
  --dz-shadow-lg: 0 8px 40px rgba(108, 60, 225, 0.16);
  --dz-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* =============================================
   Global Overrides
   ============================================= */

body {
  color: var(--dz-text) !important;
  background-color: var(--dz-bg) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  color: var(--dz-primary) !important;
  transition: var(--dz-transition) !important;
}
a:hover {
  color: var(--dz-coral) !important;
}

::selection {
  background: var(--dz-primary);
  color: #fff;
}

/* =============================================
   Buttons — Pill Shape with Gradient
   ============================================= */

.btn,
.button,
.comment-reply-link,
.added_to_cart,
input[type="submit"],
input[type="reset"],
button[type="submit"] {
  background: linear-gradient(135deg, var(--dz-primary), var(--dz-primary-light)) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 13px 32px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  color: #fff !important;
  box-shadow: 0 4px 15px rgba(108, 60, 225, 0.3) !important;
  transition: var(--dz-transition) !important;
  position: relative;
  overflow: hidden;
}

.btn:hover,
.button:hover,
.comment-reply-link:hover,
.added_to_cart:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
button[type="submit"]:hover {
  background: linear-gradient(135deg, var(--dz-primary-light), var(--dz-primary)) !important;
  color: #fff !important;
  box-shadow: 0 6px 25px rgba(108, 60, 225, 0.4) !important;
  transform: translateY(-2px);
}

.btn:active,
.button:active,
input[type="submit"]:active,
button[type="submit"]:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 10px rgba(108, 60, 225, 0.3) !important;
}

/* Buy / CTA Buttons — Coral accent */
#nrwooconfirm,
.single_add_to_cart_button,
.checkout-button,
.btn-coral {
  background: linear-gradient(135deg, var(--dz-coral), var(--dz-coral-light)) !important;
  box-shadow: 0 4px 15px rgba(255, 107, 107, 0.3) !important;
}

#nrwooconfirm:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover,
.btn-coral:hover {
  background: linear-gradient(135deg, var(--dz-coral-light), var(--dz-coral)) !important;
  box-shadow: 0 6px 25px rgba(255, 107, 107, 0.4) !important;
}

/* Custom ATC buttons */
.custom-atc-btn,
.atc-buy-button {
  background: linear-gradient(135deg, var(--dz-primary), var(--dz-primary-light)) !important;
  border-radius: 50px !important;
  box-shadow: 0 4px 15px rgba(108, 60, 225, 0.3) !important;
}
.custom-atc-btn:hover,
.atc-buy-button:hover {
  box-shadow: 0 6px 25px rgba(108, 60, 225, 0.4) !important;
  transform: translateY(-2px);
}

/* =============================================
   Top Header Bar
   ============================================= */

.top-head-wrap {
  background: linear-gradient(135deg, var(--dz-dark), var(--dz-dark-soft)) !important;
  border-bottom: none !important;
  padding: 8px 0 !important;
}

.top-head-wrap,
.top-head-wrap a,
.top-head-center {
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
}

/* =============================================
   Main Header / Navigation
   ============================================= */

.head-mast {
  background: var(--dz-card-bg) !important;
  box-shadow: var(--dz-shadow-sm) !important;
  border-bottom: 1px solid var(--dz-border) !important;
}

.head-sticky {
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  background: rgba(255, 255, 255, 0.95) !important;
}

/* Navigation links */
.navigation-main > li > a {
  color: var(--dz-text) !important;
  font-weight: 600 !important;
  position: relative !important;
  padding-bottom: 4px !important;
  transition: var(--dz-transition) !important;
}

.navigation-main > li > a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 50% !important;
  width: 0 !important;
  height: 2px !important;
  background: var(--dz-primary) !important;
  transition: var(--dz-transition) !important;
  transform: translateX(-50%) !important;
  border: none !important;
}

.navigation-main > li:hover > a,
.navigation-main > li.current-menu-item > a {
  color: var(--dz-primary) !important;
}

.navigation-main > li:hover > a::after,
.navigation-main > li.current-menu-item > a::after {
  width: 100% !important;
}

/* Dropdown menus */
.navigation-main ul {
  background: var(--dz-card-bg) !important;
  border: 1px solid var(--dz-border) !important;
  border-radius: var(--dz-radius) !important;
  box-shadow: var(--dz-shadow-lg) !important;
  padding: 8px 0 !important;
}

.navigation-main ul li a {
  color: var(--dz-text) !important;
  padding: 10px 20px !important;
  transition: var(--dz-transition) !important;
}

.navigation-main ul li a:hover {
  background: rgba(108, 60, 225, 0.06) !important;
  color: var(--dz-primary) !important;
}

/* Header search */
.head-search-form-wrap {
  background: var(--dz-bg) !important;
  border-top: 1px solid var(--dz-border) !important;
}

.category-search-form {
  border-radius: var(--dz-radius-lg) !important;
  overflow: hidden !important;
  box-shadow: var(--dz-shadow-sm) !important;
  border: 2px solid var(--dz-border) !important;
}

.category-search-form:focus-within {
  border-color: var(--dz-primary) !important;
  box-shadow: 0 0 0 3px rgba(108, 60, 225, 0.12) !important;
}

.category-search-btn {
  background: var(--dz-primary) !important;
  border-radius: 0 var(--dz-radius-lg) var(--dz-radius-lg) 0 !important;
  color: #fff !important;
}
.category-search-btn:hover {
  background: var(--dz-primary-light) !important;
}

/* Header icons */
.head-icons .header-search-icon,
.header-mini-cart-trigger {
  color: var(--dz-text) !important;
  transition: var(--dz-transition) !important;
}
.head-icons .header-search-icon:hover,
.header-mini-cart-trigger:hover {
  color: var(--dz-primary) !important;
}

/* Cart count badge */
.cart-count {
  background: var(--dz-coral) !important;
  color: #fff !important;
  border-radius: 50% !important;
  font-weight: 700 !important;
}

/* Product name in header */
.product-name {
  color: var(--dz-text) !important;
}

/* =============================================
   Product Cards — Grid Items
   ============================================= */

.item.item-product,
.product {
  background: var(--dz-card-bg) !important;
  border-radius: var(--dz-radius) !important;
  border: 1px solid var(--dz-border) !important;
  overflow: hidden !important;
  transition: var(--dz-transition) !important;
  box-shadow: var(--dz-shadow-sm) !important;
}

.item.item-product:hover,
.product:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--dz-shadow-lg) !important;
  border-color: rgba(108, 60, 225, 0.15) !important;
}

/* Product image */
.item-product .item-media img,
.woocommerce ul.products li.product a img {
  transition: var(--dz-transition) !important;
}

.item-product:hover .item-media img,
.product:hover a img {
  transform: scale(1.05) !important;
}

.item-media {
  overflow: hidden !important;
  border-radius: var(--dz-radius) var(--dz-radius) 0 0 !important;
}

/* Product content area */
.item-content {
  padding: 16px !important;
}

/* Product title */
.item-product .item-title a,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  color: var(--dz-text) !important;
  font-weight: 700 !important;
  transition: var(--dz-transition) !important;
}

.item-product .item-title a:hover {
  color: var(--dz-primary) !important;
}

/* Product price */
.item-product .price,
.woocommerce ul.products li.product .price {
  color: var(--dz-primary) !important;
  font-weight: 800 !important;
  font-size: 18px !important;
}

.item-product .price del,
.woocommerce ul.products li.product .price del {
  color: var(--dz-text-light) !important;
  opacity: 0.6 !important;
}

.item-product .price ins,
.woocommerce ul.products li.product .price ins {
  color: var(--dz-coral) !important;
  text-decoration: none !important;
  font-weight: 800 !important;
}

/* Sale badge */
.onsale {
  background: var(--dz-coral) !important;
  color: #fff !important;
  border-radius: var(--dz-radius-sm) !important;
  font-weight: 700 !important;
  padding: 4px 12px !important;
  animation: pulse-sale 2s ease-in-out infinite !important;
  box-shadow: 0 2px 10px rgba(255, 107, 107, 0.3) !important;
}

@keyframes pulse-sale {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

/* Star rating */
.star-rating span::before,
.star-rating::before {
  color: var(--dz-gold) !important;
}

/* Category label */
.item-product .item-cats,
.item-product .item-cats a {
  color: var(--dz-text-light) !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

/* =============================================
   Single Product Page
   ============================================= */

.product-img-gallery {
  border-radius: var(--dz-radius) !important;
  overflow: hidden !important;
}

.summary.entry-summary {
  padding: 0 0 0 30px !important;
}

.product_title {
  color: var(--dz-text) !important;
  font-weight: 800 !important;
  font-size: 28px !important;
  line-height: 1.3 !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--dz-primary) !important;
  font-weight: 800 !important;
  font-size: 26px !important;
}

.entry-product-description {
  border-top: 1px solid var(--dz-border) !important;
  margin-top: 24px !important;
  padding-top: 24px !important;
}

/* =============================================
   COD Form — Premium Styling
   ============================================= */

#codplugin_woo_single_form {
  border-radius: var(--dz-radius) !important;
  border: 2px solid var(--dz-border) !important;
  overflow: hidden !important;
  box-shadow: var(--dz-shadow-sm) !important;
}

#codplugin_woo_single_form input[type="text"],
#codplugin_woo_single_form input[type="tel"],
#codplugin_woo_single_form input[type="email"],
#codplugin_woo_single_form input[type="number"],
#codplugin_woo_single_form select,
#codplugin_woo_single_form textarea {
  border: 2px solid var(--dz-border) !important;
  border-radius: var(--dz-radius-sm) !important;
  padding: 12px 16px !important;
  font-size: 15px !important;
  transition: var(--dz-transition) !important;
  background: var(--dz-card-bg) !important;
}

#codplugin_woo_single_form input:focus,
#codplugin_woo_single_form select:focus,
#codplugin_woo_single_form textarea:focus {
  border-color: var(--dz-primary) !important;
  box-shadow: 0 0 0 3px rgba(108, 60, 225, 0.12) !important;
  outline: none !important;
}

/* =============================================
   Form Inputs — Global
   ============================================= */

input,
textarea,
select {
  border: 2px solid var(--dz-border) !important;
  border-radius: var(--dz-radius-sm) !important;
  transition: var(--dz-transition) !important;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--dz-primary) !important;
  box-shadow: 0 0 0 3px rgba(108, 60, 225, 0.1) !important;
  outline: none !important;
}

/* =============================================
   Widgets & Sidebar
   ============================================= */

.widget {
  background: var(--dz-card-bg) !important;
  border-radius: var(--dz-radius) !important;
  border: 1px solid var(--dz-border) !important;
  box-shadow: var(--dz-shadow-sm) !important;
}

.widget-title {
  color: var(--dz-text) !important;
  font-weight: 700 !important;
  border-bottom: 2px solid var(--dz-primary) !important;
  padding-bottom: 10px !important;
}

/* =============================================
   Footer — Deep Purple Gradient
   ============================================= */

.footer {
  background: linear-gradient(135deg, var(--dz-dark), var(--dz-dark-soft)) !important;
  color: rgba(255, 255, 255, 0.85) !important;
}

.footer-widgets {
  background: transparent !important;
  color: rgba(255, 255, 255, 0.8) !important;
}

.footer .widget-title {
  color: #fff !important;
  border-bottom-color: var(--dz-primary-light) !important;
}

.footer a {
  color: rgba(255, 255, 255, 0.7) !important;
  transition: var(--dz-transition) !important;
}

.footer a:hover {
  color: var(--dz-coral-light) !important;
}

.footer-info {
  background: rgba(0, 0, 0, 0.2) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: rgba(255, 255, 255, 0.6) !important;
}

.footer-info a {
  color: var(--dz-coral-light) !important;
}
.footer-info a:hover {
  color: #fff !important;
}

/* =============================================
   Section Headings
   ============================================= */

.section-title {
  color: var(--dz-text) !important;
  font-weight: 800 !important;
  position: relative !important;
}

.section-title::after {
  background: linear-gradient(135deg, var(--dz-primary), var(--dz-coral)) !important;
  border-radius: 4px !important;
  height: 4px !important;
}

/* =============================================
   WooCommerce Specifics
   ============================================= */

/* Notices */
.woocommerce-message {
  border-top-color: var(--dz-success) !important;
}

.woocommerce-error {
  border-top-color: var(--dz-coral) !important;
}

.woocommerce-info {
  border-top-color: var(--dz-primary) !important;
}

/* Breadcrumbs */
.woocommerce-breadcrumb {
  color: var(--dz-text-light) !important;
}

.woocommerce-breadcrumb a {
  color: var(--dz-primary) !important;
}

/* Tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: var(--dz-primary) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--dz-primary) !important;
}

/* Mini Cart */
.header-mini-cart-contents {
  border-radius: var(--dz-radius) !important;
  box-shadow: var(--dz-shadow-lg) !important;
  border: 1px solid var(--dz-border) !important;
}

/* =============================================
   Hero Area
   ============================================= */

.page-hero {
  background-color: var(--dz-dark) !important;
}

/* =============================================
   Thank You Page / Order Success
   ============================================= */

#codplugin-thanks-box {
  border-radius: var(--dz-radius-lg) !important;
  box-shadow: var(--dz-shadow-lg) !important;
}

.thanks-box-title {
  color: var(--dz-success) !important;
}

/* =============================================
   Mobile Menu
   ============================================= */

#mobilemenu {
  background: var(--dz-card-bg) !important;
}

.mobile-menu-list a {
  color: var(--dz-text) !important;
  border-bottom: 1px solid var(--dz-border) !important;
}

.mobile-menu-list a:hover,
.mobile-menu-list .current-menu-item a {
  color: var(--dz-primary) !important;
}

.mobile-nav-trigger {
  color: var(--dz-text) !important;
}

/* =============================================
   Sticky Add to Cart
   ============================================= */

.sticky-atc-btn {
  background: var(--dz-card-bg) !important;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1) !important;
  border-top: 1px solid var(--dz-border) !important;
}

/* =============================================
   Scrollbar (Webkit)
   ============================================= */

::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: var(--dz-bg);
}

::-webkit-scrollbar-thumb {
  background: var(--dz-primary-light);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--dz-primary);
}

/* =============================================
   Animations
   ============================================= */

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.item.item-product {
  animation: fadeInUp 0.5s ease forwards;
}

/* Staggered animation for product grid */
.item.item-product:nth-child(1) { animation-delay: 0.05s; }
.item.item-product:nth-child(2) { animation-delay: 0.1s; }
.item.item-product:nth-child(3) { animation-delay: 0.15s; }
.item.item-product:nth-child(4) { animation-delay: 0.2s; }
.item.item-product:nth-child(5) { animation-delay: 0.25s; }
.item.item-product:nth-child(6) { animation-delay: 0.3s; }
.item.item-product:nth-child(7) { animation-delay: 0.35s; }
.item.item-product:nth-child(8) { animation-delay: 0.4s; }

/* Contact button floating animation */
.callus-icon {
  background: var(--dz-primary) !important;
  color: #fff !important;
  box-shadow: 0 4px 20px rgba(108, 60, 225, 0.3) !important;
  border-radius: 50% !important;
  transition: var(--dz-transition) !important;
}
.callus-icon:hover {
  background: var(--dz-coral) !important;
  box-shadow: 0 6px 25px rgba(255, 107, 107, 0.4) !important;
  transform: scale(1.1) !important;
  color: #fff !important;
}

/* WhatsApp button */
#whatsapp-orders {
  background: var(--dz-success) !important;
  border-radius: 50px !important;
  box-shadow: 0 4px 15px rgba(16, 185, 129, 0.3) !important;
}

/* =============================================
   Pagination
   ============================================= */

.page-numbers {
  border-radius: var(--dz-radius-sm) !important;
  transition: var(--dz-transition) !important;
}

.page-numbers.current,
.page-numbers:hover {
  background: var(--dz-primary) !important;
  color: #fff !important;
  border-color: var(--dz-primary) !important;
}

/* =============================================
   Order Summary Box
   ============================================= */

#codplugin_show_hide {
  border-radius: var(--dz-radius) !important;
  border: 1px solid var(--dz-border) !important;
  box-shadow: var(--dz-shadow-sm) !important;
}

/* =============================================
   Subtle Background Pattern
   ============================================= */

.widget-sections,
.widget-sections-footer {
  background: linear-gradient(180deg, var(--dz-bg) 0%, rgba(108, 60, 225, 0.02) 100%) !important;
}

/* =============================================
   Links & Misc
   ============================================= */

hr {
  border-bottom-color: var(--dz-border) !important;
}

blockquote {
  border-left-color: var(--dz-primary) !important;
}

mark {
  background: rgba(108, 60, 225, 0.1) !important;
  color: var(--dz-primary) !important;
}

/* Smooth page transitions */
#page {
  animation: fadeInUp 0.3s ease;
}
