/*
 * Theme token map
 * 1. Foundations: brand, surfaces, text, borders, overlays, radius, motion, shadows.
 * 2. Framework mappings: Bootstrap variables consume the same foundations.
 * 3. Component aliases: navigation, tables/data-grid, toast, and restaurant UI.
 * Components should consume semantic aliases instead of introducing color literals.
 */
:root {

    --fixed-column-width: 4rem;
    --brand-dark: #021320; /* Deep navy blue */
    --brand-accent: #531213; /* Rich burgundy */
    /* Brand Gradients */
    --brand-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    --brand-gradient-hover: linear-gradient(135deg, #132E40 0%, #6A1A1D 100%);
    --brand-gradient-reverse: linear-gradient(135deg, #531213 0%, #0B1F2F 100%);
    --brand-gradient-light: linear-gradient(135deg, rgba(11, 31, 47, 0.8) 0%, rgba(83, 18, 19, 0.8) 100%);
    --brand-gradient-subtle: linear-gradient(135deg, rgba(11, 31, 47, 0.1) 0%, rgba(83, 18, 19, 0.1) 100%);
    --brand-font-size: 5rem;
    /* Brand Transparency */
    --brand-dark-10: rgba(11, 31, 47, 0.1);
    --brand-dark-20: rgba(11, 31, 47, 0.2);
    --brand-dark-30: rgba(11, 31, 47, 0.3);
    --brand-dark-50: rgba(11, 31, 47, 0.5);
    --brand-dark-80: rgba(11, 31, 47, 0.8);
    --brand-accent-10: rgba(83, 18, 19, 0.1);
    --brand-accent-20: rgba(83, 18, 19, 0.2);
    --brand-accent-30: rgba(83, 18, 19, 0.3);
    --brand-accent-50: rgba(83, 18, 19, 0.5);
    --brand-accent-80: rgba(83, 18, 19, 0.8);
    /* Brand Shadows */
    --brand-shadow-sm: 0 2px 8px rgba(83, 18, 19, 0.15);
    --brand-shadow-md: 0 4px 16px rgba(83, 18, 19, 0.25);
    --brand-shadow-lg: 0 8px 32px rgba(83, 18, 19, 0.35);
    --brand-shadow-glow: 0 0 20px rgba(83, 18, 19, 0.4);
    /* Brand Borders */
    --brand-border: 1px solid rgba(83, 18, 19, 0.2);
    --brand-border-light: 1px solid rgba(83, 18, 19, 0.1);
    --brand-border-hover: 1px solid rgba(83, 18, 19, 0.4);
    /* UI Colors */
    --bg-color: #2f3640;
    --bg-light: #f5f7fb;
    --bg-dark: #1e293b;
    --text-primary: #1e293b;
    --text-secondary: #64748b;
    --text-light: #e2e8f0;
    --text-muted: #94a3b8;
    --text-readonly: #64748b;
    --table-header-bg: #4a6fa5;
    /* Common app tokens */
    --acme-color-text-default: #3c4044;
    --acme-color-text-muted: #6c757d;
    --acme-color-text-disabled: #b9bcbf;
    --acme-color-surface: #ffffff;
    --acme-color-surface-muted: #EBEBEB;

    --acme-color-surface-subtle: #e9ecef;
    --acme-color-surface-hover: #f0f0f0;
    --acme-color-surface-soft: #f9f9f9;
    --acme-color-border: #ddd;
    --acme-color-border-soft: #ccc;
    --acme-color-border-light: #dee2e6;
    --acme-color-border-muted: #d5d4d4;
    --acme-color-border-strong: #a7a5a5;
    --acme-color-danger: #dc3545;
    --acme-color-danger-strong: #dc2626;
    --acme-color-danger-soft: #f9f3f3;
    --acme-color-success: #198754;
    --acme-color-primary-action: #198754;
    --acme-color-primary-action-hover: #157347;
    --acme-color-primary-action-active: #146c43;
    --acme-color-info-action: #2196F3;
    --acme-color-skeleton-start: #dadada;
    --acme-color-skeleton-mid: #e6e6e6;
    --acme-overlay-05: rgba(0, 0, 0, 0.05);
    --acme-overlay-10: rgba(0, 0, 0, 0.1);
    --acme-overlay-15: rgba(0, 0, 0, 0.15);
    --acme-overlay-20: rgba(0, 0, 0, 0.2);
    --acme-overlay-25: rgba(0, 0, 0, 0.25);
    --acme-overlay-30: rgba(0, 0, 0, 0.3);
    --acme-overlay-50: rgba(0, 0, 0, 0.5);
    --acme-white-08: rgba(255, 255, 255, 0.08);
    --acme-radius-xs: 2px;
    --acme-radius-sm: 4px;
    --acme-radius-md: 8px;
    --acme-radius-lg: 10px;
    --acme-radius-pill: 999px;
    --acme-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --acme-transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1);
    --acme-shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.2);
    --acme-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.15);
    --acme-focus-ring: 0 0 0 .2rem rgba(25, 135, 84, .28);
    --acme-bold-row: rgb(200, 200, 200);
    --bb-sidebar-top-row-border-color: #b8bbc3;
    --bb-sidebar-top-row-background-color: var(--bg-color);
    --pageheader-sticky-height: 23px;
    --pagefooter-height: 40px;
    --pagecontent-margin-top: 25px;
    --pagecontent-margin-bottom: 15px;
    --bs-nav-link-color: black;
    --body-background-color: rgba(100, 100, 100, 0.8);
    /* Application primary follows Bootstrap 5 success. */
    --bs-primary: #198754;
    --bs-primary-rgb: 25, 135, 84;
    --bs-primary-text-emphasis: #0a3622;
    --bs-primary-bg-subtle: #d1e7dd;
    --bs-primary-border-subtle: #a3cfbb;
    --bs-link-color: #146c43;
    --bs-link-color-rgb: 20, 108, 67;
    --bs-link-hover-color: #0f5132;
    --bs-link-hover-color-rgb: 15, 81, 50;
    --bs-focus-ring-color: rgba(25, 135, 84, .28);
    --bs-component-active-color: #fff;
    --bs-component-active-bg: #198754;
    --bs-secondary: #64748b;
    --bs-IsSuccess: #198754;
    --bs-danger: #dc2626;
    --taxable-color: black;
    --non-taxable-color: rgba(28, 26, 231, 0.89);
    --sidebar-width: 18rem;
    --font-size: 0.95rem;
    --table-header-font-size: 0.9rem;
    --table-header-height: 1.8rem;
    --table-content-font-size: 0.8rem;
    --report-font-size: 0.9rem;
    /*TOAST Variable*/
    --toast-radius: 8px;
    --toast-blur: 0px;
    --toast-transition: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    /* Success - Green */
    --success-bg: #0f766e;
    --success-border: rgba(15, 118, 110, 0.25);
    --success-glow: none;
    /* Error - Red */
    --error-bg: #b91c1c;
    --error-border: rgba(185, 28, 28, 0.25);
    --error-glow: none;
    /* Info - Blue */
    --info-bg: #1d4ed8;
    --info-border: rgba(29, 78, 216, 0.25);
    --info-glow: none;
    /* Warning - Amber */
    --warning-bg: #b45309;
    --warning-border: rgba(180, 83, 9, 0.25);
    --warning-glow: none;
    /*Bootstrap*/
    --bs-body-bg: #111827;
    --bs-body-color: #ffffff;
    --bs-dropdown-bg: #141B2A;
    --bs-dropdown-color: #ffffff;
    /*Nav Bar*/
    --navbar-height: 2.2rem;
    --navbar-bg: var(--bg-color);
    --navbar-submenu-width: 12rem;
    --navbar-border: rgba(255, 255, 255, 0.08);
    --accent-primary: #198754;
    --accent-secondary: #685e75;
    --hover-bg: rgb(85 77 77 / 0.08);
    --active-bg: rgba(25, 135, 84, 0.15);
    --dropdown-bg: rgba(15, 20, 30, 0.95);
    --shadow-ambient: 0 0 60px rgba(102, 126, 234, 0.15);
    --shadow-elevated: 0 20px 60px rgba(0, 0, 0, 0.4), 0 0 40px rgba(102, 126, 234, 0.1);
    /* Navigation semantic aliases: use these in navbar/sidebar components. */
    --navbar-text: var(--text-light);
    --navbar-text-muted: var(--text-muted);
    --navbar-text-strong: var(--bs-body-color);
    --navbar-dropdown-bg: var(--dropdown-bg);
    --navbar-hover-bg: var(--acme-white-08);
    --navbar-active-bg: var(--active-bg);
    --navbar-active-accent: color-mix(in srgb, var(--accent-primary) 70%, white);
    --navbar-active-border: color-mix(in srgb, var(--accent-primary) 48%, transparent);
    --navbar-popup-border: color-mix(in srgb, white 13%, transparent);
    --navbar-divider: color-mix(in srgb, white 12%, transparent);
    --navbar-focus-color: color-mix(in srgb, var(--accent-primary) 55%, white);
    --navbar-shadow: var(--acme-shadow-sm);
    --navbar-popup-shadow: var(--shadow-elevated);
    --navbar-radius: var(--acme-radius-sm);
    --navbar-popup-radius: 0.375rem;
    --navbar-transition: var(--acme-transition-fast);
    --navbar-close-delay: 140ms;
    --navbar-overlay-bg: var(--acme-overlay-50);
    --navbar-skeleton-start: color-mix(in srgb, var(--navbar-bg) 84%, white);
    --navbar-skeleton-mid: color-mix(in srgb, var(--navbar-bg) 72%, white);
    --shell-header-z-index: 2147483200;
    --navbar-z-index: 2147483210;
    --navbar-popup-z-index: 2147483220;
    --navbar-nested-popup-z-index: 2147483230;
    --navbar-overlay-z-index: 2147483250;
    --navbar-mobile-z-index: 2147483260;
    /* Notifications must remain above every navbar and account popover layer. */
    --app-toast-z-index: 2147483450;
    /*
     * Application overlay stack. Keep interactive overlays above the complete
     * shell/navigation/window/notification stack while remaining below the
     * browser's maximum signed 32-bit z-index (2147483647).
     */
    --app-overlay-backdrop-z-index: 2147483400;
    --app-offcanvas-z-index: 2147483410;
    --app-modal-backdrop-z-index: 2147483420;
    --app-modal-z-index: 2147483430;
    --app-overlay-floating-z-index: 2147483440;

    /* Shared modal, confirmation, and off-canvas visual language. */
    --acme-dialog-surface: var(--acme-color-surface);
    --acme-dialog-header-surface: var(--acme-color-surface-soft);
    --acme-dialog-text: var(--acme-color-text-default);
    --acme-dialog-text-muted: var(--acme-color-text-muted);
    --acme-dialog-border: var(--acme-color-border-light);
    --acme-dialog-accent: var(--acme-color-primary-action);
    --acme-dialog-backdrop: var(--acme-overlay-50);
    --acme-dialog-shadow: var(--acme-shadow-md);
    --acme-dialog-radius: var(--acme-radius-md);
    /*Mis Table Layout Tokens */
    --adt-font-family: 'Söhne', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --adt-font-size-base: 0.875rem;
    --adt-font-size-sm: 0.8125rem;
    --adt-font-size-lg: 1rem;
    --adt-font-weight-normal: 400;
    --adt-font-weight-medium: 500;
    --adt-font-weight-semibold: 600;
    --adt-font-weight-bold: 700;
    --adt-line-height-base: 1.5;
    --adt-color-primary: #626976;
    --adt-color-primary-hover: #1e222e;
    --adt-color-primary-light: #dbeafe;
    --adt-color-success: #059669;
    --adt-color-danger: #dc2626;
    --adt-color-danger-hover: #b91c1c;
    --adt-color-warning: #d97706;
    --adt-color-info: #0891b2;
    --adt-color-text-primary: #111827;
    --adt-color-text-secondary: #6b7280;
    --adt-color-text-tertiary: #9ca3af;
    --adt-color-border: #e5e7eb;
    --adt-color-border-hover: #d1d5db;
    --adt-color-bg: #ffffff;
    --adt-color-bg-secondary: #f9fafb;
    --adt-color-bg-tertiary: #f3f4f6;
    --adt-color-bg-hover: #f5f7fa;
    --adt-color-shadow: rgba(0, 0, 0, 0.1);
    --adt-color-shadow-lg: rgba(0, 0, 0, 0.15);
    --adt-spacing-xs: 0.25rem;
    --adt-spacing-sm: 0.5rem;
    --adt-spacing-md: 0.75rem;
    --adt-spacing-lg: 1rem;
    --adt-spacing-xl: 1.5rem;
    --adt-spacing-2xl: 2rem;
    --adt-border-radius: var(--acme-radius-md);
    --adt-border-radius-sm: 0.375rem;
    --adt-border-radius-lg: 0.75rem;
    --adt-border-width: 1px;
    --adt-transition-fast: var(--acme-transition-fast);
    --adt-transition-base: var(--acme-transition-base);
    --adt-transition-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    --adt-shadow-sm: 0 1px 2px 0 var(--adt-color-shadow);
    --adt-shadow-md: 0 4px 6px -1px var(--adt-color-shadow), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --adt-shadow-lg: 0 10px 15px -3px var(--adt-color-shadow-lg), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --adt-shadow-xl: 0 20px 25px -5px var(--adt-color-shadow-lg), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    --adt-row-height: 3rem;
    --adt-header-height: 3rem;
    --adt-cell-padding-x: 1rem;
    --adt-cell-padding-y: 0.75rem;
    --adt-highlight-color: #fef3c7;
    /* Restaurant Specific Tokens */
    --res-table-text: #1a1d23;
    --res-table-radius: 14px;
    --res-table-border: #e4e7ec;
    --res-table-surface2: #f8f9fb;
    --res-table-radius-sm: var(--acme-radius-lg);
    --res-table-available: #16a34a;
    --res-table-available-bg: #abd4b8;
    --res-table-available-border: #86b797;
    --res-table-occupied: #dc2626;
    --res-table-occupied-bg: #ffdede;
    --res-table-occupied-border: #d4acac;
    --res-table-printed: #b54a03;
    --res-table-printed-bg: #f2bf79;
    --res-table-printed-border: #d39a36;
    --res-table-pack: #d97706;
    --res-table-pack-bg: #fffbeb;
    --res-table-pack-border: #fde68a;
    --res-table-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.12);

    /* DataGrid Core Overrides Mapping */
    --dgx-text: var(--acme-color-text-default);
    --dgx-text-muted: var(--acme-color-text-muted);
    --dgx-border: var(--acme-color-border);
    --dgx-border-radius: var(--acme-radius-sm);
    --dgx-border-soft: var(--acme-color-border-light);
    --dgx-surface: var(--acme-color-surface);
    --dgx-surface-alt: var(--acme-color-surface-soft);
    --dgx-header-start: var(--acme-color-surface-muted);
    --dgx-header-end: var(--acme-color-surface-subtle);
    --dgx-header-text: var(--acme-color-text-default);
    --dgx-row-hover: var(--acme-color-surface-hover);
    /* Shared computed editor/row height for both DataGrid render engines. */
    --dgx-row-height: 1.7rem;
    --dgx-row-lookup-height: 15rem;
    --dgx-active-outline: var(--acme-color-primary-action);
    --dgx-active-radius: 2px;
    --dgx-active-bg: #ecf7f0;
    --dgx-error-accent: var(--acme-color-danger);
    --dgx-error-bg: var(--acme-color-danger-soft);
    --dgx-disabled-bg: var(--acme-color-surface-subtle);
    --dgx-disabled-text: var(--acme-color-text-disabled);
    --dgx-popup-border: var(--acme-color-border);
    --dgx-popup-bg: var(--acme-color-surface);
    --dgx-popup-shadow: 0 6px 16px var(--acme-overlay-15);

    --clr-bg: #0f1117;
    --clr-surface: #1a1d27;
    --clr-border: #2a2d3a;
    --clr-text: #e2e4ed;
    --clr-muted: #6b7089;
    --clr-accent: #198754;
    --clr-green: #3ecf8e;
    --clr-red: #f87171;
    --clr-amber: #fbbf24;
}

