html, body {
    font-family: 'Noto Sans SC', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

h1:focus {
    outline: none;
}

a, .btn-link {
    color: #0071c1;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.content {
    padding-top: 1.1rem;
}

.valid.modified:not([type=checkbox]) {
    border-color: #26b050 !important;
}

.invalid {
    border-color: #dc3545 !important;
}

.validation-message {
    color: #dc3545;
    font-size: 0.75rem;
    margin-top: 0.25rem;
}

#blazor-error-ui {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDg2Ni4wMDl6IE0yNjMuNTc2IDg2LjA1NDdDNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.loading-progress {
    position: relative;
    display: block;
    width: 8rem;
    height: 8rem;
    margin: 20vh auto 1rem auto;
}

    .loading-progress circle {
        fill: none;
        stroke: #e0e0e0;
        stroke-width: 0.6rem;
        transform-origin: 50% 50%;
        transform: rotate(-90deg);
    }

        .loading-progress circle:last-child {
            stroke: #1b6ec2;
            stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
            transition: stroke-dasharray 0.05s ease-in-out;
        }

.loading-progress-text {
    position: absolute;
    text-align: center;
    font-weight: bold;
    inset: calc(20vh + 3.25rem) 0 auto 0.2rem;
}

    .loading-progress-text:after {
        content: var(--blazor-load-percentage-text, "Loading");
    }

