:root {
    /* Mueslibar Light: clean grey surfaces with a restrained yellow brand stripe */
    --rz-white: #ffffff;
    --rz-black: #000000;

    /* Base scale: dark text tones at 50 -> bright surfaces at 900 */
    --rz-base: #454545;
    --rz-base-50: #333333;
    --rz-base-100: #454545;
    --rz-base-200: #5a5a5a;
    --rz-base-300: #6f6f6f;
    --rz-base-400: #838383;
    --rz-base-500: #9e9e9e;
    --rz-base-600: #c3c3c3;
    --rz-base-700: #e4e4e4;
    --rz-base-800: #f6f6f6;
    --rz-base-900: #fdfdfd;
    --rz-base-light: var(--rz-base-600);
    --rz-base-lighter: var(--rz-base-900);
    --rz-base-dark: var(--rz-base-200);
    --rz-base-darker: var(--rz-base-50);

    /* Primary: fresh lime green from the Mueslibar interaction color */
    --rz-primary: #a8c914;
    --rz-primary-light: #b7d62a;
    --rz-primary-lighter: rgba(168, 201, 20, 0.18);
    --rz-primary-dark: #6f8d0f;
    --rz-primary-darker: #4f6810;

    /* Secondary: neutral graphite after swapping the old Primary role */
    --rz-secondary: #555555;
    --rz-secondary-light: #737373;
    --rz-secondary-lighter: rgba(85, 85, 85, 0.14);
    --rz-secondary-dark: #424242;
    --rz-secondary-darker: #303030;

    --rz-info: #6f7580;
    --rz-info-light: #9299a3;
    --rz-info-lighter: rgba(111, 117, 128, 0.16);
    --rz-info-dark: #575e68;
    --rz-info-darker: #424852;

    --rz-success: #22863a;
    --rz-success-light: #40c057;
    --rz-success-lighter: rgba(34, 134, 58, 0.16);
    --rz-success-dark: #176b2c;
    --rz-success-darker: #0f4f20;

    --rz-warning: #fcd000;
    --rz-warning-light: #ffe066;
    --rz-warning-lighter: rgba(252, 208, 0, 0.18);
    --rz-warning-dark: #c9a500;
    --rz-warning-darker: #9c8000;

    --rz-danger: #c9332b;
    --rz-danger-light: #dd5a52;
    --rz-danger-lighter: rgba(201, 51, 43, 0.16);
    --rz-danger-dark: #a82923;
    --rz-danger-darker: #85211c;

    --rz-on-base: #ffffff;
    --rz-on-base-light: #333333;
    --rz-on-base-lighter: #333333;
    --rz-on-base-dark: #ffffff;
    --rz-on-base-darker: #ffffff;

    --rz-on-primary: #202020;
    --rz-on-primary-light: #202020;
    --rz-on-primary-lighter: #202020;
    --rz-on-primary-dark: #ffffff;
    --rz-on-primary-darker: #ffffff;

    --rz-on-secondary: #ffffff;
    --rz-on-secondary-light: #ffffff;
    --rz-on-secondary-lighter: #333333;
    --rz-on-secondary-dark: #ffffff;
    --rz-on-secondary-darker: #ffffff;

    --rz-on-info: #ffffff;
    --rz-on-info-light: #333333;
    --rz-on-info-lighter: #333333;
    --rz-on-info-dark: #ffffff;
    --rz-on-info-darker: #ffffff;

    --rz-on-success: #ffffff;
    --rz-on-success-light: #102a16;
    --rz-on-success-lighter: #102a16;
    --rz-on-success-dark: #ffffff;
    --rz-on-success-darker: #ffffff;

    --rz-on-warning: #1a2b40;
    --rz-on-warning-light: #1a2b40;
    --rz-on-warning-lighter: #6f5b00;
    --rz-on-warning-dark: #1a2b40;
    --rz-on-warning-darker: #1a2b40;

    --rz-on-danger: #ffffff;
    --rz-on-danger-light: #ffffff;
    --rz-on-danger-lighter: #6d1b17;
    --rz-on-danger-dark: #ffffff;
    --rz-on-danger-darker: #ffffff;

    /* Series palette for charts - natural cereal and snack tones */
    --rz-series-1: #a8c914;
    --rz-series-2: #f2cf4a;
    --rz-series-3: #22863a;
    --rz-series-4: #6f7580;
    --rz-series-5: #c9332b;
    --rz-series-6: #8a6f3d;
    --rz-series-7: #fcd000;
    --rz-series-8: #465026;
    --rz-series-9: #e4c142;
    --rz-series-10: #40c057;
    --rz-series-11: #d8d8d8;
    --rz-series-12: #dd5a52;
    --rz-series-13: #a48650;
    --rz-series-14: #f2bf50;
    --rz-series-15: #303030;
    --rz-series-16: #575e68;
    --rz-series-17: #176b2c;
    --rz-series-18: #9299a3;
    --rz-series-19: #a82923;
    --rz-series-20: #8a6f3d;
    --rz-series-21: #c9a500;
    --rz-series-22: #f6dd7a;
    --rz-series-23: #aab867;
    --rz-series-24: #ededed;

    /* Mueslibar custom variables */
    --mueslibar-yellow: #f2cf4a;
    --mueslibar-yellow-soft: #fff7d8;
    --mueslibar-lime: #a8c914;
    --mueslibar-lime-soft: #eef6c8;
    --mueslibar-lime-dark: #6f8d0f;
    --mueslibar-green: #5f6b34;
    --mueslibar-green-light: #8d9b57;
    --mueslibar-green-dark: #465026;
    --mueslibar-structure-line: 1px solid rgba(66, 66, 66, 0.16);

    /* Theme constants */
    --rz-border-width: 1px;
    --rz-root-font-size: 16px;
    --rz-body-font-size: 0.875rem;
    --rz-body-line-height: 1.45;
    --rz-body-background-color: #efefed;
    --rz-text-font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --rz-outline-offset: 2px;
    --rz-outline-width: 2px;
    --rz-outline-color: var(--rz-primary);

    /* Semantic text */
    --rz-text-title-color: var(--rz-base-50);
    --rz-text-color: var(--rz-base-100);
    --rz-text-secondary-color: var(--rz-base-300);
    --rz-text-tertiary-color: var(--rz-base-400);
    --rz-text-disabled-color: var(--rz-base-500);
    --rz-text-contrast-color: var(--rz-white);

    /* Link */
    --rz-link-color: var(--rz-primary-dark);
    --rz-link-text-decoration: none;
    --rz-link-hover-color: var(--rz-primary-darker);
    --rz-link-hover-text-decoration: underline;
    --rz-link-focus-outline: var(--rz-outline-focus);
    --rz-link-focus-outline-offset: var(--rz-outline-offset);

    /* Pager: restrained brand color for selected page */
    --rz-pager-numeric-button-selected-background-color: transparent;
    --rz-pager-numeric-button-selected-color: var(--mueslibar-green-dark);

    /* Chrome: white and light grey, with yellow separators */
    --rz-header-background-color: #ffffff;
    --rz-header-color: #454545;
    --rz-footer-background-color: #f7f7f5;
    --rz-footer-color: #454545;
    --rz-sidebar-background-color: #f7f7f5;
    --rz-sidebar-color: #454545;
    --rz-panel-menu-background-color: #f7f7f5;
    --rz-panel-menu-item-color: #454545;
    --rz-panel-menu-item-background-color: transparent;
    --rz-panel-menu-item-2nd-level-background-color: rgba(0, 0, 0, 0.035);
    --rz-panel-menu-text-color: #454545;

    /* Menu hover/active: pale yellow surface with muted text */
    --rz-menu-item-hover-color: #3f4a24;
    --rz-menu-item-icon-hover-color: #3f4a24;
    --rz-menu-item-hover-background-color: var(--mueslibar-yellow-soft);
    --rz-menu-item-selected-color: #202020;
    --rz-menu-item-selected-background-color: rgba(242, 207, 74, 0.28);
    --rz-panel-menu-item-hover-color: #3f4a24;
    --rz-panel-menu-item-hover-background-color: var(--mueslibar-yellow-soft);
    --rz-panel-menu-item-active-color: #202020;
    --rz-panel-menu-item-active-background-color: var(--mueslibar-yellow-soft);

    /* Grid selection: pale warm highlight */
    --rz-grid-selected-background-color: rgba(242, 207, 74, 0.28);
    --rz-grid-selected-color: var(--rz-base-50);
    --rz-grid-hover-color: var(--mueslibar-green-dark);

    /* Base background: slightly darker than pure white */
    --rz-base-background-color: var(--rz-base-800);

    /* Dialog: darker background */
    --rz-dialog-background-color: #ffffff;
    --rz-dialog-title-background-color: #f7f7f5;

    /* Interaction states */
    --rz-border-normal: var(--rz-border-width) solid var(--rz-base-600);
    --rz-border-hover: var(--rz-border-width) solid var(--rz-base-500);
    --rz-border-focus: var(--rz-border-width) solid var(--rz-primary);
    --rz-border-disabled: var(--rz-border-width) solid var(--rz-base-700);

    /* Border radius */
    --rz-border-radius: 0.25rem;
    --rz-border-radius-0: 0;
    --rz-border-radius-1: 0.25rem;
    --rz-border-radius-2: 0.5rem;
    --rz-border-radius-3: 0.75rem;
    --rz-border-radius-4: 1rem;
    --rz-border-radius-5: 1.25rem;
    --rz-border-radius-6: 1.5rem;
    --rz-border-radius-7: 1.75rem;
    --rz-border-radius-8: 2rem;
    --rz-border-radius-9: 2.25rem;
    --rz-border-radius-10: 2.5rem;

    /* Outline */
    --rz-outline-normal: none;
    --rz-outline-focus: var(--rz-outline-width) solid var(--rz-outline-color);

    /* Shadow */
    --rz-shadow-0: none;
    --rz-shadow-1: 0 1px 2px rgba(69, 69, 69, 0.07);
    --rz-shadow-2: 0 2px 8px rgba(69, 69, 69, 0.08);
    --rz-shadow-3: 0 6px 18px rgba(69, 69, 69, 0.1);
    --rz-shadow-4: 0 10px 24px rgba(69, 69, 69, 0.12);
    --rz-shadow-5: 0 14px 30px rgba(69, 69, 69, 0.14);
    --rz-shadow-6: 0 18px 36px rgba(69, 69, 69, 0.16);
    --rz-shadow-7: 0 22px 42px rgba(69, 69, 69, 0.18);
    --rz-shadow-8: 0 26px 48px rgba(69, 69, 69, 0.2);
    --rz-shadow-9: 0 30px 54px rgba(69, 69, 69, 0.22);
    --rz-shadow-10: 0 34px 60px rgba(69, 69, 69, 0.24);

    /* Transition */
    --rz-transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --rz-transition-all: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --rz-expander-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);

    /* Layout body */
    --rz-form-field-filled-border-radius: 12px;
    --rz-layout-body-margin: 0;
    --rz-layout-body-padding: 1rem;
    --rz-layout-body-border-radius: 0;
    --rz-layout-body-background-color: transparent;

    --rz-footer-padding: 0.5rem 1rem !important;
    --rz-fieldset-padding: 0.5rem !important;
    --rz-fieldset-border: 1px solid #d8d8d4 !important;
    --rz-fieldset-legend-color: var(--rz-base-100) !important;
    --rz-fieldset-legend-icon-color: var(--mueslibar-green) !important;
    --rz-fieldset-toggle-icon-color: var(--mueslibar-green) !important;
    --rz-tabs-padding: 0 !important;

    /* Input: white background */
    --rz-input-background-color: #ffffff;
    --rz-input-hover-background-color: #fbfff0;
    --rz-input-focus-background-color: #ffffff;
    --rz-input-hover-border: var(--rz-border-width) solid rgba(168, 201, 20, 0.65);
    --rz-input-focus-border: var(--rz-border-width) solid var(--rz-primary);
    --rz-input-hover-border-block-end: var(--rz-border-width) solid rgba(168, 201, 20, 0.75);
    --rz-input-focus-border-block-end: var(--rz-border-width) solid var(--rz-primary);
    --rz-input-hover-shadow: 0 0 0 2px rgba(168, 201, 20, 0.12);
    --rz-input-focus-shadow: 0 0 0 2px rgba(168, 201, 20, 0.18);
    --rz-form-field-filled-background-color: #ffffff;
    --rz-form-field-filled-hover-background-color: #fbfff0;
    --rz-form-field-hover-shadow: 0 0 0 2px rgba(168, 201, 20, 0.12);
    --rz-form-field-focus-shadow: 0 0 0 2px rgba(168, 201, 20, 0.18);
    --rz-form-field-filled-hover-border: var(--rz-border-width) solid rgba(168, 201, 20, 0.65);
    --rz-form-field-filled-focus-border: var(--rz-border-width) solid var(--rz-primary);
    --rz-checkbox-checked-background-color: var(--rz-primary);
    --rz-checkbox-checked-hover-background-color: var(--rz-primary-light);
    --rz-checkbox-checked-disabled-background-color: var(--rz-primary);
    --rz-checkbox-checked-color: var(--rz-on-primary);
    --rz-checkbox-checked-border: var(--rz-border-width) solid #8faf10;
    --rz-checkbox-checked-hover-border: var(--rz-border-width) solid var(--rz-primary-dark);
    --rz-radio-active-background-color: var(--rz-primary);
    --rz-radio-checked-background-color: var(--rz-primary);
    --rz-radio-checked-hover-background-color: var(--rz-primary-light);
    --rz-radio-checked-color: var(--rz-on-primary);
    --rz-switch-checked-background-color: var(--rz-primary);
    --rz-switch-checked-circle-background-color: #ffffff;
    --rz-switch-focus-outline: 2px solid rgba(168, 201, 20, 0.45);

    /* Code */
    --bs-code-color: #5f6b34 !important;
}