/* Bootstrap defines theme variables again on [data-bs-theme], including the
   body element. Repeat the application mapping there so local blue defaults
   cannot override the success-green primary inherited from :root. */
:root,
[data-bs-theme="light"] {
    --bs-primary: #198754;
    --bs-primary-rgb: 25, 135, 84;
    --bs-primary-text-emphasis: #0a3622;
    --bs-primary-bg-subtle: #d1e7dd;
    --bs-primary-border-subtle: #a3cfbb;
    --bs-link-color: #146c43;
    --bs-link-color-rgb: 20, 108, 67;
    --bs-link-hover-color: #0f5132;
    --bs-link-hover-color-rgb: 15, 81, 50;
    --bs-focus-ring-color: rgba(25, 135, 84, .28);
    --bs-component-active-bg: #198754;
}

[data-bs-theme="dark"] {
    --bs-primary: #198754;
    --bs-primary-rgb: 25, 135, 84;
    --bs-primary-text-emphasis: #75b798;
    --bs-primary-bg-subtle: #051b11;
    --bs-primary-border-subtle: #0f5132;
    --bs-link-color: #75b798;
    --bs-link-color-rgb: 117, 183, 152;
    --bs-link-hover-color: #a3cfbb;
    --bs-link-hover-color-rgb: 163, 207, 187;
    --bs-focus-ring-color: rgba(117, 183, 152, .32);
    --bs-component-active-bg: #198754;
}

