/*
 * Game Center GT — Modo Día/Noche 2.2
 * All store color changes are gated behind data-gcgt-mode.
 * Images, videos, plugin popups, iframe payment fields and scripted behavior
 * are intentionally NOT modified.
 */

/* DAY — Dorado Elite: light background, gold CTAs, high-contrast charcoal text. */
html[data-gcgt-mode="day"],
html[data-gcgt-mode="day"] body {
    color-scheme: light;
    --gcgt-page: #f8f6f1;
    --gcgt-card: #ffffff;
    --gcgt-surface: #f0ebe1;
    --gcgt-header: #ffffff;
    --gcgt-footer: #101114;
    --gcgt-footer-text: #f5f6fa;
    --gcgt-text: #101114;
    --gcgt-muted: #515865;
    --gcgt-border: #d9dde5;
    --gcgt-accent: #d4a634;
    --gcgt-accent-hover: #e4b847;
    --gcgt-link: #795407;
    --gcgt-link-hover: #583d05;
    --gcgt-button-text: #101114;
    --gcgt-green: #16803a;
    --gcgt-input: #ffffff;
    --global-palette1: #d4a634;
    --global-palette2: #af831d;
    --global-palette3: #101114;
    --global-palette4: #2f3138;
    --global-palette5: #515865;
    --global-palette6: #777d88;
    --global-palette7: #efe9dd;
    --global-palette8: #f8f6f1;
    --global-palette9: #ffffff;
    --global-palette-highlight: #795407;
    --global-palette-highlight-alt: #583d05;
    --global-palette-btn-bg: #d4a634;
    --global-palette-btn-bg-hover: #e4b847;
    --global-palette-btn: #101114;
    --global-palette-btn-hover: #101114;
    --global-body-font-color: #101114;
    --global-heading-font-color: #101114;
    --wp--preset--color--theme-palette1: #d4a634;
    --wp--preset--color--theme-palette2: #af831d;
    --wp--preset--color--theme-palette3: #101114;
    --wp--preset--color--theme-palette4: #2f3138;
    --wp--preset--color--theme-palette5: #515865;
    --wp--preset--color--theme-palette6: #777d88;
    --wp--preset--color--theme-palette7: #efe9dd;
    --wp--preset--color--theme-palette8: #f8f6f1;
    --wp--preset--color--theme-palette9: #ffffff;
}

/* NIGHT — Azul Premium. */
html[data-gcgt-mode="night"],
html[data-gcgt-mode="night"] body {
    color-scheme: dark;
    --gcgt-page: #0b1220;
    --gcgt-card: #172b4d;
    --gcgt-surface: #10203a;
    --gcgt-header: #101c31;
    --gcgt-footer: #090f1b;
    --gcgt-footer-text: #ffffff;
    --gcgt-text: #ffffff;
    --gcgt-muted: #c4d6ea;
    --gcgt-border: #344c6a;
    --gcgt-accent: #2563eb;
    --gcgt-accent-hover: #3b82f6;
    --gcgt-link: #93bbff;
    --gcgt-link-hover: #d0e1ff;
    --gcgt-button-text: #ffffff;
    --gcgt-green: #10b981;
    --gcgt-input: #10203a;
    --global-palette1: #2563eb;
    --global-palette2: #1d4ed8;
    --global-palette3: #ffffff;
    --global-palette4: #e5ecf5;
    --global-palette5: #c4d6ea;
    --global-palette6: #8ea6c1;
    --global-palette7: #273d5b;
    --global-palette8: #172b4d;
    --global-palette9: #0b1220;
    --global-palette-highlight: #93bbff;
    --global-palette-highlight-alt: #d0e1ff;
    --global-palette-btn-bg: #2563eb;
    --global-palette-btn-bg-hover: #3b82f6;
    --global-palette-btn: #ffffff;
    --global-palette-btn-hover: #ffffff;
    --global-body-font-color: #ffffff;
    --global-heading-font-color: #ffffff;
    --wp--preset--color--theme-palette1: #2563eb;
    --wp--preset--color--theme-palette2: #1d4ed8;
    --wp--preset--color--theme-palette3: #ffffff;
    --wp--preset--color--theme-palette4: #e5ecf5;
    --wp--preset--color--theme-palette5: #c4d6ea;
    --wp--preset--color--theme-palette6: #8ea6c1;
    --wp--preset--color--theme-palette7: #273d5b;
    --wp--preset--color--theme-palette8: #172b4d;
    --wp--preset--color--theme-palette9: #0b1220;
}

