/* Foxfy + WooCommerce integration. The plugin owns commerce logic; this file owns presentation. */
.foxfy-woocommerce-page { background: #090a0d; }
.foxfy-woo-catalog { padding: 90px 0 130px; color: #14161a; background: #f6f5f1; }
.foxfy-woo-content { margin-top: 36px; }
.foxfy-commerce-inner { min-height: 72vh; padding: 150px 0 100px; color: #17191d; background: #f6f5f1; }
.foxfy-commerce-shell { padding: clamp(28px,4vw,55px); border: 1px solid #e2e2de; border-radius: 22px; background: #fff; box-shadow: 0 30px 80px rgba(24,26,31,.08); }
.woocommerce .woocommerce-breadcrumb { margin: 0 0 25px; color: #777d85; font-size: 12px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--orange-deep); }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 28px; color: #696f77; }
.woocommerce .woocommerce-ordering select { min-height: 44px; padding: 0 40px 0 13px; border: 1px solid #d7d9dd; border-radius: 9px; color: #24272c; background: #fff; }
.woocommerce ul.products { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; margin: 0 !important; clear: both; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; padding: 0 0 22px; overflow: hidden; border: 1px solid #dedfdf; border-radius: 18px; background: #fff; box-shadow: 0 15px 40px rgba(18,20,25,.055); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-4px); border-color: rgba(255,106,0,.48); box-shadow: 0 22px 52px rgba(18,20,25,.1); }
.woocommerce ul.products li.product a img { width: 100%; margin: 0 0 19px !important; aspect-ratio: 1.22 / 1; object-fit: cover; background: #ececea; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0 20px !important; color: #17191d; font-size: 19px !important; font-weight: 760; letter-spacing: -.025em; }
.woocommerce ul.products li.product .price { display: block; padding: 0 20px; color: var(--orange-deep) !important; font-size: 17px !important; font-weight: 850 !important; }
.woocommerce ul.products li.product .button { min-height: 44px; margin: 10px 20px 0 !important; padding: 0 17px !important; border-radius: 9px !important; color: #fff !important; background: linear-gradient(130deg,var(--orange),var(--orange-deep)) !important; font-size: 12px !important; }
.woocommerce span.onsale { top: 12px !important; left: 12px !important; min-width: auto !important; min-height: auto !important; padding: 8px 10px !important; border-radius: 999px !important; line-height: 1 !important; background: var(--orange) !important; }
.woocommerce nav.woocommerce-pagination { margin-top: 40px; }
.woocommerce nav.woocommerce-pagination ul { border: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li { border: 0 !important; margin: 0 3px !important; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid #d7d9dd; border-radius: 9px; background: #fff; }
.woocommerce nav.woocommerce-pagination ul li span.current { color: #fff; border-color: var(--orange); background: var(--orange); }
/* Single product */
.woocommerce div.product { color: #24272c; }
.woocommerce div.product div.images img { border-radius: 16px; }
.woocommerce div.product .product_title { max-width: none; margin-bottom: 16px; color: #15171b; font-size: clamp(35px,5vw,58px); line-height: 1.02; letter-spacing: -.045em; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--orange-deep); font-size: 25px; font-weight: 850; }
.woocommerce div.product .woocommerce-product-details__short-description { color: #5d636b; line-height: 1.75; }
.woocommerce div.product form.cart .button, .woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt { color: #fff !important; background: linear-gradient(130deg,var(--orange),var(--orange-deep)) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border-color: #ddd !important; background: #f6f5f1 !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #fff !important; }
.woocommerce .quantity .qty { min-height: 44px; border: 1px solid #d7d9dd; border-radius: 8px; }
.woocommerce-message, .woocommerce-info { border-top-color: var(--orange) !important; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--orange) !important; }
/* Cart / checkout / account */
.woocommerce table.shop_table { border-color: #dedfdf !important; border-radius: 12px !important; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 15px !important; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { min-height: 48px; padding: 10px 13px; border: 1px solid #d7d9dd; border-radius: 8px; background: #fff; }
.select2-container--default .select2-selection--single { height: 48px !important; border-color: #d7d9dd !important; border-radius: 8px !important; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 46px !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px !important; }
.woocommerce .cart_totals, .woocommerce-checkout-review-order, .woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content { padding: 22px; border: 1px solid #e0e1e1; border-radius: 14px; background: #fff; }
.woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
.woocommerce-MyAccount-navigation li a { display: block; padding: 11px 8px; border-bottom: 1px solid #eee; color: #25282d; }
.woocommerce-MyAccount-navigation li.is-active a { color: var(--orange-deep); font-weight: 800; }
.wc-block-cart, .wc-block-checkout { color: #23262b; }
@media (max-width: 980px) { .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px) { .woocommerce ul.products { grid-template-columns: 1fr; }.foxfy-commerce-inner { padding-top: 125px; }.foxfy-commerce-shell { padding: 20px; border-radius: 16px; }.woocommerce div.product .product_title { font-size: 38px; } }