/* Stacked Loader cards: force white text on dark base background */
.zlc-card.rz-color-on-base .zlc-title,
.zlc-card.rz-color-on-base .zlc-sub,
.zlc-card.rz-color-on-base .zlc-progress-text {
    color: #ffffff !important;
}

.zlc-actions .zlc-icon-btn {
    margin-left: 3px;
}

.zlc-actions .zlc-icon-btn:hover .rzi,
.zlc-actions .zlc-icon-btn:hover {
    color: var(--mueslibar-green-dark) !important;
}

.rz-form-field:not(.rz-variant-outlined):not(.rz-floating-label) .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) *:focus ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) *:focus-within ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) :not(.rz-state-empty) ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) .rz-radio-button-list-vertical ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) .rz-radio-button-list-horizontal ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) .rz-checkbox-list-vertical ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) .rz-checkbox-list-horizontal ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) .rz-chkbox ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) .rz-fileupload ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined) .rz-state-empty:has(.rz-placeholder) ~ .rz-form-field-label,
.rz-form-field:not(.rz-variant-outlined).rz-state-focused .rz-form-field-label {
    background-color: transparent !important;
    color: var(--rz-base-400) !important;
}

.rz-form-field:not(.rz-state-disabled):not(:has(.invalid)):not(:has(:disabled)):not(:has([readonly])):not(:has(.rz-state-disabled)):not(:has(.rz-disabled)):not(:has(.rz-readonly)):hover .rz-form-field-content,
.rz-dropdown:not(.rz-state-disabled):not(.invalid):hover,
.rz-multiselect:not(.rz-state-disabled):not(.invalid):hover,
.rz-datepicker:not(.rz-state-disabled):not(:has(.invalid)):hover > .rz-inputtext,
.rz-textbox:not(:disabled):not(.invalid):hover,
.rz-textarea:not(:disabled):not(.invalid):hover,
.rz-numeric:not(.rz-state-disabled):not(.invalid):hover {
    background-color: #fbfff0 !important;
    border-color: rgba(168, 201, 20, 0.65) !important;
    box-shadow: 0 0 0 2px rgba(168, 201, 20, 0.12) !important;
}

