/* Theme sections controlled by ColorAssignment_Tbl. */

html,
body {
    color: var(--theme-page-text, var(--text-primary, #1f2937));
    background-color: var(--theme-page-bg, #fff);
    color-scheme: var(--theme-color-scheme, normal);
}

body a {
    color: inherit;
}

body a:hover,
body a:focus-visible {
    color: var(--theme-page-hover-text, var(--color-primary));
}

body hr {
    border-color: var(--theme-page-border, var(--color-border));
}

.card,
.accordion-item,
.collapse-card,
.content-box,
.info-box,
.block:not(.section-assignment-card) {
    color: var(--theme-surface-text, var(--theme-page-text));
    background-color: var(--theme-surface-bg, transparent);
    border-color: var(--theme-surface-border, var(--theme-page-border));
}

.card:hover,
.content-box:hover,
.info-box:hover {
    color: var(--theme-surface-hover-text, var(--theme-surface-text));
    border-color: var(--theme-surface-hover-border, var(--theme-surface-border));
}

#product-listing .mobile-video-card,
#product-listing .mobile-card-link,
#product-listing .mobile-card-content,
#product-listing .pr-mob-item > .row,
.product-card,
.product-item,
.shop-product-card {
    color: var(--theme-product-card-text, var(--theme-surface-text)) !important;
    background-color: var(--theme-product-card-bg, var(--theme-surface-bg)) !important;
    border-color: var(--theme-product-card-border, var(--theme-surface-border)) !important;
}

#product-listing .mobile-product-title,
#product-listing .product-name,
.product-card .product-name,
.product-item .product-name {
    color: var(--theme-product-card-text, var(--theme-surface-text)) !important;
}

#product-listing .mobile-product-title:hover,
#product-listing .product-name:hover,
.product-card .product-name:hover,
.product-item .product-name:hover {
    color: var(--theme-product-card-hover-text, var(--color-primary)) !important;
}

.form-control,
.form-select,
.input-group-text,
textarea,
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not(.mobile-ios-search__input),
select {
    color: var(--theme-form-text, var(--theme-page-text));
    background-color: var(--theme-form-bg, var(--theme-surface-bg));
    border-color: var(--theme-form-border, var(--theme-page-border));
}

.form-control::placeholder,
textarea::placeholder,
input::placeholder {
    color: var(--theme-muted-text, #6b7280);
    opacity: 1;
}

.form-control:focus,
.form-select:focus,
textarea:focus,
input:not(.mobile-ios-search__input):focus,
select:focus {
    color: var(--theme-form-text, var(--theme-page-text));
    background-color: var(--theme-form-hover-bg, var(--theme-form-bg));
    border-color: var(--theme-form-hover-border, var(--color-primary));
    box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--theme-form-hover-border, var(--color-primary)) 18%, transparent);
}

.table {
    --bs-table-color: var(--theme-table-text, var(--theme-page-text));
    --bs-table-bg: var(--theme-table-bg, var(--theme-surface-bg));
    --bs-table-border-color: var(--theme-table-border, var(--theme-page-border));
    --bs-table-hover-color: var(--theme-table-hover-text, var(--theme-table-text));
    --bs-table-hover-bg: var(--theme-table-hover-bg, var(--theme-surface-hover-bg));
    color: var(--theme-table-text, var(--theme-page-text));
    border-color: var(--theme-table-border, var(--theme-page-border));
}

.list-group-item:not(#modalShoppingCart .list-group-item) {
    color: var(--theme-table-text, var(--theme-page-text));
    background-color: var(--theme-table-bg, var(--theme-surface-bg));
    border-color: var(--theme-table-border, var(--theme-page-border));
}

.list-group-item:not(#modalShoppingCart .list-group-item):hover {
    color: var(--theme-table-hover-text, var(--theme-table-text));
    background-color: var(--theme-table-hover-bg, var(--theme-surface-hover-bg));
}

.modal-content,
.offcanvas:not(#modalShoppingCart),
.popover,
.toast,
.dropdown-menu:not(.nav-body .dropdown-menu) {
    color: var(--theme-dialog-text, var(--theme-page-text));
    background-color: var(--theme-dialog-bg, var(--theme-surface-bg));
    border-color: var(--theme-dialog-border, var(--theme-page-border));
}

.modal-header,
.modal-footer,
.offcanvas-header {
    border-color: var(--theme-dialog-border, var(--theme-page-border));
}

.text-muted,
.text-secondary,
.form-text,
.small-muted,
small.text-muted {
    color: var(--theme-muted-text, #6b7280) !important;
}

.price,
.product-price,
.final-price,
.mobile-final-price,
.pr-price,
[data-price] {
    color: var(--theme-price-text, var(--color-primary)) !important;
}

.price:hover,
.product-price:hover,
.final-price:hover {
    color: var(--theme-price-hover-text, var(--theme-price-text)) !important;
}

.badge:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
.tag-badge,
.cart-glass-badge {
    color: var(--theme-badge-text, #fff);
    background-color: var(--theme-badge-bg, var(--color-primary));
    border-color: var(--theme-badge-border, transparent);
}

.badge:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info):hover,
.tag-badge:hover {
    color: var(--theme-badge-hover-text, var(--theme-badge-text));
    background-color: var(--theme-badge-hover-bg, var(--theme-badge-bg));
    border-color: var(--theme-badge-hover-border, var(--theme-badge-border));
}

.mobile-search-safe-space {
    background-color: var(--theme-search-rail-bg, var(--mob-search-bg, #fff));
    border-color: var(--theme-search-rail-border, transparent);
    border-bottom-style: solid;
    border-bottom-width: 1px;
}

.pagination {
    --bs-pagination-color: var(--theme-pagination-text, var(--theme-page-text));
    --bs-pagination-bg: var(--theme-pagination-bg, var(--theme-surface-bg));
    --bs-pagination-border-color: var(--theme-pagination-border, var(--theme-page-border));
    --bs-pagination-hover-color: var(--theme-pagination-hover-text, var(--color-primary));
    --bs-pagination-hover-bg: var(--theme-pagination-hover-bg, var(--theme-surface-hover-bg));
    --bs-pagination-hover-border-color: var(--theme-pagination-hover-border, var(--color-primary));
    --bs-pagination-active-color: var(--theme-pagination-hover-text, #fff);
    --bs-pagination-active-bg: var(--theme-pagination-hover-bg, var(--color-primary));
    --bs-pagination-active-border-color: var(--theme-pagination-hover-border, var(--color-primary));
}

.breadcrumb {
    --bs-breadcrumb-divider-color: var(--theme-muted-text, #6b7280);
    --bs-breadcrumb-item-active-color: var(--theme-muted-text, #6b7280);
    color: var(--theme-pagination-text, var(--theme-page-text));
    background-color: var(--theme-pagination-bg, transparent);
    border-color: var(--theme-pagination-border, transparent);
}