/* Kadence shell. These selectors do not target hero backgrounds or banners. */
html[data-gcgt-mode] body,
html[data-gcgt-mode] #wrapper,
html[data-gcgt-mode] #inner-wrap,
html[data-gcgt-mode] .site,
html[data-gcgt-mode] .site-content {
    background-color: var(--gcgt-page);
    color: var(--gcgt-text);
}
html[data-gcgt-mode] :is(#masthead, #main-header, #mobile-header, .site-header-row-container, .site-header-row-container-inner, .site-header-inner-wrap) {
    background-color: var(--gcgt-header);
    color: var(--gcgt-text);
}
html[data-gcgt-mode] :is(.site-header, .site-header-inner-wrap, .mobile-drawer-content) :is(a, .nav-drop-title-wrap, .menu-toggle-open, .menu-toggle-close, .search-toggle-open) {
    color: var(--gcgt-text);
}
html[data-gcgt-mode] :is(.site-header, .mobile-drawer-content) a:hover {
    color: var(--gcgt-link);
}
html[data-gcgt-mode] :is(.sub-menu, .drawer-inner, .mobile-drawer-content) {
    background-color: var(--gcgt-card);
    color: var(--gcgt-text);
    border-color: var(--gcgt-border);
}
html[data-gcgt-mode] :is(.site-footer, .site-footer-wrap, .site-footer-row-container, .site-footer-row-container-inner) {
    background-color: var(--gcgt-footer);
    color: var(--gcgt-footer-text);
}
html[data-gcgt-mode] .site-footer :is(a, p, h2, h3, h4, h5, h6, .widget-title) {
    color: var(--gcgt-footer-text);
}
html[data-gcgt-mode] .site-footer a:hover {
    color: var(--gcgt-accent);
}

/* Default WordPress content and Kadence surfaces, without altering image blocks. */
html[data-gcgt-mode] :is(.content-bg, .entry-content-wrap, .widget-area .widget, .wp-block-group.is-style-default) {
    color: var(--gcgt-text);
}
/* Avoid repainting typography deliberately placed over custom game banners. */
html[data-gcgt-mode] :is(.entry-header, .woocommerce) :is(h1, h2, h3, h4, h5, h6) {
    color: var(--gcgt-text);
}
html[data-gcgt-mode] :is(.entry-meta, .woocommerce-breadcrumb, .woocommerce-result-count, .product_meta) {
    color: var(--gcgt-muted);
}
html[data-gcgt-mode] :is(.woocommerce, .entry-header) a:not(.button):not(.wp-element-button):not(.wp-block-button__link) {
    color: var(--gcgt-link);
}
html[data-gcgt-mode] :is(.woocommerce, .entry-header) a:not(.button):not(.wp-element-button):not(.wp-block-button__link):hover {
    color: var(--gcgt-link-hover);
}

