/* ==========================================================================
   QUEBIC LABS â€” WooCommerce Overrides
   Version: 2.1.0
   Description: Styles WooCommerce output classes to match original mockups.
   Depends on: style.css
   ========================================================================== */

/* ==========================================================================
   SHOP / ARCHIVE â€” archive-product.php classes
   ql- prefixed classes from the custom template
   ========================================================================== */

/* Hero */
.ql-shop-hero {
    position: relative;
    padding: 60px 60px 40px;
    text-align: center;
    background: url('../images/shop-bg.jpg') center center / cover no-repeat;
    border-bottom: 1px solid var(--border);
    overflow: hidden;
}
.ql-shop-hero__overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(8,8,8,0.55) 0%, rgba(8,8,8,0.85) 100%);
}
.ql-shop-hero__content { position: relative; z-index: 1; }
.ql-shop-hero__title {
    font-size: 2.6rem; font-weight: 900; letter-spacing: -0.02em;
    color: var(--text); margin-bottom: 14px;
}
.ql-shop-hero__title span {
    color: var(--neon-cyan); text-shadow: 0 0 30px rgba(0,245,255,0.4);
}
.ql-shop-hero__subtitle {
    font-size: 0.9rem; color: var(--text2); line-height: 1.7;
    max-width: 600px; margin: 0 auto;
}

/* Filter Bar */
.ql-filter-bar {
    padding: 24px 60px; background: var(--bg2);
    border-bottom: 1px solid var(--border);
}
.ql-filter-bar__inner {
    display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
    max-width: 1400px; margin: 0 auto;
}
.ql-filter-bar__tabs {
    display: flex; gap: 8px; flex-wrap: wrap; flex: 1;
}
.ql-cat-tab {
    background: var(--bg3); border: 1px solid var(--border2);
    border-radius: 50px; padding: 7px 18px;
    font-size: 0.7rem; letter-spacing: 0.14em; text-transform: uppercase;
    color: var(--text2); cursor: pointer; transition: all 0.2s;
    text-decoration: none;
}
.ql-cat-tab:hover,
.ql-cat-tab.active {
    background: rgba(0,245,255,0.1); border-color: var(--neon-cyan);
    color: var(--neon-cyan);
}

/* Search */
.ql-product-search { display: flex; align-items: center; gap: 0; }
.ql-product-search__input {
    background: var(--bg3); border: 1px solid var(--border2);
    border-right: none; border-radius: 6px 0 0 6px;
    padding: 8px 16px; color: var(--text); font-size: 0.82rem;
    outline: none; width: 220px; transition: border-color 0.2s;
}
.ql-product-search__input:focus { border-color: var(--neon-cyan); }
.ql-product-search__btn {
    background: var(--bg3); border: 1px solid var(--border2);
    border-left: none; border-radius: 0 6px 6px 0;
    padding: 8px 12px; color: var(--text2); cursor: pointer;
    transition: color 0.2s;
}
.ql-product-search__btn:hover { color: var(--neon-cyan); }

/* Products Section */
.ql-products-section {
    background: var(--bg2); padding: 40px 60px 80px;
    max-width: 1400px; margin: 0 auto;
}
.ql-products-section ul.products,
.ql-products-section .products {
    display: grid; grid-template-columns: repeat(3, 1fr);
    gap: 20px; list-style: none; padding: 0; margin: 0;
}

/* Product Card */
.ql-product-card {
    background: var(--bg3); border: 1px solid var(--border2);
    border-radius: var(--radius); overflow: hidden;
    transition: transform 0.2s, border-color 0.2s;
    display: flex; flex-direction: column;
}
.ql-product-card:hover {
    transform: translateY(-3px); border-color: rgba(0,245,255,0.3);
}
.ql-product-card__image {
    display: block; height: 200px; background: var(--bg4);
    position: relative; overflow: hidden;
    border-bottom: 1px solid var(--border);
}
.ql-product-card__image img {
    width: 100%; height: 100%; object-fit: cover; object-position: center 20%;
    transition: transform 0.45s ease;
    filter: brightness(0.88) contrast(1.08) saturate(1.15);
}
.ql-product-card:hover .ql-product-card__image img { transform: scale(1.06); }
.ql-product-card__badge {
    position: absolute; top: 12px; left: 12px; z-index: 2;
    background: rgba(0,245,255,0.12); border: 1px solid rgba(0,245,255,0.3);
    border-radius: 4px; font-size: 0.6rem; letter-spacing: 0.12em;
    text-transform: uppercase; color: var(--neon-cyan); padding: 3px 8px;
}
.ql-product-card__stock-badge {
    position: absolute; top: 12px; right: 12px; z-index: 2;
    border-radius: 4px; font-size: 0.58rem; letter-spacing: 0.1em;
    text-transform: uppercase; padding: 3px 8px; font-weight: 700;
}
.ql-product-card__stock-badge--out {
    background: rgba(191,0,255,0.12); border: 1px solid rgba(191,0,255,0.3);
    color: var(--neon-purple);
}
.ql-product-card__stock-badge--low {
    background: rgba(255,107,0,0.12); border: 1px solid rgba(255,107,0,0.3);
    color: var(--neon-orange);
}
.ql-product-card__body {
    padding: 18px 18px 20px; flex: 1; display: flex; flex-direction: column;
}
.ql-product-card__category {
    font-size: 0.62rem; letter-spacing: 0.16em; text-transform: uppercase;
    color: var(--text3); margin-bottom: 6px;
}
.ql-product-card__name {
    font-size: 1rem; font-weight: 700; color: var(--text);
    text-decoration: none; margin-bottom: 5px; display: block;
    transition: color 0.2s;
}
.ql-product-card__name:hover { color: var(--neon-cyan); }
.ql-product-card__excerpt {
    font-size: 0.76rem; color: var(--text3); line-height: 1.6;
    margin-bottom: auto;
}
.ql-product-card__purity {
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 0.68rem; letter-spacing: 0.1em; color: var(--neon-green);
    margin: 8px 0; text-transform: uppercase; font-weight: 600;
}
.ql-product-card__purity svg { stroke: var(--neon-green); }
.ql-product-card__footer {
    display: flex; align-items: center; justify-content: space-between;
    margin-top: 14px; padding-top: 14px;
    border-top: 1px solid var(--border); flex-wrap: wrap; gap: 10px;
}
.ql-product-card__price {
    font-size: 1.3rem; font-weight: 900; color: var(--neon-cyan);
    text-shadow: 0 0 12px rgba(0,245,255,0.3);
}
.ql-product-card__price del {
    color: var(--text3); font-size: 0.85rem; font-weight: 400;
}
.ql-product-card__price ins { text-decoration: none; }

