/*
Theme Name: Readdy Smoke WooCommerce
Author: Converted from Readdy Vite + React
Description: A classic WordPress/WooCommerce theme converted from the supplied Readdy Vite + React storefront. The Readdy visual design is reproduced in WordPress while WooCommerce powers products, cart, checkout, payments, accounts, orders and tracking.
Version: 1.0.2
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: readdy-smoke
Tags: e-commerce, woocommerce, custom-logo
*/

/* WordPress/WooCommerce integration styles layered over the original Readdy design. */
html { scroll-behavior: smooth; }
body.admin-bar .readdy-site-header .readdy-sticky { top: 32px; }
@media (max-width: 782px) { body.admin-bar .readdy-site-header .readdy-sticky { top: 46px; } }

.readdy-woo-shell { min-height: 60vh; }
.readdy-woo-shell .woocommerce { width: 100%; }
.readdy-woo-shell .woocommerce-breadcrumb { font-size: 12px; color: oklch(var(--foreground-500)); margin: 0 0 1rem; }
.readdy-woo-shell .woocommerce-breadcrumb a { color: oklch(var(--foreground-600)); }
.readdy-woo-shell .woocommerce-breadcrumb a:hover { color: oklch(var(--primary-500)); }
.readdy-woo-shell .woocommerce-products-header__title,
.readdy-page-title { font-family: var(--font-heading); font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 600; color: oklch(var(--foreground-900)); margin-bottom: .75rem; }

