/* Winter night extends Material Dark; no selectors or tokens affect other themes. */
.material-dark.winter-night {
    color-scheme: dark;
    --sm-winter-gold: #f2c14e;
    --sm-winter-gold-light: #ffd978;
    --sm-winter-gold-soft: #3a321c;
    --sm-winter-ink: #1d1505;
    --sm-winter-berry: #ff5c6c;
    --sm-winter-snow: #dbe8ff;
    --sm-winter-control-border: #3f5875;
    --sm-winter-hover: #1a2c45;

    --sm-dark-canvas: #0a1220;
    --sm-dark-header: #0d1828;
    --sm-dark-sidebar: #0e1a2b;
    --sm-dark-panel: #122238;
    --sm-dark-panel-strong: #172a44;
    --sm-dark-panel-soft: #0f1d31;
    --sm-dark-row: #0f1d31;
    --sm-dark-row-alt: #13233a;
    --sm-dark-border: #22374f;
    --sm-dark-border-soft: rgba(157, 190, 230, 0.14);
    --sm-dark-text: #eef4ff;
    --sm-dark-text-muted: #9db0c7;
    --sm-dark-muted: var(--sm-dark-text-muted);
    --sm-dark-purple: #8fbfff;
    --sm-dark-purple-soft: #17304d;
    --sm-dark-link: #8fd3ff;
    --sm-dark-link-hover: #c4e8ff;

    --rz-base: #34506f;
    --rz-base-50: #eef4ff;
    --rz-base-100: #9db0c7;
    --rz-base-200: #7189a6;
    --rz-base-300: #4b6482;
    --rz-base-400: #34506f;
    --rz-base-500: #27405c;
    --rz-base-600: #172a44;
    --rz-base-700: #122238;
    --rz-base-800: #0f1d31;
    --rz-base-900: #0a1220;
    --rz-base-light: #9db0c7;
    --rz-base-lighter: #eef4ff;
    --rz-base-dark: #122238;
    --rz-base-darker: #0a1220;

    --rz-primary: var(--sm-winter-gold);
    --rz-primary-light: var(--sm-winter-gold-light);
    --rz-primary-lighter: rgba(242, 193, 78, 0.14);
    --rz-primary-dark: #d9a531;
    --rz-primary-darker: #bf8d1d;
    --rz-on-primary: var(--sm-winter-ink);
    --rz-on-primary-light: var(--sm-winter-ink);
    --rz-on-primary-lighter: var(--sm-winter-gold-light);
    --rz-on-primary-dark: var(--sm-winter-ink);
    --rz-on-primary-darker: var(--sm-winter-ink);
    --rz-secondary: var(--sm-dark-purple);
    --rz-secondary-light: #b8d6ff;
    --rz-secondary-lighter: rgba(143, 191, 255, 0.14);
    --rz-secondary-dark: #6f9ee0;
    --rz-secondary-darker: #5a86c7;
    --rz-on-secondary: #08182c;
    --rz-on-secondary-light: #08182c;
    --rz-on-secondary-lighter: #b8d6ff;
    --rz-on-secondary-dark: #08182c;
    --rz-on-secondary-darker: #ffffff;
    --rz-accent: var(--sm-winter-berry);
    --rz-text-disabled-color: #5f7591;
    --rz-outline-color: var(--sm-winter-gold);

    --rz-input-background-color: #0f1f35;
    --rz-input-border: 1px solid var(--sm-winter-control-border);
    --rz-input-placeholder-color: var(--sm-dark-text-muted);
    --rz-input-focus-background-color: #14263f;
    --rz-input-focus-border: 1px solid var(--sm-winter-gold);
    --rz-input-focus-shadow: 0 0 0 3px rgba(242, 193, 78, 0.18);
    --rz-button-focus-shadow: var(--rz-input-focus-shadow);
    --rz-checkbox-checked-background-color: var(--sm-winter-gold);
    --rz-checkbox-checked-border: 1px solid var(--sm-winter-gold);
    --rz-switch-background-color: #27405c;
    --rz-switch-checked-background-color: #8a6a1c;
    --rz-switch-circle-background-color: #b7c6d8;
    --rz-switch-checked-circle-background-color: #ffe6a8;
    --rz-dropdown-open-background-color: #14263f;
    --rz-dropdown-open-border: var(--rz-input-focus-border);
    --rz-dropdown-item-hover-background-color: var(--sm-winter-hover);
    --rz-dropdown-item-selected-background-color: var(--sm-winter-gold-soft);
    --rz-dropdown-item-selected-color: var(--sm-winter-gold-light);
    --rz-dropdown-panel-border: 1px solid var(--sm-winter-control-border);

    --rz-grid-cell-color: #d6e2f2;
    --rz-grid-header-background-color: var(--sm-dark-panel-strong);
    --rz-grid-header-color: var(--sm-dark-text);
    --rz-grid-hover-background-color: var(--sm-winter-hover);
    --rz-grid-group-header-item-background-color: var(--sm-dark-purple-soft);
    --rz-grid-group-header-item-border: 1px solid var(--sm-winter-control-border);
    --rz-grid-foot-background-color: var(--sm-dark-panel-strong);
    --rz-grid-clear-filter-button-background-color: var(--sm-dark-panel-strong);
    --rz-grid-apply-filter-button-background-color: var(--sm-winter-gold);
    --rz-grid-apply-filter-button-color: var(--sm-winter-ink);
    --rz-grid-apply-filter-button-shadow: none;
    --rz-pager-background-color: var(--sm-dark-panel-strong);
    --rz-pager-numeric-button-color: var(--sm-dark-text);
    --rz-pager-numeric-button-hover-background-color: var(--sm-winter-hover);
    --rz-pager-numeric-button-selected-background-color: var(--sm-winter-gold-soft);
    --rz-pager-numeric-button-selected-border: 1px solid #8a6a1c;
    --rz-pager-numeric-button-selected-color: var(--sm-winter-gold-light);
    --rz-tabs-tab-color: var(--sm-dark-text-muted);
    --rz-tabs-tab-hover-color: var(--sm-dark-text);
    --rz-tabs-tab-focus-color: var(--sm-winter-gold-light);
    --rz-tabs-tab-selected-color: var(--sm-winter-gold);
}

