/* QSD Vapes — WordPress pages + WooCommerce (cart, checkout, My account, product pages) in the dark look */
.page{padding-top:40px}
.page__wrap{max-width:860px}
.page__title{font-size:clamp(28px,4vw,40px);margin-bottom:18px}
.entry{color:var(--text)}
.entry p,.entry li{color:#cfd7e3}
.entry a{color:var(--sky)}
.entry em{color:var(--muted)}
.instock-only{display:flex;align-items:center;gap:6px;font-size:14px;white-space:nowrap}
.price small{font-size:.6em;color:var(--muted);font-weight:500}
.pd__more{display:inline-block;margin-top:12px;margin-right:16px;font-size:14px}
.btn--sm{padding:8px 14px;font-size:14px}

/* ---------- general WooCommerce ---------- */
.qsd-woo .woocommerce, .woocommerce-page main{color:var(--text)}
.woocommerce a{color:var(--sky)}
.woocommerce h1,.woocommerce h2,.woocommerce h3{color:var(--text)}
.woocommerce-products-header__title,.product_title{font-family:var(--head)}
.woocommerce .woocommerce-breadcrumb{color:var(--muted);font-size:13px;margin-bottom:18px}
.woocommerce .woocommerce-breadcrumb a{color:var(--muted)}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice,
.wc-block-components-notice-banner{background:var(--card)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-top:3px solid var(--sky)!important;border-radius:10px}
.woocommerce-error,.wc-block-components-notice-banner.is-error{border-top-color:var(--err)!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--sky)}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce button.button.alt,.woocommerce a.button.alt,
.wc-block-components-button:not(.is-link),.wp-element-button{
  background:linear-gradient(135deg,var(--sky),var(--sky2))!important;color:#031018!important;border:0!important;border-radius:999px!important;
  font-weight:600!important;padding:12px 22px!important;font-family:var(--body)!important}
.woocommerce .button:hover,.wc-block-components-button:not(.is-link):hover{filter:brightness(1.08)}
.woocommerce .button:disabled,.woocommerce .button.disabled{opacity:.45!important}

/* inputs (classic + blocks) */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.woocommerce .quantity .qty,.select2-container--default .select2-selection--single,
.wc-block-components-text-input input,.wc-block-components-textarea,.wc-block-components-combobox .components-combobox-control__input,
.wc-block-components-select select,.wc-blocks-components-select__select,.wc-block-components-form .wc-block-components-text-input input{
  background:var(--card)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:10px!important}
.woocommerce form .form-row input.input-text:focus,.wc-block-components-text-input input:focus{border-color:var(--sky)!important;outline:none;box-shadow:0 0 0 1px var(--sky)!important}
.woocommerce form .form-row label,.wc-block-components-text-input label,.wc-blocks-components-select__label,.wc-block-components-combobox label{color:var(--muted)!important}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--text)!important;line-height:40px}
.select2-container--default .select2-selection--single{height:42px}
.select2-dropdown{background:var(--card2);color:var(--text);border-color:var(--line)}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--sky);color:#031018}
.select2-search--dropdown .select2-search__field{background:var(--card);color:var(--text);border-color:var(--line)}

