/* ============================================================================
   Neleso ↔ cpms-core Bridge — mappt die semantischen Untitled-UI-Tokens von
   cpms-core (style.css :root) auf die Neleso/shadcn-Werte. Wird NACH
   style.css geladen, damit ein späteres :root gewinnt. Dadurch erben alle
   100 CPMS-Seiten (Cards, Tabellen, Buttons, Formulare) den shadcn-Look +
   Neleso-Blau, ohne jede Seite einzeln anzufassen. Nur Hell-Modus (Demo).
   ========================================================================== */

:root, html[data-theme="light"], html[data-theme="dark"] {
  /* Neleso-Blau-Rampe → alle --color-*-brand-* (= var(--brand-N)) kaskadieren mit */
  --brand-25:  #f5f9ff;
  --brand-50:  #edf5ff;
  --brand-100: #dbeaff;
  --brand-200: #bedcff;
  --brand-300: #91c5ff;
  --brand-400: #5aa6ff;
  --brand-500: #2787fa;
  --brand-600: #0a72ef;
  --brand-700: #005fcc;
  --brand-800: #084da3;
  --brand-900: #0c417f;
  --brand-950: #082950;

  /* Semantische cpms-Tokens → shadcn (Zinc, hell) */
  --bg-page:        #ffffff;
  --bg-surface:     #ffffff;
  --bg-surface-hover: #f5f5f5;
  --text-primary:   #171717;
  --text-secondary: #666666;
  --text-tertiary:  #8a8a8a;
  --border-subtle:  #ebebeb;
  --border-strong:  #d8d8d8;
  --accent:         #0a72ef;
  --accent-hover:   #005fcc;
  --green:          #18864b;
  --red:            #c83232;
  --radius-sm: 6px; --radius-md: 8px; --radius-lg: 8px;
  --shadow-card: 0 1px 2px 0 rgb(0 0 0 / .035);
  --font-serif: 'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  /* Untitled Ring-/Brand-Bg-Tokens auf Neleso-Blau ziehen */
  --ring-brand: 0 0 0 3px rgba(10, 114, 239, .22);
  --color-bg-brand-primary: #0a72ef;
  --color-bg-brand-secondary: #2787fa;
  --color-text-brand-primary: #005fcc;
  --color-border-brand: #91c5ff;
}

/* Seiten-Titel: von 40px-Serif auf shadcn-h1 (24px/600 sans) */
.page-title { font-family: var(--font-sans) !important; font-weight: 600 !important;
  font-size: 1.5rem !important; letter-spacing: -.02em !important; line-height: 1.2 !important; }
.page-desc { font-size: .875rem; }

/* Content-Container: volle Breite (große Tabellen), Padding wie n-main */
.container { padding: 1.5rem 2rem !important; max-width: none !important; }

/* Body-Grundfläche exakt weiß (cpms nutzte Bronze-Creme --bg-page) */
body { background: #ffffff; }

/* Cards: shadcn-Radius + dezenter Rahmen (Tokens greifen schon, hier Feinschliff) */
.card { border-radius: 8px; }
.cards { gap: 1rem; }

/* Buttons an shadcn-Höhe/Radius angleichen */
.btn-primary, .btn-ghost {
  height: auto; padding: .5rem 1rem; border-radius: 8px;
  font-size: .875rem; font-weight: 500;
}
.btn-primary { width: auto; }

/* Tabellen: shadcn-Header (muted, klein) */
.data-table thead th, table.data-table th {
  background: rgb(250 250 250 / .8);
  font-size: .8125rem; font-weight: 500; color: #666666;
}

/* Fokus-Ringe in Neleso-Blau */
input:focus, select:focus, textarea:focus { outline: none; box-shadow: var(--ring-brand); }
