/* Farbschema poschmann-steuerberater.de — ERZEUGT von palette.py, nicht von Hand ändern.
   Schema wechseln: <html data-scheme="salbei"> (Default ohne Attribut: kupfer). */

:root {
  --c-brand: #527981;
  --c-primary: #37626c;
  --c-primary-strong: #234951;
  --c-link: #37626c;
  --c-link-strong: #234951;
  --c-ink: #182a2f;
  --c-text: #293235;
  --c-muted: #556063;
  --c-surface: #ffffff;
  --c-border: #d4dddf;
  --c-control: #6d7e81;
  --c-focus: #00739d;
  --c-focus-inverse: #a9e0fe;
  --c-success: #2c6c47;
  --c-danger: #a8372e;
  --c-bg: #fcfaf7;
  --c-surface-alt: #ebf4f6;
  --c-accent: #9d5635;
  --c-accent-strong: #804224;
  --c-accent-edge: #804224;
  --c-on-accent: #ffffff;
  --c-accent-soft: #faebe2;
  --c-primary-rgb: 55, 98, 108;
  --c-link-rgb: 55, 98, 108;
  --c-link-strong-rgb: 35, 73, 81;
  --c-accent-rgb: 157, 86, 53;
  --c-focus-rgb: 0, 115, 157;
}

/* Petrol & Kupfer — komplementär (Default) */
[data-scheme="kupfer"] {
  --c-brand: #527981;
  --c-primary: #37626c;
  --c-primary-strong: #234951;
  --c-link: #37626c;
  --c-link-strong: #234951;
  --c-ink: #182a2f;
  --c-text: #293235;
  --c-muted: #556063;
  --c-surface: #ffffff;
  --c-border: #d4dddf;
  --c-control: #6d7e81;
  --c-focus: #00739d;
  --c-focus-inverse: #a9e0fe;
  --c-success: #2c6c47;
  --c-danger: #a8372e;
  --c-bg: #fcfaf7;
  --c-surface-alt: #ebf4f6;
  --c-accent: #9d5635;
  --c-accent-strong: #804224;
  --c-accent-edge: #804224;
  --c-on-accent: #ffffff;
  --c-accent-soft: #faebe2;
  --c-primary-rgb: 55, 98, 108;
  --c-link-rgb: 55, 98, 108;
  --c-link-strong-rgb: 35, 73, 81;
  --c-accent-rgb: 157, 86, 53;
  --c-focus-rgb: 0, 115, 157;
}

/* Petrol & Salbei — analog */
[data-scheme="salbei"] {
  --c-brand: #527981;
  --c-primary: #37626c;
  --c-primary-strong: #234951;
  --c-link: #37626c;
  --c-link-strong: #234951;
  --c-ink: #182a2f;
  --c-text: #293235;
  --c-muted: #556063;
  --c-surface: #ffffff;
  --c-border: #d4dddf;
  --c-control: #6d7e81;
  --c-focus: #00739d;
  --c-focus-inverse: #a9e0fe;
  --c-success: #2c6c47;
  --c-danger: #a8372e;
  --c-bg: #f8fbfa;
  --c-surface-alt: #eaf5f2;
  --c-accent: #2c6e5a;
  --c-accent-strong: #1e5645;
  --c-accent-edge: #1e5645;
  --c-on-accent: #ffffff;
  --c-accent-soft: #e2f3ec;
  --c-primary-rgb: 55, 98, 108;
  --c-link-rgb: 55, 98, 108;
  --c-link-strong-rgb: 35, 73, 81;
  --c-accent-rgb: 44, 110, 90;
  --c-focus-rgb: 0, 115, 157;
}

/* Petrol & Ocker — geteilt-komplementär */
[data-scheme="ocker"] {
  --c-brand: #527981;
  --c-primary: #37626c;
  --c-primary-strong: #234951;
  --c-link: #37626c;
  --c-link-strong: #234951;
  --c-ink: #182a2f;
  --c-text: #293235;
  --c-muted: #556063;
  --c-surface: #ffffff;
  --c-border: #d4dddf;
  --c-control: #6d7e81;
  --c-focus: #00739d;
  --c-focus-inverse: #a9e0fe;
  --c-success: #2c6c47;
  --c-danger: #a8372e;
  --c-bg: #fcfaf6;
  --c-surface-alt: #ebf4f6;
  --c-accent: #e1b75c;
  --c-accent-strong: #d2a249;
  --c-accent-edge: #8a5f18;
  --c-on-accent: #182a2f;
  --c-accent-soft: #faf1dc;
  --c-primary-rgb: 55, 98, 108;
  --c-link-rgb: 55, 98, 108;
  --c-link-strong-rgb: 35, 73, 81;
  --c-accent-rgb: 225, 183, 92;
  --c-focus-rgb: 0, 115, 157;
}