.rz-form-field:not(.rz-state-disabled):not(:has(.invalid)):not(:has(:disabled)):not(:has([readonly])):not(:has(.rz-state-disabled)):not(:has(.rz-disabled)):not(:has(.rz-readonly)):hover .rz-form-field-label {
    color: var(--rz-primary-darker) !important;
}

.rz-chkbox-box:hover:not(.rz-state-disabled):not(.rz-disabled):not(.rz-readonly),
.rz-radiobutton-box:hover:not(.rz-state-disabled):not(.rz-disabled):not(.rz-readonly) {
    background-color: #fbfff0 !important;
    border-color: rgba(168, 201, 20, 0.75) !important;
    box-shadow: 0 0 0 2px rgba(168, 201, 20, 0.12) !important;
}

.rz-chkbox-box.rz-state-active,
.rz-chkbox-box.rz-state-active:hover:not(.rz-state-disabled),
.rz-radiobutton-box.rz-state-active,
.rz-radiobutton-box.rz-state-active:hover:not(.rz-state-disabled) {
    background-color: var(--rz-primary) !important;
    border-color: #8faf10 !important;
    color: var(--rz-on-primary) !important;
}

.rz-chkbox-box.rz-state-active .rzi,
.rz-radiobutton-box.rz-state-active .rzi {
    color: var(--rz-on-primary) !important;
}

.rz-switch.rz-switch-checked .rz-switch-circle {
    background: var(--rz-primary) !important;
}

.rz-switch:not(.rz-switch-checked):not(.rz-state-disabled):not(.rz-disabled):not(.rz-readonly):not(:has(.rz-disabled)):not(:has(.rz-readonly)):hover .rz-switch-circle {
    background: #d8e4b3 !important;
}

.rz-switch.rz-switch-checked:not(.rz-state-disabled):not(.rz-disabled):not(.rz-readonly):not(:has(.rz-disabled)):not(:has(.rz-readonly)):hover .rz-switch-circle {
    background: var(--rz-primary-light) !important;
}

.rz-form-field.rz-state-disabled .rz-form-field-content,
.rz-form-field:has(:disabled) .rz-form-field-content,
.rz-form-field:has([readonly]) .rz-form-field-content,
.rz-form-field:has(.rz-state-disabled) .rz-form-field-content,
.rz-form-field:has(.rz-disabled) .rz-form-field-content,
.rz-form-field:has(.rz-readonly) .rz-form-field-content {
    background-color: #f2f2f0 !important;
    border-color: #c8c8c3 !important;
    box-shadow: none !important;
}

.rz-form-field.rz-state-disabled:hover .rz-form-field-content,
.rz-form-field:has(:disabled):hover .rz-form-field-content,
.rz-form-field:has([readonly]):hover .rz-form-field-content,
.rz-form-field:has(.rz-state-disabled):hover .rz-form-field-content,
.rz-form-field:has(.rz-disabled):hover .rz-form-field-content,
.rz-form-field:has(.rz-readonly):hover .rz-form-field-content {
    background-color: #f2f2f0 !important;
    border-color: #c8c8c3 !important;
    box-shadow: none !important;
}