/* Buttons */
.ql-btn {
    font-size: 0.7rem; letter-spacing: 0.14em; text-transform: uppercase;
    font-weight: 800; border: none; border-radius: 5px; padding: 10px 20px;
    cursor: pointer; transition: box-shadow 0.2s, background 0.2s;
    text-decoration: none; white-space: nowrap; display: inline-block;
}
.ql-btn--primary {
    background: var(--neon-cyan); color: #000;
}
.ql-btn--primary:hover {
    box-shadow: 0 0 16px rgba(0,245,255,0.5); color: #000;
}
.ql-btn--outline {
    background: transparent; color: var(--neon-cyan);
    border: 1px solid var(--neon-cyan);
}
.ql-btn--outline:hover {
    background: rgba(0,245,255,0.1); box-shadow: 0 0 12px rgba(0,245,255,0.3);
}

/* No products */
.ql-no-products { text-align: center; padding: 80px 20px; color: var(--text3); }
.ql-no-products h2 { font-size: 1.4rem; color: var(--text); margin-bottom: 12px; }
.ql-no-products p { margin-bottom: 24px; }

/* Disclaimer */
.ql-disclaimer {
    background: var(--bg); border-top: 1px solid var(--border); padding: 30px 60px;
}
.ql-disclaimer__inner {
    max-width: 900px; margin: 0 auto;
    display: flex; align-items: flex-start; gap: 14px;
}
.ql-disclaimer__inner svg { flex-shrink: 0; stroke: var(--neon-orange); margin-top: 2px; }
.ql-disclaimer__inner p { font-size: 0.78rem; color: var(--text3); line-height: 1.7; }
.ql-disclaimer__inner a { color: var(--neon-cyan); text-decoration: underline; }

/* ==========================================================================
   SINGLE PRODUCT â€” single-product.php classes
   ========================================================================== */

/* Breadcrumbs */
.ql-breadcrumbs {
    background: var(--bg2); padding: 16px 60px;
    border-bottom: 1px solid var(--border);
}
.ql-breadcrumbs__inner {
    max-width: 1200px; margin: 0 auto;
    font-size: 0.72rem; letter-spacing: 0.1em; color: var(--text3);
}
.ql-breadcrumbs__inner a {
    color: var(--text2); text-decoration: none; transition: color 0.2s;
}
.ql-breadcrumbs__inner a:hover { color: var(--neon-cyan); }
.ql-breadcrumbs__sep { margin: 0 10px; color: var(--text3); }
.ql-breadcrumbs__current { color: var(--neon-cyan); }

/* Two-Column Layout */
.ql-product-detail {
    max-width: 1200px; margin: 0 auto; padding: 48px 60px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start;
}

/* Image */
.ql-product-detail__image-wrap {
    position: relative; background: var(--bg3);
    border: 1px solid var(--border2); border-radius: var(--radius); overflow: hidden;
}
.ql-product-detail__image {
    width: 100%; height: auto; display: block;
    filter: brightness(0.9) contrast(1.05) saturate(1.1);
}
.ql-product-detail__stock-overlay {
    position: absolute; top: 16px; right: 16px;
    background: rgba(191,0,255,0.12); border: 1px solid rgba(191,0,255,0.3);
    color: var(--neon-purple); font-size: 0.68rem; letter-spacing: 0.1em;
    text-transform: uppercase; font-weight: 700; padding: 5px 12px; border-radius: 4px;
}
.ql-product-detail__gallery { display: flex; gap: 10px; margin-top: 12px; }
.ql-product-detail__gallery-thumb {
    width: 70px; height: 70px; object-fit: cover;
    border: 1px solid var(--border2); border-radius: 6px;
    cursor: pointer; transition: border-color 0.2s;
}
.ql-product-detail__gallery-thumb:hover { border-color: var(--neon-cyan); }

/* Right column */
.ql-product-detail__title {
    font-size: 2rem; font-weight: 900; color: var(--text);
    margin-bottom: 10px; letter-spacing: -0.01em;
}
.ql-product-detail__cat-badge {
    display: inline-block; background: rgba(0,245,255,0.1);
    border: 1px solid rgba(0,245,255,0.25); border-radius: 50px;
    padding: 4px 14px; font-size: 0.62rem; letter-spacing: 0.16em;
    text-transform: uppercase; color: var(--neon-cyan); margin-bottom: 16px;
}
.ql-product-detail__price {
    font-size: 2rem; font-weight: 900; color: var(--neon-cyan);
    text-shadow: 0 0 18px rgba(0,245,255,0.3); margin-bottom: 16px;
}
.ql-product-detail__price del { color: var(--text3); font-size: 1.1rem; font-weight: 400; }
.ql-product-detail__price ins { text-decoration: none; }
.ql-product-detail__short-desc {
    font-size: 0.88rem; color: var(--text2); line-height: 1.7; margin-bottom: 20px;
}
.ql-product-detail__purity {
    display: inline-flex; align-items: center; gap: 6px;
    background: rgba(57,255,20,0.08); border: 1px solid rgba(57,255,20,0.2);
    border-radius: 6px; padding: 8px 14px; font-size: 0.72rem;
    letter-spacing: 0.08em; color: var(--neon-green); font-weight: 600;
    margin-bottom: 20px;
}
.ql-product-detail__purity svg { stroke: var(--neon-green); }

/* Compound Data */
.ql-product-detail__compound-data {
    background: var(--bg3); border: 1px solid var(--border2);
    border-radius: var(--radius); padding: 18px 20px; margin-bottom: 20px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 14px;
}
.ql-compound-field__label {
    display: block; font-size: 0.6rem; letter-spacing: 0.16em;
    text-transform: uppercase; color: var(--text3); margin-bottom: 4px;
}
.ql-compound-field__value {
    display: block; font-size: 0.85rem; color: var(--text); font-weight: 600;
}
.ql-compound-field__value--mono {
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.75rem; word-break: break-all;
}
.ql-compound-field--full { grid-column: 1 / -1; }

