/* ============================================================
   Drauf & Dran – Büro-Frontend CSS
   Enthält: dd.css (Basis) + buero-spezifische Styles
   ============================================================ */

:root {
  --dd-or:#e8560a; --dd-or-d:#c04508; --dd-or-l:#fff3ee; --dd-or-m:rgba(232,86,10,.12);
  --dd-gr:#2a8c4a; --dd-gr-l:#edf7f2;
  --dd-bl:#1a6ab5; --dd-bl-d:#155296; --dd-bl-l:#e8f2fb; --dd-bl-m:rgba(26,106,181,.1);
  --dd-re:#c0392b; --dd-re-l:#fdecea; --dd-bk:#181818; --dd-g97:#f7f7f7; --dd-g94:#f0f0f0; --dd-g88:#e2e2e2;
  --dd-g70:#b3b3b3; --dd-g50:#7a7a7a; --dd-g30:#444;
  --dd-fh:'Oswald',sans-serif; --dd-fb:'Source Sans 3',sans-serif;
  --dd-r:3px; --dd-r2:6px;
  --dd-sh:0 1px 4px rgba(0,0,0,.07),0 0 0 1px rgba(0,0,0,.04);
}
.dd{font-family:var(--dd-fb)!important;color:var(--dd-bk)!important;font-size:14px!important;line-height:1.5!important;width:100%!important;max-width:none!important;box-sizing:border-box!important}
.dd *,.dd *::before,.dd *::after{box-sizing:border-box}

/* CARDS */
.dd .dd-card{background:#fff!important;border:1px solid var(--dd-g88)!important;border-radius:var(--dd-r2)!important;box-shadow:var(--dd-sh)!important;overflow:hidden!important;margin-bottom:20px!important}
.dd .dd-card-hd{padding:12px 20px!important;background:var(--dd-g97)!important;border-bottom:1px solid var(--dd-g88)!important;display:flex!important;align-items:center!important;gap:8px!important;min-height:44px!important}
.dd .dd-card-tt{font-family:var(--dd-fh)!important;font-size:12px!important;font-weight:700!important;letter-spacing:.09em!important;text-transform:uppercase!important;color:var(--dd-g30)!important;margin:0!important;padding:0!important;border:none!important;background:none!important}
.dd .dd-mla{margin-left:auto!important}

/* LAYOUT */
.dd .dd-grid2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important}
.dd .dd-grid6{display:grid!important;grid-template-columns:repeat(6,1fr)!important;gap:10px!important}
.dd .dd-toolbar{display:flex!important;align-items:center!important;gap:8px!important;margin-bottom:14px!important;flex-wrap:wrap!important}
.dd .dd-count{font-size:12px!important;color:var(--dd-g50)!important;font-style:italic!important}

/* STATS */
.dd .dd-stat{background:#fff!important;border:1px solid var(--dd-g88)!important;border-radius:var(--dd-r2)!important;padding:14px 16px 16px!important;box-shadow:var(--dd-sh)!important;position:relative!important;overflow:hidden!important}
.dd .dd-stat::after{content:''!important;position:absolute!important;bottom:0!important;left:0!important;right:0!important;height:3px!important;background:var(--dd-g88)!important;border-radius:0 0 var(--dd-r2) var(--dd-r2)!important}
.dd .dd-stat-l{font-family:var(--dd-fh)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--dd-g50)!important;margin-bottom:6px!important}
.dd .dd-stat-v{font-family:var(--dd-fh)!important;font-size:34px!important;font-weight:700!important;line-height:1!important;color:var(--dd-bk)!important}
.dd .dd-stat-s{font-size:12px!important;color:var(--dd-g70)!important;margin-top:4px!important}
.dd .c-or .dd-stat-v,.dd .c-or .stat-v{color:var(--dd-or)!important}
.dd .c-or.dd-stat::after,.dd .c-or.dd-stat-c::after{background:var(--dd-or)!important}
.dd .c-bl .dd-stat-v,.dd .c-bl .stat-v{color:var(--dd-bl)!important}
.dd .c-bl.dd-stat::after,.dd .c-bl.dd-stat-c::after{background:var(--dd-bl)!important}
.dd .c-gr .dd-stat-v,.dd .c-gr .stat-v{color:var(--dd-gr)!important}
.dd .c-gr.dd-stat::after,.dd .c-gr.dd-stat-c::after{background:var(--dd-gr)!important}
.dd .c-re .dd-stat-v,.dd .c-re .stat-v{color:var(--dd-re)!important}
.dd .c-re.dd-stat::after,.dd .c-re.dd-stat-c::after{background:var(--dd-re)!important}

