:root {
    /* Smart360 Dark: deep navy surfaces of smart360.at, mint as action color, sky blue from the headline gradient as accent */
    --rz-white: #ffffff;
    --rz-black: #000000;

    /* Base scale: light text tones at 50 -> darkest surface at 900 */
    --rz-base: #1f2937;
    --rz-base-50: #f8fafc;
    --rz-base-100: #e2e8f0;
    --rz-base-200: #cbd5e1;
    --rz-base-300: #aab6c6;
    --rz-base-400: #94a3b8;
    --rz-base-500: #64748b;
    --rz-base-600: #334155;
    --rz-base-700: #1f2937;
    --rz-base-800: #131b28;
    --rz-base-900: #0c1017;
    --rz-base-light: var(--rz-base-400);
    --rz-base-lighter: var(--rz-base-50);
    --rz-base-dark: var(--rz-base-700);
    --rz-base-darker: var(--rz-base-900);

    /* Primary: smart360 green, lifted for dark surfaces; dark labels on filled green */
    --rz-primary: #57cc99;
    --rz-primary-light: #7ee8b8;
    --rz-primary-lighter: rgba(87, 204, 153, 0.2);
    --rz-primary-dark: #3fb584;
    --rz-primary-darker: #1a7a68;

    /* Secondary: smart360 sky blue (footer headings on smart360.at) */
    --rz-secondary: #5ab4e5;
    --rz-secondary-light: #a8d8f0;
    --rz-secondary-lighter: rgba(90, 180, 229, 0.18);
    --rz-secondary-dark: #3f97c9;
    --rz-secondary-darker: #255e7e;

    /* -darker shades are deep tints: white labels, and the base color stays readable on them */
    --rz-info: #60a5fa;
    --rz-info-light: #93c5fd;
    --rz-info-lighter: rgba(96, 165, 250, 0.18);
    --rz-info-dark: #3b82f6;
    --rz-info-darker: #1d4ed8;

    --rz-success: #4cc27a;
    --rz-success-light: #72d096;
    --rz-success-lighter: rgba(76, 194, 122, 0.18);
    --rz-success-dark: #36a965;
    --rz-success-darker: #1d6a3e;

    /* Warning: yellow */
    --rz-warning: #fcd000;
    --rz-warning-light: #ffe066;
    --rz-warning-lighter: rgba(252, 208, 0, 0.18);
    --rz-warning-dark: #d9b300;
    --rz-warning-darker: #6b5800;

    --rz-danger: #ff7369;
    --rz-danger-light: #ff958d;
    --rz-danger-lighter: rgba(255, 115, 105, 0.18);
    --rz-danger-dark: #e85b52;
    --rz-danger-darker: #6e2420;

    --rz-on-base: #ffffff;
    --rz-on-base-light: #0c1017;
    --rz-on-base-lighter: #0c1017;
    --rz-on-base-dark: #ffffff;
    --rz-on-base-darker: #ffffff;

    --rz-on-primary: #0c1017;
    --rz-on-primary-light: #0c1017;
    --rz-on-primary-lighter: #b9f2d8;
    --rz-on-primary-dark: #0c1017;
    --rz-on-primary-darker: #ffffff;

    --rz-on-secondary: #0c1017;
    --rz-on-secondary-light: #0c1017;
    --rz-on-secondary-lighter: #cdeaf8;
    --rz-on-secondary-dark: #0c1017;
    --rz-on-secondary-darker: #ffffff;

    --rz-on-info: #0c1017;
    --rz-on-info-light: #0c1017;
    --rz-on-info-lighter: #bfdbfe;
    --rz-on-info-dark: #0c1017;
    --rz-on-info-darker: #ffffff;

    --rz-on-success: #0c1017;
    --rz-on-success-light: #0c1017;
    --rz-on-success-lighter: #a6e6be;
    --rz-on-success-dark: #0c1017;
    --rz-on-success-darker: #ffffff;

    --rz-on-warning: #0c1017;
    --rz-on-warning-light: #0c1017;
    --rz-on-warning-lighter: #ffe680;
    --rz-on-warning-dark: #0c1017;
    --rz-on-warning-darker: #ffffff;

    --rz-on-danger: #0c1017;
    --rz-on-danger-light: #0c1017;
    --rz-on-danger-lighter: #ffc2bd;
    --rz-on-danger-dark: #0c1017;
    --rz-on-danger-darker: #ffffff;

    /* Series palette for charts: smart360 mint/sky blue first, then distinct accents */
    --rz-series-1: #57cc99;
    --rz-series-2: #5ab4e5;
    --rz-series-3: #60a5fa;
    --rz-series-4: #fcd000;
    --rz-series-5: #ff7369;
    --rz-series-6: #7ee8b8;
    --rz-series-7: #b48ce6;
    --rz-series-8: #a8d8f0;
    --rz-series-9: #93c5fd;
    --rz-series-10: #ffe066;
    --rz-series-11: #ff958d;
    --rz-series-12: #72d096;
    --rz-series-13: #3fb584;
    --rz-series-14: #3f97c9;
    --rz-series-15: #3b82f6;
    --rz-series-16: #d9b300;
    --rz-series-17: #e85b52;
    --rz-series-18: #b9f2d8;
    --rz-series-19: #cdeaf8;
    --rz-series-20: #bfdbfe;
    --rz-series-21: #cbd5e1;
    --rz-series-22: #8493a8;
    --rz-series-23: #36a965;
    --rz-series-24: #c9a8f0;

    /* smart360 custom variables */
    --s360-green: #2e9d82;
    --s360-sky: #5ab4e5;
    --s360-slate: #334155;
    --s360-chrome: #0f1722;
    --s360-structure-line: 1px solid rgba(255, 255, 255, 0.1);

    /* 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: var(--rz-base-900);
    --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-light);

    /* Semantic text */
    --rz-text-title-color: var(--rz-base-50);
    --rz-text-color: var(--rz-base-100);
    --rz-text-secondary-color: #b4bfcd;
    --rz-text-tertiary-color: #94a3b8;
    --rz-text-disabled-color: var(--rz-base-500);
    --rz-text-contrast-color: var(--rz-white);

    /* Link */
    --rz-link-color: #7ee8b8;
    --rz-link-text-decoration: none;
    --rz-link-hover-color: #b9f2d8;
    --rz-link-hover-text-decoration: underline;
    --rz-link-focus-outline: var(--rz-outline-focus);
    --rz-link-focus-outline-offset: var(--rz-outline-offset);

    /* Chrome: navy header and footer like smart360.at, green structure accents */
    --rz-header-background-color: var(--s360-chrome);
    --rz-header-color: var(--rz-base-50);
    --rz-footer-background-color: var(--s360-chrome);
    --rz-footer-color: var(--rz-base-100);
    --rz-sidebar-background-color: var(--rz-base-800);
    --rz-sidebar-color: var(--rz-base-100);

    /* Menu hover/active: green tint with light text */
    --rz-menu-item-hover-color: #ffffff;
    --rz-menu-item-icon-hover-color: #ffffff;
    --rz-menu-item-hover-background-color: rgba(87, 204, 153, 0.22);
    --rz-menu-item-selected-color: #ffffff;
    --rz-menu-item-selected-background-color: rgba(87, 204, 153, 0.32);
    --rz-panel-menu-item-hover-color: #ffffff;
    --rz-panel-menu-item-hover-background-color: rgba(87, 204, 153, 0.22);
    --rz-panel-menu-item-active-color: #ffffff;
    --rz-panel-menu-item-active-background-color: rgba(87, 204, 153, 0.32);
    --rz-dropdown-item-hover-background-color: rgba(87, 204, 153, 0.22);
    --rz-dropdown-item-hover-color: #ffffff;

    /* Grid */
    --rz-grid-selected-background-color: rgba(87, 204, 153, 0.32);
    --rz-grid-selected-color: #ffffff;
    --rz-grid-hover-color: #b9f2d8;
    --rz-grid-header-filter-icon-active-color: var(--rz-secondary) !important;

    --rz-base-background-color: var(--rz-base-800);

    /* Dialog */
    --rz-dialog-background-color: var(--rz-base-800);
    --rz-dialog-title-background-color: var(--rz-base-800);

    /* Interaction states */
    --rz-border-normal: var(--rz-border-width) solid var(--rz-base-500);
    --rz-border-hover: var(--rz-border-width) solid var(--rz-base-400);
    --rz-border-focus: var(--rz-border-width) solid var(--rz-primary);
    --rz-border-disabled: var(--rz-border-width) solid var(--rz-base-600);

    /* 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(0, 0, 0, 0.3);
    --rz-shadow-2: 0 2px 8px rgba(0, 0, 0, 0.34);
    --rz-shadow-3: 0 6px 18px rgba(0, 0, 0, 0.38);
    --rz-shadow-4: 0 10px 24px rgba(0, 0, 0, 0.42);
    --rz-shadow-5: 0 14px 30px rgba(0, 0, 0, 0.46);
    --rz-shadow-6: 0 18px 36px rgba(0, 0, 0, 0.5);
    --rz-shadow-7: 0 22px 42px rgba(0, 0, 0, 0.54);
    --rz-shadow-8: 0 26px 48px rgba(0, 0, 0, 0.58);
    --rz-shadow-9: 0 30px 54px rgba(0, 0, 0, 0.62);
    --rz-shadow-10: 0 34px 60px rgba(0, 0, 0, 0.66);

    /* 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-legend-icon-color: var(--rz-primary) !important;
    --rz-fieldset-toggle-icon-color: var(--rz-primary) !important;
    --rz-tabs-padding: 0 !important;

    /* Input */
    --rz-input-background-color: #0f1620;
    --rz-input-hover-background-color: #0f1620;
    --rz-input-focus-background-color: #0f1620;
    --rz-input-hover-border: var(--rz-border-width) solid rgba(87, 204, 153, 0.7);
    --rz-input-focus-border: var(--rz-border-width) solid var(--rz-primary);
    --rz-input-hover-shadow: 0 0 0 2px rgba(87, 204, 153, 0.14);
    --rz-input-focus-shadow: 0 0 0 2px rgba(87, 204, 153, 0.24);
    --rz-form-field-filled-background-color: #0f1620;
    --rz-form-field-filled-hover-background-color: #0f1620;
    --rz-form-field-hover-shadow: 0 0 0 2px rgba(87, 204, 153, 0.14);
    --rz-form-field-focus-shadow: 0 0 0 2px rgba(87, 204, 153, 0.24);
    --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-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);

    /* Code */
    --bs-code-color: var(--s360-sky) !important;
}

