/* Disabled and switched-off controls stay readable: text at least 4.5:1 against its background. A disabled control is shown by a quieter fill and border, a not-allowed cursor
   and a muted but legible text colour, never by fading the whole control (opacity), which dropped text below 3:1. Loaded last so it wins over the page styles. */
:root { --ck-disabled-text: #566370; --ck-disabled-fill: #eef1f3; --ck-disabled-border: #d5dbe0; --ck-disabled-primary: #4f7172; }

:is(.ck-btn, .ab-btn, .sec-btn, .e-btn, button, .essential-card):is(:disabled, [aria-disabled="true"], .e-disabled):not(.ck-btn-primary):not(.ab-primary):not(.sec-primary):not(.e-primary):not(.e-flat),
:is(.ck-btn, .ab-btn, .sec-btn, .e-btn):is(.e-flat):is(:disabled, .e-disabled) {
    opacity: 1 !important;
    color: var(--ck-disabled-text) !important;
    background: var(--ck-disabled-fill) !important;
    border-color: var(--ck-disabled-border) !important;
    cursor: not-allowed;
}
:is(.ck-btn-primary, .ab-primary, .sec-primary, .e-btn.e-primary):is(:disabled, [aria-disabled="true"], .e-disabled) {
    opacity: 1 !important;
    color: #fff !important;
    background: var(--ck-disabled-primary) !important;
    border-color: var(--ck-disabled-primary) !important;
    cursor: not-allowed;
}
.ck-menu-item[aria-disabled="true"], .ck-menu-item[aria-disabled="true"]:hover { opacity: 1; color: var(--ck-disabled-text); cursor: default; background: transparent; }

input:disabled, select:disabled, textarea:disabled, fieldset:disabled, .ra-fieldset:disabled,
.e-input-group.e-disabled, .e-input-group.e-disabled input.e-input, .e-float-input.e-disabled input, .e-input:disabled, .e-input[disabled],
.e-checkbox-wrapper .e-label.e-disabled, .e-checkbox-wrapper.e-checkbox-disabled .e-label, .e-disabled .e-label {
    opacity: 1;
    color: var(--ck-disabled-text) !important;
    -webkit-text-fill-color: var(--ck-disabled-text);
}
input:disabled, select:disabled, textarea:disabled, .e-input-group.e-disabled { background-color: var(--ck-disabled-fill); }
fieldset:disabled, .ra-fieldset:disabled { opacity: 1; }
label:has(+ :disabled), .setup-hint.is-off { color: var(--ck-disabled-text); }