/* WooCommerce catalog and shop controls; no changes to order or payment behavior. */
html[data-gcgt-mode] .woocommerce :is(ul.products li.product, .woocommerce-tabs .panel, .cart_totals, .woocommerce-MyAccount-content, .woocommerce-MyAccount-navigation) {
    color: var(--gcgt-text);
    border-color: var(--gcgt-border);
}
html[data-gcgt-mode] .woocommerce :is(.price, .amount, .woocommerce-Price-amount, .product_title, .woocommerce-loop-product__title) {
    color: var(--gcgt-text);
}
html[data-gcgt-mode] .woocommerce :is(table.shop_table, table.shop_table th, table.shop_table td, .woocommerce-tabs, .woocommerce-tabs ul.tabs li, .woocommerce-pagination ul.page-numbers) {
    border-color: var(--gcgt-border);
    color: var(--gcgt-text);
}
html[data-gcgt-mode] .woocommerce :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
    background-color: var(--gcgt-card);
    color: var(--gcgt-text);
    border-color: var(--gcgt-accent);
}
html[data-gcgt-mode] .woocommerce :is(.button, a.button, button.button, input.button, .single_add_to_cart_button),
html[data-gcgt-mode] .site-content :is(.wp-block-button__link, .wp-element-button):not(.wc-block-components-button) {
    background-color: var(--gcgt-accent);
    border-color: var(--gcgt-accent);
    color: var(--gcgt-button-text);
}
html[data-gcgt-mode] .woocommerce :is(.button, a.button, button.button, input.button, .single_add_to_cart_button):hover,
html[data-gcgt-mode] .site-content :is(.wp-block-button__link, .wp-element-button):not(.wc-block-components-button):hover {
    background-color: var(--gcgt-accent-hover);
    border-color: var(--gcgt-accent-hover);
    color: var(--gcgt-button-text);
}
html[data-gcgt-mode] :is(.woocommerce, .site-content) :is(input.input-text, textarea.input-text, select):not([type="hidden"]),
html[data-gcgt-mode] .woocommerce .select2-container .select2-selection {
    background-color: var(--gcgt-input);
    color: var(--gcgt-text);
    border-color: var(--gcgt-border);
}
html[data-gcgt-mode] :is(.woocommerce, .site-content) :is(input.input-text, textarea.input-text)::placeholder {
    color: var(--gcgt-muted);
    opacity: 1;
}
html[data-gcgt-mode] .woocommerce :is(.quantity .qty, .woocommerce-ordering select) {
    background-color: var(--gcgt-input);
    color: var(--gcgt-text);
    border-color: var(--gcgt-border);
}
html[data-gcgt-mode] .woocommerce .select2-container .select2-selection__rendered {
    color: var(--gcgt-text);
}

/* WooCommerce blocks: style only containers; NEVER style iframes or gateways. */
html[data-gcgt-mode] :is(.wc-block-cart, .wc-block-checkout, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) {
    color: var(--gcgt-text);
}
html[data-gcgt-mode] :is(.wc-block-components-sidebar, .wc-block-components-totals-wrapper, .wc-block-components-order-summary, .wc-block-components-product-details) {
    border-color: var(--gcgt-border);
    color: var(--gcgt-text);
}
html[data-gcgt-mode] :is(.wc-block-components-text-input input, .wc-block-components-combobox-control input) {
    background-color: var(--gcgt-input);
    color: var(--gcgt-text);
    border-color: var(--gcgt-border);
}
html[data-gcgt-mode] :is(.wc-block-cart, .wc-block-checkout) :is(h1, h2, h3, h4, p, label, .wc-block-components-formatted-money-amount) {
    color: var(--gcgt-text);
}
html[data-gcgt-mode] :is(.wc-block-components-button:not(.is-tertiary), .wc-block-components-checkout-place-order-button) {
    background-color: var(--gcgt-accent);
    color: var(--gcgt-button-text);
    border-color: var(--gcgt-accent);
}
html[data-gcgt-mode] :is(.wc-block-components-button:not(.is-tertiary), .wc-block-components-checkout-place-order-button):hover {
    background-color: var(--gcgt-accent-hover);
    color: var(--gcgt-button-text);
}