code {
    color: #c02d76;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

.ranch-section-title {
    font-size: 0.95rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.ranch-detail-label {
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    opacity: 0.7;
    margin-bottom: 0.2rem;
}

.ranch-detail-value {
    font-size: 0.95rem;
    font-weight: 600;
}

.ranch-map-link {
    display: inline-block;
    margin-top: 1.4rem;
}

/* ???????????????????????????????????????????????????????????????????????????
   RCM — shared node, drop-zone, swatch styles (global because they are used
   across multiple child components that each have their own CSS scope)
   ??????????????????????????????????????????????????????????????????????????? */

/* ?? Drop zones ??????????????????????????????????????????????????????????? */

.rcm-process-drop-zone {
    min-height: 48px;
    margin-top: 0.5rem;
    padding: 0.35rem 0.5rem 0.35rem 1.1rem;
    border: 1.5px dashed var(--rz-secondary);
    border-radius: 0 6px 6px 0;
    border-left: 3px solid var(--rz-secondary);
    background: color-mix(in srgb, var(--rz-secondary-lighter, #f5f0ff) 60%, transparent);
    position: relative;
}
/* Child stage cards must stay interactive even when stage-drop-zone is
   temporarily pointer-events:none in drag-context filtering rules. */
.rcm-stage-drop-zone .rcm-stage-node { pointer-events: auto !important; }
/* Child nodes must always stay interactive even when the parent drop zone
   has pointer-events:none !important (applied by the drag-context rules). */
.rcm-process-drop-zone .rcm-process-node { pointer-events: auto !important; }

.rcm-recipe-drop-zone {
    min-height: 40px;
    margin-top: 0.5rem;
    padding: 0.35rem 0.5rem 0.35rem 1.1rem;
    border: 1.5px dashed var(--rz-info);
    border-radius: 0 6px 6px 0;
    border-left: 3px solid var(--rz-info);
    background: color-mix(in srgb, var(--rz-info-lighter, #eff8ff) 60%, transparent);
}
.rcm-recipe-drop-zone .rcm-recipe-node { pointer-events: auto !important; }

.rcm-formula-drop-zone {
    min-height: 28px;
    margin-top: 0.4rem;
    padding: 0.3rem 0.4rem 0.3rem 1rem;
    border: 1.5px dashed var(--rz-success);
    border-radius: 0 4px 4px 0;
    border-left: 3px solid var(--rz-success);
    background: color-mix(in srgb, var(--rz-success-lighter, #f0fdf4) 60%, transparent);
}
.rcm-formula-drop-zone .rcm-formula-node { pointer-events: auto !important; }
.rcm-formula-drop-zone .rcm-empty-hint {
    pointer-events: none;
    padding: 0;
    line-height: 1.2;
}

.rcm-drop-zone-active {
    border-color: var(--rz-primary) !important;
    background: var(--rz-primary-lighter, #e8f4fd) !important;
}
/* Only show drop-zone-active highlights during an actual drag */
body:not(.rcm-dragging) .rcm-drop-zone-active {
    display: none;
}

/* Sub-recipe zone */
.rcm-sub-recipe-zone { pointer-events: auto; }
.rcm-sub-recipe-zone .rcm-recipe-node { pointer-events: auto; }

/* ?? LEVEL 1 — Stage node ????????????????????????????????????????????????? */

.rcm-stage-node {
    padding: 0.6rem 0.75rem;
    margin-bottom: 0.75rem;
    background: var(--rz-base-background-color);
    border: 1.5px solid var(--rz-base-300);
    border-left: 4px solid var(--rz-base-400);
    border-radius: 8px;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}

/* When stage cards also act as process drop zones, neutralize process-zone
   base geometry so stage visuals remain unchanged. */
.rcm-stage-node.rcm-process-drop-zone {
    min-height: 0;
    margin-top: 0;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
}
.rcm-stage-node:hover,
.rcm-stage-node.rcm-selected { box-shadow: 0 2px 8px rgba(0,0,0,0.08); }

.rcm-stage-node.rcm-color-primary   { border-left-color: var(--rz-primary);   background: color-mix(in srgb, var(--rz-primary-lighter,   #eaf4fd) 30%, var(--rz-base-background-color)); }
.rcm-stage-node.rcm-color-info      { border-left-color: var(--rz-info);      background: color-mix(in srgb, var(--rz-info-lighter,      #eff8ff) 30%, var(--rz-base-background-color)); }
.rcm-stage-node.rcm-color-success   { border-left-color: var(--rz-success);   background: color-mix(in srgb, var(--rz-success-lighter,   #f0fdf4) 30%, var(--rz-base-background-color)); }
.rcm-stage-node.rcm-color-warning   { border-left-color: var(--rz-warning);   background: color-mix(in srgb, var(--rz-warning-lighter,   #fffbeb) 30%, var(--rz-base-background-color)); }
.rcm-stage-node.rcm-color-danger    { border-left-color: var(--rz-danger);    background: color-mix(in srgb, var(--rz-danger-lighter,    #fff1f2) 30%, var(--rz-base-background-color)); }
.rcm-stage-node.rcm-color-secondary { border-left-color: var(--rz-secondary); background: color-mix(in srgb, var(--rz-secondary-lighter, #f5f0ff) 30%, var(--rz-base-background-color)); }
.rcm-stage-node.rcm-color-dark      { border-left-color: var(--rz-dark, #374151); background: color-mix(in srgb, rgba(55,65,81,0.08) 60%, var(--rz-base-background-color)); }

.rcm-stage-node.rcm-selected.rcm-color-primary   { box-shadow: 0 0 0 2px var(--rz-primary-lighter); }
.rcm-stage-node.rcm-selected.rcm-color-info      { box-shadow: 0 0 0 2px var(--rz-info-lighter); }
.rcm-stage-node.rcm-selected.rcm-color-success   { box-shadow: 0 0 0 2px var(--rz-success-lighter); }
.rcm-stage-node.rcm-selected.rcm-color-warning   { box-shadow: 0 0 0 2px var(--rz-warning-lighter); }
.rcm-stage-node.rcm-selected.rcm-color-danger    { box-shadow: 0 0 0 2px var(--rz-danger-lighter); }
.rcm-stage-node.rcm-selected.rcm-color-secondary { box-shadow: 0 0 0 2px var(--rz-secondary-lighter); }
.rcm-stage-node.rcm-selected.rcm-color-dark      { box-shadow: 0 0 0 2px rgba(55,65,81,0.15); }

/* ?? LEVEL 2 — Process node ??????????????????????????????????????????????? */

.rcm-process-node {
    padding: 0.4rem 0.65rem;
    margin-bottom: 0.4rem;
    background: var(--rz-base-background-color);
    border: 1px solid var(--rz-secondary);
    border-left: 3px solid var(--rz-secondary);
    border-radius: 6px;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.rcm-process-node:hover,
.rcm-process-node.rcm-selected {
    border-color: var(--rz-secondary-dark);
    border-left-color: var(--rz-secondary-dark);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-secondary-lighter, #f5f0ff) 80%, transparent);
}

/* ?? LEVEL 3 — Recipe node ???????????????????????????????????????????????? */

.rcm-recipe-node {
    padding: 0.35rem 0.55rem;
    margin-bottom: 0.35rem;
    background: var(--rz-base-background-color);
    border: 1px solid var(--rz-info);
    border-left: 3px solid var(--rz-info);
    border-radius: 6px;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.rcm-recipe-node:hover,
.rcm-recipe-node.rcm-selected {
    border-color: var(--rz-info-dark);
    border-left-color: var(--rz-info-dark);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-info-lighter, #eff8ff) 80%, transparent);
}

/* ?? LEVEL 4 — Formula node ??????????????????????????????????????????????? */

.rcm-formula-node {
    padding: 0.25rem 0.45rem;
    margin-bottom: 0.2rem;
    background: var(--rz-base-background-color);
    border: 1px solid var(--rz-success);
    border-left: 3px solid var(--rz-success);
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.82rem;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.rcm-formula-node:hover,
.rcm-formula-node.rcm-selected {
    border-color: var(--rz-success-dark);
    border-left-color: var(--rz-success-dark);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-success-lighter, #f0fdf4) 80%, transparent);
}

/* ?? Hints ???????????????????????????????????????????????????????????????? */

.rcm-empty-hint {
    color: var(--rz-text-tertiary-color, #9ca3af);
    font-size: 0.875rem;
    text-align: center;
    padding: 1rem;
    font-style: italic;
}
.rcm-small-hint { padding: 0.4rem; font-size: 0.78rem; }

/* ?? Remedial ????????????????????????????????????????????????????????????? */

.rcm-remedial-global {
    padding: 0.5rem 0.75rem;
    border: 1.5px dashed var(--rz-warning);
    border-left: 4px solid var(--rz-warning);
    border-radius: 8px;
    background: color-mix(in srgb, var(--rz-warning-lighter, #fffbeb) 60%, transparent);
    cursor: pointer;
}
.rcm-remedial-tag {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.78rem;
    padding: 0.2rem 0.4rem;
    background: var(--rz-warning-lighter);
    border: 1px solid var(--rz-warning);
    border-radius: 4px;
    margin-bottom: 0.25rem;
}

/* ?? Category colour swatch picker ??????????????????????????????????????? */

.rcm-swatch {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    cursor: pointer;
    border: 2px solid var(--rz-base-300, #d1d5db);
    color: #fff;
    padding: 0;
    transition: transform 0.12s, border-color 0.12s, box-shadow 0.12s;
    flex-shrink: 0;
}
.rcm-swatch:hover     { transform: scale(1.12); }
.rcm-swatch-active    { border-color: var(--rz-base-900, #111); box-shadow: 0 0 0 3px rgba(17, 24, 39, 0.24); transform: scale(1.12); }
.rcm-swatch .rz-icon  { font-size: 1rem; font-weight: 800; filter: drop-shadow(0 1px 1px rgba(0,0,0,0.45)); }

.rcm-swatch-primary   { background: var(--rz-primary); }
.rcm-swatch-info      { background: var(--rz-info); }
.rcm-swatch-success   { background: var(--rz-success); }
.rcm-swatch-warning   { background: var(--rz-warning); }
.rcm-swatch-danger    { background: var(--rz-danger); }
.rcm-swatch-secondary { background: var(--rz-secondary); }
.rcm-swatch-dark      { background: var(--rz-dark, #374151); }

/* ?? Collapse pill ???????????????????????????????????????????????????????? */

.rcm-collapsed-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.2rem 0.65rem;
    margin-top: 0.4rem;
    border-radius: 99px;
    border: 1.5px dashed var(--rz-base-400);
    background: var(--rz-base-100, #f3f4f6);
    font-size: 0.75rem;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s, box-shadow 0.15s;
    user-select: none;
}
.rcm-collapsed-pill:hover {
    border-color: var(--rz-primary);
    background: var(--rz-primary-lighter, #e8f4fd);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-primary-lighter, #e8f4fd) 60%, transparent);
}

/* ?? Drag context: highlight valid drop zones ??????????????????????????? */

/* Valid zones get a solid colored border + tinted background */
/* Only highlight matching zone types to avoid over-highlighting nested zones */
.rcm-dragging-stage .rcm-stage-drop-zone {
    border-color: var(--rz-primary) !important;
    border-style: solid !important;
    background: color-mix(in srgb, var(--rz-primary-lighter, #e8f4fd) 35%, var(--rz-base-50, #f9fafb)) !important;
}
.rcm-dragging-process .rcm-process-drop-zone {
    border-color: var(--rz-secondary) !important;
    border-style: solid !important;
    background: color-mix(in srgb, var(--rz-secondary-lighter, #f5f0ff) 45%, var(--rz-base-background-color)) !important;
}
.rcm-dragging-recipe .rcm-recipe-drop-zone {
    border-color: var(--rz-info) !important;
    border-style: solid !important;
    background: color-mix(in srgb, var(--rz-info-lighter, #eff8ff) 45%, var(--rz-base-background-color)) !important;
}
.rcm-dragging-formula .rcm-formula-drop-zone {
    border-color: var(--rz-success) !important;
    border-style: solid !important;
    background: color-mix(in srgb, var(--rz-success-lighter, #f0fdf4) 45%, var(--rz-base-background-color)) !important;
}
.rcm-dragging-formula .rcm-formula-drop-zone.rcm-drop-zone-active {
    border-color: var(--rz-success) !important;
    background: color-mix(in srgb, var(--rz-success-lighter, #f0fdf4) 70%, transparent) !important;
}

/* Collapsed pills inside a valid zone also light up so the user knows to hover there */
.rcm-dragging-process .rcm-process-drop-zone .rcm-collapsed-pill { border-color: var(--rz-secondary) !important; border-style: solid !important; }
.rcm-dragging-recipe  .rcm-recipe-drop-zone  .rcm-collapsed-pill { border-color: var(--rz-info)      !important; border-style: solid !important; }
.rcm-dragging-formula .rcm-formula-drop-zone .rcm-collapsed-pill { border-color: var(--rz-success)   !important; border-style: solid !important; }

/* ?? Invalid zones: fully disabled (no pointer events, no highlight) ???? */
/* When dragging a STAGE, only stage-drop-zone is valid */
.rcm-dragging-stage .rcm-process-drop-zone,
.rcm-dragging-stage .rcm-recipe-drop-zone,
.rcm-dragging-stage .rcm-formula-drop-zone,
/* When dragging a PROCESS, only process-drop-zone is valid */
.rcm-dragging-process .rcm-stage-drop-zone,
.rcm-dragging-process .rcm-recipe-drop-zone,
.rcm-dragging-process .rcm-formula-drop-zone,
/* When dragging a RECIPE, only recipe-drop-zone is valid */
.rcm-dragging-recipe .rcm-stage-drop-zone,
.rcm-dragging-recipe .rcm-process-drop-zone,
.rcm-dragging-recipe .rcm-formula-drop-zone,
/* When dragging a FORMULA, only formula-drop-zone is valid */
.rcm-dragging-formula .rcm-stage-drop-zone,
.rcm-dragging-formula .rcm-process-drop-zone {
    border-color: transparent !important;
    background: transparent !important;
    pointer-events: none !important;
}

/* Defensively neutralise the active-hover highlight on mismatched zones,
   in case dragenter fired before pointer-events:none took effect. */
.rcm-dragging-stage   .rcm-process-drop-zone.rcm-drop-zone-active,
.rcm-dragging-stage   .rcm-recipe-drop-zone.rcm-drop-zone-active,
.rcm-dragging-stage   .rcm-formula-drop-zone.rcm-drop-zone-active,
.rcm-dragging-process .rcm-stage-drop-zone.rcm-drop-zone-active,
.rcm-dragging-process .rcm-recipe-drop-zone.rcm-drop-zone-active,
.rcm-dragging-process .rcm-formula-drop-zone.rcm-drop-zone-active,
.rcm-dragging-recipe  .rcm-stage-drop-zone.rcm-drop-zone-active,
.rcm-dragging-recipe  .rcm-process-drop-zone.rcm-drop-zone-active,
.rcm-dragging-recipe  .rcm-formula-drop-zone.rcm-drop-zone-active,
.rcm-dragging-formula .rcm-stage-drop-zone.rcm-drop-zone-active,
.rcm-dragging-formula .rcm-process-drop-zone.rcm-drop-zone-active {
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Hide insert dividers in mismatched zones (the show-rule earlier only
   shows them in matching zones, but be explicit). */
.rcm-dragging-stage   .rcm-process-insert-divider,
.rcm-dragging-stage   .rcm-recipe-insert-divider,
.rcm-dragging-stage   .rcm-formula-insert-divider,
.rcm-dragging-process .rcm-stage-insert-divider,
.rcm-dragging-process .rcm-recipe-insert-divider,
.rcm-dragging-process .rcm-formula-insert-divider,
.rcm-dragging-recipe  .rcm-stage-insert-divider,
.rcm-dragging-recipe  .rcm-process-insert-divider,
.rcm-dragging-recipe  .rcm-formula-insert-divider,
.rcm-dragging-formula .rcm-stage-insert-divider,
.rcm-dragging-formula .rcm-process-insert-divider,
.rcm-dragging-formula .rcm-recipe-insert-divider {
    display: none !important;
}

/* Hide collapsed pills in mismatched contexts so they can't be drop targets either */
.rcm-dragging-stage   .rcm-process-drop-zone .rcm-collapsed-pill,
.rcm-dragging-stage   .rcm-recipe-drop-zone  .rcm-collapsed-pill,
.rcm-dragging-stage   .rcm-formula-drop-zone .rcm-collapsed-pill,
.rcm-dragging-process .rcm-recipe-drop-zone  .rcm-collapsed-pill,
.rcm-dragging-process .rcm-formula-drop-zone .rcm-collapsed-pill,
.rcm-dragging-recipe  .rcm-process-drop-zone .rcm-collapsed-pill,
.rcm-dragging-recipe  .rcm-formula-drop-zone .rcm-collapsed-pill,
.rcm-dragging-formula .rcm-process-drop-zone .rcm-collapsed-pill,
.rcm-dragging-formula .rcm-recipe-drop-zone  .rcm-collapsed-pill {
    pointer-events: none !important;
}

/* When dragging a process: disable pointer-events on recipe zones so drops
   pass through to the parent rcm-process-drop-zone. */
.rcm-dragging-process .rcm-process-node .rcm-recipe-drop-zone {
    pointer-events: none !important;
}
/* When dragging a recipe: hide formula zone contents inside each recipe, keep the box */
.rcm-dragging-recipe .rcm-recipe-node .rcm-formula-drop-zone > *:not(.rcm-insert-divider),
.rcm-dragging-recipe .rcm-recipe-node .rcm-formula-drop-zone .rcm-formula-node {
    display: none !important;
}
.rcm-dragging-recipe .rcm-recipe-node .rcm-formula-drop-zone {
    min-height: 10px !important;
    padding: 3px !important;
}
/* Hovered drop zone always shows its hint regardless of above hiding */
.rcm-drop-zone-active > * {
    display: block !important;
    opacity: 1 !important;
}

/* ?? Insert-position dividers ???????????????????????????????????????????? */
/* Hidden by default; only shown during a matching drag type */
.rcm-insert-divider {
    display: none;
    height: 14px;
    border-radius: 4px;
    margin: 1px 0;
    background: transparent;
    border: 2px dashed transparent;
    box-sizing: border-box;
    transition: background 0.1s, border-color 0.1s, box-shadow 0.1s;
}
body.rcm-dragging .rcm-insert-divider {
    cursor: copy;
}
body.rcm-dragging .rcm-insert-divider.rcm-insert-divider-active,
body.rcm-dragging .rcm-insert-divider:hover {
    background: color-mix(in srgb, var(--rz-primary-lighter, #e8f4fd) 60%, transparent);
    border-color: var(--rz-primary);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rz-primary) 30%, transparent);
}

/* Process insert dividers: larger hit area so they are easy to target */
.rcm-process-insert-divider {
    height: 36px;
    border-radius: 6px;
    margin: 4px 0;
    border: 2px dashed transparent;
    background: transparent;
    display: none;
    align-items: center;
    justify-content: center;
    transition: background 0.1s, border-color 0.1s;
}
body.rcm-dragging .rcm-process-insert-divider {
    cursor: copy;
}
body.rcm-dragging .rcm-process-insert-divider.rcm-insert-divider-active,
body.rcm-dragging .rcm-process-insert-divider:hover {
    background: color-mix(in srgb, var(--rz-secondary-lighter, #f5f0ff) 70%, transparent);
    border-color: var(--rz-secondary);
}

/* Show stage insert dividers when dragging a stage */
.rcm-dragging-stage  .rcm-stage-drop-zone    .rcm-stage-insert-divider   { display: block; }
/* Show process insert dividers when dragging a process into a process drop zone */
.rcm-dragging-process .rcm-process-drop-zone  .rcm-process-insert-divider { display: flex; }
/* Show recipe insert dividers when dragging a recipe into a recipe drop zone */
.rcm-dragging-recipe  .rcm-recipe-drop-zone   .rcm-recipe-insert-divider  { display: block; }
/* Show formula insert dividers when dragging a formula into a formula drop zone */
.rcm-dragging-formula .rcm-formula-drop-zone .rcm-formula-insert-divider {
    display: block;
    height: 0;
    min-height: 0;
    margin: 0;
    border-width: 0;
    padding: 0;
    overflow: hidden;
}
.rcm-dragging-formula .rcm-formula-drop-zone .rcm-formula-insert-divider.rcm-insert-divider-active,
.rcm-dragging-formula .rcm-formula-drop-zone .rcm-formula-insert-divider:hover {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    margin: 2px 0;
    border-width: 2px;
}

/* ?? Action drop zones & nodes ??????????????????????????????????????????? */

.rcm-toolbox-criteria {
    border-color: var(--rz-warning-dark);
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 72%, var(--rz-base-background-color));
    color: var(--rz-text-color);
}
.rcm-toolbox-criteria:hover {
    border-color: var(--rz-warning-dark);
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 55%, var(--rz-base-background-color));
}

.rcm-toolbox-loop {
    border-color: var(--rz-success-dark, var(--rz-success));
    background: color-mix(in srgb, var(--rz-success-lighter, var(--rz-success)) 58%, var(--rz-base-background-color));
    color: var(--rz-text-color);
}
.rcm-toolbox-loop:hover {
    border-color: var(--rz-success-dark, var(--rz-success));
    background: color-mix(in srgb, var(--rz-success-lighter, var(--rz-success)) 42%, var(--rz-base-background-color));
}

.rcm-loop-container {
    margin: 0.4rem 0 0.5rem 0.95rem;
    border-radius: 6px;
}

.rcm-loop-container.rcm-loop-root {
    margin-left: 0;
}

.rcm-loop-container-header {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0;
    padding: 0.35rem 0.5rem;
    border: 1px solid var(--rz-success);
    border-bottom: 0;
    border-left: 3px solid var(--rz-success-dark, var(--rz-success));
    border-radius: 6px 6px 0 0;
    background: color-mix(in srgb, var(--rz-success-lighter, var(--rz-success)) 54%, var(--rz-base-background-color));
    cursor: pointer;
    min-width: 0;
}

.rcm-loop-container-header.rcm-selected {
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-primary) 28%, transparent);
}

.rcm-loop-container-body {
    display: grid;
    gap: 0.45rem;
    padding: 0.35rem;
    border: 1px solid var(--rz-success);
    border-top: 0;
    border-left: 3px solid var(--rz-success-dark, var(--rz-success));
    border-radius: 0 0 6px 6px;
    background: color-mix(in srgb, var(--rz-success-lighter, var(--rz-success)) 22%, var(--rz-base-background-color));
}

.rcm-loop-lane {
    min-height: 2.4rem;
    padding: 0.35rem;
    border: 1px dashed var(--rz-success);
    border-radius: 5px;
    background: color-mix(in srgb, var(--rz-base-background-color) 84%, transparent);
}

.rcm-loop-lane-max {
    border-color: var(--rz-danger-light, var(--rz-danger));
    background: color-mix(in srgb, var(--rz-danger-lighter, var(--rz-danger)) 10%, var(--rz-base-background-color));
}

.rcm-loop-lane-title {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.25rem;
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--rz-success-dark, var(--rz-success));
}

.rcm-loop-lane-max .rcm-loop-lane-title {
    color: var(--rz-danger, #ef4444);
}

.rcm-loop-empty {
    border-radius: 4px;
    margin: 0.1rem 0;
}

.rcm-loop-config-section {
    padding-top: 0.75rem;
    border-top: 1px solid var(--rz-border-color);
}

.rcm-dragging-loop .rcm-loop-root-drop-zone,
.rcm-dragging-loop .rcm-loop-condition-drop-zone,
.rcm-loop-lane:hover {
    border-color: var(--rz-success-dark, var(--rz-success));
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-success, #22c55e) 22%, transparent);
}.rcm-action-node {
    padding: 0.25rem 0.45rem;
    margin-bottom: 0.2rem;
    background: var(--rz-base-background-color);
    border: 1px solid var(--rz-warning);
    border-left: 3px solid var(--rz-warning);
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.82rem;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.rcm-action-node:hover,
.rcm-action-node.rcm-selected {
    border-color: var(--rz-warning-dark);
    border-left-color: var(--rz-warning-dark);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 50%, transparent);
}

.rcm-action-branch {
    margin-bottom: 0.2rem;
}


.rcm-action-branch-container {
    margin-top: 0.35rem;
    margin-bottom: 0.5rem;
    padding: 0.35rem;
    border: 1px solid color-mix(in srgb, var(--rz-warning) 48%, var(--rz-border-color));
    border-left: 3px solid var(--rz-warning-dark, var(--rz-warning));
    border-radius: 6px;
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 12%, var(--rz-base-background-color));
}

.rcm-action-branch-container > .rcm-action-node {
    margin-bottom: 0.35rem;
}

.rcm-action-branch-container > .rcm-condition-container,
.rcm-action-branch-container > .rcm-loop-container {
    margin-left: 0.55rem;
    margin-right: 0.1rem;
}

.rcm-action-branch-container > .rcm-condition-container,
.rcm-action-branch-container > .rcm-loop-container:not(.rcm-loop-root) {
    position: relative;
}

.rcm-action-branch-container > .rcm-condition-container::before,
.rcm-action-branch-container > .rcm-loop-container:not(.rcm-loop-root)::before {
    content: '';
    position: absolute;
    left: -0.45rem;
    top: 0.35rem;
    bottom: 0.35rem;
    width: 2px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--rz-warning) 45%, transparent);
}
.rcm-action-branch-child {
    position: relative;
}

.rcm-condition-container {
    margin: 0.35rem 0 0.45rem 0.95rem;
    border-radius: 6px;
}

.rcm-condition-container-or {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0.25rem 0 0.2rem 0.95rem;
    color: var(--rz-warning-dark, var(--rz-warning));
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.rcm-condition-container-or::before,
.rcm-condition-container-or::after {
    content: "";
    flex: 1;
    min-width: 16px;
    border-top: 1px dashed color-mix(in srgb, var(--rz-warning, #f59e0b) 62%, transparent);
}

.rcm-condition-container-or span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    padding: 0.08rem 0.35rem;
    border: 1px solid color-mix(in srgb, var(--rz-warning, #f59e0b) 52%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 60%, var(--rz-base-background-color));
}

.rcm-condition-container-header {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0.35rem 0 0;
    padding: 0.35rem 0.5rem;
    border: 1px solid var(--rz-warning);
    border-bottom: 0;
    border-left: 3px solid var(--rz-warning-dark);
    border-radius: 6px 6px 0 0;
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 76%, var(--rz-base-background-color));
    cursor: pointer;
    min-width: 0;
}

.rcm-condition-container .rcm-condition-container-header {
    margin: 0;
}

.rcm-condition-container-header.rcm-selected {
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-primary) 28%, transparent);
}

.rcm-condition-container-header.rcm-condition-container-completion,
.rcm-condition-container-empty.rcm-condition-container-completion {
    border-color: var(--rz-info);
    border-left-color: var(--rz-info-dark, var(--rz-info));
    background: color-mix(in srgb, var(--rz-info-lighter, var(--rz-info)) 58%, var(--rz-base-background-color));
}

.rcm-condition-container-header.rcm-condition-container-run,
.rcm-condition-container-empty.rcm-condition-container-run {
    border-color: var(--rz-warning);
    border-left-color: var(--rz-warning-dark, var(--rz-warning));
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 64%, var(--rz-base-background-color));
}

.rcm-condition-container-header.rcm-condition-container-completion .rcm-condition-container-label {
    color: var(--rz-info-dark, var(--rz-info));
}

.rcm-condition-container-header.rcm-condition-container-run .rcm-condition-container-label {
    color: var(--rz-warning-dark, var(--rz-warning));
}

.rcm-condition-container-label {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--rz-warning-dark);
    flex-shrink: 0;
}

.rcm-condition-container-title {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.78rem;
    font-weight: 700;
}

.rcm-action-node.rcm-action-node-conditioned {
    border-left-color: var(--rz-info);
    background: color-mix(in srgb, var(--rz-info-lighter, var(--rz-info)) 28%, var(--rz-base-background-color));
}

.rcm-action-node.rcm-action-node-criteria-child {
    margin-left: 0;
    border-radius: 0 4px 4px 0;
    border-left-style: solid;
    background: color-mix(in srgb, var(--rz-base-100, #f8fafc) 62%, var(--rz-base-background-color));
}

.rcm-action-node.rcm-action-node-loop-child {
    margin-left: 0;
    border-radius: 4px;
    border-color: var(--rz-warning);
    border-left-color: var(--rz-warning);
    background: var(--rz-base-background-color);
}
.rcm-condition-container-body {
    padding: 0.25rem 0.35rem 0.35rem;
    border: 1px solid var(--rz-warning);
    border-top: 0;
    border-left: 3px solid var(--rz-warning-dark, var(--rz-warning));
    border-radius: 0 0 6px 6px;
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 38%, var(--rz-base-background-color));
}

.rcm-condition-container-body.rcm-condition-container-completion {
    border-color: var(--rz-info);
    border-left-color: var(--rz-info-dark, var(--rz-info));
    background: color-mix(in srgb, var(--rz-info-lighter, var(--rz-info)) 34%, var(--rz-base-background-color));
}

.rcm-condition-container-body.rcm-condition-container-run {
    border-color: var(--rz-warning);
    border-left-color: var(--rz-warning-dark, var(--rz-warning));
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 38%, var(--rz-base-background-color));
}

.rcm-condition-container-empty {
    margin: 0.1rem 0 0.2rem;
    padding: 0.35rem 0.5rem;
    border: 1px dashed var(--rz-border-color);
    border-left: 3px solid var(--rz-border-color);
    border-radius: 0 0 4px 4px;
    color: var(--rz-text-secondary);
    font-size: 0.75rem;
    font-style: italic;
}

.rcm-condition-container-footer {
    height: 0.35rem;
    margin: -0.2rem 0 0.25rem 0.95rem;
    border-left: 2px solid var(--rz-warning);
    border-bottom: 1px solid var(--rz-warning);
    border-radius: 0 0 0 6px;
}

.rcm-condition-container-footer.rcm-condition-container-completion {
    border-color: var(--rz-info);
}

.rcm-condition-container-footer.rcm-condition-container-run {
    border-color: var(--rz-warning);
}

.rcm-dragging-criteria .rcm-action-node,
.rcm-action-node.rcm-criteria-drop-target {
    border-color: var(--rz-warning-dark);
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 52%, var(--rz-base-background-color));
}

.rcm-action-node.rcm-criteria-drop-target {
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-warning, #f59e0b) 30%, transparent);
}

.rcm-action-criteria-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.28rem;
    margin-top: 0.28rem;
    padding-left: 1.55rem;
    min-width: 0;
}

.rcm-condition-container-body > .rcm-action-criteria-summary {
    margin: 0.05rem 0 0.35rem;
    padding-left: 0;
}

.rcm-action-criteria-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    max-width: 100%;
    min-width: 0;
    padding: 0.16rem 0.45rem;
    border: 1px solid var(--rz-border-color);
    border-radius: 999px;
    background: color-mix(in srgb, var(--rz-base-100, var(--rz-base-background-color)) 70%, var(--rz-base-background-color));
    color: var(--rz-text-color);
    font-size: 0.66rem;
    line-height: 1.2;
}

.rcm-action-criteria-chip-kind {
    flex-shrink: 0;
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    opacity: 0.9;
}

.rcm-action-criteria-chip span:last-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rcm-action-criteria-chip-completion {
    border-color: color-mix(in srgb, var(--rz-info, #38bdf8) 48%, var(--rz-border-color));
    background: color-mix(in srgb, var(--rz-info-lighter, var(--rz-info)) 30%, var(--rz-base-background-color));
}

.rcm-action-criteria-chip-completion .rcm-action-criteria-chip-kind {
    color: var(--rz-info-dark, var(--rz-info));
}

.rcm-action-criteria-chip-run {
    border-color: color-mix(in srgb, var(--rz-warning, #f59e0b) 50%, var(--rz-border-color));
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 34%, var(--rz-base-background-color));
}

.rcm-action-criteria-chip-run .rcm-action-criteria-chip-kind {
    color: var(--rz-warning-dark, var(--rz-warning));
}

.rcm-action-criteria-chip-more {
    color: var(--rz-text-secondary-color, var(--rz-text-secondary));
}

.rcm-criteria-panel {
    border: 1px solid var(--rz-border-color);
    border-radius: 8px;
    padding: 0.55rem 0.7rem;
    color: var(--rz-text-color);
}

.rcm-criteria-panel-completion {
    border-left: 3px solid var(--rz-info);
    background: color-mix(in srgb, var(--rz-info-lighter, var(--rz-info)) 48%, var(--rz-base-background-color));
}

.rcm-criteria-panel-run {
    border-left: 3px solid var(--rz-warning);
    background: color-mix(in srgb, var(--rz-warning-lighter, var(--rz-warning)) 52%, var(--rz-base-background-color));
}

.rcm-process-action-drop-zone {
    min-height: 28px;
    margin-top: 0.25rem;
    padding: 0.3rem 0.4rem 0.3rem 1rem;
    border: 1.5px dashed var(--rz-warning);
    border-radius: 0 4px 4px 0;
    border-left: 3px solid var(--rz-warning);
    background: color-mix(in srgb, var(--rz-warning-lighter, #fffbeb) 60%, transparent);
}
.rcm-action-drop-zone {
    min-height: 28px;
    margin-top: 0.35rem;
    padding: 0.3rem 0.4rem 0.3rem 1rem;
    border: 1.5px dashed var(--rz-warning);
    border-radius: 0 4px 4px 0;
    border-left: 3px solid var(--rz-warning);
    background: color-mix(in srgb, var(--rz-warning-lighter, #fffbeb) 60%, transparent);
}
.rcm-action-drop-zone .rcm-action-node { pointer-events: auto !important; }

/* Action drag context highlights */
.rcm-dragging-action .rcm-process-action-drop-zone,
.rcm-dragging-action .rcm-action-drop-zone {
    border-color: var(--rz-warning) !important;
    border-style: solid !important;
    background: color-mix(in srgb, var(--rz-warning-lighter, #fffbeb) 45%, var(--rz-base-background-color)) !important;
}
.rcm-dragging-loop .rcm-loop-root-drop-zone,
.rcm-dragging-loop .rcm-loop-condition-drop-zone {
    border-color: var(--rz-success-dark, var(--rz-success)) !important;
    border-style: solid !important;
    background: color-mix(in srgb, var(--rz-success, #22c55e) 16%, var(--rz-base-background-color)) !important;
}
.rcm-dragging-action .rcm-action-insert-divider { display: block; }
.rcm-dragging-loop .rcm-loop-root-insert-divider,
.rcm-dragging-loop .rcm-loop-condition-insert-divider { display: block; }

/* Also show action insert dividers when the JS dragover handler highlights them,
   even without a parent .rcm-dragging-action wrapper (needed for Process/Recipe Template builders). */
body.rcm-dragging:not(.rcm-dragging-loop) .rcm-action-insert-divider.rcm-insert-divider-active,
body.rcm-dragging.rcm-dragging-loop .rcm-loop-root-insert-divider.rcm-insert-divider-active,
body.rcm-dragging.rcm-dragging-loop .rcm-loop-condition-insert-divider.rcm-insert-divider-active { display: block; }
body.rcm-dragging .rcm-formula-insert-divider.rcm-insert-divider-active { display: block; }
/* When dragging action, disable non-action zones */
.rcm-dragging-action .rcm-stage-drop-zone,
.rcm-dragging-loop .rcm-stage-drop-zone,
.rcm-dragging-action .rcm-recipe-drop-zone.rcm-drop-zone-active,
.rcm-dragging-loop .rcm-recipe-drop-zone.rcm-drop-zone-active {
    pointer-events: auto !important;
}
.rcm-dragging-action .rcm-formula-drop-zone,
.rcm-dragging-loop .rcm-formula-drop-zone,
.rcm-dragging-action .rcm-formula-insert-divider,
.rcm-dragging-loop .rcm-formula-insert-divider,
.rcm-dragging-action .rcm-recipe-insert-divider,
.rcm-dragging-loop .rcm-recipe-insert-divider,
.rcm-dragging-action .rcm-process-insert-divider,
.rcm-dragging-loop .rcm-process-insert-divider,
.rcm-dragging-action .rcm-stage-insert-divider,
.rcm-dragging-loop .rcm-stage-insert-divider,
.rcm-dragging-action .rcm-recipe-drop-zone .rcm-collapsed-pill,
.rcm-dragging-loop .rcm-recipe-drop-zone .rcm-collapsed-pill {
    pointer-events: none !important;
}
.rcm-dragging-action .rcm-recipe-node .rcm-formula-drop-zone > *:not(.rcm-insert-divider),
.rcm-dragging-loop .rcm-recipe-node .rcm-formula-drop-zone > *:not(.rcm-insert-divider),
.rcm-dragging-action .rcm-recipe-node .rcm-formula-drop-zone .rcm-formula-node,
.rcm-dragging-loop .rcm-recipe-node .rcm-formula-drop-zone .rcm-formula-node {
    display: none !important;
}
.rcm-dragging-action .rcm-recipe-node .rcm-formula-drop-zone,
.rcm-dragging-loop .rcm-recipe-node .rcm-formula-drop-zone {
    min-height: 10px !important;
    padding: 3px !important;
}

/* Formula drag mirrors action drag: formula zones live inside recipe zones,
   so keep the recipe zone interactive and quieten the sibling action lane. */
.rcm-dragging-formula .rcm-recipe-drop-zone.rcm-drop-zone-active {
    pointer-events: auto !important;
}
.rcm-dragging-formula .rcm-action-drop-zone,
.rcm-dragging-formula .rcm-action-insert-divider,
.rcm-dragging-formula .rcm-recipe-insert-divider,
.rcm-dragging-formula .rcm-process-insert-divider,
.rcm-dragging-formula .rcm-stage-insert-divider,
.rcm-dragging-formula .rcm-recipe-drop-zone .rcm-collapsed-pill {
    pointer-events: none !important;
}
.rcm-dragging-formula .rcm-action-drop-zone > *:not(.rcm-insert-divider),
.rcm-dragging-formula .rcm-action-drop-zone .rcm-action-node {
    display: none !important;
}
.rcm-dragging-formula .rcm-action-drop-zone {
    min-height: 10px !important;
    padding: 3px !important;
}

/* RCM DataGrid — normalize cell content for consistent compact row heights.
   Action columns use inline-flex spans (gap:2px) instead of RadzenStack. */
div[class*="rcm-grid-"] .rz-datatable-compact .rz-datatable-data td {
    line-height: 1.15 !important;
    font-size: 0.82rem !important;
    vertical-align: middle !important;
}
div[class*="rcm-grid-"] .rz-datatable-compact .rz-datatable-data td .rz-button {
    padding: 0 !important;
    min-height: 24px !important;
    height: 24px !important;
    width: 24px !important;
}
div[class*="rcm-grid-"] .rz-datatable-compact .rz-datatable-data td .rz-button .rz-button-icon {
    font-size: 16px !important;
    margin: 0 !important;
}
div[class*="rcm-grid-"] .rz-datatable-compact .rz-datatable-data td .rz-badge {
    padding: 0 6px !important;
    min-height: 18px !important;
    vertical-align: middle !important;
}

.kaxxis-instruction-editor {
    width: 100%;
    --kaxxis-editor-bg: var(--rz-base-background-color, #fff);
    --kaxxis-editor-muted-bg: var(--rz-surface-hover, #f7f9fc);
    --kaxxis-editor-text: var(--rz-text-color, #111827);
    --kaxxis-editor-muted-text: var(--rz-text-secondary, #6b7280);
    --kaxxis-editor-border: var(--rz-border-color, #d1d5db);
    --kaxxis-editor-accent: var(--rz-primary, #2563eb);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI {
    background: var(--kaxxis-editor-bg);
    border-color: var(--kaxxis-editor-border);
    border-radius: 6px;
    color: var(--kaxxis-editor-text);
    font-family: var(--rz-text-font-family, "Noto Sans SC", Arial, sans-serif);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI-toolbar,
.kaxxis-instruction-editor .toastui-editor-md-tab-container,
.kaxxis-instruction-editor .toastui-editor-mode-switch {
    background: var(--kaxxis-editor-muted-bg);
    border-color: var(--kaxxis-editor-border);
}
.kaxxis-instruction-editor .toastui-editor-tooltip {
    pointer-events: none;
}
.kaxxis-instruction-editor .toastui-editor-main,
.kaxxis-instruction-editor .toastui-editor-main-container,
.kaxxis-instruction-editor .toastui-editor-ww-container,
.kaxxis-instruction-editor .toastui-editor-md-container,
.kaxxis-instruction-editor .toastui-editor-md-container .toastui-editor,
.kaxxis-instruction-editor .toastui-editor-md-container .toastui-editor-md-preview {
    background: var(--kaxxis-editor-bg);
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-ww-container,
.kaxxis-instruction-editor .toastui-editor-defaultUI .ProseMirror,
.kaxxis-instruction-editor .toastui-editor-contents {
    color: var(--kaxxis-editor-text);
    font-family: var(--rz-text-font-family, "Noto Sans SC", Arial, sans-serif);
}
.kaxxis-instruction-editor .toastui-editor-contents p,
.kaxxis-instruction-editor .toastui-editor-contents h1,
.kaxxis-instruction-editor .toastui-editor-contents h2,
.kaxxis-instruction-editor .toastui-editor-contents h3,
.kaxxis-instruction-editor .toastui-editor-contents h4,
.kaxxis-instruction-editor .toastui-editor-contents h5,
.kaxxis-instruction-editor .toastui-editor-contents h6,
.kaxxis-instruction-editor .toastui-editor-contents ol,
.kaxxis-instruction-editor .toastui-editor-contents ul,
.kaxxis-instruction-editor .toastui-editor-contents li,
.kaxxis-instruction-editor .toastui-editor-contents table {
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-contents blockquote,
.kaxxis-instruction-editor .toastui-editor-contents blockquote p,
.kaxxis-instruction-editor .toastui-editor-contents blockquote ol,
.kaxxis-instruction-editor .toastui-editor-contents blockquote ul {
    color: var(--kaxxis-editor-muted-text);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI button,
.kaxxis-instruction-editor .toastui-editor-defaultUI .toastui-editor-md-tab-container .tab-item,
.kaxxis-instruction-editor .toastui-editor-mode-switch .tab-item {
    color: var(--kaxxis-editor-muted-text);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI .toastui-editor-md-tab-container .tab-item,
.kaxxis-instruction-editor .toastui-editor-mode-switch .tab-item {
    background: var(--kaxxis-editor-muted-bg);
    border-color: var(--kaxxis-editor-border);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI .toastui-editor-md-tab-container .tab-item.active,
.kaxxis-instruction-editor .toastui-editor-mode-switch .tab-item.active {
    background: var(--kaxxis-editor-bg);
    border-color: var(--kaxxis-editor-border);
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI-toolbar {
    border-bottom-color: var(--kaxxis-editor-border);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI-toolbar button {
    background-color: transparent;
    border-color: transparent;
}
.kaxxis-instruction-editor .toastui-editor-defaultUI-toolbar button:not(:disabled):hover,
.kaxxis-instruction-editor .toastui-editor-defaultUI-toolbar button.active {
    background-color: color-mix(in srgb, var(--kaxxis-editor-accent) 12%, var(--kaxxis-editor-bg));
    border-color: var(--kaxxis-editor-border);
}
.kaxxis-instruction-editor .toastui-editor-toolbar-divider {
    background-color: var(--kaxxis-editor-border);
}
.kaxxis-instruction-editor .toastui-editor-dropdown-toolbar,
.kaxxis-instruction-editor .toastui-editor-popup,
.kaxxis-instruction-editor .toastui-editor-context-menu {
    background: var(--kaxxis-editor-bg);
    border-color: var(--kaxxis-editor-border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-popup-body,
.kaxxis-instruction-editor .toastui-editor-popup-body label,
.kaxxis-instruction-editor .toastui-editor-popup-body .toastui-editor-tabs .tab-item,
.kaxxis-instruction-editor .toastui-editor-popup-add-table .toastui-editor-table-description,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading h1,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading h2,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading h3,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading h4,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading h5,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading h6,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading p,
.kaxxis-instruction-editor .toastui-editor-popup-add-heading li,
.kaxxis-instruction-editor .toastui-editor-context-menu .menu-item,
.kaxxis-instruction-editor .toastui-editor-context-menu span {
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-popup-add-heading ul li:hover,
.kaxxis-instruction-editor .toastui-editor-context-menu .menu-item:hover,
.kaxxis-instruction-editor .toastui-editor-popup-body .toastui-editor-tabs .tab-item:hover {
    background: color-mix(in srgb, var(--kaxxis-editor-accent) 14%, var(--kaxxis-editor-bg));
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-popup-body input[type=text],
.kaxxis-instruction-editor .toastui-editor-popup-add-image .toastui-editor-file-name,
.kaxxis-instruction-editor .toastui-editor-popup-body input[type=text].tui-colorpicker-palette-hex {
    background: var(--kaxxis-editor-bg);
    border-color: var(--kaxxis-editor-border);
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-popup-body input[type=text]:focus {
    border-color: transparent;
    outline-color: var(--kaxxis-editor-accent);
}
.kaxxis-instruction-editor .toastui-editor-popup-body input[type=text].disabled,
.kaxxis-instruction-editor .toastui-editor-popup-add-image .toastui-editor-file-name:not(.has-file) {
    background: var(--kaxxis-editor-muted-bg);
    border-color: var(--kaxxis-editor-border);
    color: var(--kaxxis-editor-muted-text);
}
.kaxxis-instruction-editor .toastui-editor-popup-add-image .toastui-editor-file-name.has-file {
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI .toastui-editor-close-button,
.kaxxis-instruction-editor .toastui-editor-popup-add-image .toastui-editor-file-select-button,
.kaxxis-instruction-editor .toastui-editor-popup-color button {
    background: var(--kaxxis-editor-muted-bg);
    border-color: var(--kaxxis-editor-border);
    color: var(--kaxxis-editor-text);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI .toastui-editor-close-button:hover,
.kaxxis-instruction-editor .toastui-editor-popup-add-image .toastui-editor-file-select-button:hover,
.kaxxis-instruction-editor .toastui-editor-popup-color button:hover {
    border-color: var(--kaxxis-editor-accent);
}
.kaxxis-instruction-editor .toastui-editor-defaultUI .toastui-editor-ok-button {
    background: var(--kaxxis-editor-accent);
    color: var(--rz-on-primary, #fff);
}
.kaxxis-instruction-editor .toastui-editor-popup-add-table .toastui-editor-table-cell {
    background: var(--kaxxis-editor-bg);
    border-color: var(--kaxxis-editor-border);
}
.kaxxis-instruction-editor .toastui-editor-popup-add-table .toastui-editor-table-cell.header {
    background: var(--kaxxis-editor-muted-bg);
}
.kaxxis-instruction-editor .toastui-editor-contents h1,
.kaxxis-instruction-editor .toastui-editor-contents h2,
.kaxxis-instruction-editor .toastui-editor-contents h3 {
    font-weight: 700;
}
.kaxxis-instruction-preview {
    width: 100%;
    min-width: 0;
    border: 1px solid var(--rz-border-color, #d1d5db);
    border-radius: 6px;
    background: var(--rz-base-background-color, #fff);
    color: var(--rz-text-color, #111827);
}
.kaxxis-instruction-preview-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
    padding: 0.45rem 0.55rem;
}
.kaxxis-instruction-preview-dot {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    flex: 0 0 auto;
}
.kaxxis-instruction-preview-copy {
    flex: 1 1 auto;
    min-width: 0;
    line-height: 1.2;
}
.kaxxis-instruction-preview-label {
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--rz-text-secondary, #6b7280);
    text-transform: uppercase;
}
.kaxxis-instruction-preview-summary {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--rz-text-color, #111827);
    font-size: 0.82rem;
}
.kaxxis-instruction-preview-icon-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    padding: 0;
    border: 0;
    border-radius: 4px;
    color: var(--rz-text-secondary, #6b7280);
    background: transparent;
    cursor: pointer;
}
.kaxxis-instruction-preview-icon-button:hover {
    color: var(--rz-primary, #2563eb);
    background: color-mix(in srgb, currentColor 12%, transparent);
}
.kaxxis-instruction-preview-icon-button .rz-icon {
    font-size: 1.15rem;
}
.kaxxis-instruction-preview-body {
    max-height: 13rem;
    overflow: auto;
    padding: 0.55rem 0.65rem;
    border-top: 1px solid var(--rz-border-color, #d1d5db);
    color: inherit;
    background: transparent;
}
.kaxxis-instruction-content {
    line-height: 1.45;
}
.kaxxis-instruction-content p {
    margin: 0.35rem 0;
}
.kaxxis-instruction-content h1,
.kaxxis-instruction-content h2,
.kaxxis-instruction-content h3,
.kaxxis-instruction-content h4,
.kaxxis-instruction-content h5,
.kaxxis-instruction-content h6 {
    color: inherit;
    font-weight: 700;
    line-height: 1.2;
    margin: 0.7rem 0 0.35rem;
}
.kaxxis-instruction-content h1 {
    font-size: 1.45rem;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid var(--rz-border-color, #d1d5db);
}
.kaxxis-instruction-content h2 {
    font-size: 1.25rem;
    padding-bottom: 0.15rem;
    border-bottom: 1px solid color-mix(in srgb, var(--rz-border-color, #d1d5db) 70%, transparent);
}
.kaxxis-instruction-content h3 {
    font-size: 1.1rem;
}
.kaxxis-instruction-content h4,
.kaxxis-instruction-content h5,
.kaxxis-instruction-content h6 {
    font-size: 1rem;
}
.kaxxis-instruction-content ul,
.kaxxis-instruction-content ol {
    margin: 0.45rem 0;
    padding-left: 1.4rem;
}
.kaxxis-instruction-content blockquote {
    margin: 0.5rem 0;
    padding: 0.25rem 0.75rem;
    border-left: 3px solid var(--rz-primary, #2563eb);
    background: color-mix(in srgb, var(--rz-primary-lighter, #dbeafe) 35%, transparent);
}
.kaxxis-instruction-content code {
    padding: 0.08rem 0.25rem;
    border-radius: 3px;
    background: var(--rz-surface-hover, #f3f4f6);
}
.kaxxis-instruction-content pre {
    padding: 0.75rem;
    border-radius: 6px;
    overflow: auto;
    background: var(--rz-surface-hover, #f3f4f6);
}
.kaxxis-instruction-content table {
    width: 100%;
    max-width: 100%;
    margin: 0.5rem 0;
    border-collapse: collapse;
    font-size: 0.9rem;
}
.kaxxis-instruction-content th,
.kaxxis-instruction-content td {
    border: 1px solid var(--rz-border-color, #d1d5db);
    padding: 0.4rem 0.5rem;
    text-align: left;
    vertical-align: top;
}
.kaxxis-instruction-content th {
    background: var(--rz-surface-hover, #f3f4f6);
    font-weight: 600;
}
.kaxxis-instruction-content img,
.kaxxis-instruction-content video {
    max-width: 100%;
    height: auto;
}

@media screen {
    .wms-theme-scope,
    .value-shell,
    .insights-shell,
    .workbench-shell,
    .passport-shell,
    .inv-shell,
    .ocm-shell,
    .rcm-shell,
    .kaxxis-ops-shell {
        --wms-panel-bg: var(--rz-base-background-color);
        --wms-panel-alt: color-mix(in srgb, var(--rz-base-background-color) 88%, var(--rz-text-color));
        --wms-panel-soft: color-mix(in srgb, var(--rz-primary) 7%, var(--wms-panel-bg));
        --wms-panel-soft-strong: color-mix(in srgb, var(--rz-primary) 11%, var(--wms-panel-bg));
        --wms-border: var(--rz-border-color);
        --wms-border-soft: color-mix(in srgb, var(--rz-primary) 24%, var(--wms-border));
        --wms-muted: var(--rz-text-secondary-color, var(--rz-text-secondary));
        --wms-text: var(--rz-text-color);
        background: var(--rz-base-background-color) !important;
        color: var(--wms-text) !important;
        font-family: var(--rz-text-font-family, inherit);
    }
    .kaxxis-ops-shell {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        padding: clamp(0.75rem, 2vw, 1.25rem);
        min-height: 100%;
        min-width: 0;
    }

    .kaxxis-ops-shell :where(.rz-row.rz-p-4, .rz-row.rz-p-3) {
        padding: 0 !important;
    }

    .kaxxis-ops-shell :where(.rz-stack, .rz-row, .rz-column, .rz-card, .rz-fieldset, .rz-datatable, .rz-data-grid) {
        min-width: 0;
    }

    :where(.kaxxis-ops-grid, .ocm-grid, [class*="rcm-grid-"]) :where(.rz-datatable-tablewrapper, .rz-grid-table-wrapper) {
        overflow: auto;
        max-width: 100%;
    }

    .ocm-lot-pill {
        display: inline-flex;
        align-items: center;
        max-width: 100%;
        padding: 0.15rem 0.45rem;
        border-radius: 999px;
        background: color-mix(in srgb, var(--rz-info) 14%, var(--rz-base-background-color));
        color: var(--rz-info-dark, var(--rz-info));
        font-size: 0.82rem;
        font-weight: 700;
        line-height: 1.2;
        white-space: nowrap;
    }

    .ocm-dashboard-chart {
        inline-size: 100%;
        block-size: clamp(16rem, 35vh, 24rem);
    }

    .ocm-lot-pill-edit {
        padding-inline: 0.6rem;
        min-height: 1.65rem;
    }

    /* Shared WMS/INV operational UI system. */
    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) {
        --wms-radius: 8px;
        --wms-row-hover: color-mix(in srgb, var(--rz-primary) 5%, var(--wms-panel-bg));
        --wms-grid-frame: color-mix(in srgb, var(--wms-border) 58%, transparent);
        --wms-grid-header-bg: color-mix(in srgb, var(--rz-primary) 4%, var(--wms-panel-bg));
        --wms-grid-header-line: color-mix(in srgb, var(--wms-border) 68%, transparent);
        --wms-grid-line: color-mix(in srgb, var(--wms-border) 38%, transparent);
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-card, .rz-fieldset),
    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.inv-header, .inv-panel, .inv-stats, .trace-hero, .trace-search-panel, .trace-panel, .output-hero, .output-panel, .output-grid .output-card, .sig-tile, .alert-tile, .trace-summary-grid > div, .inv-stat) {
        background: var(--wms-panel-bg) !important;
        border: 1px solid var(--wms-border) !important;
        border-radius: var(--wms-radius) !important;
        color: var(--wms-text) !important;
        box-shadow: none !important;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.inv-header, .trace-hero, .output-hero) {
        background: var(--wms-panel-soft) !important;
        border-color: var(--wms-border-soft) !important;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.sig-tile, .alert-tile, .trace-summary-grid > div, .inv-stat) {
        background: var(--wms-panel-soft) !important;
        min-width: 0;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-datatable, .rz-data-grid) {
        width: 100%;
        background: var(--wms-panel-bg) !important;
        border: 1px solid var(--wms-grid-frame) !important;
        border-radius: var(--wms-radius) !important;
        color: var(--wms-text) !important;
        overflow: hidden;
        box-shadow: none !important;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-datatable-tablewrapper, .rz-grid-table-wrapper) {
        overflow: auto;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-datatable-thead > tr > th, .rz-grid-table thead th, .rz-column-title) {
        background: var(--wms-grid-header-bg) !important;
        color: var(--wms-text) !important;
        border: 0 !important;
        box-shadow: none !important;
        font-weight: 800;
        letter-spacing: 0;
        white-space: nowrap;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-datatable-data > tr > td, .rz-grid-table tbody td) {
        border: 0 !important;
        box-shadow: none !important;
        color: var(--wms-text) !important;
        vertical-align: middle;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-datatable-data > tr, .rz-grid-table tbody tr, .rz-datatable-table, .rz-grid-table, .rz-cell-data) {
        border: 0 !important;
        box-shadow: none !important;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-datatable-data > tr:hover > td, .rz-grid-table tbody tr:hover td) {
        background: var(--wms-row-hover) !important;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-column-resizer, .rz-resizable-column-handle) {
        width: 10px;
        cursor: col-resize;
        background: transparent !important;
        opacity: .18;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-column-resizer:hover, .rz-resizable-column-handle:hover) {
        background: linear-gradient(90deg, transparent 0 38%, color-mix(in srgb, var(--rz-primary) 38%, var(--wms-border)) 38% 62%, transparent 62% 100%) !important;
        opacity: 1;
    }


    :where(.manufacturing-intelligence-shell, .manufacturing-insights-shell, .qc-checks-shell) .manufacturing-page-header {
        flex-wrap: wrap;
    }

    :where(.manufacturing-intelligence-shell, .manufacturing-insights-shell, .qc-checks-shell) .manufacturing-page-title {
        flex: 1 1 18rem;
        min-width: 0;
    }

    :where(.manufacturing-intelligence-shell, .manufacturing-insights-shell, .qc-checks-shell) .manufacturing-page-title .rz-text-body2 {
        color: var(--wms-muted);
        margin-top: 0.15rem;
    }

    :where(.manufacturing-intelligence-shell, .manufacturing-insights-shell) .manufacturing-signal-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
        gap: 0.75rem;
    }

    :where(.manufacturing-intelligence-shell, .manufacturing-insights-shell) .manufacturing-section-heading {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        flex-wrap: wrap;
    }

    :where(.manufacturing-intelligence-shell, .manufacturing-insights-shell) .manufacturing-section-heading span {
        color: var(--wms-muted);
        font-size: 0.78rem;
        font-weight: 700;
    }

    :where(.manufacturing-intelligence-shell, .manufacturing-insights-shell) .manufacturing-status-badge {
        font-size: 0.72rem;
    }
    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-paginator, .rz-pager) {
        background: var(--wms-panel-bg) !important;
        border-color: var(--wms-border) !important;
        color: var(--wms-muted) !important;
    }

    :where(.wms-theme-scope, .inv-shell, .ocm-shell, .rcm-shell, .kaxxis-ops-shell) :where(.rz-badge, .rz-chip) {
        border-radius: 999px;
        font-weight: 700;
        letter-spacing: 0;
    }
    .wms-theme-scope .rz-button.rz-light,
    .wms-theme-scope .rz-light.rz-button,
    .wms-theme-scope .rz-button-light,
    .wms-theme-scope .rz-button[class*="rz-light"],
    .wms-theme-scope .rz-button[class*="rz-shade-light"],
    .wms-theme-scope .rz-button[class*="light"] {
        background: var(--wms-panel-soft) !important;
        background-color: var(--wms-panel-soft) !important;
        border-color: var(--wms-border-soft) !important;
        color: var(--wms-text) !important;
        box-shadow: none !important;
    }

    .wms-theme-scope .rz-button.rz-secondary,
    .wms-theme-scope .rz-secondary.rz-button,
    .wms-theme-scope .rz-button-secondary,
    .wms-theme-scope .rz-button[class*="rz-secondary"],
    .wms-theme-scope .rz-button[class*="secondary"] {
        background: color-mix(in srgb, var(--rz-secondary, var(--rz-primary)) 18%, var(--wms-panel-bg)) !important;
        background-color: color-mix(in srgb, var(--rz-secondary, var(--rz-primary)) 18%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-secondary, var(--rz-primary)) 42%, var(--wms-border)) !important;
        color: var(--wms-text) !important;
        box-shadow: none !important;
    }

    .wms-theme-scope .rz-button.rz-light:hover,
    .wms-theme-scope .rz-light.rz-button:hover,
    .wms-theme-scope .rz-button-light:hover,
    .wms-theme-scope .rz-button[class*="rz-light"]:hover,
    .wms-theme-scope .rz-button[class*="rz-shade-light"]:hover,
    .wms-theme-scope .rz-button[class*="light"]:hover,
    .wms-theme-scope .rz-button.rz-secondary:hover,
    .wms-theme-scope .rz-secondary.rz-button:hover,
    .wms-theme-scope .rz-button-secondary:hover,
    .wms-theme-scope .rz-button[class*="rz-secondary"]:hover,
    .wms-theme-scope .rz-button[class*="secondary"]:hover {
        background: color-mix(in srgb, var(--rz-primary, #2563eb) 12%, var(--wms-panel-bg)) !important;
        background-color: color-mix(in srgb, var(--rz-primary, #2563eb) 12%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-primary, #2563eb) 45%, var(--wms-border)) !important;
        color: var(--wms-text) !important;
    }

    .wms-theme-scope .rz-button.rz-light *,
    .wms-theme-scope .rz-light.rz-button *,
    .wms-theme-scope .rz-button-light *,
    .wms-theme-scope .rz-button[class*="rz-light"] *,
    .wms-theme-scope .rz-button[class*="rz-shade-light"] *,
    .wms-theme-scope .rz-button[class*="light"] *,
    .wms-theme-scope .rz-button.rz-secondary *,
    .wms-theme-scope .rz-secondary.rz-button *,
    .wms-theme-scope .rz-button-secondary *,
    .wms-theme-scope .rz-button[class*="rz-secondary"] *,
    .wms-theme-scope .rz-button[class*="secondary"] * {
        color: inherit !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#1e293b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #1e293b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#111827"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #111827"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#0f172a"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #0f172a"] {
        background: var(--wms-panel-soft) !important;
        border-color: var(--wms-border-soft) !important;
        color: var(--wms-text) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#0f2744"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #0f2744"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#1e3a5f"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #1e3a5f"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg,#1e293b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg, #1e293b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg,#1e3a5f"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg, #1e3a5f"] {
        background: color-mix(in srgb, var(--rz-primary, #2563eb) 12%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-primary, #2563eb) 36%, var(--wms-border)) !important;
        color: var(--wms-text) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#3a2e1e"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #3a2e1e"] {
        background: color-mix(in srgb, var(--rz-warning, #f59e0b) 16%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-warning, #f59e0b) 38%, var(--wms-border)) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#1a3a2a"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #1a3a2a"] {
        background: color-mix(in srgb, var(--rz-success, #16a34a) 16%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-success, #16a34a) 38%, var(--wms-border)) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#3a1e1e"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #3a1e1e"] {
        background: color-mix(in srgb, var(--rz-danger, #dc2626) 16%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-danger, #dc2626) 38%, var(--wms-border)) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg,#3b82f6"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg, #3b82f6"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(90deg,#3b82f6"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(90deg, #3b82f6"] {
        background: linear-gradient(90deg, var(--rz-primary, #2563eb), color-mix(in srgb, var(--rz-primary, #2563eb) 72%, var(--rz-info, var(--rz-primary, #2563eb)))) !important;
        color: var(--rz-primary-contrast, var(--rz-on-primary, #fff)) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg,#10b981"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg, #10b981"] {
        background: var(--rz-success, #16a34a) !important;
        color: var(--rz-success-contrast, var(--rz-on-success, #fff)) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg,#f59e0b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="linear-gradient(135deg, #f59e0b"] {
        background: var(--rz-warning, #f59e0b) !important;
        color: var(--rz-warning-contrast, var(--rz-on-warning, #111827)) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#38bdf8"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #38bdf8"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#3b82f6"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #3b82f6"] {
        background: var(--rz-primary, #2563eb) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#f59e0b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #f59e0b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#fbbf24"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #fbbf24"] {
        background: var(--rz-warning, #f59e0b) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#10b981"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #10b981"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#34d399"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #34d399"] {
        background: var(--rz-success, #16a34a) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background:#ef4444"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="background: #ef4444"] {
        background: var(--rz-danger, #dc2626) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="#334155"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="#263449"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="#1e293b"] {
        border-color: var(--wms-border) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#e2e8f0"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #e2e8f0"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#cbd5e1"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #cbd5e1"] {
        color: var(--wms-text) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#94a3b8"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #94a3b8"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#64748b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #64748b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#475569"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #475569"] {
        color: var(--wms-muted) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#38bdf8"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #38bdf8"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#93c5fd"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #93c5fd"] {
        color: var(--rz-primary, #2563eb) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#f59e0b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #f59e0b"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#fcd34d"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #fcd34d"] {
        color: var(--rz-warning, #f59e0b) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#10b981"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #10b981"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#34d399"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #34d399"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#6ee7b7"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #6ee7b7"] {
        color: var(--rz-success, #16a34a) !important;
    }

    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#ef4444"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #ef4444"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color:#fca5a5"],
    :where(.wms-dashboard-shell, .wms-operator-shell, .wms-runner-shell) [style*="color: #fca5a5"] {
        color: var(--rz-danger, #dc2626) !important;
    }

    .value-header,
    .insights-header,
    .workbench-header,
    .passport-header {
        border-bottom-color: var(--wms-border) !important;
    }

    .story-hero,
    .recommendation-band,
    .insight-panel,
    .workbench-panel,
    .evidence-panel,
    .table-wrap,
    .empty-state,
    .empty-inline,
    .value-metrics > div,
    .score-grid > div,
    .proof-card,
    .timeline-row,
    .brief-row,
    .recommendation-card,
    .recommendation-evidence,
    .outlier-row,
    .metric-row,
    .workbench-shell .panel,
    .workbench-shell .summary-grid > div,
    .workbench-shell .add-rule-panel,
    .workbench-shell .case-row,
    .workbench-shell .selected-heading,
    .workbench-shell .proof-grid div,
    .workbench-shell .form-grid input,
    .workbench-shell .form-grid select,
    .workbench-shell input,
    .workbench-shell select,
    .workbench-shell textarea,
    .passport-row,
    .score-band div,
    .lot-card,
    .job-row,
    .action-card,
    .brief-card,
    .rule-card,
    .signal-card,
    .opportunity-card,
    .definition-card {
        background: var(--wms-panel-soft) !important;
        border-color: var(--wms-border-soft) !important;
        color: var(--wms-text) !important;
        box-shadow: 0 8px 18px color-mix(in srgb, var(--rz-primary, #2563eb) 5%, transparent) !important;
    }

    .window-switch,
    .mode-switch,
    .rule-toolbar,
    .signal-chip,
    .header-meta span,
    .header-tags span,
    .lot-strip span,
    .priority-pill,
    .status-pill,
    .timeline-row b {
        background: var(--wms-panel-soft-strong) !important;
        border-color: var(--wms-border-soft) !important;
        color: var(--wms-text) !important;
    }

    .workbench-shell .collapsible-panel[open] > summary.section-title-row,
    .workbench-shell .kv,
    .workbench-shell .evidence-line {
        border-color: var(--wms-border) !important;
    }

    .workbench-shell .collapsible-panel > summary.section-title-row::before {
        border-left-color: var(--wms-muted) !important;
    }

    .workbench-shell input,
    .workbench-shell select,
    .workbench-shell textarea {
        outline-color: var(--rz-primary, #2563eb) !important;
    }

    .workbench-shell input:focus,
    .workbench-shell select:focus,
    .workbench-shell textarea:focus {
        border-color: var(--rz-primary, #2563eb) !important;
        box-shadow: 0 0 0 2px color-mix(in srgb, var(--rz-primary, #2563eb) 18%, transparent) !important;
    }

    .window-switch button,
    .mode-switch button,
    .value-shell small,
    .value-shell td small,
    .value-shell .neutral,
    .insights-shell small,
    .workbench-shell small,
    .passport-shell small,
    .muted,
    .neutral,
    .row-meta,
    .row-stats,
    .header-meta,
    .section-title-row span,
    .score-grid span,
    .score-grid small,
    .value-metrics span,
    .value-metrics small,
    .proof-topline span,
    .timeline-row span,
    .recommendation-card p,
    .recommendation-evidence small,
    .workbench-shell .card-topline,
    .workbench-shell .rule-copy p,
    .workbench-shell .rule-actions small,
    .workbench-shell .case-row small,
    .workbench-shell .selected-heading p,
    .workbench-shell .proof-heading span,
    .workbench-shell .proof-grid span,
    .workbench-shell .proof-grid small,
    .workbench-shell .proof-card p,
    .workbench-shell label span,
    .workbench-shell input:disabled,
    .outlier-row small,
    .metric-row small,
    .kv span,
    .evidence-line span,
    .timeline-event time,
    .timeline-event span {
        color: var(--wms-muted) !important;
    }

    .value-shell h1,
    .value-shell h2,
    .value-shell h3,
    .value-shell strong,
    .value-metrics strong,
    .score-grid strong,
    .proof-footer strong,
    .workbench-shell .summary-grid strong,
    .workbench-shell .recommendation-evidence span,
    .workbench-shell .rule-copy strong,
    .workbench-shell .case-row strong,
    .workbench-shell .proof-grid strong,
    .insights-shell h1,
    .insights-shell h2,
    .insights-shell h3,
    .insights-shell strong,
    .workbench-shell h1,
    .workbench-shell h2,
    .workbench-shell h3,
    .workbench-shell strong,
    .passport-shell h1,
    .passport-shell h2,
    .passport-shell h3,
    .passport-shell strong,
    .kv strong,
    .evidence-line strong {
        color: var(--wms-text) !important;
    }

    .eyebrow,
    .hero-copy span,
    .lot-title,
    .link-button,
    .manager-narrative {
        color: var(--rz-primary, #2563eb) !important;
    }

    .primary-button {
        background: var(--rz-primary, #2563eb) !important;
        border-color: var(--rz-primary, #2563eb) !important;
        color: var(--rz-primary-contrast, var(--rz-on-primary, #fff)) !important;
    }

    .ghost-button,
    .mini-button {
        background: var(--wms-panel-soft) !important;
        border-color: var(--wms-border-soft) !important;
        color: var(--wms-text) !important;
    }

    .danger-button {
        background: var(--rz-danger, #dc2626) !important;
        border-color: var(--rz-danger, #dc2626) !important;
        color: var(--rz-danger-contrast, var(--rz-on-danger, #fff)) !important;
    }

    .wms-stat-card,
    .insights-shell .score-grid > div,
    .workbench-shell .summary-grid > div,
    .value-shell .value-metrics > div,
    .passport-shell .score-band div {
        background: color-mix(in srgb, var(--rz-primary, #2563eb) 18%, var(--wms-panel-bg)) !important;
        background-color: color-mix(in srgb, var(--rz-primary, #2563eb) 18%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-primary, #2563eb) 42%, var(--wms-border)) !important;
        color: var(--wms-text) !important;
        box-shadow: 0 8px 20px color-mix(in srgb, var(--rz-primary, #2563eb) 8%, transparent) !important;
    }

    .wms-stat-card *,
    .insights-shell .score-grid > div *,
    .workbench-shell .summary-grid > div *,
    .value-shell .value-metrics > div *,
    .passport-shell .score-band div * {
        color: inherit !important;
    }

    .wms-stat-card span,
    .wms-stat-card small,
    .insights-shell .score-grid > div span,
    .insights-shell .score-grid > div small,
    .workbench-shell .summary-grid > div span,
    .workbench-shell .summary-grid > div small,
    .value-shell .value-metrics > div span,
    .value-shell .value-metrics > div small,
    .passport-shell .score-band div span,
    .passport-shell .score-band div small {
        opacity: 0.82;
    }

    .value-shell .impact-dial {
        background: color-mix(in srgb, var(--rz-primary, #2563eb) 18%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-primary, #2563eb) 42%, var(--wms-border)) !important;
        color: var(--wms-text) !important;
        box-shadow: 0 8px 20px color-mix(in srgb, var(--rz-primary, #2563eb) 8%, transparent) !important;
    }

    .value-shell .impact-dial * {
        color: inherit !important;
    }

    .value-shell .impact-dial span,
    .value-shell .impact-dial small {
        opacity: 0.82;
    }

    :is(.value-shell, .insights-shell, .workbench-shell, .passport-shell) .header-actions .ghost-button,
    :is(.value-shell, .insights-shell, .workbench-shell, .passport-shell) .hero-links .ghost-button {
        background: color-mix(in srgb, var(--rz-primary, #2563eb) 16%, var(--wms-panel-bg)) !important;
        border-color: color-mix(in srgb, var(--rz-primary, #2563eb) 45%, var(--wms-border)) !important;
        color: var(--rz-primary, #2563eb) !important;
    }

    :is(.value-shell, .insights-shell, .workbench-shell, .passport-shell) .header-actions .ghost-button:hover,
    :is(.value-shell, .insights-shell, .workbench-shell, .passport-shell) .hero-links .ghost-button:hover {
        background: color-mix(in srgb, var(--rz-primary, #2563eb) 24%, var(--wms-panel-bg)) !important;
    }

    .window-switch button.active,
    .mode-switch button.active,
    .workbench-shell .case-row.selected,
    .workbench-shell .rule-card.enabled {
        background: color-mix(in srgb, var(--rz-primary, #2563eb) 18%, var(--wms-panel-bg)) !important;
        color: var(--rz-primary, #2563eb) !important;
        border-color: color-mix(in srgb, var(--rz-primary, #2563eb) 48%, var(--wms-border)) !important;
    }

    .good,
    .good-text,
    .severity.good,
    .status-pill.targetmet,
    .timeline-row.good b {
        color: var(--rz-success, #16a34a) !important;
    }

    .warn,
    .warn-text,
    .severity.warning,
    .status-pill.tracking,
    .timeline-row.tracking b {
        color: var(--rz-warning, #f59e0b) !important;
    }

    .bad,
    .severity.critical,
    .status-pill.needsattention,
    .timeline-row.bad b {
        color: var(--rz-danger, #dc2626) !important;
    }
}
/* RCM Usage Radar hand-off spotlight */
.rcm-usage-spotlight {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.75rem 0.85rem;
    border: 1px solid color-mix(in srgb, var(--rz-warning) 34%, var(--rz-border-color));
    border-radius: 8px;
    background: color-mix(in srgb, var(--rz-warning) 10%, var(--rz-card-background-color, var(--rz-base-background-color)));
    color: var(--rz-text-color);
}

.rcm-usage-spotlight-icon {
    color: var(--rz-warning);
    font-size: 1.35rem;
}

.rcm-usage-spotlight-copy {
    min-width: 0;
}

.rcm-usage-spotlight-title {
    font-size: 0.72rem;
    font-weight: 850;
    color: var(--rz-warning);
    text-transform: uppercase;
    letter-spacing: 0;
}

.rcm-usage-spotlight-message {
    margin-top: 0.12rem;
    font-size: 0.9rem;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.rcm-usage-spotlight-hint {
    margin-top: 0.1rem;
    font-size: 0.76rem;
    color: var(--rz-text-secondary-color, var(--rz-text-secondary));
}

.rcm-usage-spotlight-clear {
    width: 2rem;
    height: 2rem;
    border: 1px solid color-mix(in srgb, var(--rz-warning) 32%, var(--rz-border-color));
    border-radius: 8px;
    background: color-mix(in srgb, var(--rz-warning) 8%, transparent);
    color: var(--rz-text-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.rcm-usage-spotlight-clear .material-icons {
    font-size: 1.05rem;
}

.rz-data-grid-data tr.rcm-usage-spotlight-row > td,
tr.rcm-usage-spotlight-row > td {
    background: color-mix(in srgb, var(--rz-warning) 15%, var(--rz-grid-cell-background-color, var(--rz-card-background-color, var(--rz-base-background-color)))) !important;
    box-shadow: inset 4px 0 0 var(--rz-warning);
}

/* KAXXIS user theme overrides */
.theme-selector-control {
    flex-wrap: nowrap;
}

.theme-selector-control .rz-dropdown {
    min-width: 0;
}

.theme-editor-launch.rz-button {
    width: 2.25rem;
    height: 2.25rem;
    min-width: 2.25rem;
    padding: 0;
}

.theme-editor-dialog {
    color: var(--rz-text-color);
}

.theme-editor-preview {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    min-height: 190px;
    overflow: hidden;
    border: 1px solid var(--rz-border-color);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rz-text-color) 6%, transparent);
}

.theme-preview-sidebar {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
    padding: 1rem 0.85rem;
}

.theme-preview-sidebar span {
    display: block;
    height: 0.55rem;
    border-radius: 999px;
    background: color-mix(in srgb, currentColor 72%, transparent);
}

.theme-preview-main {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 0.85rem;
    padding: 1rem;
}

.theme-preview-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 2.5rem;
    padding: 0 0.75rem;
}

.theme-preview-header span,
.theme-preview-header strong,
.theme-preview-line,
.theme-preview-actions span {
    display: block;
    border-radius: 999px;
    background: color-mix(in srgb, white 68%, transparent);
}

.theme-preview-header span {
    width: 7rem;
    height: 0.65rem;
}

.theme-preview-header strong {
    width: 2.4rem;
    height: 1.2rem;
}

.theme-preview-card {
    padding: 1rem;
    border: 1px solid color-mix(in srgb, var(--rz-text-color) 16%, transparent);
}

.theme-preview-line {
    height: 0.65rem;
    width: 45%;
    margin-bottom: 0.65rem;
}

.theme-preview-line.wide {
    width: 72%;
}

.theme-preview-actions {
    display: flex;
    gap: 0.45rem;
    padding-top: 0.3rem;
}

.theme-preview-actions span {
    width: 4.5rem;
    height: 1.45rem;
}

.theme-editor-section-title {
    grid-column: 1 / -1;
    margin-top: 0.25rem;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    color: var(--rz-text-secondary-color, var(--rz-text-secondary));
}

.theme-preview-heading {
    width: 42%;
    height: 0.8rem;
    margin-bottom: 0.75rem;
}

.theme-preview-status {
    display: flex;
    gap: 0.4rem;
    padding-top: 0.65rem;
}

.theme-preview-status span {
    display: block;
    width: 1.45rem;
    height: 0.65rem;
    border-radius: 999px;
}

.theme-editor-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.theme-color-row,
.theme-slider-row {
    min-width: 0;
    padding: 0.75rem;
    border: 1px solid var(--rz-border-color);
    border-radius: var(--kaxxis-user-radius, 8px);
    background: color-mix(in srgb, var(--rz-card-background-color, var(--rz-base-background-color)) 92%, var(--rz-text-color) 8%);
}

.theme-color-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.theme-color-row > span:first-child,
.theme-slider-row > span:first-child {
    font-weight: 700;
}

.theme-color-meta {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.theme-color-swatch {
    width: 1.6rem;
    height: 1.6rem;
    border: 1px solid color-mix(in srgb, var(--rz-text-color) 24%, transparent);
    border-radius: 999px;
}

.theme-color-meta input[type="color"] {
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.theme-slider-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.theme-slider-row {
    display: grid;
    grid-template-columns: minmax(90px, auto) minmax(0, 1fr) 48px;
    align-items: center;
    gap: 0.75rem;
}

.theme-slider-row input[type="range"] {
    width: 100%;
    accent-color: var(--rz-primary);
}

.theme-slider-row strong {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

html[data-user-theme] .modern-header {
    background: var(--kaxxis-user-header-bg) !important;
}

html[data-user-theme] .rz-sidebar {
    background: var(--kaxxis-user-sidebar-color, var(--rz-sidebar-background-color)) !important;
}

html[data-user-theme] :where(.rz-card, .rz-fieldset, .rz-dialog, .rz-button, .rz-inputtext, .rz-dropdown, .rz-numeric, .rz-textarea, .rz-panel, .rz-tabview-panels) {
    border-radius: var(--kaxxis-user-radius, var(--rz-border-radius, 4px));
}

html[data-user-theme] body,
html[data-user-theme] .rz-body,
html[data-user-theme] .rz-dialog,
html[data-user-theme] .rz-card,
html[data-user-theme] .rz-panel {
    color: var(--kaxxis-user-text-color, var(--rz-text-color));
}

html[data-user-theme] :where(h1, h2, h3, h4, h5, h6, .rz-text-h1, .rz-text-h2, .rz-text-h3, .rz-text-h4, .rz-text-subtitle1, .rz-text-subtitle2) {
    color: var(--kaxxis-user-heading-color, var(--kaxxis-user-text-color, var(--rz-text-color)));
}

html[data-user-theme] :where(.rz-text-secondary, .rz-helper-text, .rz-form-field-label, .rz-label, .text-muted) {
    color: var(--kaxxis-user-muted-text-color, var(--rz-text-secondary-color, var(--rz-text-secondary, var(--rz-text-color))));
}

html[data-user-theme] .rz-sidebar,
html[data-user-theme] .rz-sidebar .rz-panel-menu {
    color: var(--kaxxis-user-sidebar-text-color, var(--rz-panel-menu-color, var(--rz-text-color)));
}

html[data-user-theme] .rz-sidebar .rz-panel-menu .rz-navigation-item-link,
html[data-user-theme] .rz-sidebar .rz-panel-menu .rz-navigation-item-text,
html[data-user-theme] .rz-sidebar .rz-panel-menu .rz-navigation-item-icon {
    color: var(--kaxxis-user-nav-text-color, var(--rz-menu-item-color, var(--rz-text-color))) !important;
}
@media (max-width: 640px) {
    .theme-editor-preview,
    .theme-editor-grid,
    .theme-slider-grid {
        grid-template-columns: 1fr;
    }

    .theme-preview-sidebar {
        display: none;
    }
}

/* KAXXIS Material Dark navigation contrast overrides */
html[data-theme="material-dark"] {
    --kaxxis-material-dark-page-bg: #17151b;
    --kaxxis-material-dark-panel-bg: #25232c;
    --kaxxis-material-dark-panel-soft-bg: #2d2a35;
    --kaxxis-material-dark-border: #514b5d;
    --kaxxis-material-dark-border-soft: #423c4d;
    --kaxxis-material-dark-muted: #c9c1d1;
    --rz-base-background-color: var(--kaxxis-material-dark-page-bg);
    --rz-card-background-color: var(--kaxxis-material-dark-panel-bg);
    --rz-grid-background-color: var(--kaxxis-material-dark-panel-bg);
    --rz-grid-cell-background-color: var(--kaxxis-material-dark-panel-bg);
    --rz-border-color: var(--kaxxis-material-dark-border);
    --rz-text-secondary-color: var(--kaxxis-material-dark-muted);
    --rz-text-secondary: var(--kaxxis-material-dark-muted);
}

html[data-theme="material-dark"] body,
html[data-theme="material-dark"] .rz-body {
    background: var(--kaxxis-material-dark-page-bg);
}

html[data-theme="material-dark"] :where(.rz-card, .rz-fieldset, .rz-panel, .rz-dialog, .rz-dialog-content, .rz-tabview-panels, .rz-accordion-content, .rz-data-grid, .rz-datatable) {
    background-color: var(--kaxxis-material-dark-panel-bg);
    border-color: var(--kaxxis-material-dark-border);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .26), inset 0 1px 0 rgba(255, 255, 255, .045);
}

html[data-theme="material-dark"] :where(.rz-card .rz-card, .rz-panel .rz-card, .rz-dialog .rz-card, .rz-fieldset, .rz-tabview-panels, .rz-grid-table thead th, .rz-datatable-thead > tr > th) {
    background-color: var(--kaxxis-material-dark-panel-soft-bg);
    border-color: var(--kaxxis-material-dark-border-soft);
}
html[data-theme="material-dark"] .rz-sidebar .rz-panel-menu {
    --rz-panel-menu-item-2nd-level-color: var(--rz-text-color);
    --rz-panel-menu-item-2nd-level-background-color: var(--kaxxis-menu-2-bg, color-mix(in srgb, var(--rz-base-background-color) 92%, var(--rz-text-color) 8%));
    --rz-panel-menu-item-2nd-level-hover-background-color: var(--kaxxis-menu-2-hover-bg, color-mix(in srgb, var(--rz-base-background-color) 86%, var(--rz-text-color) 14%));
    --rz-panel-menu-item-3rd-level-color: var(--rz-text-color);
    --rz-panel-menu-item-3rd-level-background-color: var(--kaxxis-menu-3-bg, color-mix(in srgb, var(--rz-base-background-color) 88%, var(--rz-text-color) 12%));
    --rz-panel-menu-item-3rd-level-hover-background-color: var(--kaxxis-menu-3-hover-bg, color-mix(in srgb, var(--rz-base-background-color) 82%, var(--rz-text-color) 18%));
}

html[data-theme="material-dark"] .rz-sidebar .rz-panel-menu .rz-navigation-menu {
    background: var(--kaxxis-menu-nav-bg, color-mix(in srgb, var(--rz-base-background-color) 96%, var(--rz-text-color) 4%));
    box-shadow: var(--kaxxis-menu-nav-shadow, inset 2px 0 0 color-mix(in srgb, var(--rz-text-color) 18%, transparent));
}

html[data-theme="material-dark"] .rz-sidebar .rz-panel-menu .rz-navigation-menu .rz-navigation-menu {
    background: var(--kaxxis-menu-subnav-bg, color-mix(in srgb, var(--rz-base-background-color) 92%, var(--rz-text-color) 8%));
    box-shadow: var(--kaxxis-menu-subnav-shadow, inset 2px 0 0 color-mix(in srgb, var(--rz-text-color) 24%, transparent));
}
/* Operator display themes: applied to the live tablet and builder preview. */
.operator-display {
    --operator-base-size: 17px;
    --operator-font-base: 17px;
    --operator-micro-size: 13px;
    --operator-tiny-size: 13px;
    --operator-small-size: 14px;
    --operator-body-size: 16px;
    --operator-control-size: 16px;
    --operator-value-size: 18px;
    --operator-section-title-size: 20px;
    --operator-job-title-size: 22px;
    --operator-action-title-size: 24px;
    --operator-timer-size: 28px;
    --operator-instruction-size: 18px;
    --operator-param-instruction-size: 17px;
    --operator-criteria-heading-size: 14px;
    --operator-criteria-size: 16px;
    --operator-instruction-line-height: 1.55;
    --operator-bg: var(--rz-base-background-color, #ffffff);
    --operator-text: var(--rz-text-color, #111827);
    --operator-muted: var(--rz-text-secondary-color, var(--rz-text-secondary, #4b5563));
    --operator-panel-bg: var(--rz-card-background-color, var(--rz-base-background-color, #ffffff));
    --operator-panel-soft: var(--rz-surface-hover, var(--rz-base-100, #f8fafc));
    --operator-panel-strong: color-mix(in srgb, var(--rz-primary, #2563eb) 10%, var(--operator-panel-bg));
    --operator-border: var(--rz-border-color, #d1d5db);
    --operator-primary: var(--rz-primary, #2563eb);
    --operator-info: var(--rz-info, #0284c7);
    --operator-success: var(--rz-success, #16a34a);
    --operator-warning: var(--rz-warning, #d97706);
    --operator-danger: var(--rz-danger, #dc2626);
    --operator-on-primary: var(--rz-on-primary, #ffffff);
    --operator-action-primary-bg: #1d4ed8;
    --operator-action-info-bg: #0369a1;
    --operator-action-success-bg: #15803d;
    --operator-action-warning-bg: #92400e;
    --operator-action-danger-bg: #b91c1c;
    --operator-on-info: #ffffff;
    --operator-on-success: #ffffff;
    --operator-on-warning: #ffffff;
    --operator-on-danger: #ffffff;
    --operator-action-muted-bg: color-mix(in srgb, var(--operator-text) 10%, var(--operator-panel-bg));
    --operator-action-muted-text: var(--operator-text);
    --operator-action-disabled-bg: color-mix(in srgb, var(--operator-text) 7%, var(--operator-panel-bg));
    --operator-action-disabled-text: color-mix(in srgb, var(--operator-muted) 70%, var(--operator-panel-bg));
    --operator-link-color: var(--operator-primary);
    --wms-panel-bg: var(--operator-panel-bg);
    --wms-panel-alt: var(--operator-panel-soft);
    --wms-panel-soft: color-mix(in srgb, var(--operator-primary) 7%, var(--operator-panel-bg));
    --wms-panel-soft-strong: var(--operator-panel-strong);
    --wms-border: var(--operator-border);
    --wms-border-soft: color-mix(in srgb, var(--operator-primary) 34%, var(--operator-border));
    --wms-muted: var(--operator-muted);
    --wms-text: var(--operator-text);
    font-size: var(--operator-font-base);
}

.operator-display-theme-comfortable {
    --operator-base-size: 18px;
    --operator-font-base: 18px;
    --operator-micro-size: 14px;
    --operator-tiny-size: 14px;
    --operator-small-size: 15px;
    --operator-body-size: 17px;
    --operator-control-size: 17px;
    --operator-value-size: 19px;
    --operator-section-title-size: 21px;
    --operator-job-title-size: 23px;
    --operator-action-title-size: 26px;
    --operator-timer-size: 30px;
    --operator-instruction-size: 20px;
    --operator-param-instruction-size: 18px;
    --operator-criteria-heading-size: 15px;
    --operator-criteria-size: 17px;
    --operator-instruction-line-height: 1.58;
}

.operator-display-theme-large {
    --operator-base-size: 19px;
    --operator-font-base: 19px;
    --operator-micro-size: 15px;
    --operator-tiny-size: 15px;
    --operator-small-size: 16px;
    --operator-body-size: 18px;
    --operator-control-size: 18px;
    --operator-value-size: 20px;
    --operator-section-title-size: 23px;
    --operator-job-title-size: 25px;
    --operator-action-title-size: 28px;
    --operator-timer-size: 32px;
    --operator-instruction-size: 21px;
    --operator-param-instruction-size: 19px;
    --operator-criteria-heading-size: 16px;
    --operator-criteria-size: 18px;
    --operator-instruction-line-height: 1.6;
}

.operator-display-theme-extra-large {
    --operator-base-size: 21px;
    --operator-font-base: 21px;
    --operator-micro-size: 16px;
    --operator-tiny-size: 16px;
    --operator-small-size: 18px;
    --operator-body-size: 20px;
    --operator-control-size: 20px;
    --operator-value-size: 23px;
    --operator-section-title-size: 26px;
    --operator-job-title-size: 29px;
    --operator-action-title-size: 32px;
    --operator-timer-size: 38px;
    --operator-instruction-size: 24px;
    --operator-param-instruction-size: 22px;
    --operator-criteria-heading-size: 18px;
    --operator-criteria-size: 20px;
    --operator-instruction-line-height: 1.64;
}

.operator-display-theme-instruction-focus {
    --operator-base-size: 18px;
    --operator-font-base: 18px;
    --operator-micro-size: 14px;
    --operator-tiny-size: 14px;
    --operator-small-size: 15px;
    --operator-body-size: 17px;
    --operator-control-size: 17px;
    --operator-value-size: 19px;
    --operator-section-title-size: 22px;
    --operator-job-title-size: 24px;
    --operator-action-title-size: 27px;
    --operator-timer-size: 31px;
    --operator-instruction-size: 24px;
    --operator-param-instruction-size: 21px;
    --operator-criteria-heading-size: 16px;
    --operator-criteria-size: 18px;
    --operator-instruction-line-height: 1.7;
}

.operator-display-theme-high-contrast {
    --operator-base-size: 19px;
    --operator-font-base: 19px;
    --operator-micro-size: 15px;
    --operator-tiny-size: 15px;
    --operator-small-size: 16px;
    --operator-body-size: 18px;
    --operator-control-size: 18px;
    --operator-value-size: 21px;
    --operator-section-title-size: 24px;
    --operator-job-title-size: 27px;
    --operator-action-title-size: 30px;
    --operator-timer-size: 36px;
    --operator-instruction-size: 22px;
    --operator-param-instruction-size: 20px;
    --operator-criteria-heading-size: 17px;
    --operator-criteria-size: 19px;
    --operator-instruction-line-height: 1.65;
    --operator-bg: #000000;
    --operator-text: #ffffff;
    --operator-muted: #f3f4f6;
    --operator-panel-bg: #050505;
    --operator-panel-soft: #171717;
    --operator-panel-strong: #262626;
    --operator-border: #ffffff;
    --operator-primary: #7dd3fc;
    --operator-info: #67e8f9;
    --operator-success: #86efac;
    --operator-warning: #fde047;
    --operator-danger: #fca5a5;
    --operator-on-primary: #000000;
    --operator-action-primary-bg: #7dd3fc;
    --operator-action-info-bg: #67e8f9;
    --operator-action-success-bg: #86efac;
    --operator-action-warning-bg: #fde047;
    --operator-action-danger-bg: #fca5a5;
    --operator-on-info: #000000;
    --operator-on-success: #000000;
    --operator-on-warning: #000000;
    --operator-on-danger: #000000;
    --operator-action-muted-bg: #262626;
    --operator-action-muted-text: #ffffff;
    --operator-action-disabled-bg: #111111;
    --operator-action-disabled-text: #a3a3a3;
    --operator-link-color: #7dd3fc;
    --rz-base-background-color: var(--operator-bg);
    --rz-card-background-color: var(--operator-panel-bg);
    --rz-surface-hover: var(--operator-panel-soft);
    --rz-base-100: var(--operator-panel-soft);
    --rz-text-color: var(--operator-text);
    --rz-text-secondary-color: var(--operator-muted);
    --rz-text-secondary: var(--operator-muted);
    --rz-border-color: var(--operator-border);
    --rz-primary: var(--operator-primary);
    --rz-info: var(--operator-info);
    --rz-success: var(--operator-success);
    --rz-warning: var(--operator-warning);
    --rz-danger: var(--operator-danger);
    --rz-on-primary: var(--operator-on-primary);
}

.operator-display-theme-high-contrast-light {
    --operator-base-size: 19px;
    --operator-font-base: 19px;
    --operator-micro-size: 15px;
    --operator-tiny-size: 15px;
    --operator-small-size: 16px;
    --operator-body-size: 18px;
    --operator-control-size: 18px;
    --operator-value-size: 21px;
    --operator-section-title-size: 24px;
    --operator-job-title-size: 27px;
    --operator-action-title-size: 30px;
    --operator-timer-size: 36px;
    --operator-instruction-size: 22px;
    --operator-param-instruction-size: 20px;
    --operator-criteria-heading-size: 17px;
    --operator-criteria-size: 19px;
    --operator-instruction-line-height: 1.65;
    --operator-bg: #ffffff;
    --operator-text: #000000;
    --operator-muted: #111827;
    --operator-panel-bg: #ffffff;
    --operator-panel-soft: #f3f4f6;
    --operator-panel-strong: #e5e7eb;
    --operator-border: #111827;
    --operator-primary: #003cff;
    --operator-info: #005fcc;
    --operator-success: #006d3b;
    --operator-warning: #8a4b00;
    --operator-danger: #b00020;
    --operator-on-primary: #ffffff;
    --operator-action-primary-bg: #003cff;
    --operator-action-info-bg: #005fcc;
    --operator-action-success-bg: #006d3b;
    --operator-action-warning-bg: #8a4b00;
    --operator-action-danger-bg: #b00020;
    --operator-on-info: #ffffff;
    --operator-on-success: #ffffff;
    --operator-on-warning: #ffffff;
    --operator-on-danger: #ffffff;
    --operator-action-muted-bg: #e5e7eb;
    --operator-action-muted-text: #000000;
    --operator-action-disabled-bg: #f3f4f6;
    --operator-action-disabled-text: #4b5563;
    --operator-link-color: #003cff;
    --rz-base-background-color: var(--operator-bg);
    --rz-card-background-color: var(--operator-panel-bg);
    --rz-surface-hover: var(--operator-panel-soft);
    --rz-base-100: var(--operator-panel-soft);
    --rz-text-color: var(--operator-text);
    --rz-text-secondary-color: var(--operator-muted);
    --rz-text-secondary: var(--operator-muted);
    --rz-border-color: var(--operator-border);
    --rz-primary: var(--operator-primary);
    --rz-info: var(--operator-info);
    --rz-success: var(--operator-success);
    --rz-warning: var(--operator-warning);
    --rz-danger: var(--operator-danger);
    --rz-on-primary: var(--operator-on-primary);
}

.operator-display-theme-compact {
    --operator-base-size: 15px;
    --operator-font-base: 15px;
    --operator-micro-size: 12px;
    --operator-tiny-size: 12px;
    --operator-small-size: 13px;
    --operator-body-size: 14px;
    --operator-control-size: 14px;
    --operator-value-size: 16px;
    --operator-section-title-size: 18px;
    --operator-job-title-size: 20px;
    --operator-action-title-size: 21px;
    --operator-timer-size: 25px;
    --operator-instruction-size: 16px;
    --operator-param-instruction-size: 15px;
    --operator-criteria-heading-size: 13px;
    --operator-criteria-size: 14px;
    --operator-instruction-line-height: 1.5;
}

.operator-display-theme-high-contrast,
.operator-display-theme-high-contrast-light {
    background: var(--operator-bg) !important;
    color: var(--operator-text) !important;
}

.operator-display-theme-high-contrast input,
.operator-display-theme-high-contrast select,
.operator-display-theme-high-contrast textarea,
.operator-display-theme-high-contrast-light input,
.operator-display-theme-high-contrast-light select,
.operator-display-theme-high-contrast-light textarea {
    background: var(--operator-panel-bg) !important;
    color: var(--operator-text) !important;
    border-color: var(--operator-border) !important;
}

.operator-display-theme-high-contrast [style*="opacity:0.4"],
.operator-display-theme-high-contrast [style*="opacity:0.5"],
.operator-display-theme-high-contrast [style*="opacity:0.6"],
.operator-display-theme-high-contrast-light [style*="opacity:0.4"],
.operator-display-theme-high-contrast-light [style*="opacity:0.5"],
.operator-display-theme-high-contrast-light [style*="opacity:0.6"] {
    opacity: 0.85 !important;
}

.operator-display .kaxxis-instruction-content {
    font-size: var(--operator-instruction-size) !important;
    line-height: var(--operator-instruction-line-height) !important;
    color: inherit;
}

.operator-display-theme-high-contrast .kaxxis-instruction-content,
.operator-display-theme-high-contrast-light .kaxxis-instruction-content {
    color: var(--operator-text) !important;
}

.operator-display .kaxxis-instruction-content a {
    color: var(--operator-link-color) !important;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 0.14em;
}

.operator-display .kaxxis-instruction-content img,
.operator-display .kaxxis-instruction-content video {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0.65rem 0;
    border: 1px solid var(--operator-border);
    border-radius: 6px;
}

.operator-display .kaxxis-instruction-content table {
    font-size: 0.92em;
}

.operator-display .operator-action-button {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    border: 2px solid transparent;
    border-radius: 8px;
    padding: 0.55rem 0.9rem;
    cursor: pointer;
    font-size: var(--operator-control-size);
    font-weight: 900;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.operator-display .operator-action-button svg {
    stroke: currentColor;
}

.operator-display .operator-action-button .material-icons {
    font-size: 1.2em;
}

.operator-display .operator-action-button.is-wide {
    width: 100%;
}

.operator-display .operator-action-button.is-small {
    min-height: 38px;
    padding: 0.42rem 0.72rem;
    font-size: var(--operator-small-size);
}

.operator-display .operator-action-button.is-tiny {
    min-height: 30px;
    padding: 0.18rem 0.55rem;
    font-size: var(--operator-micro-size);
}

.operator-display .operator-action-button.is-pill {
    border-radius: 999px;
}

.operator-display .operator-action-button.intent-primary {
    background: var(--operator-action-primary-bg);
    border-color: var(--operator-action-primary-bg);
    color: var(--operator-on-primary);
}

.operator-display .operator-action-button.intent-info {
    background: var(--operator-action-info-bg);
    border-color: var(--operator-action-info-bg);
    color: var(--operator-on-info);
}

.operator-display .operator-action-button.intent-success {
    background: var(--operator-action-success-bg);
    border-color: var(--operator-action-success-bg);
    color: var(--operator-on-success);
}

.operator-display .operator-action-button.intent-warning {
    background: var(--operator-action-warning-bg);
    border-color: var(--operator-action-warning-bg);
    color: var(--operator-on-warning);
}

.operator-display .operator-action-button.intent-danger {
    background: var(--operator-action-danger-bg);
    border-color: var(--operator-action-danger-bg);
    color: var(--operator-on-danger);
}

.operator-display .operator-action-button.intent-neutral {
    background: var(--operator-action-muted-bg);
    border-color: var(--operator-border);
    color: var(--operator-action-muted-text);
}

.operator-display .operator-action-button:hover,
.operator-display .operator-action-button:focus-visible {
    filter: brightness(1.08);
    outline: 3px solid color-mix(in srgb, currentColor 42%, transparent);
    outline-offset: 2px;
}

.operator-display .operator-action-button:disabled,
.operator-display .operator-action-button[aria-disabled="true"] {
    background: var(--operator-action-disabled-bg) !important;
    border-color: var(--operator-border) !important;
    color: var(--operator-action-disabled-text) !important;
    cursor: default !important;
    filter: none;
    opacity: 1;
}

.operator-display .operator-text-button {
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: var(--operator-muted);
    cursor: pointer;
    font-size: var(--operator-small-size);
    font-weight: 800;
    padding: 0.3rem 0.45rem;
}

.operator-display .operator-text-button:hover,
.operator-display .operator-text-button:focus-visible {
    color: var(--operator-primary);
    border-color: var(--operator-primary);
    outline: none;
}
/* LeatherIQ operator portal */
.operator-portal{height:100vh;min-height:100vh;display:grid;grid-template-rows:auto auto auto 1fr auto;background:var(--operator-bg);color:var(--operator-text);font-family:var(--rz-text-font-family,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif);overflow:hidden;letter-spacing:0}.operator-portal *{box-sizing:border-box}.operator-portal button,.operator-portal input,.operator-portal select{font:inherit;letter-spacing:0}.operator-portal-topbar{min-height:76px;display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,auto) minmax(180px,auto);align-items:center;gap:1rem;padding:.8rem clamp(1rem,2vw,1.6rem);background:color-mix(in srgb,var(--operator-panel-bg) 92%,var(--operator-primary) 8%);border-bottom:1px solid var(--operator-border)}.operator-brand-lockup,.operator-station-strip,.operator-topbar-actions,.operator-tabs,.operator-filters,.operator-job-meta,.operator-job-footer,.operator-lots{display:flex;align-items:center}.operator-brand-lockup{gap:.75rem;min-width:0}.operator-brand-mark{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border:2px solid color-mix(in srgb,var(--operator-primary) 70%,var(--operator-border));border-radius:8px;background:var(--operator-primary);color:var(--operator-on-primary);font-weight:900;font-size:.86rem}.operator-brand-name{font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.05;font-weight:900;white-space:nowrap}.operator-brand-subtitle{margin-top:.18rem;color:var(--operator-muted);font-size:var(--operator-small-size);font-weight:700}.operator-station-strip{justify-content:center;gap:.55rem;flex-wrap:wrap}.operator-station-strip>span{min-height:38px;display:inline-flex;align-items:center;gap:.35rem;max-width:260px;padding:.35rem .65rem;border:1px solid color-mix(in srgb,var(--operator-primary) 32%,var(--operator-border));border-radius:8px;background:var(--operator-panel-soft);font-size:var(--operator-small-size);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operator-station-strip .material-icons{font-size:1.15em;color:var(--operator-primary)}.operator-topbar-actions{justify-content:flex-end;gap:.55rem}.operator-clock{min-width:90px;text-align:right}.operator-clock strong,.operator-clock span{display:block}.operator-clock strong{font-size:var(--operator-section-title-size);line-height:1}.operator-clock span{margin-top:.15rem;color:var(--operator-muted);font-size:var(--operator-tiny-size);font-weight:700}.operator-icon-button{width:48px;height:48px;display:inline-grid;place-items:center;border:1px solid color-mix(in srgb,var(--operator-primary) 32%,var(--operator-border));border-radius:8px;background:var(--operator-panel-bg);color:var(--operator-text);cursor:pointer}.operator-icon-button.soft{width:44px;height:44px;background:var(--operator-panel-soft)}.operator-icon-button:hover,.operator-icon-button:focus-visible,.operator-footer button:hover,.operator-footer button:focus-visible{border-color:var(--operator-primary);color:var(--operator-primary);outline:none}.operator-ribbon{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:.6rem;padding:.75rem clamp(1rem,2vw,1.6rem);background:color-mix(in srgb,var(--operator-panel-bg) 88%,var(--operator-panel-soft) 12%);border-bottom:1px solid color-mix(in srgb,var(--operator-border) 78%,transparent)}.operator-kpi{min-height:74px;display:flex;flex-direction:column;justify-content:center;gap:.25rem;text-align:left;padding:.65rem .8rem;border:1px solid var(--operator-border);border-radius:8px;background:var(--operator-panel-bg);color:var(--operator-text)}button.operator-kpi{cursor:pointer}.operator-kpi span{color:var(--operator-muted);font-size:var(--operator-tiny-size);font-weight:800}.operator-kpi strong{font-size:clamp(1.5rem,2.3vw,2.35rem);line-height:1;font-weight:900}.operator-kpi.danger{border-color:color-mix(in srgb,var(--operator-danger) 55%,var(--operator-border))}.operator-kpi.active{border-color:color-mix(in srgb,var(--operator-primary) 55%,var(--operator-border))}.operator-kpi.timer{border-color:color-mix(in srgb,var(--operator-info) 55%,var(--operator-border))}.operator-kpi.ready{border-color:color-mix(in srgb,var(--operator-success) 55%,var(--operator-border))}.operator-kpi.next{border-color:color-mix(in srgb,var(--operator-warning) 55%,var(--operator-border))}.operator-tools{display:grid;grid-template-columns:minmax(340px,1.1fr) minmax(340px,.9fr);gap:.75rem;padding:.75rem clamp(1rem,2vw,1.6rem);border-bottom:1px solid color-mix(in srgb,var(--operator-border) 70%,transparent);background:var(--operator-bg)}.operator-tabs{gap:.45rem;min-width:0;overflow-x:auto;scrollbar-width:thin}.operator-tab{min-width:118px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .55rem;border:1px solid var(--operator-border);border-radius:8px;background:var(--operator-panel-bg);color:var(--operator-text);cursor:pointer;font-size:var(--operator-small-size);font-weight:850;white-space:nowrap}.operator-tab .material-icons{font-size:1.25em;color:var(--operator-muted)}.operator-tab strong{min-width:24px;height:24px;display:inline-grid;place-items:center;border-radius:8px;background:var(--operator-panel-soft);font-size:var(--operator-tiny-size)}.operator-tab.is-active{border-color:var(--operator-primary);background:color-mix(in srgb,var(--operator-primary) 16%,var(--operator-panel-bg))}.operator-tab.is-active .material-icons{color:var(--operator-primary)}.operator-filters{justify-content:flex-end;gap:.5rem;min-width:0}.operator-search{min-width:210px;max-width:360px;flex:1 1 220px;height:44px;display:flex;align-items:center;gap:.4rem;padding:0 .65rem;border:1px solid var(--operator-border);border-radius:8px;background:var(--operator-panel-bg)}.operator-search .material-icons{color:var(--operator-muted)}.operator-search input{width:100%;min-width:0;border:0;outline:none;background:transparent;color:var(--operator-text);font-size:var(--operator-small-size)}.operator-select{min-width:140px;display:flex;flex-direction:column;gap:.18rem}.operator-select span{color:var(--operator-muted);font-size:var(--operator-micro-size);font-weight:900}.operator-select select{height:44px;width:100%;border:1px solid var(--operator-border);border-radius:8px;background:var(--operator-panel-bg);color:var(--operator-text);padding:0 .55rem;font-size:var(--operator-small-size);font-weight:800}.operator-stage{overflow:auto;padding:.9rem clamp(1rem,2vw,1.6rem) 1.2rem;background:color-mix(in srgb,var(--operator-bg) 96%,var(--operator-primary) 4%)}.operator-job-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:.85rem;align-items:stretch}.operator-job-card{min-height:336px;display:flex;flex-direction:column;gap:.75rem;border:1px solid var(--operator-border);border-left-width:6px;border-radius:8px;background:var(--operator-panel-bg);color:var(--operator-text);padding:.85rem;cursor:pointer;box-shadow:0 12px 28px color-mix(in srgb,#000 16%,transparent)}.operator-job-card:hover,.operator-job-card:focus-within{border-color:color-mix(in srgb,var(--operator-primary) 65%,var(--operator-border))}.operator-job-card.is-alarm{border-left-color:var(--operator-danger)}.operator-job-card.is-paused{border-left-color:var(--operator-warning)}.operator-job-card.is-soon{border-left-color:var(--operator-info)}.operator-job-card.is-planned{border-left-color:var(--operator-success)}.operator-job-card.is-running{border-left-color:var(--operator-primary)}.operator-job-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.operator-job-card-top h2{margin:.3rem 0 0;font-size:var(--operator-job-title-size);line-height:1.05;overflow-wrap:anywhere}.operator-status{display:inline-flex;align-items:center;gap:.25rem;min-height:30px;padding:.2rem .45rem;border:1px solid var(--operator-border);border-radius:8px;font-size:var(--operator-tiny-size);font-weight:900}.operator-status .material-icons{font-size:1.1em}.operator-status.inprogress{color:var(--operator-primary);border-color:color-mix(in srgb,var(--operator-primary) 58%,var(--operator-border))}.operator-status.paused{color:var(--operator-warning);border-color:color-mix(in srgb,var(--operator-warning) 58%,var(--operator-border))}.operator-status.planned{color:var(--operator-success);border-color:color-mix(in srgb,var(--operator-success) 58%,var(--operator-border))}.operator-status.cancelled{color:var(--operator-danger);border-color:color-mix(in srgb,var(--operator-danger) 58%,var(--operator-border))}.operator-status.completed{color:var(--operator-success);border-color:color-mix(in srgb,var(--operator-success) 58%,var(--operator-border))}.operator-progress{width:88px;min-height:64px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;flex:0 0 88px;color:var(--operator-muted);font-size:var(--operator-tiny-size);font-weight:800;text-align:right}.operator-progress strong{color:var(--operator-text);font-size:var(--operator-value-size);line-height:1}.operator-progress-track{height:10px;width:100%;overflow:hidden;border-radius:8px;background:color-mix(in srgb,var(--operator-text) 12%,transparent)}.operator-progress-track>div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--operator-primary),var(--operator-success))}.operator-job-name{min-height:48px;font-size:var(--operator-section-title-size);line-height:1.15;font-weight:900;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.operator-job-meta{gap:.45rem;flex-wrap:wrap}.operator-job-meta>span{display:inline-flex;align-items:center;gap:.25rem;min-height:30px;max-width:100%;padding:.18rem .45rem;border-radius:8px;background:var(--operator-panel-soft);color:var(--operator-muted);font-size:var(--operator-tiny-size);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operator-job-meta .material-icons{font-size:1.1em;color:var(--operator-primary)}.operator-next-step{min-height:78px;display:flex;align-items:center;gap:.7rem;padding:.7rem;border:1px solid color-mix(in srgb,var(--operator-primary) 28%,var(--operator-border));border-radius:8px;background:color-mix(in srgb,var(--operator-primary) 9%,var(--operator-panel-bg))}.operator-next-step>.material-icons{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:8px;background:var(--operator-primary);color:var(--operator-on-primary)}.operator-next-step div{min-width:0}.operator-next-step small,.operator-timer small{display:block;color:var(--operator-muted);font-size:var(--operator-tiny-size);font-weight:900}.operator-next-step strong{display:block;margin-top:.12rem;font-size:var(--operator-body-size);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.operator-timer{min-height:66px;display:flex;align-items:center;gap:.65rem;padding:.62rem .7rem;border:1px solid var(--operator-border);border-radius:8px;background:var(--operator-panel-soft)}.operator-timer>.material-icons{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:8px;background:var(--operator-panel-bg);color:var(--operator-muted)}.operator-timer strong{display:block;color:var(--operator-text);font-size:var(--operator-value-size);line-height:1.05;font-weight:950}.operator-timer.alarm{border-color:var(--operator-danger);background:color-mix(in srgb,var(--operator-danger) 18%,var(--operator-panel-bg))}.operator-timer.alarm>.material-icons,.operator-timer.alarm strong{color:var(--operator-danger)}.operator-timer.running,.operator-timer.soon{border-color:color-mix(in srgb,var(--operator-info) 58%,var(--operator-border));background:color-mix(in srgb,var(--operator-info) 12%,var(--operator-panel-bg))}.operator-timer.soon>.material-icons,.operator-timer.soon strong{color:var(--operator-info)}.operator-timer.paused{border-color:color-mix(in srgb,var(--operator-warning) 58%,var(--operator-border));background:color-mix(in srgb,var(--operator-warning) 13%,var(--operator-panel-bg))}.operator-timer.complete{border-color:color-mix(in srgb,var(--operator-success) 58%,var(--operator-border));background:color-mix(in srgb,var(--operator-success) 11%,var(--operator-panel-bg))}.operator-job-footer{justify-content:space-between;gap:.75rem;margin-top:auto}.operator-lots{min-width:0;gap:.3rem;flex-wrap:wrap}.operator-lots span{max-width:110px;min-height:28px;display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:8px;background:var(--operator-panel-soft);color:var(--operator-muted);font-size:var(--operator-micro-size);font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operator-primary-action{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;flex:0 0 auto;border:1px solid var(--operator-action-primary-bg);border-radius:8px;background:var(--operator-action-primary-bg);color:var(--operator-on-primary);padding:.52rem .85rem;cursor:pointer;font-size:var(--operator-control-size);font-weight:950;white-space:nowrap}.operator-primary-action .material-icons{font-size:1.2em}.operator-primary-action:hover,.operator-primary-action:focus-visible{background:color-mix(in srgb,var(--operator-action-primary-bg) 86%,var(--operator-text) 14%);outline:none}.operator-resume-card{width:100%;min-height:72px;display:flex;align-items:center;gap:.75rem;margin-bottom:.85rem;padding:.75rem .9rem;border:1px solid color-mix(in srgb,var(--operator-warning) 60%,var(--operator-border));border-radius:8px;background:color-mix(in srgb,var(--operator-warning) 12%,var(--operator-panel-bg));color:var(--operator-text);cursor:pointer;text-align:left}.operator-resume-card>.material-icons{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:8px;background:var(--operator-warning);color:var(--operator-bg)}.operator-resume-card span{min-width:0;flex:1 1 auto}.operator-resume-card small,.operator-resume-card strong{display:block}.operator-resume-card small{color:var(--operator-muted);font-size:var(--operator-tiny-size);font-weight:900}.operator-resume-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--operator-body-size)}.operator-resume-card em{flex:0 0 auto;font-style:normal;font-size:var(--operator-small-size);font-weight:900;color:var(--operator-warning)}.operator-state-panel{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:2rem;border:1px dashed color-mix(in srgb,var(--operator-border) 80%,transparent);border-radius:8px;background:var(--operator-panel-bg);text-align:center}.operator-state-panel>.material-icons{font-size:3rem;color:var(--operator-muted)}.operator-state-panel strong{font-size:var(--operator-section-title-size)}.operator-state-panel span{color:var(--operator-muted);font-size:var(--operator-body-size)}.operator-state-panel.error>.material-icons,.operator-state-panel.error strong{color:var(--operator-danger)}.operator-footer{min-height:42px;display:flex;align-items:center;justify-content:flex-end;gap:.65rem;padding:.45rem clamp(1rem,2vw,1.6rem);border-top:1px solid var(--operator-border);background:var(--operator-panel-bg);color:var(--operator-muted);font-size:var(--operator-tiny-size);font-weight:800}.operator-footer button{border:1px solid transparent;border-radius:8px;background:transparent;color:var(--operator-muted);padding:.25rem .45rem;cursor:pointer;font-weight:900}.operator-sync-dot{width:10px;height:10px;border-radius:999px;background:var(--operator-success);animation:operatorPulse 1s ease-in-out infinite}@keyframes operatorPulse{0%,100%{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.operator-display-theme-high-contrast .operator-job-card,.operator-display-theme-high-contrast .operator-kpi,.operator-display-theme-high-contrast .operator-state-panel,.operator-display-theme-high-contrast-light .operator-job-card,.operator-display-theme-high-contrast-light .operator-kpi,.operator-display-theme-high-contrast-light .operator-state-panel{box-shadow:none}@media (max-width:1080px){.operator-portal-topbar,.operator-tools{grid-template-columns:1fr}.operator-station-strip,.operator-topbar-actions,.operator-filters{justify-content:flex-start}.operator-ribbon{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media (max-width:720px){.operator-portal{height:auto;min-height:100vh;overflow:auto}.operator-portal-topbar,.operator-ribbon,.operator-tools,.operator-stage,.operator-footer{padding-left:.75rem;padding-right:.75rem}.operator-ribbon{grid-template-columns:repeat(2,minmax(130px,1fr))}.operator-filters,.operator-job-footer{align-items:stretch;flex-direction:column}.operator-search,.operator-select,.operator-primary-action{width:100%;max-width:none}.operator-job-grid{grid-template-columns:1fr}.operator-progress{width:78px;flex-basis:78px}}

/* RCM compact editor wrapping */
.kaxxis-localized-textbox {
    width: 100%;
    max-width: 100%;
    min-width: min(18rem, 100%);
    flex: 1 1 18rem;
}

.kaxxis-localized-textbox-row {
    min-width: 0;
    row-gap: 0.45rem;
}

.kaxxis-localized-textbox-language {
    flex: 0 0 7rem !important;
    max-width: 8.5rem !important;
    min-width: min(7rem, 100%);
}

.kaxxis-localized-textbox-input {
    flex: 1 1 18rem !important;
    max-width: none !important;
    min-width: min(18rem, 100%);
}

.kaxxis-localized-textbox-badge {
    width: 100%;
    max-width: 100%;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    line-height: 1.15;
}

.kaxxis-localized-textbox-actions {
    flex-wrap: wrap;
    min-width: 0;
}

.kaxxis-localized-textbox-actions .rz-button,
.kaxxis-instruction-preview-edit-button,
.kaxxis-instruction-preview-empty-button {
    max-width: 100%;
    flex: 0 0 auto;
    white-space: normal;
}

.kaxxis-localized-textbox-actions .rz-button .rz-button-text,
.kaxxis-instruction-preview-edit-button .rz-button-text,
.kaxxis-instruction-preview-empty-button .rz-button-text {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.kaxxis-instruction-preview-row {
    flex-wrap: wrap;
}

.kaxxis-instruction-preview-copy {
    flex: 1 1 14rem;
}

.kaxxis-instruction-preview-empty-button .rz-button-text,
.kaxxis-instruction-preview-empty-button .rz-stack {
    min-width: 0;
    flex-wrap: wrap;
}

.rcm-stage-node > .rz-stack,
.rcm-process-node > .rz-stack,
.rcm-recipe-node > .rz-stack,
.rcm-formula-node > .rz-stack,
.rcm-action-node > .rz-stack,
.rcm-condition-container-header,
.rcm-loop-container-header,
.rcm-remedial-global > .rz-stack,
.rcm-remedial-tag {
    min-width: 0;
    flex-wrap: wrap;
}

.rcm-stage-node .rz-text,
.rcm-process-node .rz-text,
.rcm-recipe-node .rz-text,
.rcm-formula-node .rz-text,
.rcm-action-node .rz-text,
.rcm-toolbox-item > span,
.rcm-condition-container-label {
    min-width: 0;
    overflow-wrap: anywhere;
}

.rcm-stage-node .rz-button,
.rcm-process-node .rz-button,
.rcm-recipe-node .rz-button,
.rcm-formula-node .rz-button,
.rcm-action-node .rz-button,
.rcm-condition-container-header .rz-button,
.rcm-loop-container-header .rz-button {
    flex: 0 0 auto;
}

.rcm-recipe-node .rz-badge,
.rcm-formula-node .rz-badge,
.rcm-action-node .rz-badge,
.rcm-condition-container-header .rz-badge,
.rcm-loop-container-header .rz-badge {
    max-width: 100%;
    white-space: normal;
    line-height: 1.15;
}

@media (max-width: 640px) {
    .kaxxis-localized-textbox-language,
    .kaxxis-localized-textbox-input {
        flex-basis: 100% !important;
        max-width: 100% !important;
        min-width: 0;
    }
}

/* RCM detail panel space correction */
.kaxxis-localized-textbox {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    flex: 0 1 auto;
}

.kaxxis-localized-textbox-row {
    display: flex;
    align-items: flex-start;
    column-gap: 0.55rem;
    row-gap: 0.35rem;
    min-width: 0;
}

.kaxxis-localized-textbox-language {
    flex: 0 0 clamp(4.75rem, 22%, 7rem) !important;
    max-width: 7rem !important;
    min-width: 4.75rem;
    padding-top: 0.15rem;
}

.kaxxis-localized-textbox-input {
    flex: 1 1 14rem !important;
    max-width: none !important;
    min-width: min(14rem, 100%);
}

.kaxxis-localized-textbox-input .rz-inputtext,
.kaxxis-localized-textbox-input textarea,
.kaxxis-localized-textbox-input input {
    width: 100%;
}

.rcm-formula-name-editor {
    flex: 1 1 18rem;
    min-width: min(16rem, 100%);
}

/* RCM formula detail multi-row layout */
.kaxxis-localized-textbox-row {
    flex-wrap: wrap;
}

.rcm-formula-editor-card {
    display: grid;
    gap: 0.35rem;
    padding: 0.45rem 0.5rem;
    border: 1px solid var(--rz-success);
    border-left: 3px solid var(--rz-success);
    border-radius: 4px;
}

.rcm-formula-editor-main {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 0.45rem;
    min-width: 0;
}

.rcm-formula-editor-main > .rz-icon {
    margin-top: 0.65rem;
}

.rcm-formula-editor-meta {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    justify-content: space-between;
    flex-wrap: wrap;
    min-width: 0;
    padding-left: 1.45rem;
}

.rcm-formula-editor-actions {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    margin-left: auto;
}

.rcm-formula-name-editor {
    flex: none;
    min-width: 0;
}

.rcm-formula-name-editor .kaxxis-localized-textbox-actions {
    margin-top: -0.1rem;
}

/* Localized text compact toolbar final override */
.kaxxis-localized-textbox {
    display: grid;
    gap: 0.35rem;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
    align-self: stretch;
}

.kaxxis-localized-textbox-toolbar {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-wrap: wrap;
    min-width: 0;
    min-height: 1.85rem;
}

.kaxxis-localized-textbox-toolbar .kaxxis-localized-textbox-badge {
    width: auto;
    min-width: 7rem;
    max-width: 11rem;
    padding-inline: 0.65rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kaxxis-localized-textbox-toolbar .rz-button {
    min-height: 1.8rem;
    max-width: 100%;
    white-space: nowrap;
}

.kaxxis-localized-textbox-toolbar .rz-button .rz-button-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.kaxxis-localized-textbox-input {
    width: 100%;
    min-width: 0;
    max-width: 100% !important;
    flex: none !important;
}

.kaxxis-localized-textbox-input .rz-inputtext,
.kaxxis-localized-textbox-input textarea,
.kaxxis-localized-textbox-input input {
    width: 100%;
}

.kaxxis-localized-textbox-translation {
    display: grid;
    gap: 0.3rem;
    padding-top: 0.2rem;
}

@media (max-width: 640px) {
    .kaxxis-localized-textbox-toolbar .kaxxis-localized-textbox-badge {
        flex-basis: auto !important;
        max-width: 11rem !important;
        min-width: 7rem;
    }

    .kaxxis-localized-textbox-input {
        flex-basis: auto !important;
        max-width: 100% !important;
    }
}

/* RCM action builder light theme contrast */
html:not([data-theme*="dark"]) :where(.rcm-builder-shell, .rcm-action-config-panel) {
    --rcm-action-control-bg: color-mix(in srgb, var(--rz-base-background-color, #fff) 78%, var(--rz-text-color, #111827) 22%);
    --rcm-action-control-hover-bg: color-mix(in srgb, var(--rz-primary, #2563eb) 14%, var(--rz-base-background-color, #fff));
    --rcm-action-control-border: color-mix(in srgb, var(--rz-text-color, #111827) 30%, var(--rz-border-color, #d1d5db));
    --rcm-action-control-color: var(--rz-text-color, #111827);
    --rcm-action-control-disabled-bg: color-mix(in srgb, var(--rz-base-background-color, #fff) 88%, var(--rz-text-color, #111827) 12%);
    --rcm-action-control-disabled-color: color-mix(in srgb, var(--rz-text-color, #111827) 62%, var(--rz-base-background-color, #fff));
    --rcm-action-control-disabled-border: color-mix(in srgb, var(--rz-text-color, #111827) 22%, var(--rz-border-color, #d1d5db));
}

html:not([data-theme*="dark"]) :where(.rcm-builder-shell, .rcm-action-config-panel) :where(
    .rcm-recipe-node,
    .rcm-formula-node,
    .rcm-action-node,
    .rcm-condition-container-header,
    .rcm-loop-container-header,
    .kaxxis-localized-textbox-toolbar,
    .kaxxis-instruction-preview
) :where(
    .rz-button.rz-light,
    .rz-light.rz-button,
    .rz-button-light,
    .rz-button[class*="rz-light"],
    .rz-button[class*="rz-shade-light"],
    .rz-button[class*="light"],
    .kaxxis-instruction-preview-icon-button
) {
    background: var(--rcm-action-control-bg) !important;
    background-color: var(--rcm-action-control-bg) !important;
    border: 1px solid var(--rcm-action-control-border) !important;
    color: var(--rcm-action-control-color) !important;
    box-shadow: none !important;
    opacity: 1 !important;
}

html:not([data-theme*="dark"]) :where(.rcm-builder-shell, .rcm-action-config-panel) :where(
    .rcm-recipe-node,
    .rcm-formula-node,
    .rcm-action-node,
    .rcm-condition-container-header,
    .rcm-loop-container-header,
    .kaxxis-localized-textbox-toolbar,
    .kaxxis-instruction-preview
) :where(
    .rz-button.rz-light:not(:disabled):hover,
    .rz-light.rz-button:not(:disabled):hover,
    .rz-button-light:not(:disabled):hover,
    .rz-button[class*="rz-light"]:not(:disabled):hover,
    .rz-button[class*="rz-shade-light"]:not(:disabled):hover,
    .rz-button[class*="light"]:not(:disabled):hover,
    .kaxxis-instruction-preview-icon-button:not(:disabled):hover
) {
    background: var(--rcm-action-control-hover-bg) !important;
    background-color: var(--rcm-action-control-hover-bg) !important;
    border-color: color-mix(in srgb, var(--rz-primary, #2563eb) 48%, var(--rcm-action-control-border)) !important;
    color: var(--rcm-action-control-color) !important;
}

html:not([data-theme*="dark"]) :where(.rcm-builder-shell, .rcm-action-config-panel) :where(
    .rcm-recipe-node,
    .rcm-formula-node,
    .rcm-action-node,
    .rcm-condition-container-header,
    .rcm-loop-container-header,
    .kaxxis-localized-textbox-toolbar,
    .kaxxis-instruction-preview
) :where(
    .rz-button:disabled,
    .rz-button[disabled],
    .rz-button[aria-disabled="true"],
    .rz-button.rz-state-disabled,
    .kaxxis-instruction-preview-icon-button:disabled
) {
    background: var(--rcm-action-control-disabled-bg) !important;
    background-color: var(--rcm-action-control-disabled-bg) !important;
    border-color: var(--rcm-action-control-disabled-border) !important;
    color: var(--rcm-action-control-disabled-color) !important;
    opacity: 1 !important;
}

html:not([data-theme*="dark"]) :where(.rcm-builder-shell, .rcm-action-config-panel) :where(
    .rcm-recipe-node,
    .rcm-formula-node,
    .rcm-action-node,
    .rcm-condition-container-header,
    .rcm-loop-container-header,
    .kaxxis-localized-textbox-toolbar,
    .kaxxis-instruction-preview
) :where(
    .rz-button,
    .kaxxis-instruction-preview-icon-button
) :where(.rz-button-icon, .rz-button-icon-left, .rz-icon, .rzi, .material-icons, .rz-button-text) {
    color: inherit !important;
    opacity: 1 !important;
}

html:not([data-theme*="dark"]) :where(.rcm-builder-shell, .rcm-action-config-panel) :where(.rz-button.rz-danger, .rz-danger.rz-button, .rz-button-danger, .rz-button[class*="rz-danger"]) {
    color: var(--rz-danger-dark, var(--rz-danger, #dc2626)) !important;
}
/* Recipe summary compact spacing final override */
.rcm-recipe-summary-card,
.rcm-recipe-summary-card > .rz-card-content {
    min-height: 0;
}

.rcm-recipe-summary-stack {
    align-items: stretch;
    justify-content: flex-start !important;
    min-height: 0;
}

.rcm-recipe-summary-field {
    flex: 0 0 auto !important;
    min-height: 0;
}

.rcm-recipe-summary-field .rz-label {
    margin-bottom: 0.1rem;
}
/* Ranch edit dialog compact tabbed layout fallback */
.ranch-edit-dialog-content-host {
    padding: 0 !important;
    overflow: hidden !important;
}

.ranch-edit-dialog-content-host .ranch-dialog-shell {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 0 !important;
    min-width: 0 !important;
    background: var(--rz-base-background-color) !important;
    color: var(--rz-text-color) !important;
}

.ranch-edit-dialog-content-host .ranch-dialog-content {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0.75rem 1rem 0.5rem !important;
}

.ranch-edit-dialog-content-host .ranch-tabs,
.ranch-edit-dialog-content-host .rz-tabview {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    min-width: 0 !important;
}

.ranch-edit-dialog-content-host .rz-tabview-panels {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 1rem 0.15rem 0.35rem !important;
}

.ranch-edit-dialog-content-host .ranch-field-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem 1.15rem;
    align-items: start;
    min-width: 0;
}

.ranch-edit-dialog-content-host .ranch-field-grid--summary {
    grid-template-columns: minmax(0, 2fr) minmax(12rem, 1fr);
}

.ranch-edit-dialog-content-host .ranch-field-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ranch-edit-dialog-content-host .ranch-field {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    min-width: 0;
}

.ranch-edit-dialog-content-host .ranch-field--full {
    grid-column: 1 / -1;
}

.ranch-edit-dialog-content-host .ranch-field--span-2 {
    grid-column: span 2;
}

.ranch-edit-dialog-content-host .ranch-field-with-action {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.5rem;
    align-items: center;
    min-width: 0;
}

.ranch-edit-dialog-content-host .ranch-field-with-action .rz-button {
    white-space: nowrap;
}

.ranch-edit-dialog-content-host .ranch-form-section + .ranch-form-section {
    border-top: 1px solid color-mix(in srgb, var(--rz-border-color) 72%, transparent);
    margin-top: 1.1rem;
    padding-top: 1.1rem;
}

.ranch-edit-dialog-content-host .ranch-section-title {
    margin-bottom: 0.75rem;
    color: var(--rz-text-secondary-color, var(--rz-text-secondary));
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: uppercase;
}

.ranch-edit-dialog-content-host .ranch-dialog-actions {
    flex: 0 0 auto !important;
    display: flex !important;
    justify-content: flex-end !important;
    gap: 0.75rem !important;
    padding: 1rem !important;
    border-top: 1px solid color-mix(in srgb, var(--rz-border-color) 72%, transparent) !important;
    background: var(--rz-base-background-color) !important;
}

.ranch-edit-dialog-content-host .ranch-dialog-actions .rz-button {
    min-width: 7rem;
}

@media (max-width: 900px) {
    .ranch-edit-dialog-content-host .ranch-field-grid,
    .ranch-edit-dialog-content-host .ranch-field-grid--summary,
    .ranch-edit-dialog-content-host .ranch-field-grid--three {
        grid-template-columns: 1fr;
    }

    .ranch-edit-dialog-content-host .ranch-field--span-2 {
        grid-column: auto;
    }
}
/* Tenant operator theme designer and explicit operator palette fallbacks */
html:not([data-theme*="dark"]) .operator-display:not(.operator-display-theme-high-contrast):not(.operator-display-theme-high-contrast-light) {
    --operator-bg: #F5F7FA;
    --operator-text: #111827;
    --operator-muted: #475569;
    --operator-panel-bg: #FFFFFF;
    --operator-panel-soft: #E8EEF6;
    --operator-panel-strong: #DCE7F3;
    --operator-border: #CBD5E1;
    --operator-primary: #1D4ED8;
    --operator-info: #0369A1;
    --operator-success: #15803D;
    --operator-warning: #92400E;
    --operator-danger: #B91C1C;
    --operator-on-primary: #FFFFFF;
    --operator-on-info: #FFFFFF;
    --operator-on-success: #FFFFFF;
    --operator-on-warning: #FFFFFF;
    --operator-on-danger: #FFFFFF;
    --operator-action-primary-bg: #1D4ED8;
    --operator-action-info-bg: #0369A1;
    --operator-action-success-bg: #15803D;
    --operator-action-warning-bg: #92400E;
    --operator-action-danger-bg: #B91C1C;
    --operator-action-muted-bg: #E2E8F0;
    --operator-action-muted-text: #111827;
    --operator-action-disabled-bg: #D1D5DB;
    --operator-action-disabled-text: #374151;
    --operator-link-color: #1D4ED8;
}

html[data-theme*="dark"] .operator-display:not(.operator-display-theme-high-contrast):not(.operator-display-theme-high-contrast-light) {
    --operator-bg: #111318;
    --operator-text: #F8FAFC;
    --operator-muted: #D8E2F0;
    --operator-panel-bg: #1A2029;
    --operator-panel-soft: #263449;
    --operator-panel-strong: #2F3F57;
    --operator-border: #4B5F7A;
    --operator-primary: #7C3AED;
    --operator-info: #0284C7;
    --operator-success: #15803D;
    --operator-warning: #92400E;
    --operator-danger: #B91C1C;
    --operator-on-primary: #FFFFFF;
    --operator-on-info: #FFFFFF;
    --operator-on-success: #FFFFFF;
    --operator-on-warning: #FFFFFF;
    --operator-on-danger: #FFFFFF;
    --operator-action-primary-bg: #7C3AED;
    --operator-action-info-bg: #0284C7;
    --operator-action-success-bg: #15803D;
    --operator-action-warning-bg: #92400E;
    --operator-action-danger-bg: #B91C1C;
    --operator-action-muted-bg: #334155;
    --operator-action-muted-text: #F8FAFC;
    --operator-action-disabled-bg: #475569;
    --operator-action-disabled-text: #E2E8F0;
    --operator-link-color: #7C3AED;
}

.operator-theme-designer .operator-theme-actions,
.operator-theme-designer .operator-theme-palette-toggle,
.operator-theme-designer .operator-theme-section-header,
.operator-theme-designer .operator-theme-preview-buttons {
    flex-wrap: wrap;
}

.operator-theme-preview {
    border: 1px solid var(--operator-border);
    border-radius: var(--rz-card-border-radius, 8px);
    background: var(--operator-bg);
    color: var(--operator-text);
    overflow: hidden;
    min-height: 460px;
}

.operator-theme-preview-top {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.8rem;
    border-bottom: 1px solid var(--operator-border);
    background: color-mix(in srgb, var(--operator-panel-bg) 90%, var(--operator-primary) 10%);
}

.operator-theme-preview-top strong,
.operator-theme-preview-top span {
    display: block;
}

.operator-theme-preview-top strong {
    font-size: var(--operator-section-title-size);
    line-height: 1.05;
}

.operator-theme-preview-top span {
    color: var(--operator-muted);
    font-size: var(--operator-small-size);
    font-weight: 700;
}

.operator-theme-preview-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
    padding: 0.75rem;
    background: color-mix(in srgb, var(--operator-panel-bg) 88%, var(--operator-panel-soft) 12%);
}

.operator-theme-preview .operator-kpi {
    min-height: 64px;
}

.operator-theme-preview-job {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    margin: 0.75rem;
    padding: 0.85rem;
    border: 1px solid var(--operator-border);
    border-left: 6px solid var(--operator-primary);
    border-radius: var(--rz-card-border-radius, 8px);
    background: var(--operator-panel-bg);
}

.operator-theme-preview-job h2 {
    margin: 0.25rem 0 0;
    color: var(--operator-text);
    font-size: var(--operator-job-title-size);
    line-height: 1.1;
}

.operator-theme-preview-buttons {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.2rem;
}

.operator-theme-field-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 0.7rem;
}

.operator-theme-slider-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.65rem;
}

.operator-theme-designer .theme-color-row,
.operator-theme-designer .theme-slider-row {
    min-height: 48px;
}

.operator-theme-designer .theme-field-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    line-height: 1.25;
}

.operator-theme-designer .theme-field-copy > span {
    font-weight: 800;
}

.operator-theme-designer .theme-field-copy small {
    color: var(--rz-text-secondary-color, var(--rz-text-secondary));
    font-size: 0.78rem;
    font-weight: 600;
}

.operator-theme-designer .theme-slider-row {
    grid-template-columns: minmax(150px, 1.1fr) minmax(0, 1fr) 56px;
    align-items: center;
}

@media (max-width: 720px) {
    .operator-theme-preview {
        min-height: auto;
    }

    .operator-theme-preview-buttons {
        align-items: stretch;
        flex-direction: column;
    }

    .operator-theme-preview-buttons .operator-action-button {
        width: 100%;
    }

    .operator-theme-designer .theme-color-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .operator-theme-designer .theme-slider-row {
        grid-template-columns: 1fr;
    }

    .operator-theme-designer .theme-slider-row strong {
        text-align: left;
    }
}

/* Favourites management dialog */
.nav-favourites-dialog-shell {
    max-width: calc(100vw - 2rem);
}

.nav-favourites-dialog-content-host {
    box-sizing: border-box;
    height: 100%;
    overflow: hidden;
}

.nav-favourites-dialog {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 1rem;
    height: 100%;
    min-height: 0;
    min-width: 0;
}

.nav-favourites-dialog-toolbar {
    display: grid;
    gap: 0.85rem;
    padding-bottom: 0.85rem;
    border-bottom: 1px solid color-mix(in srgb, var(--rz-text-color) 10%, transparent);
}

.nav-favourites-dialog-copy {
    margin: 0;
    color: var(--rz-text-secondary-color);
    font-size: 0.88rem;
    line-height: 1.4;
}

.nav-favourites-search {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 2.55rem;
    min-width: 0;
    padding: 0 0.75rem;
    border: 1px solid color-mix(in srgb, var(--rz-text-color) 14%, transparent);
    border-radius: 6px;
    background: color-mix(in srgb, var(--rz-card-background-color) 92%, var(--rz-text-color) 8%);
}

.nav-favourites-search .material-icons {
    color: var(--rz-text-secondary-color);
    font-size: 1.05rem;
}

.nav-favourites-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: var(--rz-text-color);
    background: transparent;
    font: inherit;
}

.nav-favourites-search input::placeholder {
    color: var(--rz-text-tertiary);
}

.nav-favourites-selected {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 1.75rem;
    min-width: 0;
    flex-wrap: wrap;
}

.nav-favourites-selected-label {
    color: var(--rz-text-secondary-color);
    font-size: 0.78rem;
    font-weight: 700;
    white-space: nowrap;
}

.nav-favourites-selected-chips {
    display: flex;
    gap: 0.35rem;
    min-width: 0;
    flex: 1 1 auto;
    flex-wrap: wrap;
}

.nav-favourites-selected-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    max-width: 12rem;
    min-height: 1.45rem;
    padding: 0 0.45rem;
    border: 0;
    border-radius: 999px;
    color: var(--rz-primary);
    background: color-mix(in srgb, var(--rz-primary) 18%, transparent);
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 800;
}

.nav-favourites-selected-chip span:first-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-favourites-selected-chip .material-icons {
    flex: 0 0 auto;
    font-size: 0.85rem;
}

.nav-favourites-selected-chip:hover {
    background: color-mix(in srgb, var(--rz-primary) 26%, transparent);
}

.nav-favourites-dialog-body {
    display: grid;
    grid-template-columns: 13.5rem minmax(0, 1fr);
    min-height: 0;
    border: 1px solid color-mix(in srgb, var(--rz-text-color) 10%, transparent);
    border-radius: 6px;
    overflow: hidden;
    background: color-mix(in srgb, var(--rz-card-background-color) 96%, var(--rz-text-color) 4%);
}

.nav-favourites-category-rail {
    display: grid;
    align-content: start;
    gap: 0.25rem;
    min-height: 0;
    overflow: auto;
    padding: 0.55rem;
    border-right: 1px solid color-mix(in srgb, var(--rz-text-color) 10%, transparent);
    background: color-mix(in srgb, var(--rz-text-color) 4%, transparent);
}

.nav-favourites-category-tab {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    min-height: 2.2rem;
    padding: 0 0.65rem;
    border: 0;
    border-radius: 6px;
    color: var(--rz-text-secondary-color);
    background: transparent;
    cursor: pointer;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 800;
    text-align: left;
}

.nav-favourites-category-tab span:first-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-favourites-category-tab span:last-child {
    display: inline-grid;
    place-items: center;
    min-width: 1.35rem;
    height: 1.25rem;
    padding: 0 0.35rem;
    border-radius: 999px;
    color: var(--rz-text-secondary-color);
    background: color-mix(in srgb, var(--rz-text-color) 9%, transparent);
    font-size: 0.68rem;
}

.nav-favourites-category-tab:hover {
    color: var(--rz-text-color);
    background: color-mix(in srgb, var(--rz-text-color) 7%, transparent);
}

.nav-favourites-category-tab.is-active {
    color: var(--rz-text-color);
    background: color-mix(in srgb, var(--rz-primary) 18%, var(--rz-text-color) 6%);
}

.nav-favourites-category-tab.is-active span:last-child {
    color: var(--rz-text-color);
    background: color-mix(in srgb, var(--rz-primary) 28%, transparent);
}

.nav-favourites-category-content {
    min-height: 0;
    min-width: 0;
    overflow: auto;
    padding: 1rem 1.25rem;
}

.nav-favourites-category-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.9rem;
}

.nav-favourites-category-heading h3 {
    margin: 0;
    color: var(--rz-text-color);
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 0;
}

.nav-favourites-category-heading span {
    color: var(--rz-text-secondary-color);
    font-size: 0.75rem;
    font-weight: 700;
    white-space: nowrap;
}

.nav-favourites-section-list {
    display: grid;
    gap: 1rem;
}

.nav-favourites-dialog-section {
    display: grid;
    gap: 0.55rem;
    min-width: 0;
    padding-bottom: 1rem;
    border-bottom: 1px solid color-mix(in srgb, var(--rz-text-color) 9%, transparent);
}

.nav-favourites-dialog-section:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.nav-favourites-dialog-section-title {
    color: var(--rz-text-secondary-color);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.2;
}

.nav-favourites-choice-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem 0.55rem;
}

.nav-favourites-choice {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.55rem;
    width: 100%;
    min-height: 2.35rem;
    padding: 0.4rem 0.6rem;
    border: 1px solid color-mix(in srgb, var(--rz-text-color) 10%, transparent);
    border-radius: 6px;
    color: var(--rz-text-color);
    background: color-mix(in srgb, var(--rz-card-background-color) 96%, var(--rz-text-color) 4%);
    cursor: pointer;
    font-size: 0.82rem;
    font-weight: 700;
}

.nav-favourites-choice:hover {
    background: color-mix(in srgb, var(--rz-primary) 8%, transparent);
}

.nav-favourites-choice.is-selected {
    border-color: color-mix(in srgb, var(--rz-primary) 48%, transparent);
    background: color-mix(in srgb, var(--rz-primary) 14%, transparent);
}

.nav-favourites-choice-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-favourites-dialog-empty {
    display: grid;
    place-items: center;
    min-height: 12rem;
    border: 1px dashed color-mix(in srgb, var(--rz-text-color) 18%, transparent);
    border-radius: 6px;
    color: var(--rz-text-secondary-color);
    font-weight: 700;
}

.nav-favourites-dialog-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding-top: 0.85rem;
    border-top: 1px solid color-mix(in srgb, var(--rz-text-color) 10%, transparent);
}

@media (max-width: 780px) {
    .nav-favourites-dialog-body {
        grid-template-columns: 1fr;
    }

    .nav-favourites-category-rail {
        display: flex;
        border-right: 0;
        border-bottom: 1px solid color-mix(in srgb, var(--rz-text-color) 10%, transparent);
        overflow-x: auto;
    }

    .nav-favourites-category-tab {
        flex: 0 0 auto;
        min-width: 10rem;
    }

    .nav-favourites-choice-list {
        grid-template-columns: 1fr;
    }
}
/* End favourites management dialog */