/* Form field labels */
.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-text-tertiary-color) !important;
}

.rz-form-field.rz-state-focused {
    box-shadow: 0 0 0 1px rgba(87, 204, 153, 0.4), 0 0 12px rgba(87, 204, 153, 0.18);
}

/* Read-only checkboxes in grids stay visible on the striped rows. */
.rz-chkbox-box.rz-state-disabled:not(.rz-state-active) {
    border-color: var(--rz-base-500) !important;
}

/* Tabs: thin smart360 green selected state */
.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected {
    background-color: var(--rz-base-800) !important;
    border-top-color: var(--rz-primary) !important;
    box-shadow: inset 0 3px 0 var(--rz-primary);
    transform: none;
}

.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected,
.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected a,
.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected .rzi {
    color: var(--rz-base-50) !important;
}

.rz-tabview-top > .rz-tabview-nav li:not(.rz-tabview-selected):hover {
    box-shadow: inset 0 3px 0 rgba(87, 204, 153, 0.6);
}

.rz-tabview > ul {
    margin-bottom: 5px;
}

/* Links */
.rz-link,
a.rz-link,
.goto-link,
.grid-goto-link {
    color: var(--rz-link-color) !important;
    text-decoration-color: rgba(126, 232, 184, 0.55);
}