/* Add to Cart */
.ql-product-detail__add-to-cart { margin-bottom: 20px; }
.ql-product-detail__add-to-cart .quantity {
    display: inline-flex; align-items: center; margin-right: 12px;
}
.ql-product-detail__add-to-cart .quantity input {
    background: var(--bg4); border: 1px solid var(--border2);
    color: var(--text); width: 56px; text-align: center;
    padding: 10px; border-radius: 6px; font-size: 0.9rem; font-weight: 700;
}
.ql-product-detail__add-to-cart .single_add_to_cart_button {
    background: var(--neon-cyan); color: #000; font-weight: 800;
    font-size: 0.78rem; letter-spacing: 0.14em; text-transform: uppercase;
    border: none; border-radius: 6px; padding: 14px 32px;
    cursor: pointer; transition: box-shadow 0.2s;
}
.ql-product-detail__add-to-cart .single_add_to_cart_button:hover {
    box-shadow: 0 0 20px rgba(0,245,255,0.5);
}

/* Tabs */
.ql-product-tabs { max-width: 1200px; margin: 0 auto; padding: 0 60px 60px; }
.ql-product-tabs__nav {
    display: flex; gap: 0; border-bottom: 1px solid var(--border2); flex-wrap: wrap;
}
.ql-product-tabs__btn {
    background: none; border: none; border-bottom: 2px solid transparent;
    color: var(--text2); font-size: 0.74rem; letter-spacing: 0.14em;
    text-transform: uppercase; font-weight: 600; padding: 14px 24px;
    cursor: pointer; transition: color 0.2s, border-color 0.2s;
}
.ql-product-tabs__btn:hover { color: var(--text); }
.ql-product-tabs__btn.active {
    color: var(--neon-cyan); border-bottom-color: var(--neon-cyan);
}
.ql-product-tabs__panel { display: none; padding: 30px 0; }
.ql-product-tabs__panel.active { display: block; }
.ql-tab-content { font-size: 0.88rem; color: var(--text2); line-height: 1.8; }
.ql-tab-content h4 { color: var(--text); font-size: 1rem; margin: 24px 0 12px; }
.ql-tab-content h4:first-child { margin-top: 0; }
.ql-tab-content ul { padding-left: 20px; margin-bottom: 16px; }
.ql-tab-content li { margin-bottom: 8px; }
.ql-tab-content strong { color: var(--text); }

/* Research Banner */
.ql-research-banner {
    background: rgba(255,107,0,0.06);
    border-top: 1px solid rgba(255,107,0,0.15);
    border-bottom: 1px solid rgba(255,107,0,0.15);
    padding: 18px 60px;
}
.ql-research-banner__inner {
    max-width: 1200px; margin: 0 auto;
    display: flex; align-items: center; gap: 12px;
    font-size: 0.78rem; color: var(--text2);
}
.ql-research-banner__inner svg { flex-shrink: 0; stroke: var(--neon-orange); }
.ql-research-banner__inner strong { color: var(--neon-orange); }

/* Related Products */
.ql-related-products { max-width: 1200px; margin: 0 auto; padding: 40px 60px 80px; }
.ql-related-products__title {
    font-size: 1.4rem; font-weight: 800; color: var(--text); margin-bottom: 24px;
}
.ql-related-products .products {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 20px; list-style: none; padding: 0;
}

/* ==========================================================================
   CART PAGE
   ========================================================================== */

.woocommerce-cart .woocommerce {
    max-width: 1100px; margin: 0 auto; padding: 20px 40px 80px;
}
.woocommerce table.shop_table {
    width: 100%; border-collapse: collapse;
    background: var(--bg3); border: 1px solid var(--border2);
    border-radius: var(--radius); overflow: hidden;
}
.woocommerce table.shop_table thead th {
    font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase;
    color: var(--neon-cyan); padding: 14px 16px; text-align: left;
    border-bottom: 1px solid var(--border); background: var(--bg4);
    font-weight: 700;
}
.woocommerce table.shop_table td {
    padding: 16px; border-bottom: 1px solid var(--border);
    color: var(--text2); font-size: 0.85rem; vertical-align: middle;
}
.woocommerce table.shop_table .product-name a {
    color: var(--text); font-weight: 600; text-decoration: none;
    transition: color 0.2s;
}
.woocommerce table.shop_table .product-name a:hover { color: var(--neon-cyan); }
.woocommerce table.shop_table .product-price .amount,
.woocommerce table.shop_table .product-subtotal .amount {
    color: var(--neon-cyan); font-weight: 700;
}
.woocommerce table.shop_table .product-remove a {
    color: var(--text3); font-size: 1.2rem; transition: color 0.2s;
    text-decoration: none;
}
.woocommerce table.shop_table .product-remove a:hover { color: #ff4f4f; }
.woocommerce table.shop_table .product-thumbnail img {
    width: 60px; height: 60px; object-fit: cover; border-radius: 6px;
    border: 1px solid var(--border2);
}
.woocommerce table.shop_table input.qty {
    background: var(--bg4); border: 1px solid var(--border2);
    color: var(--text); width: 56px; text-align: center;
    padding: 8px; border-radius: 6px; font-size: 0.88rem; font-weight: 700;
}

/* Cart totals */
.woocommerce .cart_totals {
    background: var(--bg3); border: 1px solid var(--border2);
    border-top: 2px solid var(--neon-cyan); border-radius: 10px;
    padding: 28px 30px; margin-top: 32px;
}
.woocommerce .cart_totals h2 {
    font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase;
    color: var(--neon-cyan); margin-bottom: 20px; padding-bottom: 12px;
    border-bottom: 1px solid var(--border);
}
.woocommerce .cart_totals table {
    width: 100%; background: transparent; border: none;
}
.woocommerce .cart_totals table th {
    font-size: 0.78rem; color: var(--text2); font-weight: 600;
    background: transparent; border-bottom: 1px solid var(--border);
    padding: 12px 0;
}
.woocommerce .cart_totals table td {
    font-size: 0.88rem; color: var(--text); font-weight: 700;
    border-bottom: 1px solid var(--border); padding: 12px 0;
    text-align: right;
}
.woocommerce .cart_totals .order-total .amount {
    color: var(--neon-cyan); font-size: 1.3rem; font-weight: 900;
    text-shadow: 0 0 14px rgba(0,245,255,0.3);
}

/* ==========================================================================
   CHECKOUT PAGE
   ========================================================================== */

.woocommerce-checkout .woocommerce {
    max-width: 1100px; margin: 0 auto; padding: 20px 40px 80px;
}
.woocommerce-checkout .col2-set {
    display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 48px !important;
    max-width: 100% !important;
    width: 100% !important;
}
@media (max-width: 900px) {
    .woocommerce-checkout .col2-set {
        grid-template-columns: 1fr !important;
    }
}

/* Hide coupon on checkout â€” keep it on cart only */
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .checkout_coupon {
    display: none !important;
}

/* Hide Important Notice on checkout or make it tiny at bottom */
.woocommerce-checkout .woocommerce-info:first-child,
.woocommerce-checkout > .woocommerce > .woocommerce-info {
    font-size: 0.6rem !important;
    color: #555 !important;
    background: transparent !important;
    border: none !important;
    padding: 6px 0 !important;
    margin: 0 !important;
}

/* Order review â€” make it full width */
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading {
    width: 100% !important;
    max-width: 100% !important;
}

/* Payment box â€” full width with padding */
.woocommerce-checkout #payment {
    max-width: 100% !important;
    width: 100% !important;
    padding: 28px !important;
    overflow: visible !important;
}