.rz-switch.rz-switch-checked:has(.rz-disabled) .rz-switch-circle,
.rz-switch.rz-switch-checked:has(.rz-readonly) .rz-switch-circle,
.rz-switch.rz-switch-checked .rz-switch-circle.rz-disabled,
.rz-switch.rz-switch-checked .rz-switch-circle.rz-readonly,
.rz-form-field:has(.rz-switch .rz-disabled) .rz-switch .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-readonly) .rz-switch .rz-switch-circle,
.rz-form-field:has(:disabled) .rz-switch .rz-switch-circle,
.rz-form-field:has([readonly]) .rz-switch .rz-switch-circle,
.rz-switch:has(.rz-disabled) .rz-switch-circle,
.rz-switch:has(.rz-readonly) .rz-switch-circle,
.rz-switch.rz-disabled .rz-switch-circle,
.rz-switch.rz-readonly .rz-switch-circle,
.rz-switch .rz-switch-circle.rz-disabled,
.rz-switch .rz-switch-circle.rz-readonly,
.rz-form-field:has(.rz-switch .rz-switch-circle.rz-disabled) .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-switch-circle.rz-readonly) .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-disabled) .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-readonly) .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(:disabled) .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has([readonly]) .rz-switch.rz-switch-checked .rz-switch-circle {
    background: #8f8f8f !important;
}

.rz-switch.rz-switch-checked:has(.rz-disabled):hover .rz-switch-circle,
.rz-switch.rz-switch-checked:has(.rz-readonly):hover .rz-switch-circle,
.rz-switch.rz-switch-checked .rz-switch-circle.rz-disabled:hover,
.rz-switch.rz-switch-checked .rz-switch-circle.rz-readonly:hover,
.rz-form-field:has(.rz-switch .rz-switch-circle.rz-disabled):hover .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-switch-circle.rz-readonly):hover .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-disabled):hover .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-readonly):hover .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has(:disabled):hover .rz-switch.rz-switch-checked .rz-switch-circle,
.rz-form-field:has([readonly]):hover .rz-switch.rz-switch-checked .rz-switch-circle {
    background: #8f8f8f !important;
}

.rz-form-field:has(.rz-switch .rz-switch-circle.rz-disabled) .rz-form-field-label,
.rz-form-field:has(.rz-switch .rz-switch-circle.rz-readonly) .rz-form-field-label,
.rz-form-field:has(.rz-switch .rz-disabled) .rz-form-field-label,
.rz-form-field:has(.rz-switch .rz-readonly) .rz-form-field-label,
.rz-form-field:has(:disabled) .rz-form-field-label,
.rz-form-field:has([readonly]) .rz-form-field-label {
    color: #777777 !important;
}

.rz-form-field:has(.rz-switch .rz-disabled):hover .rz-form-field-label,
.rz-form-field:has(.rz-switch .rz-readonly):hover .rz-form-field-label,
.rz-form-field:has(:disabled):hover .rz-form-field-label,
.rz-form-field:has([readonly]):hover .rz-form-field-label,
.rz-form-field:has(.rz-state-disabled):hover .rz-form-field-label,
.rz-form-field:has(.rz-disabled):hover .rz-form-field-label,
.rz-form-field:has(.rz-readonly):hover .rz-form-field-label {
    color: #777777 !important;
}

.rz-form-field:has(.rz-switch .rz-disabled):hover .rz-switch .rz-switch-circle,
.rz-form-field:has(.rz-switch .rz-readonly):hover .rz-switch .rz-switch-circle,
.rz-form-field:has(:disabled):hover .rz-switch .rz-switch-circle,
.rz-form-field:has([readonly]):hover .rz-switch .rz-switch-circle,
.rz-switch:has(.rz-disabled):hover .rz-switch-circle,
.rz-switch:has(.rz-readonly):hover .rz-switch-circle,
.rz-switch.rz-disabled:hover .rz-switch-circle,
.rz-switch.rz-readonly:hover .rz-switch-circle,
.rz-switch .rz-switch-circle.rz-disabled:hover,
.rz-switch .rz-switch-circle.rz-readonly:hover {
    background: #8f8f8f !important;
    box-shadow: none !important;
}

/* Tabs: thin yellow selected state */
.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected {
    background-color: #ffffff !important;
    border-top-color: var(--mueslibar-yellow) !important;
    box-shadow: inset 0 3px 0 var(--mueslibar-yellow);
    color: #333333 !important;
}

.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected a,
.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected .rzi {
    color: #333333 !important;
}

.rz-tabview-top > .rz-tabview-nav .rz-tabview-tab:not(.rz-tabview-selected):hover,
.rz-tabview-top > .rz-tabview-nav li:not(.rz-tabview-selected):hover {
    background-color: var(--mueslibar-yellow-soft) !important;
    border-top-color: var(--mueslibar-yellow) !important;
    box-shadow: inset 0 3px 0 var(--mueslibar-yellow) !important;
    color: #3f4a24 !important;
}

.rz-tabview-top > .rz-tabview-nav .rz-tabview-tab:not(.rz-tabview-selected):hover a,
.rz-tabview-top > .rz-tabview-nav .rz-tabview-tab:not(.rz-tabview-selected):hover .rzi,
.rz-tabview-top > .rz-tabview-nav li:not(.rz-tabview-selected):hover a,
.rz-tabview-top > .rz-tabview-nav li:not(.rz-tabview-selected):hover .rzi {
    color: #3f4a24 !important;
}

.rz-tabview > ul {
    margin-bottom: 5px;
}

.rz-tabview-panel {
    padding: 5px;
}

span.rz-cell-data:focus-within:not(:has(.rz-chkbox)) {
    box-shadow: 0 0 0 2px rgba(242, 207, 74, 0.45);
    box-sizing: border-box;
}

/* Header: clean white with brand separator */
.rz-header {
    background: #ffffff !important;
    color: #454545 !important;
    border-bottom: 3px solid var(--mueslibar-yellow) !important;
    box-shadow: 0 2px 10px rgba(69, 69, 69, 0.08) !important;
}

.rz-header .whereAmI {
    color: #454545 !important;
}

.rz-header .rz-button:not(.rz-primary):not(.rz-danger):not(.rz-success):not(.rz-warning),
.rz-header .rz-splitbutton .rz-button {
    background-color: #ffffff !important;
    border-color: #d8d8d4 !important;
    color: #454545 !important;
    box-shadow: none !important;
}

.rz-header .rz-button:not(.rz-primary):not(.rz-danger):not(.rz-success):not(.rz-warning):hover,
.rz-header .rz-splitbutton .rz-button:hover {
    background-color: var(--mueslibar-yellow-soft) !important;
    border-color: var(--mueslibar-yellow) !important;
    color: #333333 !important;
}

