@charset "UTF-8";

:root {
    /* Woidich: light theme for WOIDICH & PARTNER GmbH (woidich.com). Muted blue-grey workspace,
       Woidich blue-grey #5f759e header with the white logo, navy #37445b navigation like the
       website masthead. Standalone theme, does not import any other theme. */
    --rz-white: #ffffff;
    --rz-black: #000000;

    /* Base scale: Woidich navy text tones at 50 -> light blue-grey surfaces at 900 */
    --rz-base: #37445b;
    --rz-base-50: #283246;
    --rz-base-100: #37445b;
    --rz-base-200: #44526a;
    --rz-base-300: #505e75;
    --rz-base-400: #576579;
    --rz-base-500: #8590a2;
    --rz-base-600: #b6bfcd;
    --rz-base-700: #c8cfdb;
    --rz-base-800: #dde1e9;
    --rz-base-900: #eaedf2;
    --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: Woidich blue-grey. #5f759e itself (white text 4.64:1) is the header colour and the
       light shade; the main shade is deepened slightly so it also reads as text on the
       surfaces (white on #546994 5.49:1, #546994 on #eaedf2 4.68:1). */
    --rz-primary: #546994;
    --rz-primary-light: #5f759e;
    --rz-primary-lighter: #dce2ec;
    --rz-primary-dark: #465a80;
    --rz-primary-darker: #3a4a69;

    /* Secondary: Woidich navy */
    --rz-secondary: #37445b;
    --rz-secondary-light: #44536d;
    --rz-secondary-lighter: #d5dbe5;
    --rz-secondary-dark: #2c374a;
    --rz-secondary-darker: #222b3b;

    /* Info: steel blue next to the blue-grey primary */
    --rz-info: #3e6283;
    --rz-info-light: #4b6f90;
    --rz-info-lighter: #e3eaf2;
    --rz-info-dark: #30506d;
    --rz-info-darker: #243c53;

    --rz-success: #41694f;
    --rz-success-light: #507957;
    --rz-success-lighter: #e8efe7;
    --rz-success-dark: #32533d;
    --rz-success-darker: #254030;

    --rz-warning: #856019;
    --rz-warning-light: #916c26;
    --rz-warning-lighter: #f3ecd9;
    --rz-warning-dark: #6d4c11;
    --rz-warning-darker: #54390a;

    --rz-danger: #964a43;
    --rz-danger-light: #a75850;
    --rz-danger-lighter: #f4e8e5;
    --rz-danger-dark: #7d3c36;
    --rz-danger-darker: #612e29;

    --rz-on-base: #ffffff;
    --rz-on-base-light: var(--rz-base-50);
    --rz-on-base-lighter: var(--rz-base-50);
    --rz-on-base-dark: #ffffff;
    --rz-on-base-darker: #ffffff;

    --rz-on-primary: #ffffff;
    --rz-on-primary-light: #ffffff;
    --rz-on-primary-lighter: #2c3649;
    --rz-on-primary-dark: #ffffff;
    --rz-on-primary-darker: #ffffff;

    --rz-on-secondary: #ffffff;
    --rz-on-secondary-light: #ffffff;
    --rz-on-secondary-lighter: #222b3b;
    --rz-on-secondary-dark: #ffffff;
    --rz-on-secondary-darker: #ffffff;

    --rz-on-info: #ffffff;
    --rz-on-info-light: #ffffff;
    --rz-on-info-lighter: #243c53;
    --rz-on-info-dark: #ffffff;
    --rz-on-info-darker: #ffffff;

    --rz-on-success: #ffffff;
    --rz-on-success-light: #ffffff;
    --rz-on-success-lighter: #254030;
    --rz-on-success-dark: #ffffff;
    --rz-on-success-darker: #ffffff;

    --rz-on-warning: #ffffff;
    --rz-on-warning-light: #ffffff;
    --rz-on-warning-lighter: #54390a;
    --rz-on-warning-dark: #ffffff;
    --rz-on-warning-darker: #ffffff;

    --rz-on-danger: #ffffff;
    --rz-on-danger-light: #ffffff;
    --rz-on-danger-lighter: #612e29;
    --rz-on-danger-dark: #ffffff;
    --rz-on-danger-darker: #ffffff;

    --rz-series-1: var(--rz-primary);
    --rz-series-2: var(--rz-secondary);
    --rz-series-3: var(--rz-success);
    --rz-series-4: var(--rz-warning);
    --rz-series-5: var(--rz-danger);
    --rz-series-6: var(--rz-info);
    --rz-series-7: #3cc6d8;
    --rz-series-8: #9370e8;
    --rz-series-9: #3fb487;
    --rz-series-10: #edb840;
    --rz-series-11: #e66b95;
    --rz-series-12: #6a8deb;
    --rz-series-13: #b096f0;
    --rz-series-14: #0b879a;
    --rz-series-15: #18845c;
    --rz-series-16: #c48c0e;
    --rz-series-17: #c23c6a;
    --rz-series-18: #3c62c6;
    --rz-series-19: #74dcc0;
    --rz-series-20: #cdbbf7;
    --rz-series-21: #7fd2f0;
    --rz-series-22: #f2a9c3;
    --rz-series-23: #5432a8;
    --rz-series-24: #2fae86;

    /* Woidich custom variables */
    --wp-primary-rgb: 84, 105, 148;
    --wp-steel-rgb: 62, 98, 131;
    --wp-bluegrey-rgb: 95, 117, 158;
    --wp-navy-rgb: 23, 30, 46;
    --wp-primary-soft: var(--rz-primary-lighter);
    --wp-secondary-soft: var(--rz-secondary-lighter);
    --wp-structure-line: var(--rz-border-normal);
    /* Header: blue-grey band with a soft centre glow like the website header (bg_header.png) */
    --wp-header-background: #5f759e;
    --wp-header-glow-rgb: 127, 144, 176;
    --wp-header-line: 1px solid #52668d;
    /* Navigation (main menu, footer): navy like the website masthead */
    --wp-navigation-background: #37445b;
    --wp-navigation-color: var(--rz-white);
    --wp-menu-level-1: #3f4d66;
    --wp-menu-level-2: #475670;
    --wp-menu-level-3: #4f5f7a;
    --wp-menu-level-4: #586884;
    --wp-menu-text: rgba(255, 255, 255, 0.86);
    --wp-menu-icon: rgba(255, 255, 255, 0.62);
    --wp-menu-accent-rgb: 196, 204, 219;
    --wp-menu-guide: rgba(255, 255, 255, 0.16);
    --wp-menu-hover: rgba(255, 255, 255, 0.07);
    /* Brand typeface of woidich.com, used for titles; body text keeps the theme font */
    --wp-brand-font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;

    /* 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: #d7dce6;
    --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 */
    --rz-pager-numeric-button-selected-background-color: var(--rz-primary-lighter);
    --rz-pager-numeric-button-selected-color: var(--rz-on-primary-lighter);

    /* Blue-grey header and navy navigation frame around the muted blue-grey workspace. */
    --rz-header-background-color: var(--wp-header-background);
    --rz-header-color: var(--rz-white);
    --rz-sidebar-toggle-background-color: transparent;
    --rz-sidebar-toggle-border: none;
    --rz-footer-background-color: var(--wp-navigation-background);
    --rz-footer-color: var(--wp-menu-text);
    --rz-sidebar-background-color: #d3d9e3;
    --rz-sidebar-color: var(--rz-base-100);
    --rz-panel-menu-background-color: transparent;
    --rz-panel-menu-item-color: var(--rz-base-100);
    --rz-panel-menu-item-background-color: transparent;
    --rz-panel-menu-item-2nd-level-background-color: rgba(var(--wp-navy-rgb), 0.025);
    --rz-panel-menu-text-color: var(--rz-base-100);

    /* Menu hover/active: soft blue-grey surface */
    --rz-menu-item-hover-color: var(--rz-on-primary-lighter);
    --rz-menu-item-icon-hover-color: var(--rz-on-primary-lighter);
    --rz-menu-item-hover-background-color: var(--rz-primary-lighter);
    --rz-menu-item-selected-color: var(--rz-on-primary-lighter);
    --rz-menu-item-selected-background-color: var(--rz-primary-lighter);
    --rz-menu-top-item-hover-color: var(--rz-on-primary-lighter);
    --rz-menu-top-item-icon-hover-color: var(--rz-on-primary-lighter);
    --rz-menu-top-item-hover-background-color: var(--rz-primary-lighter);
    --rz-menu-top-item-selected-color: var(--rz-on-primary-lighter);
    --rz-menu-top-item-selected-background-color: var(--rz-primary-lighter);
    --rz-panel-menu-item-hover-color: var(--rz-on-primary-lighter);
    --rz-panel-menu-item-hover-background-color: var(--rz-primary-lighter);
    --rz-panel-menu-item-active-color: var(--rz-on-primary-lighter);
    --rz-panel-menu-item-active-background-color: var(--rz-primary-lighter);

    /* Grid */
    --rz-grid-selected-background-color: var(--rz-primary);
    --rz-grid-selected-color: var(--rz-on-primary);
    --rz-tabs-tab-selected-background-color: var(--rz-primary);
    --rz-tabs-tab-selected-color: var(--rz-on-primary);
    --rz-tabs-tab-selected-top-border-color: var(--rz-primary-dark);
    --rz-grid-hover-color: var(--rz-text-color);

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

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

    /* Interaction states */
    --rz-border-normal: var(--rz-border-width) solid var(--rz-base-700);
    --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: 8px;
    --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: soft navy */
    --rz-shadow-0: none;
    --rz-shadow-1: 0 1px 2px rgba(var(--wp-navy-rgb), 0.06);
    --rz-shadow-2: 0 2px 8px rgba(var(--wp-navy-rgb), 0.07);
    --rz-shadow-3: 0 6px 18px rgba(var(--wp-navy-rgb), 0.09);
    --rz-shadow-4: 0 10px 24px rgba(var(--wp-navy-rgb), 0.11);
    --rz-shadow-5: 0 14px 30px rgba(var(--wp-navy-rgb), 0.13);
    --rz-shadow-6: 0 18px 36px rgba(var(--wp-navy-rgb), 0.15);
    --rz-shadow-7: 0 22px 42px rgba(var(--wp-navy-rgb), 0.17);
    --rz-shadow-8: 0 26px 48px rgba(var(--wp-navy-rgb), 0.19);
    --rz-shadow-9: 0 30px 54px rgba(var(--wp-navy-rgb), 0.21);
    --rz-shadow-10: 0 34px 60px rgba(var(--wp-navy-rgb), 0.23);

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

    /* Inputs: muted reading surface with blue-grey focus */
    --rz-input-background-color: var(--rz-base-background-color);
    --rz-input-hover-background-color: var(--rz-base-background-color);
    --rz-input-focus-background-color: var(--rz-base-background-color);
    --rz-input-focus-border: var(--rz-border-width) solid var(--rz-primary);
    --rz-input-focus-shadow: 0 0 0 2px rgba(var(--wp-primary-rgb), 0.14);
    --rz-form-field-filled-background-color: var(--rz-base-background-color);
    --rz-form-field-filled-hover-background-color: var(--rz-base-background-color);
    --rz-form-field-focus-shadow: 0 0 0 2px rgba(var(--wp-primary-rgb), 0.14);
    --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-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);
    --rz-switch-checked-circle-background-color: var(--rz-base-background-color);

    color-scheme: light;
    --rz-header-border: var(--rz-border-normal);
    --rz-header-shadow: none;
    --rz-footer-border: var(--rz-border-normal);
    --rz-sidebar-border-inline-end: var(--rz-border-normal);
    --rz-panel-menu-item-border: 1px solid transparent;
    --rz-panel-menu-item-3rd-level-background-color: transparent;
    --rz-panel-menu-item-2nd-level-hover-background-color: var(--rz-primary-lighter);
    --rz-panel-menu-item-2nd-level-hover-color: var(--rz-on-primary-lighter);
    --rz-panel-menu-item-2nd-level-active-background-color: var(--rz-primary-lighter);
    --rz-panel-menu-item-2nd-level-active-color: var(--rz-on-primary-lighter);
    --rz-panel-menu-item-3rd-level-hover-background-color: var(--rz-primary-lighter);
    --rz-panel-menu-item-3rd-level-hover-color: var(--rz-on-primary-lighter);
    --rz-panel-menu-item-3rd-level-active-background-color: var(--rz-primary-lighter);
    --rz-panel-menu-item-3rd-level-active-color: var(--rz-on-primary-lighter);
    --rz-input-border: 1px solid var(--rz-base-500);
    --rz-input-border-block-end: var(--rz-input-border);
    --rz-input-shadow: none;
    --rz-input-hover-shadow: none;
    --rz-input-placeholder-color: var(--rz-text-secondary-color);
    --rz-form-field-label-color: var(--rz-text-secondary-color);
    --rz-form-field-label-focus-color: var(--rz-primary-dark);
    --rz-grid-header-background-color: var(--rz-base-800);
    --rz-grid-header-color: var(--rz-text-color);
    --rz-grid-header-font-weight: 600;
    --rz-grid-header-text-transform: none;
    --rz-grid-stripe-background-color: var(--rz-base-800);
    --rz-grid-stripe-odd-background-color: var(--rz-base-background-color);
    --rz-grid-hover-background-color: var(--rz-primary-lighter);
    --rz-grid-cell-border: var(--rz-border-normal);
    --rz-grid-bottom-cell-border: var(--rz-border-normal);
    --rz-grid-right-cell-border: var(--rz-border-normal);
    --rz-card-shadow: none;
    --rz-panel-shadow: none;
    --rz-button-shadow: none;
    --rz-button-hover-shadow: none;
    --rz-button-hover-gradient: none;
    --rz-tabs-shadow: none;
    --rz-dialog-title-color: var(--rz-text-title-color);
    --rz-dialog-close-color: var(--rz-text-secondary-color);
    --bs-body-bg: var(--rz-body-background-color);
    --bs-body-color: var(--rz-text-color);
    --bs-border-color: var(--rz-base-700);

    /* Code */
    --bs-code-color: var(--rz-primary-dark) !important;
}

