/* Shared UI layer of the cabinet (/portal) and the superadmin (/superadmin), UX package 6, Е2.
   Tokens and a few components both shells use; nothing else. portal.css (global Bootstrap
   overrides, the cabinet shell) is NOT linked in the superadmin, and superadmin.css (sticky
   tables, short ids) is NOT linked in the cabinet. Local file only: no imports, no remote URLs
   (strict CSP). Load order in both shells: bootstrap, ui.css, then the shell's own file. */

:root {
  /* Neutral */
  --patifot-canvas: #f3f7fb;
  --patifot-surface-muted: #eaf1f7;
  --patifot-secondary: #42516a;
  /* Status: one meaning in both interfaces (see the status_badge macro in _ui.html).
     success = works or done, warning = needs attention or waits, danger = broken or closed,
     info = in progress, secondary (neutral) = ended or off. */
  --patifot-success: #17734b;
  --patifot-success-soft: #e1f5ea;
  --patifot-success-ink: #0f5337;
  --patifot-success-line: #a8d8be;
  --patifot-warning: #8a5a00;
  --patifot-warning-soft: #fff1cd;
  --patifot-warning-ink: #694400;
  --patifot-warning-line: #ead18d;
  --patifot-danger: #b42a3b;
  --patifot-danger-soft: #ffe7ea;
  --patifot-danger-ink: #751724;
  --patifot-danger-line: #f3b5bd;
  --patifot-info: #245f91;
  --patifot-info-soft: #e4f1fc;
  --patifot-info-ink: #154b76;
  --patifot-info-line: #b4d5ee;
  /* Radii */
  --patifot-radius-sm: 12px;
  --patifot-radius: 16px;
}

.text-secondary { color: var(--patifot-secondary) !important; }
.text-danger { color: var(--patifot-danger) !important; }
.text-success { color: var(--patifot-success) !important; }
.text-warning { color: var(--patifot-warning) !important; }

.alert { color: var(--patifot-text, #101724); border-radius: var(--patifot-radius); }
.alert-success { background: var(--patifot-success-soft); border-color: var(--patifot-success-line); }
.alert-warning { background: var(--patifot-warning-soft); border-color: var(--patifot-warning-line); }
.alert-danger { background: var(--patifot-danger-soft); border-color: var(--patifot-danger-line); }
.alert-info { background: var(--patifot-info-soft); border-color: var(--patifot-info-line); }

.badge { padding: .42em .68em; border-radius: 999px; font-weight: 750; letter-spacing: .01em; }
.text-bg-success { color: var(--patifot-success-ink) !important; background: var(--patifot-success-soft) !important; }
.text-bg-warning { color: var(--patifot-warning-ink) !important; background: var(--patifot-warning-soft) !important; }
.text-bg-danger { color: var(--patifot-danger-ink) !important; background: var(--patifot-danger-soft) !important; }
.text-bg-info { color: var(--patifot-info-ink) !important; background: var(--patifot-info-soft) !important; }
.text-bg-secondary { color: var(--patifot-secondary) !important; background: var(--patifot-surface-muted) !important; }
.text-bg-light { color: var(--patifot-secondary) !important; background: var(--patifot-canvas) !important; }

/* Empty states (_ui.html: empty_state / empty_row). Four kinds, four looks. */
.ui-empty { padding: 1.25rem 1rem; text-align: center; color: var(--patifot-secondary); }
.ui-empty-title { font-weight: 700; color: var(--patifot-text, #101724); }
.ui-empty-forbidden { color: var(--patifot-warning-ink); }
.ui-empty-failure { color: var(--patifot-danger-ink); }
.ui-empty-failure .ui-empty-title { color: var(--patifot-danger-ink); }
/* Inside a card (the superadmin error page) the text reads from the left, without extra padding. */
.card > .ui-empty { text-align: left; padding: .25rem 0 1rem; }