.rz-header .rzi {
    color: inherit !important;
}

/* Footer: light grey with matching yellow separator */
.rz-footer {
    background: #f7f7f5 !important;
    color: #454545 !important;
    border-top: 3px solid var(--mueslibar-yellow) !important;
}

/* Sidebar: quiet grey with a yellow divider */
.rz-sidebar {
    background:
        linear-gradient(to right, rgba(255, 255, 255, 0.84), rgba(247, 247, 245, 0.94)),
        url('/css/mueslibar/surface-texture.jpg') center/720px auto !important;
    color: #454545 !important;
    border-right: 3px solid var(--mueslibar-yellow) !important;
}

/* Body: neutral work surface with a very subtle generated texture */
.rz-body {
    background:
        linear-gradient(rgba(244, 244, 242, 0.88), rgba(232, 232, 229, 0.88)),
        url('/css/mueslibar/surface-texture.jpg') center/960px auto !important;
    background-attachment: fixed;
}

/* Menu sidebar toggle: neutral by default, yellow on hover */
.rz-sidebar-toggle {
    background-color: #ffffff !important;
    color: #555555 !important;
    border: 1px solid #d8d8d4 !important;
    border-radius: 4px;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.rz-sidebar-toggle .rzi {
    color: #555555 !important;
}

.rz-sidebar-toggle:hover,
.rz-sidebar-toggle:focus-visible {
    background-color: var(--mueslibar-yellow-soft) !important;
    border-color: var(--mueslibar-yellow) !important;
    color: #333333 !important;
}

.rz-sidebar-toggle:hover .rzi,
.rz-sidebar-toggle:focus-visible .rzi {
    color: #1f260e !important;
}

/* Sidebar pin button: transparent with neutral icon */
.rz-sidebar:not(.rz-sidebar-end) .rz-button {
    background: transparent !important;
    background-image: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: #555555 !important;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-button .rzi {
    color: #555555 !important;
}

.rz-sidebar:not(.rz-sidebar-end) > div:has(.rz-panel-menu) > div:last-child {
    justify-content: flex-end !important;
    gap: 5px !important;
    padding: 0 6px 7px 0 !important;
}

.rz-sidebar:not(.rz-sidebar-end) > div:has(.rz-panel-menu) > div:last-child .rz-button {
    width: 22px !important;
    min-width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 !important;
    border-radius: 4px !important;
}

.rz-sidebar:not(.rz-sidebar-end) > div:has(.rz-panel-menu) > div:last-child .rz-button .rzi {
    font-size: 1rem !important;
    line-height: 1 !important;
}

/* Panel menu items: neutral text, color only on interaction */
.rz-panel-menu {
    background-color: #f8f8f5 !important;
}

.rz-panel-menu .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-icon {
    color: #303030 !important;
}

.rz-panel-menu > .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: #fbfbf9 !important;
    border-bottom: 1px solid rgba(69, 69, 69, 0.08);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: #ecece8 !important;
    border-bottom: 1px solid rgba(69, 69, 69, 0.12);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: #ddddd7 !important;
    border-bottom: 1px solid rgba(69, 69, 69, 0.16);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: #cecec5 !important;
    border-bottom: 1px solid rgba(69, 69, 69, 0.2);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: #bfbfb4 !important;
    border-bottom: 1px solid rgba(69, 69, 69, 0.24);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper .rz-navigation-item-icon {
    color: #202020 !important;
}

/* Menu hover: quiet yellow, no green */
.rz-menu:not(.rz-profile-menu):not(.grid-main-menu):not(.grid-side-menu) .rz-navigation-item-wrapper:hover,
.rz-menu:not(.rz-profile-menu):not(.grid-main-menu):not(.grid-side-menu) .rz-navigation-item-wrapper:has(> .active):hover,
.rz-menu:not(.rz-profile-menu):not(.grid-main-menu):not(.grid-side-menu) .rz-navigation-item-wrapper-active,
.rz-panel-menu .rz-navigation-item-wrapper:hover,
.rz-panel-menu .rz-navigation-item-wrapper-active,
.rz-panel-menu .rz-navigation-item-active {
    background-color: var(--mueslibar-yellow-soft) !important;
    background-image: none !important;
    color: #3f4a24 !important;
    transition: none !important;
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover {
    background-color: var(--mueslibar-yellow-soft) !important;
    background-image: none !important;
    box-shadow: inset 3px 0 0 var(--mueslibar-yellow) !important;
    color: #3f4a24 !important;
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon {
    color: #3f4a24 !important;
}

.rz-panel-menu .rz-navigation-item-wrapper:has(> a.active),
.rz-panel-menu .rz-navigation-item-wrapper:has(> .rz-navigation-item-link.active),
.rz-panel-menu .rz-navigation-item-wrapper:has(a.active),
.rz-panel-menu .rz-navigation-item-active,
.rz-panel-menu .rz-navigation-item-wrapper-active {
    background-color: var(--mueslibar-yellow-soft) !important;
    background-image: none !important;
    box-shadow: inset 3px 0 0 var(--mueslibar-yellow) !important;
}

.rz-panel-menu .rz-navigation-item-wrapper:has(> a.active) .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-wrapper:has(> a.active) .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item-wrapper:has(> .rz-navigation-item-link.active) .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-wrapper:has(> .rz-navigation-item-link.active) .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item-wrapper:has(a.active) .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-wrapper:has(a.active) .rz-navigation-item-icon {
    color: #202020 !important;
}

.rz-panel-menu .rz-navigation-item-wrapper:hover,
.rz-panel-menu .rz-navigation-item-wrapper-active,
.rz-panel-menu .rz-navigation-item-active {
    box-shadow: inset 3px 0 0 var(--mueslibar-yellow);
    transition: none !important;
}

.rz-panel-menu .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item-wrapper-active .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-wrapper-active .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item-active .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-active .rz-navigation-item-icon {
    color: #3f4a24 !important;
    transition: none !important;
}

/* Grid menus: no hover background (content area) */
.rz-menu.grid-main-menu .rz-navigation-item-wrapper:hover,
.rz-menu.grid-main-menu .rz-navigation-item-wrapper:has(> .active):hover,
.rz-menu.grid-side-menu .rz-navigation-item-wrapper:hover,
.rz-menu.grid-side-menu .rz-navigation-item-wrapper:has(> .active):hover {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

.rz-row:has(.rz-menu.grid-main-menu):has(.rz-menu.grid-side-menu),
.rz-menu.grid-main-menu,
.rz-menu.grid-side-menu {
    background-color: transparent !important;
    background-image: none !important;
}

/* Grid menu icons: lime hover, except export/delete which have own effects */
.rz-menu.grid-main-menu .rz-navigation-item-icon,
.rz-menu.grid-side-menu .rz-navigation-item-icon {
    transition: color 0.12s ease;
}

.rz-menu.grid-main-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-menu.grid-main-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon-children,
.rz-menu.grid-main-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-menu.grid-main-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-link,
.rz-menu.grid-main-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-link *,
.rz-menu.grid-side-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-menu.grid-side-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon-children,
.rz-menu.grid-side-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-menu.grid-side-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-link,
.rz-menu.grid-side-menu .rz-navigation-item:not(.menu-item-hover-danger):not(.menu-item-exportButton):not(.menu-item-exportButton-downloading) > .rz-navigation-item-wrapper:hover .rz-navigation-item-link * {
    color: var(--rz-primary) !important;
}

/* Export: green on hover (specificity must beat the general green rule above) */
.rz-menu.grid-main-menu .menu-item-exportButton > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-menu.grid-main-menu .menu-item-exportButton > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-menu.grid-main-menu .menu-item-exportButton > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon-children,
.rz-menu.grid-side-menu .menu-item-exportButton > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-menu.grid-side-menu .menu-item-exportButton > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-menu.grid-side-menu .menu-item-exportButton > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon-children {
    color: var(--rz-success) !important;
}

/* Delete & Clear Filter: red on hover */
.rz-menu.grid-main-menu .menu-item-hover-danger > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-menu.grid-main-menu .menu-item-hover-danger > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-menu.grid-side-menu .menu-item-hover-danger > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-menu.grid-side-menu .menu-item-hover-danger > .rz-navigation-item-wrapper:hover .rz-navigation-item-text {
    color: var(--rz-danger) !important;
}

/* Theme-owned site logo */
.headerLogo {
    background-image: url('/css/mueslibar/logo.png') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: left center !important;
    width: 194px !important;
    height: 38px !important;
    filter: none;
    animation: none;
}

/* Base and primary buttons use the fresh Mueslibar lime */
.rz-button.rz-base:not(.rz-variant-text):not(.rz-variant-outlined),
.rz-button.rz-primary:not(.rz-variant-text):not(.rz-variant-outlined) {
    background-color: var(--rz-primary) !important;
    background-image: none !important;
    border: 1px solid #8faf10 !important;
    color: #202020 !important;
    box-shadow: 0 4px 12px rgba(168, 201, 20, 0.22) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
}

.rz-button.rz-base:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):not(:active):hover,
.rz-button.rz-primary:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):not(:active):hover {
    transform: translateY(-1px);
    background-color: #b7d62a !important;
    background-image: none !important;
    box-shadow: 0 8px 18px rgba(168, 201, 20, 0.28) !important;
}

.rz-button.rz-base:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):active,
.rz-button.rz-primary:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):active {
    transform: translateY(0);
    background-color: #4f6810 !important;
    background-image: none !important;
    color: #ffffff !important;
    box-shadow: 0 3px 8px rgba(111, 141, 15, 0.24) !important;
}