/* Product archive */
.woocommerce .woocommerce-result-count { color: oklch(var(--foreground-500)); font-size: .875rem; }
.woocommerce .woocommerce-ordering select { border: 1px solid oklch(var(--background-300)); border-radius: .375rem; background: white; padding: .65rem .85rem; font-size: .875rem; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; background: #fff; border: 1px solid oklch(var(--background-200)); border-radius: .5rem; overflow: hidden; padding: 0 0 1rem; transition: border-color .2s ease, transform .2s ease; }
.woocommerce ul.products li.product:hover { border-color: oklch(var(--primary-300)); transform: translateY(-1px); }
.woocommerce ul.products li.product a img { margin: 0; aspect-ratio: 3/4; object-fit: contain; background: oklch(var(--background-100)); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: .8rem .9rem 0; font-family: var(--font-body); font-size: .875rem; font-weight: 500; color: oklch(var(--foreground-800)); min-height: 3.1em; }
.woocommerce ul.products li.product .star-rating { margin: .4rem .9rem 0; font-size: .75rem; color: oklch(var(--accent-500)); }
.woocommerce ul.products li.product .price { margin: .5rem .9rem 0; color: oklch(var(--primary-600)); font-weight: 700; font-size: 1rem; }
.woocommerce ul.products li.product .price del { color: oklch(var(--foreground-400)); font-size: .75rem; opacity: 1; }
.woocommerce ul.products li.product .button { display: block; text-align: center; margin: .75rem .9rem 0; border-radius: .375rem; background: oklch(var(--primary-500)); color: #fff; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; padding: .75rem .65rem; }
.woocommerce ul.products li.product .button:hover { background: oklch(var(--primary-600)); color: #fff; }
.woocommerce span.onsale { min-height: auto; min-width: auto; line-height: 1; top: .5rem; left: .5rem; margin: 0; padding: .4rem .5rem; border-radius: .25rem; background: oklch(var(--primary-500)); font-size: .7rem; }

/* Single product */
.woocommerce div.product { background: #fff; border: 1px solid oklch(var(--background-200)); border-radius: .65rem; padding: clamp(1rem, 3vw, 2rem); }
.woocommerce div.product .product_title { font-family: var(--font-heading); font-size: clamp(1.8rem, 4vw, 2.6rem); font-weight: 600; color: oklch(var(--foreground-900)); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: oklch(var(--primary-600)); font-weight: 700; font-size: 1.5rem; }
.woocommerce div.product .woocommerce-product-gallery__wrapper { background: oklch(var(--background-100)); border-radius: .5rem; overflow: hidden; }
.woocommerce div.product .woocommerce-product-details__short-description { color: oklch(var(--foreground-600)); line-height: 1.7; }
.woocommerce div.product form.cart .quantity .qty { border: 1px solid oklch(var(--background-300)); border-radius: .375rem; padding: .65rem; }
.woocommerce div.product form.cart .button, .woocommerce button.button.alt, .woocommerce a.button.alt, .woocommerce input.button.alt { background: oklch(var(--primary-500)); color: #fff; border-radius: .375rem; padding: .85rem 1.25rem; }
.woocommerce div.product form.cart .button:hover, .woocommerce button.button.alt:hover, .woocommerce a.button.alt:hover, .woocommerce input.button.alt:hover { background: oklch(var(--primary-600)); color: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border-radius: .375rem .375rem 0 0; }
.woocommerce div.product .related.products { margin-top: 3rem; }
.woocommerce div.product .related.products > h2 { font-family: var(--font-heading); font-size: 1.5rem; margin-bottom: 1rem; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top-color: oklch(var(--primary-500)); background: #fff; border-radius: .5rem; box-shadow: none; }
.woocommerce-message::before, .woocommerce-info::before { color: oklch(var(--primary-500)); }

/* Cart */
.woocommerce-cart-form, .cart_totals, .woocommerce-checkout-review-order, .woocommerce-form-login, .woocommerce-form-register,
.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content { background: #fff; border: 1px solid oklch(var(--background-200)); border-radius: .65rem; padding: 1.25rem; }
.woocommerce table.shop_table { border-color: oklch(var(--background-200)); border-radius: .5rem; }
.woocommerce table.shop_table th { font-weight: 600; color: oklch(var(--foreground-800)); }
.woocommerce table.shop_table td { border-top-color: oklch(var(--background-200)); }
.woocommerce-cart table.cart img { width: 80px; border-radius: .35rem; }
.woocommerce .quantity .qty { border: 1px solid oklch(var(--background-300)); border-radius: .35rem; min-height: 42px; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button { border-radius: .375rem; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { background: oklch(var(--primary-500)); color: #fff; font-size: .9rem; text-transform: uppercase; letter-spacing: .05em; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover { background: oklch(var(--primary-600)); }

/* Checkout + payment gateways */
.woocommerce-checkout .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; width: 100%; }
.woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { float: none; width: auto; background: #fff; border: 1px solid oklch(var(--background-200)); border-radius: .65rem; padding: 1.25rem; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container--default .select2-selection--single { border: 1px solid oklch(var(--background-300)); border-radius: .375rem; background: #fff; min-height: 44px; padding: .65rem .75rem; }
.woocommerce form .form-row textarea { min-height: 110px; }
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment { background: oklch(var(--background-100)); border-radius: .5rem; }
#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box { background: #fff; }
.woocommerce-checkout #place_order { width: 100%; background: oklch(var(--primary-500)); padding: 1rem; text-transform: uppercase; letter-spacing: .05em; }
.woocommerce-checkout #place_order:hover { background: oklch(var(--primary-600)); }

/* My account */
.woocommerce-account .woocommerce-MyAccount-navigation { width: 26%; }
.woocommerce-account .woocommerce-MyAccount-content { width: 71%; }
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; }
.woocommerce-MyAccount-navigation li a { display: block; padding: .7rem .8rem; border-radius: .35rem; color: oklch(var(--foreground-700)); }
.woocommerce-MyAccount-navigation li.is-active a, .woocommerce-MyAccount-navigation li a:hover { background: oklch(var(--background-100)); color: oklch(var(--primary-500)); }

/* Tracking */
.readdy-tracking-card { max-width: 42rem; background: #fff; border: 1px solid oklch(var(--background-200)); border-radius: .65rem; padding: 1.5rem; }
.readdy-tracking-card .track_order { margin: 0; }
.readdy-tracking-card .form-row { float: none !important; width: 100% !important; margin-bottom: 1rem !important; }
.readdy-tracking-card .button { background: oklch(var(--primary-500)) !important; color: white !important; padding: .85rem 1.4rem !important; }

@media (max-width: 1100px) { .woocommerce ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 820px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
  .woocommerce-checkout .col2-set { grid-template-columns: 1fr; }
  .woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { float: none; width: 100%; margin-bottom: 1rem; }
}

/* WooCommerce Cart & Checkout Blocks (modern default pages). */
.wc-block-cart, .wc-block-checkout { color: oklch(var(--foreground-900)); }
.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar-layout .wc-block-components-sidebar,
.wc-block-cart-items,
.wc-block-components-order-summary,
.wc-block-checkout__contact-fields,
.wc-block-checkout__shipping-fields,
.wc-block-checkout__billing-fields,
.wc-block-checkout__payment-method { border-radius: .65rem; }
.wc-block-components-sidebar-layout .wc-block-components-sidebar,
.wc-block-components-order-summary { background: #fff; }
.wc-block-components-text-input input,
.wc-block-components-combobox .components-combobox-control__input,
.wc-block-components-address-form__address_2-toggle { border-radius: .375rem !important; }
.wc-block-components-button:not(.is-link) { border-radius: .375rem; }
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button { background: oklch(var(--primary-500)) !important; color: #fff !important; border: 0 !important; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover { background: oklch(var(--primary-600)) !important; }
.wc-block-components-product-name { color: oklch(var(--foreground-800)); font-weight: 600; }
.wc-block-components-product-price, .wc-block-components-totals-item__value { color: oklch(var(--foreground-900)); }
.wc-block-components-order-summary-item__image img, .wc-block-cart-item__image img { border-radius: .35rem; background: oklch(var(--background-100)); }

/* Header search dropdown parity with the original Readdy header. */
.readdy-search-dropdown { width: 320px; }
.readdy-search-dropdown form { box-shadow: 0 10px 25px rgba(0,0,0,.10); }

/* v1.0.2: exact Readdy structure for WooCommerce catalog + product detail. */
.readdy-product-page .woocommerce-notices-wrapper:empty,
.readdy-shop-page .woocommerce-notices-wrapper:empty { display: none; }
.readdy-product-page .readdy-product-description p { margin: 0; }
.readdy-product-page .readdy-qty-input { -moz-appearance: textfield; }
.readdy-product-page .readdy-qty-input::-webkit-outer-spin-button,
.readdy-product-page .readdy-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.readdy-product-page button,
.readdy-shop-page .readdy-loop-add { box-shadow: none; }
.readdy-shop-page .readdy-loop-add.added { background: #22c55e; }
.readdy-shop-page .readdy-loop-add.added::after { display: none; }
.readdy-shop-page a.added_to_cart { display: none; }
.readdy-product-page .price,
.readdy-shop-page .price { margin: 0; }
.readdy-product-page .readdy-native-add-to-cart form.cart { margin: 0; }
.readdy-product-page .readdy-native-add-to-cart .button { background: oklch(var(--primary-500)); color: #fff; border-radius: .375rem; }
.readdy-shop-page .navigation.pagination { display: flex; justify-content: center; }
.readdy-shop-page .nav-links { display: flex; gap: .5rem; }
.readdy-shop-page .page-numbers { min-width: 2.25rem; height: 2.25rem; padding: 0 .65rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid oklch(var(--background-200)); border-radius: .375rem; background: #fff; color: oklch(var(--foreground-700)); }
.readdy-shop-page .page-numbers.current { background: oklch(var(--primary-500)); border-color: oklch(var(--primary-500)); color: #fff; }
.readdy-product-page .readdy-product-thumb { flex: 0 0 auto; }
.readdy-product-page .readdy-qty-input { background: transparent; }
.readdy-shop-page .product-card .min-h-\[1rem\] { min-height: 1rem; }
@media (max-width: 767px) {
  .readdy-product-page .readdy-product-thumb-list { overflow-x: auto; padding-bottom: .25rem; }
}