/* Tinte & Senf — komplementär (Empfehlung frei) */
[data-scheme="tinte"] {
  --c-brand: #2f4989;
  --c-primary: #2f4989;
  --c-primary-strong: #1c3168;
  --c-link: #2f4989;
  --c-link-strong: #1c3168;
  --c-ink: #222633;
  --c-text: #2d3038;
  --c-muted: #5a5d66;
  --c-surface: #ffffff;
  --c-border: #d7dbe2;
  --c-control: #747a87;
  --c-focus: #00739d;
  --c-focus-inverse: #a9e0fe;
  --c-success: #2c6c47;
  --c-danger: #a8372e;
  --c-bg: #fbfaf7;
  --c-surface-alt: #eef2fa;
  --c-accent: #dcbb50;
  --c-accent-strong: #cda53a;
  --c-accent-edge: #876114;
  --c-on-accent: #222633;
  --c-accent-soft: #f9f2dc;
  --c-primary-rgb: 47, 73, 137;
  --c-link-rgb: 47, 73, 137;
  --c-link-strong-rgb: 28, 49, 104;
  --c-accent-rgb: 220, 187, 80;
  --c-focus-rgb: 0, 115, 157;
}

/* Aubergine & Salbei — geteilt-komplementär */
[data-scheme="aubergine"] {
  --c-brand: #653a68;
  --c-primary: #653a68;
  --c-primary-strong: #4a254c;
  --c-link: #653a68;
  --c-link-strong: #4a254c;
  --c-ink: #2e222c;
  --c-text: #352e34;
  --c-muted: #625b61;
  --c-surface: #ffffff;
  --c-border: #ded9de;
  --c-control: #817681;
  --c-focus: #00739d;
  --c-focus-inverse: #a9e0fe;
  --c-success: #2c6c47;
  --c-danger: #a8372e;
  --c-bg: #fbf9fc;
  --c-surface-alt: #f6eff6;
  --c-accent: #3a714f;
  --c-accent-strong: #2a583c;
  --c-accent-edge: #2a583c;
  --c-on-accent: #ffffff;
  --c-accent-soft: #e2f4e7;
  --c-primary-rgb: 101, 58, 104;
  --c-link-rgb: 101, 58, 104;
  --c-link-strong-rgb: 74, 37, 76;
  --c-accent-rgb: 58, 113, 79;
  --c-focus-rgb: 0, 115, 157;
}

/* Graphit & Kobalt — unbunt mit Signalfarbe */
[data-scheme="graphit"] {
  --c-brand: #3e4349;
  --c-primary: #3e4349;
  --c-primary-strong: #272c31;
  --c-link: #2c5dbd;
  --c-link-strong: #1a469d;
  --c-ink: #1e2733;
  --c-text: #2c3137;
  --c-muted: #585e66;
  --c-surface: #ffffff;
  --c-border: #d6dbe1;
  --c-control: #727c86;
  --c-focus: #00739d;
  --c-focus-inverse: #a9e0fe;
  --c-success: #2c6c47;
  --c-danger: #a8372e;
  --c-bg: #ffffff;
  --c-surface-alt: #f1f4f6;
  --c-accent: #2c5dbd;
  --c-accent-strong: #1a469d;
  --c-accent-edge: #1a469d;
  --c-on-accent: #ffffff;
  --c-accent-soft: #ebf2ff;
  --c-primary-rgb: 62, 67, 73;
  --c-link-rgb: 44, 93, 189;
  --c-link-strong-rgb: 26, 70, 157;
  --c-accent-rgb: 44, 93, 189;
  --c-focus-rgb: 0, 115, 157;
}

