/* ToyLauncher global dark palette. Color-only overrides; no layout changes. */
:root {
    color-scheme: dark;
    --tl-black: #000;
    --tl-white: #fff;
    --tl-muted: #cfcfcf;
    --tl-border: #3a3a3a;
}

html,
body,
.website-wrapper,
.main-page-wrapper,
.site-content,
.page-title,
.wd-content-layout,
.wd-page-content,
.footer-container,
.footer-sidebar,
.copyrights-wrapper,
.whb-header,
.whb-row,
.whb-general-header,
.whb-top-bar,
.whb-header-bottom,
.mobile-nav,
.cart-widget-side,
.wd-side-hidden,
.wd-dropdown,
.wd-dropdown-menu,
.wd-dropdown-cart,
.wd-search-full-screen,
.searchform,
.elementor-section,
.elementor-container,
.elementor-column-wrap,
.elementor-widget-wrap,
.elementor-widget-container,
.shop-content-area,
.products-element,
.product-grid-item,
.product-wrapper,
.product-element-top,
.single-product-page,
.product-tabs-wrapper,
.woocommerce-tabs,
.woocommerce-Tabs-panel,
.related-and-upsells,
.cart-content-wrapper,
.woocommerce-cart-form,
.cart-totals-inner,
.checkout-order-review,
.woocommerce-checkout-review-order,
.woocommerce-checkout-payment,
.woocommerce-form,
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation,
.wd-popup,
.mfp-content,
.select2-dropdown,
.select2-results,
.select2-search,
.widget,
.widget-area,
.sidebar-container,
.comments-area,
.comment-body {
    background-color: var(--tl-black) !important;
}

body,
body p,
body li,
body label,
body legend,
body address,
body blockquote,
body table,
body th,
body td,
body dt,
body dd,
body span,
body strong,
body b,
body small,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .title,
body .entry-title,
body .product-title,
body .wd-entities-title,
body .woocommerce-loop-product__title,
body .woocommerce-breadcrumb,
body .woocommerce-breadcrumb a,
body .amount,
body .price,
body .price ins,
body .price del,
body .stock,
body .tabs li a,
body .wd-nav > li > a,
body .menu-item > a,
body .widget a,
body .mini_cart_item a,
body .cart-info .quantity,
body .order-total,
body .shop_table,
body .shop_table a,
body .woocommerce-checkout-review-order-table,
body .woocommerce-privacy-policy-text,
body .payment_box,
body .select2-selection__rendered,
body .select2-results__option,
body .wd-empty-page-text,
body .woocommerce-notices-wrapper {
    color: var(--tl-white) !important;
}

body a:not(.button):not(.btn):not(.wd-action-btn),
body a:not(.button):not(.btn):not(.wd-action-btn):visited {
    color: var(--tl-white);
}

body .meta-author,
body .entry-meta,
body .product_meta,
body .woocommerce-result-count,
body .woocommerce-product-details__short-description,
body .wd-product-sku,
body .wd-product-brands,
body .wc-item-meta,
body .variation,
body .description {
    color: var(--tl-muted) !important;
}

body input:not([type='checkbox']):not([type='radio']):not([type='submit']):not([type='button']),
body textarea,
body select,
body .select2-selection,
body .quantity input,
body .coupon input {
    background-color: var(--tl-black) !important;
    border-color: var(--tl-border) !important;
    color: var(--tl-white) !important;
}

body input::placeholder,
body textarea::placeholder {
    color: #aaa !important;
    opacity: 1;
}

body table,
body th,
body td,
body tr,
body .shop_table,
body .cart_totals,
body .woocommerce-checkout-review-order-table,
body .woocommerce-form,
body .woocommerce-info,
body .woocommerce-message,
body .woocommerce-error,
body .payment_box,
body .wc_payment_method,
body .select2-selection,
body .select2-results__option {
    background-color: var(--tl-black) !important;
    border-color: var(--tl-border) !important;
}

body hr,
body .wd-divider,
body .widget-title,
body .product-tabs-wrapper,
body .shop_table th,
body .shop_table td,
body .cart-totals-inner,
body .woocommerce-checkout-review-order {
    border-color: var(--tl-border) !important;
}

body button,
body .button,
body .btn,
body input[type='submit'],
body input[type='button'] {
    color: var(--tl-white) !important;
}

body svg:not([fill='none']) {
    color: var(--tl-white);
}

body ::selection {
    background: var(--tl-white);
    color: var(--tl-black);
}

/* Keep artwork visible: slider and image-banner content must stay transparent. */
body .wd-slide .elementor-container,
body .wd-slide .elementor-widget-wrap,
body .wd-slide .elementor-widget-container,
body .wd-slide .e-con,
body .wd-slide .e-con-inner,
body .promo-banner .elementor-widget-container,
body .banner .elementor-widget-container,
body [style*='background-image'] > .elementor-container,
body [style*='background-image'] > .e-con-inner {
    background-color: transparent !important;
}

