/* ==========================================================
   DESIGN TOKENS
   ========================================================== */
:root{
    --background:#f7f5ef;
    --surface:#fffdf9;
    --surface-elevated:#fff;
    --surface-soft:#f1f7f4;
    --border-subtle:rgba(38,68,53,.1);
    --shadow-subtle:0 8px 28px rgba(26,52,40,.055);
    --shadow-elevated:0 14px 38px rgba(26,52,40,.09);
    --text-primary:#13291e;
    --text-secondary:#607068;
    --turquoise:#007d78;
    --turquoise-deep:#006b67;
    --turquoise-soft:#e9f5f2;
    --red-action:#cf201d;
    --green-status:#147443;
    --amber-status:#bd7200;
    --red-status:#c92b26;
    --radius-shell:22px;
    --radius-surface:20px;
    --radius-control:14px;
    --motion-fast:180ms cubic-bezier(.2,.75,.25,1);
    --green:#003f25;
    --green-2:#086331;
    --red:#d80b0b;
    --cream:var(--background);
    --paper:var(--surface);
    --ink:var(--text-primary);
    --muted:var(--text-secondary);
    --line:var(--border-subtle);
    --orange:#df5b00;
    --purple:#522486;
    --soft-red:#fff7f3;
    --soft-green:#f7fbf4;
    --soft-purple:#fbf8ff;
    --success:#057134;
    --danger:#dc1010;
    --font-family-app:'DM Sans',Arial,sans-serif;
    --type-page-title:27px;
    --type-section-title:21px;
    --type-card-title:14px;
    --type-kpi-value:31px;
    --type-body:14px;
    --type-label:12px;
    --type-helper:11px;
    font-family:var(--font-family-app);
    color:var(--ink);
    font-synthesis:none
}

/* Appearance palette. Existing names are aliases, not a second theme system.
   Component-specific variants preserve the approved Light colors exactly. */