/* Credit card fields â€” force full width */
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment .wc-credit-card-form,
.woocommerce-checkout #payment .wc-payment-form,
.woocommerce-checkout #payment fieldset {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
}

/* GoDaddy payment iframe container */
.wc-godaddy-payments-hosted-fields-container,
.wc-godaddy-payments-hosted-fields,
#poynt-collect-v2,
.poynt-collect-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
}

/* Hide Google Pay express button on checkout */
.woocommerce-checkout #wc-godaddy-payments-express-checkout,
.woocommerce-checkout .wc-godaddy-payments-express-checkout,
.woocommerce-checkout [id*="express-checkout"],
.woocommerce-checkout [class*="express-checkout"],
.woocommerce-checkout .gpay-button-container,
.woocommerce-checkout #wc-godaddy-payments-apple-pay,
.woocommerce-checkout .wc-godaddy-payments-apple-pay-wrapper {
    display: none !important;
}

/* Style around the iframe to minimize white contrast */
.woocommerce-checkout #payment .payment_box {
    background: #1a1a1a !important;
    padding: 16px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
}

/* Make the notice truly at the bottom */
.quebic-checkout-disclaimer {
    order: 999 !important;
}
.woocommerce-checkout h3 {
    font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase;
    color: var(--neon-cyan); font-weight: 700; margin-bottom: 20px;
    padding-bottom: 12px; border-bottom: 1px solid var(--border);
}
.woocommerce form.checkout .form-row {
    margin-bottom: 16px;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    float: none !important;
}
.woocommerce form.checkout .form-row label {
    display: block !important; font-size: 0.72rem; letter-spacing: 0.1em;
    text-transform: uppercase; color: #ffffff !important;
    margin-bottom: 8px; font-weight: 600;
    width: 100% !important;
}
.woocommerce form.checkout .form-row .input-text,
.woocommerce form.checkout .form-row select,
.woocommerce form.checkout .form-row textarea,
.woocommerce form.checkout .form-row .woocommerce-input-wrapper {
    width: 100% !important;
    display: block !important;
}
.woocommerce form.checkout .form-row .woocommerce-input-wrapper input,
.woocommerce form.checkout .form-row .woocommerce-input-wrapper select {
    width: 100% !important;
}

/* Hide duplicate Billing Details heading */
.woocommerce-checkout .woocommerce-billing-fields > h3 {
    display: none !important;
}

/* Hide breadcrumb on checkout */
.woocommerce-checkout .woocommerce-breadcrumb,
.woocommerce-checkout nav.woocommerce-breadcrumb {
    display: none !important;
}

/* Fix apartment field alignment */
.woocommerce-checkout #billing_address_2_field,
.woocommerce-checkout #shipping_address_2_field {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin-left: 0 !important;
    padding: 0 !important;
}
.woocommerce-checkout #billing_address_2_field .input-text,
.woocommerce-checkout #shipping_address_2_field .input-text,
.woocommerce-checkout #billing_address_2,
.woocommerce-checkout #shipping_address_2 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
}

/* Make all checkout fields consistent width */
.woocommerce form.checkout .form-row-first,
.woocommerce form.checkout .form-row-last {
    float: none !important;
    width: 100% !important;
}

/* All form labels white */
.woocommerce-checkout label,
.woocommerce-checkout .form-row label,
.woocommerce-checkout h3,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3 {
    color: #ffffff !important;
}
.woocommerce form.checkout .form-row input.input-text,
.woocommerce form.checkout .form-row select,
.woocommerce form.checkout .form-row textarea {
    width: 100%; background: var(--bg); border: 1px solid var(--border2);
    border-left: 2px solid rgba(0,245,255,0.3); border-radius: 6px;
    color: var(--text); font-size: 0.88rem; padding: 11px 14px;
    outline: none; transition: border-color 0.2s, box-shadow 0.2s;
    font-family: inherit;
}
.woocommerce form.checkout .form-row input.input-text:focus,
.woocommerce form.checkout .form-row select:focus,
.woocommerce form.checkout .form-row textarea:focus {
    border-color: var(--neon-cyan); border-left-color: var(--neon-cyan);
    box-shadow: 0 0 12px rgba(0,245,255,0.15);
}

/* Order review table */
.woocommerce #order_review_heading {
    font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase;
    color: var(--neon-cyan); margin-top: 32px;
}
.woocommerce table.woocommerce-checkout-review-order-table {
    background: var(--bg3); border: 1px solid var(--border2);
    border-radius: var(--radius); overflow: hidden;
}
.woocommerce #payment {
    background: var(--bg3); border: 1px solid var(--border2);
    border-top: 2px solid var(--neon-cyan); border-radius: 10px;
    padding: 28px; margin-top: 24px;
}
.woocommerce #payment .payment_methods {
    list-style: none; padding: 0; margin: 0 0 20px;
}
.woocommerce #payment .payment_methods li {
    padding: 12px 0; border-bottom: 1px solid var(--border);
}
.woocommerce #payment .payment_methods li label {
    font-size: 0.85rem; color: var(--text); font-weight: 600;
    cursor: pointer;
}
.woocommerce #payment .place-order .button {
    width: 100%; background: var(--neon-cyan); color: #000;
    font-weight: 900; font-size: 0.82rem; letter-spacing: 0.16em;
    text-transform: uppercase; border-radius: 8px; padding: 15px;
    transition: box-shadow 0.2s;
}
.woocommerce #payment .place-order .button:hover {
    box-shadow: 0 0 28px rgba(0,245,255,0.55);
}

/* ==========================================================================
   MY ACCOUNT
   ========================================================================== */

.woocommerce-account .woocommerce {
    max-width: 1000px; margin: 0 auto; padding: 48px 40px 80px;
    display: grid; grid-template-columns: 220px 1fr; gap: 32px; align-items: start;
}
.woocommerce-account .woocommerce-MyAccount-content h2 {
    font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase;
    color: var(--neon-cyan); margin-bottom: 20px; padding-bottom: 12px;
    border-bottom: 1px solid var(--border);
}
.woocommerce-account .woocommerce-MyAccount-content p {
    font-size: 0.85rem; color: var(--text2); line-height: 1.7;
}
.woocommerce-account .woocommerce-MyAccount-content a {
    color: var(--neon-cyan);
}