/* Checkout: improve hierarchy and readability while preserving the flow. */
body.woocommerce-checkout .woocommerce-info {
    margin-bottom: 28px;
    padding: 16px 18px;
    border: 1px solid var(--tl-border) !important;
    border-radius: 4px;
    background-color: #080808 !important;
    color: var(--tl-white) !important;
}

body.woocommerce-checkout .woocommerce-info a {
    color: var(--tl-white) !important;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .checkout-order-review,
body.woocommerce-checkout .woocommerce-checkout-payment {
    border: 1px solid var(--tl-border) !important;
    border-radius: 6px;
    background-color: var(--tl-black) !important;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-additional-fields {
    padding: 24px;
}

body.woocommerce-checkout .checkout-order-review {
    padding: 24px;
}

body.woocommerce-checkout .woocommerce-checkout-payment {
    margin-top: 22px;
    padding: 20px;
}

body.woocommerce-checkout .form-row label {
    margin-bottom: 7px;
    color: var(--tl-white) !important;
    font-weight: 600;
}

body.woocommerce-checkout input:not([type='checkbox']):not([type='radio']):not([type='submit']),
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-selection {
    min-height: 44px;
    padding-right: 12px;
    padding-left: 12px;
    border: 1px solid #4a4a4a !important;
    border-radius: 4px;
    background-color: #050505 !important;
}

body.woocommerce-checkout input:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout .select2-container--open .select2-selection {
    border-color: var(--tl-white) !important;
    outline: none;
}

body.woocommerce-checkout .shop_table {
    margin-bottom: 0;
    border: 0 !important;
}

body.woocommerce-checkout .shop_table th,
body.woocommerce-checkout .shop_table td {
    padding-top: 15px;
    padding-bottom: 15px;
    border-color: #2f2f2f !important;
}

body.woocommerce-checkout .wc_payment_method {
    padding: 14px 0;
    border-bottom: 1px solid #2f2f2f !important;
}

body.woocommerce-checkout #place_order {
    width: 100%;
    min-height: 50px;
    margin-top: 16px;
    border-radius: 4px;
    background-color: #e1251b !important;
    color: var(--tl-white) !important;
    font-weight: 700;
}

body.woocommerce-checkout #place_order:hover {
    background-color: #c91d14 !important;
}

body .selectron23-option-title,
body .selectron23-option-subtitle {
    color: var(--tl-white) !important;
}

@media (max-width: 768px) {
    body.woocommerce-checkout .woocommerce-billing-fields,
    body.woocommerce-checkout .woocommerce-additional-fields,
    body.woocommerce-checkout .checkout-order-review,
    body.woocommerce-checkout .woocommerce-checkout-payment {
        padding: 18px;
    }
}