/* Bootstrap component variables are scoped on their selectors, so map them to
   the shared green primary in addition to overriding Bootstrap root tokens. */
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--acme-color-primary-action-hover);
    --bs-btn-hover-border-color: var(--acme-color-primary-action-active);
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--acme-color-primary-action-active);
    --bs-btn-active-border-color: #13653f;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--acme-color-primary-action-active);
    --bs-btn-active-border-color: var(--acme-color-primary-action-active);
    --bs-btn-disabled-color: var(--bs-primary);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.text-primary {
    color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity, 1)) !important;
}

.bg-primary,
.text-bg-primary {
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.border-primary {
    border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity, 1)) !important;
}

.nav-pills {
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: var(--bs-primary);
}

.pagination {
    --bs-pagination-color: var(--bs-link-color);
    --bs-pagination-hover-color: var(--bs-link-hover-color);
    --bs-pagination-focus-color: var(--bs-link-hover-color);
    --bs-pagination-focus-box-shadow: var(--acme-focus-ring);
    --bs-pagination-active-color: #fff;
    --bs-pagination-active-bg: var(--bs-primary);
    --bs-pagination-active-border-color: var(--bs-primary);
}

.dropdown-menu {
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: var(--bs-primary);
}

.list-group {
    --bs-list-group-active-color: #fff;
    --bs-list-group-active-bg: var(--bs-primary);
    --bs-list-group-active-border-color: var(--bs-primary);
}