.rz-link:hover,
a.rz-link:hover,
.goto-link:hover,
.grid-goto-link:hover {
    color: var(--rz-link-hover-color) !important;
}

.grid-goto-link,
.goto-link {
    text-decoration: underline !important;
}

/* Header and footer: smart360 navy with a green structure line */
.rz-header {
    background: var(--s360-chrome) !important;
    color: var(--rz-base-50) !important;
    border-bottom: 2px solid var(--s360-green) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.35) !important;
}

.rz-header .whereAmI {
    color: var(--rz-base-50) !important;
}

.rz-footer {
    background: var(--s360-chrome) !important;
    color: var(--rz-base-100) !important;
    border-top: var(--s360-structure-line) !important;
}

/* The 10px footer notes (license counts, dev host, version) are dimmed by inline opacity below readability. */
.rz-footer [style*="opacity: 0.45"],
.rz-footer [style*="opacity: 0.75"] {
    opacity: 0.85 !important;
}

/* smart360 logo provided through FastRootDirectory/wwwroot at host startup. */
.headerLogo {
    background-image: url('/css/smart360/logo.png') !important;
    background-color: transparent !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: left center !important;
    border: 0;
    border-radius: 0;
    width: 170px !important;
    height: 40px !important;
    box-shadow: none;
    filter: none;
    animation: none;
}