/* Mini-cart buttons: prevent white-on-white labels. */
body .cart-widget-side .wd-buttons .btn-cart,
body .cart-widget-side .woocommerce-mini-cart__buttons .button:first-child,
body .cart-widget-side a.button.wc-forward:not(.checkout) {
    border: 1px solid #555 !important;
    background-color: #111 !important;
    color: var(--tl-white) !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

body .cart-widget-side .wd-buttons .btn-cart:hover,
body .cart-widget-side .woocommerce-mini-cart__buttons .button:first-child:hover,
body .cart-widget-side a.button.wc-forward:not(.checkout):hover {
    border-color: var(--tl-white) !important;
    background-color: #222 !important;
    color: var(--tl-white) !important;
}

body .cart-widget-side .wd-buttons .checkout,
body .cart-widget-side .woocommerce-mini-cart__buttons .checkout {
    border-color: #e1251b !important;
    background-color: #e1251b !important;
    color: var(--tl-white) !important;
    opacity: 1 !important;
}

/* Make every checkout surface truly black, including WoodMart receipt styling. */
body.woocommerce-checkout .main-page-wrapper,
body.woocommerce-checkout .site-content,
body.woocommerce-checkout .woocommerce,
body.woocommerce-checkout .woocommerce-checkout,
body.woocommerce-checkout .checkout-order-review,
body.woocommerce-checkout .checkout-order-review-inner,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .woocommerce-checkout-payment,
body.woocommerce-checkout .payment_methods,
body.woocommerce-checkout .payment_box,
body.woocommerce-checkout .place-order,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout table,
body.woocommerce-checkout thead,
body.woocommerce-checkout tbody,
body.woocommerce-checkout tfoot,
body.woocommerce-checkout tr,
body.woocommerce-checkout th,
body.woocommerce-checkout td {
    background-color: var(--tl-black) !important;
    color: var(--tl-white) !important;
}

body.woocommerce-checkout .checkout-order-review,
body.woocommerce-checkout .woocommerce-checkout-payment {
    border: 1px solid var(--tl-border) !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .checkout-order-review::before,
body.woocommerce-checkout .checkout-order-review::after {
    display: none !important;
    background: var(--tl-black) !important;
    background-image: none !important;
}

body.woocommerce-checkout .shop_table,
body.woocommerce-checkout .shop_table th,
body.woocommerce-checkout .shop_table td {
    border-color: #303030 !important;
}

body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-error {
    background-color: var(--tl-black) !important;
    color: var(--tl-white) !important;
}

/* Keep the main add-to-cart action legible in every product configuration. */
body.single-product button.single_add_to_cart_button,
body.single-product .single_add_to_cart_button.button,
body.single-product .cart .button {
    border: 1px solid #e1251b !important;
    background-color: #e1251b !important;
    color: var(--tl-white) !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

body.single-product button.single_add_to_cart_button:hover,
body.single-product .single_add_to_cart_button.button:hover,
body.single-product .cart .button:hover {
    border-color: #ff4b3e !important;
    background-color: #c91d14 !important;
    color: var(--tl-white) !important;
}

/* Product detail pages: clearer hierarchy without changing product imagery. */
body.single-product .summary-inner {
    padding: 26px;
    border: 1px solid var(--tl-border);
    border-radius: 6px;
    background-color: var(--tl-black) !important;
}

body.single-product .product_title {
    margin-bottom: 14px;
    color: var(--tl-white) !important;
    line-height: 1.22;
}

body.single-product .summary .price {
    margin-bottom: 18px;
    font-size: 24px;
    line-height: 1.2;
}

body.single-product .summary .price ins,
body.single-product .summary .price ins .amount {
    color: #ff4b3e !important;
    font-weight: 800;
}

body.single-product .summary .price del,
body.single-product .summary .price del .amount {
    color: #a8a8a8 !important;
}

body.single-product .woocommerce-product-details__short-description {
    margin-bottom: 20px;
    color: #dedede !important;
    line-height: 1.75;
}

body.single-product .woocommerce-breadcrumb,
body.single-product .woocommerce-breadcrumb a {
    color: #bdbdbd !important;
}

body.single-product .variations,
body.single-product .single_variation_wrap,
body.single-product .product_meta {
    border-color: var(--tl-border) !important;
}

body.single-product .variations th,
body.single-product .variations td {
    padding-top: 10px;
    padding-bottom: 10px;
}

body.single-product .quantity {
    border: 1px solid #4a4a4a;
    border-radius: 4px;
    background: #050505 !important;
}

body.single-product .single_add_to_cart_button {
    min-height: 46px;
    padding-right: 26px;
    padding-left: 26px;
    border-radius: 4px;
    background-color: #e1251b !important;
    color: var(--tl-white) !important;
    font-weight: 700;
}

body.single-product .single_add_to_cart_button:hover {
    background-color: #c91d14 !important;
}

body.single-product .woocommerce-product-gallery__image,
body.single-product .wd-carousel-item .product-image-wrap {
    overflow: hidden;
    border-radius: 6px;
}

body.single-product .wd-gallery-thumb .wd-carousel-item,
body.single-product .product-image-thumbnail {
    overflow: hidden;
    border: 1px solid #303030;
    border-radius: 4px;
}

body.single-product .wd-gallery-thumb .wd-carousel-item:hover,
body.single-product .wd-gallery-thumb .wd-carousel-item.wd-active {
    border-color: var(--tl-white);
}

/* Fix white-on-white product controls visible in the dark palette. */
body.single-product .woodmart-show-product-gallery {
    border: 1px solid var(--tl-border) !important;
    background-color: rgba(0, 0, 0, 0.82) !important;
    color: var(--tl-white) !important;
}

body.single-product .woodmart-show-product-gallery::before,
body.single-product .woodmart-show-product-gallery span {
    color: var(--tl-white) !important;
}

body.single-product .wd-product-brands a {
    min-width: 54px;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid var(--tl-border);
    border-radius: 4px;
    background-color: #080808 !important;
    color: var(--tl-white) !important;
    text-align: center;
}

body.single-product .product-tabs-wrapper {
    margin-top: 36px;
    border-top: 1px solid var(--tl-border) !important;
    border-bottom: 1px solid var(--tl-border) !important;
}

body.single-product .woocommerce-Tabs-panel {
    color: #dedede !important;
    line-height: 1.75;
}

body.single-product .related-products,
body.single-product .upsells-products {
    padding-top: 28px;
}

@media (max-width: 768px) {
    body.single-product .summary-inner {
        padding: 18px;
    }

    body.single-product .single_add_to_cart_button {
        width: 100%;
    }
}
