/* Fünf Haushalts-Themes. Personenfarben und Zustandsbedeutungen bleiben erhalten. */
:root, :root[data-theme="peach"] {
  color-scheme: light;
  --theme-sidebar:#293f35;
  --theme-sidebar-text:#fff7ec;
  --theme-sidebar-muted:#d5dfd2;
  --theme-on-accent:#293f35;
  --theme-radius:20px;
  --theme-accent-hover:#eaa184;
  --theme-backdrop:#182c2466;
  --theme-focus:color-mix(in srgb,var(--peach) 35%,transparent);
  --theme-ink-line:color-mix(in srgb,var(--color-text) 10%,transparent);
}
:root[data-theme="sage"] {
  --color-surface:#fbfdf9; --color-surface-raised:#f1f6ee; --color-surface-sunken:#eaf0e8;
  --color-surface-warm:#e0ebdd; --color-text:#253e30; --color-text-muted:#536c58;
  --color-border:#d5e1d1; --color-border-strong:#93aa90;
  --color-accent:#376649; --color-accent-ink:#2a513b; --color-accent-soft:#e0ebdd; --color-accent-line:#a1b99b; --color-accent-alt:#587747;
  --peach:#abc7b0; --theme-accent-hover:#97b99d; --theme-sidebar:#28493e; --theme-on-accent:#1c3528; --theme-radius:16px;
}
:root[data-theme="lavender"] {
  --color-surface:#fdfbff; --color-surface-raised:#f6f1fc; --color-surface-sunken:#f0edf6;
  --color-surface-warm:#ece2f7; --color-text:#3b304b; --color-text-muted:#6b5d7a;
  --color-border:#e2d9ed; --color-border-strong:#b2a0c3;
  --color-accent:#725091; --color-accent-ink:#62417e; --color-accent-soft:#eee2fa; --color-accent-line:#c1a2d7; --color-accent-alt:#806996;
  --peach:#cab5e7; --theme-accent-hover:#bba0de; --theme-sidebar:#443654; --theme-sidebar-muted:#e5daef; --theme-on-accent:#392b49; --theme-radius:24px;
}
:root[data-theme="sand"] {
  --color-surface:#fffdf7; --color-surface-raised:#f7f3e9; --color-surface-sunken:#f0ece2;
  --color-surface-warm:#eee2c9; --color-text:#433d30; --color-text-muted:#716752;
  --color-border:#e1dac9; --color-border-strong:#b5a68a;
  --color-accent:#82633b; --color-accent-ink:#6a502e; --color-accent-soft:#f1e5cd; --color-accent-line:#cdb994; --color-accent-alt:#757148;
  --peach:#dac295; --theme-accent-hover:#cfb47f; --theme-sidebar:#4f483c; --theme-sidebar-muted:#e4dece; --theme-on-accent:#393326; --theme-radius:12px;
}
:root[data-theme="midnight"] {
  color-scheme:dark;
  --color-surface:#22362f; --color-surface-raised:#2a4038; --color-surface-sunken:#172622;
  --color-surface-warm:#3f3931; --color-text:#f0f1e6; --color-text-muted:#b4c2b8;
  --color-border:#3b5047; --color-border-strong:#71877b;
  --color-accent:#efb599; --color-accent-ink:#f5c5ab; --color-accent-soft:#4a3c32; --color-accent-line:#9f785c; --color-accent-alt:#a6c7b3;
  --color-success:#8abc9d; --color-success-fill:#3f7154; --color-success-ink:#a0d8b5; --color-success-soft:#283f30; --color-success-line:#4d6c56;
  --color-warning:#d7b36c; --color-warning-ink:#ecd18d; --color-warning-soft:#403b27; --color-warning-line:#776b43;
  --color-danger:#e9a39a; --color-danger-ink:#f5b6ac; --color-danger-soft:#4a302e; --color-danger-line:#895d54;
  --peach:#dfaa8c; --theme-accent-hover:#ebba9f; --theme-sidebar:#101d19; --theme-sidebar-text:#f0f1e6; --theme-sidebar-muted:#b8c9bf; --theme-on-accent:#26362b; --theme-radius:18px;
  --shadow-card:0 3px 12px #00000016; --shadow-modal:0 24px 90px #00000077;
}
/* Gemeinsame Farben für Komponenten, die früher eigene Hexwerte besaßen. */
body { accent-color:var(--color-accent); }
.column { border-radius:var(--theme-radius); }
.sidebar, .sidebar:hover, .sidebar:focus-within { background:var(--theme-sidebar); color:var(--theme-sidebar-text); }
.brand .rudelfunk-wordmark { color:var(--theme-sidebar-text); }
.brand .brand-name,.nav-item { color:var(--theme-sidebar-muted); }
.nav-item:hover { color:var(--theme-sidebar-text); }
.nav-item.active,.nav-item.active:hover,.nav-create-btn,.nav-create-btn:hover { color:var(--theme-on-accent); }
.btn-primary,.tab.active { color:var(--theme-on-accent); }
.btn-primary:hover,.nav-create-btn:hover { background:var(--theme-accent-hover); }
.board-overview { background:var(--color-surface-warm); border-color:var(--color-accent-line); }
.overview-stat,.overview-events { border-color:var(--color-accent-line); }
.overview-label { color:var(--color-accent-ink); }
#overviewProgress,#overviewProgress::-webkit-progress-bar { background:var(--color-accent-line); }
#overviewProgress::-webkit-progress-value { background:var(--color-success-fill); }
#overviewProgress::-moz-progress-bar { background:var(--color-success-fill); }
.col-points { background:var(--color-surface); border-color:var(--color-border); }
.task.done { background:var(--color-success-soft); border-color:var(--color-success-line); }
.task.done .task-check { background:var(--color-success-fill); border-color:var(--color-success-fill); }
.column.all-done { border-color:var(--color-success-line); }
.column.all-done .col-header { background:var(--color-success-soft); }
.column.all-done .col-progress-fill { background:var(--color-success-fill); }
.task-date-notice,.task:disabled .task-check,.task[aria-disabled="true"] .task-check { background:var(--color-surface-raised); }
.column-ghost,.list-empty { background:var(--color-surface); border-color:var(--color-border-strong); }
.ghost-avatar,.list-icon { background:var(--color-success-soft); color:var(--color-success-ink); }
.event-card,.month-event,.week-event { background:var(--color-accent-soft); border-color:var(--color-accent-line); color:var(--color-text); }
.list-header,.planner-people,.calendar-view .month-head { background:var(--color-surface-raised); }
.list-add input,.segment,.planner-day.weekend,.calendar-view .month-day.weekend { background:var(--color-surface-raised); }
.calendar-view .month-day.outside { background:var(--color-surface-sunken); }
.planner-day.today .planner-day-head,.calendar-view .month-day.today { background:var(--color-accent-soft); }
.planner-day.today,.calendar-view .month-day.today { border-color:var(--color-accent-line); box-shadow:inset 0 0 0 2px var(--color-accent-line); }
.planner-day.today .planner-date>span,.month-today-label,.month-mobile-events { color:var(--color-accent-ink); }
.planner-event-time,.planner-event-person { color:var(--color-text-muted); }
.planner-person.done .planner-person-copy small,.planner-person-check { color:var(--color-success-ink); }
.planner-person:hover,.planner-day-head:hover,.calendar-view .month-day:hover { background:var(--color-accent-soft); }
.modal-backdrop { background:var(--theme-backdrop); }
.admin-item,.template-chip,.setup-person { background:var(--color-surface-raised); border-color:var(--color-border); }
.admin-form input:not([type=checkbox]):not([type=radio]),.admin-form select,.admin-form textarea,.field input,.setup-form input,.setup-auswahl { background:var(--color-surface-raised); border-color:var(--color-border-strong); color:var(--color-text); }
.admin-form input:focus,.admin-form select:focus,.field input:focus { background:var(--color-surface); border-color:var(--color-accent); box-shadow:0 0 0 3px var(--theme-focus); }
.admin-item.feed-incomplete,.abo-bar-knapp { background:var(--color-warning-soft); border-color:var(--color-warning-line); }
.feed-warning,.abo-bar-knapp .icon { color:var(--color-warning-ink); }
.abo-bar-gesperrt { background:var(--color-surface-warm); border-color:var(--color-accent-line); }
.abo-bar-gesperrt .icon { color:var(--color-accent-ink); }
:root[data-theme="midnight"] .task-icon,:root[data-theme="midnight"] .event-icon { color:#293f35; }
:root[data-theme="midnight"] .daycal-event { color:#edf1e7; background:color-mix(in srgb,var(--person,#dfaa8c) 20%,var(--color-surface)); }
:root[data-theme="midnight"] .col-stats,:root[data-theme="midnight"] .task.done .task-label { color:var(--color-text-muted); }
:root[data-theme="midnight"] .event-icon { color:var(--color-accent-ink); }
:root[data-theme="midnight"] .history-dot { border-color:var(--color-border-strong); }