/* Order table */
.woocommerce-account table.woocommerce-orders-table {
    width: 100%; background: var(--bg3); border: 1px solid var(--border2);
    border-radius: var(--radius); overflow: hidden; border-collapse: collapse;
}
.woocommerce-account table.woocommerce-orders-table th {
    font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase;
    color: var(--neon-cyan); padding: 14px 16px; text-align: left;
    border-bottom: 1px solid var(--border); background: var(--bg4);
}
.woocommerce-account table.woocommerce-orders-table td {
    padding: 14px 16px; border-bottom: 1px solid var(--border);
    color: var(--text2); font-size: 0.82rem;
}

/* Login / Register forms */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
    background: var(--bg3); border: 1px solid var(--border2);
    border-top: 2px solid var(--neon-cyan); border-radius: 10px;
    padding: 32px;
}

/* ==========================================================================
   RESPONSIVE â€” TABLET
   ========================================================================== */

@media (max-width: 1024px) {
    .ql-products-section ul.products,
    .ql-products-section .products { grid-template-columns: repeat(2, 1fr); }
    .ql-shop-hero, .ql-filter-bar, .ql-products-section, .ql-disclaimer {
        padding-left: 30px; padding-right: 30px;
    }
    .ql-product-detail { grid-template-columns: 1fr; padding: 30px; }
    .ql-related-products .products { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
    .woocommerce-checkout .col2-set { grid-template-columns: 1fr; }
    .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
}

/* ==========================================================================
   GLOBAL WOOCOMMERCE DARK THEME OVERRIDES
   Fixes for default WooCommerce pages that ignore our dark theme
   ========================================================================== */

/* Force dark background on ALL WooCommerce pages */
.woocommerce-page,
.woocommerce-page body,
.woocommerce-cart,
.woocommerce-checkout,
.woocommerce-account {
    background: var(--bg, #080808) !important;
    color: var(--text, #efefef) !important;
}

/* Fix ALL WooCommerce form inputs for dark theme */
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="number"],
.woocommerce input[type="password"],
.woocommerce input[type="url"],
.woocommerce select,
.woocommerce textarea,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-search--dropdown .select2-search__field,
.select2-dropdown {
    background: var(--bg, #080808) !important;
    border: 1px solid var(--border2, rgba(255,255,255,0.12)) !important;
    border-left: 2px solid rgba(0,245,255,0.3) !important;
    color: var(--text, #efefef) !important;
    border-radius: 6px !important;
    padding: 11px 14px !important;
    font-size: 0.88rem !important;
    font-family: inherit !important;
}
.woocommerce input:focus,
.woocommerce select:focus,
.woocommerce textarea:focus {
    border-color: var(--neon-cyan, #00f5ff) !important;
    border-left-color: var(--neon-cyan, #00f5ff) !important;
    box-shadow: 0 0 12px rgba(0,245,255,0.15) !important;
    outline: none !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--text, #efefef) !important;
}
.select2-container--default .select2-results__option {
    background: var(--bg3, #141414) !important;
    color: var(--text, #efefef) !important;
}
.select2-container--default .select2-results__option--highlighted {
    background: rgba(0,245,255,0.15) !important;
    color: var(--neon-cyan, #00f5ff) !important;
}

/* Fix ALL WooCommerce labels */
.woocommerce label,
.woocommerce-page label {
    color: var(--text2, #aaa) !important;
    font-size: 0.78rem !important;
}

/* Fix ALL WooCommerce buttons */
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .wc-proceed-to-checkout a.button {
    background: var(--neon-cyan, #00f5ff) !important;
    color: #000 !important;
    font-weight: 800 !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 14px 28px !important;
    cursor: pointer !important;
    transition: box-shadow 0.2s !important;
}
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover {
    box-shadow: 0 0 20px rgba(0,245,255,0.5) !important;
    background: var(--neon-cyan, #00f5ff) !important;
    color: #000 !important;
}

/* Fix ALL WooCommerce tables */
.woocommerce table,
.woocommerce-page table {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2, rgba(255,255,255,0.12)) !important;
    border-radius: 8px !important;
}
.woocommerce table th {
    background: var(--bg4, #1a1a1a) !important;
    color: var(--neon-cyan, #00f5ff) !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    border-bottom: 1px solid var(--border, rgba(255,255,255,0.06)) !important;
}
.woocommerce table td {
    color: var(--text2, #aaa) !important;
    border-bottom: 1px solid var(--border, rgba(255,255,255,0.06)) !important;
}
.woocommerce table td .amount {
    color: var(--neon-cyan, #00f5ff) !important;
    font-weight: 700 !important;
}

/* Fix ALL WooCommerce links */
.woocommerce a,
.woocommerce-page a {
    color: var(--neon-cyan, #00f5ff);
}

/* Fix ALL WooCommerce headings */
.woocommerce h2,
.woocommerce h3,
.woocommerce-page h2,
.woocommerce-page h3 {
    color: var(--text, #efefef) !important;
}

/* Fix ALL WooCommerce notices */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2, rgba(255,255,255,0.12)) !important;
    color: var(--text, #efefef) !important;
    border-radius: 8px !important;
}
.woocommerce .woocommerce-message { border-left: 3px solid var(--neon-green, #39ff14) !important; }
.woocommerce .woocommerce-info { border-left: 3px solid var(--neon-cyan, #00f5ff) !important; }
.woocommerce .woocommerce-error { border-left: 3px solid #ff4f4f !important; }

/* ==========================================================================
   CART PAGE FIXES
   ========================================================================== */

/* Remove extra header bars and duplicate shipping notices */
.woocommerce-cart .entry-header,
.woocommerce-cart .page-header,
.woocommerce-cart .woocommerce-products-header,
.woocommerce-cart header.woocommerce-products-header,
.woocommerce-cart .quebic-free-shipping-bar,
.woocommerce-cart .free-shipping-bar,
.woocommerce-checkout .entry-header,
.woocommerce-checkout .page-header,
.woocommerce-checkout .quebic-free-shipping-bar {
    display: none !important;
}

/* Cart coupon field */
.woocommerce .coupon .input-text {
    background: var(--bg, #080808) !important;
    border: 1px solid var(--border2) !important;
    color: var(--text) !important;
    padding: 10px 14px !important;
    border-radius: 6px !important;
}

/* Update cart button */
.woocommerce button[name="update_cart"] {
    background: var(--bg3, #141414) !important;
    color: var(--text2, #aaa) !important;
    border: 1px solid var(--border2) !important;
}

/* ==========================================================================
   CHECKOUT PAGE FIXES
   ========================================================================== */

/* Remove extra headers */
.woocommerce-checkout .entry-header,
.woocommerce-checkout .page-header {
    display: none !important;
}

/* Payment method descriptions */
.woocommerce #payment .payment_box {
    background: var(--bg4, #1a1a1a) !important;
    color: var(--text2, #aaa) !important;
    border-radius: 6px !important;
    padding: 14px !important;
    font-size: 0.82rem !important;
}
.woocommerce #payment .payment_box p {
    color: var(--text2, #aaa) !important;
}

/* GoDaddy Payments / Stripe input fields */
.woocommerce #payment iframe,
.woocommerce #payment .wc-credit-card-form input,
.woocommerce #payment .wc-credit-card-form .input-text,
.wc-poynt-credit-card-form input,
.wc-credit-card-form input,
#poynt-collect-v2 input,
.poynt-collect-container input,
.wc-stripe-elements-field {
    background: var(--bg, #080808) !important;
    border: 1px solid var(--border2) !important;
    color: var(--text, #efefef) !important;
    border-radius: 6px !important;
    padding: 11px 14px !important;
    font-size: 0.88rem !important;
}

/* GoDaddy payment iframe container */
.wc-poynt-credit-card-form,
#poynt-collect-v2,
.poynt-collect-container {
    background: var(--bg, #080808) !important;
    border: 1px solid var(--border2) !important;
    border-radius: 8px !important;
    padding: 16px !important;
}

/* Apartment / Address line 2 full width */
.woocommerce-checkout #billing_address_2_field,
.woocommerce-checkout #shipping_address_2_field {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}
.woocommerce-checkout #billing_address_2_field input,
.woocommerce-checkout #shipping_address_2_field input {
    width: 100% !important;
}

/* Force ALL checkout form rows to full width */
.woocommerce-checkout .form-row {
    float: none !important;
    width: 100% !important;
    clear: both !important;
}

/* Kill ALL white/gray backgrounds on checkout */
.woocommerce-checkout #customer_details,
.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2,
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
    background: var(--bg, #080808) !important;
    color: var(--text, #efefef) !important;
}

/* Order review box */
.woocommerce-checkout .woocommerce-checkout-review-order {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2) !important;
    border-top: 2px solid var(--neon-cyan, #00f5ff) !important;
    border-radius: 10px !important;
    padding: 24px !important;
}

/* Checkout table items */
.woocommerce-checkout-review-order-table {
    background: transparent !important;
    border: none !important;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
    background: transparent !important;
    padding: 12px 0 !important;
}

/* Fix all text on checkout */
.woocommerce-checkout p,
.woocommerce-checkout span,
.woocommerce-checkout .form-row {
    color: var(--text2, #aaa) !important;
}

/* NUCLEAR: Force dark on EVERY checkout element */
.woocommerce #payment,
.woocommerce #payment div,
.woocommerce #payment .payment_box,
.woocommerce #payment .payment_box *,
.woocommerce #payment .payment_methods,
.woocommerce #payment .payment_methods li,
.woocommerce #payment .place-order,
.woocommerce-checkout-review-order,
.woocommerce-checkout-review-order *,
.woocommerce-checkout-review-order-table,
.woocommerce-checkout-review-order-table *,
#order_review,
#order_review *,
.woocommerce-checkout .shop_table,
.woocommerce-checkout .shop_table *,
.woocommerce-checkout .cart-subtotal,
.woocommerce-checkout .order-total,
.woocommerce-checkout .shipping,
.poynt-collect-container,
.poynt-collect-container *,
#poynt-collect-v2,
#poynt-collect-v2 *,
.wc-poynt-credit-card-form,
.wc-poynt-credit-card-form *,
.wc-credit-card-form,
.wc-credit-card-form *,
.wc-godaddy-payments-hosted-fields,
.wc-godaddy-payments-hosted-fields *,
.payment_method_godaddy-payments-payinperson,
.payment_method_poynt,
.payment_method_godaddy_payments,
.payment_box,
.securely-save-to-account,
[class*="godaddy"] *,
[class*="poynt"] * {
    background-color: #141414 !important;
    color: #efefef !important;
}

/* Specific payment box styling */
.woocommerce #payment .payment_box {
    background: #1a1a1a !important;
    color: #aaa !important;
    border-radius: 6px !important;
    padding: 14px !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
}
.woocommerce #payment .payment_box p {
    color: #aaa !important;
}

/* Order review table â€” force dark */
.woocommerce-checkout-review-order-table,
.woocommerce-checkout .shop_table {
    background: #141414 !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 8px !important;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout .shop_table th,
.woocommerce-checkout .shop_table td {
    background: transparent !important;
    color: #efefef !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.woocommerce-checkout-review-order-table .amount,
.woocommerce-checkout .shop_table .amount {
    color: #00f5ff !important;
}

/* Credit card icons area */
.woocommerce #payment .payment_methods li img,
.woocommerce #payment .payment_methods li .payment-icon {
    filter: brightness(0.9) !important;
}

/* "Securely save" checkbox area */
.woocommerce #payment .woocommerce-SavedPaymentMethods,
.woocommerce #payment .wc-saved-payment-methods,
.woocommerce #payment label[for*="save"],
.woocommerce #payment .save-card,
.woocommerce #payment [class*="save"] {
    background: #1a1a1a !important;
    color: #aaa !important;
    border-radius: 6px !important;
}

/* Place order button - keep cyan */
.woocommerce #payment .place-order .button,
.woocommerce #payment #place_order {
    background: #00f5ff !important;
    color: #000 !important;
}

/* ============================================================
   NUCLEAR GRAY KILLER â€” target EVERY possible gray/white element
   ============================================================ */

/* Order review table â€” the gray box */
.woocommerce-checkout table.shop_table,
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.woocommerce-checkout table.shop_table thead,
.woocommerce-checkout table.shop_table tbody,
.woocommerce-checkout table.shop_table tfoot,
.woocommerce-checkout table.shop_table tr,
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td,
table.woocommerce-checkout-review-order-table,
table.woocommerce-checkout-review-order-table tr,
table.woocommerce-checkout-review-order-table th,
table.woocommerce-checkout-review-order-table td {
    background: #0e0e0e !important;
    background-color: #0e0e0e !important;
    color: #efefef !important;
    border-color: rgba(255,255,255,0.06) !important;
}
.woocommerce-checkout table.shop_table .amount {
    color: #00f5ff !important;
}

/* Payment box â€” the gray card area */
.woocommerce-checkout #payment,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment li,
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment div,
.woocommerce-checkout #payment fieldset,
.woocommerce-checkout #payment .form-row,
.woocommerce-checkout .wc-payment-form,
.woocommerce-checkout .wc-credit-card-form,
.woocommerce-checkout .wc-poynt-credit-card-form,
.woocommerce-checkout .payment_method_godaddy-payments,
.woocommerce-checkout .payment_method_bacs,
.woocommerce-checkout .payment_method_cheque {
    background: #0e0e0e !important;
    background-color: #0e0e0e !important;
    color: #efefef !important;
}

/* GoDaddy Payments specific overrides */
.wc-godaddy-payments-hosted-fields-container,
.wc-godaddy-payments-hosted-fields,
[id*="godaddy"],
[class*="godaddy"],
[id*="poynt"],
[class*="poynt"] {
    background: #0e0e0e !important;
    background-color: #0e0e0e !important;
    color: #efefef !important;
}

/* The payment description box */
.woocommerce-checkout .payment_box,
.woocommerce-checkout .payment_box p {
    background: #141414 !important;
    background-color: #141414 !important;
    color: #aaa !important;
}

/* Apartment field â€” absolute force alignment */
#billing_address_2_field {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    clear: both !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
}
#billing_address_2_field span,
#billing_address_2_field input {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin: 0 !important;
}

/* Make checkout container full width â€” fix toolbar overflow */
.woocommerce-checkout .woocommerce {
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 20px 60px 80px !important;
    overflow: visible !important;
}
.woocommerce-checkout .woocommerce > * {
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Force all checkout text white */
.woocommerce-checkout .form-row label,
.woocommerce-checkout label,
.woocommerce-checkout h3,
.woocommerce-checkout p,
.woocommerce-checkout span:not(.amount),
.woocommerce-checkout .woocommerce-billing-fields h3 {
    color: #ffffff !important;
}

/* Fix checkboxes and inputs being unclickable */
.woocommerce #payment input[type="checkbox"],
.woocommerce #payment input[type="radio"],
.woocommerce #payment label,
.woocommerce #payment button,
.woocommerce #payment a,
.woocommerce #payment select,
.woocommerce #payment input {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 10 !important;
    cursor: pointer;
}
.woocommerce #payment input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    accent-color: #00f5ff !important;
}

/* Terms checkbox */
.woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 10 !important;
    width: 18px !important;
    height: 18px !important;
    accent-color: #00f5ff !important;
}

/* Age verification checkbox â€” fix text size */
.quebic-checkout-age-verify,
.quebic-checkout-age-verify label,
.quebic-checkout-age-verify .woocommerce-form__label {
    font-size: 0.72rem !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    color: #aaa !important;
}

/* Important Notice â€” move visually to bottom and shrink */
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .wc-block-components-notice-banner,
.woocommerce-checkout .woocommerce-message {
    font-size: 0.68rem !important;
    padding: 10px 14px !important;
    color: #888 !important;
    background: #0e0e0e !important;
    border-left: 2px solid rgba(0,245,255,0.3) !important;
    order: 999 !important;
}

/* Privacy policy text â€” shrink */
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-privacy-policy-text p {
    font-size: 0.68rem !important;
    color: #888 !important;
    line-height: 1.5 !important;
}

/* Confirmation Required section */
.quebic-checkout-confirmations {
    background: #0e0e0e !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 8px !important;
    padding: 20px !important;
}
.quebic-checkout-confirmations label {
    font-size: 0.75rem !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 400 !important;
    color: #ccc !important;
}

/* Make payment section wider */
.woocommerce-checkout #payment {
    max-width: 100% !important;
    width: 100% !important;
}

/* Force checkout to flex column so we can reorder */
.woocommerce-checkout .woocommerce {
    display: flex !important;
    flex-direction: column !important;
}

/* Push the Important Notice to the bottom */
.woocommerce-checkout .woocommerce > .woocommerce-NoticeGroup,
.woocommerce-checkout .woocommerce > .woocommerce-notices-wrapper {
    order: -1 !important;
}
.woocommerce-checkout .woocommerce > .woocommerce-form-coupon-toggle {
    order: 1 !important;
}
.woocommerce-checkout .woocommerce > form.checkout {
    order: 2 !important;
}

/* The RUO notice that shows at top â€” shrink and move */
.woocommerce-checkout .ql-checkout-notice,
.woocommerce-checkout .woocommerce > .woocommerce-info:first-of-type {
    font-size: 0.65rem !important;
    padding: 8px 14px !important;
    color: #666 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    margin-bottom: 16px !important;
}

/* Fix placeholder text color in payment fields */
.woocommerce #payment input::placeholder,
.woocommerce #payment .input-text::placeholder {
    color: var(--text3, #888) !important;
}

/* ==========================================================================
   MY ACCOUNT PAGE FIXES
   ========================================================================== */

/* Remove Downloads AND Referral from nav */
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--referral-program {
    display: none !important;
}

/* Style the nav sidebar */
.woocommerce-MyAccount-navigation {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2) !important;
    border-top: 2px solid var(--neon-cyan, #00f5ff) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}
.woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.woocommerce-MyAccount-navigation ul li {
    border-bottom: 1px solid var(--border, rgba(255,255,255,0.06)) !important;
}
.woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: none !important;
}
.woocommerce-MyAccount-navigation ul li a {
    display: block !important;
    padding: 14px 20px !important;
    color: var(--text2, #aaa) !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s !important;
}
.woocommerce-MyAccount-navigation ul li a:hover {
    background: rgba(0,245,255,0.05) !important;
    color: var(--neon-cyan, #00f5ff) !important;
}
.woocommerce-MyAccount-navigation ul li.is-active a {
    background: rgba(0,245,255,0.08) !important;
    color: var(--neon-cyan, #00f5ff) !important;
    border-left: 2px solid var(--neon-cyan, #00f5ff) !important;
}

/* Account content area */
.woocommerce-MyAccount-content {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2) !important;
    border-radius: 10px !important;
    padding: 28px 30px !important;
    min-width: 0 !important;
    width: 100% !important;
}

/* Account details form â€” fill available space */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm {
    width: 100% !important;
    max-width: 100% !important;
}
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"] {
    width: 100% !important;
    max-width: 100% !important;
}

/* Addresses â€” proper clickable cards */
.woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
    min-width: 0 !important;
}
.woocommerce-Addresses .woocommerce-Address {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2) !important;
    border-top: 2px solid var(--neon-cyan, #00f5ff) !important;
    border-radius: 10px !important;
    padding: 24px !important;
    transition: transform 0.2s, border-color 0.2s !important;
}
.woocommerce-Addresses .woocommerce-Address:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(0,245,255,0.4) !important;
}
.woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--border, rgba(255,255,255,0.06)) !important;
}
.woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title h3 {
    font-size: 0.72rem !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: var(--neon-cyan, #00f5ff) !important;
    margin: 0 !important;
}
.woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title a {
    font-size: 0.65rem !important;
    color: var(--neon-cyan, #00f5ff) !important;
    text-decoration: none !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    padding: 5px 12px !important;
    border: 1px solid var(--neon-cyan, #00f5ff) !important;
    border-radius: 5px !important;
    transition: all 0.2s !important;
}
.woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title a:hover {
    background: rgba(0,245,255,0.1) !important;
    box-shadow: 0 0 12px rgba(0,245,255,0.3) !important;
}
.woocommerce-Addresses .woocommerce-Address address {
    color: var(--text2, #aaa) !important;
    font-size: 0.85rem !important;
    font-style: normal !important;
    line-height: 1.8 !important;
}

/* Account details â€” clean card layout */
.woocommerce-EditAccountForm {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2) !important;
    border-top: 2px solid var(--neon-cyan, #00f5ff) !important;
    border-radius: 10px !important;
    padding: 28px 30px !important;
}
.woocommerce-EditAccountForm .form-row {
    margin-bottom: 18px !important;
}
.woocommerce-EditAccountForm label {
    display: block !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: var(--neon-cyan, #00f5ff) !important;
    margin-bottom: 6px !important;
    font-weight: 600 !important;
}
.woocommerce-EditAccountForm input.input-text {
    width: 100% !important;
    background: var(--bg, #080808) !important;
    border: 1px solid var(--border2) !important;
    border-left: 2px solid rgba(0,245,255,0.3) !important;
    color: var(--text, #efefef) !important;
    border-radius: 6px !important;
    padding: 11px 14px !important;
    font-size: 0.88rem !important;
}
.woocommerce-EditAccountForm fieldset {
    background: var(--bg4, #1a1a1a) !important;
    border: 1px solid var(--border2) !important;
    border-radius: 8px !important;
    padding: 24px !important;
    margin: 24px 0 !important;
}
.woocommerce-EditAccountForm fieldset legend {
    color: var(--neon-cyan, #00f5ff) !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    padding: 0 8px !important;
}

/* Payment methods page â€” card style */
.woocommerce-MyAccount-content .woocommerce-PaymentMethods,
.woocommerce-MyAccount-content table.woocommerce-table--payment-methods {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}
.woocommerce-MyAccount-content .woocommerce-PaymentMethods td,
.woocommerce-MyAccount-content table.woocommerce-table--payment-methods td {
    color: var(--text, #efefef) !important;
    font-size: 0.85rem !important;
    padding: 14px 16px !important;
}
.woocommerce-MyAccount-content .wc-credit-card-form label {
    color: var(--text2, #aaa) !important;
}

/* Add payment method form */
.woocommerce-add-payment-method .woocommerce {
    max-width: 600px !important;
    margin: 0 auto !important;
}
.woocommerce-add-payment-method #payment {
    background: var(--bg3, #141414) !important;
    border: 1px solid var(--border2) !important;
    border-top: 2px solid var(--neon-cyan, #00f5ff) !important;
    border-radius: 10px !important;
    padding: 28px !important;
}

@media (max-width: 640px) {
    .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   RESPONSIVE â€” MOBILE
   ========================================================================== */

@media (max-width: 640px) {
    .ql-products-section ul.products,
    .ql-products-section .products { grid-template-columns: 1fr; }
    .ql-shop-hero__title { font-size: 1.8rem; }
    .ql-filter-bar__inner { flex-direction: column; align-items: stretch; }
    .ql-product-search__input { width: 100%; }
    .ql-shop-hero, .ql-filter-bar, .ql-products-section, .ql-disclaimer {
        padding-left: 16px; padding-right: 16px;
    }
    .ql-product-detail { padding: 20px 16px; }
    .ql-product-detail__compound-data { grid-template-columns: 1fr; }
    .ql-product-tabs__btn { padding: 10px 14px; font-size: 0.65rem; }
    .ql-breadcrumbs, .ql-product-tabs, .ql-research-banner, .ql-related-products {
        padding-left: 16px; padding-right: 16px;
    }
    .ql-related-products .products { grid-template-columns: 1fr; }
    .woocommerce-cart .woocommerce { padding: 24px 16px 60px; }
    .woocommerce-checkout .woocommerce { padding: 24px 16px 60px; }
    .woocommerce-account .woocommerce { padding: 24px 16px 60px; }
}
/* ============================================================
   CHECKOUT FIX â€” paste at bottom of style.css
   ============================================================ */
.woocommerce-checkout .woocommerce {
    max-width: 100% !important;
    padding: 20px 60px 80px !important;
}
.woocommerce-checkout .col2-set,
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
}
.woocommerce-checkout .col2-set {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 48px !important;
}
.woocommerce-checkout form.checkout .form-row {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
}
.woocommerce-checkout form.checkout .form-row label {
    color: #ffffff !important;
    font-size: 0.72rem !important;
    margin-bottom: 8px !important;
}
.woocommerce-checkout form.checkout .form-row .woocommerce-input-wrapper,
.woocommerce-checkout form.checkout .form-row input.input-text,
.woocommerce-checkout form.checkout .form-row select {
    width: 100% !important;
    display: block !important;
}
.woocommerce-checkout form.checkout .form-row-first,
.woocommerce-checkout form.checkout .form-row-last {
    float: none !important;
    width: 100% !important;
}
#billing_address_2_field {
    width: 100% !important;
    float: none !important;
    clear: both !important;
}
.woocommerce-checkout #payment {
    background: #0e0e0e !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 28px !important;
    border-radius: 10px !important;
    overflow: visible !important;
}
.woocommerce-checkout table.shop_table,
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td,
.woocommerce-checkout table.shop_table tr {
    background: #0e0e0e !important;
    color: #efefef !important;
    border-color: rgba(255,255,255,0.06) !important;
}
.woocommerce-checkout table.shop_table .amount {
    color: #00f5ff !important;
}
@media (max-width: 900px) {
    .woocommerce-checkout .col2-set {
        grid-template-columns: 1fr !important;
    }
}