/* DigitalAkten – additive Styles (globales /style.css bleibt Chef) */

:root{
  --rd24-overlay-alpha: 0.45;
  --rd24-header-alpha: 0.55;

  /* Basis */
  --rd24-card-alpha: 0.32;

  /* Abgeleitete Werte (NICHT per calc() in rgba – damit Regler zuverlässig wirken) */
  --rd24-card-alpha-soft: 0.22;   /* card - 0.06 */
  --rd24-card-alpha-hover: 0.40;  /* card + 0.06 */
  --rd24-gear-alpha: 0.26;        /* card + 0.04 */
  --rd24-gear-alpha-hover: 0.30;  /* card + 0.08 */
  --rd24-modal-card-alpha: 0.44;  /* card + 0.12 */
}

/* ✅ Alles auf der Seite über dem Overlay halten (sonst Footer "säuft ab") */
/* ✅ Alles auf der Seite über dem Overlay halten (Footer + Content),
   aber den GLOBALEN Header NICHT runterziehen */
#rd24-footer,
.da-wrap{
  position: relative;
  z-index: 1;
}

/* ✅ Header bleibt immer oberste Lage (globaler Wert absichern) */
#rd24-header{
  position: relative;
  z-index: 99999 !important;
}


.da-wrap{
  max-width: 1200px;
  margin: 0 auto;
  padding: 18px 14px 40px;
}
/* ✅ Große “Glas-Karte” um den ganzen Seiteninhalt */
.da-surface{
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.14);

  /* Grundabdunklung + leichter Verlauf für bessere Lesbarkeit */
  background:
    linear-gradient(180deg, rgba(0,0,0,.42), rgba(0,0,0,.30));

  /* Glas-Effekt */
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  box-shadow: 0 18px 60px rgba(0,0,0,.35);
  padding: 14px;
}

/* Mobile: etwas weniger Blur (Performance) */
@media (max-width: 768px){
  .da-surface{
    padding: 12px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }
}

.da-hero{
  display: grid;
  grid-template-columns: 1.35fr 0.65fr;
  gap: 14px;
  align-items: start;
  margin-top: 10px;
  margin-bottom: 14px;
}

.da-title{
  margin: 0 0 6px;
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.05;
}

.da-subtitle{
  margin: 0 0 10px;
  opacity: .92;
  max-width: 64ch;
}

.da-chips{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.da-chip{
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,var(--rd24-card-alpha-soft));
  font-size: 13px;
}

.da-grid{
  display: grid;
  grid-template-columns: 1fr; /* ✅ Details immer unten */
  gap: 14px;
}


.da-card{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,var(--rd24-card-alpha));
  box-shadow: 0 10px 30px rgba(0,0,0,.18);
  padding: 14px;
}

.da-card__head{
  display: flex;
  gap: 10px;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 10px;
}

.da-card__title{
  font-weight: 800;
  letter-spacing: .2px;
}

.da-card__muted{
  opacity: .78;
  font-size: 13px;
  margin-top: 2px;
}

.da-actions{
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.da-input{
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,var(--rd24-card-alpha));
  padding: 10px 12px;
  color: inherit;
  outline: none;
  min-width: 220px;
}

.da-btn{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.08);
  padding: 10px 12px;
  color: inherit;
  cursor: pointer;
  user-select: none;
}

.da-btn input[type="file"]{
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.da-btn--ghost{
  background: rgba(0,0,0,var(--rd24-card-alpha-soft));
}

.da-btn--small{
  padding: 8px 10px;
  font-size: 13px;
}

.da-btn--danger{
  border-color: rgba(255, 80, 80, .45);
  background: rgba(255, 80, 80, .12);
}

.da-upload{
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.da-hint{
  margin-top: 10px;
  opacity: .75;
  font-size: 12.5px;
  line-height: 1.35;
}

.da-list{
  display: grid;
  gap: 10px;
}

.da-item{
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,var(--rd24-card-alpha));
  padding: 12px;
  cursor: pointer;
}

.da-item:hover{
  background: rgba(0,0,0,var(--rd24-card-alpha-hover));
}

.da-item__top{
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: baseline;
}

.da-item__title{
  font-weight: 800;
}

.da-item__meta{
  opacity: .75;
  font-size: 12.5px;
}

.da-tags{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.da-tag{
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,var(--rd24-card-alpha-soft));
  opacity: .92;
}

.da-detail{
  display: grid;
  gap: 12px;
}

.da-kv{
  display: grid;
  gap: 6px;
}

.da-kv b{
  opacity: .9;
}

.da-box{
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,var(--rd24-card-alpha));
  padding: 12px;
}