.accordion {
    --bs-accordion-btn-focus-border-color: var(--bs-primary-border-subtle);
    --bs-accordion-btn-focus-box-shadow: var(--acme-focus-ring);
    --bs-accordion-active-color: var(--bs-primary-text-emphasis);
    --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.form-check-input:focus {
    border-color: var(--bs-primary-border-subtle);
    box-shadow: var(--acme-focus-ring);
}

.form-check-input:checked,
.form-check-input[type="checkbox"]:indeterminate {
    border-color: var(--bs-primary);
    background-color: var(--bs-primary);
}

/* Project-wide modal colors. Component CSS should only refine layout or tone. */
.modal .modal-content {
    color: var(--acme-dialog-text);
    background: var(--acme-dialog-surface);
    border-color: var(--acme-dialog-border);
    border-radius: var(--acme-dialog-radius);
    /*box-shadow: var(--acme-dialog-shadow);*/
}

.modal .modal-header,
.modal .modal-footer {
    color: var(--acme-dialog-text);
    background: var(--acme-dialog-header-surface);
    border-color: var(--acme-dialog-border);
}

.modal .modal-body {
    color: var(--acme-dialog-text);
    background: transparent;
}

.modal .modal-title,
.modal .modal-header h1,
.modal .modal-header h2,
.modal .modal-header h3,
.modal .modal-header h4,
.modal .modal-header h5,
.modal .modal-header h6 {
    color: var(--acme-dialog-text);
}

.modal .modal-header i {
    color: currentColor;
}

.modal .btn-close {
    border-radius: var(--acme-radius-sm);
}

.modal .btn-close:focus-visible {
    outline: none;
    box-shadow: var(--acme-focus-ring);
}

.modal-backdrop.show {
    background: var(--acme-dialog-backdrop);
}

/* Nepali Date Picker v5: loaded on demand by DateOption in Custom BS mode. */
.ndp-container.ndp-light {
    z-index: var(--app-overlay-floating-z-index);
    width: min(286px, calc(100vw - 24px));
    max-width: none;
    padding: 8px;
    overflow: hidden;
    border: 1px solid var(--acme-color-border-light);
    border-radius: var(--acme-radius-lg, 12px);
    color: var(--acme-color-text-default);
    background: var(--acme-color-surface);
    box-shadow: 0 16px 40px rgba(18, 38, 28, .2);
    font-family: inherit;
}

[data-bs-theme="dark"] .ndp-container.ndp-light,
[data-theme="dark"] .ndp-container.ndp-light {
    color: var(--acme-color-text-default);
    background: var(--acme-color-surface);
}

.ndp-container.ndp-light .ndp-table {
    width: 100%;
    color: var(--acme-color-text-default);
    background: transparent;
}

.ndp-container.ndp-light .ndp-header {
    gap: 4px;
    margin-bottom: 5px;
    border-color: var(--acme-color-border-light);
}

.ndp-container.ndp-light .ndp-header .ndp-header-link,
.ndp-container.ndp-light .ndp-month-button,
.ndp-container.ndp-light .ndp-year-button {
    color: var(--acme-color-text-default);
}

.ndp-container.ndp-light .ndp-table th {
    color: var(--acme-color-text-muted);
    font-size: .72rem;
}

.ndp-container .ndp-table td,
.ndp-container .ndp-table th {
    width: 36px;
    height: 36px;
    border-radius: var(--acme-radius-sm, 8px);
}

.ndp-container.ndp-light .ndp-header-link:hover,
.ndp-container.ndp-light .ndp-table td:hover:not(.ndp-disabled),
.ndp-container.ndp-light .ndp-month-button:hover:not(.ndp-selected),
.ndp-container.ndp-light .ndp-year-button:hover:not(.ndp-selected),
.ndp-container .ndc-nav-button:hover {
    color: #0a3622;
    background: #d1e7dd;
}

.ndp-container.ndp-light .ndp-table td.ndp-selected,
.ndp-container.ndp-light .ndp-month-button.ndp-selected,
.ndp-container.ndp-light .ndp-year-button.ndp-selected {
    color: #fff;
    background: var(--acme-color-primary-action, #198754);
}

.ndp-container.ndp-light .ndp-table td.ndp-today,
.ndp-container.ndp-light .ndp-month-button.ndp-current,
.ndp-container.ndp-light .ndp-year-button.ndp-current {
    color: var(--acme-color-primary-action, #198754);
}

.ndp-container.ndp-light .ndp-table td.ndp-today.ndp-selected {
    color: #fff;
}

.ndp-container.ndp-light .ndp-range-hover {
    background: #d1e7dd;
}

.ndp-container.ndp-light .ndp-disabled,
.ndp-container.ndp-light .ndp-table td.ndp-disabled {
    color: color-mix(in srgb, var(--acme-color-text-muted) 42%, transparent);
    background: transparent;
    cursor: not-allowed;
    opacity: .58;
}

.ndp-container a:focus-visible {
    outline: 3px solid rgba(25, 135, 84, .28);
    outline-offset: 1px;
}

.ndp-container .ndc-chevron::before {
    border-color: var(--acme-color-primary-action, #198754);
}

.ndp-container.ndp-light .ndp-header-display-english,
.ndp-container.ndp-light .ndp-mini-english-date {
    color: currentColor;
}

.ndp-container.fade {
    transition-duration: 160ms;
}

@media (prefers-reduced-motion: reduce) {
    .ndp-container.fade,
    .ndp-container.slide {
        transition: none;
    }
}
