:root {
  --kahsay-color-primary: #079bea;
  --kahsay-color-primary-strong: #0067c1;
  --kahsay-color-ink: #003b7f;
  --kahsay-color-text: #516f89;
  --kahsay-color-surface: #ffffff;
  --kahsay-color-surface-muted: #eff9ff;
  --kahsay-color-border: #c7e4f5;
  --kahsay-radius-sm: 8px;
  --kahsay-radius-md: 12px;
  --kahsay-radius-lg: 18px;
  --kahsay-control-height: 48px;
  --kahsay-container-max: 1240px;
  --kahsay-section-space: clamp(4rem, 8vw, 7rem);
  --color-primary: var(--kahsay-color-primary);
  --color-ink: var(--kahsay-color-ink);
}


/* Kahsay Suite UI Contract 1 -------------------------------------------------
 * Semantische Frontend-Tokens für Theme <-> Plugin-Kompatibilität.
 * Themes überschreiben nur diese Werte; Plugins dürfen keine Theme-Dateien
 * oder Theme-spezifischen Klassennamen voraussetzen.
 */
:root {
  --kahsay-ui-primary: var(--kahsay-color-primary, #079bea);
  --kahsay-ui-primary-strong: var(--kahsay-color-primary-strong, #0067c1);
  --kahsay-ui-ink: var(--kahsay-color-ink, #003b7f);
  --kahsay-ui-text: var(--kahsay-color-text, #516f89);
  --kahsay-ui-muted: var(--kahsay-color-text, #667887);
  --kahsay-ui-surface: var(--kahsay-color-surface, #ffffff);
  --kahsay-ui-surface-muted: var(--kahsay-color-surface-muted, #eff9ff);
  --kahsay-ui-border: var(--kahsay-color-border, #c7e4f5);
  --kahsay-ui-on-primary: #ffffff;
  --kahsay-ui-success: #237044;
  --kahsay-ui-success-soft: #eaf7ee;
  --kahsay-ui-warning: #895d00;
  --kahsay-ui-warning-soft: #fff5d7;
  --kahsay-ui-danger: #9a2b22;
  --kahsay-ui-danger-soft: #fff0ef;
  --kahsay-ui-focus: color-mix(in srgb, var(--kahsay-ui-primary) 28%, transparent);
  --kahsay-ui-card-radius: var(--kahsay-radius-lg, 18px);
  --kahsay-ui-control-radius: var(--kahsay-radius-sm, 8px);
  --kahsay-ui-button-radius: var(--kahsay-radius-sm, 8px);
  --kahsay-ui-card-border-width: 1px;
  --kahsay-ui-card-shadow: 0 14px 40px rgba(0,59,127,.08);
  --kahsay-ui-control-height: var(--kahsay-control-height, 48px);
  --kahsay-ui-component-gap: clamp(1rem, 2.5vw, 1.5rem);

  /* Legacy aliases. Bestehende Plugins bleiben dadurch kompatibel, während
     neue Komponenten direkt die --kahsay-ui-* Tokens verwenden. */
  --color-primary: var(--kahsay-ui-primary);
  --color-primary-dark: var(--kahsay-ui-primary-strong);
  --color-ink: var(--kahsay-ui-ink);
  --color-muted: var(--kahsay-ui-muted);
  --color-light: var(--kahsay-ui-surface-muted);
  --color-line: var(--kahsay-ui-border);
  --color-white: var(--kahsay-ui-surface);
  --radius: var(--kahsay-ui-control-radius);
  --radius-lg: var(--kahsay-ui-card-radius);
  --shadow: var(--kahsay-ui-card-shadow);
}

.kahsay-suite-component {
  color: var(--kahsay-ui-ink);
  font: inherit;
}
.kahsay-suite-component :where(input,select,textarea,button){font:inherit}
.kahsay-suite-component :where(input:not([type=checkbox]):not([type=radio]),select,textarea){
  border-color:var(--kahsay-ui-border);
  border-radius:var(--kahsay-ui-control-radius);
  background:var(--kahsay-ui-surface);
  color:var(--kahsay-ui-ink);
}
.kahsay-suite-component :where(input,select,textarea,button,a):focus-visible{
  outline:3px solid var(--kahsay-ui-focus);
  outline-offset:2px;
}


/* Zentrale Kahsay-Wort-/Bildmarke -------------------------------------------
 * Das Logo selbst kommt aus dem theme-unabhängigen Unternehmensprofil.
 * Themes dürfen Position und maximalen Platz bestimmen, aber die Grafik
 * weder einfärben noch invertieren. Bei Overlay-Headern sorgt eine neutrale
 * Logo-Platte für Lesbarkeit, statt eine alternative Logovariante zu nutzen.
 */
.kahsay-suite-logo-link{display:inline-flex;align-items:center;line-height:0;flex:0 0 auto}
.kahsay-suite-logo{display:block;width:auto;height:auto;max-width:100%;object-fit:contain;filter:none!important}
.site-header.is-overlay-front .kahsay-suite-logo-link{background:rgba(255,255,255,.96);padding:.32rem .48rem;border-radius:8px;box-shadow:0 8px 26px rgba(0,0,0,.10)}
@media (max-width:767px){.site-header.is-overlay-front .kahsay-suite-logo-link{padding:.25rem .4rem}}