/* ---- Abbildung auf Bootstrap 5.3 --------------------------------------
   Bootstrap kompiliert Button-/Formular-Farben fest aus Sass; ein Umsetzen
   von --bs-primary allein färbt .btn-primary NICHT um. Deshalb hier explizit. */
:root, [data-scheme] {
  --bs-body-bg: var(--c-bg);
  --bs-body-color: var(--c-text);
  --bs-emphasis-color: var(--c-ink);
  --bs-heading-color: var(--c-ink);
  --bs-secondary-color: var(--c-muted);
  --bs-border-color: var(--c-border);
  --bs-primary: var(--c-primary);
  --bs-primary-rgb: var(--c-primary-rgb);
  --bs-link-color: var(--c-link);
  --bs-link-color-rgb: var(--c-link-rgb);
  --bs-link-hover-color: var(--c-link-strong);
  --bs-link-hover-color-rgb: var(--c-link-strong-rgb);
  --bs-focus-ring-color: rgba(var(--c-focus-rgb), .5);
  --bs-success: var(--c-success);
  --bs-danger: var(--c-danger);
}
body { background-color: var(--c-bg); color: var(--c-text); }

.btn-primary {
  --bs-btn-color: var(--c-surface);
  --bs-btn-bg: var(--c-primary);
  --bs-btn-border-color: var(--c-primary);
  --bs-btn-hover-color: var(--c-surface);
  --bs-btn-hover-bg: var(--c-primary-strong);
  --bs-btn-hover-border-color: var(--c-primary-strong);
  --bs-btn-active-color: var(--c-surface);
  --bs-btn-active-bg: var(--c-primary-strong);
  --bs-btn-active-border-color: var(--c-primary-strong);
  --bs-btn-disabled-bg: var(--c-primary);
  --bs-btn-disabled-border-color: var(--c-primary);
  --bs-btn-focus-shadow-rgb: var(--c-focus-rgb);
}
.btn-outline-primary {
  --bs-btn-color: var(--c-primary);
  --bs-btn-border-color: var(--c-primary);
  --bs-btn-hover-color: var(--c-surface);
  --bs-btn-hover-bg: var(--c-primary);
  --bs-btn-hover-border-color: var(--c-primary);
  --bs-btn-active-color: var(--c-surface);
  --bs-btn-active-bg: var(--c-primary-strong);
  --bs-btn-active-border-color: var(--c-primary-strong);
  --bs-btn-focus-shadow-rgb: var(--c-focus-rgb);
}
/* eigener CTA-Button für den Akzent (sparsam: 1–2 pro Ansicht) */
.btn-accent {
  --bs-btn-color: var(--c-on-accent);
  --bs-btn-bg: var(--c-accent);
  --bs-btn-border-color: var(--c-accent-edge);
  --bs-btn-hover-color: var(--c-on-accent);
  --bs-btn-hover-bg: var(--c-accent-strong);
  --bs-btn-hover-border-color: var(--c-accent-edge);
  --bs-btn-active-color: var(--c-on-accent);
  --bs-btn-active-bg: var(--c-accent-strong);
  --bs-btn-active-border-color: var(--c-accent-edge);
  --bs-btn-focus-shadow-rgb: var(--c-focus-rgb);
}

/* Formularfelder: Bootstrap nimmt --bs-border-color (dekorativ, < 3:1) → eigener Rahmen */
.form-control, .form-select, .form-check-input { border-color: var(--c-control); }
.form-control, .form-select { background-color: var(--c-surface); }
.form-control:focus, .form-select:focus, .form-check-input:focus {
  border-color: var(--c-focus);
  box-shadow: 0 0 0 .25rem rgba(var(--c-focus-rgb), .35);
}
.form-check-input:checked { background-color: var(--c-primary); border-color: var(--c-primary); }

/* Sichtbarer Fokus für Tastatur — unabhängig von Bootstrap */
:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 2px; }

/* Hilfsklassen */
.bg-band   { background-color: var(--c-surface-alt); }
.bg-note   { background-color: var(--c-accent-soft); color: var(--c-ink); }
.text-brand { color: var(--c-brand); }
.text-muted-c { color: var(--c-muted); }
.footer-ink { background-color: var(--c-ink); color: var(--c-surface); }
.footer-ink a { color: var(--c-surface); }
.footer-ink :focus-visible { outline-color: var(--c-focus-inverse); }