/* ---------- block cart + checkout ---------- */
.wp-block-woocommerce-checkout,.wp-block-woocommerce-cart{color:var(--text)}
.wc-block-components-sidebar,.wc-block-checkout__sidebar,.wc-block-cart__sidebar{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px!important}
.wc-block-components-totals-wrapper,.wc-block-components-order-summary-item,.wc-block-components-panel{border-color:var(--line)!important}
.wc-block-components-radio-control__option,.wc-block-components-radio-control-accordion-option,.wc-block-components-shipping-rates-control__package{border-color:var(--line)!important}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted{box-shadow:inset 0 0 0 2px var(--sky)!important}
.wc-block-components-radio-control__input,.wc-block-components-checkbox__input[type=checkbox]{background:var(--card)!important;border-color:var(--muted)!important}
.wc-block-components-radio-control__input:checked::before{background:var(--sky)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:var(--sky)!important}
.wc-block-components-checkout-step__title,.wc-block-components-title{color:var(--text)!important;font-family:var(--head)!important}
.wc-block-components-checkout-step__description,.wc-block-components-formatted-money-amount,.wc-block-components-product-metadata{color:inherit}
.wc-block-components-order-summary-item__quantity{background:var(--sky)!important;color:#031018!important;border:0!important;box-shadow:none!important}
.wc-block-components-order-summary-item__image img{background:var(--card2);border-radius:8px}
.wc-block-components-totals-item__label,.wc-block-components-totals-item__value{color:var(--text)}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--head);font-size:22px}
.wc-block-components-address-card{border-color:var(--line)!important;background:var(--card)}
.wc-block-cart-items,.wc-block-cart-items td,.wc-block-cart-items th{border-color:var(--line)!important}
.wc-block-components-quantity-selector{border-color:var(--line)!important;background:var(--card)}
.wc-block-components-quantity-selector input{color:var(--text)!important;background:transparent!important}
.wc-block-components-quantity-selector__button{color:var(--text)!important}
.wc-block-components-product-name{color:var(--text)!important;font-weight:600}
.wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button{color:var(--muted)!important}
.wc-block-components-validation-error{color:var(--err)}
.wc-block-checkout__terms,.wc-block-components-checkbox__label{color:var(--muted)}

/* ---------- classic cart / checkout tables ---------- */
.woocommerce table.shop_table{border-color:var(--line);border-radius:12px;background:var(--card)}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--line)!important;color:var(--text)}
.woocommerce-checkout #payment,.woocommerce-checkout #payment div.payment_box{background:var(--card)!important;color:var(--text)}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--card)!important}
.woocommerce-checkout #payment ul.payment_methods{border-color:var(--line)}

/* ---------- My account ---------- */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start}
.woocommerce-account:not(.logged-in) .woocommerce{display:block}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.woocommerce-MyAccount-navigation li a{display:block;padding:12px 16px;color:var(--text)!important;border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-navigation li:last-child a{border-bottom:0}
.woocommerce-MyAccount-navigation li.is-active a{background:rgba(76,195,245,.12);color:var(--sky)!important;font-weight:600}
.woocommerce-account .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.woocommerce-account .u-columns .col-1,.woocommerce-account .u-columns .col-2{float:none;width:auto}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon,.woocommerce form.lost_reset_password{
  background:var(--card);border:1px solid var(--line)!important;border-radius:14px;padding:22px!important;margin:0!important}
.woocommerce-orders-table .woocommerce-orders-table__cell-order-status{font-weight:600}
mark.order-status,.woocommerce mark{background:rgba(76,195,245,.15);color:var(--sky);padding:2px 6px;border-radius:5px}
.qsd-tracking{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px}
.woocommerce-Address{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px}

/* ---------- product pages + shop archive ---------- */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px!important;display:flex;flex-direction:column}
.woocommerce ul.products li.product a img{background:radial-gradient(circle at 50% 40%,#1c2636,#0b0f15);border-radius:10px;aspect-ratio:1;object-fit:contain}
.woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--text);font-family:var(--head);font-size:16px}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--text)!important;font-family:var(--head);font-weight:800}
.woocommerce ul.products li.product .button{margin-top:auto}
.woocommerce div.product div.images img{background:radial-gradient(circle at 50% 40%,#1c2636,#0b0f15);border-radius:14px}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--card);border-color:var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--card2);border-bottom-color:var(--card2)}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--text)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product form.cart .variations select{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px}
.woocommerce div.product form.cart .variations label{color:var(--muted)}
.woocommerce div.product .stock{color:var(--ok)} .woocommerce div.product .out-of-stock{color:var(--err)}
.woocommerce span.onsale{background:var(--gold);color:#1a1400}
.woocommerce .quantity .qty{width:70px;padding:10px}
.woocommerce nav.woocommerce-pagination ul,.woocommerce nav.woocommerce-pagination ul li{border-color:var(--line)}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{color:var(--text)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--sky);color:#031018}
.qsd-wa-ask{margin-top:10px}
.woocommerce .woocommerce-ordering select{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:8px}

@media (max-width:760px){
  .woocommerce-account .woocommerce,.woocommerce-account .u-columns{grid-template-columns:1fr}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:10px}
}
.woocommerce-checkout .page__wrap,.woocommerce-cart .page__wrap,.woocommerce-account .page__wrap{max-width:1200px}
