/*
 Theme Name:   AromThai - Shoptimizer Child
 Theme URI:    https://aromthai.it
 Description:  Child theme di Shoptimizer per AromThai - Olio di Cocco & Prodotti Thailandesi. Supporta Light/Dark mode.
 Author:       Weblogging Digital Agency
 Author URI:   https://weblogging.it
 Template:     shoptimizer
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  aromthai
*/

/* ==========================================================================
   AROMTHAI DESIGN SYSTEM - CSS Custom Properties
   ========================================================================== */

/* ---------- LIGHT MODE (Default) ---------- */
:root {
  /* Primary palette - Thai inspired greens & golds */
  --at-primary: #1B5E20;
  --at-primary-light: #4CAF50;
  --at-primary-dark: #0D3B13;
  --at-primary-rgb: 27, 94, 32;

  /* Secondary - Warm gold/amber */
  --at-secondary: #D4A017;
  --at-secondary-light: #F0C14B;
  --at-secondary-dark: #A67C00;

  /* Accent - Thai terracotta */
  --at-accent: #BF360C;
  --at-accent-light: #E64A19;

  /* Neutral palette */
  --at-bg: #FFFDF7;
  --at-bg-alt: #F5F0E8;
  --at-bg-card: #FFFFFF;
  --at-bg-card-hover: #FAFAF5;
  --at-surface: #F8F6F0;

  /* Text */
  --at-text: #1A1A1A;
  --at-text-secondary: #555555;
  --at-text-muted: #888888;
  --at-text-inverse: #FFFFFF;

  /* Borders */
  --at-border: #E0DCD4;
  --at-border-light: #F0EDE6;

  /* Shadows */
  --at-shadow-sm: 0 1px 3px rgba(0,0,0,0.06);
  --at-shadow-md: 0 4px 12px rgba(0,0,0,0.08);
  --at-shadow-lg: 0 8px 30px rgba(0,0,0,0.12);
  --at-shadow-xl: 0 16px 50px rgba(0,0,0,0.15);

  /* Transitions */
  --at-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);

  /* Typography */
  --at-font-heading: 'Playfair Display', Georgia, serif;
  --at-font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* Radius */
  --at-radius-sm: 6px;
  --at-radius-md: 12px;
  --at-radius-lg: 20px;
  --at-radius-full: 9999px;

  /* Header */
  --at-header-bg: rgba(255, 253, 247, 0.95);
  --at-header-text: #1A1A1A;

  /* Footer */
  --at-footer-bg: #0D3B13;
  --at-footer-text: #E8E6E3;

  /* Buttons */
  --at-btn-primary-bg: #1B5E20;
  --at-btn-primary-text: #FFFFFF;
  --at-btn-primary-hover: #0D3B13;
  --at-btn-secondary-bg: transparent;
  --at-btn-secondary-text: #1B5E20;
  --at-btn-secondary-border: #1B5E20;

  /* Badge / Sale */
  --at-badge-sale: #BF360C;
  --at-badge-new: #1B5E20;
  --at-badge-text: #FFFFFF;

  /* Stars / Rating */
  --at-star: #D4A017;

  /* Overlays */
  --at-overlay: rgba(0, 0, 0, 0.5);
  --at-overlay-light: rgba(255, 255, 255, 0.85);
}

/* DARK MODE DISABLED
/* ---------- DARK MODE ---------- */
[data-theme="dark"] {
  --at-primary: #66BB6A;
  --at-primary-light: #81C784;
  --at-primary-dark: #388E3C;
  --at-primary-rgb: 102, 187, 106;

  --at-secondary: #F0C14B;
  --at-secondary-light: #FFD54F;
  --at-secondary-dark: #D4A017;

  --at-accent: #FF7043;
  --at-accent-light: #FF8A65;

  --at-bg: #0F1410;
  --at-bg-alt: #1A2420;
  --at-bg-card: #1E2B25;
  --at-bg-card-hover: #253530;
  --at-surface: #162019;

  --at-text: #E8E6E3;
  --at-text-secondary: #B0ADA6;
  --at-text-muted: #7A776F;
  --at-text-inverse: #0F1410;

  --at-border: #2A3830;
  --at-border-light: #1E2B25;

  --at-shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
  --at-shadow-md: 0 4px 12px rgba(0,0,0,0.4);
  --at-shadow-lg: 0 8px 30px rgba(0,0,0,0.5);
  --at-shadow-xl: 0 16px 50px rgba(0,0,0,0.6);

  --at-header-bg: rgba(15, 20, 16, 0.95);
  --at-header-text: #E8E6E3;

  --at-footer-bg: #0A100C;
  --at-footer-text: #B0ADA6;

  --at-btn-primary-bg: #66BB6A;
  --at-btn-primary-text: #0F1410;
  --at-btn-primary-hover: #81C784;
  --at-btn-secondary-bg: transparent;
  --at-btn-secondary-text: #66BB6A;
  --at-btn-secondary-border: #66BB6A;

  --at-badge-sale: #FF7043;
  --at-badge-new: #66BB6A;

  --at-star: #FFD54F;

  --at-overlay: rgba(0, 0, 0, 0.7);
  --at-overlay-light: rgba(15, 20, 16, 0.85);
}

