/*
 * cFox site-wide dark re-theme.
 * Mirrors the home.css fox-orange/near-black palette across every page
 * EXCEPT the homepage (which keeps its own home.css theme).
 * Enqueued by wp-content/novamira-sandbox/cfox-home-loader.php with a
 * file_exists() guard -- delete this file to instantly roll back.
 */

:root {
    --cfx-bg: #0c0a08;
    --cfx-bg2: #131008;
    --cfx-surface: rgba(255, 255, 255, .035);
    --cfx-border: rgba(255, 255, 255, .09);
    --cfx-text: #f5efe8;
    --cfx-muted: #a89e92;
    --cfx-orange: #ff6b2c;
    --cfx-amber: #ffa94d;
    --cfx-ember: #ff4524;
    --cfx-grad: linear-gradient(96deg, #ffb45e, #ff6b2c 48%, #ff4524);
    --cfx-font: 'Space Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    /* Darkness Blog theme variable overrides */
    --body-background: var(--cfx-bg) !important;
    --post-item-background: var(--cfx-bg2) !important;
    --primary-color: var(--cfx-orange) !important;
    --color-text: var(--cfx-text) !important;
    --color-background: var(--cfx-bg2) !important;
    --header-text-color: var(--cfx-text) !important;
}

/* ---------------------------------------------------------------- */
/* Global page chrome                                                 */
/* ---------------------------------------------------------------- */

html, body,
#page, #content, .site-content, .theme-wrapper, .primary-site-content,
.site-header, .site-footer, footer.site-footer {
    background-color: var(--cfx-bg) !important;
    color: var(--cfx-text);
}

body, body * {
    font-family: var(--cfx-font);
}

h1, h2, h3, h4, h5, h6,
.entry-title, .page-title, .woocommerce-products-header__title {
    color: var(--cfx-text) !important;
}

a {
    color: var(--cfx-amber);
}

a:hover, a:focus {
    color: var(--cfx-orange);
}

a:visited {
    color: var(--cfx-amber);
}

::selection {
    background: var(--cfx-orange);
    color: #fff;
}

/* Header / nav bar */
.site-header, .main-header, #masthead, .header-main {
    background-color: var(--cfx-bg2) !important;
    border-color: var(--cfx-border) !important;
}

/* Sidebar widgets */
.widget-area, .widget, .sidebar {
    background-color: var(--cfx-bg2);
    border-color: var(--cfx-border);
    color: var(--cfx-text);
}

.widget a {
    color: var(--cfx-amber);
}

.widget input, .widget select, .widget textarea {
    background: rgba(255, 255, 255, .04);
    color: var(--cfx-text);
    border: 1px solid var(--cfx-border);
}

/* ---------------------------------------------------------------- */
/* Blog listing + single post                                         */
/* ---------------------------------------------------------------- */

.post-item, .post-item-content {
    background-color: var(--cfx-bg2) !important;
    border-color: var(--cfx-border) !important;
    color: var(--cfx-text);
}

.entry-title a {
    color: var(--cfx-text);
}

.entry-title a:hover {
    color: var(--cfx-amber);
}

.entry-meta, .entry-meta a, .posted-on, .byline {
    color: var(--cfx-muted) !important;
}

.post-categories, .entry-cat,
.post-categories a, .entry-cat a {
    background: rgba(255, 107, 44, .12) !important;
    color: var(--cfx-amber) !important;
    border-color: var(--cfx-border) !important;
}

.single .entry-content,
.single .entry-content p,
.single .entry-content li {
    color: var(--cfx-text);
}

.single .entry-content a {
    color: var(--cfx-amber);
}

.single .entry-content blockquote {
    background: var(--cfx-surface);
    border-left: 4px solid var(--cfx-orange);
    color: var(--cfx-text);
}

.single .entry-content img {
    border-radius: 10px;
}

/* Pagination */
.pagination a, .pagination span,
.nav-links a, .nav-links span,
.page-numbers {
    background: var(--cfx-bg2) !important;
    color: var(--cfx-text) !important;
    border: 1px solid var(--cfx-border) !important;
}

.page-numbers.current, .pagination .current {
    background: var(--cfx-grad) !important;
    color: #fff !important;
    border: none !important;
}

/* Search + comment forms */
.search-form input, .comment-form input, .comment-form textarea,
#comments, .comment-respond {
    background: var(--cfx-bg2);
    color: var(--cfx-text);
    border-color: var(--cfx-border);
}

