/**
 * Light theme overrides when body has class .site-theme-light.
 * Dark theme (default/Nikky) uses .site-theme-dark or no class.
 */
.site-theme-light {
    --white: #1a1a1a;
    --black: #1a1a1a;
    --dark-gray: #f5f5f5;
    --text-color: #1a1a1a;
    --text-light: #444;
    --shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.site-theme-light body {
    background-color: #fafafa;
    color: var(--text-color);
}

.site-theme-light .main-content {
    background-color: var(--dark-gray);
    color: var(--white);
}

.site-theme-light .main-content h1,
.site-theme-light .main-content h2,
.site-theme-light .main-content h3,
.site-theme-light .main-content h4,
.site-theme-light .main-content h5,
.site-theme-light .main-content h6 {
    color: var(--white);
}

/* Navbar: light background, dark text */
.site-theme-light .navbar {
    background-color: #ffffff;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
}

.site-theme-light .navbar-logo-text {
    color: var(--primary-color);
}

.site-theme-light .navbar-logo:hover .navbar-logo-text {
    color: var(--black);
}

.site-theme-light .navbar-link {
    color: #333333;
}

.site-theme-light .navbar-link:hover {
    color: var(--primary-color);
}

.site-theme-light .navbar-toggle span {
    background-color: #333333;
}

.site-theme-light .navbar-link--button {
    background-color: var(--primary-color);
    color: var(--black);
}

.site-theme-light .navbar .navbar-link--button:hover {
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Mobile navbar dropdown */
@media (max-width: 1024px) {
    .site-theme-light .navbar-menu {
        background-color: #ffffff;
        border-top: 1px solid rgba(0, 0, 0, 0.08);
    }

    .site-theme-light .navbar-link {
        color: #333333;
        border-bottom-color: rgba(0, 0, 0, 0.08);
    }

    .site-theme-light .navbar-link--button {
        border-color: var(--primary-color);
    }
}

/* Footer: light gray, dark text */
.site-theme-light .footer {
    background-color: #e8e8e8;
    color: #333333;
    border-top-color: var(--primary-color);
}

.site-theme-light .footer-copyright {
    color: rgba(0, 0, 0, 0.6);
}

.site-theme-light .footer-credit {
    color: rgba(0, 0, 0, 0.5);
}

.site-theme-light .footer-credit-link {
    color: var(--primary-color);
}

.site-theme-light .footer-credit-link:hover {
    color: var(--black);
}

.site-theme-light .footer-platform-name {
    color: rgba(0, 0, 0, 0.7);
}

/* Homepage / section content: override hardcoded white text */
.site-theme-light .section-subtitle {
    color: rgba(0, 0, 0, 0.75);
}

.site-theme-light .section-header h2 {
    color: var(--primary-color);
}

.site-theme-light .about-section {
    background-color: var(--dark-gray);
}

.site-theme-light .about-section .container,
.site-theme-light .about-section .about-content {
    color: var(--white);
}

.site-theme-light .about-text p {
    color: rgba(0, 0, 0, 0.85);
}

.site-theme-light .products-section {
    background-color: var(--dark-gray);
}

.site-theme-light .product-card {
    background-color: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.site-theme-light .product-card:hover {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    border-color: var(--primary-color);
}

.site-theme-light .product-card h3 {
    color: var(--white);
}

.site-theme-light .product-card p {
    color: rgba(0, 0, 0, 0.75);
}

.site-theme-light .cta-section {
    border-top-color: rgba(0, 0, 0, 0.12);
    border-bottom-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .cta-content p {
    color: var(--white);
}

.site-theme-light .info-section {
    background-color: var(--dark-gray);
}

.site-theme-light .info-card {
    background-color: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.site-theme-light .info-card:hover {
    border-color: var(--primary-color);
}

.site-theme-light .info-card h3 {
    color: var(--white);
}

.site-theme-light .info-card p {
    color: rgba(0, 0, 0, 0.8);
}

.site-theme-light .info-link {
    color: var(--primary-color);
}

.site-theme-light .product-image-placeholder {
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.15), rgba(255, 215, 0, 0.08));
}

/* Slideshow "Bestel Nu" button: in light theme var(--white) is dark, so override hover for visible contrast */
.site-theme-light .slide-order-btn {
    color: #1a1a1a;
}

.site-theme-light .slide-order-btn:hover {
    background-color: #ffffff;
    color: #1a1a1a;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

/* Openingsuren page – light mode */
.site-theme-light .opening-hours-table-public {
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .opening-hours-table-public thead {
    background-color: rgba(0, 0, 0, 0.04);
}

.site-theme-light .opening-hours-table-public th {
    color: var(--primary-color);
    border-bottom-color: rgba(0, 0, 0, 0.15);
}

.site-theme-light .opening-hours-table-public td {
    border-bottom-color: rgba(0, 0, 0, 0.08);
}

.site-theme-light .opening-hours-table-public tbody tr:hover {
    background-color: rgba(0, 0, 0, 0.03);
}

.site-theme-light .day-name-public,
.site-theme-light .day-hours {
    color: #1a1a1a;
}

.site-theme-light .time-range {
    background-color: rgba(0, 0, 0, 0.06);
    color: #1a1a1a;
}

.site-theme-light .time-separator {
    color: rgba(0, 0, 0, 0.5);
}

.site-theme-light .no-hours,
.site-theme-light .closed-reason {
    color: rgba(0, 0, 0, 0.6);
}

.site-theme-light .no-hours-message {
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.12);
    color: #1a1a1a;
}

.site-theme-light .calendar-container {
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .calendar-header h2 {
    color: var(--primary-color);
}

.site-theme-light .calendar-nav-btn {
    background-color: rgba(0, 0, 0, 0.05);
    border-color: var(--primary-color);
    color: var(--primary-color);
}

.site-theme-light .calendar-nav-btn:hover {
    background-color: var(--primary-color);
    color: #1a1a1a;
}

.site-theme-light .calendar-table thead th {
    color: var(--primary-color);
    border-bottom-color: rgba(0, 0, 0, 0.15);
}

.site-theme-light .calendar-day {
    border-color: rgba(0, 0, 0, 0.1);
}

.site-theme-light .calendar-day.empty {
    background-color: rgba(0, 0, 0, 0.02);
}

.site-theme-light .calendar-day.today {
    background-color: rgba(0, 0, 0, 0.06);
    border-color: var(--primary-color);
}

.site-theme-light .calendar-day-number {
    color: #1a1a1a;
}

.site-theme-light .calendar-legend {
    border-top-color: rgba(0, 0, 0, 0.1);
}

.site-theme-light .legend-item {
    color: #1a1a1a;
}

.site-theme-light .upcoming-closures {
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .upcoming-closures h3 {
    color: var(--primary-color);
}

.site-theme-light .closure-item {
    background-color: rgba(0, 0, 0, 0.03);
    border-color: rgba(0, 0, 0, 0.1);
    color: #1a1a1a;
}

.site-theme-light .closure-item:hover {
    background-color: rgba(0, 0, 0, 0.05);
    border-color: var(--primary-color);
}

.site-theme-light .closure-date {
    color: var(--primary-color);
}

.site-theme-light .closure-reason {
    color: rgba(0, 0, 0, 0.65);
}

/* Foodtruck page hero – light mode */
.site-theme-light .foodtruck-hero .hero-content h1 {
    color: var(--primary-color);
}

.site-theme-light .foodtruck-hero .hero-subtitle {
    color: #1a1a1a;
}

/* Customer login / forgot password / reset – light mode */
.site-theme-light .customer-login-box {
    background: #ffffff;
    border-color: rgba(0, 0, 0, 0.15);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

.site-theme-light .customer-login-title {
    color: var(--primary-color);
}

.site-theme-light .customer-login-title i {
    color: var(--primary-color);
}

.site-theme-light .customer-form-label {
    color: #1a1a1a;
}

.site-theme-light .customer-form-input {
    background-color: #f8f9fa;
    border-color: rgba(0, 0, 0, 0.2);
    color: #1a1a1a;
}

.site-theme-light .customer-form-input:focus {
    background-color: #ffffff;
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08);
}

.site-theme-light .customer-form-input::placeholder {
    color: rgba(0, 0, 0, 0.45);
}

.site-theme-light .customer-login-button {
    background-color: var(--primary-color);
    color: #1a1a1a;
}

.site-theme-light .customer-login-button:hover {
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.site-theme-light .customer-login-footer {
    border-top-color: rgba(0, 0, 0, 0.1);
}

.site-theme-light .customer-login-footer p {
    color: rgba(0, 0, 0, 0.7);
}

.site-theme-light .customer-login-footer a {
    color: var(--primary-color);
}

.site-theme-light .customer-login-footer a:hover {
    color: var(--primary-color);
    filter: brightness(0.85);
}

/* Bestellen (order) page – light mode */
.site-theme-light .closure-notice-text {
    color: #1a1a1a;
}

.site-theme-light .closure-notice-text strong {
    color: #dc3545;
}

.site-theme-light .category-jump-nav {
    background-color: rgba(0, 0, 0, 0.04);
    border-bottom-color: rgba(0, 0, 0, 0.1);
}

.site-theme-light .category-jump-link {
    color: rgba(0, 0, 0, 0.8);
}

.site-theme-light .category-jump-link:hover,
.site-theme-light .category-jump-link.is-active {
    background-color: rgba(0, 0, 0, 0.06);
    color: var(--primary-color);
}

.site-theme-light .category-title {
    color: var(--primary-color);
    border-bottom-color: rgba(0, 0, 0, 0.15);
}

.site-theme-light .category-description {
    color: rgba(0, 0, 0, 0.75);
}

.site-theme-light .order-page-layout .product-card {
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.1);
}

.site-theme-light .order-page-layout .product-card:hover {
    background-color: #fafafa;
    border-color: var(--primary-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.site-theme-light .order-page-layout .product-name {
    color: #1a1a1a;
}

.site-theme-light .order-page-layout .product-description {
    color: rgba(0, 0, 0, 0.65);
}

.site-theme-light .order-page-layout .product-price {
    color: var(--primary-color);
}

.site-theme-light .order-page-layout .product-image-container {
    background-color: rgba(0, 0, 0, 0.05);
}

.site-theme-light .order-page-layout .invulveld-group {
    border-color: rgba(0, 0, 0, 0.15);
}

.site-theme-light .order-page-layout .option-label {
    color: #1a1a1a;
}

.site-theme-light .order-page-layout .option-price {
    color: var(--primary-color);
}

.site-theme-light .order-page-layout .invulveld-option:hover {
    background-color: rgba(0, 0, 0, 0.05);
}

.site-theme-light .no-products {
    color: rgba(0, 0, 0, 0.7);
}

/* Cart sidebar */
.site-theme-light .cart-container {
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .cart-header {
    border-bottom-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .cart-title {
    color: var(--primary-color);
}

.site-theme-light .cart-close-btn {
    color: rgba(0, 0, 0, 0.6);
}

.site-theme-light .cart-close-btn:hover {
    color: #1a1a1a;
}

.site-theme-light .cart-empty {
    color: rgba(0, 0, 0, 0.55);
}

.site-theme-light .cart-item {
    background-color: rgba(0, 0, 0, 0.04);
    border-color: rgba(0, 0, 0, 0.1);
}

.site-theme-light .cart-item-name {
    color: #1a1a1a;
}

.site-theme-light .cart-item-options,
.site-theme-light .cart-item-option {
    color: rgba(0, 0, 0, 0.7);
}

.site-theme-light .cart-item-remove {
    color: rgba(0, 0, 0, 0.5);
}

.site-theme-light .cart-item-remove:hover {
    color: #dc3545;
}

.site-theme-light .cart-item-footer {
    border-top-color: rgba(0, 0, 0, 0.08);
}

.site-theme-light .quantity-btn {
    background-color: rgba(0, 0, 0, 0.06);
    border-color: rgba(0, 0, 0, 0.15);
    color: #1a1a1a;
}

.site-theme-light .quantity-btn:hover {
    background-color: rgba(0, 0, 0, 0.1);
    border-color: var(--primary-color);
}

.site-theme-light .quantity-value {
    color: #1a1a1a;
}

.site-theme-light .cart-item-price {
    color: var(--primary-color);
}

.site-theme-light .delivery-option-label {
    color: #1a1a1a;
}

.site-theme-light .delivery-option {
    background-color: rgba(0, 0, 0, 0.03);
    border-color: rgba(0, 0, 0, 0.1);
}

.site-theme-light .delivery-option:hover {
    background-color: rgba(0, 0, 0, 0.05);
    border-color: var(--primary-color);
}

.site-theme-light .cart-footer {
    border-top-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .cart-subtotal,
.site-theme-light .cart-service-cost,
.site-theme-light .cart-platform-fee,
.site-theme-light .subtotal-label,
.site-theme-light .service-label,
.site-theme-light .platform-label,
.site-theme-light .subtotal-amount,
.site-theme-light .service-amount,
.site-theme-light .platform-amount {
    color: rgba(0, 0, 0, 0.8);
}

.site-theme-light .service-cost-distance-note {
    color: rgba(0, 0, 0, 0.6);
}

.site-theme-light .cart-total {
    border-top-color: rgba(0, 0, 0, 0.12);
}

.site-theme-light .total-label {
    color: #1a1a1a;
}

.site-theme-light .total-amount {
    color: var(--primary-color);
}

.site-theme-light .checkout-btn {
    background-color: var(--primary-color);
    color: #1a1a1a;
}

.site-theme-light .checkout-btn:hover:not(:disabled) {
    filter: brightness(0.95);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.site-theme-light .cart-items::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.06);
}

.site-theme-light .cart-items::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
}

.site-theme-light .cart-items::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}