/* A cold midnight shell with a faint glow behind the lights. */
.material-dark.winter-night .rz-header {
    background: linear-gradient(105deg, #13213a 0, var(--sm-dark-header) 42%, #101c33 100%) !important;
    border-bottom-color: #2a4262 !important;
}

.material-dark.winter-night .rz-sidebar,
.material-dark.winter-night .app-sidebar.rz-sidebar {
    background: linear-gradient(180deg, #112038, var(--sm-dark-sidebar) 65%) !important;
    border-right-color: var(--sm-dark-border) !important;
}

/* Keep decorative motion clipped to this sidebar and below app-level overlays. */
.material-dark.winter-night .rz-layout > .app-sidebar.rz-sidebar {
    position: relative;
    isolation: isolate;
}

.material-dark.winter-night .rz-footer {
    background: var(--sm-dark-header) !important;
    border-top-color: var(--sm-dark-border) !important;
    color: var(--sm-dark-text-muted) !important;
}

.material-dark.winter-night .app-sidebar .rz-navigation-item {
    border-bottom-color: var(--sm-dark-border-soft) !important;
}

/* Use the same row styling without selecting every child of an active group. */
.material-dark.winter-night .app-sidebar {
    --sidebar-nav-hover: var(--sm-winter-hover);
    --sidebar-nav-active: linear-gradient(90deg, #3a3119, #1a2a40);
    --sidebar-nav-accent: var(--sm-winter-gold);
    --sidebar-nav-active-text: #ffe2a1;
}

.material-dark.winter-night .history-nav-button,
.material-dark.winter-night .header-action-button.rz-button,
.material-dark.winter-night .header-storage-button {
    background: var(--sm-dark-panel) !important;
    border-color: var(--sm-dark-border) !important;
}

.material-dark.winter-night .header-action-button.rz-button:hover,
.material-dark.winter-night .header-storage-button:hover {
    background: var(--sm-winter-hover) !important;
}

.material-dark.winter-night .header-action-knowledge {
    --header-action-accent: var(--sm-winter-gold);
}

.material-dark.winter-night a,
.material-dark.winter-night .rz-link {
    text-decoration-color: color-mix(in srgb, var(--sm-dark-link) 65%, transparent);
}

/* Override fixed dark-theme fills while leaving danger/success actions intact. */
.material-dark.winter-night .rz-button.rz-primary,
.material-dark.winter-night .download-installer-button,
.material-dark.winter-night .rz-grid-filter-buttons .rz-button.rz-apply-filter,
.material-dark.winter-night .smt-confirm-dialog :is(.rz-dialog-buttons, .rz-dialog-confirm-buttons) .rz-button.rz-primary,
.material-dark.winter-night .smt-confirm-dialog :is(.rz-dialog-buttons, .rz-dialog-confirm-buttons) .rz-button:first-child {
    background: var(--sm-winter-gold) !important;
    border-color: var(--sm-winter-gold) !important;
    color: var(--sm-winter-ink) !important;
}

.material-dark.winter-night .rz-button.rz-primary:not(:disabled):hover,
.material-dark.winter-night .download-installer-button:hover,
.material-dark.winter-night .rz-grid-filter-buttons .rz-button.rz-apply-filter:is(:hover, :focus-visible),
.material-dark.winter-night .smt-confirm-dialog :is(.rz-dialog-buttons, .rz-dialog-confirm-buttons) .rz-button.rz-primary:is(:hover, :focus-visible),
.material-dark.winter-night .smt-confirm-dialog :is(.rz-dialog-buttons, .rz-dialog-confirm-buttons) .rz-button:first-child:is(:hover, :focus-visible) {
    background: var(--sm-winter-gold-light) !important;
    border-color: var(--sm-winter-gold-light) !important;
    color: var(--sm-winter-ink) !important;
}

.material-dark.winter-night .rz-button.rz-light,
.material-dark.winter-night .rz-button.rz-button-light,
.material-dark.winter-night .rz-grid-filter-buttons .rz-button.rz-clear-filter,
.material-dark.winter-night .smt-confirm-dialog :is(.rz-dialog-buttons, .rz-dialog-confirm-buttons) .rz-button:last-child {
    background: #1b2e48 !important;
    border-color: var(--sm-winter-control-border) !important;
    color: var(--sm-dark-text) !important;
}

.material-dark.winter-night .rz-button.rz-light:hover,
.material-dark.winter-night .rz-button.rz-button-light:hover,
.material-dark.winter-night .rz-grid-filter-buttons .rz-button.rz-clear-filter:is(:hover, :focus-visible),
.material-dark.winter-night .smt-confirm-dialog :is(.rz-dialog-buttons, .rz-dialog-confirm-buttons) .rz-button:last-child:is(:hover, :focus-visible) {
    background: #24405f !important;
    border-color: var(--sm-dark-purple) !important;
}

.material-dark.winter-night .rz-card,
.material-dark.winter-night .rz-dialog,
.material-dark.winter-night .rz-dialog.smt-theme-dialog,
.material-dark.winter-night .smt-theme-dialog-wrapper .rz-dialog {
    background: var(--sm-dark-panel-soft) !important;
    border-color: var(--sm-dark-border) !important;
}

.material-dark.winter-night .rz-dialog .rz-dialog-titlebar,
.material-dark.winter-night .rz-dialog.smt-theme-dialog .rz-dialog-titlebar,
.material-dark.winter-night .smt-theme-dialog-wrapper .rz-dialog .rz-dialog-titlebar {
    background: var(--sm-dark-header) !important;
    border-bottom-color: var(--sm-dark-border) !important;
}

.material-dark.winter-night .rz-dialog .rz-dialog-content {
    background: var(--sm-dark-panel-soft) !important;
}

.material-dark.winter-night .rz-textbox,
.material-dark.winter-night .rz-textarea,
.material-dark.winter-night .rz-inputtext,
.material-dark.winter-night .rz-input-number,
.material-dark.winter-night .rz-dropdown,
.material-dark.winter-night .rz-multiselect {
    border-color: var(--sm-winter-control-border) !important;
}

.material-dark.winter-night .rz-textbox:focus,
.material-dark.winter-night .rz-textarea:focus,
.material-dark.winter-night .rz-inputtext:focus,
.material-dark.winter-night .rz-input-number:focus,
.material-dark.winter-night .rz-dropdown:focus-within,
.material-dark.winter-night .rz-multiselect:focus-within {
    border-color: var(--sm-winter-gold) !important;
    box-shadow: var(--rz-input-focus-shadow) !important;
}

.material-dark.winter-night .rz-dropdown-panel,
.material-dark.winter-night .rz-multiselect-panel {
    background: var(--sm-dark-panel-strong) !important;
    border-color: var(--sm-winter-control-border) !important;
}

.material-dark.winter-night .rz-multiselect-panel .rz-multiselect-header {
    border-bottom-color: var(--sm-dark-border) !important;
}

.material-dark.winter-night .rz-dropdown-panel .rz-dropdown-filter-container,
.material-dark.winter-night .rz-multiselect-panel .rz-multiselect-filter-container {
    background: var(--rz-input-background-color) !important;
    border-color: var(--sm-winter-control-border) !important;
}

.material-dark.winter-night .rz-dropdown-item:hover,
.material-dark.winter-night .rz-multiselect-item:hover {
    background: var(--sm-winter-hover) !important;
}

.material-dark.winter-night .rz-dropdown-item.rz-state-highlight,
.material-dark.winter-night .rz-multiselect-item.rz-state-highlight {
    background: var(--sm-winter-gold-soft) !important;
    color: var(--sm-winter-gold-light) !important;
}

.material-dark.winter-night .rz-chkbox-box {
    background: var(--rz-input-background-color) !important;
    border-color: var(--sm-winter-control-border) !important;
}

.material-dark.winter-night .rz-chkbox-box.rz-state-active,
.material-dark.winter-night .rz-chkbox-checked .rz-chkbox-box {
    background: var(--sm-winter-gold) !important;
    border-color: var(--sm-winter-gold) !important;
}

.material-dark.winter-night .rz-switch .rz-switch-circle {
    background: var(--rz-switch-background-color) !important;
    border-color: var(--sm-winter-control-border) !important;
}

.material-dark.winter-night .rz-switch .rz-switch-circle::before {
    background: var(--rz-switch-circle-background-color) !important;
}

.material-dark.winter-night .rz-switch.rz-switch-checked .rz-switch-circle {
    background: var(--rz-switch-checked-background-color) !important;
    border-color: var(--sm-winter-gold) !important;
    box-shadow: 0 0 0 3px rgba(242, 193, 78, 0.12) !important;
}

.material-dark.winter-night .rz-switch.rz-switch-checked .rz-switch-circle::before {
    background: var(--rz-switch-checked-circle-background-color) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25) !important;
}

.material-dark.winter-night .rz-switch:not(.rz-switch-checked):hover .rz-switch-circle {
    background: #24405f !important;
    border-color: #5a7a9e !important;
}

.material-dark.winter-night .rz-switch.rz-switch-checked:hover .rz-switch-circle {
    background: #a8801f !important;
    border-color: var(--sm-winter-gold-light) !important;
}

.material-dark.winter-night .rz-grid-table thead th,
.material-dark.winter-night .rz-datatable-thead th {
    background: var(--rz-grid-header-background-color) !important;
    color: var(--rz-grid-header-color) !important;
}

.material-dark.winter-night .rz-grid-table tbody tr:hover > td {
    background: var(--sm-winter-hover) !important;
}

.material-dark.winter-night .rz-paginator,
.material-dark.winter-night .rz-pager {
    background: var(--rz-pager-background-color) !important;
}

.material-dark.winter-night .rz-column-picker .rz-button,
.material-dark.winter-night .automation-filter-dropdown,
.material-dark.winter-night .automation-account-dropdown {
    background: var(--rz-input-background-color) !important;
    border-color: var(--sm-winter-control-border) !important;
    color: var(--sm-dark-text) !important;
}

.material-dark.winter-night .rz-rowgroup-header > td,
.material-dark.winter-night .rz-rowgroup-header .rz-cell-data {
    background: var(--sm-dark-header) !important;
    color: var(--sm-dark-text) !important;
}

.material-dark.winter-night .rz-tabview .rz-tabview-nav li.rz-tabview-selected::after {
    background: var(--sm-winter-gold);
}

.material-dark.winter-night .rz-tabview .rz-tabview-nav li:not(.rz-tabview-selected):hover::after {
    background: rgba(242, 193, 78, 0.42);
}

.material-dark.winter-night .settings-tabs,
.material-dark.winter-night .settings-page {
    --settings-accent: var(--sm-winter-gold);
}

.material-dark.winter-night .surface-soft {
    background: var(--sm-dark-panel-strong);
    border-color: var(--sm-dark-border);
}

.material-dark.winter-night .smt-wide-grid,
.material-dark.winter-night .smt-wide-grid :is(.rz-data-grid-data, .rz-grid-table-wrapper, .rz-datatable-scrollable-wrapper) {
    scrollbar-color: var(--sm-dark-purple) var(--sm-dark-sidebar);
}

.material-dark.winter-night .smt-wide-grid::-webkit-scrollbar-track,
.material-dark.winter-night .smt-wide-grid :is(.rz-data-grid-data, .rz-grid-table-wrapper, .rz-datatable-scrollable-wrapper)::-webkit-scrollbar-track {
    background: var(--sm-dark-sidebar);
}

.material-dark.winter-night .smt-wide-grid::-webkit-scrollbar-thumb,
.material-dark.winter-night .smt-wide-grid :is(.rz-data-grid-data, .rz-grid-table-wrapper, .rz-datatable-scrollable-wrapper)::-webkit-scrollbar-thumb {
    border-color: var(--sm-dark-sidebar);
}


/* Candy cane extends Material Light; no selectors or tokens affect other themes. */
.material.candy-cane {
    color-scheme: light;
    --sm-candy-pine: #1f7a53;
    --sm-candy-pine-dark: #17603f;
    --sm-candy-pine-light: #2c9466;
    --sm-candy-pine-soft: #e9f4ee;
    --sm-candy-berry: #d6304a;
    --sm-candy-berry-dark: #b31f3a;
    --sm-candy-gold: #e0a21b;

    --sm-light-canvas: #f5f7f6;
    --sm-light-header: #ffffff;
    --sm-light-sidebar: #ffffff;
    --sm-light-panel: #ffffff;
    --sm-light-panel-strong: #ffffff;
    --sm-light-panel-soft: #f6f8f7;
    --sm-light-row: #ffffff;
    --sm-light-row-alt: #f6f8f7;
    --sm-light-border: #e3e8e5;
    --sm-light-border-soft: rgba(23, 96, 63, 0.08);
    --sm-light-text: #22302b;
    --sm-light-text-muted: #66756f;
    --sm-light-primary: var(--sm-candy-pine);
    --sm-light-primary-dark: var(--sm-candy-pine-dark);
    --sm-light-primary-soft: var(--sm-candy-pine-soft);
    --sm-light-purple-soft: var(--sm-candy-pine-soft);
    --sm-light-green: var(--sm-candy-pine);

    --rz-primary: var(--sm-candy-pine);
    --rz-primary-light: var(--sm-candy-pine-light);
    --rz-primary-lighter: rgba(31, 122, 83, 0.12);
    --rz-primary-dark: var(--sm-candy-pine-dark);
    --rz-primary-darker: #114a31;
    --rz-on-primary: #ffffff;
    --rz-accent: var(--sm-candy-berry);
    --rz-outline-color: var(--sm-candy-pine);

    --rz-input-focus-border: 1px solid rgba(31, 122, 83, 0.55);
    --rz-input-focus-shadow: 0 0 0 3px rgba(31, 122, 83, 0.12);
    --rz-button-focus-shadow: 0 0 0 3px rgba(31, 122, 83, 0.14);
    --rz-dropdown-open-border: 1px solid rgba(31, 122, 83, 0.44);
    --rz-dropdown-item-selected-background-color: var(--sm-candy-pine-soft);
    --rz-dropdown-item-selected-color: var(--sm-candy-pine-dark);
    --rz-checkbox-checked-background-color: var(--sm-candy-pine);
    --rz-checkbox-checked-border: 1px solid var(--sm-candy-pine);
    --rz-switch-checked-background-color: var(--sm-candy-pine);
    --rz-tabs-tab-selected-color: var(--sm-candy-pine-dark);
    --rz-tabs-tab-focus-color: var(--sm-candy-pine-dark);
    --rz-pager-numeric-button-selected-background-color: var(--sm-candy-pine-soft);
    --rz-pager-numeric-button-selected-color: var(--sm-candy-pine-dark);
}

/* A red-and-white candy-cane stripe replaces the header's bottom border. */
.material.candy-cane .rz-header {
    position: relative;
    border-bottom-color: transparent !important;
}

.material.candy-cane .rz-header::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 5px;
    background: repeating-linear-gradient(-45deg, var(--sm-candy-berry) 0 9px, #ffffff 9px 18px);
    pointer-events: none;
}

.material.candy-cane .rz-footer {
    background: #f1f4f2 !important;
    border-top-color: var(--sm-light-border) !important;
}

/* Keep decorative motion clipped to this sidebar and below app-level overlays. */
.material.candy-cane .rz-layout > .app-sidebar.rz-sidebar {
    position: relative;
    isolation: isolate;
}

.material.candy-cane .app-sidebar {
    --sidebar-nav-active-text: var(--sm-candy-pine-dark);
    --sidebar-nav-active: var(--sm-candy-pine-soft);
    --sidebar-nav-accent: var(--sm-candy-pine);
}

.material.candy-cane .header-action-knowledge {
    --header-action-accent: var(--sm-candy-pine);
}

.material.candy-cane .rz-button.rz-primary,
.material.candy-cane .download-installer-button,
.material.candy-cane .rz-grid-filter-buttons .rz-button.rz-apply-filter {
    background: var(--sm-candy-pine) !important;
    border-color: var(--sm-candy-pine) !important;
    color: #ffffff !important;
}

.material.candy-cane .rz-button.rz-primary:not(:disabled):hover,
.material.candy-cane .download-installer-button:is(:hover, :focus-visible),
.material.candy-cane .rz-grid-filter-buttons .rz-button.rz-apply-filter:is(:hover, :focus-visible) {
    background: var(--sm-candy-pine-dark) !important;
    border-color: var(--sm-candy-pine-dark) !important;
}

.material.candy-cane .rz-tabview .rz-tabview-nav li.rz-tabview-selected::after {
    background: var(--sm-candy-berry);
}

.material.candy-cane .settings-tabs,
.material.candy-cane .settings-page {
    --settings-accent: var(--sm-candy-pine);
}

/* Skye turns berry red so the assistant still stands out against green buttons. */
.material.candy-cane .ai-assistant-launcher {
    border-color: rgba(255, 140, 156, 0.65);
    background: radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.35), transparent 28%),
                linear-gradient(145deg, #ef5a70, var(--sm-candy-berry) 52%, var(--sm-candy-berry-dark));
    box-shadow: 0 18px 40px rgba(179, 31, 58, 0.3);
}