.search-form input::placeholder, .comment-form input::placeholder, .comment-form textarea::placeholder {
    color: var(--cfx-muted);
}

/* ---------------------------------------------------------------- */
/* WooCommerce -- classic templates (shop / product / my-account)    */
/* ---------------------------------------------------------------- */

.woocommerce ul.products li.product,
.woocommerce div.product {
    color: var(--cfx-text);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce div.product .product_title {
    color: var(--cfx-text) !important;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product .price,
.woocommerce-Price-amount {
    color: var(--cfx-amber) !important;
}

.woocommerce span.onsale {
    background: var(--cfx-grad) !important;
    color: #fff !important;
}

.woocommerce ul.products li.product .button,
.woocommerce div.product form.cart .button,
.woocommerce #respond input#submit,
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button,
.woocommerce-Button, .woocommerce-button {
    background: var(--cfx-grad) !important;
    color: #fff !important;
    border: none !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce-Button:hover, .woocommerce-button:hover {
    filter: brightness(1.1);
    color: #fff !important;
}

.woocommerce-breadcrumb, .woocommerce-breadcrumb a {
    color: var(--cfx-muted) !important;
}

.woocommerce-tabs, .woocommerce-tabs ul.tabs li,
.woocommerce-tabs ul.tabs li a,
.woocommerce-Reviews, #reviews {
    background: var(--cfx-bg2);
    color: var(--cfx-text);
    border-color: var(--cfx-border) !important;
}

.woocommerce-tabs ul.tabs li.active,
.woocommerce-tabs ul.tabs li.active a {
    color: var(--cfx-orange) !important;
}

/* Forms: my-account, checkout fields, search */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-Input, .woocommerce-Input--text,
.woocommerce ::placeholder,
.select2-container--default .select2-selection--single {
    background: rgba(255, 255, 255, .04) !important;
    color: var(--cfx-text) !important;
    border: 1px solid var(--cfx-border) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--cfx-text) !important;
}

.select2-dropdown {
    background: var(--cfx-bg2) !important;
    color: var(--cfx-text) !important;
    border-color: var(--cfx-border) !important;
}

.woocommerce form .form-row input:focus, .woocommerce form .form-row textarea:focus {
    border-color: var(--cfx-orange) !important;
    outline: none;
}

/* My Account */
.woocommerce-MyAccount-navigation {
    background: var(--cfx-bg2);
    border-color: var(--cfx-border);
}

.woocommerce-MyAccount-navigation ul li a {
    color: var(--cfx-text);
}

.woocommerce-MyAccount-navigation ul li.is-active a {
    color: var(--cfx-orange);
    font-weight: 600;
}

.woocommerce-MyAccount-content,
.woocommerce-account .woocommerce {
    color: var(--cfx-text);
}

table.shop_table, table.shop_table th, table.shop_table td,
.woocommerce table.shop_table {
    background: var(--cfx-bg2) !important;
    color: var(--cfx-text) !important;
    border-color: var(--cfx-border) !important;
}

.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice {
    background: var(--cfx-surface) !important;
    color: var(--cfx-text) !important;
    border-top-color: var(--cfx-orange) !important;
}

.woocommerce-message a.button, .woocommerce-info a.button {
    background: var(--cfx-grad) !important;
    color: #fff !important;
}

/* ---------------------------------------------------------------- */
/* WooCommerce Blocks -- Product grid (e.g. cart cross-sells)        */
/* ---------------------------------------------------------------- */

.wc-block-grid__product-title {
    color: var(--cfx-text) !important;
}

.wc-block-grid__product-price,
.wc-block-grid__product-price .woocommerce-Price-amount {
    color: var(--cfx-amber) !important;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link,
.wc-block-grid .add_to_cart_button {
    background: var(--cfx-grad) !important;
    color: #fff !important;
    border: none !important;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
.wc-block-grid .add_to_cart_button:hover {
    filter: brightness(1.1);
    color: #fff !important;
}

/* ---------------------------------------------------------------- */
/* WooCommerce Blocks -- Cart & Checkout                              */
/* ---------------------------------------------------------------- */

.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout,
.wp-block-woocommerce-cart-items-block,
.wp-block-woocommerce-cart-line-items-block,
.wp-block-woocommerce-cart-order-summary-block,
.wp-block-woocommerce-cart-totals-block,
.wp-block-woocommerce-filled-cart-block,
.wp-block-woocommerce-empty-cart-block,
.wp-block-woocommerce-cart-cross-sells-block,
.wp-block-woocommerce-cart-accepted-payment-methods-block {
    color: var(--cfx-text);
}

.wc-block-cart-items,
.wc-block-cart-items__row,
.wc-block-components-order-summary,
.wc-block-components-panel,
.wc-block-components-checkout-step,
.wc-block-components-checkout-step__container,
.wc-block-components-totals-wrapper,
.wc-block-components-shipping-rates-control,
.wc-block-components-address-card,
.wc-block-cart__totals-title {
    background: var(--cfx-bg2);
    border-color: var(--cfx-border) !important;
    color: var(--cfx-text);
}

.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-totals-item__description,
.wc-block-components-product-name,
.wc-block-components-product-metadata,
.wc-block-components-product-metadata__description,
.wc-block-cart-item__quantity,
.wc-block-components-quantity-selector,
.wc-block-components-radio-control__label,
.wc-block-components-radio-control__description,
.wc-block-components-checkout-step__heading,
.wc-block-components-checkout-step__description,
.wc-block-cart__totals-title,
.wc-block-components-totals-footer-item {
    color: var(--cfx-text) !important;
}

.wc-block-components-product-badge,
.wc-block-cart-item__prices .wc-block-components-product-price,
.wc-block-components-totals-item__value {
    color: var(--cfx-amber) !important;
}

.wc-block-components-quantity-selector,
.wc-block-components-quantity-selector__button,
.wc-block-components-quantity-selector__input {
    background: rgba(255, 255, 255, .04) !important;
    color: var(--cfx-text) !important;
    border-color: var(--cfx-border) !important;
}

/* Inputs across cart/checkout blocks */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-checkout__form input[type="text"],
.wc-block-checkout__form input[type="email"],
.wc-block-checkout__form input[type="tel"],
.wc-block-components-combobox input,
.wc-block-components-radio-control__input,
.wc-blocks-components-select select,
.wc-block-components-select select {
    background: rgba(255, 255, 255, .04) !important;
    color: var(--cfx-text) !important;
    border-color: var(--cfx-border) !important;
}

.wc-block-components-text-input label,
.wc-block-components-text-input ::placeholder,
.wc-block-checkout__form ::placeholder {
    color: var(--cfx-muted) !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-text-input textarea:focus,
.wc-block-checkout__form input:focus,
.wc-blocks-components-select select:focus {
    outline-color: var(--cfx-orange) !important;
    border-color: var(--cfx-orange) !important;
    box-shadow: 0 0 0 1px var(--cfx-orange) !important;
}

/* Coupon / discount forms */
.wc-block-components-totals-coupon__button,
.wc-block-components-totals-coupon-link {
    color: var(--cfx-amber) !important;
}

/* Primary action buttons */
.wc-block-cart__submit-container .wc-block-components-button,
.wc-block-components-checkout-place-order-button,
.wc-block-components-button:not(.is-link),
.wc-proceed-to-checkout a.checkout-button,
.wc-proceed-to-checkout .wc-block-components-button {
    background: var(--cfx-grad) !important;
    color: #fff !important;
    border: none !important;
}

.wc-block-cart__submit-container .wc-block-components-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-button:not(.is-link):hover {
    filter: brightness(1.1);
    color: #fff !important;
}

.wc-block-components-button.is-link {
    color: var(--cfx-amber) !important;
}

/* Order summary heading / totals separators */
.wc-block-components-totals-item,
.wc-block-components-totals-footer-item {
    border-color: var(--cfx-border) !important;
}

/* Loading skeletons */
.wc-block-components-skeleton__inner {
    background-color: var(--cfx-surface) !important;
}

/* Payment gateway logos -- many ship transparent/dark-text PNGs that
   disappear against a dark page, so give them a light chip */
.wc-block-components-radio-control__label img,
.payment_methods img,
.woocommerce ul.payment_methods img {
    background: #fff;
    border-radius: 4px;
    padding: 2px 6px;
    vertical-align: middle;
}

/* Hide WP tagline below site name -- too wide, stretches header */
.site-description {
    display: none;
}

/* cFox custom logo: sit beside the 'cFox' site title in the header */
.site-branding {
    display: flex !important;
    align-items: center;
    gap: 10px;
}
.site-logo img {
    height: 44px;
    width: auto;
    display: block;
}