:root{
    --color-background:#f7f5ef;
    --color-surface:#fffdf9;
    --color-surface-elevated:#fff;
    --color-surface-muted:#f1f7f4;
    --color-border:rgba(38,68,53,.16);
    --color-border-subtle:rgba(38,68,53,.1);
    --color-text-primary:#13291e;
    --color-text-secondary:#607068;
    --color-text-tertiary:#78827d;
    --color-brand:#007d78;
    --color-brand-soft:#e9f5f2;
    --color-success:#147443;
    --color-success-soft:#f7fbf4;
    --color-warning:#bd7200;
    --color-warning-soft:#fff9ea;
    --color-danger:#c92b26;
    --color-danger-soft:#fff7f3;
    --color-admin:var(--color-brand);
    --color-admin-soft:var(--color-brand-soft);
    --color-info:#173a6f;
    --color-info-soft:#edf0fa;
    --color-super-admin:#522486;
    --color-super-admin-soft:#fbf8ff;
    --color-input:var(--color-surface-elevated);
    --color-input-border:var(--color-border);
    --color-focus:var(--color-brand);
    --color-overlay:rgba(16,31,24,.48);
    --color-text-on-brand:#fff;
    --color-text-on-accent:#fff;
    --color-tooltip-text:#fff;
    --background:var(--color-background);
    --surface:var(--color-surface);
    --surface-elevated:var(--color-surface-elevated);
    --surface-soft:var(--color-surface-muted);
    --border-subtle:var(--color-border-subtle);
    --text-primary:var(--color-text-primary);
    --text-secondary:var(--color-text-secondary);
    --turquoise:var(--color-brand);
    --turquoise-soft:var(--color-brand-soft);
    --purple:var(--color-super-admin);
    --soft-purple:var(--color-super-admin-soft);
    --soft-green:var(--color-success-soft);
    --soft-red:var(--color-danger-soft);
    --green-status:var(--color-success);
    --amber-status:var(--color-warning);
    --red-status:var(--color-danger);
    --text:var(--color-text-primary);
    color-scheme:light;
    --color-account-page-main-topbar-border:rgba(0,125,120,.12);
    --shadow-account-section:0 6px 22px rgba(27,50,38,.05);
    --color-account-section-text:#153527;
    --color-account-field-text:#263b30;
    --color-account-field-border:#dcd4cb;
    --color-account-readonly-border:#e3ddd4;
    --color-account-readonly-surface:#fbfaf7;
    --color-account-readonly-text:#31443a;
    --color-account-field-error-account-form-feedback-account-load-feedback-text:#a13d20;
    --color-account-form-feedback-text:#8a5900;
    --color-account-freshness-border:#dce8e1;
    --color-account-freshness-surface:#f4faf6;
    --color-account-freshness-border-soft:#ebd5a7;
    --color-account-freshness-surface-soft:#fff9ea;
    --color-account-freshness-border-muted:#efc7c2;
    --color-account-freshness-surface-muted:#fff4f2;
    --color-account-freshness-border-secondary:#dedbd5;
    --color-account-freshness-text:#16382a;
    --color-account-password-form-password-control-border:#77aaa3;
    --color-account-password-form-password-control-focus:rgba(0,125,120,.12);
    --color-account-password-form-password-control-text:#0a655f;
    --color-app-shell-host-surface:rgba(247,245,239,.9);
    --color-app-shell-brand-border:rgba(0,48,46,.1);
    --color-app-shell-nav-item-app-shell-back-focus:rgba(0,125,120,.22);
    --color-app-shell-nav-frame-border:rgba(0,94,90,.08);
    --color-app-shell-nav-frame-surface:rgba(240,247,244,.94);
    --shadow-app-shell-nav-item-is-active:0 5px 14px rgba(0,125,120,.18);
    --color-app-shell-nav-item-is-active-app-shell-back-surface:rgba(0,125,120,.08);
    --color-app-shell-account-menu-trigger-border:rgba(0,75,72,.08);
    --color-app-shell-account-menu-trigger-surface:rgba(255,255,255,.9);
    --color-app-shell-account-menu-trigger-border-soft:rgba(0,125,120,.16);
    --color-app-shell-account-menu-trigger-focus:rgba(0,125,120,.25);
    --color-catalog-page-catalog-view-control-surface:rgba(255,255,255,.72);
    --shadow-catalog-page-catalog-view-control:0 5px 18px rgba(26,52,40,.045);
    --color-catalog-page-catalog-view-control-text:#40564b;
    --color-account-session-border:#e4b9b5;
    --color-account-session-text:#b51a18;
    --color-account-session-surface:#fff8f6;
    --color-password-requirements-surface:#fffcf6;
    --color-password-requirements-text:#8d938f;
    --color-account-retry-border:#c98b2b;
    --color-metric-icon-surface:#fff0ed;
    --color-green-metric-icon-surface:#edf6ef;
    --color-neutral-text:#606965;
    --color-positive-text:#087538;
    --color-negative-text:#d30a0a;
    --color-success-text:#075d26;
    --color-success-surface:#eaf5e8;
    --color-success-border:#d7ead3;
    --color-warn-text:#bd5a00;
    --color-warn-surface:#fff6e2;
    --color-warn-border:#fbe8b9;
    --color-danger-text:#c80b0b;
    --color-danger-surface:#ffe9e7;
    --color-danger-border:#f8d6d4;
    --color-error-state-border:#f0d5d1;
    --color-error-state-surface:#fffafa;
    --color-skeleton-surface:#f2eee8;
    --shadow-action-feedback:0 10px 30px rgba(16,37,27,.16);
    --color-action-feedback-border:#cce4ce;
    --color-action-feedback-surface:#f1f9ef;
    --color-action-feedback-border-soft:#f0c9c5;
    --color-action-feedback-text:#a32620;
    --color-operators-target-text:#34483e;
    --color-operator-columns-text:#24372d;
    --shadow-operator-avatar:0 3px 10px rgba(0,94,90,.12);
    --color-operator-card-period-text:#5a635f;
    --color-production-progress-deviation-result-text:#173427;
    --color-deviation-value-not-obtained-text:#c71917;
    --color-deviation-value-unavailable-text:#68716d;
    --color-deviation-status-text-pending-text:#a96200;
    --shadow-operator-status:0 1px 2px rgba(31,43,37,.025);
    --color-operator-status-obtained-text:#086735;
    --color-operator-status-obtained-border:#d9eadb;
    --color-operator-status-obtained-surface:#edf7ed;
    --color-operator-status-not-obtained-text:#bd1a17;
    --color-operator-status-not-obtained-border:#f5d8d6;
    --color-operator-status-not-obtained-surface:#fdefee;
    --color-operator-status-pending-border:#f5e4bd;
    --color-operator-status-pending-surface:#fff6e4;
    --color-operator-status-unavailable-border:#dfe2df;
    --color-operator-status-unavailable-surface:#f1f2ef;
    --color-orange-text:#d74b00;
    --color-insight-list-border:#efdcc8;
    --color-insight-list-text:#068034;
    --color-insight-list-text-soft:#e99000;
    --color-panel-header-border:#eadfd6;
    --color-panel-header-text:#d50606;
    --color-operators-panel-header-text:#4c207a;
    --color-search-border:#e2ded9;
    --color-operator-card-table-panel-surface:rgba(233,245,242,.46);
    --color-status-dot-surface:#037537;
    --color-red-dot-surface:#d30a11;
    --color-panel-footer-text:#cf0707;
    --color-panel-footer-border:#eee6df;
    --color-day-detail-text:#d40909;
    --color-day-detail-text-soft:#213127;
    --color-shift-border:#eee7df;
    --color-shift-surface:#fffefa;
    --color-sun-text:#f18d00;
    --color-sun-surface:#fff3dd;
    --color-moon-text:#173a6f;
    --color-moon-surface:#edf0fa;
    --color-shift-text:#5e6462;
    --color-shift-surface-soft:#e6f2e2;
    --color-shift-text-soft:#075b25;
    --color-shift-text-muted:#d20909;
    --color-collapsed-text:#1a2d21;
    --shadow-confirmation-dialog:0 22px 60px rgba(20,44,32,.25);
    --color-confirmation-dialog-overlay:rgba(16,31,24,.48);
    --color-session-timeout-dialog-actions-focus:rgba(211,9,9,.25);
    --color-bonus-summary-border:#eee8e0;
    --color-sidebar-surface:#fffaf0;
    --color-sidebar-border:rgba(0,89,91,.18);
    --color-brand-border:rgba(20,43,32,.12);
    --color-main-nav-border:rgba(255,255,255,.19);
    --color-nav-link-text:#f6faf5;
    --color-nav-link-active-nav-link-unavailable-surface:rgba(255,255,255,.13);
    --color-nav-link-active-nav-link-unavailable-focus:rgba(255,255,255,.18);
    --color-nav-link-active-nav-link-unavailable-focus-soft:rgba(0,49,50,.18);
    --shadow-nav-link-active:0 7px 16px #001f10aa;
    --color-nav-link-unavailable-text:#d9eeea;
    --color-nav-link-unavailable-surface:rgba(255,255,255,.055);
    --color-nav-badge-border:rgba(255,255,255,.34);
    --color-nav-badge-surface:rgba(0,49,50,.2);
    --color-sidebar-illustration-border:#ffffff44;
    --color-sidebar-oven-text:#e1b53c;
    --color-sidebar-oven-oven-flame-text:rgba(225,181,60,.12);
    --color-profile-border:#ffffff77;
    --color-profile-avatar-text:#df640d;
    --color-account-menu-trigger-border:rgba(0,125,120,.2);
    --color-account-menu-trigger-focus:rgba(0,125,120,.2);
    --color-account-menu-action-text:#17382a;
    --color-account-menu-action-surface:#f2f8f5;
    --color-account-menu-action-focus:#0a7f78;
    --shadow-select-control:0 3px 12px rgba(26,52,40,.035);
    --color-refresh-focus:rgba(189,114,0,.1);
    --color-refresh-success-text-focus:rgba(20,116,67,.1);
    --color-refresh-error-text-focus:rgba(201,43,38,.1);
    --color-refresh-dashboard-refresh-production-refresh-operators-border:rgba(0,125,120,.18);
    --shadow-refresh-dashboard-refresh-production:0 5px 16px rgba(28,64,48,.07);
    --color-refresh-dashboard-refresh-production-refresh-operators-border-soft:rgba(0,125,120,.3);
    --shadow-refresh-dashboard-refresh-production-elevated:0 8px 20px rgba(28,64,48,.1);
    --color-button-outline-border:rgba(207,32,29,.22);
    --color-button-outline-surface:#fff5f2;
    --color-button-outline-border-soft:rgba(207,32,29,.36);
    --shadow-button-outline:0 5px 16px rgba(87,38,31,.06);
    --color-button-outline-focus:rgba(207,32,29,.16);
    --color-main-nav-border-soft:#d9d3c9;
    --color-nav-link-unavailable-text-soft:#547a76;
    --color-nav-link-unavailable-surface-soft:#edf3ee;
    --color-nav-link-unavailable-nav-badge-text:#356761;
    --color-nav-link-unavailable-nav-badge-border:#bdd2cc;
    --color-nav-link-unavailable-nav-badge-surface:#f7fbf8;
    --color-login-page-surface:rgba(0,158,153,.1);
    --color-login-page-surface-soft:rgba(216,11,11,.07);
    --shadow-login-card:0 16px 42px rgba(27,56,42,.1);
    --color-login-form-border:#dcd8d0;
    --color-login-form-surface:#fffdfa;
    --color-login-form-border-soft:#6ca79f;
    --color-login-feedback-text:#b51414;
    --color-login-submit-surface:#de2520;
    --color-login-submit-surface-soft:#ca1514;
    --shadow-login-submit:0 7px 16px rgba(113,18,17,.2);
    --color-operator-controls-surface:#fffdfb;
    --color-operator-controls-refresh-border:#e5e0d9;
    --color-operator-controls-button-outline-surface:#e5e0d9;
    --shadow-operator-create-panel:0 5px 20px rgba(27,50,38,.04);
    --color-operator-create-icon-text:#147440;
    --color-operator-create-icon-surface:#edf6eb;
    --color-operator-view-switch-text:#34443c;
    --color-operator-view-switch-surface:#fff7f5;
    --color-operator-alert-text:#9e3228;
    --shadow-operator-management-card:0 3px 12px rgba(27,50,38,.035);
    --color-operator-catalog-avatar-surface:#6c34b6;
    --color-operator-catalog-avatar-tone-2-surface:#009c98;
    --color-operator-catalog-avatar-tone-3-surface:#1477d4;
    --color-operator-catalog-avatar-tone-4-surface:#e50072;
    --color-operator-catalog-avatar-tone-5-surface:#49209d;
    --color-operator-catalog-avatar-tone-6-surface:#e62937;
    --color-operator-catalog-avatar-tone-7-surface:#f47e12;
    --color-operator-catalog-avatar-tone-8-surface:#6a8796;
    --color-operator-name-input-border:#e5ddd4;
    --color-operator-action-border:#edd7d2;
    --color-operator-action-is-danger-border:#ef4c4c;
    --color-operator-status-is-active-text:#0c6334;
    --color-operator-status-is-inactive-text:#646c68;
    --color-operator-status-is-inactive-surface:#eff0ed;
    --color-operator-traceability-note-border:#e6e1da;
    --color-operator-create-form-operator-management-panel-border:#79aaa1;
    --color-operator-create-form-operator-management-panel-focus:rgba(12,126,121,.1);
    --color-operator-management-card-border:#e4ded6;
    --color-operator-management-card-is-modified-border:#e7a69e;
    --color-operator-management-card-is-modified-surface:#fffaf8;
    --shadow-operator-management-card-is-modified:0 4px 15px rgba(184,67,54,.08);
    --color-operator-modified-badge-text:#9f4f43;
    --color-operator-modified-badge-surface:#f8e7e3;
    --color-operator-management-card-operator-modified-badge-text:#d91616;
    --color-operator-management-panel-is-changed-border:#df8d81;
    --shadow-operator-management-panel-is-changed:inset 3px 0 0 #d87366;
    --color-operator-card-footer-operator-updated-text:#405048;
    --color-operator-card-footer-operator-updated-text-soft:#14546a;
    --color-operator-state-action-border:#ddd8d1;
    --color-operator-state-action-text:#46564e;
    --color-operator-state-action-is-danger-border:#ed8479;
    --color-operator-state-action-is-danger-text:#b33a2f;
    --color-operator-table-text:#596861;
    --color-operator-pending-bar-border:#efc6bf;
    --color-operator-pending-bar-surface:#fff5f3;
    --shadow-operator-pending-bar:0 -7px 22px rgba(99,37,31,.08);
    --color-operator-pending-icon-surface:#bf473b;
    --color-operator-pending-summary-text:#ae352c;
    --color-operator-pending-summary-text-soft:#665f5a;
    --color-operator-discard-button-border:#e4a49b;
    --color-history-status-active-text:#0b7431;
    --color-history-status-active-surface:#e8f6e9;
    --color-history-status-cancelled-text:#b60000;
    --color-history-status-cancelled-surface:#fde7e7;
    --color-history-incomplete-history-cancelled-note-text:#7a4d00;
    --color-history-incomplete-history-cancelled-note-surface:#fff8e8;
    --shadow-history-detail-dialog:0 22px 70px rgba(20,44,32,.28);
    --color-history-detail-dialog-overlay:rgba(16,31,24,.5);
    --color-history-detail-heading-surface:#f5f3ef;
    --color-history-operator-row-history-product-row-border:#e7e0d7;
    --color-history-cancel-action-border:#e3aaa5;
    --color-history-cancel-action-border-soft:#a32620;
    --color-history-cancel-action-surface:#ffefec;
    --shadow-searchable-select-popup:0 10px 26px rgba(37,31,20,.16);
    --color-searchable-select-option-is-active-surface:#f6f0e7;
    --color-searchable-select-option-is-active-text:#174734;
    --color-production-period-menu-production-period-popover-focus:rgba(0,125,120,.28);
    --color-production-period-popover-border:#e2d8ce;
    --shadow-production-period-popover:0 12px 30px rgba(27,50,38,.14);
    --color-production-period-popover-border-soft:#eadfd4;
    --color-production-period-popover-surface:#fff6f0;
    --color-production-period-popover-border-muted:#f0d8cf;
    --color-production-period-years-border:#9bc7c2;
    --color-production-period-years-focus:rgba(0,125,120,.1);
    --color-production-custom-actions-production-custom-apply-surface:#c80000;
    --color-production-switch-track-surface:#dfe8e3;
    --shadow-production-switch-track:0 2px 6px rgba(26,52,40,.18);
    --color-production-switch-production-switch-track-border:rgba(0,125,120,.24);
    --color-production-day-toggle-surface:#fff9f5;
    --color-production-shift-is-expanded-border:#d9d0c5;
    --shadow-production-shift-is-expanded:0 7px 18px rgba(26,46,36,.06);
    --color-shift-marker-text:#df7600;
    --color-shift-marker-surface:#fff2d8;
    --color-production-shift-shift-marker-text:#08706d;
    --color-production-shift-shift-marker-surface:#e5f5f3;
    --color-production-shift-shift-marker-text-soft:#3a4a8a;
    --color-production-shift-shift-marker-surface-soft:#eef0ff;
    --color-production-shift-is-empty-surface:#fdfcf9;
    --color-production-shift-is-empty-shift-marker-text:#78827d;
    --color-production-shift-is-empty-shift-marker-surface:#f0f1ee;
    --color-production-total-text:#142b20;
    --color-operator-line-text:#4b5952;
    --color-shift-detail-surface:#fcfaf6;
    --color-batch-title-product-card-text:#202f27;
    --color-batch-products-surface:#fffdf8;
    --color-product-card-border:#eee5db;
    --color-skeleton-line-surface:#eee8df;
    --color-product-management-title-text:#4b2696;
    --color-product-view-switch-border:#efb9b2;
    --shadow-product-management-card:0 3px 12px rgba(27,50,38,.035);
    --color-product-traceability-note-text:#31594a;
}
:root[data-theme="dark"]{
    --color-background:#171b19;
    --color-surface:#202622;
    --color-surface-elevated:#29302b;
    --color-surface-muted:#252e28;
    --color-border:rgba(208,224,213,.16);
    --color-border-subtle:rgba(208,224,213,.10);
    --color-text-primary:#f0f2eb;
    --color-text-secondary:#b4c0b6;
    --color-text-tertiary:#95a399;
    --color-brand:#68cfc4;
    --color-brand-soft:#223f38;
    --color-success:#8acba4;
    --color-success-soft:#253b2d;
    --color-warning:#e7bb73;
    --color-warning-soft:#403322;
    --color-danger:#f19c96;
    --color-danger-soft:#422a29;
    --color-super-admin:#c5b2ef;
    --color-super-admin-soft:#332d43;
    --color-info:#a3bfe8;
    --color-info-soft:#29364a;
    --color-overlay:rgba(5,10,7,.58);
    --color-text-on-brand:#102b25;
    --color-tooltip-text:#171b19;
    --turquoise-deep:#85d9cf;
    --red-action:var(--color-danger);
    --green:#b5d7c1;
    --green-2:var(--color-success);
    --red:var(--color-danger);
    --orange:var(--color-warning);
    --success:var(--color-success);
    --danger:var(--color-danger);
    --soft-green:var(--color-success-soft);
    --shadow-subtle:0 2px 8px rgba(0,0,0,.12);
    --shadow-elevated:0 5px 18px rgba(0,0,0,.2);
    color-scheme:dark;
    --color-account-page-main-topbar-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --shadow-account-section:var(--shadow-subtle);
    --color-account-section-text:var(--color-text-primary);
    --color-account-field-text:var(--color-text-secondary);
    --color-account-field-border:var(--color-border-subtle);
    --color-account-readonly-border:var(--color-border-subtle);
    --color-account-readonly-surface:var(--color-surface-elevated);
    --color-account-readonly-text:var(--color-text-secondary);
    --color-account-field-error-account-form-feedback-account-load-feedback-text:var(--color-danger);
    --color-account-form-feedback-text:var(--color-warning);
    --color-account-freshness-border:var(--color-border-subtle);
    --color-account-freshness-surface:var(--color-success-soft);
    --color-account-freshness-border-soft:color-mix(in srgb,var(--color-warning) 32%,transparent);
    --color-account-freshness-surface-soft:var(--color-warning-soft);
    --color-account-freshness-border-muted:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-account-freshness-surface-muted:var(--color-danger-soft);
    --color-account-freshness-border-secondary:var(--color-border-subtle);
    --color-account-freshness-text:var(--color-text-primary);
    --color-account-password-form-password-control-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-account-password-form-password-control-focus:rgba(104,207,196,.55);
    --color-account-password-form-password-control-text:var(--color-brand);
    --color-app-shell-host-surface:var(--color-background);
    --color-app-shell-brand-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-app-shell-nav-item-app-shell-back-focus:rgba(104,207,196,.55);
    --color-app-shell-nav-frame-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-app-shell-nav-frame-surface:#23322b;
    --shadow-app-shell-nav-item-is-active:var(--shadow-subtle);
    --color-app-shell-nav-item-is-active-app-shell-back-surface:var(--color-brand-soft);
    --color-app-shell-account-menu-trigger-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-app-shell-account-menu-trigger-surface:var(--color-surface-elevated);
    --color-app-shell-account-menu-trigger-border-soft:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-app-shell-account-menu-trigger-focus:rgba(104,207,196,.55);
    --color-catalog-page-catalog-view-control-surface:var(--color-surface-elevated);
    --shadow-catalog-page-catalog-view-control:var(--shadow-subtle);
    --color-catalog-page-catalog-view-control-text:var(--color-text-secondary);
    --color-account-session-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-account-session-text:var(--color-danger);
    --color-account-session-surface:var(--color-surface-elevated);
    --color-password-requirements-surface:var(--color-surface-elevated);
    --color-password-requirements-text:var(--color-text-tertiary);
    --color-account-retry-border:color-mix(in srgb,var(--color-warning) 32%,transparent);
    --color-metric-icon-surface:var(--color-danger-soft);
    --color-green-metric-icon-surface:var(--color-success-soft);
    --color-neutral-text:var(--color-text-secondary);
    --color-positive-text:var(--color-success);
    --color-negative-text:var(--color-danger);
    --color-success-text:var(--color-success);
    --color-success-surface:var(--color-success-soft);
    --color-success-border:var(--color-border-subtle);
    --color-warn-text:var(--color-warning);
    --color-warn-surface:var(--color-warning-soft);
    --color-warn-border:color-mix(in srgb,var(--color-warning) 32%,transparent);
    --color-danger-text:var(--color-danger);
    --color-danger-surface:var(--color-danger-soft);
    --color-danger-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-error-state-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-error-state-surface:var(--color-danger-soft);
    --color-skeleton-surface:var(--color-surface-elevated);
    --shadow-action-feedback:var(--shadow-subtle);
    --color-action-feedback-border:var(--color-border-subtle);
    --color-action-feedback-surface:var(--color-success-soft);
    --color-action-feedback-border-soft:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-action-feedback-text:var(--color-danger);
    --color-operators-target-text:var(--color-text-secondary);
    --color-operator-columns-text:var(--color-text-secondary);
    --shadow-operator-avatar:var(--shadow-subtle);
    --color-operator-card-period-text:var(--color-text-secondary);
    --color-production-progress-deviation-result-text:var(--color-text-primary);
    --color-deviation-value-not-obtained-text:var(--color-danger);
    --color-deviation-value-unavailable-text:var(--color-text-secondary);
    --color-deviation-status-text-pending-text:var(--color-warning);
    --shadow-operator-status:var(--shadow-subtle);
    --color-operator-status-obtained-text:var(--color-success);
    --color-operator-status-obtained-border:var(--color-border-subtle);
    --color-operator-status-obtained-surface:var(--color-surface-elevated);
    --color-operator-status-not-obtained-text:var(--color-danger);
    --color-operator-status-not-obtained-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-operator-status-not-obtained-surface:var(--color-surface-elevated);
    --color-operator-status-pending-border:color-mix(in srgb,var(--color-warning) 32%,transparent);
    --color-operator-status-pending-surface:var(--color-surface-elevated);
    --color-operator-status-unavailable-border:var(--color-border-subtle);
    --color-operator-status-unavailable-surface:var(--color-surface-elevated);
    --color-orange-text:var(--color-danger);
    --color-insight-list-border:color-mix(in srgb,var(--color-warning) 32%,transparent);
    --color-insight-list-text:var(--color-success);
    --color-insight-list-text-soft:var(--color-warning);
    --color-panel-header-border:var(--color-border-subtle);
    --color-panel-header-text:var(--color-danger);
    --color-operators-panel-header-text:var(--color-super-admin);
    --color-search-border:var(--color-border-subtle);
    --color-operator-card-table-panel-surface:var(--color-brand-soft);
    --color-status-dot-surface:#397651;
    --color-red-dot-surface:var(--color-danger-soft);
    --color-panel-footer-text:var(--color-danger);
    --color-panel-footer-border:var(--color-border-subtle);
    --color-day-detail-text:var(--color-danger);
    --color-day-detail-text-soft:var(--color-text-secondary);
    --color-shift-border:var(--color-border-subtle);
    --color-shift-surface:var(--color-surface-elevated);
    --color-sun-text:var(--color-warning);
    --color-sun-surface:var(--color-surface-elevated);
    --color-moon-text:var(--color-info);
    --color-moon-surface:var(--color-surface-elevated);
    --color-shift-text:var(--color-text-secondary);
    --color-shift-surface-soft:var(--color-surface-elevated);
    --color-shift-text-soft:var(--color-text-primary);
    --color-shift-text-muted:var(--color-danger);
    --color-collapsed-text:var(--color-text-secondary);
    --shadow-confirmation-dialog:var(--shadow-elevated);
    --color-confirmation-dialog-overlay:rgba(5,10,7,.58);
    --color-session-timeout-dialog-actions-focus:rgba(241,156,150,.55);
    --color-bonus-summary-border:var(--color-border-subtle);
    --color-sidebar-surface:var(--color-surface-elevated);
    --color-sidebar-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-brand-border:var(--color-border-subtle);
    --color-main-nav-border:var(--color-border-subtle);
    --color-nav-link-text:#fff;
    --color-nav-link-active-nav-link-unavailable-surface:var(--color-brand-soft);
    --color-nav-link-active-nav-link-unavailable-focus:rgba(104,207,196,.55);
    --color-nav-link-active-nav-link-unavailable-focus-soft:rgba(104,207,196,.55);
    --shadow-nav-link-active:var(--shadow-subtle);
    --color-nav-link-unavailable-text:#fff;
    --color-nav-link-unavailable-surface:var(--color-brand-soft);
    --color-nav-badge-border:var(--color-border-subtle);
    --color-nav-badge-surface:var(--color-brand-soft);
    --color-sidebar-illustration-border:var(--color-border-subtle);
    --color-sidebar-oven-text:var(--color-warning);
    --color-sidebar-oven-oven-flame-text:var(--color-warning);
    --color-profile-border:var(--color-border-subtle);
    --color-profile-avatar-text:var(--color-danger);
    --color-account-menu-trigger-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-account-menu-trigger-focus:rgba(104,207,196,.55);
    --color-account-menu-action-text:var(--color-text-primary);
    --color-account-menu-action-surface:var(--color-surface-elevated);
    --color-account-menu-action-focus:rgba(104,207,196,.55);
    --shadow-select-control:var(--shadow-subtle);
    --color-refresh-focus:var(--color-warning-soft);
    --color-refresh-success-text-focus:var(--color-success-soft);
    --color-refresh-error-text-focus:var(--color-danger-soft);
    --color-refresh-dashboard-refresh-production-refresh-operators-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --shadow-refresh-dashboard-refresh-production:var(--shadow-subtle);
    --color-refresh-dashboard-refresh-production-refresh-operators-border-soft:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --shadow-refresh-dashboard-refresh-production-elevated:var(--shadow-subtle);
    --color-button-outline-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-button-outline-surface:var(--color-surface-elevated);
    --color-button-outline-border-soft:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --shadow-button-outline:var(--shadow-subtle);
    --color-button-outline-focus:rgba(241,156,150,.55);
    --color-main-nav-border-soft:var(--color-border-subtle);
    --color-nav-link-unavailable-text-soft:var(--color-brand);
    --color-nav-link-unavailable-surface-soft:var(--color-surface-elevated);
    --color-nav-link-unavailable-nav-badge-text:var(--color-brand);
    --color-nav-link-unavailable-nav-badge-border:var(--color-border-subtle);
    --color-nav-link-unavailable-nav-badge-surface:var(--color-surface-elevated);
    --color-login-page-surface:var(--color-brand-soft);
    --color-login-page-surface-soft:var(--color-danger-soft);
    --shadow-login-card:var(--shadow-subtle);
    --color-login-form-border:var(--color-border-subtle);
    --color-login-form-surface:var(--color-surface-elevated);
    --color-login-form-border-soft:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-login-feedback-text:var(--color-danger);
    --color-login-submit-surface:var(--color-danger-soft);
    --color-login-submit-surface-soft:#a14844;
    --shadow-login-submit:var(--shadow-subtle);
    --color-operator-controls-surface:var(--color-surface-elevated);
    --color-operator-controls-refresh-border:var(--color-border-subtle);
    --color-operator-controls-button-outline-surface:var(--color-surface-elevated);
    --shadow-operator-create-panel:var(--shadow-subtle);
    --color-operator-create-icon-text:var(--color-success);
    --color-operator-create-icon-surface:var(--color-surface-elevated);
    --color-operator-view-switch-text:var(--color-text-secondary);
    --color-operator-view-switch-surface:var(--color-surface-elevated);
    --color-operator-alert-text:var(--color-danger);
    --shadow-operator-management-card:var(--shadow-subtle);
    --color-operator-catalog-avatar-surface:#5c4386;
    --color-operator-catalog-avatar-tone-2-surface:#246a62;
    --color-operator-catalog-avatar-tone-3-surface:var(--color-info-soft);
    --color-operator-catalog-avatar-tone-4-surface:var(--color-danger-soft);
    --color-operator-catalog-avatar-tone-5-surface:#365b87;
    --color-operator-catalog-avatar-tone-6-surface:var(--color-danger-soft);
    --color-operator-catalog-avatar-tone-7-surface:var(--color-warning-soft);
    --color-operator-catalog-avatar-tone-8-surface:#246a62;
    --color-operator-name-input-border:var(--color-border-subtle);
    --color-operator-action-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-operator-action-is-danger-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-operator-status-is-active-text:var(--color-success);
    --color-operator-status-is-inactive-text:var(--color-text-secondary);
    --color-operator-status-is-inactive-surface:var(--color-surface-elevated);
    --color-operator-traceability-note-border:var(--color-border-subtle);
    --color-operator-create-form-operator-management-panel-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-operator-create-form-operator-management-panel-focus:rgba(104,207,196,.55);
    --color-operator-management-card-border:var(--color-border-subtle);
    --color-operator-management-card-is-modified-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-operator-management-card-is-modified-surface:var(--color-surface-elevated);
    --shadow-operator-management-card-is-modified:var(--shadow-subtle);
    --color-operator-modified-badge-text:var(--color-danger);
    --color-operator-modified-badge-surface:var(--color-surface-elevated);
    --color-operator-management-card-operator-modified-badge-text:var(--color-danger);
    --color-operator-management-panel-is-changed-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --shadow-operator-management-panel-is-changed:var(--shadow-subtle);
    --color-operator-card-footer-operator-updated-text:var(--color-text-secondary);
    --color-operator-card-footer-operator-updated-text-soft:var(--color-brand);
    --color-operator-state-action-border:var(--color-border-subtle);
    --color-operator-state-action-text:var(--color-text-secondary);
    --color-operator-state-action-is-danger-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-operator-state-action-is-danger-text:var(--color-danger);
    --color-operator-table-text:var(--color-text-secondary);
    --color-operator-pending-bar-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-operator-pending-bar-surface:var(--color-surface-elevated);
    --shadow-operator-pending-bar:var(--shadow-subtle);
    --color-operator-pending-icon-surface:#a14844;
    --color-operator-pending-summary-text:var(--color-danger);
    --color-operator-pending-summary-text-soft:var(--color-text-secondary);
    --color-operator-discard-button-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-history-status-active-text:var(--color-success);
    --color-history-status-active-surface:var(--color-surface-elevated);
    --color-history-status-cancelled-text:var(--color-danger);
    --color-history-status-cancelled-surface:var(--color-surface-elevated);
    --color-history-incomplete-history-cancelled-note-text:var(--color-warning);
    --color-history-incomplete-history-cancelled-note-surface:var(--color-surface-elevated);
    --shadow-history-detail-dialog:var(--shadow-elevated);
    --color-history-detail-dialog-overlay:rgba(5,10,7,.58);
    --color-history-detail-heading-surface:var(--color-surface-elevated);
    --color-history-operator-row-history-product-row-border:var(--color-border-subtle);
    --color-history-cancel-action-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-history-cancel-action-border-soft:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-history-cancel-action-surface:var(--color-surface-elevated);
    --shadow-searchable-select-popup:var(--shadow-subtle);
    --color-searchable-select-option-is-active-surface:var(--color-surface-elevated);
    --color-searchable-select-option-is-active-text:var(--color-text-primary);
    --color-production-period-menu-production-period-popover-focus:rgba(104,207,196,.55);
    --color-production-period-popover-border:var(--color-border-subtle);
    --shadow-production-period-popover:var(--shadow-elevated);
    --color-production-period-popover-border-soft:var(--color-border-subtle);
    --color-production-period-popover-surface:var(--color-surface-elevated);
    --color-production-period-popover-border-muted:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --color-production-period-years-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-production-period-years-focus:rgba(104,207,196,.55);
    --color-production-custom-actions-production-custom-apply-surface:#a14844;
    --color-production-switch-track-surface:#39463d;
    --shadow-production-switch-track:var(--shadow-subtle);
    --color-production-switch-production-switch-track-border:color-mix(in srgb,var(--color-brand) 32%,transparent);
    --color-production-day-toggle-surface:var(--color-surface-elevated);
    --color-production-shift-is-expanded-border:var(--color-border-subtle);
    --shadow-production-shift-is-expanded:var(--shadow-subtle);
    --color-shift-marker-text:var(--color-warning);
    --color-shift-marker-surface:var(--color-warning-soft);
    --color-production-shift-shift-marker-text:var(--color-brand);
    --color-production-shift-shift-marker-surface:var(--color-brand-soft);
    --color-production-shift-shift-marker-text-soft:var(--color-info);
    --color-production-shift-shift-marker-surface-soft:var(--color-info-soft);
    --color-production-shift-is-empty-surface:var(--color-surface-elevated);
    --color-production-shift-is-empty-shift-marker-text:var(--color-text-secondary);
    --color-production-shift-is-empty-shift-marker-surface:var(--color-surface-elevated);
    --color-production-total-text:var(--color-text-secondary);
    --color-operator-line-text:var(--color-text-secondary);
    --color-shift-detail-surface:var(--color-surface-elevated);
    --color-batch-title-product-card-text:var(--color-text-secondary);
    --color-batch-products-surface:var(--color-surface-elevated);
    --color-product-card-border:var(--color-border-subtle);
    --color-skeleton-line-surface:var(--color-surface-elevated);
    --color-product-management-title-text:var(--color-info);
    --color-product-view-switch-border:color-mix(in srgb,var(--color-danger) 32%,transparent);
    --shadow-product-management-card:var(--shadow-subtle);
    --color-product-traceability-note-text:var(--color-text-primary);
}
/* Existing login gradients are retained only in Light; no Dark glows. */
:root[data-theme="dark"] .login-page{background:var(--background)}
:root[data-theme="dark"] .login-submit{background:var(--red-action);color:var(--color-text-on-brand)}
:root{background:var(--background)}

/* ==========================================================
   GLOBAL RESET
   ========================================================== */
*{
    box-sizing:border-box
}

body{
    margin:0;
    background:var(--cream);
    color:var(--text-primary);
    font-family:var(--font-family-app);
    font-size:var(--type-body)
}

/* ==========================================================
   GLOBAL ELEMENTS
   ========================================================== */
.icon-sprite{
    display:none
}

svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.9;
    stroke-linecap:round;
    stroke-linejoin:round
}

button,input,select{
    font:inherit
}

h1,h2,h3,h4,h5,h6{
    font-family:inherit
}

button{
    cursor:pointer
}