body.z-mobile-layout .headerLogo {
    width: 124px !important;
    height: 32px !important;
}

@media (max-width: 640px) {
    .headerLogo {
        width: 124px !important;
        height: 32px !important;
    }
}

/* Menu toggle: light icon, green on hover */
.rz-sidebar-toggle,
.rz-sidebar-toggle .rzi {
    color: var(--rz-base-50) !important;
}

.rz-sidebar-toggle:hover,
.rz-sidebar-toggle:focus-visible,
.rz-sidebar-toggle:hover .rzi,
.rz-sidebar-toggle:focus-visible .rzi {
    color: var(--rz-primary-light) !important;
}

/* Sidebars: structure lines */
.rz-sidebar:not(.rz-sidebar-end):not(.rz-sidebar-right) {
    border-inline-end: var(--s360-structure-line) !important;
}

.rz-sidebar.rz-sidebar-end,
.rz-sidebar.rz-sidebar-right {
    border-inline-start: var(--s360-structure-line) !important;
}

/* Body: dark work surface with a faint smart360 green glow */
.rz-body {
    background:
        radial-gradient(circle at 88% 0%, rgba(87, 204, 153, 0.11) 0%, rgba(87, 204, 153, 0) 42%),
        radial-gradient(circle at 12% 100%, rgba(90, 180, 229, 0.08) 0%, rgba(90, 180, 229, 0) 40%),
        var(--rz-base-900) !important;
    background-attachment: fixed !important;
}

/* Left main menu: navy top level, slightly lighter nested levels */
.rz-panel-menu {
    background-color: var(--rz-base-800) !important;
}

.rz-panel-menu > .rz-navigation-item > .rz-navigation-item-wrapper {
    border-bottom: var(--s360-structure-line);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: rgba(255, 255, 255, 0.03);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: rgba(255, 255, 255, 0.06);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item > .rz-navigation-item-wrapper {
    background-color: rgba(255, 255, 255, 0.09);
}

.rz-panel-menu .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-icon,
.rz-panel-menu .rz-navigation-item-icon-children {
    color: var(--rz-base-100) !important;
}

.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: rgba(87, 204, 153, 0.22) !important;
    background-image: none !important;
    box-shadow: inset 3px 0 0 var(--rz-primary);
}

.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:hover .rz-navigation-item-icon-children {
    color: #ffffff !important;
}

/* Active main-menu route: green surface with a sky blue rail */
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper:has(> a.active),
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper:has(> .rz-navigation-item-link.active) {
    background-color: rgba(87, 204, 153, 0.34) !important;
    background-image: none !important;
    box-shadow: inset 4px 0 0 var(--s360-sky) !important;
}

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

/* Left main menu reacts immediately; no delayed mouse-leave trail. */
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-link,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-text,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-icon,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-icon-children {
    transition: none !important;
    animation: none !important;
}

/* Grid menus: transparent, green icon hover except export/delete */
.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;
}

.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-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-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-text {
    color: var(--rz-primary-light) !important;
}

.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;
}

/* Grid row hover text */
.rz-selectable tbody tr.rz-data-row:hover:not(.rz-state-highlight) .rz-cell-data,
.rz-selectable tbody tr.rz-data-row:hover:not(.rz-state-highlight) .rz-cell-data a,
.rz-selectable tbody tr.rz-data-row:hover:not(.rz-state-highlight) .rz-cell-data .rz-link {
    color: var(--rz-grid-hover-color) !important;
}

span.rz-cell-data:focus-within:not(:has(.rz-chkbox)) {
    box-shadow: 0 0 0 2px rgba(87, 204, 153, 0.5);
    box-sizing: border-box;
}

/* Filled primary and secondary buttons */
.rz-button.rz-primary:not(.rz-variant-text):not(.rz-variant-outlined) {
    background-color: var(--rz-primary) !important;
    background-image: none !important;
    border-color: transparent !important;
    color: var(--rz-on-primary) !important;
    box-shadow: 0 4px 12px rgba(87, 204, 153, 0.22) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
}