.rz-button.rz-light:not(.rz-variant-text):not(.rz-variant-outlined) {
    background-color: #ded8c6 !important;
    background-image: linear-gradient(135deg, #e6e1d2 0%, #d6ceb8 100%) !important;
    border: 1px solid #c9bea4 !important;
    color: #333333 !important;
    box-shadow: 0 2px 8px rgba(69, 69, 69, 0.12) !important;
}

.rz-button.rz-light:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):hover {
    background-image: linear-gradient(135deg, #fff7d8 0%, #f2cf4a 100%) !important;
    border-color: var(--mueslibar-yellow) !important;
    color: #333333 !important;
}

.rz-button.rz-dark:not(.rz-variant-text):not(.rz-variant-outlined) {
    background-color: #303030 !important;
    background-image: linear-gradient(135deg, #303030 0%, #454545 100%) !important;
    border: 1px solid #252525 !important;
    color: #ffffff !important;
    box-shadow: 0 3px 10px rgba(48, 48, 48, 0.22) !important;
}

.rz-button.rz-dark:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):hover {
    background-image: linear-gradient(135deg, #454545 0%, #5a5a5a 100%) !important;
    border-color: #303030 !important;
}

.rz-alert.rz-light {
    --rz-alert-background-color: #d8d8d4;
    --rz-alert-color: #333333;
    --rz-alert-title-color: #333333;
    --rz-alert-icon-color: #555555;
    box-shadow: inset 0 0 0 1px #c5c5bd !important;
}

.rz-badge-light {
    background-color: #d8d8d4 !important;
    color: #333333 !important;
    box-shadow: inset 0 0 0 1px #c5c5bd !important;
}

.catalog-prepare-result-panel.rz-color-white {
    background-color: #f2f2f0 !important;
    color: #333333 !important;
}

.catalog-prepare-status.rz-color-white {
    background-color: #d8d8d4 !important;
    border: 1px solid #c5c5bd !important;
    color: #333333 !important;
}

.catalog-prepare-logs.rz-color-white {
    background-color: #ffffff !important;
    border-color: #d4d4cf !important;
    color: #333333 !important;
}

.catalog-prepare-logs .catalog-prepare-section-title,
.catalog-prepare-logs .catalog-prepare-output,
.catalog-prepare-logs .catalog-prepare-output summary,
.catalog-prepare-logs .catalog-prepare-output-body {
    color: #333333 !important;
}

.catalog-prepare-logs .catalog-prepare-log-item {
    border-bottom-color: #d8d8d4 !important;
    color: #333333 !important;
}

.catalog-prepare-logs .catalog-prepare-log-item span:first-child {
    color: #6f6f6f !important;
}

.catalog-prepare-logs .catalog-prepare-log-item span:nth-child(2) {
    color: var(--rz-primary-darker) !important;
    font-weight: 600;
}

.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover {
    background-color: rgba(242, 207, 74, 0.22) !important;
    box-shadow:
        inset 0 0 0 1px rgba(168, 201, 20, 0.45),
        0 8px 18px rgba(69, 69, 69, 0.14) !important;
    transform: translateY(-1px);
}

.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover .tile-icon,
.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover .tile-title,
.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover .clock-widget-icon,
.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover .clock-widget-time,
.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover .online-users-widget-icon,
.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover .online-users-widget-count {
    color: #333333 !important;
    opacity: 1 !important;
}

.footer-dock-item:not(.no-hover):hover {
    background-color: rgba(242, 207, 74, 0.28) !important;
    box-shadow:
        inset 0 0 0 1px rgba(168, 201, 20, 0.48),
        0 5px 14px rgba(69, 69, 69, 0.18) !important;
    color: #333333 !important;
}

.footer-dock-item:not(.no-hover):hover .rzi,
.footer-dock-item:not(.no-hover):hover .clock-widget-icon,
.footer-dock-item:not(.no-hover):hover .clock-widget-time,
.footer-dock-item:not(.no-hover):hover .online-users-widget-icon,
.footer-dock-item:not(.no-hover):hover .online-users-widget-count {
    color: #333333 !important;
    opacity: 1 !important;
}


/* Validation */
.rz-form-field:has(.rz-dropdown.invalid),
.rz-form-field:has(.rz-textbox.invalid),
.rz-form-field:has(.ggt-picker.invalid) {
    border: 2px solid var(--rz-danger);
    border-radius: 4px;
    padding: 2px;
}

.rz-form-field-content > .rz-dropdown.invalid,
.rz-form-field-content > .rz-textbox.invalid,
.rz-form-field-content > .ggt-picker.invalid > .rz-inputtext {
    border: none !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.rz-datatable .rz-textbox.invalid,
.rz-datatable .rz-dropdown.invalid,
.rz-datatable .rz-numeric-input.invalid,
.rz-datatable .rz-masked.invalid,
.rz-datatable .rz-datepicker .invalid {
    border: 2px solid var(--rz-danger) !important;
    box-shadow: none !important;
    border-radius: 2px;
    outline: 0 !important;
}

.dataFlowMappingSourceFieldDropDownDescription,
.fk-footertext {
    color: var(--rz-primary);
}

.lockedIcon {
    color: #00000066 !important;
    font-size: 1rem !important;
}

.main-component-progressbar {
    height: 5px;
}

.rz-fieldset + .rz-fieldset {
    margin-top: 20px;
}

.rz-message-popup {
    z-index: 100;
}

.mark.highlight-match {
    background-color: rgba(242, 207, 74, 0.32);
    color: #333333;
    border-radius: 3px;
    padding: 0 2px;
}

.grid-goto-link,
.goto-link {
    text-decoration: underline !important;
}

.dlg-grid .rz-dialog-content .rz-data-grid .rz-data-grid-data::-webkit-scrollbar {
    background-color: var(--rz-scrollbar-background-color);
    width: var(--rz-scrollbar-size);
    height: var(--rz-scrollbar-size);
}

.dlg-grid .rz-dialog-content .rz-data-grid .rz-data-grid-data::-webkit-scrollbar-thumb {
    background: var(--rz-scrollbar-color);
    border: 4px solid rgba(0, 0, 0, 0);
    background-clip: padding-box;
    border-radius: var(--rz-scrollbar-border-radius);
    min-width: var(--rz-scrollbar-size);
    min-height: var(--rz-scrollbar-size);
}

.dlg-grid .rz-dialog-content .rz-data-grid .rz-data-grid-data {
    scrollbar-width: var(--rz-scrollbar-size);
    scrollbar-color: var(--rz-scrollbar-color);
}

/* Right settings sidebar: neutral text on light background */
.rz-sidebar-end .rz-text,
.rz-sidebar-end .rz-text-overline,
.rz-sidebar-end label,
.rz-sidebar-end a,
.rz-sidebar-end .rz-link {
    color: #454545 !important;
}

.rz-sidebar-end .rz-text-subtitle1 {
    color: var(--mueslibar-green-dark) !important;
}

.rz-sidebar-end a:hover,
.rz-sidebar-end .rz-link:hover {
    color: var(--mueslibar-green-dark) !important;
}

/* ── AppGenerator: light-theme overrides for generation panel ── */
.generation-status {
    border: 1px solid var(--rz-base-600) !important;
    background: linear-gradient(160deg, #f6f6f6 0%, #ededed 100%) !important;
}

.generation-status.tone-live {
    border-color: #d7bd46 !important;
    background: linear-gradient(160deg, #fffaf0 0%, #f8f0cd 100%) !important;
}

.generation-status.tone-paused {
    border-color: #b8960e !important;
    background: linear-gradient(160deg, #fdf6e3 0%, #f5edcf 100%) !important;
}

.generation-status.tone-ok {
    border-color: #2f7a4b !important;
    background: linear-gradient(160deg, #e4f5ec 0%, #d4eede 100%) !important;
}

.generation-status.tone-error {
    border-color: #c44040 !important;
    background: linear-gradient(160deg, #fce8e8 0%, #f5d6d6 100%) !important;
}

.status-phase-icon {
    background: var(--rz-base-700) !important;
    color: var(--rz-base-100) !important;
}

.status-title {
    color: var(--rz-base-50) !important;
}

.status-message {
    color: var(--rz-base-300) !important;
}

.status-chip {
    border: 1px solid var(--rz-base-600) !important;
    background: var(--rz-base-800) !important;
    color: var(--rz-base-200) !important;
}

.status-chip.status-chip-warning {
    border-color: #c4a030 !important;
    background: #fdf6e3 !important;
    color: #7a6000 !important;
}

.generation-log {
    background: #fdfdfd !important;
    color: var(--rz-base-100) !important;
    border: 1px solid var(--rz-base-600);
}

.log-section-title {
    color: var(--mueslibar-green-dark) !important;
}

.log-time {
    color: var(--rz-base-400) !important;
}

.log-item {
    border-bottom: 1px solid var(--rz-base-700) !important;
}

.log-item.phase-logo { color: #8a6d20 !important; }
.log-item.phase-generating { color: #5f6b34 !important; }
.log-item.phase-building { color: #6d6b12 !important; }
.log-item.phase-fixing { color: #a85d3a !important; }
.log-item.phase-publishing { color: #4a7a30 !important; }
.log-item.phase-git { color: #b03060 !important; }
.log-item.phase-database { color: #7a4a8a !important; }
.log-item.phase-completed { color: #1a8a5a !important; }
.log-item.phase-failed { color: #c03030 !important; }

.assistant-card {
    border: 1px solid var(--rz-base-600) !important;
    background: linear-gradient(160deg, #fdfdfd 0%, #efefef 100%) !important;
    color: var(--rz-base-100) !important;
}

.assistant-card-title {
    color: var(--mueslibar-green-dark) !important;
}

.todo-item {
    border-bottom: 1px solid var(--rz-base-700) !important;
}

.todo-item.state-todo .todo-icon { color: var(--rz-base-400) !important; }
.todo-item.state-doing .todo-icon { color: var(--mueslibar-green-dark) !important; }
.todo-item.state-done .todo-icon { color: #2a8a50 !important; }
.todo-item.state-blocked .todo-icon { color: #c03030 !important; }

.question-idle {
    border: 1px dashed var(--rz-base-600) !important;
    color: var(--rz-base-400) !important;
    background: transparent !important;
}

.question-status {
    border: 1px solid #2f7148 !important;
    background: #e4f5ec !important;
    color: #1a5a30 !important;
}

.question-text {
    color: var(--rz-base-100) !important;
}

.question-text-input {
    border: 1px solid var(--rz-base-600) !important;
    background: #ffffff !important;
    color: var(--rz-base-100) !important;
}

.question-text-input:focus {
    border-color: var(--mueslibar-yellow) !important;
    box-shadow: 0 0 0 2px rgba(242, 207, 74, 0.32) !important;
}

.question-option {
    border: 1px solid var(--rz-base-600) !important;
    background: var(--rz-base-800) !important;
    color: var(--rz-base-100) !important;
}

.question-option:hover {
    border-color: var(--mueslibar-yellow) !important;
    background: var(--mueslibar-yellow-soft) !important;
}

.question-option.is-selected {
    border-color: var(--mueslibar-yellow) !important;
    background: #fff2bd !important;
    color: var(--rz-base-50) !important;
}

.question-submit {
    border: 1px solid #d7bd46 !important;
    background: linear-gradient(160deg, #fff7d8 0%, #f2cf4a 100%) !important;
    color: #333333 !important;
}

.question-submit:hover {
    border-color: var(--mueslibar-green-dark) !important;
    background: linear-gradient(160deg, #7a8743 0%, #5f6b34 100%) !important;
    color: #ffffff !important;
}

.generator-output-details {
    border: 1px solid var(--rz-base-600) !important;
    background: #fdfdfd !important;
}

.generator-output-details summary {
    color: var(--mueslibar-green-dark) !important;
    background: var(--rz-base-800) !important;
    border-bottom: 1px solid var(--rz-base-600) !important;
}

.generator-output-markdown {
    color: var(--rz-base-200) !important;
}

.generator-output-markdown h1,
.generator-output-markdown h2,
.generator-output-markdown h3,
.generator-output-markdown h4 {
    color: var(--mueslibar-green-dark) !important;
}

.generator-output-markdown code {
    background: var(--rz-base-800) !important;
}

.generator-output-markdown pre {
    background: var(--rz-base-800) !important;
}

.generator-output-markdown a {
    color: var(--mueslibar-green-dark) !important;
}

.generator-output-markdown blockquote {
    border-left: 2px solid var(--mueslibar-yellow) !important;
    color: var(--mueslibar-green-dark) !important;
}

.operation-item {
    border-bottom: 1px solid var(--rz-base-700) !important;
}

.operation-icon { color: var(--rz-base-300) !important; }
.operation-time { color: var(--rz-base-400) !important; }
.operation-tag { color: #8a6d20 !important; }
.operation-message { color: var(--rz-base-200) !important; }

.operation-item.tone-success .operation-icon,
.operation-item.tone-success .operation-tag { color: #2a8a50 !important; }

.operation-item.tone-warning .operation-icon,
.operation-item.tone-warning .operation-tag { color: #a88520 !important; }

.operation-item.tone-error .operation-icon,
.operation-item.tone-error .operation-tag { color: #c03030 !important; }

.cancel-notice {
    border: 1px solid #c4a030 !important;
    background: #fdf6e3 !important;
    color: #7a6000 !important;
}

.error-message { color: #c03030 !important; }

.error-message pre {
    background: var(--rz-base-800) !important;
    color: var(--rz-base-100) !important;
}

.chat-response { color: var(--rz-base-100) !important; }

.chat-response-markdown {
    background: #fdfdfd !important;
    color: var(--rz-base-100) !important;
    border: 1px solid var(--rz-base-600);
}

.chat-response-markdown h1,
.chat-response-markdown h2,
.chat-response-markdown h3,
.chat-response-markdown h4 {
    color: var(--mueslibar-green-dark) !important;
}

.chat-response-markdown code { background: var(--rz-base-800) !important; }
.chat-response-markdown pre { background: var(--rz-base-800) !important; }
.chat-response-markdown th { background: var(--rz-base-800) !important; color: var(--mueslibar-green-dark) !important; }
.chat-response-markdown th,
.chat-response-markdown td { border-color: var(--rz-base-600) !important; }
.chat-response-markdown a { color: var(--mueslibar-green-dark) !important; }
.chat-response-markdown blockquote { border-left-color: var(--mueslibar-yellow) !important; color: var(--mueslibar-green-dark) !important; }

/* ZPhaseTrack: light-theme overrides */
.zpt-node {
    border: 1px solid var(--rz-base-600) !important;
    background: var(--rz-base-800) !important;
    color: var(--rz-base-400) !important;
}

.zpt-node-icon {
    background: var(--rz-base-700) !important;
    color: var(--rz-base-400) !important;
}

/* Completed */
.zpt-completed {
    border-color: #3a9a5c !important;
    background: #e4f5ec !important;
    color: #1a5a30 !important;
}

.zpt-completed .zpt-node-icon {
    background: #3a9a5c !important;
    color: #ffffff !important;
}

/* Active */
.zpt-active {
    border-color: var(--mueslibar-yellow) !important;
    background: var(--mueslibar-yellow-soft) !important;
    color: #333333 !important;
}

.zpt-active .zpt-node-icon {
    background: var(--mueslibar-yellow) !important;
    color: #333333 !important;
}

.zpt-active.zpt-animate {
    animation: zpt-pulse-light 1.5s ease-in-out infinite !important;
}

@keyframes zpt-pulse-light {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(242, 207, 74, 0);
    }
    50% {
        box-shadow: 0 0 0 4px rgba(242, 207, 74, 0.32);
    }
}

/* Failed */
.zpt-failed {
    border-color: #c04040 !important;
    background: #fce8e8 !important;
    color: #8a2020 !important;
}

.zpt-failed .zpt-node-icon {
    background: #c04040 !important;
    color: #ffffff !important;
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item-wrapper:hover,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item-wrapper-active,
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item-active {
    box-shadow: inset 3px 0 0 var(--mueslibar-yellow), 0 0 0 1px var(--mueslibar-yellow);
}