.da-empty{
  opacity: .75;
  padding: 18px 6px;
  text-align: center;
}

.da-bullets{
  margin: 10px 0 0 18px;
  opacity: .9;
}

.da-footerCard{
  margin-top: 14px;
}

/* responsive */
@media (max-width: 980px){
  .da-hero{
    grid-template-columns: 1fr;
  }
  .da-grid{
    grid-template-columns: 1fr;
  }
  .da-actions{
    justify-content: flex-start;
  }
  .da-input{
    min-width: 0;
    width: 100%;
  }
}

/* --- DigitalAkten: lokales Settings Zahnrad --- */
.da-gear{
  position: fixed;
  right: 14px;
  bottom: calc(14px + env(safe-area-inset-bottom, 0px));
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(0,0,0,var(--rd24-gear-alpha));
  backdrop-filter: blur(6px);
  display: grid;
  place-items: center;
  cursor: pointer;
  z-index: 9999;
}

.da-gear:hover{
  background: rgba(0,0,0,var(--rd24-gear-alpha-hover));
}

.da-modal{
  position: fixed;
  inset: 0;
  background: transparent; /* ✅ KEIN Abdunkeln mehr */
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  padding: 16px;
}

.da-modal.is-open{ display: flex; }

.da-modal__card{
  width: min(520px, 100%);
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,var(--rd24-modal-card-alpha));
  backdrop-filter: blur(10px);
  padding: 14px;
}

.da-row{
  display: grid;
  grid-template-columns: 1fr 160px;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}

.da-row label{
  opacity: .92;
  font-size: 13.5px;
}

.da-row input[type="range"]{
  width: 100%;
}

.da-modal__actions{
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 14px;
}
.da-gear{
  z-index: 2147483647 !important; /* max safe */
}
/* --- FIX: Zahnrad muss auch auf Mobile IMMER sichtbar sein --- */
.da-gear{
  z-index: 2147483647 !important;
  bottom: calc(14px + env(safe-area-inset-bottom, 0px));
}
/* =========================================================
   DigitalAkten – Fokusmodus:
   - Archiv volle Breite
   - Beim Klick: nur selektierter Eintrag sichtbar
   - Details darunter
   ========================================================= */

.da-grid.is-focus #list{
  display: grid;
}

.da-grid.is-focus .da-item{
  display: none;
}

.da-grid.is-focus .da-item.is-selected{
  display: block;
}

.da-focusbar{
  display: none;
  margin-bottom: 10px;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.da-grid.is-focus .da-focusbar{
  display: flex;
}

.da-focusbar__left{
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}

.da-focusbar__hint{
  opacity: .8;
  font-size: 12.5px;
}

.da-btn--mini{
  padding: 7px 10px;
  font-size: 12.5px;
  border-radius: 10px;
}
/* =========================================
   FIX Mobile: Karten ragen rechts raus (Overflow-X)
   ========================================= */

/* 1) Box sizing: verhindert "width + padding > viewport" Effekte */
*, *::before, *::after { box-sizing: border-box; }

/* 2) Horizontal-Overflow killen (nur X, Y bleibt normal) */
html, body { max-width: 100%; overflow-x: hidden; }

/* 3) Flex/Grid-Kinder dürfen schrumpfen (DER Klassiker!) */
.da-card__head > *,
.da-item__top > * { min-width: 0; }

/* 4) Titel/Meta/Dateinamen sauber umbrechen */
.da-card__title,
.da-card__muted,
.da-item__title,
.da-item__meta,
.da-hint,
.da-box,
.da-empty {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* 5) Damit "space-between" nicht rausdrückt: Titel kriegt Platz, Meta darf schrumpfen */
.da-item__title { flex: 1 1 auto; min-width: 0; }
.da-item__meta  { flex: 0 1 auto; min-width: 0; text-align: right; }

/* 6) Range-Settings Row: auf sehr kleinen Phones nicht mit 160px überlaufen */
@media (max-width: 420px){
  .da-row{ grid-template-columns: 1fr; }
}
/* =========================================================
   DigitalAkten – READABILITY + STATUS-FARBCODE (ADD-ON)
   -> 1:1 unten ANHÄNGEN, nichts entfernen
   ========================================================= */

/* ---------- 1) Grundlesbarkeit: etwas weniger "schwarz" ---------- */
.da-surface{
  /* vorher: linear-gradient(180deg, rgba(0,0,0,.42), rgba(0,0,0,.30)); */
  background:
    linear-gradient(180deg, rgba(0,0,0,.34), rgba(0,0,0,.22)) !important;
}

/* Cards/Boxen: heller + klarer Rahmen */
.da-card,
.da-box,
.da-item{
  border-color: rgba(255,255,255,.16) !important;
  background: rgba(0,0,0, 0.24) !important;     /* statt var(--rd24-card-alpha) */
}

/* Hover: spürbar aber nicht dunkler */
.da-item:hover{
  background: rgba(0,0,0, 0.30) !important;
}

/* Meta/Muted: etwas weniger transparent */
.da-item__meta,
.da-card__muted,
.da-hint,
.da-focusbar__hint{
  opacity: .86 !important;
}

/* Tags: heller, besser lesbar */
.da-tag,
.da-chip{
  background: rgba(255,255,255, 0.08) !important;
  border-color: rgba(255,255,255, 0.18) !important;
  opacity: .98 !important;
}

/* Detail "Inhalt"-Box: heller, damit Text nicht absäuft
   (dein Inline-style im JS wird damit überschrieben) */
.da-kv div[style*="white-space:pre-wrap"]{
  background: rgba(255,255,255, 0.07) !important;
  border: 1px solid rgba(255,255,255, 0.18) !important;
  color: rgba(255,255,255, 0.96) !important;
}

/* Links in Detail besser sichtbar */
#detail a{
  color: rgba(185, 225, 255, 0.95) !important;
  text-decoration: underline;
}

