/* Generado desde el Design System «Admin IO» (tokens.json, sincronizado 2026-11-03 desde INVERSIONESIO/st-admin-io qas@4047f315).
   No editar a mano: si falta un token, se propone en el Design System. */
:root {
  --brand-400: #54bbdd;
  --brand-500: #00a2d9;
  --brand-600: #007ebf;
  --brand-700: #0062a7;
  --brand-800: #004f87;
  --brand-900: #003366;
  --sb-bg-top: #0a4e8e;
  --sb-bg-mid: #053c72;
  --sb-bg-bottom: #033059;
  --sb-fg: #c5dcf0;
  --sb-fg-strong: #ffffff;
  --sb-icon: #8fc4e8;
  --sb-hover: rgba(255, 255, 255, 0.09);
  --sb-border: rgba(255, 255, 255, 0.1);
  --sub-line: rgba(255, 255, 255, 0.18);
  --active-bg: rgba(255, 255, 255, 0.14);
  --active-bar: var(--brand-400);
  --flyout-bg: #073a6b;
  --flyout-title: #8fc4e8;
  --toggle-bg: #0a4e8e;
  --logout-fg: #ffc9c9;
  --logout-hover: rgba(230, 10, 10, 0.55);
  --app-bg: #edf2f5;
  --body-bg: #eff3f4;
  --surface: #ffffff;
  --tb-bg: var(--surface);
  --tb-border: #e3e9f0;
  --tb-fg: #1c2733;
  --tb-dim: #8a97a6;
  --page-icon-bg: #eaf3fa;
  --page-icon-fg: var(--brand-700);
  --iconbtn-bg: #f2f6fa;
  --iconbtn-fg: #4a5563;
  --iconbtn-hover: #e6f2fa;
  --role-bg: #eaf3fa;
  --text-body: #212529;
  --text-table: #000000;
  --text-muted: #757575;
  --text-note: #565656;
  --border: #dde2eb;
  --input-border: #c9ced6;
  --input-fg: #4f4f4f;
  --input-placeholder: #aaaaaa;
  --focus: var(--brand-600);
  --table-head-bg: #f8f8f8;
  --table-head-fg: #0057b8;
  --table-head-border: #babfc7;
  --table-row-odd: #ffffff;
  --table-row-even: #f8f8f8;
  --table-row-hover: #2196f34d;
  --action-primary: #1f63b0;
  --action-primary-hover: var(--brand-800);
  --action-ghost-fg: #1f63b0;
  --action-icon: #003e78;
  --danger: #c62828;
  --owed: #b3261e;
  --progress-track: #e3e8ef;
  --skeleton-base: #eef1f6;
  --skeleton-shine: #f7f9fc;
  --group-head-bg: #f7f9fc;
  --chip-success-bg: #e8f8e9;
  --chip-success-fg: #1e7a22;
  --chip-neutral-bg: #eff3f4;
  --chip-neutral-fg: #4f4f4f;
  --chip-warning-bg: #fff6ea;
  --chip-warning-fg: #a65a00;
  --chip-danger-bg: #fde7e7;
  --chip-danger-fg: #c62828;
  --chip-info-bg: #e6f0fb;
  --chip-info-fg: #1558a8;
  --dialog-title: var(--brand-700);
  --dialog-divider: #e0e0e0;
  --required-mark: #f44336;
  --fab-delete: #f44336;
  --fab-close: #1b201c;
  --snackbar-error: rgb(224, 72, 72);
  --shadow-table: 0 4px 8px rgba(0, 0, 0, 0.06);
  --shadow-flyout: 0 12px 34px rgba(0, 33, 66, 0.2);
  --shadow-dialog: 0 24px 70px rgba(0, 33, 66, 0.28), 0 2px 8px rgba(0, 33, 66, 0.1);
  --shadow-dialog-soft: 0 8px 32px rgba(33, 37, 41, 0.12);
  --shadow-toggle: 0 2px 8px rgba(0, 33, 66, 0.16);
  --shadow-sticky: -2px 0px 5px rgba(0, 0, 0, 0.1);
  --content-pad: 26px;
  --topbar-pad-x: 26px;
  --topbar-h: 70px;
  --sidebar-w: 278px;
  --sidebar-w-collapsed: 88px;
  --nav-row-h: 38px;
  --nav-gap: 4px;
  --title-gap: 14px;
  --toolbar-gap-x: 14px;
  --toolbar-gap-y: 10px;
  --panel-pad-x: 20px;
  --cell-pad: 8px;
  --control-h: 44px;
  --button-h: 36px;
  --topbar-btn: 42px;
  --search-w: 320px;
  --radius-chip: 4px;
  --radius-icon-btn: 6px;
  --radius-btn: 8px;
  --radius-page-icon: 9px;
  --radius-nav: 10px;
  --radius-flyout: 12px;
  --radius-dialog-md: 14px;
  --radius-dialog: 18px;
  --radius-dialog-lg: 20px;
  --radius-pill: 99px;
  --font-display: "Montserrat", system-ui, sans-serif;
  --font-body: "Roboto", system-ui, sans-serif;
  --font-material: "Nunito Sans", system-ui, sans-serif;
  --font-mono: "Geist Mono", ui-monospace, monospace;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
  --sb-bg-top: #0a2e50;
  --sb-bg-mid: #07223d;
  --sb-bg-bottom: #04182c;
  --flyout-bg: #11324f;
  --flyout-title: #8fd4ee;
  --app-bg: #0e1620;
  --body-bg: #1b2431;
  --surface: #15202c;
  --tb-border: #243140;
  --tb-fg: #e7eef5;
  --tb-dim: #8295a6;
  --page-icon-bg: #1c2b3a;
  --page-icon-fg: var(--brand-400);
  --iconbtn-bg: #1c2b3a;
  --iconbtn-fg: #b7c6d4;
  --iconbtn-hover: #243b52;
  --role-bg: #1c2b3a;
  --text-body: #ffffff;
  --text-table: #e7eef5;
  --text-muted: #9fb0c0;
  --text-note: #9fb0c0;
  --border: #243140;
  --input-border: #243140;
  --input-fg: #e7eef5;
  --table-head-bg: #15202c;
  --table-head-fg: #8fd4ee;
  --table-head-border: #243140;
  --table-row-odd: #161f2b;
  --table-row-even: #1b2735;
  --table-row-hover: #243b52;
  --action-ghost-fg: #8fd4ee;
  --progress-track: #243140;
  --skeleton-base: #1b2735;
  --skeleton-shine: #243140;
  --chip-success-bg: #13351f;
  --chip-success-fg: #86e0a3;
  --chip-neutral-bg: #1b2735;
  --chip-neutral-fg: #9fb0c0;
  --chip-warning-bg: #3a2f12;
  --chip-warning-fg: #f0cf7a;
  --chip-danger-bg: #3a1b22;
  --chip-danger-fg: #ff9aa8;
  --chip-info-bg: #12283f;
  --chip-info-fg: #8cc4ff;
  --shadow-table: 0 2px 8px rgba(0, 0, 0, 0.3);
  color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --sb-bg-top: #0a2e50;
  --sb-bg-mid: #07223d;
  --sb-bg-bottom: #04182c;
  --flyout-bg: #11324f;
  --flyout-title: #8fd4ee;
  --app-bg: #0e1620;
  --body-bg: #1b2431;
  --surface: #15202c;
  --tb-border: #243140;
  --tb-fg: #e7eef5;
  --tb-dim: #8295a6;
  --page-icon-bg: #1c2b3a;
  --page-icon-fg: var(--brand-400);
  --iconbtn-bg: #1c2b3a;
  --iconbtn-fg: #b7c6d4;
  --iconbtn-hover: #243b52;
  --role-bg: #1c2b3a;
  --text-body: #ffffff;
  --text-table: #e7eef5;
  --text-muted: #9fb0c0;
  --text-note: #9fb0c0;
  --border: #243140;
  --input-border: #243140;
  --input-fg: #e7eef5;
  --table-head-bg: #15202c;
  --table-head-fg: #8fd4ee;
  --table-head-border: #243140;
  --table-row-odd: #161f2b;
  --table-row-even: #1b2735;
  --table-row-hover: #243b52;
  --action-ghost-fg: #8fd4ee;
  --progress-track: #243140;
  --skeleton-base: #1b2735;
  --skeleton-shine: #243140;
  --chip-success-bg: #13351f;
  --chip-success-fg: #86e0a3;
  --chip-neutral-bg: #1b2735;
  --chip-neutral-fg: #9fb0c0;
  --chip-warning-bg: #3a2f12;
  --chip-warning-fg: #f0cf7a;
  --chip-danger-bg: #3a1b22;
  --chip-danger-fg: #ff9aa8;
  --chip-info-bg: #12283f;
  --chip-info-fg: #8cc4ff;
  --shadow-table: 0 2px 8px rgba(0, 0, 0, 0.3);
  color-scheme: dark;
}