/* ---------- Auto dark mode (system preference) ---------- */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --at-primary: #66BB6A;
    --at-primary-light: #81C784;
    --at-primary-dark: #388E3C;
    --at-primary-rgb: 102, 187, 106;
    --at-secondary: #F0C14B;
    --at-secondary-light: #FFD54F;
    --at-secondary-dark: #D4A017;
    --at-accent: #FF7043;
    --at-accent-light: #FF8A65;
    --at-bg: #0F1410;
    --at-bg-alt: #1A2420;
    --at-bg-card: #1E2B25;
    --at-bg-card-hover: #253530;
    --at-surface: #162019;
    --at-text: #E8E6E3;
    --at-text-secondary: #B0ADA6;
    --at-text-muted: #7A776F;
    --at-text-inverse: #0F1410;
    --at-border: #2A3830;
    --at-border-light: #1E2B25;
    --at-shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
    --at-shadow-md: 0 4px 12px rgba(0,0,0,0.4);
    --at-shadow-lg: 0 8px 30px rgba(0,0,0,0.5);
    --at-shadow-xl: 0 16px 50px rgba(0,0,0,0.6);
    --at-header-bg: rgba(15, 20, 16, 0.95);
    --at-header-text: #E8E6E3;
    --at-footer-bg: #0A100C;
    --at-footer-text: #B0ADA6;
    --at-btn-primary-bg: #66BB6A;
    --at-btn-primary-text: #0F1410;
    --at-btn-primary-hover: #81C784;
    --at-btn-secondary-bg: transparent;
    --at-btn-secondary-text: #66BB6A;
    --at-btn-secondary-border: #66BB6A;
    --at-badge-sale: #FF7043;
    --at-badge-new: #66BB6A;
    --at-star: #FFD54F;
    --at-overlay: rgba(0, 0, 0, 0.7);
    --at-overlay-light: rgba(15, 20, 16, 0.85);
  }
}

/* ==========================================================================
   GLOBAL BASE STYLES
   ========================================================================== */

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

DARK MODE DISABLED */
/* Links */
a {
  color: var(--at-primary);
  transition: color var(--at-transition);
}
a:hover {
  color: var(--at-primary-light);
}

/* Selection */
::selection {
  background: rgba(var(--at-primary-rgb), 0.2);
  color: var(--at-text);
}

/* DARK MODE — DISABLED */
.at-theme-toggle,.at-theme-toggle *{display:none!important;visibility:hidden!important;width:0!important;height:0!important;position:absolute!important;overflow:hidden!important}

/* ==========================================================================
   HEADER OVERRIDES
   ========================================================================== */

.col-full,
.site-header,
.main-navigation {
  background-color: var(--at-header-bg) !important;
  transition: background-color var(--at-transition);
}

.site-header {
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--at-border-light);
}

.main-navigation ul li a,
.site-title a,
.site-description {
  color: var(--at-header-text) !important;
  transition: color var(--at-transition);
}

/* ==========================================================================
   PRODUCT CARDS
   ========================================================================== */

ul.products li.product {
  background: var(--at-bg-card);
  border: 1px solid var(--at-border-light);
  border-radius: var(--at-radius-md);
  overflow: hidden;
  transition: all var(--at-transition);
  box-shadow: var(--at-shadow-sm);
}
ul.products li.product:hover {
  box-shadow: var(--at-shadow-lg);
  transform: translateY(-4px);
  border-color: var(--at-primary);
}
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2 {
  color: var(--at-text) !important;
}
ul.products li.product .price {
  color: var(--at-primary) !important;
  font-weight: 700;
}
ul.products li.product .price del {
  color: var(--at-text-muted) !important;
}

