/*
Theme Name: Deald
Theme URI: https://deald.co.uk
Author: Deald
Description: Custom WooCommerce theme for Deald — premium shoes & luggage. Built from the approved design mockups (Plus Jakarta Sans / Space Grotesk, navy & gold palette).
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.6
Text Domain: deald
*/

/* -----------------------------------------------------------
   This file intentionally holds the theme header comment
   (required by WordPress) plus small overrides. The bulk of
   the visual design is Tailwind utility classes, loaded via
   the Tailwind CDN + config in functions.php, so this theme
   matches the original design mockups exactly without a
   separate build/compile step.
------------------------------------------------------------ */

.text-balance {
  text-wrap: balance;
}

.hide-scrollbar::-webkit-scrollbar,
.scrollbar-none::-webkit-scrollbar {
  display: none;
}

.hide-scrollbar,
.scrollbar-none {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.hero-gradient {
  background: linear-gradient(90deg, rgba(3, 17, 31, 0.95) 0%, rgba(6, 27, 46, 0.85) 45%, rgba(6, 27, 46, 0.3) 100%);
}

@media (max-width: 768px) {
  .hero-gradient {
    background: linear-gradient(180deg, rgba(3, 17, 31, 0.92) 0%, rgba(6, 27, 46, 0.85) 100%);
  }
}

/* -----------------------------------------------------------
   WooCommerce restyle layer.
   We disable WooCommerce's default stylesheet (functions.php)
   and restyle its native markup (variations, price, stars,
   quantity input, notices, tabs) with the brand's look instead
   of fighting/replacing WooCommerce's cart & checkout logic.
------------------------------------------------------------ */

.woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 640px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1280px) {
  .woocommerce ul.products.columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.woocommerce ul.products li.product { margin: 0 !important; }

.woocommerce span.onsale {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 10;
  background: #061B2E;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  min-height: 0; min-width: 0; line-height: 1;
}

.woocommerce div.star-rating { color: #F5B82E; font-size: 13px; }
.woocommerce div.star-rating::before { color: #E2E8F0; }
.woocommerce div.star-rating span::before { color: #F5B82E; }

.woocommerce .price { color: #061B2E; font-weight: 800; }
.woocommerce .price ins { text-decoration: none; }
.woocommerce .price del { color: #94A3B8; font-weight: 500; opacity: 0.8; }

/* Quantity input */
.woocommerce .quantity .qty {
  width: 3.5rem;
  border: 1px solid #E5E7EB;
  border-radius: 0.5rem;
  padding: 0.5rem;
  text-align: center;
  font-size: 0.875rem;
}

/* Buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-Button {
  background: #061B2E !important;
  color: #fff !important;
  border-radius: 0.5rem !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
  padding: 0.75rem 1.25rem !important;
  border: none !important;
  text-transform: none !important;
  transition: background-color 0.2s ease !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  background: #F5B82E !important;
  color: #03111F !important;
}
.woocommerce a.added_to_cart { display: inline-block; margin-top: 0.5rem; font-size: 0.75rem; font-weight: 600; color: #061B2E; text-decoration: underline; }

/* Forms (variations, checkout, my account) */
.woocommerce table.variations td,
.woocommerce table.variations th { padding: 0.4rem 0; border: none; }
.woocommerce table.variations select {
  border: 1px solid #E5E7EB;
  border-radius: 0.5rem;
  padding: 0.55rem 0.75rem;
  font-size: 0.85rem;
  background: #fff;
  min-width: 160px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-checkout select,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"] {
  border: 1px solid #E2E8F0 !important;
  border-radius: 0.5rem !important;
  padding: 0.6rem 0.85rem !important;
  font-size: 0.875rem !important;
  width: 100%;
}
.woocommerce-checkout #payment { background: #F8FAFC !important; border-radius: 0.75rem; border: 1px solid #E5E7EB; }
.woocommerce-checkout #payment ul.payment_methods { border: none !important; padding: 1rem !important; }
.woocommerce-checkout #payment div.payment_box { background: #EEF2F7 !important; border-radius: 0.5rem; }

.woocommerce-message, .woocommerce-info {
  border-top-color: #061B2E !important;
  background: #F8FAFC;
  border-radius: 0.5rem;
}
.woocommerce-message::before, .woocommerce-info::before { color: #061B2E !important; }
.woocommerce-error { border-top-color: #DC2626 !important; background: #FEF2F2; border-radius: 0.5rem; }

/* Tabs (single product) */
.woocommerce-tabs ul.tabs { border-bottom: 1px solid #E5E7EB; padding: 0; margin: 0 0 1.5rem; display: flex; gap: 2rem; list-style: none; overflow-x: auto; }
.woocommerce-tabs ul.tabs li { margin: 0; padding: 0; }
.woocommerce-tabs ul.tabs li a { font-size: 0.875rem; font-weight: 600; color: #64748B; padding-bottom: 0.75rem; display: inline-block; white-space: nowrap; }
.woocommerce-tabs ul.tabs li.active a { color: #061B2E; border-bottom: 2px solid #061B2E; }
.woocommerce-tabs .panel { font-size: 0.9rem; line-height: 1.7; color: #334155; max-width: 56rem; }

/* Cart table */
.woocommerce table.shop_table { border: none !important; border-collapse: collapse; width: 100%; }
.woocommerce table.shop_table th { text-align: left; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.05em; color: #64748B; border-bottom: 1px solid #E5E7EB !important; padding: 0.75rem 0.5rem; }
.woocommerce table.shop_table td { border-bottom: 1px solid #F1F5F9 !important; padding: 1rem 0.5rem; vertical-align: middle; }
.woocommerce-cart-form img { border-radius: 0.5rem; border: 1px solid #E5E7EB; }

/* Mini cart / cart fragments count badge handled inline in header.php */
