/* ---------- Dunkelmodus (folgt der Einstellung von Handy / Computer / Browser) ---------- */
@media (prefers-color-scheme: dark) {
  body.admin, body.app-body {
    color-scheme: dark;
    --ink: #ebe8e1; --ink-deep: #ffffff;
    --paper: #161615; --white: #1f1e1c;
    --k10: #2a2926; --k30: #4a4843; --line: #33312e; --muted: #a9a59c;
    --gold: #c9ab72; --gold-deep: #dcc08a; --gold-soft: #352d20;
    --gold-button: #a9884e; --gold-button-hover: #b8975c;
    --solid: #3b3a36; --solid-hover: #4a4844;
    --ok: #93c486; --ok-soft: #1e2b1b; --warn: #e3b465; --warn-soft: #362b17; --bad: #d0604b; --bad-soft: #3a1f1a;
    --shadow: 0 22px 60px rgba(0, 0, 0, .5); --shadow-s: 0 8px 28px rgba(0, 0, 0, .35);
    background: var(--paper); color: var(--ink);
  }
  body.admin { background: #161615; }
  /* Eingabefelder: dunkler Grund, helle Schrift, klar sichtbarer Rand */
  body.admin, body.app-body {
    --field-bg: #11110f; --field-ink: #f3f0e8; --field-border: #55524b; --field-placeholder: #8b877e;
    --field-disabled: #1b1a18; --field-focus: rgba(201, 171, 114, .35);
  }
  body.admin input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
  body.admin select, body.admin textarea,
  body.app-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
  body.app-body select, body.app-body textarea {
    background-color: var(--field-bg); color: var(--field-ink); border-color: var(--field-border); color-scheme: dark;
  }
  body.admin input:hover:not(:focus):not(:disabled), body.admin select:hover:not(:focus), body.admin textarea:hover:not(:focus),
  body.app-body input:hover:not(:focus):not(:disabled), body.app-body select:hover:not(:focus), body.app-body textarea:hover:not(:focus) { border-color: #6d695f; }
  body.admin input:focus, body.admin select:focus, body.admin textarea:focus,
  body.app-body input:focus, body.app-body select:focus, body.app-body textarea:focus { border-color: var(--gold); background-color: #0c0c0b; }
  body.admin ::placeholder, body.app-body ::placeholder { color: var(--field-placeholder); opacity: 1; }
  body.admin select option, body.app-body select option { background: #1f1e1c; color: var(--field-ink); }
  /* Gesperrte / nur lesbare Felder: etwas heller als die Fläche, Schrift gedämpft, aber gut lesbar */
  body.admin input:disabled, body.admin select:disabled, body.admin textarea:disabled, body.admin input[readonly],
  body.app-body input:disabled, body.app-body input[readonly] { background-color: var(--field-disabled); color: #bdb8ad; -webkit-text-fill-color: #bdb8ad; border-style: dashed; }
  /* Vom Browser automatisch ausgefüllte Felder (Chrome/Safari färben sie sonst hell) */
  body.admin input:-webkit-autofill, body.admin input:-webkit-autofill:hover, body.admin input:-webkit-autofill:focus,
  body.app-body input:-webkit-autofill, body.app-body input:-webkit-autofill:hover, body.app-body input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--field-ink); caret-color: var(--field-ink);
    -webkit-box-shadow: 0 0 0 1000px var(--field-bg) inset; box-shadow: 0 0 0 1000px var(--field-bg) inset;
    transition: background-color 9999s ease-out 0s;
  }
  /* Kalender- und Uhrzeit-Symbole hell */
  body.admin input::-webkit-calendar-picker-indicator, body.app-body input::-webkit-calendar-picker-indicator { filter: invert(.85); opacity: .8; }
  body.admin input[type="checkbox"], body.admin input[type="radio"], body.app-body input[type="checkbox"], body.app-body input[type="radio"] { accent-color: var(--gold); }
  body.admin a, body.app-body a { text-decoration-color: rgba(201, 171, 114, .6); }
  /* Statusfarben */
  body.admin .pill-ok, body.admin .lvl-2 { background: #1f3322; color: #9fd3a6; }
  body.admin .pill-open, body.app-body .badge-ask { background: #3a2e17; color: #f0c574; }
  body.admin .pill-warn { background: #3d1f1b; color: #f19a8b; }
  body.admin .lvl-1 { background: #1f2836; color: #a9c1e0; }
  body.admin .vote-row, body.admin .code-box, body.app-body .code-box { background: #2a251c; }
  body.admin .todo strong { background: #1f3322; color: #9fd3a6; }
  body.admin .todo.is-due strong { background: var(--gold-soft); color: var(--gold-deep); }
  body.admin .num-grid a { background: #262522; }
  body.admin .mrow:hover { background: #24231f; }
  body.admin .nav-home { background: #2c2b28; box-shadow: none; }
  body.admin .nav-home[aria-current] { background: var(--gold-button); }
  body.admin .adm-nav a:hover, body.admin .nav-links a:hover { background: #262522; }
  body.admin .adm-user { background: #1a1918; }
  body.admin .alert { background: var(--warn-soft); color: var(--ink); }
  body.admin .alert.ok { background: var(--ok-soft); }
  body.admin table th { color: var(--muted); }
  body.admin .diag-log pre { background: #0f0f0e; }
  body.admin .btn-ghost, body.app-body .btn-ghost { border-color: #4a4844; }
  body.admin img.ni, body.admin .mavatar { background: var(--gold-soft); }
  /* Mitglieder-App */
  body.app-body .chat-msg:not(.is-me) .chat-bubble { background: #262522; border-color: #33312e; }
  body.app-body .chat-msg.is-me .chat-bubble { background: #4a3f2a; border-color: #4a3f2a; }
  body.app-body .rsvp-btn { background: #262522; }
  body.app-body .member-card { box-shadow: 0 18px 40px rgba(0, 0, 0, .55); }
  body.app-body .app-foot, body.app-body .app-tabs, body.app-body .app-desk { background: rgba(22, 22, 21, .94); border-color: #33312e; }
}
@media (prefers-color-scheme: dark) {
  body.admin .side-search input { background: #1d1d1b; }
  body.admin .side-toggle, body.admin .sec-tabs { background: #1f1f1d; }
  body.admin .sec-tabs a:hover { background: #262522; }
  body.admin .sec-tabs a[aria-current] { background: var(--gold-button); }
}
@media (prefers-color-scheme: dark) {
  body.admin .db-card { background: #1f1f1d; }
  body.admin .db-members { background: #2c2b28; }
  body.admin .btn-line { background: #1f1f1d; color: inherit; }
}