/* Sale badge */
.onsale,
.commercekit-sale-flash {
  background-color: var(--at-badge-sale) !important;
  color: var(--at-badge-text) !important;
  border-radius: var(--at-radius-sm) !important;
}

/* ==========================================================================
   BUTTONS
   ========================================================================== */

.button,
button,
input[type="submit"],
.wp-block-button__link,
.add_to_cart_button,
.single_add_to_cart_button {
  background-color: var(--at-btn-primary-bg) !important;
  color: var(--at-btn-primary-text) !important;
  border: none !important;
  border-radius: var(--at-radius-sm) !important;
  transition: all var(--at-transition) !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
}
.button:hover,
button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover,
.add_to_cart_button:hover,
.single_add_to_cart_button:hover {
  background-color: var(--at-btn-primary-hover) !important;
  transform: translateY(-1px);
  box-shadow: var(--at-shadow-md) !important;
}

/* ==========================================================================
   FOOTER
   ========================================================================== */

.site-footer,
footer,
.footer-widgets {
  background-color: var(--at-footer-bg) !important;
  color: var(--at-footer-text) !important;
  transition: background-color var(--at-transition);
}
.site-footer a,
footer a,
.footer-widgets a {
  color: var(--at-footer-text) !important;
  opacity: 0.8;
}
.site-footer a:hover,
footer a:hover,
.footer-widgets a:hover {
  color: var(--at-secondary-light) !important;
  opacity: 1;
}

/* ==========================================================================
   FORMS & INPUTS
   ========================================================================== */

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="url"],
textarea,
select {
  background-color: var(--at-bg-card) !important;
  color: var(--at-text) !important;
  border: 1px solid var(--at-border) !important;
  border-radius: var(--at-radius-sm) !important;
  transition: all var(--at-transition);
}
input:focus,
textarea:focus,
select:focus {
  border-color: var(--at-primary) !important;
  box-shadow: 0 0 0 3px rgba(var(--at-primary-rgb), 0.15) !important;
  outline: none !important;
}

/* ==========================================================================
   WOOCOMMERCE SPECIFIC
   ========================================================================== */

/* Cart */
.woocommerce-cart table.cart,
.woocommerce table.shop_table {
  background: var(--at-bg-card);
  border-color: var(--at-border) !important;
}
.woocommerce table.shop_table th {
  background: var(--at-bg-alt);
  color: var(--at-text);
}
.woocommerce table.shop_table td {
  border-color: var(--at-border-light) !important;
  color: var(--at-text);
}

/* Checkout */
.woocommerce-checkout #payment {
  background: var(--at-bg-card) !important;
  border-color: var(--at-border) !important;
  border-radius: var(--at-radius-md) !important;
}

/* Notices */
.woocommerce-message {
  border-top-color: var(--at-primary) !important;
  background: var(--at-bg-card) !important;
  color: var(--at-text) !important;
}

/* Stars */
.star-rating span::before,
.star-rating::before {
  color: var(--at-star) !important;
}

/* Sidebar / Widgets */
.widget {
  background: var(--at-bg-card);
  border: 1px solid var(--at-border-light);
  border-radius: var(--at-radius-md);
  padding: 20px;
}
.widget-title,
.widgettitle {
  color: var(--at-text) !important;
}

/* ==========================================================================
   SCROLLBAR (Dark mode)
   ========================================================================== */

[data-theme="dark"] ::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
[data-theme="dark"] ::-webkit-scrollbar-track {
  background: var(--at-bg);
}
[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background: var(--at-border);
  border-radius: 4px;
}
[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background: var(--at-primary-dark);
}

/* ==========================================================================
   UTILITY CLASSES
   ========================================================================== */

.at-text-primary { color: var(--at-primary); }
.at-text-secondary { color: var(--at-text-secondary); }
.at-bg-primary { background-color: var(--at-primary); }
.at-bg-card { background-color: var(--at-bg-card); }
.at-rounded { border-radius: var(--at-radius-md); }
.at-shadow { box-shadow: var(--at-shadow-md); }

/* ==========================================================================
   FREE SHIPPING BANNER
   ========================================================================== */

