/* Sam Suite Marken-Schicht – Kern. Verbindlich laut BRAND.md.
   Hell ist die Grundlage; sam-brand.js setzt data-sam-theme="light|dark" am <html>. */
@font-face {
  font-family: 'Manrope';
  src: url('manrope-latin.woff2') format('woff2');
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --sam-font: Manrope, 'Segoe UI', Arial, sans-serif;
  --sam-bg: #F6F3EE;
  --sam-surface: #FFFFFF;
  --sam-surface-2: #FAF8F4;
  --sam-hover: #F0EBE2;
  --sam-line: #E4DDD0;
  --sam-line-strong: #CFC5B3;
  --sam-text: #141210;
  --sam-text-dim: #5E574C;
  --sam-text-faint: #8A8174;
  --sam-accent: #A9771F;
  --sam-gold: #D9A941;
  --sam-gold-strong: #C4922C;
  --sam-gold-text: #8A5F14;
  --sam-gold-soft: #F6EDDA;
  --sam-gold-line: #E6CF9C;
  --sam-gold-light: #F7DC8F;
  --sam-on-gold: #1A1300;
  --sam-ink-panel: #141210;
  --sam-ink-panel-2: #24211C;
  --sam-on-dark: #F3EEE4;
  --sam-danger: #B23A2C;
  --sam-danger-soft: #F8E6E2;
  --sam-success: #2F7A55;
  --sam-success-soft: #E4F1E9;
  --sam-warning: #A86412;
  --sam-warning-soft: #F8ECDA;
  --sam-shadow: 0 1px 2px rgba(20, 18, 16, .05), 0 10px 28px rgba(20, 18, 16, .07);
}

:root[data-sam-theme="dark"] {
  color-scheme: dark;
  --sam-bg: #0B0B0A;
  --sam-surface: #141311;
  --sam-surface-2: #181714;
  --sam-hover: #1F1D19;
  --sam-line: #2A2620;
  --sam-line-strong: #3A342B;
  --sam-text: #F3EEE4;
  --sam-text-dim: #BDB4A4;
  --sam-text-faint: #8F8676;
  --sam-accent: #D9A941;
  --sam-gold: #D9A941;
  --sam-gold-strong: #E5B955;
  --sam-gold-text: #E2B85A;
  --sam-gold-soft: #2A2316;
  --sam-gold-line: #5C4A24;
  --sam-gold-light: #F7DC8F;
  --sam-on-gold: #1A1300;
  --sam-ink-panel: #1C1A16;
  --sam-ink-panel-2: #26231E;
  --sam-on-dark: #F3EEE4;
  --sam-danger: #E08A7E;
  --sam-danger-soft: #3A1E1A;
  --sam-success: #7CC39B;
  --sam-success-soft: #17291F;
  --sam-warning: #E0A95E;
  --sam-warning-soft: #33250F;
  --sam-shadow: none;
}

:root[data-sam-theme="light"] { color-scheme: light; }

:root[data-sam-theme] body { font-family: var(--sam-font); background-color: var(--sam-bg); color: var(--sam-text); }
:root[data-sam-theme] :is(button, input, select, textarea) { font-family: inherit; }
:root[data-sam-theme] ::selection { background: color-mix(in srgb, var(--sam-gold) 35%, transparent); }

/* Umschalter Hell/Dunkel – schwebend unten rechts, falls das Produkt keinen eigenen Platz vorgibt */
.sam-theme-toggle {
  position: fixed; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 2147483000;
  width: 40px; height: 40px; border-radius: 999px;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--sam-surface); color: var(--sam-gold-text);
  border: 1px solid var(--sam-line); box-shadow: var(--sam-shadow);
  cursor: pointer; padding: 0; transition: border-color .15s, transform .15s;
}
.sam-theme-toggle:hover { border-color: var(--sam-gold); transform: translateY(-1px); }
.sam-theme-toggle:focus-visible { outline: 2px solid var(--sam-gold); outline-offset: 3px; }
.sam-theme-toggle svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
[data-sam-theme-toggle].sam-theme-toggle { position: static; box-shadow: none; }
@media print { .sam-theme-toggle { display: none; } }
@media (prefers-reduced-motion: reduce) { .sam-theme-toggle { transition: none; } }

/* Sam Suite Betreiberbereich: automatisch umgefärbt aus landing\betreiber\operator.css (sam-recolor.js) */
:root[data-sam-theme]{font-family:var(--sam-font);color:var(--sam-text);background:var(--sam-bg);--gold:var(--sam-accent);--navy:var(--sam-text);--muted:var(--sam-text-dim);--line:var(--sam-line)}
:root[data-sam-theme] button:focus-visible,:root[data-sam-theme] a:focus-visible,:root[data-sam-theme] input:focus-visible,:root[data-sam-theme] select:focus-visible,:root[data-sam-theme] textarea:focus-visible{outline:3px solid var(--sam-accent)}
:root[data-sam-theme] .sidebar{background:linear-gradient(160deg,var(--sam-ink-panel),var(--sam-ink-panel));color:var(--sam-on-dark)}
:root[data-sam-theme] .brand span{color:var(--sam-gold-text)}
:root[data-sam-theme] .nav-label{color:var(--sam-text-faint)}
:root[data-sam-theme] .nav-item{color:var(--sam-text-faint)}
:root[data-sam-theme] .nav-item.selected{background:color-mix(in srgb, var(--sam-surface) 7%, transparent);color:var(--sam-gold-text);border-left:2px solid var(--sam-accent)}
:root[data-sam-theme] .sidebar-bottom{color:var(--sam-text-faint)}
:root[data-sam-theme] .sidebar-bottom a{color:var(--sam-on-dark)}
:root[data-sam-theme] .eyebrow{color:var(--sam-gold-text)}
:root[data-sam-theme] .primary{color:var(--sam-on-dark)}
:root[data-sam-theme] .secondary{background:var(--sam-surface)}
:root[data-sam-theme] .stats article{background:var(--sam-surface)}
:root[data-sam-theme] .panel{background:var(--sam-surface)}
:root[data-sam-theme] input,:root[data-sam-theme] select,:root[data-sam-theme] textarea{border:1px solid var(--sam-line);background:var(--sam-surface)}
:root[data-sam-theme] th{background:var(--sam-surface)}
:root[data-sam-theme] td{border-top:1px solid var(--sam-line)}
:root[data-sam-theme] .chip{background:var(--sam-bg);color:var(--sam-text)}
:root[data-sam-theme] .badge{background:var(--sam-bg);color:var(--sam-text-dim)}
:root[data-sam-theme] .badge.active{background:var(--sam-hover);color:var(--sam-success)}
:root[data-sam-theme] .badge.attention{background:var(--sam-gold-soft);color:var(--sam-gold-text)}
:root[data-sam-theme] .error{background:var(--sam-bg);color:var(--sam-danger)}
:root[data-sam-theme] dialog::backdrop{background:color-mix(in srgb, var(--sam-ink-panel) 57%, transparent)}
:root[data-sam-theme] .person{background:var(--sam-bg)}
:root[data-sam-theme] .notice{background:var(--sam-hover);color:var(--sam-text-dim)}