/* ===== Surfaces ===== */

.rz-body {
    background: var(--rz-body-background-color) !important;
    color: var(--rz-text-color);
}

/* Blue-grey header with a faint centre glow, as on woidich.com. The glow stays weak so white
   header text keeps its contrast. */
.rz-header {
    background:
        radial-gradient(ellipse 55% 170% at 50% 30%, rgba(var(--wp-header-glow-rgb), 0.4) 0%, rgba(var(--wp-header-glow-rgb), 0) 100%),
        var(--rz-header-background-color) !important;
    color: var(--rz-header-color) !important;
    border-bottom: var(--wp-header-line);
    box-shadow: none;
}

.rz-header .whereAmI,
.rz-header .whereAmI-mobile,
.rz-header .zs-trigger {
    color: var(--rz-header-color) !important;
}

/* Titles in the Woidich brand typeface */
.whereAmI,
.whereAmI-mobile,
.rz-dialog-title,
.rz-text-h1,
.rz-text-h2,
.rz-text-h3,
.rz-text-h4,
.rz-text-h5,
.rz-text-h6 {
    font-family: var(--wp-brand-font-family);
}

.rz-footer {
    background: var(--rz-footer-background-color) !important;
    color: var(--rz-footer-color) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.rz-footer * {
    color: var(--rz-footer-color) !important;
}

.rz-sidebar {
    background-color: var(--rz-sidebar-background-color) !important;
    color: var(--rz-sidebar-color) !important;
}

.rz-sidebar.rz-sidebar-start,
.rz-sidebar.rz-sidebar-left,
.rz-layout > .rz-sidebar:first-of-type,
.rz-sidebar:not(.rz-sidebar-end):not(.rz-sidebar-right) {
    border-inline-end: var(--wp-structure-line) !important;
}

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

.rz-card,
.rz-panel,
.rz-fieldset,
.rz-data-grid,
.rz-datatable,
.rz-tabs,
.rz-accordion {
    background-color: var(--rz-base-background-color);
}

.rz-card,
.rz-dialog,
.z-tile,
.homescreen-tile:not(.homescreen-widget) {
    border: var(--rz-border-normal);
    border-radius: 12px;
}

.z-tile,
.homescreen-tile:not(.homescreen-widget) {
    background: var(--rz-base-background-color);
    color: var(--rz-text-color);
    box-shadow: none;
}

.rz-button:focus-visible,
.homescreen-tile:focus-visible,
.rz-navigation-item-link:focus-visible {
    outline: var(--rz-outline-focus);
    outline-offset: var(--rz-outline-offset);
}

/* WOIDICH & PARTNER logo: white lettering (transparent PNG made from the website logo,
   324 x 47 px) directly on the blue-grey header. */
.headerLogo {
    background-image: url('/css/woidich/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: 262px !important;
    height: 38px !important;
    box-shadow: none;
    filter: none;
    animation: none;
}

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

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

/* ===== Navigation ===== */

.rz-panel-menu {
    background-color: var(--rz-panel-menu-background-color) !important;
}

.rz-panel-menu .rz-navigation-item-text,
.rz-panel-menu .rz-navigation-item-icon {
    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: var(--rz-primary-lighter) !important;
    color: var(--rz-on-primary-lighter) !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(--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-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: var(--rz-on-primary-lighter) !important;
}

/* Panel menu depth: L3+ quiet tint, L4+ stronger tint with a steel-blue rail */
.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item-wrapper {
    background-color: var(--rz-base-800);
}

.rz-panel-menu .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item .rz-navigation-item-wrapper {
    background-color: var(--rz-base-700);
    box-shadow: inset 3px 0 0 rgba(var(--wp-steel-rgb), 0.55);
}

.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 rgb(var(--wp-steel-rgb)), 0 0 0 1px rgba(var(--wp-steel-rgb), 0.25);
}

/* Main menu: one continuous navy surface like the website masthead. Every opened level
   gets one step lighter; hover and active use the light blue-grey accent. */
.rz-sidebar:not(.rz-sidebar-end) {
    background-color: var(--wp-navigation-background) !important;
    color: var(--wp-menu-text) !important;

    /* The root variables describe the light settings sidebar; restate them for the
       navy main menu so components that read them stay readable here. */
    --rz-sidebar-background-color: var(--wp-navigation-background);
    --rz-sidebar-color: var(--wp-menu-text);
    --rz-panel-menu-item-color: var(--wp-menu-text);
    --rz-panel-menu-text-color: var(--wp-menu-text);
    --rz-panel-menu-item-hover-color: var(--rz-white);
    --rz-panel-menu-item-hover-background-color: var(--wp-menu-hover);
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-active {
    background: transparent !important;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper {
    margin: 0;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
}

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

.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 {
    color: var(--wp-menu-icon) !important;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu > .rz-navigation-item > .rz-navigation-item-wrapper .rz-navigation-item-text {
    color: var(--rz-white) !important;
    font-weight: 600;
}

/* Fine divider between main menu entries, 85 % wide and centred */
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu > .rz-navigation-item {
    position: relative;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu > .rz-navigation-item + .rz-navigation-item::after {
    content: "";
    position: absolute;
    top: 0;
    left: 7.5%;
    right: 7.5%;
    height: 1px;
    background: rgba(255, 255, 255, 0.08);
    pointer-events: none;
}

/* Nested levels: each level one step lighter navy */
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu {
    background-color: var(--wp-menu-level-1) !important;
    box-shadow: inset 0 6px 6px -6px rgba(0, 0, 0, 0.45);
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu {
    background-color: var(--wp-menu-level-2) !important;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu .rz-navigation-menu {
    background-color: var(--wp-menu-level-3) !important;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu .rz-navigation-menu .rz-navigation-menu {
    background-color: var(--wp-menu-level-4) !important;
}

/* Main menu tree guides from level 3 on: every child row draws its own piece of the
   vertical line below the parent icon plus a short tick, so the line pauses beside expanded
   submenus. Rows inherit --rz-navigation-item-level; icon centers sit at
   1.625rem + (level - 2) * 1rem. */
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu > .rz-navigation-item > .rz-navigation-item-wrapper {
    position: relative;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu > .rz-navigation-item > .rz-navigation-item-wrapper::before,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu > .rz-navigation-item > .rz-navigation-item-wrapper::after {
    content: "";
    position: absolute;
    left: calc(1.625rem + (var(--rz-navigation-item-level, 3) - 3) * 1rem);
    background: var(--wp-menu-guide);
    pointer-events: none;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu > .rz-navigation-item > .rz-navigation-item-wrapper::before {
    top: 0;
    bottom: -1px;
    width: 1px;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu > .rz-navigation-item:last-child > .rz-navigation-item-wrapper::before,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu > .rz-navigation-item[aria-expanded="true"] > .rz-navigation-item-wrapper::before {
    bottom: 50%;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-menu .rz-navigation-menu > .rz-navigation-item > .rz-navigation-item-wrapper::after {
    top: 50%;
    width: 0.375rem;
    height: 1px;
}

/* Hover */
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper:hover {
    background: var(--wp-menu-hover) !important;
}

.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-text,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-link,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item > .rz-navigation-item-wrapper:hover .rz-navigation-item-icon-children {
    color: var(--rz-white) !important;
}

/* Active route: light blue-grey glow with a light blue-grey indicator */
.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),
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper-active,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-active > .rz-navigation-item-wrapper {
    background: linear-gradient(90deg, rgba(var(--wp-menu-accent-rgb), 0.24) 0%, rgba(var(--wp-menu-accent-rgb), 0.06) 100%) !important;
    box-shadow: inset 3px 0 0 rgb(var(--wp-menu-accent-rgb)) !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(> .rz-navigation-item-link.active) .rz-navigation-item-text,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper-active .rz-navigation-item-text,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-active > .rz-navigation-item-wrapper .rz-navigation-item-text {
    color: var(--rz-white) !important;
    font-weight: 600;
}

.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-icon,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-wrapper-active .rz-navigation-item-icon,
.rz-sidebar:not(.rz-sidebar-end) .rz-panel-menu .rz-navigation-item-active > .rz-navigation-item-wrapper .rz-navigation-item-icon {
    color: rgb(var(--wp-menu-accent-rgb)) !important;
}

/* Grid menus stay clean and transparent */
.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) > .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) > .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) > .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) > .rz-navigation-item-wrapper:hover .rz-navigation-item-text {
    color: var(--rz-primary) !important;
}

.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-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 {
    color: var(--rz-success) !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;
}

/* Sidebar toggle stays readable on the blue-grey header. */
.rz-sidebar-toggle,
.rz-sidebar-toggle .rzi {
    color: var(--rz-header-color) !important;
}

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

.rz-sidebar-toggle:hover,
.rz-sidebar-toggle:focus-visible {
    background: var(--rz-primary-lighter) !important;
}

/* Sidebar pin button: transparent with neutral icon */
.rz-sidebar:not(.rz-sidebar-end) .rz-button:not(.rz-primary):not(.rz-secondary) {
    background: transparent !important;
    background-image: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: var(--wp-menu-icon) !important;
}

/* Right settings sidebar */
.rz-sidebar-end .rz-text,
.rz-sidebar-end .rz-text-overline,
.rz-sidebar-end label {
    color: var(--rz-base-100) !important;
}

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

/* ===== Tabs ===== */

.rz-tabview-top > .rz-tabview-nav .rz-tabview-selected {
    background-color: var(--rz-tabs-tab-selected-background-color) !important;
    border-top-color: var(--rz-tabs-tab-selected-top-border-color) !important;
    box-shadow: inset 0 3px 0 var(--rz-tabs-tab-selected-top-border-color);
    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-tabs-tab-selected-color) !important;
    -webkit-text-fill-color: currentColor;
    text-shadow: none;
}

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

/* ===== Links ===== */

.rz-link,
a.rz-link,
.goto-link,
.grid-goto-link {
    color: var(--rz-link-color) !important;
    -webkit-text-fill-color: currentColor;
    text-decoration-color: currentColor;
}

.rz-link:hover,
a.rz-link:hover,
.goto-link:hover,
.grid-goto-link:hover,
.goto-link:focus-visible,
.grid-goto-link:focus-visible {
    color: var(--rz-link-hover-color) !important;
    text-decoration: underline;
}

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

/* ===== Data grid ===== */

:root .rz-selectable tbody tr.rz-data-row.rz-state-highlight > td :is(.grid-goto-link, .goto-link, a.rz-link) {
    color: var(--rz-grid-selected-color) !important;
}

.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;
    -webkit-text-fill-color: currentColor;
    background-image: none;
}

span.rz-cell-data:focus-within:not(:has(.rz-chkbox)) {
    box-shadow: 0 0 0 2px rgba(var(--wp-primary-rgb), 0.28);
    box-sizing: border-box;
}

/* ===== Buttons ===== */

/* Keep semantic shades and native hover/disabled states from the base bundle. */
/* The legacy bundle maps Light/Dark to a dark theme's base scale. */
.rz-button.rz-light {
    background-color: var(--rz-base-700);
    color: var(--rz-text-color);
}

.rz-button.rz-dark {
    background-color: var(--rz-base-100);
    color: var(--rz-on-base-dark);
}

.rz-button:is(.rz-light, .rz-dark):is(.rz-variant-outlined, .rz-variant-text) {
    background-color: transparent;
    color: var(--rz-text-color);
}

.rz-button:is(.rz-light, .rz-dark):not(.rz-state-disabled):hover {
    background-color: var(--rz-primary-lighter);
    color: var(--rz-on-primary-lighter);
    background-image: none;
}

.rz-button.rz-secondary.rz-shade-default:is(.rz-variant-outlined, .rz-variant-text) {
    color: var(--rz-secondary);
}

/* Unfilled action labels use the darker accent for contrast on gray. */
.rz-button.rz-primary:is(.rz-shade-default, .rz-shade-light, .rz-shade-lighter):is(.rz-variant-outlined, .rz-variant-text) {
    color: var(--rz-primary-darker);
}

.rz-button.rz-primary:is(.rz-variant-outlined, .rz-variant-text):not(.rz-state-disabled):hover {
    background-color: var(--rz-primary-lighter);
    color: var(--rz-on-primary-lighter);
    background-image: none;
}

/* ===== Form fields ===== */

.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.rz-state-focused {
    box-shadow: 0 0 0 2px var(--rz-primary-lighter);
}

.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 {
    background-color: var(--rz-base-800) !important;
    box-shadow: none !important;
}

.fk-footertext,
.dataFlowMappingSourceFieldDropDownDescription {
    color: var(--rz-secondary-dark);
}

.rz-dropdown-item:hover .dataFlowMappingSourceFieldDropDownDescription,
.rz-dropdown-item:hover .dataFlowMappingSourceFieldDropDownHeaderItem {
    color: var(--rz-primary-darker);
}

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

/* ===== Overlays ===== */

.rz-dialog {
    border: 1px solid rgba(var(--wp-primary-rgb), 0.16);
    box-shadow: 0 24px 60px rgba(var(--wp-navy-rgb), 0.18), 0 4px 14px rgba(var(--wp-navy-rgb), 0.08);
}

.rz-dialog-wrapper {
    background-color: rgba(var(--wp-navy-rgb), 0.28);
    backdrop-filter: blur(3px) saturate(1.04);
}

.rz-dropdown-panel {
    border: 1px solid rgba(var(--wp-primary-rgb), 0.18);
    box-shadow: 0 18px 44px rgba(var(--wp-navy-rgb), 0.14), 0 4px 12px rgba(var(--wp-navy-rgb), 0.08);
    transform: translateY(2px);
}

.ggt-panel {
    color: var(--rz-base-100);
    border: 1px solid rgba(var(--wp-primary-rgb), 0.18);
    box-shadow: 0 18px 44px rgba(var(--wp-navy-rgb), 0.14), 0 4px 12px rgba(var(--wp-navy-rgb), 0.08);
}

.ggt-panel .generic-group-tree .rz-treenode-label {
    color: var(--rz-base-100);
}

.ggt-panel .generic-group-tree .rz-treenode-label:hover {
    background: rgba(var(--wp-primary-rgb), 0.06);
    color: var(--rz-base-50);
}

.ggt-panel .generic-group-tree .search-highlight {
    background-color: rgba(var(--wp-bluegrey-rgb), 0.22);
    color: var(--rz-base-50);
}

.ggt-panel .generic-group-tree .node-row.selected {
    background: rgba(var(--wp-bluegrey-rgb), 0.1);
    outline: 2px solid rgba(var(--wp-bluegrey-rgb), 0.4);
}

/* ===== Alerts and badges ===== */

.rz-alert.rz-variant-filled.rz-shade-lighter.rz-danger {
    --rz-alert-color: var(--rz-on-danger-lighter);
    --rz-alert-title-color: var(--rz-on-danger-lighter);
    --rz-alert-icon-color: var(--rz-danger);
}

.rz-alert.rz-variant-filled.rz-shade-lighter.rz-warning {
    --rz-alert-color: var(--rz-on-warning-lighter);
    --rz-alert-title-color: var(--rz-on-warning-lighter);
    --rz-alert-icon-color: var(--rz-warning-dark);
}

.rz-alert.rz-variant-filled.rz-shade-lighter.rz-info {
    --rz-alert-color: var(--rz-on-info-lighter);
    --rz-alert-title-color: var(--rz-on-info-lighter);
    --rz-alert-icon-color: var(--rz-info);
}

.rz-alert.rz-light {
    --rz-alert-background-color: var(--rz-base-800);
    --rz-alert-color: var(--rz-base-100);
    --rz-alert-title-color: var(--rz-base-50);
    --rz-alert-icon-color: var(--rz-base-300);
    box-shadow: inset 0 0 0 1px var(--rz-base-700) !important;
}

.rz-badge-light {
    background-color: var(--rz-base-700) !important;
    color: var(--rz-base-100) !important;
}

/* ===== Misc ===== */

.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: var(--rz-on-base) !important;
}

.zlc-actions .zlc-icon-btn {
    margin-left: 3px;
}

.zlc-actions .zlc-icon-btn:hover .rzi,
.zlc-actions .zlc-icon-btn:hover {
    color: var(--rz-primary) !important;
}

.lockedIcon {
    color: rgba(var(--wp-navy-rgb), 0.4) !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(226, 164, 23, 0.35);
    color: var(--rz-base-50);
    border-radius: 3px;
    padding: 0 2px;
}

.homescreen-grid:not(.edit-mode) .homescreen-tile:not(.no-hover):hover {
    background-color: var(--rz-primary-lighter) !important;
    color: var(--rz-on-primary-lighter);
    box-shadow: inset 0 0 0 1px var(--rz-primary) !important;
    transform: none;
}

.footer-dock-item:not(.no-hover):hover {
    background-color: rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !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: var(--rz-white) !important;
    opacity: 1 !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);
}

/* ===== AppGenerator: light overrides for the generation panel ===== */

.generation-status {
    border: 1px solid var(--rz-base-600) !important;
    background: var(--rz-base-background-color) !important;
}

.generation-status.tone-live {
    border-color: rgba(var(--wp-primary-rgb), 0.5) !important;
    background: var(--rz-primary-lighter) !important;
}

.generation-status.tone-paused {
    border-color: var(--rz-warning-dark) !important;
    background: var(--rz-warning-lighter) !important;
}

.generation-status.tone-ok {
    border-color: var(--rz-success-dark) !important;
    background: var(--rz-success-lighter) !important;
}

.generation-status.tone-error {
    border-color: var(--rz-danger-dark) !important;
    background: var(--rz-danger-lighter) !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: var(--rz-warning-dark) !important;
    background: var(--rz-warning-lighter) !important;
    color: var(--rz-on-warning-lighter) !important;
}

.generation-log {
    background: var(--rz-base-background-color) !important;
    color: var(--rz-base-100) !important;
    border: 1px solid var(--rz-base-600);
}

.log-section-title { color: var(--rz-primary-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: var(--rz-warning-dark) !important; }
.log-item.phase-generating { color: var(--rz-primary-darker) !important; }
.log-item.phase-building { color: var(--rz-info-dark) !important; }
.log-item.phase-fixing { color: var(--rz-warning-dark) !important; }
.log-item.phase-publishing { color: var(--rz-secondary-darker) !important; }
.log-item.phase-git { color: var(--rz-danger-darker) !important; }
.log-item.phase-database { color: var(--rz-primary-dark) !important; }
.log-item.phase-completed { color: var(--rz-success-dark) !important; }
.log-item.phase-failed { color: var(--rz-danger) !important; }

.assistant-card {
    border: 1px solid var(--rz-base-600) !important;
    background: var(--rz-base-background-color) !important;
    color: var(--rz-base-100) !important;
}

.assistant-card-title { color: var(--rz-primary-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(--rz-primary) !important; }
.todo-item.state-done .todo-icon { color: var(--rz-success-dark) !important; }
.todo-item.state-blocked .todo-icon { color: var(--rz-danger) !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 var(--rz-success-dark) !important;
    background: var(--rz-success-lighter) !important;
    color: var(--rz-on-success-lighter) !important;
}

.question-text { color: var(--rz-base-100) !important; }

.question-text-input {
    border: 1px solid var(--rz-base-600) !important;
    background: var(--rz-base-background-color) !important;
    color: var(--rz-base-100) !important;
}

.question-text-input:focus {
    border-color: var(--rz-primary) !important;
    box-shadow: 0 0 0 2px rgba(var(--wp-primary-rgb), 0.18) !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(--rz-primary) !important;
    background: var(--wp-primary-soft) !important;
}

.question-option.is-selected {
    border-color: var(--rz-primary) !important;
    background: var(--rz-primary-lighter) !important;
    color: var(--rz-base-50) !important;
}

.question-submit {
    border: 1px solid var(--rz-primary-dark) !important;
    background: var(--rz-primary) !important;
    color: var(--rz-on-primary) !important;
}

.generator-output-details {
    border: 1px solid var(--rz-base-600) !important;
    background: var(--rz-base-background-color) !important;
}

.generator-output-details summary {
    color: var(--rz-primary-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(--rz-primary-darker) !important;
}

.generator-output-markdown code,
.generator-output-markdown pre {
    background: var(--rz-base-800) !important;
}

.generator-output-markdown a { color: var(--rz-primary-dark) !important; }

.generator-output-markdown blockquote {
    border-left: 2px solid var(--rz-primary) !important;
    color: var(--rz-primary-darker) !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: var(--rz-warning-dark) !important; }
.operation-message { color: var(--rz-base-200) !important; }

.operation-item.tone-success .operation-icon,
.operation-item.tone-success .operation-tag { color: var(--rz-success-dark) !important; }

.operation-item.tone-warning .operation-icon,
.operation-item.tone-warning .operation-tag { color: var(--rz-warning-dark) !important; }

.operation-item.tone-error .operation-icon,
.operation-item.tone-error .operation-tag { color: var(--rz-danger) !important; }

.cancel-notice {
    border: 1px solid var(--rz-warning-dark) !important;
    background: var(--rz-warning-lighter) !important;
    color: var(--rz-on-warning-lighter) !important;
}

.error-message { color: var(--rz-danger) !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: var(--rz-base-background-color) !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(--rz-primary-darker) !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(--rz-primary-darker) !important; }
.chat-response-markdown th,
.chat-response-markdown td { border-color: var(--rz-base-600) !important; }
.chat-response-markdown a { color: var(--rz-primary-dark) !important; }
.chat-response-markdown blockquote { border-left-color: var(--rz-primary) !important; color: var(--rz-primary-darker) !important; }

/* ===== ZPhaseTrack ===== */

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

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

.zpt-completed .zpt-node-icon {
    background: var(--rz-success) !important;
    color: var(--rz-on-success) !important;
}

.zpt-active {
    border-color: var(--rz-primary) !important;
    background: var(--wp-primary-soft) !important;
    color: var(--rz-on-primary-lighter) !important;
}

.zpt-active .zpt-node-icon {
    background: var(--rz-primary) !important;
    color: var(--rz-on-primary) !important;
}

.zpt-active.zpt-animate {
    animation: none !important;
}

.zpt-failed {
    border-color: var(--rz-danger-dark) !important;
    background: var(--rz-danger-lighter) !important;
    color: var(--rz-on-danger-lighter) !important;
}

.zpt-failed .zpt-node-icon {
    background: var(--rz-danger-dark) !important;
    color: var(--rz-on-danger-dark) !important;
}