/* TABLES */
.dd table.dd-t{width:100%!important;border-collapse:collapse!important;font-size:13px!important;font-family:var(--dd-fb)!important}
.dd table.dd-t th{font-family:var(--dd-fh)!important;font-size:11.5px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--dd-g50)!important;padding:8px 14px!important;border-bottom:2px solid var(--dd-g88)!important;border-top:none!important;background:var(--dd-g97)!important;text-align:left!important;white-space:nowrap!important}
.dd table.dd-t td{padding:9px 14px!important;border-bottom:1px solid var(--dd-g94)!important;border-top:none!important;vertical-align:middle!important;background:transparent!important;color:var(--dd-bk)!important}
.dd table.dd-t tr:last-child td{border-bottom:none!important}
.dd table.dd-t tbody tr:hover td{background:#fafafa!important}
.dd table.dd-t tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--dd-or)!important}

/* CHIPS */
.dd .dd-chip{display:inline-flex!important;align-items:center!important;gap:4px!important;font-family:var(--dd-fh)!important;font-size:11.5px!important;font-weight:700!important;letter-spacing:.04em!important;text-transform:uppercase!important;padding:3px 8px!important;border-radius:2px!important;white-space:nowrap!important;border:none!important}
.dd .dd-chip::before{content:''!important;width:4px!important;height:4px!important;border-radius:50%!important;background:currentColor!important;flex-shrink:0!important}
.dd .s0{background:var(--dd-bl-l)!important;color:var(--dd-bl)!important}
.dd .s1{background:#fff5e0!important;color:#a86000!important}
.dd .s2{background:var(--dd-gr-l)!important;color:var(--dd-gr)!important}
.dd .s3{background:#f0ecff!important;color:#5530bb!important}
.dd .s4{background:var(--dd-g94)!important;color:var(--dd-g30)!important}
.dd .s5{background:#fdecea!important;color:#b01c1c!important}
.dd .s6{background:var(--dd-g94)!important;color:var(--dd-g70)!important}

/* BADGES */
.dd .kg-a{background:var(--dd-bl-l)!important;color:var(--dd-bl)!important;font-family:var(--dd-fh)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase!important;padding:2px 6px!important;border-radius:2px!important;display:inline-block!important}
.dd .kg-b{background:var(--dd-or-l)!important;color:var(--dd-or-d)!important;font-family:var(--dd-fh)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase!important;padding:2px 6px!important;border-radius:2px!important;display:inline-block!important}
.dd .erf-ocr{background:var(--dd-gr-l)!important;color:var(--dd-gr)!important;font-family:var(--dd-fh)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.05em!important;text-transform:uppercase!important;padding:2px 6px!important;border-radius:2px!important}
.dd .erf-m{background:var(--dd-g94)!important;color:var(--dd-g50)!important;font-family:var(--dd-fh)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.05em!important;text-transform:uppercase!important;padding:2px 6px!important;border-radius:2px!important}
.dd .fix{color:var(--dd-or)!important;font-family:var(--dd-fh)!important;font-weight:700!important;font-size:11px!important;letter-spacing:.06em!important;text-transform:uppercase!important;margin-left:4px!important}
.dd .dd-badge{background:var(--dd-or)!important;color:#fff!important;border-radius:10px!important;font-family:var(--dd-fh)!important;font-size:11.5px!important;font-weight:700!important;padding:2px 7px!important;margin-left:auto!important}
.dd .mono{font-family:'SFMono-Regular','Consolas',monospace!important;font-size:11.5px!important;background:var(--dd-g94)!important;padding:1px 5px!important;border-radius:2px!important;color:var(--dd-g30)!important}

/* BUTTONS */
.dd .dd-btn{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:8px 18px!important;border-radius:var(--dd-r)!important;font-family:var(--dd-fb)!important;font-size:14px!important;font-weight:600!important;border:none!important;cursor:pointer!important;text-decoration:none!important;transition:background .12s,box-shadow .12s!important;line-height:1.2!important;white-space:nowrap!important}
.dd .dd-btn:active{transform:translateY(1px)!important}
.dd .dd-btn-or{background:var(--dd-or)!important;color:#fff!important;box-shadow:0 1px 3px rgba(232,86,10,.35)!important}
.dd .dd-btn-or:hover{background:var(--dd-or-d)!important;color:#fff!important;text-decoration:none!important}
.dd .dd-btn-bl{background:var(--dd-bl)!important;color:#fff!important;box-shadow:0 1px 3px rgba(26,106,181,.3)!important}
.dd .dd-btn-bl:hover{background:var(--dd-bl-d)!important;color:#fff!important;text-decoration:none!important}
.dd .dd-btn-gh{background:#fff!important;border:1.5px solid var(--dd-g88)!important;color:var(--dd-g50)!important}
.dd .dd-btn-gh:hover{border-color:var(--dd-g70)!important;color:var(--dd-bk)!important;text-decoration:none!important}
.dd .dd-btn-sm{padding:4px 12px!important;font-size:12px!important}

/* FILTERS */
.dd .dd-filters{display:flex!important;gap:7px!important;margin-bottom:14px!important;align-items:center!important;flex-wrap:wrap!important;padding:10px 14px!important;background:var(--dd-g97)!important;border:1px solid var(--dd-g88)!important;border-radius:var(--dd-r2)!important}
.dd .dd-filters select,.dd .dd-filters input[type="text"]{font-family:var(--dd-fb)!important;font-size:13px!important;padding:5px 10px!important;border:1px solid var(--dd-g88)!important;border-radius:var(--dd-r)!important;background:#fff!important;color:var(--dd-bk)!important;outline:none!important;height:auto!important}
.dd .dd-filters select:focus,.dd .dd-filters input:focus{border-color:var(--dd-bl)!important;box-shadow:0 0 0 2px var(--dd-bl-m)!important}

/* FORM FIELDS */
.dd .dd-fld{display:flex!important;flex-direction:column!important;gap:5px!important}
.dd .dd-fld label{font-family:var(--dd-fh)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.09em!important;color:var(--dd-g50)!important;font-weight:700!important;margin-bottom:0!important}
.dd .dd-fld input,.dd .dd-fld select,.dd .dd-fld textarea{font-family:var(--dd-fb)!important;font-size:14px!important;padding:9px 13px!important;border:1px solid var(--dd-g88)!important;border-radius:var(--dd-r)!important;background:#fff!important;color:var(--dd-bk)!important;outline:none!important;width:100%!important;height:auto!important;line-height:1.4!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.03)!important}
.dd .dd-fld input:focus,.dd .dd-fld select:focus,.dd .dd-fld textarea:focus{border-color:var(--dd-bl)!important;box-shadow:0 0 0 3px var(--dd-bl-m)!important}
.dd .dd-fld textarea{resize:vertical!important;min-height:90px!important}
.dd .dd-hint{font-size:11.5px!important;color:var(--dd-g70)!important;margin-top:2px!important}
.dd .dd-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important;margin-bottom:16px!important}
.dd .dd-row-1{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;margin-bottom:16px!important}
.dd .dd-row-3{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:16px!important;margin-bottom:16px!important}

/* EMPTY */
.dd .dd-empty{padding:48px 24px!important;text-align:center!important;color:var(--dd-g70)!important;font-size:13px!important}
.dd .dd-empty::before{content:'○'!important;display:block!important;font-size:28px!important;margin-bottom:10px!important;opacity:.25!important}

/* QUICK LINKS */
.dd .dd-qlink{display:flex!important;align-items:center!important;gap:13px!important;padding:12px 16px!important;text-decoration:none!important;color:var(--dd-bk)!important;border-bottom:1px solid var(--dd-g94)!important;transition:background .12s,padding-left .12s!important}
.dd .dd-qlink:last-child{border-bottom:none!important}
.dd .dd-qlink:hover{background:var(--dd-g97)!important;padding-left:20px!important;text-decoration:none!important}
.dd .dd-qlink-ico{width:34px!important;height:34px!important;border-radius:var(--dd-r)!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:15px!important;flex-shrink:0!important}
.dd .dd-qlink-tt{font-size:13.5px!important;font-weight:700!important;color:var(--dd-bk)!important}
.dd .dd-qlink-st{font-size:11.5px!important;color:var(--dd-g50)!important;margin-top:1px!important}

/* STICKY BAR */
.dd .dd-sticky{position:sticky!important;top:0!important;z-index:200!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(6px)!important;border-bottom:2px solid var(--dd-or)!important;padding:11px 0!important;margin-bottom:22px!important;display:flex!important;gap:10px!important;align-items:center!important;box-shadow:0 2px 8px rgba(0,0,0,.06)!important}
.dd .dd-sticky-id{margin-left:auto!important;font-family:var(--dd-fh)!important;font-size:13px!important;font-weight:500!important;letter-spacing:.04em!important;color:var(--dd-g50)!important}

/* LEISTUNGSTYP */
.dd .lt-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:5px!important}
.dd .lt-btn{padding:9px 10px!important;border:1.5px solid var(--dd-g88)!important;border-radius:var(--dd-r)!important;cursor:pointer!important;font-size:13px!important;font-family:var(--dd-fb)!important;background:#fff!important;text-align:center!important;transition:border-color .12s,background .12s!important;color:var(--dd-g30)!important;line-height:1.3!important}
.dd .lt-btn:hover,.dd .lt-btn.active{border-color:var(--dd-or)!important;background:var(--dd-or-l)!important;color:var(--dd-or)!important;font-weight:700!important}
.dd .lt-group{margin-bottom:12px!important}
.dd .lt-group-tt{font-family:var(--dd-fh)!important;font-size:11px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--dd-g70)!important;margin-bottom:5px!important;padding-bottom:3px!important;border-bottom:1px solid var(--dd-g94)!important}

/* POSITIONS TABLE */
.dd .pos-tbl{width:100%!important;border-collapse:collapse!important;font-size:12.5px!important}
.dd .pos-tbl th{font-family:var(--dd-fh)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--dd-g50)!important;padding:7px 8px!important;border-bottom:2px solid var(--dd-g88)!important;background:var(--dd-g97)!important;text-align:left!important;border-top:none!important}
.dd .pos-tbl td{padding:5px 6px!important;border-bottom:1px solid var(--dd-g94)!important;vertical-align:middle!important;border-top:none!important}
.dd .pos-tbl input{font-size:12.5px!important;padding:4px 7px!important;border:1px solid var(--dd-g88)!important;border-radius:var(--dd-r)!important;width:100%!important;font-family:var(--dd-fb)!important;background:#fff!important;outline:none!important;height:auto!important}
.dd .pos-tbl input:focus{border-color:var(--dd-bl)!important;box-shadow:0 0 0 2px var(--dd-bl-m)!important}
.dd .add-pos{display:flex!important;align-items:center!important;gap:7px!important;padding:9px 14px!important;color:var(--dd-bl)!important;cursor:pointer!important;font-size:12.5px!important;font-weight:600!important;border-top:1px solid var(--dd-g88)!important;background:var(--dd-g97)!important}
.dd .add-pos:hover{background:var(--dd-bl-l)!important}

/* GRIDS */
.dd .dd-edit-grid{display:grid!important;grid-template-columns:1fr 340px!important;gap:20px!important;align-items:start!important}
.dd .dd-det-grid{display:grid!important;grid-template-columns:1fr 340px!important;gap:20px!important;align-items:start!important}

/* DETAIL ROWS */
.dd .dd-det-row{display:flex!important;border-bottom:1px solid var(--dd-g94)!important;padding:7px 0!important;gap:16px!important}
.dd .dd-det-row:last-child{border-bottom:none!important}
.dd .dd-det-lbl{font-family:var(--dd-fh)!important;font-size:11.5px!important;text-transform:uppercase!important;letter-spacing:.07em!important;color:var(--dd-g50)!important;width:130px!important;flex-shrink:0!important;padding-top:2px!important}
.dd .dd-det-val{font-size:13px!important;flex:1!important;color:var(--dd-bk)!important}

/* PROGRESS */
.dd .dd-progress{display:flex!important;margin-bottom:16px!important;overflow:hidden!important;border-radius:var(--dd-r)!important;border:1px solid var(--dd-g88)!important;box-shadow:var(--dd-sh)!important}
.dd .dd-progress-step{flex:1!important;padding:9px 4px!important;text-align:center!important;font-family:var(--dd-fh)!important;font-size:11.5px!important;letter-spacing:.05em!important;text-transform:uppercase!important;color:var(--dd-g50)!important;background:#fff!important;border-right:1px solid var(--dd-g88)!important;cursor:pointer!important;transition:opacity .15s!important;text-decoration:none!important}
.dd .dd-progress-step:last-child{border-right:none!important}
.dd .dd-progress-step.done{background:var(--dd-g94)!important;color:var(--dd-g70)!important}
.dd .dd-progress-step.active{color:#fff!important;font-weight:700!important}
.dd .dd-progress-step:hover{opacity:.85!important;text-decoration:none!important}

/* LOG */
.dd .dd-log-item{display:flex!important;gap:10px!important;padding:8px 0!important;border-bottom:1px solid var(--dd-g94)!important}
.dd .dd-log-item:last-child{border-bottom:none!important}
.dd .dd-log-dot{width:10px!important;height:10px!important;border-radius:50%!important;flex-shrink:0!important;margin-top:3px!important}

/* BANNER */
.dd .dd-banner{padding:10px 16px!important;font-size:12.5px!important;border-radius:var(--dd-r2)!important;border:1px solid!important;margin-bottom:14px!important;display:flex!important;align-items:flex-start!important;gap:10px!important}
.dd .dd-banner-bl{background:var(--dd-bl-l)!important;border-color:#b3cce8!important;color:#0e3e72!important}

/* CONF BAR */
.dd .conf-bar{display:flex!important;align-items:center!important;gap:7px!important}
.dd .conf-bar-track{width:64px!important;height:5px!important;background:var(--dd-g88)!important;border-radius:3px!important;overflow:hidden!important}
.dd .conf-bar-fill{height:100%!important;border-radius:3px!important}

/* QUICK-CREATE MODAL */
.dd-modal-overlay{position:fixed!important;inset:0!important;background:rgba(0,0,0,.45)!important;z-index:9998!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important}
.dd-modal{background:#fff!important;border-radius:var(--dd-r2)!important;box-shadow:0 8px 40px rgba(0,0,0,.22)!important;width:100%!important;max-width:500px!important;overflow:hidden!important;animation:ddModalIn .18s ease!important}
@keyframes ddModalIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.dd-modal-hd{padding:14px 18px!important;background:var(--dd-g97)!important;border-bottom:1px solid var(--dd-g88)!important;display:flex!important;align-items:center!important;justify-content:space-between!important}
.dd-modal-tt{font-family:var(--dd-fh)!important;font-size:13px!important;font-weight:700!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:var(--dd-g30)!important;margin:0!important}
.dd-modal-close{background:none!important;border:none!important;cursor:pointer!important;color:var(--dd-g50)!important;font-size:18px!important;line-height:1!important;padding:2px 6px!important;border-radius:3px!important}
.dd-modal-close:hover{background:var(--dd-g94)!important;color:var(--dd-bk)!important}
.dd-modal-body{padding:18px!important}
.dd-modal-ft{padding:12px 18px!important;background:var(--dd-g97)!important;border-top:1px solid var(--dd-g88)!important;display:flex!important;gap:8px!important;justify-content:flex-end!important}
.dd-quick-link{font-size:11.5px!important;color:var(--dd-bl)!important;cursor:pointer!important;text-decoration:none!important;background:none!important;border:none!important;padding:0!important;font-family:var(--dd-fb)!important}
.dd-quick-link:hover{text-decoration:underline!important}
.dd-select-wrap{position:relative!important;display:flex!important;gap:6px!important;align-items:center!important}
.dd-select-wrap select{flex:1!important}
/* ============================================================
   BÜRO-FRONTEND RESPONSIVE
   ≤ 900px  Tablet
   ≤ 600px  Mobil
   ≤ 430px  Klein
   ============================================================ */

/* ─── Tablet ≤ 900px ────────────────────────────────────────── */
@media (max-width: 900px) {
  .dd .dd-row   { grid-template-columns: 1fr 1fr !important; }
  .dd .dd-row-3 { grid-template-columns: 1fr 1fr !important; }
  .dd .dd-edit-grid { grid-template-columns: 1fr !important; }
}

/* ─── Mobil ≤ 600px ─────────────────────────────────────────── */
@media (max-width: 600px) {

  /* Tabellen: horizontal scrollbar */
  .dd .dd-t-wrap {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    margin: 0 -1px !important;
  }
  .dd .dd-t {
    min-width: 520px !important;
  }

  /* Rows: 1 Spalte */
  .dd .dd-row,
  .dd .dd-row-3 { grid-template-columns: 1fr !important; }

  /* Toolbar: wrappen */
  .dd .dd-toolbar {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  /* Filter: Spalte */
  .dd .dd-filters {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .dd .dd-filters input,
  .dd .dd-filters select {
    width: 100% !important;
    max-width: none !important;
  }

  /* Sticky Buttons immer volle Breite */
  .dd .dd-sticky { flex-wrap: wrap !important; }
  .dd .dd-sticky .dd-btn { min-height: 44px !important; }

  /* Karten-Padding reduzieren */
  .dd .dd-card-body { padding: 12px !important; }

  /* Stat-Grid: 2 Spalten */
  .dd .dd-stat-grid { grid-template-columns: 1fr 1fr !important; }

  /* Edit-Grid: immer 1 Spalte */
  .dd .dd-edit-grid  { grid-template-columns: 1fr !important; }
  .dd .dd-form-sidebar { display: none !important; } /* Sidebar auf Mobil ausblenden, Speichern-Buttons kommen oben */

  /* Suche-Form: volle Breite */
  .dd form[method="get"] {
    flex-wrap: wrap !important;
  }
  .dd form[method="get"] input[type="text"] {
    width: 100% !important;
    max-width: none !important;
    flex: 1 1 100% !important;
  }

  /* Buttons Touch-Target */
  .dd .dd-btn { min-height: 40px !important; }
  .dd .dd-btn-sm { min-height: 36px !important; padding: 8px 12px !important; }

  /* Chips in Tabellen: kompakter */
  .dd .dd-chip { font-size: 11.5px !important; padding: 2px 6px !important; }

  /* Scan-Queue: horizontal scroll */
  .dd-scan-wrap { overflow-x: auto !important; }
}

/* ─── Klein ≤ 430px ─────────────────────────────────────────── */
@media (max-width: 430px) {
  .dd .dd-t { min-width: 420px !important; }
  .dd .dd-card-hd { flex-wrap: wrap !important; gap: 6px !important; }
  .dd .dd-mla { margin-left: 0 !important; }
}

/* Büro Dashboard Stat-Grid */
.dd .dd-stat-grid { display: grid !important; grid-template-columns: repeat(6, 1fr) !important; gap: 10px !important; margin-bottom: 20px !important; }
.dd .dd-stat-c { background: #fff !important; border: 1px solid var(--dd-g88) !important; border-radius: var(--dd-r2) !important; padding: 14px 16px 16px !important; box-shadow: var(--dd-sh) !important; position: relative !important; overflow: hidden !important; }
.dd .dd-stat-c::after { content: '' !important; position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important; background: var(--dd-g88) !important; border-radius: 0 0 var(--dd-r2) var(--dd-r2) !important; }
.dd .dd-stat-v { font-family: var(--dd-fh) !important; font-size: 2rem !important; font-weight: 700 !important; line-height: 1 !important; color: var(--dd-bk) !important; }
.dd .dd-stat-l { font-family: var(--dd-fh) !important; font-size: 11px !important; text-transform: uppercase !important; letter-spacing: .1em !important; color: var(--dd-g50) !important; margin-bottom: 6px !important; }
.dd .dd-stat-s { font-size: 12px !important; color: var(--dd-g70) !important; margin-top: 4px !important; }

@media (max-width: 900px) {
  .dd .dd-stat-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 600px) {
  .dd .dd-stat-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
  .dd .dd-stat-v { font-size: 1.6rem !important; }
  /* Büro-Dashboard: 2-Spalten → 1 Spalte */
  .dd-buero-dash-grid { grid-template-columns: 1fr !important; }
}

/* ── Formular-Klassen (bisher fehlend) ──────────────────────────────────── */
.dd .dd-input {
  display: block !important;
  width: 100% !important;
  padding: 8px 12px !important;
  border: 1px solid var(--dd-g88) !important;
  border-radius: var(--dd-r) !important;
  font-size: 13px !important;
  font-family: var(--dd-fb) !important;
  color: var(--dd-bk) !important;
  background: #fff !important;
  transition: border-color .15s !important;
  box-sizing: border-box !important;
}
.dd .dd-input:focus {
  outline: none !important;
  border-color: var(--dd-bl) !important;
  box-shadow: 0 0 0 3px rgba(42,125,225,.12) !important;
}
.dd .dd-label {
  display: block !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .07em !important;
  color: var(--dd-g50) !important;
  margin-bottom: 5px !important;
}
.dd .dd-form-control {
  margin-bottom: 14px !important;
}

/* ── Einsatz-Karte (Kalender-View) ─────────────────────────────────────── */
.dd .dd-einsatz-card {
  background: #fff !important;
  border: 1px solid #e8e8e8 !important;
  border-radius: 6px !important;
  padding: 8px 10px !important;
  margin-bottom: 8px !important;
  cursor: grab !important;
}
.dd .dd-einsatz-card:active { cursor: grabbing !important; }

/* ── Grid2 responsive ───────────────────────────────────────────────────── */
@media (max-width: 700px) {
  .dd .dd-grid2 { grid-template-columns: 1fr !important; }
}

/* ── Mobile Content-Abstand (Bottom-Nav nicht überdecken) ───────────────── */
@media (max-width: 900px) {
  .ddp-wrap .ddp-frame .dd,
  .ddp-wrap .ddp-content { padding-bottom: calc(72px + env(safe-area-inset-bottom, 20px)) !important; }
}
@media (max-width: 600px) {
  /* Jede .dd-Wurzel im Büro-Frame bekommt Abstand */
  .ddp-wrap .ddp-frame > .dd { padding-bottom: calc(80px + env(safe-area-inset-bottom, 20px)) !important; }
}

/* ── Chip als Filter-Button (aktiv) ─────────────────────────────────────── */
.dd .dd-chip.active {
  outline: 2px solid currentColor !important;
  outline-offset: 1px !important;
  opacity: 1 !important;
}
a.dd-chip:hover { opacity: .8 !important; }

/* Sticky Action-Bar über Mobil-Bottom-Nav ──────────────────────── */
@media (max-width: 900px) {
  .dd .dd-sticky-bar {
    position: sticky !important;
    bottom: calc(56px + env(safe-area-inset-bottom, 0px)) !important;
    background: #fff !important;
    border-top: 2px solid var(--dd-or) !important;
    padding: 10px 0 !important;
    z-index: 10 !important;
    box-shadow: 0 -4px 16px rgba(0,0,0,.08) !important;
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }
  .dd .dd-sticky-bar .dd-btn { min-height: 44px !important; flex: 1 !important; justify-content: center !important; }
}
@media (max-width: 600px) {
  .dd .dd-sticky-bar .dd-btn-text-long { display: none !important; }
  .dd .dd-sticky-bar .dd-btn-text-short { display: inline !important; }
}

/* Büro-Dashboard Grid */
.dd .dd-buero-dash-grid {
  display: grid !important;
  grid-template-columns: 1fr 280px !important;
  gap: 16px !important;
  align-items: start !important;
}
@media (max-width: 900px) {
  .dd .dd-buero-dash-grid { grid-template-columns: 1fr !important; }
}

/* ── Chat Floating Button + Panel ─────────────────────────────────────────── */
#dd-chat-wrap {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 1100;
}

#dd-chat-btn {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--dd-or, #e8560a);
  color: #fff;
  border: none;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0,0,0,.25);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: transform .15s, box-shadow .15s;
  -webkit-tap-highlight-color: transparent;
}
#dd-chat-btn:hover { transform: scale(1.08); box-shadow: 0 6px 20px rgba(0,0,0,.3); }

#dd-chat-badge {
  position: absolute;
  top: -4px; right: -4px;
  background: #e53e3e;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  min-width: 18px;
  height: 18px;
  border-radius: 9px;
  padding: 0 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #fff;
}

.dd-chat-panel {
  position: fixed;
  bottom: 84px;
  right: 24px;
  width: 340px;
  max-width: calc(100vw - 32px);
  height: 480px;
  max-height: calc(100vh - 120px);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 8px 32px rgba(0,0,0,.18);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transform: translateY(20px) scale(.95);
  opacity: 0;
  pointer-events: none;
  transition: transform .2s ease, opacity .2s ease;
  z-index: 1099;
}
.dd-chat-panel.dd-chat-open {
  transform: translateY(0) scale(1);
  opacity: 1;
  pointer-events: auto;
}

.dd-chat-header {
  background: #1a2a3a;
  color: #fff;
  padding: 12px 14px;
  font-weight: 700;
  font-size: .85rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
}
.dd-chat-close {
  background: none;
  border: none;
  color: rgba(255,255,255,.7);
  cursor: pointer;
  font-size: 1rem;
  padding: 2px 6px;
  border-radius: 4px;
  line-height: 1;
}
.dd-chat-close:hover { color: #fff; background: rgba(255,255,255,.15); }

.dd-chat-filter {
  padding: 8px 10px;
  border-bottom: 1px solid #eee;
  flex-shrink: 0;
}
.dd-chat-filter select {
  width: 100%;
  font-size: .78rem;
  padding: 5px 8px;
  border: 1px solid #ddd;
  border-radius: 6px;
  background: #f9f9f9;
  color: #333;
}

.dd-chat-messages {
  flex: 1;
  overflow-y: auto;
  padding: 12px 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  scroll-behavior: smooth;
}
.dd-chat-loading, .dd-chat-empty {
  text-align: center;
  color: #aaa;
  font-size: .8rem;
  margin: auto;
}

.ddp-chat-row { display: flex; gap: 7px; align-items: flex-end; max-width: 100%; }
.ddp-chat-own  { flex-direction: row-reverse; }
.ddp-chat-av {
  width: 24px; height: 24px; border-radius: 50%;
  background: #2980b9; color: #fff; font-size: 10px; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; overflow: hidden; align-self: flex-end;
}
.ddp-chat-av-own     { background: #e8560a; }
.ddp-chat-av-montage { background: #d35400; }
.ddp-chat-av-buero   { background: #2980b9; }
.ddp-chat-av-ki      { background: #1a6ab5; }
.dd-chat-msg { max-width: calc(85% - 32px); display: flex; flex-direction: column; }
.ddp-chat-own .dd-chat-msg  { align-items: flex-end; }
.ddp-chat-other .dd-chat-msg { align-items: flex-start; }

.dd-chat-meta {
  font-size: 0.75rem;
  color: #999;
  margin-bottom: 3px;
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}
.dd-chat-meta strong { color: #555; }
.dd-chat-ts { color: #bbb; }

.dd-chat-typ-badge {
  font-size: 0.75rem;
  font-weight: 700;
  padding: 1px 5px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.dd-chat-typ-badge.buero   { background: #e8f4fd; color: #2980b9; }
.dd-chat-typ-badge.montage { background: #fef5e7; color: #d35400; }
.dd-chat-typ-badge.kunde   { background: #edf7f2; color: #2a8c4a; }

/* Chat Tabs */
.dd-chat-tabs {
  display: flex;
  gap: 2px;
  flex: 1;
}
.dd-chat-tab {
  background: none;
  border: none;
  color: rgba(255,255,255,.5);
  font-size: .78rem;
  font-weight: 700;
  font-family: var(--dd-fh, 'Oswald', sans-serif);
  text-transform: uppercase;
  letter-spacing: .04em;
  padding: 4px 10px;
  cursor: pointer;
  border-bottom: 2px solid transparent;
  transition: color .12s, border-color .12s;
}
.dd-chat-tab:hover { color: rgba(255,255,255,.8); }
.dd-chat-tab.active { color: #fff; border-bottom-color: #e8560a; }

.dd-chat-auftrag-ref {
  font-size: 0.75rem;
  color: #e8560a;
  font-weight: 600;
}

.dd-chat-bubble {
  background: #f1f3f5;
  border-radius: 12px 12px 12px 3px;
  padding: 8px 12px;
  font-size: .83rem;
  line-height: 1.45;
  color: #333;
  word-break: break-word;
}
.dd-chat-own .dd-chat-bubble {
  background: #e8560a;
  color: #fff;
  border-radius: 12px 12px 3px 12px;
}

.dd-chat-input-wrap {
  display: flex;
  gap: 6px;
  padding: 8px 10px;
  border-top: 1px solid #eee;
  flex-shrink: 0;
  align-items: flex-end;
}
.dd-chat-input {
  flex: 1;
  resize: none;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: .83rem;
  font-family: inherit;
  line-height: 1.4;
  min-height: 38px;
  max-height: 100px;
  overflow-y: auto;
}
.dd-chat-input:focus { outline: none; border-color: #e8560a; }
.dd-chat-send-btn {
  width: 38px;
  height: 38px;
  background: #e8560a;
  color: #fff;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background .15s;
}
.dd-chat-send-btn:hover { background: #c94400; }

/* Mobil: Panel fullscreen */
@media (max-width: 500px) {
  .dd-chat-panel {
    bottom: 0; right: 0;
    width: 100vw;
    max-width: 100vw;
    height: 70vh;
    border-radius: 14px 14px 0 0;
  }
  #dd-chat-wrap {
    bottom: 16px;
    right: 16px;
  }
}