/* ---------- 2) STATUS-FARBCODE (nicht Deko) ---------- */
/* Links am Eintrag eine Status-Leiste */
.da-item{
  position: relative;
  padding-left: 16px !important; /* Platz für Leiste */
}

.da-item::before{
  content:"";
  position:absolute;
  left: 10px;
  top: 12px;
  bottom: 12px;
  width: 6px;
  border-radius: 8px;
  background: rgba(255,255,255, 0.22);
  box-shadow: 0 0 0 1px rgba(0,0,0,.15);
}

/* OK */
.da-item--ok::before{
  background: rgba(80, 220, 140, 0.92);
}

/* WARN (Fristen) */
.da-item--warn::before{
  background: rgba(255, 205, 90, 0.95);
}

/* DANGER (Fehler/Problem) */
.da-item--danger::before{
  background: rgba(255, 95, 95, 0.95);
}

/* INFO (Behörde/Gericht ohne Frist) */
.da-item--info::before{
  background: rgba(95, 185, 255, 0.95);
}

/* Fokusmodus: Statusleiste etwas stärker */
.da-grid.is-focus .da-item::before{
  left: 10px;
  width: 7px;
}

/* ---------- 3) Optional: Selected-Eintrag klar markieren ---------- */
.da-item.is-selected{
  border-color: rgba(255,255,255,.26) !important;
  background: rgba(255,255,255, 0.08) !important;
}
/* --- DigitalAkten: Content Toggle + Email View --- */
.da-content-toggle{
  display:flex;
  gap:.5rem;
  align-items:center;
  margin:.25rem 0 .75rem 0;
}

.da-toggle-btn{
  appearance:none;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(17,24,39,.35);
  color: rgba(255,255,255,.9);
  padding:.35rem .6rem;
  border-radius: 999px;
  font-size:.85rem;
  cursor:pointer;
}

.da-toggle-btn.active{
  border-color: rgba(255,255,255,.26);
  background: rgba(17,24,39,.55);
}

.da-raw-box pre{
  white-space: pre-wrap;
  word-break: break-word;
  margin:0;
}

.da-email-box{
  display:flex;
  flex-direction:column;
  gap:.6rem;
}

.da-email-meta{
  display:grid;
  grid-template-columns: 120px 1fr;
  gap:.25rem .75rem;
  padding:.6rem .7rem;
  border:1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: rgba(17,24,39,.28);
}

.da-email-meta .k{
  color: rgba(255,255,255,.65);
  font-size:.85rem;
}

.da-email-meta .v{
  color: rgba(255,255,255,.92);
  font-size:.9rem;
  word-break: break-word;
}

.da-email-body{
  padding:.8rem .9rem;
  border:1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: rgba(17,24,39,.22);
  white-space: pre-wrap;
  word-break: break-word;
  line-height: 1.35;
}
/* ================================
   DigitalAkten – Kategorie-Trenner
   ================================ */

/* List item: Platz für Farbbalken */
.da-item{
  position: relative;
  padding-left: 14px;            /* Platz für Balken */
}

