/* Halloween · 26–31 October. Loaded after the personal palettes. */
html[data-festival="halloween"][data-bs-theme] {
    color-scheme: dark;
    --bs-primary: #ff922e;
    --bs-primary-active: #ffac60;
    --bs-primary-light: #382719;
    --bs-primary-inverse: #17120e;
    --bs-primary-rgb: 255, 146, 46;
    --bs-text-primary: #ff922e;
    --bs-link-color: #ffac60;
    --bs-link-hover-color: #ffd0a6;
    --bs-link-color-rgb: 255, 172, 96;
    --bs-link-hover-color-rgb: 255, 208, 166;
    --portal-page-bg: #111112;
    --portal-card-bg: #1e1d1c;
    --portal-header-bg: #191817;
    --portal-sidebar-bg: #0c0c0d;
    --portal-sidebar-text: #f5ede5;
    --portal-sidebar-muted: #b6aaa0;
    --portal-border: #3d332b;
    --portal-table-stripe: rgba(255, 146, 46, .035);
    --portal-shadow-color: rgba(0, 0, 0, .16);
    --bs-body-bg: #111112;
    --bs-body-color: #eee7df;
    --bs-body-color-rgb: 238, 231, 223;
    --bs-heading-color: #f5ede5;
    --bs-text-dark: #f5ede5;
    --bs-text-muted: #b6aaa0;
    --bs-gray-100: #272320;
    --bs-gray-200: #3d332b;
    --bs-gray-300: #5b4d41;
    --bs-gray-400: #a99b90;
    --bs-gray-500: #b6aaa0;
    --bs-gray-600: #c6b9ae;
    --bs-gray-700: #ddd1c5;
    --bs-gray-800: #eee7df;
    --bs-gray-900: #f5ede5;
    --bs-gray-100-rgb: 39, 35, 32;
    --bs-gray-200-rgb: 61, 51, 43;
    --bs-gray-300-rgb: 91, 77, 65;
    --bs-gray-400-rgb: 169, 155, 144;
    --bs-gray-500-rgb: 182, 170, 160;
    --bs-gray-600-rgb: 198, 185, 174;
    --bs-gray-700-rgb: 221, 209, 197;
    --bs-gray-800-rgb: 238, 231, 223;
    --bs-gray-900-rgb: 245, 237, 229;
    --bs-text-gray-100: var(--bs-gray-100);
    --bs-text-gray-200: var(--bs-gray-200);
    --bs-text-gray-300: var(--bs-gray-300);
    --bs-text-gray-400: var(--bs-gray-400);
    --bs-text-gray-500: var(--bs-gray-500);
    --bs-text-gray-600: var(--bs-gray-600);
    --bs-text-gray-700: var(--bs-gray-700);
    --bs-text-gray-800: var(--bs-gray-800);
    --bs-text-gray-900: var(--bs-gray-900);
    --bs-border-color: #3d332b;
    --bs-card-bg: #1e1d1c;
    --bs-menu-dropdown-bg-color: #1e1d1c;
    --bs-component-active-bg: #ff922e;
    --bs-component-hover-bg: #382719;
}
html[data-festival="halloween"] body {
    background: radial-gradient(ellipse at 100% 0, rgba(255, 125, 24, .09), transparent 48%), #111112;
}
html[data-festival="halloween"] body.auth-bg {
    background:
        radial-gradient(ellipse at 16% 76%, rgba(242, 112, 22, .23), transparent 45%),
        radial-gradient(ellipse at 55% 10%, rgba(255, 146, 46, .08), transparent 40%),
        #0c0c0d !important;
}
html[data-festival="halloween"] .auth-bg .bg-body {
    background: #1e1d1c !important;
    border: 1px solid #4b3525;
    box-shadow: 0 28px 90px #0006;
}
html[data-festival="halloween"] .card { border-top: 2px solid #75431e; }
html[data-festival="halloween"] .header { border-bottom: 1px solid #3d332b; }
html[data-festival="halloween"] .form-control,
html[data-festival="halloween"] .form-select,
html[data-festival="halloween"] .select2-selection {
    background-color: #171615;
    border-color: #534235;
    color: #eee7df;
}
html[data-festival="halloween"] .form-control::placeholder { color: #b6aaa0; opacity: 1; }
html[data-festival="halloween"] .form-control:focus,
html[data-festival="halloween"] .form-select:focus {
    border-color: #ff922e;
    box-shadow: 0 0 0 3px #ff922e26;
}
html[data-festival="halloween"] .btn-primary {
    color: #17120e !important;
    background-color: #ff922e !important;
    border-color: #ff922e !important;
}
html[data-festival="halloween"] .btn-primary:hover,
html[data-festival="halloween"] .btn-primary:focus-visible {
    background-color: #ffac60 !important;
    border-color: #ffac60 !important;
}
html[data-festival="halloween"] .btn-primary i { color: inherit !important; }
html[data-festival="halloween"] .btn-light-primary,
html[data-festival="halloween"] .badge-light-primary {
    color: #ffac60 !important;
    background-color: #382719 !important;
}
html[data-festival="halloween"] .bg-light-primary { background-color: #2b2119 !important; }
html[data-festival="halloween"] .form-check-input:checked {
    background-color: #ff922e;
    border-color: #ff922e;
}
html[data-festival="halloween"] [data-kt-menu-trigger]:has(+ [data-portal-palette-menu]),
html[data-festival="halloween"] [data-portal-palette-menu] { display: none !important; }
.halloween-season {
    display: inline-flex;
    align-items: center;
    gap: .75rem;
    color: #ffac60;
    font-size: .85rem;
    font-weight: 600;
    letter-spacing: .12em;
}

html[data-festival="halloween"] .btn-secondary {
    color: #eee7df !important;
    background-color: #2b2622 !important;
    border-color: #534235 !important;
}
html[data-festival="halloween"] .btn-secondary:hover {
    background-color: #382719 !important;
}

/* Light mode follows the same saved preference as the rest of Cerebro. */
html[data-festival="halloween"][data-bs-theme="light"] {
    color-scheme: light;
    --bs-primary: #ad4800;
    --bs-primary-active: #8c3900;
    --bs-primary-light: #fff0df;
    --bs-primary-inverse: #ffffff;
    --bs-primary-rgb: 173, 72, 0;
    --bs-text-primary: #ad4800;
    --bs-link-color: #ad4800;
    --bs-link-hover-color: #803500;
    --bs-link-color-rgb: 173, 72, 0;
    --bs-link-hover-color-rgb: 128, 53, 0;
    --portal-page-bg: #fff6eb;
    --portal-card-bg: #ffffff;
    --portal-header-bg: #fffdf9;
    --portal-sidebar-bg: #161311;
    --portal-sidebar-text: #fff4e8;
    --portal-sidebar-muted: #c6b6a8;
    --portal-border: #e7d5c2;
    --portal-table-stripe: rgba(173, 72, 0, .035);
    --portal-shadow-color: rgba(91, 45, 9, .06);
    --bs-body-bg: #fff6eb;
    --bs-body-color: #332820;
    --bs-body-color-rgb: 51, 40, 32;
    --bs-heading-color: #241b15;
    --bs-text-dark: #241b15;
    --bs-text-muted: #786657;
    --bs-gray-100: #fff6eb;
    --bs-gray-200: #f2e5d6;
    --bs-gray-300: #e7d5c2;
    --bs-gray-400: #ad9986;
    --bs-gray-500: #8a7562;
    --bs-gray-600: #786657;
    --bs-gray-700: #5d4c3e;
    --bs-gray-800: #332820;
    --bs-gray-900: #241b15;
    --bs-gray-100-rgb: 255, 246, 235;
    --bs-gray-200-rgb: 242, 229, 214;
    --bs-gray-300-rgb: 231, 213, 194;
    --bs-gray-400-rgb: 173, 153, 134;
    --bs-gray-500-rgb: 138, 117, 98;
    --bs-gray-600-rgb: 120, 102, 87;
    --bs-gray-700-rgb: 93, 76, 62;
    --bs-gray-800-rgb: 51, 40, 32;
    --bs-gray-900-rgb: 36, 27, 21;
    --bs-border-color: #e7d5c2;
    --bs-card-bg: #ffffff;
    --bs-menu-dropdown-bg-color: #ffffff;
    --bs-component-active-bg: #ad4800;
    --bs-component-hover-bg: #fff0df;
}
html[data-festival="halloween"][data-bs-theme="light"] body {
    background: radial-gradient(ellipse at 100% 0, #ff922e12, transparent 48%), #fff6eb;
}
html[data-festival="halloween"][data-bs-theme="light"] body.auth-bg {
    background: radial-gradient(ellipse at 16% 76%, #ff922e30, transparent 45%), #fff6eb !important;
}
html[data-festival="halloween"][data-bs-theme="light"] .auth-bg .bg-body {
    background: #ffffff !important;
    border-color: #e7d5c2;
    box-shadow: 0 28px 90px #5b2d0914;
}
html[data-festival="halloween"][data-bs-theme="light"] .auth-bg img[src$="tsa-logo-hor-white.svg"] {
    filter: brightness(.12);
}
html[data-festival="halloween"][data-bs-theme="light"] #login-headline { color: #241b15 !important; }
html[data-festival="halloween"][data-bs-theme="light"] .halloween-season { color: #ad4800; }
html[data-festival="halloween"][data-bs-theme="light"] .card { border-top-color: #e88730; }
html[data-festival="halloween"][data-bs-theme="light"] .header { border-bottom-color: #e7d5c2; }
html[data-festival="halloween"][data-bs-theme="light"] .form-control,
html[data-festival="halloween"][data-bs-theme="light"] .form-select,
html[data-festival="halloween"][data-bs-theme="light"] .select2-selection {
    background-color: #fffdf9;
    border-color: #d6bda5;
    color: #332820;
}
html[data-festival="halloween"][data-bs-theme="light"] .form-control::placeholder { color: #786657; }
html[data-festival="halloween"][data-bs-theme="light"] .btn-primary {
    color: #ffffff !important;
    background-color: #ad4800 !important;
    border-color: #ad4800 !important;
}
html[data-festival="halloween"][data-bs-theme="light"] .btn-primary:hover,
html[data-festival="halloween"][data-bs-theme="light"] .btn-primary:focus-visible {
    background-color: #8c3900 !important;
    border-color: #8c3900 !important;
}
html[data-festival="halloween"][data-bs-theme="light"] .btn-light-primary,
html[data-festival="halloween"][data-bs-theme="light"] .badge-light-primary {
    color: #ad4800 !important;
    background-color: #fff0df !important;
}
html[data-festival="halloween"][data-bs-theme="light"] .bg-light-primary { background-color: #fff0df !important; }
html[data-festival="halloween"][data-bs-theme="light"] .btn-secondary {
    color: #5d4c3e !important;
    background-color: #f7ecdf !important;
    border-color: #d6bda5 !important;
}
html[data-festival="halloween"][data-bs-theme="light"] .btn-secondary:hover { background-color: #f2e0cc !important; }
html[data-festival="halloween"][data-bs-theme="light"] .festival-motion-toggle {
    color: #ad4800;
    background: #fffdf9;
}