/* Small appearance control. All styles are prefixed to avoid collisions. */
.gcgt-appearance-switch,
.gcgt-appearance-switch * {
    box-sizing: border-box;
}
.gcgt-appearance-switch {
    --gcgt-switch-bg: #ffffff;
    --gcgt-switch-fg: #101114;
    --gcgt-switch-border: #d9dde5;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: max-content;
    max-width: calc(100vw - 22px);
    padding: 6px 8px 6px 14px;
    border-radius: 999px;
    border: 1px solid var(--gcgt-switch-border);
    background: var(--gcgt-switch-bg);
    color: var(--gcgt-switch-fg);
    box-shadow: 0 8px 28px rgba(8, 17, 31, .18);
    line-height: 1;
    isolation: isolate;
    font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .015em;
    white-space: nowrap;
}
html[data-gcgt-mode="night"] .gcgt-appearance-switch {
    --gcgt-switch-bg: #172b4d;
    --gcgt-switch-fg: #ffffff;
    --gcgt-switch-border: #344c6a;
}
.gcgt-switch-title {
    color: var(--gcgt-switch-fg);
    pointer-events: none;
}
.gcgt-switch-options {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 3px;
    background: rgba(119, 125, 136, .14);
    border-radius: 999px;
}
.gcgt-appearance-switch .gcgt-switch-button,
html[data-gcgt-mode] .gcgt-appearance-switch .gcgt-switch-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;
    padding: 7px;
    margin: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--gcgt-switch-fg);
    cursor: pointer;
    box-shadow: none;
    appearance: none;
    text-decoration: none;
    transform: none;
    line-height: 1;
    transition: color 140ms ease, background-color 140ms ease, transform 140ms ease;
}
.gcgt-appearance-switch .gcgt-switch-button:hover,
html[data-gcgt-mode] .gcgt-appearance-switch .gcgt-switch-button:hover {
    background: rgba(119,125,136,.2);
    color: var(--gcgt-switch-fg);
}
.gcgt-appearance-switch .gcgt-switch-button[data-gcgt-choice="day"].is-active,
html[data-gcgt-mode] .gcgt-appearance-switch .gcgt-switch-button[data-gcgt-choice="day"].is-active {
    background: #d4a634;
    color: #101114;
    box-shadow: 0 2px 7px rgba(129, 89, 8, .19);
}
.gcgt-appearance-switch .gcgt-switch-button[data-gcgt-choice="night"].is-active,
html[data-gcgt-mode] .gcgt-appearance-switch .gcgt-switch-button[data-gcgt-choice="night"].is-active {
    background: #2563eb;
    color: #fff;
    box-shadow: 0 2px 7px rgba(4, 35, 105, .23);
}
.gcgt-appearance-switch .gcgt-switch-button svg {
    display: block;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    pointer-events: none;
}
.gcgt-appearance-switch .gcgt-switch-button:focus-visible {
    outline: 3px solid #2a84ff;
    outline-offset: 2px;
}
.gcgt-appearance-switch .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.gcgt-switch-floating {
    position: fixed;
    bottom: max(20px, env(safe-area-inset-bottom));
    left: 18px;
    z-index: 9998;
}
.gcgt-switch-floating.gcgt-switch-right {
    left: auto;
    right: 18px;
}
.gcgt-switch-inline {
    position: relative;
    vertical-align: middle;
}
@media (max-width: 600px) {
    .gcgt-switch-floating {
        bottom: max(13px, env(safe-area-inset-bottom));
        left: 10px;
    }
    .gcgt-switch-floating.gcgt-switch-right {
        left: auto;
        right: 10px;
    }
    .gcgt-appearance-switch {
        padding: 5px;
        gap: 0;
    }
    .gcgt-switch-floating .gcgt-switch-title {
        display: none;
    }
    .gcgt-switch-options {
        padding: 2px;
    }
    .gcgt-appearance-switch .gcgt-switch-button {
        width: 35px;
        height: 35px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .gcgt-appearance-switch .gcgt-switch-button {
        transition: none;
    }
}