/* Farbbalken links */
.da-item__bar{
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 6px;
  border-radius: 999px;
  opacity: .95;
  box-shadow: 0 0 0 1px rgba(255,255,255,.10) inset;
}

/* Kategorie-Chip (ruhig & seriös) */
.da-cat{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  background: rgba(0,0,0,.18);
  border: 1px solid rgba(255,255,255,.10);
}

.da-cat__dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  box-shadow: 0 0 0 1px rgba(255,255,255,.18) inset;
}
/* =========================================
   ✅ Kategorie-Buttons (Archiv)
   ========================================= */
.da-catbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:10px 0 12px;
}

.da-catbtn{
  border:1px solid rgba(255,255,255,.18);
  background: rgba(17,24,39,.35);
  color: rgba(255,255,255,.92);
  padding:7px 10px;
  border-radius:999px;
  font-size:13px;
  cursor:pointer;
  user-select:none;
  transition: transform .08s ease, background .12s ease, border-color .12s ease;
}

.da-catbtn:hover{
  transform: translateY(-1px);
  background: rgba(17,24,39,.50);
  border-color: rgba(255,255,255,.28);
}

.da-catbtn.active{
  background: rgba(34,197,94,.18);
  border-color: rgba(34,197,94,.55);
}

.da-catbtn .count{
  opacity:.75;
  margin-left:6px;
  font-size:12px;
}/* ================================
   DigitalAkten – Detail: Header / Meta / Inhalt lesbarer
   (additiv, überschreibt minimal)
================================== */

/* Container oben im Details-Panel (du hast da "Titel / Zusammenfassung / Inhalt / Typ / Erfasst") */
.da-detail-panel{
  backdrop-filter: blur(8px);
}

/* Titel deutlich hervorheben */
.da-detail-panel .da-title,
.da-detail-panel h2,
.da-detail-panel h3.title,
.da-detail-panel [data-role="title"]{
  font-size: 18px;
  line-height: 1.25;
  font-weight: 800;
  letter-spacing: .2px;
  color: rgba(255,255,255,.96);
  margin: 0 0 10px 0;
}

/* Meta-Zeile: Typ + Erfasst (wir stylen einfach die Zeile/Items, egal wie du sie renderst) */
.da-detail-panel .da-meta,
.da-detail-panel .meta,
.da-detail-panel [data-role="meta"]{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: 10px 0 14px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
}

/* Typ als Badge */
.da-detail-panel .da-type,
.da-detail-panel .type,
.da-detail-panel [data-field="type"]{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .3px;
  text-transform: uppercase;
  background: rgba(120,170,255,.14);
  border: 1px solid rgba(120,170,255,.30);
  color: rgba(210,230,255,.98);
}

/* Erfasst / Datum als ruhigere Meta */
.da-detail-panel .da-created,
.da-detail-panel .created,
.da-detail-panel [data-field="createdAt"],
.da-detail-panel [data-field="created"]{
  font-size: 13px;
  font-weight: 650;
  color: rgba(255,255,255,.70);
}

/* Labels (Titel / Inhalt / Typ / Erfasst) optisch sauberer */
.da-detail-panel .field-label,
.da-detail-panel label,
.da-detail-panel .lbl{
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .3px;
  text-transform: uppercase;
  color: rgba(255,255,255,.62);
  margin: 12px 0 6px;
}

/* Inhalt als "Lesefläche" */
.da-detail-panel .da-body,
.da-detail-panel .content,
.da-detail-panel textarea.readonly,
.da-detail-panel pre,
.da-detail-panel [data-role="body"]{
  background: rgba(0,0,0,.22);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  padding: 14px 14px;
  line-height: 1.62;
  font-size: 14.5px;
  color: rgba(255,255,255,.92);
  overflow: auto;
  max-height: 46vh;
}

/* Zusammenfassung als "AI-Note" (dezent blau markiert) */
.da-detail-panel .da-summary,
.da-detail-panel .summary,
.da-detail-panel [data-role="summary"]{
  border-left: 3px solid rgba(120,170,255,.85);
  padding-left: 12px;
  margin-top: 4px;
  color: rgba(255,255,255,.90);
}

/* Kleine Icons per pseudo (optional, wenn du keine Icons im HTML hast) */
.da-detail-panel .da-type::before,
.da-detail-panel .type::before{
  content: "✉️";
  font-size: 13px;
  line-height: 1;
  opacity: .95;
}

/* Wenn Typ nicht email ist, kannst du später via JS/HTML data-type anderes Icon setzen */