.rz-button.rz-primary:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):not(:active):hover {
    transform: translateY(-1px);
    background-color: var(--rz-primary-light) !important;
    box-shadow: 0 8px 18px rgba(87, 204, 153, 0.3) !important;
}

.rz-button.rz-primary:not(.rz-variant-text):not(.rz-variant-outlined):not(.rz-state-disabled):active {
    transform: translateY(0);
    background-color: var(--rz-primary-dark) !important;
}

.rz-button.rz-secondary:not(.rz-variant-text):not(.rz-variant-outlined) {
    color: var(--rz-on-secondary) !important;
}

/* Header buttons: quiet outlines with light icons on the navy bar */
.rz-header .rz-button:not(.rz-primary):not(.rz-danger):not(.rz-success):not(.rz-warning),
.rz-header .rz-splitbutton:not(:has(.rz-primary)) .rz-button {
    background-color: transparent !important;
    background-image: none !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: var(--rz-base-50) !important;
    box-shadow: none !important;
}

.rz-header .rz-button:not(.rz-primary):not(.rz-danger):not(.rz-success):not(.rz-warning):not(.rz-state-disabled):hover,
.rz-header .rz-splitbutton:not(:has(.rz-primary)) .rz-button:hover {
    background-color: rgba(87, 204, 153, 0.24) !important;
    border-color: var(--rz-primary) !important;
}

.rz-header .rz-button:not(.rz-primary):not(.rz-danger):not(.rz-success):not(.rz-warning) .rzi,
.rz-header .zs-trigger {
    color: var(--rz-base-50) !important;
}

/* Overlays */
.rz-dialog {
    border: 1px solid rgba(87, 204, 153, 0.35);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.6);
}

.rz-dialog-wrapper {
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(3px);
}

.rz-dropdown-panel {
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.6);
}

/* Light text on the translucent *-lighter tints (alerts, badges, banners) */
.rz-background-color-primary-lighter.rz-color-on-primary-lighter,
.rz-background-color-primary-lighter .rz-color-on-primary-lighter,
.rz-color-on-primary-lighter {
    color: var(--rz-on-primary-lighter) !important;
}

.rz-background-color-secondary-lighter.rz-color-on-secondary-lighter,
.rz-background-color-secondary-lighter .rz-color-on-secondary-lighter,
.rz-color-on-secondary-lighter {
    color: var(--rz-on-secondary-lighter) !important;
}

.rz-background-color-info-lighter.rz-color-on-info-lighter,
.rz-background-color-info-lighter .rz-color-on-info-lighter,
.rz-color-on-info-lighter {
    color: var(--rz-on-info-lighter) !important;
}

.rz-background-color-success-lighter.rz-color-on-success-lighter,
.rz-background-color-success-lighter .rz-color-on-success-lighter,
.rz-color-on-success-lighter {
    color: var(--rz-on-success-lighter) !important;
}

.rz-background-color-warning-lighter.rz-color-on-warning-lighter,
.rz-background-color-warning-lighter .rz-color-on-warning-lighter,
.rz-color-on-warning-lighter {
    color: var(--rz-on-warning-lighter) !important;
}

.rz-background-color-danger-lighter.rz-color-on-danger-lighter,
.rz-background-color-danger-lighter .rz-color-on-danger-lighter,
.rz-color-on-danger-lighter {
    color: var(--rz-on-danger-lighter) !important;
}

/* Search hit highlight */
.mark.highlight-match {
    background-color: rgba(90, 180, 229, 0.85);
    color: #0c1017;
    border-radius: 3px;
    padding: 0 2px;
}

.dataFlowMappingSourceFieldDropDownDescription,
.fk-footertext {
    color: var(--rz-primary-light);
}

/* 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;
}

.rz-fieldset + .rz-fieldset {
    margin-top: 20px;
}

.rz-message-popup {
    z-index: 100;
}

.main-component-progressbar {
    height: 5px;
}

/* Outlined/text secondary buttons (incl. toggled toggle buttons) use the sky blue as text and outline. */
.rz-button.rz-secondary.rz-variant-outlined:not(.rz-state-disabled),
.rz-button.rz-secondary.rz-variant-text:not(.rz-state-disabled) {
    color: var(--rz-secondary) !important;
}

.rz-button.rz-secondary.rz-variant-outlined:not(.rz-state-disabled) {
    box-shadow: inset 0 0 0 var(--rz-border-width) var(--rz-secondary);
}