.at-free-shipping-bar {
  background: linear-gradient(135deg, var(--at-primary), var(--at-primary-dark));
  color: var(--at-text-inverse);
  text-align: center;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.at-free-shipping-bar span {
  color: var(--at-secondary-light);
}



/* ==========================================================================
   SIDEBAR FILTRI SHOP — DESKTOP
   ========================================================================== */

@media (min-width: 769px) {
/* Shoptimizer sidebar wrapper - forza larghezza desktop */
body.woocommerce.left-woocommerce-sidebar .col-full .secondary-wrapper #secondary,
body.left-woocommerce-sidebar .col-full #secondary {
  width: 260px !important;
  min-width: 260px !important;
  max-width: 260px !important;
  padding-right: 25px !important;
  box-sizing: border-box !important;
}
body.woocommerce.left-woocommerce-sidebar .col-full .secondary-wrapper .content-area,
body.left-woocommerce-sidebar .col-full .content-area {
  width: calc(100% - 285px) !important;
  max-width: calc(100% - 285px) !important;
}
} /* end @media min-width 769px sidebar */

/* Widget card style */
#secondary .widget {
  background: var(--at-bg-card) !important;
  border: 1px solid var(--at-border-light) !important;
  border-radius: var(--at-radius-md) !important;
  padding: 18px !important;
  margin-bottom: 18px !important;
  box-shadow: var(--at-shadow-sm) !important;
  transition: box-shadow var(--at-transition);
  overflow: hidden !important;
}
#secondary .widget:hover {
  box-shadow: var(--at-shadow-md) !important;
}

/* Widget headings — gold underline like Alfa Accessori */
#secondary .widget h3,
#secondary .widget .widget-title,
#secondary .widgettitle,
#secondary .wc-block-heading,
#secondary .wp-block-heading {
  font-family: var(--at-font-body) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--at-text) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  padding-bottom: 10px !important;
  margin-bottom: 14px !important;
  margin-top: 0 !important;
  border-bottom: 2px solid var(--at-secondary) !important;
  line-height: 1.3 !important;
}

/* Category list */
#secondary .wc-block-product-categories-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
#secondary .wc-block-product-categories-list-item {
  padding: 7px 0 !important;
  border-bottom: 1px solid var(--at-border-light) !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}
#secondary .wc-block-product-categories-list-item:last-child {
  border-bottom: none !important;
}
#secondary .wc-block-product-categories-list-item a {
  color: var(--at-text) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}
#secondary .wc-block-product-categories-list-item a:hover {
  color: var(--at-primary) !important;
}
/* Subcategories indent */
#secondary .wc-block-product-categories-list .wc-block-product-categories-list {
  padding-left: 14px !important;
  margin-top: 4px !important;
}
#secondary .wc-block-product-categories-list-item__count {
  opacity: 0.5;
  font-size: 12px;
}

/* Price filter */
#secondary .wc-block-price-slider {
  padding: 0 !important;
}
#secondary .wc-block-price-slider__range-input-wrapper {
  margin: 10px 0 !important;
}
#secondary .wc-block-price-slider__range-input-progress {
  --range-color: var(--at-secondary) !important;
}
#secondary .wc-block-components-price-slider__range-input-wrapper .wc-block-components-price-slider__range-input-progress {
  background: var(--at-secondary) !important;
}
#secondary .wc-block-price-slider__amount,
#secondary .wc-block-components-price-slider__amount {
  font-size: 13px !important;
  color: var(--at-text-secondary) !important;
}
#secondary .wc-block-components-filter-submit-button,
#secondary .wc-block-price-filter .wp-block-button__link {
  background: var(--at-primary) !important;
  color: #fff !important;
  border-radius: var(--at-radius-sm) !important;
  border: none !important;
  padding: 6px 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}
#secondary .wc-block-components-filter-submit-button:hover {
  background: var(--at-primary-dark) !important;
}

/* Attribute filter checkboxes */
#secondary .wc-block-components-checkbox {
  padding: 5px 0 !important;
  margin: 0 !important;
}
#secondary .wc-block-components-checkbox__input[type="checkbox"] {
  accent-color: var(--at-primary) !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin-right: 8px !important;
  border-radius: 3px !important;
}
#secondary .wc-block-components-checkbox__label {
  color: var(--at-text) !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
}
#secondary .wc-filter-element-label-list-count {
  color: var(--at-text-muted) !important;
  font-size: 12px !important;
}

/* Hide close button on desktop */
.at-filter-close {
  display: none !important;
}
/* Small phones */
@media (max-width: 400px) {
  ul.products {
    gap: 8px !important;
  }
  ul.products li.product .woocommerce-loop-product__title {
    font-size: 11px !important;
  }
}

/* Desktop: overlay hidden */
@media (min-width: 769px) {
  .at-filter-overlay {
    display: none !important;
  }
}
