/* ============================================================
   Feuerwehr Fahrzeugverwaltung – Style v3 FINAL
   Keine Transforms auf Kacheln, keine Blur-Artefakte
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=Inter:wght@300;400;500;600;700&display=swap');

/* ── DARK MODE (default) ── */
:root {
  --red:         #E5230F;
  --red-soft:    #FF3D2A;
  --red-glow:    rgba(229,35,15,.3);
  --red-subtle:  rgba(229,35,15,.08);
  --bg:          #0A0A0F;
  --bg-2:        #0F0F16;
  --card:        #13131A;
  --card-h:      #18181F;
  --surface:     #1A1A24;
  --border:      #22222E;
  --border-h:    #2E2E3E;
  --text:        #F4F2F0;
  --text-2:      rgba(244,242,240,.6);
  --text-3:      rgba(244,242,240,.3);
  --green:       #10D67A;
  --green-glow:  rgba(16,214,122,.25);
  --green-soft:  rgba(16,214,122,.1);
  --orange:      #FF8C42;
  --orange-soft: rgba(255,140,66,.1);
  --blue:        #5B8AF5;
  --radius:      12px;
  --radius-sm:   8px;
  --radius-full: 999px;
  --trans:       .18s ease;
}

/* ── LIGHT MODE ── */
[data-theme="light"] {
  --bg:      #F0F2F7;
  --bg-2:    #FFFFFF;
  --card:    #FFFFFF;
  --card-h:  #F8F9FC;
  --surface: #F0F2F7;
  --border:  rgba(0,0,0,.09);
  --border-h:rgba(0,0,0,.15);
  --text:    #111218;
  --text-2:  rgba(17,18,24,.55);
  --text-3:  rgba(17,18,24,.32);
  --green-soft:  rgba(16,214,122,.12);
  --orange-soft: rgba(255,140,66,.12);
}

*,*::before,*::after { box-sizing:border-box; margin:0; padding:0 }
html { scroll-behavior:smooth }
body {
  font-family:'Inter',sans-serif;
  background:var(--bg); color:var(--text);
  min-height:100vh; line-height:1.6;
  -webkit-font-smoothing:antialiased;
  transition:background .3s,color .3s;
}
body::before {
  content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(ellipse 70% 50% at 50% -5%,rgba(229,35,15,.1) 0%,transparent 60%);
}
[data-theme="light"] body::before { opacity:.5; }
::-webkit-scrollbar { width:5px }
::-webkit-scrollbar-track { background:var(--bg) }
::-webkit-scrollbar-thumb { background:var(--border-h);border-radius:99px }

/* ════════════════════════════════════════
   HEADER
════════════════════════════════════════ */
.site-header {
  background:var(--bg-2);
  border-bottom:1px solid var(--border);
  padding:0 1.5rem;
  position:sticky;top:0;z-index:100;
}
.header-inner { max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:1rem }
.site-logo { display:flex;align-items:center;gap:.65rem;text-decoration:none;flex-shrink:0 }
.logo-icon { font-size:1.8rem }
.site-logo-img { max-height:44px;max-width:130px;object-fit:contain }
.site-logo-divider { width:1.5px;height:30px;background:linear-gradient(to bottom,transparent,var(--red),transparent);margin:0 .4rem;flex-shrink:0 }
.logo-text { display:flex;flex-direction:column;min-width:0 }
.logo-title { font-family:'Outfit',sans-serif;font-size:1.2rem;font-weight:700;color:var(--text);letter-spacing:-.01em;line-height:1.1;white-space:nowrap }
.logo-sub { font-size:.63rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em }
.header-actions { display:flex;align-items:center;gap:.5rem }

.btn-login-header { display:flex;align-items:center;gap:.45rem;padding:.5rem 1.1rem;background:var(--red);color:#fff;border-radius:var(--radius-full);text-decoration:none;font-family:'Inter',sans-serif;font-size:.82rem;font-weight:600;transition:var(--trans);white-space:nowrap;box-shadow:0 2px 12px var(--red-glow) }
.btn-login-header:hover { background:var(--red-soft);box-shadow:0 4px 20px var(--red-glow) }
.btn-login-icon { font-size:.9rem }
.btn-login-text { display:inline }

.theme-toggle { width:36px;height:36px;border-radius:var(--radius-full);background:var(--surface);border:1px solid var(--border);color:var(--text-2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:var(--trans) }
.theme-toggle:hover { background:var(--border-h);color:var(--text) }

.profile-menu-wrap { position:relative }
.profile-btn { display:flex;align-items:center;gap:.45rem;padding:.3rem .65rem .3rem .3rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer;color:var(--text);font-family:'Inter',sans-serif;font-size:.82rem;font-weight:600;transition:var(--trans) }
.profile-btn:hover { border-color:var(--border-h);background:var(--card) }
.profile-avatar { width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--red),#FF6B5B);color:#fff;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0 }
.profile-name { max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis }
.profile-chevron { font-size:.6rem;color:var(--text-3) }
.profile-dropdown { position:absolute;top:calc(100% + 10px);right:0;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);min-width:220px;box-shadow:0 20px 60px rgba(0,0,0,.4);z-index:300;overflow:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .16s,transform .16s }
.profile-dropdown.open { opacity:1;transform:none;pointer-events:auto }
.profile-dropdown-header { padding:.9rem 1rem;border-bottom:1px solid var(--border);background:var(--surface) }
.pd-name { display:block;font-weight:700;font-size:.9rem;color:var(--text) }
.pd-role { display:block;font-size:.7rem;color:var(--text-3);margin-top:1px }
.pd-item { display:flex;align-items:center;gap:.55rem;padding:.6rem 1rem;color:var(--text-2);text-decoration:none;font-size:.85rem;font-weight:500;transition:var(--trans) }
.pd-item:hover { background:var(--surface);color:var(--text) }
.pd-admin { color:var(--orange)!important }
.pd-admin:hover { background:var(--orange-soft)!important }
.pd-logout { color:var(--red)!important }
.pd-logout:hover { background:var(--red-subtle)!important }
.pd-divider { border:none;border-top:1px solid var(--border);margin:.25rem 0 }

/* ════════════════════════════════════════
   TABS
════════════════════════════════════════ */
.tabs-bar { background:var(--bg-2);border-bottom:1px solid var(--border) }
.tabs-inner { max-width:1400px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center }
.tab-btn { display:flex;align-items:center;gap:.35rem;padding:.8rem 1rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-3);font-family:'Inter',sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:var(--trans);margin-bottom:-1px;text-decoration:none;white-space:nowrap }
.tab-btn:hover { color:var(--text-2) }
.tab-btn.active { color:var(--red);border-bottom-color:var(--red);font-weight:600 }
.tabs-clock { margin-left:auto;display:flex;align-items:center;gap:.5rem;padding:0 0 0 1rem;border-left:1px solid var(--border) }
.clock-time { font-family:'Outfit',sans-serif;font-size:1.05rem;font-weight:600;color:var(--text);letter-spacing:-.01em }
.clock-date { font-size:.72rem;color:var(--text-3);white-space:nowrap }

/* ════════════════════════════════════════
   MAIN / STATS
════════════════════════════════════════ */
.main-content { max-width:1400px;margin:0 auto;padding:1.5rem;position:relative;z-index:1 }
.stats-bar { display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap }
.stat-chip { display:flex;align-items:center;gap:.4rem;padding:.32rem .85rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-full);font-size:.8rem;font-weight:500;color:var(--text-2);transition:var(--trans);white-space:nowrap }
.stat-chip strong { color:var(--text);font-weight:700 }
.dot { width:7px;height:7px;border-radius:50%;flex-shrink:0 }
.dot-green { background:var(--green);box-shadow:0 0 6px var(--green) }
.dot-red   { background:var(--red);box-shadow:0 0 6px var(--red) }
.filter-chip { cursor:pointer;user-select:none }
.filter-chip:hover { background:var(--card-h);border-color:var(--border-h) }
.filter-chip.active-filter { border-color:var(--red)!important;background:var(--red-subtle)!important;color:var(--red)!important }
.filter-chip.active-filter strong { color:var(--red) }

/* ════════════════════════════════════════
   KACHELN
   – Kein transform, kein backdrop-filter
   – Status als farbiger Rahmen + Shadow
════════════════════════════════════════ */
.vehicle-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:.85rem }

.vcard {
  background:var(--card);
  border:2px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  cursor:pointer;
  display:flex;flex-direction:column;
  user-select:none;
  /* KEIN transform, KEIN backdrop-filter → immer scharf */
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}
.vcard:hover {
  background:var(--card-h);
  box-shadow:0 8px 28px rgba(0,0,0,.25);
}

/* Status – deutliche Rahmenfarbe + Glow */
.vcard.card--free { border-color:rgba(16,214,122,.5) }
.vcard.card--free:hover { border-color:var(--green);box-shadow:0 8px 28px rgba(16,214,122,.15) }

.vcard.card--busy { border-color:rgba(229,35,15,.55) }
.vcard.card--busy:hover { border-color:var(--red);box-shadow:0 8px 28px rgba(229,35,15,.2) }

.vcard.card--soon { border-color:rgba(255,140,66,.45) }
.vcard.card--soon:hover { border-color:var(--orange);box-shadow:0 8px 28px rgba(255,140,66,.15) }

/* Light Mode stärkere Farben */
[data-theme="light"] .vcard.card--free { border-color:rgba(16,214,122,.6) }
[data-theme="light"] .vcard.card--busy { border-color:rgba(229,35,15,.65) }
[data-theme="light"] .vcard.card--soon { border-color:rgba(255,140,66,.55) }

/* Kopf */
.vcard-head { display:flex;flex-direction:row;align-items:stretch;min-height:70px;border-bottom:1px solid var(--border) }
.vcard-img { width:60px;min-width:60px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;border-right:1px solid var(--border);background:var(--surface) }
.vcard-img img { width:100%;height:100%;object-fit:cover;display:block }
.vcard-icon { font-size:1.8rem;line-height:1 }
.vcard-info { flex:1;min-width:0;padding:.42rem .65rem;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:3px }
.vcard-info-top { display:flex;align-items:center;justify-content:space-between;width:100%;gap:.4rem }
.vcard-name { font-family:'Outfit',sans-serif;font-size:.97rem;font-weight:700;color:var(--text);letter-spacing:-.01em;white-space:normal;overflow:visible;text-overflow:unset;flex:1;min-width:0;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical }

/* Chips */
.vcard-chips-row { display:flex;flex-direction:row;gap:3px;align-items:center;min-height:16px;width:100% }
.vcard-bm-chip { display:inline-block;font-size:.63rem;font-weight:500;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:14px }
.vcard-bm-chip:not(:empty) { color:var(--text-2);background:var(--surface);border:1px solid var(--border-h);border-radius:6px;padding:1px 6px }
[data-theme="light"] .vcard-bm-chip:not(:empty) { color:var(--text-2) }
.vcard-bm-chip:empty { visibility:hidden }

/* Deutsches Kennzeichen – scharf durch feste Pixel-Größen */
.de-plate { display:inline-flex;align-items:stretch;background:#f8f8f6;border:2px solid #111;border-radius:4px;overflow:hidden;height:18px;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55) }
.de-plate-eu { background:#003399;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 2px;min-width:14px;border-right:1px solid #222;flex-shrink:0 }
.de-plate-stars { font-size:4px;color:#ffdd00;line-height:1;letter-spacing:-1px }
.de-plate-d { font-size:6px;font-weight:900;color:#fff;line-height:1;font-family:Arial,sans-serif }
.de-plate-area,
.de-plate-number,
.de-plate-text { font-family:'Arial Black',Arial,sans-serif;font-size:9px;font-weight:900;color:#111;letter-spacing:.5px;display:flex;align-items:center;text-transform:uppercase;white-space:nowrap }
.de-plate-area { padding:0 3px 0 5px }
.de-plate-number { padding:0 5px 0 3px }
.de-plate-seals { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:#f8f8f6;flex-shrink:0;width:10px }
.de-plate-seal { display:block;width:6px;height:6px;border-radius:50%;border:1px solid #555;box-sizing:border-box;background:radial-gradient(circle at 50% 50%, #f7e1a1 0 28%, #d58b36 31% 52%, #f7e1a1 56% 100%) }
.de-plate-seal-city { background:radial-gradient(circle at 50% 50%, #eaf1e3 0 26%, #555 29% 36%, #f6f6f2 39% 62%, #8ca27e 66% 100%) }
.de-plate-text { padding:0 4px }

/* Statusleiste */
.vcard-statusbar { display:flex;align-items:center;gap:.45rem;padding:.35rem .65rem;min-height:28px;border-top:1px solid var(--border) }
.card--free .vcard-statusbar { background:rgba(16,214,122,.15);border-top-color:rgba(16,214,122,.25);border-left:4px solid var(--green) }
.card--busy .vcard-statusbar { background:rgba(229,35,15,.15);border-top-color:rgba(229,35,15,.25);border-left:4px solid var(--red) }
.card--soon .vcard-statusbar { background:rgba(255,140,66,.15);border-top-color:rgba(255,140,66,.25);border-left:4px solid var(--orange) }
[data-theme="light"] .card--free .vcard-statusbar { background:rgba(16,214,122,.1) }
[data-theme="light"] .card--busy .vcard-statusbar { background:rgba(229,35,15,.07) }
[data-theme="light"] .card--soon .vcard-statusbar { background:rgba(255,140,66,.08) }

.vcard-dot { width:7px;height:7px;border-radius:50%;flex-shrink:0 }
.dot--green  { background:var(--green);box-shadow:0 0 6px rgba(16,214,122,.7) }
.dot--red    { background:var(--red);box-shadow:0 0 7px var(--red-glow);animation:blink 1.4s infinite }
.dot--orange { background:var(--orange);box-shadow:0 0 6px rgba(255,140,66,.5) }
.vcard-status-text { font-family:'Outfit',sans-serif;font-size:.73rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0 }
.vcard-status-text--free { color:var(--green) }
.vcard-status-text--busy { color:#ff8888 }

.card--free .vcard-status-text {
  color:var(--green);
  font-weight:700;
}

.card--busy .vcard-status-text {
  color:#ff8888;
  font-weight:700;
}
.vcard-status-counter { margin-left:auto;flex-shrink:0;text-align:right }
.vcard-countdown  { font-family:'Outfit',sans-serif;font-size:.73rem;font-weight:700;color:#ff8888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis }
.vcard-free-label { font-family:'Outfit',sans-serif;font-size:.73rem;font-weight:700;color:var(--green);flex:1 }
.vcard-soon-label { font-size:.7rem;font-weight:600;color:var(--orange);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 }
@keyframes blink { 0%,100%{opacity:1}50%{opacity:.35} }

/* ════════════════════════════════════════
   KALENDER
════════════════════════════════════════ */
.calendar-wrapper { background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem }
.fc { font-family:'Inter',sans-serif!important }
.fc .fc-toolbar-title { font-family:'Outfit',sans-serif;font-size:1.4rem;font-weight:700;color:var(--text) }
.fc .fc-button { background:var(--surface)!important;border-color:var(--border)!important;color:var(--text-2)!important;font-family:'Inter',sans-serif!important;border-radius:var(--radius-sm)!important;font-size:.8rem!important }
.fc .fc-button:hover { background:var(--red)!important;border-color:var(--red)!important;color:#fff!important }
.fc .fc-button-active { background:var(--red)!important;border-color:var(--red)!important;color:#fff!important }
.fc-theme-standard td,.fc-theme-standard th,.fc-theme-standard .fc-scrollgrid { border-color:var(--border)!important }
.fc .fc-daygrid-day-number { color:var(--text-3);text-decoration:none;font-size:.8rem }
.fc .fc-col-header-cell-cushion { color:var(--text-3);font-weight:600;text-decoration:none;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em }
.fc-day-today { background:var(--red-subtle)!important }
.fc-day-today .fc-daygrid-day-number { color:var(--red)!important;font-weight:700 }
.fc .fc-event { border-radius:5px;font-size:.73rem;padding:1px 5px;cursor:pointer;border:none!important;font-weight:600 }
.fc .fc-list-day-cushion { background:var(--surface)!important }
#calDetailPopup { position:absolute;z-index:700;background:var(--bg-2);border:1px solid var(--border-h);border-radius:var(--radius);padding:1.25rem;width:300px;box-shadow:0 16px 48px rgba(0,0,0,.4);font-size:.85rem }
.cal-detail-row { display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.35rem;font-size:.82rem }
.cal-detail-row span { color:var(--text-3);flex-shrink:0;font-size:.73rem;text-transform:uppercase;letter-spacing:.04em }
.cal-detail-row strong { color:var(--text);text-align:right;font-weight:600 }

/* ════════════════════════════════════════
   MODALS
════════════════════════════════════════ */
.modal-overlay { position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(6px);z-index:500;display:none;align-items:center;justify-content:center;padding:1rem }
.modal-overlay.active { display:flex }
.modal { background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px rgba(0,0,0,.5);animation:modalIn .25s cubic-bezier(.34,1.4,.64,1) }
.modal--detail { max-width:460px }
@keyframes modalIn { from{opacity:0;transform:translateY(20px) scale(.97)} to{opacity:1;transform:none} }
.modal-header { padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--surface) }
.modal-title { font-family:'Outfit',sans-serif;font-size:1.25rem;font-weight:700;color:var(--text);letter-spacing:-.02em }
.modal-close { width:30px;height:30px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-3);font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--trans);flex-shrink:0 }
.modal-close:hover { background:var(--red);border-color:var(--red);color:#fff }
.modal-body { padding:1.25rem 1.5rem 1.5rem }

.dm-chips { display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.75rem }
.dm-chip { display:inline-flex;align-items:center;gap:.3rem;padding:.22rem .65rem;border-radius:var(--radius-full);font-size:.76rem;font-weight:500;background:var(--surface);border:1px solid var(--border-h);color:var(--text-2) }
.dm-section { border-radius:var(--radius-sm);padding:.8rem 1rem;margin-bottom:.6rem }
.dm-section--busy { background:rgba(229,35,15,.06);border:1px solid rgba(229,35,15,.2) }
.dm-section--next { background:rgba(255,140,66,.06);border:1px solid rgba(255,140,66,.2) }
.dm-section--free { background:rgba(16,214,122,.05);border:1px solid rgba(16,214,122,.15) }
.dm-section-label { font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:.4rem }
.dm-row { display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.83rem;margin-bottom:.22rem }
.dm-row span { color:var(--text-3);flex-shrink:0;font-size:.73rem;text-transform:uppercase;letter-spacing:.04em }
.dm-row strong { color:var(--text);text-align:right;font-weight:600 }
.dm-countdown-row strong { font-family:'Outfit',sans-serif;font-size:.95rem;color:#ff7777;font-weight:700 }

.vehicle-preview-badge { display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:var(--red-subtle);border:1px solid rgba(229,35,15,.2);border-radius:var(--radius-sm);margin-bottom:1.1rem }
.vehicle-preview-badge .vname { font-family:'Outfit',sans-serif;font-weight:700;font-size:.95rem }
.vehicle-preview-badge .vplate { font-size:.75rem;color:var(--text-3);margin-top:2px }

.form-row { display:grid;grid-template-columns:1fr 1fr;gap:.85rem }
.form-group { display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem }
.form-group label { font-size:.72rem;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em }
.form-control { width:100%;padding:.65rem .9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:'Inter',sans-serif;font-size:.9rem;transition:var(--trans) }
.form-control:focus { outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-glow) }
.form-control::placeholder { color:var(--text-3) }
textarea.form-control { resize:vertical;min-height:72px }
.res-info-box { border-radius:var(--radius-sm);padding:.65rem .9rem;font-size:.8rem;margin-bottom:.5rem }
.res-info-box .info-label { font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px }
.res-info-permanent { background:rgba(91,138,245,.07);border:1px solid rgba(91,138,245,.2) }
.res-info-permanent .info-label { color:var(--blue) }
.res-info-permanent .info-text { color:var(--text-2) }
.res-info-extra { background:var(--orange-soft);border:1px solid rgba(255,140,66,.2) }
.res-info-extra .info-label { color:var(--orange) }
.res-info-extra .info-text { color:var(--text-2) }
.availability-check { border-radius:var(--radius-sm);padding:.55rem .85rem;font-size:.83rem;font-weight:500;margin-top:.4rem;display:none }
.avail-ok   { background:var(--green-soft);border:1px solid rgba(16,214,122,.2);color:var(--green) }
.avail-busy { background:var(--red-subtle);border:1px solid rgba(229,35,15,.2);color:#ff7777 }
.btn-primary { width:100%;padding:.82rem;background:var(--red);color:#fff;border:none;border-radius:var(--radius-full);font-family:'Outfit',sans-serif;font-size:1rem;font-weight:700;cursor:pointer;transition:var(--trans);margin-top:.5rem;box-shadow:0 4px 16px var(--red-glow) }
.btn-primary:hover { background:var(--red-soft);box-shadow:0 6px 24px var(--red-glow) }
.btn-primary:disabled { background:var(--surface);color:var(--text-3);cursor:not-allowed;box-shadow:none }

/* ════════════════════════════════════════
   TOASTS / EMPTY / FOOTER
════════════════════════════════════════ */
.toast-container { position:fixed;bottom:1.5rem;right:1.5rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem }
.toast { padding:.85rem 1.15rem;border-radius:var(--radius-sm);font-weight:600;font-size:.85rem;box-shadow:0 8px 24px rgba(0,0,0,.3);min-width:260px;display:flex;align-items:center;gap:.6rem;animation:toastIn .24s ease }
.toast-success { background:var(--card);border:1px solid rgba(16,214,122,.3);color:var(--green) }
.toast-error   { background:var(--card);border:1px solid rgba(229,35,15,.3);color:#ff7777 }
@keyframes toastIn { from{opacity:0;transform:translateX(40px)} to{opacity:1;transform:none} }
.empty-state { text-align:center;padding:4rem 2rem;color:var(--text-3) }
.empty-state .icon { font-size:3.5rem;margin-bottom:1rem }
.empty-state h3 { font-family:'Outfit',sans-serif;font-size:1.6rem;font-weight:700;color:var(--text-2);margin-bottom:.4rem }
.site-footer { text-align:center;padding:1.5rem;color:var(--text-3);font-size:.78rem;border-top:1px solid var(--border);margin-top:2.5rem;position:relative;z-index:1 }

/* ════════════════════════════════════════
   PROFIL-DROPDOWN CSS (fehlt aus style)
════════════════════════════════════════ */

/* ════════════════════════════════════════
   RESPONSIVE TABLET ≤960px
════════════════════════════════════════ */
@media(max-width:960px) {
  .vehicle-grid { grid-template-columns:repeat(auto-fill,minmax(220px,1fr)) }
  .clock-date { display:none }
}

/* ════════════════════════════════════════
   RESPONSIVE MOBILE ≤640px
════════════════════════════════════════ */
@media(max-width:640px) {
  /* Header */
  .site-header { padding:0 .85rem }
  .header-inner { min-height:56px;gap:.4rem }
  .site-logo-img { max-height:38px;max-width:110px }
  .site-logo-divider { height:26px;margin:0 .3rem }
  .logo-title { font-size:1rem }
  .logo-sub { display:none }
  .btn-login-text { display:none }
  .btn-login-header { padding:.45rem;width:40px;height:40px;border-radius:50%;justify-content:center }
  .btn-login-icon { font-size:1rem;margin:0 }
  .profile-name,.profile-chevron { display:none }
  .profile-btn { padding:.25rem;border-radius:50% }
  .profile-avatar { width:38px;height:38px }

  /* Tabs */
  .tabs-inner { padding:0 .75rem }
  .tab-btn { padding:.7rem .6rem;font-size:.8rem }
  .tabs-clock { padding-left:.6rem;gap:.3rem }
  .clock-time { font-size:.95rem }

  /* Stats */
  .stats-bar { flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem;gap:.35rem;-webkit-overflow-scrolling:touch;scrollbar-width:none }
  .stats-bar::-webkit-scrollbar { display:none }
  .stat-chip { flex-shrink:0;font-size:.76rem;padding:.28rem .7rem }

  /* Content */
  .main-content { padding:.75rem }

  /* Kacheln: 1 Spalte, kompakt aber nicht gequetscht */
  .vehicle-grid { grid-template-columns:1fr;gap:1rem }
  .vcard-head { min-height:60px }
  .vcard-img { width:54px;min-width:54px }
  .vcard-icon { font-size:1.6rem }
  .vcard-info { padding:.35rem .55rem;gap:2px }
  .vcard-name { font-size:.9rem }
  .vcard-bm-chip { font-size:.6rem }
  .vcard-statusbar { padding:.3rem .55rem;min-height:26px }
  .vcard-countdown,.vcard-status-text,.vcard-free-label,.vcard-soon-label { font-size:.7rem }
  .vcard-dot { width:6px;height:6px }
  .de-plate { height:20px }
  .de-plate-text { font-size:10px;padding:0 4px }
  .de-plate-eu { min-width:16px }
  .de-plate-d { font-size:7px }

  /* Modal von unten */
  .modal-overlay { padding:0;align-items:flex-end }
  .modal { max-width:100%;border-radius:var(--radius) var(--radius) 0 0;max-height:92vh;animation:modalUp .26s cubic-bezier(.34,1.4,.64,1) }
  @keyframes modalUp { from{transform:translateY(100%);opacity:0} to{transform:none;opacity:1} }
  .form-row { grid-template-columns:1fr }
}

/* Kalender-Popup: fixed damit es immer sichtbar ist */
#calDetailPopup { position:fixed !important; z-index:800 !important; }

/* Erweiterte Reservierung */
.modal--day-reserve {
  width:clamp(560px, 62vw, 760px);
  min-width:0;
  max-width:calc(100vw - 2rem);
}
.modal--day-reserve .modal-body { overflow-x:hidden; }
.day-time-row { grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem }

.day-vehicle-table-wrap {
  width:100%;
  max-width:100%;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  background:var(--card);
}
.day-vehicle-table {
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  font-size:.82rem;
  line-height:1.25;
}
.day-vehicle-table th,
.day-vehicle-table td {
  padding:.55rem .7rem;
  text-align:left;
  vertical-align:middle;
  border-bottom:1px solid var(--border);
}
.day-vehicle-table th {
  color:var(--text-2);
  font-size:.66rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.09em;
  background:var(--card-h);
  white-space:nowrap;
}
.day-vehicle-table tbody tr { cursor:pointer;transition:background var(--trans) }
.day-vehicle-table tbody tr:hover { background:rgba(255,255,255,.035) }
.day-vehicle-table tbody tr:last-child td { border-bottom:0 }
.day-vehicle-table-compact th:first-child,
.day-vehicle-table-compact td:first-child { width:68%; }
.day-vehicle-table-compact th:last-child,
.day-vehicle-table-compact td:last-child { width:32%; }
.vehicle-summary {
  display:flex;
  align-items:center;
  gap:.55rem;
  min-width:0;
}
.day-vehicle-radio-input {
  flex:0 0 auto;
  width:15px;
  height:15px;
  accent-color:var(--red);
  margin:0;
}
.vehicle-summary-main {
  min-width:0;
}
.vehicle-summary-titleline {
  display:flex;
  align-items:center;
  gap:.38rem;
  min-width:0;
}
.vehicle-summary-name {
  display:block;
  color:var(--text);
  font-size:.86rem;
  line-height:1.15;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.vehicle-summary-meta {
  display:flex;
  flex-wrap:wrap;
  gap:.25rem;
  margin-top:.28rem;
}
.vehicle-bubble {
  display:inline-flex;
  align-items:center;
  max-width:100%;
  border:1px solid var(--border-h);
  border-radius:999px;
  padding:.13rem .45rem;
  font-size:.66rem;
  font-weight:700;
  color:var(--text-2);
  background:rgba(255,255,255,.04);
  line-height:1.1;
  white-space:nowrap;
}
.vehicle-bubble-type {
  color:#c7d2ff;
  border-color:rgba(159,180,255,.38);
  background:rgba(91,126,255,.12);
}
.vehicle-bubble-number {
  color:#c7d2ff;
}
.vehicle-bubble-model {
  max-width:180px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.muted { color:var(--text-3) }
.day-vehicle-table .plate-cell {
  overflow:visible;
}
.day-vehicle-table .de-plate {
  height:20px;
  max-width:128px;
  vertical-align:middle;
}
.day-vehicle-table .de-plate-area,
.day-vehicle-table .de-plate-number,
.day-vehicle-table .de-plate-text {
  font-size:10px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.day-vehicle-table .de-plate-area { padding:0 3px 0 5px }
.day-vehicle-table .de-plate-number { padding:0 5px 0 3px;max-width:78px;letter-spacing:.35px }
.day-vehicle-table .de-plate-eu { min-width:14px;padding:0 2px }
.day-vehicle-table .de-plate-d { font-size:6px }
.day-vehicle-table .de-plate-stars { font-size:5px;line-height:5px }
.day-vehicle-table .de-plate-seals { gap:1px;margin:0 1px;width:8px }
.day-vehicle-table .de-plate-seal { width:5px;height:5px }

@media (max-width:760px) {
  .modal--day-reserve {
    width:100%;
    min-width:0;
    max-width:100%;
  }
  .day-time-row { grid-template-columns:1fr 1fr; }
  .day-vehicle-table { font-size:.78rem; }
  .day-vehicle-table th,.day-vehicle-table td { padding:.48rem .55rem; }
  .vehicle-summary { gap:.42rem; }
  .vehicle-summary-titleline { gap:.3rem; }
  .vehicle-summary-name { font-size:.8rem; }
  .vehicle-summary-meta { gap:.2rem;margin-top:.24rem; }
  .vehicle-bubble { font-size:.6rem;padding:.1rem .36rem; }
  .vehicle-bubble-model { max-width:135px; }
  .day-vehicle-table .de-plate { max-width:112px;height:19px; }
  .day-vehicle-table .de-plate-area,
  .day-vehicle-table .de-plate-number,
  .day-vehicle-table .de-plate-text { font-size:10px; }
  .day-vehicle-table .de-plate-number { max-width:64px;letter-spacing:.25px; }
  .day-vehicle-table .de-plate-eu { min-width:14px; }
  .day-vehicle-table .de-plate-seal { width:5px;height:5px; }
}

/* Mobile Feinschliff: Datum- und Uhrzeitfelder im Reservierungsmodal */
.modal--day-reserve .form-group,
.modal--day-reserve .day-time-row {
  min-width:0;
}
.modal--day-reserve input[type="date"].form-control,
.modal--day-reserve input[type="time"].form-control {
  width:100%;
  max-width:100%;
  min-width:0;
  inline-size:100%;
  min-inline-size:0;
}

@media (max-width:760px) {
  .modal--day-reserve .modal-body {
    padding-left:1rem;
    padding-right:1rem;
  }
  .modal--day-reserve .form-group {
    width:100%;
    max-width:100%;
  }
  .modal--day-reserve .day-time-row {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:.6rem;
    width:100%;
    max-width:100%;
  }
  .modal--day-reserve input[type="date"].form-control,
  .modal--day-reserve input[type="time"].form-control {
    width:100%;
    max-width:100%;
    min-width:0;
    height:36px;
    padding:.5rem .65rem;
    font-size:.82rem;
  }
}

@media (max-width:420px) {
  .modal--day-reserve .day-time-row {
    grid-template-columns:1fr;
  }
}

/* Mobile Korrektur: Reservierungsmodal und Listenansicht */
.modal--day-reserve,
.modal--day-reserve * {
  box-sizing:border-box;
}
.modal--day-reserve .form-control {
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
}
.modal--day-reserve input[type="date"].form-control,
.modal--day-reserve input[type="time"].form-control {
  -webkit-appearance:none;
  appearance:none;
}

@media (max-width:760px) {
  .modal--day-reserve .modal-body {
    overflow-x:hidden;
  }
  .modal--day-reserve .day-time-row {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:.55rem;
    width:100%;
  }
  .modal--day-reserve .day-time-row .form-group {
    min-width:0;
    width:100%;
    margin-bottom:.75rem;
  }
  .modal--day-reserve input[type="date"].form-control,
  .modal--day-reserve input[type="time"].form-control {
    width:100%;
    max-width:100%;
    min-width:0;
    height:34px;
    padding:.42rem .55rem;
    font-size:.78rem;
    line-height:1.1;
  }
  .modal--day-reserve input[type="date"].form-control::-webkit-date-and-time-value,
  .modal--day-reserve input[type="time"].form-control::-webkit-date-and-time-value {
    text-align:left;
  }

  /* FullCalendar Liste auf dem Smartphone höher anzeigen */
  #calendar .fc-listMonth-view,
  #calendar .fc-list {
    min-height:calc(100vh - 210px);
  }
  #calendar .fc-list-table {
    min-height:calc(100vh - 250px);
  }
}

@media (max-width:380px) {
  .modal--day-reserve .day-time-row {
    gap:.45rem;
  }
  .modal--day-reserve input[type="date"].form-control,
  .modal--day-reserve input[type="time"].form-control {
    font-size:.74rem;
    padding:.38rem .46rem;
  }
}

/* Fix 2026-06-10: Kennzeichen und mobile Kalenderliste */
.day-vehicle-table .de-plate-number,
.de-plate-number {
  white-space:nowrap;
}
@media (max-width:760px) {
  .calendar-wrapper {
    min-height:calc(100vh - 110px);
    display:flex;
    flex-direction:column;
  }
  #calendar {
    min-height:calc(100vh - 170px);
    display:flex;
    flex-direction:column;
  }
  #calendar .fc,
  #calendar .fc-view-harness,
  #calendar .fc-view,
  #calendar .fc-listMonth-view,
  #calendar .fc-list {
    min-height:calc(100vh - 220px);
  }
  #calendar .fc-list-table {
    min-height:0;
  }
  .site-footer {
    margin-top:2rem;
  }
}


/* ============================================================
   Fix 2026-06-15: FullCalendar Darkmode Lesbarkeit
   Wichtig: style.css wird in index.php nach FullCalendar geladen.
   ============================================================ */
html:not([data-theme="light"]) #calendar .fc-list,
html:not([data-theme="light"]) #calendar .fc-list-table,
html:not([data-theme="light"]) #calendar .fc-listMonth-view {
  background: var(--card) !important;
  color: var(--text) !important;
}

html:not([data-theme="light"]) #calendar .fc-list-day-cushion {
  background: #171923 !important;
  color: #ffffff !important;
}

html:not([data-theme="light"]) #calendar .fc-list-day-text,
html:not([data-theme="light"]) #calendar .fc-list-day-side-text {
  color: #ffffff !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

html:not([data-theme="light"]) #calendar .fc-list-event td,
html:not([data-theme="light"]) #calendar .fc-list-event th {
  background: #20232e !important;
  color: #f4f2f0 !important;
}

html:not([data-theme="light"]) #calendar .fc-list-event:hover td,
html:not([data-theme="light"]) #calendar .fc-list-event:hover th {
  background: #2b3040 !important;
  color: #ffffff !important;
}

html:not([data-theme="light"]) #calendar .fc-list-event-title,
html:not([data-theme="light"]) #calendar .fc-list-event-title a,
html:not([data-theme="light"]) #calendar .fc-list-event-time,
html:not([data-theme="light"]) #calendar .fc-event-title,
html:not([data-theme="light"]) #calendar .fc-event-time {
  color: #f4f2f0 !important;
  opacity: 1 !important;
}

html:not([data-theme="light"]) #calendar .fc-list-event:hover .fc-list-event-title,
html:not([data-theme="light"]) #calendar .fc-list-event:hover .fc-list-event-title a,
html:not([data-theme="light"]) #calendar .fc-list-event:hover .fc-list-event-time {
  color: #ffffff !important;
}

html:not([data-theme="light"]) #calendar .fc-theme-standard td,
html:not([data-theme="light"]) #calendar .fc-theme-standard th,
html:not([data-theme="light"]) #calendar .fc-theme-standard .fc-scrollgrid,
html:not([data-theme="light"]) #calendar .fc-list-table td,
html:not([data-theme="light"]) #calendar .fc-list-table th {
  border-color: #3a4050 !important;
}

html:not([data-theme="light"]) .tab-btn {
  color: rgba(244,242,240,.72) !important;
}

html:not([data-theme="light"]) .tab-btn:hover,
html:not([data-theme="light"]) .tab-btn.active {
  color: #ffffff !important;
}

html:not([data-theme="light"]) .clock-date,
html:not([data-theme="light"]) .logo-sub {
  color: rgba(244,242,240,.72) !important;
}

/* ===== Darkmode Fix v4: Reservierungs-Detailfenster / Kalender-Popup ===== */
:root {
  --text-muted: rgba(244,242,240,.72);
}
[data-theme="light"] {
  --text-muted: rgba(17,18,24,.58);
}

#calDetailPopup,
.modal--detail {
  color: var(--text) !important;
}

#calDetailPopup .modal-body,
#calDetailPopup #cal-detail-body,
.modal--detail .modal-body {
  color: var(--text) !important;
}

.cal-detail-row {
  border-bottom: 1px solid rgba(255,255,255,.04);
  padding: .25rem 0;
}

.cal-detail-row span,
.dm-row span,
.dm-section-label,
.form-group label {
  color: rgba(244,242,240,.68) !important;
}

.cal-detail-row strong,
.dm-row strong,
.modal--detail strong,
.modal--detail em {
  color: #ffffff !important;
}

.modal--detail .modal-title {
  color: #ffffff !important;
}

.modal--detail .modal-header {
  background: #181923 !important;
  border-bottom-color: #2e3442 !important;
}

.modal--detail,
#calDetailPopup {
  background: #101119 !important;
  border-color: #2e3442 !important;
}

#dm-type,
#dm-desc,
#dm-curr-note,
#dm-next-note,
.modal--detail [style*="var(--text-muted)"] {
  color: rgba(244,242,240,.72) !important;
}

.dm-section {
  background-color: rgba(255,255,255,.035) !important;
  border-color: #303747 !important;
}

.dm-section--busy {
  background-color: rgba(229,35,15,.10) !important;
  border-color: rgba(229,35,15,.36) !important;
}

.dm-section--next {
  background-color: rgba(255,140,66,.10) !important;
  border-color: rgba(255,140,66,.36) !important;
}

.dm-chip {
  color: rgba(244,242,240,.82) !important;
  background: #1d202b !important;
  border-color: #343b4d !important;
}


/* Kennzeichen-Fix V3:
   Entfernt helle Artefakte an den Ecken im Darkmode.
   Ursache kann je nach Browser Subpixel-Antialiasing an gerundeten/verschachtelten Elementen sein. */
.de-plate-wrap {
  display:inline-flex!important;
  align-items:center!important;
  background:transparent!important;
  line-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  vertical-align:middle!important;
}

.de-plate.de-plate-clean,
.de-plate.de-plate-clean *,
.de-plate.de-plate-clean::before,
.de-plate.de-plate-clean::after {
  border-radius:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

.de-plate.de-plate-clean {
  display:inline-flex!important;
  align-items:stretch!important;
  background:#f8f8f6!important;
  border:2px solid #111!important;
  border-radius:0!important;
  overflow:hidden!important;
  clip-path:inset(0)!important;
  -webkit-mask-image:linear-gradient(#000,#000)!important;
  mask-image:linear-gradient(#000,#000)!important;
  outline:0!important;
}

.de-plate.de-plate-clean .de-plate-eu {
  background:#003399!important;
  border-right:1px solid #111!important;
  margin:0!important;
}

.de-plate.de-plate-clean .de-plate-area,
.de-plate.de-plate-clean .de-plate-seals,
.de-plate.de-plate-clean .de-plate-number,
.de-plate.de-plate-clean .de-plate-text {
  background:#f8f8f6!important;
  margin:0!important;
}


/* Kennzeichen Größe V4: basiert auf dem funktionierenden Darkmode-Fix V3.
   Wichtig: keine globalen .de-plate-Overrides ohne de-plate-clean, sonst kommen die weißen Ecken zurück. */
.de-plate-wrap .de-plate.de-plate-clean {
  height:22px!important;
  max-width:132px!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  clip-path:inset(0)!important;
  -webkit-mask-image:linear-gradient(#000,#000)!important;
  mask-image:linear-gradient(#000,#000)!important;
}

.de-plate-wrap .de-plate.de-plate-clean .de-plate-area,
.de-plate-wrap .de-plate.de-plate-clean .de-plate-number,
.de-plate-wrap .de-plate.de-plate-clean .de-plate-text {
  font-size:11px!important;
}

.de-plate-wrap .de-plate.de-plate-clean .de-plate-number {
  max-width:78px!important;
  letter-spacing:.35px!important;
}

.de-plate-wrap .de-plate.de-plate-clean .de-plate-eu {
  min-width:16px!important;
}

.de-plate-wrap .de-plate.de-plate-clean .de-plate-d {
  font-size:7px!important;
}

.de-plate-wrap .de-plate.de-plate-clean .de-plate-stars {
  font-size:5px!important;
  line-height:5px!important;
}

.de-plate-wrap .de-plate.de-plate-clean .de-plate-seals {
  width:10px!important;
}

.de-plate-wrap .de-plate.de-plate-clean .de-plate-seal {
  width:6px!important;
  height:6px!important;
}

/* alpha28: Kennzeichen in der Fahrzeugübersicht (index.php) gezielt kleiner.
   Dashboard und Backend-Listen bleiben unberührt. */
.vcard-info-top .plate-unified,
.vcard-info-top .dashboard-plate-mini.plate-unified {
  width:118px!important;
  min-width:118px!important;
  height:23px!important;
  flex:0 0 118px!important;
  align-self:center!important;
}
.vcard-info-top .plate-unified-svg,
.vcard-info-top .dashboard-license-svg.plate-unified-svg {
  width:118px!important;
  height:23px!important;
  max-width:118px!important;
}
.vcard-info-top {
  gap:.55rem;
}
@media(max-width:640px){
  .vcard-info-top .plate-unified,
  .vcard-info-top .dashboard-plate-mini.plate-unified {
    width:108px!important;
    min-width:108px!important;
    height:22px!important;
    flex-basis:108px!important;
  }
  .vcard-info-top .plate-unified-svg,
  .vcard-info-top .dashboard-license-svg.plate-unified-svg {
    width:108px!important;
    height:22px!important;
    max-width:108px!important;
  }
}

/* alpha29: Fahrzeugübersicht index.php mit finaler 70-%-Kennzeichengröße. */
.vcard-info-top .plate-unified,
.vcard-info-top .dashboard-plate-mini.plate-unified {
  width:109px!important;
  min-width:109px!important;
  height:22px!important;
  flex:0 0 109px!important;
}
.vcard-info-top .plate-unified-svg,
.vcard-info-top .dashboard-license-svg.plate-unified-svg {
  width:109px!important;
  height:22px!important;
  max-width:109px!important;
}
@media(max-width:640px){
  .vcard-info-top .plate-unified,
  .vcard-info-top .dashboard-plate-mini.plate-unified {
    width:104px!important;
    min-width:104px!important;
    height:21px!important;
    flex-basis:104px!important;
  }
  .vcard-info-top .plate-unified-svg,
  .vcard-info-top .dashboard-license-svg.plate-unified-svg {
    width:104px!important;
    height:21px!important;
    max-width:104px!important;
  }
}

/* alpha30: Fahrzeugübersicht nutzt dieselbe finale Kennzeichengröße wie das Dashboard. */
.vcard-info-top .plate-unified,
.vcard-info-top .dashboard-plate-mini,
.vcard-info-top .dashboard-plate-mini.plate-unified {
  width:125px!important;
  min-width:125px!important;
  height:25px!important;
  flex:0 0 125px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.vcard-info-top .plate-unified-svg,
.vcard-info-top .dashboard-license-svg,
.vcard-info-top .dashboard-license-svg.plate-unified-svg {
  width:125px!important;
  height:25px!important;
  max-width:125px!important;
}
@media(max-width:640px){
  .vcard-info-top .plate-unified,
  .vcard-info-top .dashboard-plate-mini,
  .vcard-info-top .dashboard-plate-mini.plate-unified {
    width:118px!important;
    min-width:118px!important;
    height:24px!important;
    flex-basis:118px!important;
  }
  .vcard-info-top .plate-unified-svg,
  .vcard-info-top .dashboard-license-svg,
  .vcard-info-top .dashboard-license-svg.plate-unified-svg {
    width:118px!important;
    height:24px!important;
    max-width:118px!important;
  }
}

/* alpha37: Einheitliche Fahrzeugbilder mit Icon-Fallback */
.vcard-img .vcard-img-object{
  width:100%;
  height:100%;
  object-fit:cover;
  display:flex;
  align-items:center;
  justify-content:center;
}
.vcard-img .vehicle-image-fallback{
  color:#d90000;
  background:var(--surface);
}
.vcard-img .vehicle-image-fallback svg{
  width:26px;
  height:26px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
html[data-theme="dark"] .vcard-img .vehicle-image-fallback{
  color:#ff4b4b;
  background:#242836;
}

/* alpha38: robuste Fahrzeugbilder mit einheitlichem Fallback */
.vehicle-image-wrap{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  position:relative!important;
  flex:0 0 auto!important;
}
.vehicle-image-wrap .vehicle-image-real{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.vehicle-image-wrap .vehicle-image-fallback-inner{
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  color:#ff4b4b!important;
}
.vehicle-image-wrap.vehicle-image-missing .vehicle-image-real{display:none!important;}
.vehicle-image-wrap.vehicle-image-missing .vehicle-image-fallback-inner{display:flex!important;}
.vehicle-image-fallback-inner svg{
  width:24px!important;
  height:24px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* alpha49: Kompakte Kennzeichenvariante fuer den Reservierungsdialog. */
.plate-unified.plate-compact,
.dashboard-plate-mini.plate-unified.plate-compact {
  width:96px!important;
  min-width:96px!important;
  height:19px!important;
  flex:0 0 96px!important;
}
.plate-unified.plate-compact .plate-unified-svg,
.dashboard-plate-mini.plate-unified.plate-compact .dashboard-license-svg,
.plate-unified.plate-compact svg {
  width:96px!important;
  height:19px!important;
  max-width:96px!important;
}
.day-vehicle-table .plate-cell {
  width:110px;
  min-width:110px;
  text-align:left;
  vertical-align:middle;
}

/* ============================================================
   alpha52: Fahrzeugübersicht 2.0 – kompakte Kacheln im Backend-Stil
   Ziel: bestehende index.php-Kachelansicht behalten, aber optisch näher
   an das neue dunkle Dashboard bringen. Keine Funktionsänderung.
   ============================================================ */
body {
  background:
    radial-gradient(circle at 35% -10%, rgba(229,35,15,.08), transparent 42%),
    linear-gradient(135deg, #070b12 0%, #0b111b 42%, #081018 100%) !important;
}
[data-theme="light"] body {
  background:#f3f5f9 !important;
}

.site-header,
.tabs-bar {
  background:rgba(10,16,25,.92) !important;
  border-color:rgba(255,255,255,.08) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.025);
}
[data-theme="light"] .site-header,
[data-theme="light"] .tabs-bar {
  background:#fff !important;
  border-color:rgba(15,23,42,.08) !important;
}

.main-content {
  max-width:1560px;
  padding:1.05rem 1.35rem 1.6rem;
}

.stats-bar {
  margin-bottom:.85rem;
  gap:.6rem;
}
.stat-chip {
  background:rgba(18,28,42,.74);
  border-color:rgba(255,255,255,.09);
  color:rgba(244,242,240,.82);
  padding:.32rem .82rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.stat-chip strong { color:#fff; }
[data-theme="light"] .stat-chip {
  background:#fff;
  border-color:rgba(15,23,42,.09);
  color:#475569;
}
[data-theme="light"] .stat-chip strong { color:#0f172a; }

.vehicle-grid {
  grid-template-columns:repeat(auto-fill,minmax(330px,1fr));
  gap:.72rem;
}

.vcard {
  position:relative;
  min-height:126px;
  border-width:1px;
  border-radius:13px;
  background:
    linear-gradient(180deg, rgba(22,34,49,.92), rgba(15,23,35,.94));
  border-color:rgba(255,255,255,.075);
  box-shadow:0 10px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035);
  overflow:hidden;
}
.vcard::before {
  content:'';
  position:absolute;
  left:0;top:0;bottom:0;
  width:3px;
  background:rgba(148,163,184,.75);
  opacity:.95;
}
.vcard.card--free::before { background:var(--green); box-shadow:0 0 12px rgba(16,214,122,.55); }
.vcard.card--busy::before { background:var(--red); box-shadow:0 0 12px rgba(229,35,15,.55); }
.vcard.card--soon::before { background:var(--orange); box-shadow:0 0 12px rgba(255,140,66,.55); }
.vcard.card--free,
.vcard.card--busy,
.vcard.card--soon {
  border-color:rgba(255,255,255,.09);
}
.vcard.card--free { box-shadow:0 10px 28px rgba(0,0,0,.18), inset 3px 0 0 rgba(16,214,122,.25); }
.vcard.card--busy { box-shadow:0 10px 28px rgba(0,0,0,.18), inset 3px 0 0 rgba(229,35,15,.22); }
.vcard.card--soon { box-shadow:0 10px 28px rgba(0,0,0,.18), inset 3px 0 0 rgba(255,140,66,.24); }
.vcard:hover {
  background:linear-gradient(180deg, rgba(27,41,59,.96), rgba(17,27,40,.98));
  border-color:rgba(255,255,255,.16);
  box-shadow:0 14px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.055);
}
[data-theme="light"] .vcard {
  background:#fff;
  border-color:rgba(15,23,42,.10);
  box-shadow:0 8px 26px rgba(15,23,42,.06);
}
[data-theme="light"] .vcard:hover {
  background:#fff;
  border-color:rgba(15,23,42,.16);
  box-shadow:0 12px 32px rgba(15,23,42,.10);
}

.vcard-head {
  min-height:88px;
  border-bottom:1px solid rgba(255,255,255,.055);
  align-items:center;
  padding:.56rem .72rem .46rem .86rem;
  gap:.72rem;
}
[data-theme="light"] .vcard-head { border-bottom-color:rgba(15,23,42,.08); }

.vcard-img {
  width:70px;
  min-width:70px;
  height:70px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  background:#202a3a;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.vcard-img .vehicle-image-wrap,
.vcard-img .vcard-img-object {
  width:100% !important;
  height:100% !important;
  border-radius:10px;
}
.vcard-img .vehicle-image-real { border-radius:10px; }
.vcard-img .vehicle-image-fallback-inner svg {
  width:28px !important;
  height:28px !important;
  stroke:#ff4b4b !important;
}
[data-theme="light"] .vcard-img {
  background:#f1f5f9;
  border-color:rgba(15,23,42,.08);
}

.vcard-info {
  padding:0;
  gap:.34rem;
  justify-content:center;
  min-width:0;
}
.vcard-info-top {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:.5rem;
}
.vcard-name {
  font-size:1rem;
  line-height:1.05;
  font-weight:800;
  color:#fff;
  -webkit-line-clamp:1;
}
[data-theme="light"] .vcard-name { color:#111827; }

.vcard-info-top .plate-unified,
.vcard-info-top .dashboard-plate-mini,
.vcard-info-top .dashboard-plate-mini.plate-unified {
  width:116px!important;
  min-width:116px!important;
  height:23px!important;
  flex:0 0 116px!important;
  align-self:start!important;
  margin-top:-1px!important;
}
.vcard-info-top .plate-unified-svg,
.vcard-info-top .dashboard-license-svg,
.vcard-info-top .dashboard-license-svg.plate-unified-svg {
  width:116px!important;
  height:23px!important;
  max-width:116px!important;
}

.vcard-chips-row {
  gap:.34rem;
  align-items:center;
  min-height:19px;
}
.vcard-bm-chip:not(:empty) {
  font-size:.64rem;
  line-height:1;
  padding:.18rem .42rem;
  color:rgba(244,242,240,.78);
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.08);
  border-radius:6px;
  max-width:145px;
}
[data-theme="light"] .vcard-bm-chip:not(:empty) {
  color:#475569;
  background:#f1f5f9;
  border-color:rgba(15,23,42,.08);
}
.vcard-bm-chip:empty { display:none; }

.vcard-statusbar {
  min-height:34px;
  padding:.42rem .72rem .42rem .86rem;
  border-top:0;
  background:transparent !important;
  border-left:0 !important;
}
.vcard-statusbar::before {
  content:'';
  position:absolute;
  left:.86rem;
  right:.72rem;
  bottom:34px;
  height:1px;
  background:rgba(255,255,255,.055);
}
[data-theme="light"] .vcard-statusbar::before { background:rgba(15,23,42,.08); }
.vcard-status-text,
.vcard-countdown {
  font-size:.76rem;
  line-height:1.1;
}
.vcard-dot {
  width:7px;
  height:7px;
}
.card--free .vcard-status-text,
.vcard-status-text--free { color:#15dc85; }
.card--soon .vcard-status-text { color:#ff9f43; }
.card--busy .vcard-status-text,
.vcard-status-text--busy,
.vcard-countdown { color:#ff5858; }

@media (min-width:1500px) {
  .vehicle-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:1100px) {
  .vehicle-grid { grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); }
}
@media (max-width:720px) {
  .main-content { padding:1rem; }
  .vehicle-grid { grid-template-columns:1fr; gap:.72rem; }
  .vcard-head { min-height:82px; padding:.55rem .62rem .45rem .78rem; gap:.62rem; }
  .vcard-img { width:62px; min-width:62px; height:62px; }
  .vcard-name { font-size:.95rem; }
  .vcard-info-top .plate-unified,
  .vcard-info-top .dashboard-plate-mini,
  .vcard-info-top .dashboard-plate-mini.plate-unified {
    width:108px!important;
    min-width:108px!important;
    height:22px!important;
    flex-basis:108px!important;
  }
  .vcard-info-top .plate-unified-svg,
  .vcard-info-top .dashboard-license-svg,
  .vcard-info-top .dashboard-license-svg.plate-unified-svg {
    width:108px!important;
    height:22px!important;
    max-width:108px!important;
  }
}
@media (max-width:460px) {
  .vcard-info-top { grid-template-columns:1fr; gap:.35rem; }
  .vcard-info-top .plate-unified,
  .vcard-info-top .dashboard-plate-mini,
  .vcard-info-top .dashboard-plate-mini.plate-unified { margin-top:0!important; }
}


/* ============================================================
   alpha52: Fahrzeugübersicht 2.0 – kompakte Kacheln im Backend-Stil
   Ziel: bestehende index.php-Kachelansicht behalten, aber optisch näher
   an das neue dunkle Dashboard bringen. Keine Funktionsänderung.
   ============================================================ */
body {
  background:
    radial-gradient(circle at 35% -10%, rgba(229,35,15,.08), transparent 42%),
    linear-gradient(135deg, #070b12 0%, #0b111b 42%, #081018 100%) !important;
}
[data-theme="light"] body { background:#f3f5f9 !important; }
.site-header,.tabs-bar {
  background:rgba(10,16,25,.92) !important;
  border-color:rgba(255,255,255,.08) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.025);
}
[data-theme="light"] .site-header,[data-theme="light"] .tabs-bar {
  background:#fff !important;
  border-color:rgba(15,23,42,.08) !important;
}
.main-content { max-width:1560px; padding:1.05rem 1.35rem 1.6rem; }
.stats-bar { margin-bottom:.85rem; gap:.6rem; }
.stat-chip {
  background:rgba(18,28,42,.74);
  border-color:rgba(255,255,255,.09);
  color:rgba(244,242,240,.82);
  padding:.32rem .82rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.stat-chip strong { color:#fff; }
[data-theme="light"] .stat-chip { background:#fff; border-color:rgba(15,23,42,.09); color:#475569; }
[data-theme="light"] .stat-chip strong { color:#0f172a; }
.vehicle-grid { grid-template-columns:repeat(auto-fill,minmax(330px,1fr)); gap:.72rem; }
.vcard {
  position:relative;
  min-height:126px;
  border-width:1px;
  border-radius:13px;
  background:linear-gradient(180deg, rgba(22,34,49,.92), rgba(15,23,35,.94));
  border-color:rgba(255,255,255,.075);
  box-shadow:0 10px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035);
  overflow:hidden;
}
.vcard::before { content:''; position:absolute; left:0; top:0; bottom:0; width:3px; background:rgba(148,163,184,.75); opacity:.95; }
.vcard.card--free::before { background:var(--green); box-shadow:0 0 12px rgba(16,214,122,.55); }
.vcard.card--busy::before { background:var(--red); box-shadow:0 0 12px rgba(229,35,15,.55); }
.vcard.card--soon::before { background:var(--orange); box-shadow:0 0 12px rgba(255,140,66,.55); }
.vcard.card--free,.vcard.card--busy,.vcard.card--soon { border-color:rgba(255,255,255,.09); }
.vcard:hover { background:linear-gradient(180deg, rgba(27,41,59,.96), rgba(17,27,40,.98)); border-color:rgba(255,255,255,.16); box-shadow:0 14px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.055); }
[data-theme="light"] .vcard { background:#fff; border-color:rgba(15,23,42,.10); box-shadow:0 8px 26px rgba(15,23,42,.06); }
[data-theme="light"] .vcard:hover { background:#fff; border-color:rgba(15,23,42,.16); box-shadow:0 12px 32px rgba(15,23,42,.10); }
.vcard-head { min-height:88px; border-bottom:1px solid rgba(255,255,255,.055); align-items:center; padding:.56rem .72rem .46rem .86rem; gap:.72rem; }
[data-theme="light"] .vcard-head { border-bottom-color:rgba(15,23,42,.08); }
.vcard-img { width:70px; min-width:70px; height:70px; border:1px solid rgba(255,255,255,.08); border-radius:10px; background:#202a3a; box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
.vcard-img .vehicle-image-wrap,.vcard-img .vcard-img-object { width:100% !important; height:100% !important; border-radius:10px; }
.vcard-img .vehicle-image-real { border-radius:10px; }
.vcard-img .vehicle-image-fallback-inner svg { width:28px !important; height:28px !important; stroke:#ff4b4b !important; }
[data-theme="light"] .vcard-img { background:#f1f5f9; border-color:rgba(15,23,42,.08); }
.vcard-info { padding:0; gap:.34rem; justify-content:center; min-width:0; }
.vcard-info-top { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:.5rem; }
.vcard-name { font-size:1rem; line-height:1.05; font-weight:800; color:#fff; -webkit-line-clamp:1; }
[data-theme="light"] .vcard-name { color:#111827; }
.vcard-info-top .plate-unified,.vcard-info-top .dashboard-plate-mini,.vcard-info-top .dashboard-plate-mini.plate-unified { width:116px!important; min-width:116px!important; height:23px!important; flex:0 0 116px!important; align-self:start!important; margin-top:-1px!important; }
.vcard-info-top .plate-unified-svg,.vcard-info-top .dashboard-license-svg,.vcard-info-top .dashboard-license-svg.plate-unified-svg { width:116px!important; height:23px!important; max-width:116px!important; }
.vcard-chips-row { gap:.34rem; align-items:center; min-height:19px; }
.vcard-bm-chip:not(:empty) { font-size:.64rem; line-height:1; padding:.18rem .42rem; color:rgba(244,242,240,.78); background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.08); border-radius:6px; max-width:145px; }
[data-theme="light"] .vcard-bm-chip:not(:empty) { color:#475569; background:#f1f5f9; border-color:rgba(15,23,42,.08); }
.vcard-bm-chip:empty { display:none; }
.vcard-statusbar { min-height:34px; padding:.42rem .72rem .42rem .86rem; border-top:0; background:transparent !important; border-left:0 !important; }
.vcard-statusbar::before { content:''; position:absolute; left:.86rem; right:.72rem; bottom:34px; height:1px; background:rgba(255,255,255,.055); }
[data-theme="light"] .vcard-statusbar::before { background:rgba(15,23,42,.08); }
.vcard-status-text,.vcard-countdown { font-size:.76rem; line-height:1.1; }
.vcard-dot { width:7px; height:7px; }
.card--free .vcard-status-text,.vcard-status-text--free { color:#15dc85; }
.card--soon .vcard-status-text { color:#ff9f43; }
.card--busy .vcard-status-text,.vcard-status-text--busy,.vcard-countdown { color:#ff5858; }
@media (min-width:1500px) { .vehicle-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (max-width:1100px) { .vehicle-grid { grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); } }
@media (max-width:720px) {
  .main-content { padding:1rem; }
  .vehicle-grid { grid-template-columns:1fr; gap:.72rem; }
  .vcard-head { min-height:82px; padding:.55rem .62rem .45rem .78rem; gap:.62rem; }
  .vcard-img { width:62px; min-width:62px; height:62px; }
  .vcard-name { font-size:.95rem; }
  .vcard-info-top .plate-unified,.vcard-info-top .dashboard-plate-mini,.vcard-info-top .dashboard-plate-mini.plate-unified { width:108px!important; min-width:108px!important; height:22px!important; flex-basis:108px!important; }
  .vcard-info-top .plate-unified-svg,.vcard-info-top .dashboard-license-svg,.vcard-info-top .dashboard-license-svg.plate-unified-svg { width:108px!important; height:22px!important; max-width:108px!important; }
}
@media (max-width:460px) {
  .vcard-info-top { grid-template-columns:1fr; gap:.35rem; }
  .vcard-info-top .plate-unified,.vcard-info-top .dashboard-plate-mini,.vcard-info-top .dashboard-plate-mini.plate-unified { margin-top:0!important; }
}

/* ============================================================
   alpha53: Fahrzeugübersicht Header, Suche und Filter
   ============================================================ */
.vehicle-overview-page {
  max-width:1560px;
  padding-top:1.15rem;
}
.vehicle-page-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1rem;
}
.vehicle-title-wrap {
  display:flex;
  align-items:center;
  gap:.9rem;
  min-width:0;
}
.vehicle-title-icon {
  width:42px;
  height:42px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(244,242,240,.9);
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.vehicle-title-icon svg { width:24px;height:24px; }
.vehicle-page-head h1 {
  margin:0;
  color:#fff;
  font-family:'Outfit',sans-serif;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:-.03em;
}
.vehicle-page-head p {
  margin:.24rem 0 0;
  color:rgba(222,229,239,.72);
  font-size:.95rem;
}
[data-theme="light"] .vehicle-title-icon { color:#475569;background:#fff;border-color:rgba(15,23,42,.1); }
[data-theme="light"] .vehicle-page-head h1 { color:#0f172a; }
[data-theme="light"] .vehicle-page-head p { color:#64748b; }
.vehicle-add-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 1.15rem;
  border-radius:10px;
  background:linear-gradient(180deg,#ff2c22,#d90d08);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  font-size:.92rem;
  box-shadow:0 10px 26px rgba(229,35,15,.24);
}
.vehicle-add-btn:hover { filter:brightness(1.05); transform:translateY(-1px); }
.vehicle-filter-panel {
  display:grid;
  grid-template-columns:minmax(280px,1.4fr) minmax(190px,.5fr) minmax(190px,.5fr) auto auto;
  gap:.75rem;
  align-items:center;
  padding:.8rem;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(18,28,42,.86),rgba(13,20,31,.88));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 30px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.035);
  margin-bottom:.75rem;
}
[data-theme="light"] .vehicle-filter-panel {
  background:#fff;
  border-color:rgba(15,23,42,.08);
  box-shadow:0 10px 30px rgba(15,23,42,.06);
}
.vehicle-search-wrap { position:relative; min-width:0; }
.vehicle-search {
  width:100%;
  height:46px;
  padding:0 2.7rem 0 1rem;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(5,10,18,.38);
  color:#fff;
  font:600 .94rem 'Inter',sans-serif;
  outline:0;
}
.vehicle-search::placeholder { color:rgba(226,232,240,.55); }
.vehicle-search:focus { border-color:rgba(229,35,15,.55); box-shadow:0 0 0 3px rgba(229,35,15,.13); }
.vehicle-search-icon {
  position:absolute;
  right:1rem;
  top:50%;
  transform:translateY(-50%);
  color:rgba(226,232,240,.75);
  font-size:1.45rem;
  line-height:1;
}
[data-theme="light"] .vehicle-search {
  background:#f8fafc;
  border-color:rgba(15,23,42,.12);
  color:#0f172a;
}
[data-theme="light"] .vehicle-search::placeholder { color:#94a3b8; }
[data-theme="light"] .vehicle-search-icon { color:#64748b; }
.vehicle-select-wrap {
  height:46px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:2px;
  padding:0 .82rem;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(5,10,18,.28);
}
.vehicle-select-wrap span {
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.04em;
  color:rgba(226,232,240,.62);
}
.vehicle-select-wrap select {
  appearance:none;
  border:0;
  outline:0;
  width:100%;
  background:transparent;
  color:#fff;
  font-weight:800;
  font-size:.86rem;
  padding:0;
}
.vehicle-select-wrap select option { color:#111827;background:#fff; }
[data-theme="light"] .vehicle-select-wrap { background:#f8fafc;border-color:rgba(15,23,42,.12); }
[data-theme="light"] .vehicle-select-wrap span { color:#64748b; }
[data-theme="light"] .vehicle-select-wrap select { color:#0f172a; }
.vehicle-filter-reset {
  height:46px;
  padding:0 .95rem;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(255,255,255,.045);
  color:rgba(244,242,240,.86);
  font-weight:800;
  cursor:pointer;
}
.vehicle-filter-reset:hover { border-color:rgba(229,35,15,.45); color:#fff; }
[data-theme="light"] .vehicle-filter-reset { background:#fff;border-color:rgba(15,23,42,.12);color:#334155; }
.vehicle-view-toggle {
  display:flex;
  gap:.38rem;
  justify-content:flex-end;
}
.vehicle-view-btn {
  width:46px;
  height:46px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  color:rgba(244,242,240,.8);
  font-weight:900;
  font-size:1.1rem;
  cursor:pointer;
}
.vehicle-view-btn.active {
  background:linear-gradient(180deg,rgba(229,35,15,.98),rgba(174,22,18,.98));
  border-color:rgba(229,35,15,.75);
  color:#fff;
  box-shadow:0 8px 22px rgba(229,35,15,.2);
}
[data-theme="light"] .vehicle-view-btn { background:#fff;border-color:rgba(15,23,42,.1);color:#475569; }
[data-theme="light"] .vehicle-view-btn.active { color:#fff; }
.vehicle-status-chips {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.55rem;
  margin:.55rem 0 .8rem;
}
.vehicle-status-chips .stat-chip {
  margin:0;
  min-height:30px;
}
.dot-slate { background:#94a3b8; }
.vehicle-status-chips .filter-chip.active-filter {
  border-color:rgba(229,35,15,.8)!important;
  background:rgba(229,35,15,.14)!important;
  color:#fff!important;
}
.vehicle-status-chips .filter-chip.active-filter strong { color:#fff!important; }
[data-theme="light"] .vehicle-status-chips .filter-chip.active-filter {
  color:#b91c1c!important;
  background:#fff1f1!important;
}
[data-theme="light"] .vehicle-status-chips .filter-chip.active-filter strong { color:#b91c1c!important; }

@media (max-width:980px) {
  .vehicle-filter-panel { grid-template-columns:1fr 1fr; }
  .vehicle-search-wrap { grid-column:1 / -1; }
  .vehicle-view-toggle { justify-content:flex-start; }
}
@media (max-width:680px) {
  .vehicle-page-head { align-items:flex-start; flex-direction:column; }
  .vehicle-page-head h1 { font-size:1.65rem; }
  .vehicle-filter-panel { grid-template-columns:1fr; padding:.7rem; }
  .vehicle-filter-reset,.vehicle-view-toggle { width:100%; }
  .vehicle-view-btn { flex:1; }
}

/* ============================================================
   alpha54: Öffentliche Fahrzeugübersicht Header an Backend angleichen
   ============================================================ */
.site-header{
  height:64px;
  min-height:64px;
  padding:0 2rem;
  background:var(--bg-2);
  border-bottom:1px solid var(--border);
  box-shadow:none;
}
.header-inner{
  max-width:1560px;
  min-height:64px;
  height:64px;
  align-items:center;
}
.site-logo{
  height:64px;
  gap:.8rem;
}
.site-logo-img{
  max-height:46px;
  max-width:170px;
  object-fit:contain;
}
.site-logo-divider{display:none;}
.logo-text{
  justify-content:center;
}
.logo-title{
  font-family:'Outfit',sans-serif;
  font-size:1rem;
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.02em;
  color:var(--text);
  text-transform:none;
}
.logo-sub{
  font-size:.74rem;
  line-height:1.2;
  margin-top:.1rem;
  color:var(--text-2);
  text-transform:none;
  letter-spacing:0;
}
.header-actions{
  gap:.75rem;
}
.theme-toggle{
  width:38px;
  height:38px;
  border:0;
  background:transparent;
  color:var(--text);
  border-radius:10px;
}
.theme-toggle:hover{background:var(--card-h);color:var(--text);}
.profile-btn{
  min-height:44px;
  padding:.25rem .45rem .25rem .25rem;
  border:0;
  background:transparent;
  border-radius:12px;
  color:var(--text);
}
.profile-btn:hover{background:var(--card-h);}
.profile-avatar{
  width:38px;
  height:38px;
  background:#eef2f7;
  color:#536173;
  box-shadow:none;
}
[data-theme="dark"] .profile-avatar{
  background:#2a3040;
  color:#e7eaf1;
}
.profile-name{
  max-width:160px;
  font-size:.9rem;
  color:var(--text);
}
.profile-chevron{color:var(--text-2);}
.btn-login-header{
  min-height:38px;
  border-radius:10px;
  padding:0 1rem;
  background:linear-gradient(180deg,#ee1515,#cf0000);
  box-shadow:0 12px 24px rgba(217,0,0,.20);
}
.vehicle-overview-page{
  padding-top:1.35rem;
}

@media (max-width:768px){
  .site-header{height:58px;min-height:58px;padding:0 1rem;}
  .header-inner{height:58px;min-height:58px;}
  .site-logo{height:58px;}
  .site-logo-img{max-height:38px;max-width:130px;}
  .logo-title{font-size:.95rem;}
  .logo-sub{font-size:.68rem;}
  .profile-name,.profile-chevron{display:none;}
  .theme-toggle{width:36px;height:36px;}
}


/* ============================================================
   alpha55: Fahrzeugübersicht Header, Profil und mobile Kacheln
   ============================================================ */
/* Öffentliche Fahrzeugübersicht: Header ruhiger, nur Logo links. */
.site-header .logo-text,
.site-header .site-logo-divider{
  display:none !important;
}
.site-header .site-logo{
  min-width:0;
  flex:0 0 auto;
}
.site-header .site-logo-img{
  max-height:50px;
  max-width:210px;
}
.vehicle-page-head{
  min-height:auto;
  margin-bottom:1rem;
}
.vehicle-page-head .vehicle-title-icon{
  display:none;
}
.vehicle-page-head h1{
  font-size:1.85rem;
}
.vehicle-page-head p{
  font-size:.92rem;
}
.vehicle-add-btn{
  display:none !important;
}

/* Profilbutton sachlicher, ohne verspielte Icons. */
.profile-btn{
  min-height:44px;
  padding:.25rem .5rem .25rem .25rem !important;
  border:1px solid rgba(255,255,255,.08) !important;
  background:rgba(255,255,255,.035) !important;
  gap:.55rem;
}
.profile-btn:hover{
  background:rgba(255,255,255,.07) !important;
  border-color:rgba(255,255,255,.14) !important;
}
[data-theme="light"] .profile-btn{
  background:#fff !important;
  border-color:rgba(15,23,42,.10) !important;
}
[data-theme="light"] .profile-btn:hover{
  background:#f8fafc !important;
  border-color:rgba(15,23,42,.16) !important;
}
.profile-avatar{
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.02em;
}
.profile-chevron{
  font-size:.72rem;
  opacity:.65;
}
.profile-dropdown{
  border-radius:14px;
  overflow:hidden;
}
.profile-dropdown-header{
  padding:.85rem 1rem .75rem;
}
.pd-item{
  gap:0;
  font-weight:750;
}
.pd-item::before{
  content:none !important;
}

/* Smartphone: Kennzeichen bleibt rechts oben wie auf Desktop. */
@media (max-width:460px){
  .vcard-info-top{
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:start !important;
    gap:.45rem !important;
  }
  .vcard-info-top .plate-unified,
  .vcard-info-top .dashboard-plate-mini,
  .vcard-info-top .dashboard-plate-mini.plate-unified{
    margin-top:-1px !important;
    justify-self:end !important;
    width:102px !important;
    min-width:102px !important;
    height:21px !important;
    flex-basis:102px !important;
  }
  .vcard-info-top .plate-unified-svg,
  .vcard-info-top .dashboard-license-svg,
  .vcard-info-top .dashboard-license-svg.plate-unified-svg{
    width:102px !important;
    height:21px !important;
    max-width:102px !important;
  }
  .vcard-name{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

@media (max-width:768px){
  .site-header .site-logo-img{
    max-height:42px;
    max-width:165px;
  }
  .vehicle-page-head h1{font-size:1.55rem;}
  .vehicle-page-head p{font-size:.86rem;}
  .profile-btn{padding:.25rem !important;}
}

/* ============================================================
   alpha56: Fahrzeugübersicht Feinschliff, kompakte Filter, mobil
   ============================================================ */
.vehicle-overview-page {
  padding-top: 1rem;
}
.vehicle-page-head {
  margin-bottom: .7rem !important;
  padding: 0 .15rem;
}
.vehicle-page-head h1 {
  line-height: 1.05;
  margin: 0 !important;
}
.vehicle-page-head p {
  display: none !important;
}
.vehicle-filter-panel.vehicle-filter-panel--compact {
  grid-template-columns: minmax(280px, 1fr) auto auto auto;
  gap: .65rem;
  align-items: center;
  margin-bottom: .7rem;
  padding: .72rem;
}
.vehicle-search {
  height: 42px;
  border-radius: 11px;
  font-size: .9rem;
}
.vehicle-search-icon {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
}
.vehicle-search-icon svg {
  width: 18px;
  height: 18px;
}
.vehicle-more-filter,
.vehicle-filter-reset,
.vehicle-view-btn {
  height: 42px;
}
.vehicle-more-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .48rem;
  padding: 0 .95rem;
  border-radius: 11px;
  border: 1px solid rgba(255,255,255,.11);
  background: rgba(255,255,255,.045);
  color: rgba(244,242,240,.88);
  font-weight: 850;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color .16s, background .16s, color .16s;
}
.vehicle-more-filter svg {
  width: 18px;
  height: 18px;
}
.vehicle-more-filter:hover,
.vehicle-more-filter.active {
  border-color: rgba(229,35,15,.48);
  background: rgba(229,35,15,.10);
  color: #fff;
}
[data-theme="light"] .vehicle-more-filter {
  background: #fff;
  border-color: rgba(15,23,42,.12);
  color: #334155;
}
[data-theme="light"] .vehicle-more-filter:hover,
[data-theme="light"] .vehicle-more-filter.active {
  border-color: rgba(229,35,15,.28);
  background: #fff1f1;
  color: #b91c1c;
}
.vehicle-filter-reset[hidden] {
  display: none !important;
}
.vehicle-filter-reset {
  border-color: rgba(229,35,15,.28);
  color: rgba(244,242,240,.88);
}
.vehicle-view-toggle {
  gap: .42rem;
}
.vehicle-view-btn {
  width: 42px;
  font-size: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.vehicle-view-btn svg {
  width: 18px;
  height: 18px;
}
.vehicle-advanced-filters {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(220px, 320px);
  gap: .65rem;
  padding-top: .2rem;
}
.vehicle-advanced-filters[hidden] {
  display: none !important;
}
.vehicle-filter-panel .vehicle-select-wrap {
  height: 42px;
}
.vehicle-status-chips {
  margin: .45rem 0 .72rem;
  gap: .5rem;
}
.vehicle-status-chips .stat-chip {
  min-height: 28px;
  padding: .28rem .78rem;
}
.vehicle-grid {
  gap: .72rem;
}
.vcard {
  border-width: 1px;
  background: linear-gradient(180deg, rgba(20,29,42,.96), rgba(14,21,32,.96));
  box-shadow: 0 14px 34px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.025);
}
[data-theme="light"] .vcard {
  background: #fff;
  box-shadow: 0 12px 30px rgba(15,23,42,.06);
}
.vcard:hover {
  border-color: rgba(255,255,255,.20);
  background: linear-gradient(180deg, rgba(24,35,50,.98), rgba(16,25,38,.98));
}
[data-theme="light"] .vcard:hover {
  background: #fff;
  border-color: rgba(15,23,42,.18);
}
.vcard-img {
  background: rgba(255,255,255,.045);
}
.vcard-statusbar {
  min-height: 30px;
}

@media (max-width: 980px) {
  .vehicle-filter-panel.vehicle-filter-panel--compact {
    grid-template-columns: minmax(0, 1fr) auto auto;
  }
  .vehicle-more-filter span {
    display: none;
  }
  .vehicle-more-filter {
    width: 42px;
    padding: 0;
  }
}
@media (max-width: 680px) {
  .vehicle-overview-page {
    padding: .72rem .72rem 1rem;
  }
  .vehicle-page-head {
    margin-bottom: .52rem !important;
  }
  .vehicle-page-head h1 {
    font-size: 1.42rem !important;
  }
  .vehicle-filter-panel.vehicle-filter-panel--compact {
    grid-template-columns: minmax(0, 1fr) auto auto;
    padding: .55rem;
    gap: .45rem;
    border-radius: 13px;
    margin-bottom: .55rem;
  }
  .vehicle-search {
    height: 38px;
    font-size: .84rem;
    padding-left: .78rem;
    padding-right: 2.25rem;
  }
  .vehicle-more-filter,
  .vehicle-filter-reset,
  .vehicle-view-btn {
    height: 38px;
  }
  .vehicle-view-btn,
  .vehicle-more-filter {
    width: 38px;
  }
  .vehicle-filter-reset {
    grid-column: 1 / -1;
    width: 100%;
  }
  .vehicle-advanced-filters {
    grid-template-columns: 1fr;
  }
  .vehicle-status-chips {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: .15rem;
    margin: .35rem 0 .55rem;
    scrollbar-width: none;
  }
  .vehicle-status-chips::-webkit-scrollbar { display:none; }
  .vehicle-status-chips .stat-chip {
    flex: 0 0 auto;
    min-height: 27px;
    padding: .24rem .68rem;
    font-size: .76rem;
  }
  .vehicle-grid {
    gap: .58rem;
  }
  .vcard-head {
    min-height: 64px;
  }
  .vcard-img {
    width: 56px;
    min-width: 56px;
  }
  .vcard-info {
    padding: .38rem .52rem;
  }
  .vcard-statusbar {
    min-height: 28px;
    padding: .32rem .55rem .32rem .68rem;
  }
}

/* Reservierungsdialog v3 */
.modal--reserve-v3 {
  max-width: 720px;
  background: linear-gradient(145deg, rgba(14,29,47,.98), rgba(6,17,30,.98));
  border-color: rgba(148,163,184,.22);
  overflow: hidden;
}
.modal--reserve-v3 .modal-body {
  max-height: calc(90vh - 76px);
  overflow-y: auto;
}
.reserve-v3-header {
  background: transparent;
  border-bottom: 1px solid rgba(148,163,184,.16);
}
.reserve-v3-title-wrap { display:flex; align-items:center; gap:.85rem; }
.reserve-v3-title-icon {
  width:42px;height:42px;border-radius:999px;display:flex;align-items:center;justify-content:center;
  background: linear-gradient(135deg,#0b74ff,#0054df); color:#fff; box-shadow:0 10px 24px rgba(0,95,255,.32);
}
.reserve-v3-body { display:flex; flex-direction:column; gap:.85rem; }
.reserve-card {
  background: linear-gradient(145deg, rgba(20,38,59,.86), rgba(10,25,42,.86));
  border:1px solid rgba(148,163,184,.18);
  border-radius:16px;
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}
.reserve-vehicle-card { display:flex; align-items:center; gap:1.1rem; padding:1rem; }
.reserve-vehicle-photo-wrap { width:178px; height:104px; border-radius:12px; overflow:hidden; flex:0 0 auto; background:rgba(0,0,0,.25); }
.reserve-vehicle-photo { width:100%; height:100%; object-fit:cover; display:block; }
.reserve-vehicle-icon-wrap { width:74px; height:74px; border-radius:16px; align-items:center; justify-content:center; background:rgba(0,95,255,.14); border:1px solid rgba(0,117,255,.25); flex:0 0 auto; }
.reserve-vehicle-name { font-family:'Outfit',sans-serif; font-weight:800; font-size:1.55rem; line-height:1.1; color:var(--text); }
.reserve-vehicle-plate { margin-top:.45rem; display:flex; align-items:center; min-height:30px; }
.reserve-vehicle-type { margin-top:.35rem; color:var(--text-3); font-size:.9rem; }
.reserve-form-section { padding:1rem; }
.reserve-section-title { display:flex; align-items:center; gap:.55rem; color:var(--text); margin-bottom:.8rem; font-size:1rem; }
.reserve-section-title span { color:#0b74ff; }
.reserve-search-results {
  position:absolute; top:100%; left:0; right:0; z-index:200;
  background:var(--bg-2); border:1px solid var(--border-h); border-radius:10px;
  box-shadow:0 12px 30px rgba(0,0,0,.42); overflow:hidden; margin-top:5px;
}
.reserve-search-item { padding:.72rem .9rem; cursor:pointer; font-size:.9rem; border-bottom:1px solid var(--border); transition:background .15s; }
.reserve-search-item:hover { background:var(--surface); }
.reserve-search-empty { padding:.8rem 1rem; color:var(--text-3); font-size:.88rem; }
.reserve-selected-driver {
  align-items:center; gap:.75rem; margin-top:.7rem; padding:.65rem .75rem;
  background:rgba(2,9,18,.36); border:1px solid rgba(148,163,184,.18); border-radius:12px;
}
.reserve-driver-avatar {
  width:34px; height:34px; border-radius:999px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#0b74ff,#0054df); color:#fff; font-weight:800; font-size:.78rem;
}
.reserve-selected-driver button { margin-left:auto; background:none; border:0; color:var(--text-3); cursor:pointer; font-size:1rem; padding:.25rem; }
.reserve-period-grid { display:grid; grid-template-columns:1fr auto 1fr; gap:1rem; align-items:center; }
.reserve-period-heading { font-weight:800; color:var(--text); margin-bottom:.55rem; }
.reserve-period-block { display:grid; gap:.62rem; }
.reserve-period-separator { color:var(--text-3); font-size:1.55rem; padding-top:1.8rem; }
.reserve-char-count { margin-top:-1.45rem; padding:0 .75rem .55rem 0; text-align:right; color:var(--text-3); font-size:.78rem; pointer-events:none; }
#res-reason { min-height:98px; padding-bottom:1.9rem; }
.reserve-series-toggle-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.reserve-series-toggle-row .reserve-section-title { margin-bottom:0; }
.reserve-switch { position:relative; display:inline-flex; width:52px; height:30px; cursor:pointer; flex:0 0 auto; }
.reserve-switch input { opacity:0; width:0; height:0; }
.reserve-switch span { position:absolute; inset:0; border-radius:999px; background:rgba(148,163,184,.38); transition:.2s; }
.reserve-switch span:before { content:""; position:absolute; width:24px; height:24px; left:3px; top:3px; border-radius:999px; background:#fff; transition:.2s; box-shadow:0 2px 8px rgba(0,0,0,.35); }
.reserve-switch input:checked + span { background:#0b74ff; }
.reserve-switch input:checked + span:before { transform:translateX(22px); }
.reserve-segmented { display:grid; grid-template-columns:repeat(4,1fr); padding:4px; background:rgba(148,163,184,.12); border:1px solid rgba(148,163,184,.14); border-radius:12px; gap:4px; }
.reserve-segmented button { border:0; background:transparent; color:var(--text); padding:.62rem .55rem; border-radius:9px; cursor:pointer; font-family:'Inter',sans-serif; font-weight:600; }
.reserve-segmented button.active { background:#0b74ff; color:#fff; box-shadow:0 8px 18px rgba(0,95,255,.28); }
.reserve-series-inline { margin-top:.85rem; }
.reserve-series-inline > label { display:block; margin-bottom:.45rem; }
.reserve-interval-line { display:flex; align-items:center; gap:.8rem; color:var(--text); }
.reserve-interval-line input { width:112px; text-align:center; }
.reserve-actions { display:grid; grid-template-columns:1fr 1.25fr; gap:.75rem; margin-top:.25rem; }
.reserve-btn { min-height:54px; border-radius:12px; border:1px solid rgba(148,163,184,.18); cursor:pointer; font-family:'Inter',sans-serif; font-size:1rem; font-weight:800; transition:var(--trans); }
.reserve-btn-secondary { background:rgba(148,163,184,.12); color:var(--text); }
.reserve-btn-secondary:hover { background:rgba(148,163,184,.2); }
.reserve-btn-primary { background:linear-gradient(135deg,#0b74ff,#0054df); color:#fff; box-shadow:0 12px 28px rgba(0,95,255,.32); }
.reserve-btn-primary:hover { transform:translateY(-1px); box-shadow:0 16px 34px rgba(0,95,255,.4); }
.reserve-btn:disabled { opacity:.65; cursor:not-allowed; transform:none; }

@media (max-width: 640px) {
  .modal--reserve-v3 { max-width:100%; border-radius:22px 22px 0 0; }
  .modal--reserve-v3 .modal-body { max-height:calc(92vh - 74px); padding:1rem; }
  .reserve-vehicle-card { gap:.75rem; padding:.75rem; }
  .reserve-vehicle-photo-wrap { width:124px; height:82px; }
  .reserve-vehicle-name { font-size:1.35rem; }
  .reserve-period-grid { grid-template-columns:1fr; gap:.55rem; }
  .reserve-period-separator { padding:0; text-align:center; font-size:1.3rem; line-height:1; }
  .reserve-segmented { grid-template-columns:repeat(2,1fr); }
  .reserve-actions { position:sticky; bottom:-1rem; margin-left:-1rem; margin-right:-1rem; padding:.8rem 1rem 1rem; background:linear-gradient(180deg, rgba(6,17,30,0), rgba(6,17,30,.96) 28%, rgba(6,17,30,1)); grid-template-columns:1fr; }
  .reserve-btn-primary { order:-1; }
}
/* Serienreservierung: Schalter klappt den Bereich weich auf */
.reserve-series-options {
  display:block;
  max-height:0;
  opacity:0;
  overflow:hidden;
  margin-top:0;
  transition:max-height .24s ease, opacity .2s ease, margin-top .2s ease;
}
.reserve-series-options.active {
  max-height:900px;
  opacity:1;
  margin-top:1rem;
}
.reserve-series-toggle-row { cursor:pointer; user-select:none; }


/* ============================================================
   v2.1.3 Reservierungsfenster Feinschliff
   ============================================================ */
.modal--reserve-v3 {
  background:var(--bg-2) !important;
  border-color:var(--border) !important;
}
.reserve-v3-header {
  background:var(--bg-2) !important;
}
.reserve-card {
  background:linear-gradient(180deg, rgba(22,34,49,.92), rgba(15,23,35,.94)) !important;
  border-color:rgba(255,255,255,.09) !important;
}
[data-theme="light"] .modal--reserve-v3,
[data-theme="light"] .reserve-v3-header,
[data-theme="light"] .reserve-card {
  background:#fff !important;
  border-color:rgba(15,23,42,.10) !important;
}
.reserve-vehicle-card--tile {
  display:grid;
  grid-template-columns:178px minmax(0,1fr);
  align-items:center;
  min-height:126px;
  padding:1rem;
}
.reserve-vehicle-card--tile .reserve-vehicle-icon-wrap {
  width:104px;
  height:104px;
}
.reserve-vehicle-main {
  min-width:0;
  width:100%;
}
.reserve-vehicle-topline {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:.75rem;
  width:100%;
}
.reserve-vehicle-topline .reserve-vehicle-name {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  margin-top:.1rem;
}
.reserve-vehicle-topline .reserve-vehicle-plate {
  margin-top:0;
  justify-content:flex-end;
  min-width:116px;
}
.reserve-vehicle-topline .plate-unified,
.reserve-vehicle-topline .dashboard-plate-mini,
.reserve-vehicle-topline .dashboard-plate-mini.plate-unified {
  width:116px!important;
  min-width:116px!important;
  height:23px!important;
  flex:0 0 116px!important;
}
.reserve-vehicle-topline .plate-unified-svg,
.reserve-vehicle-topline .dashboard-license-svg,
.reserve-vehicle-topline .dashboard-license-svg.plate-unified-svg {
  width:116px!important;
  height:23px!important;
  max-width:116px!important;
}
.reserve-vehicle-chips {
  display:flex;
  flex-wrap:wrap;
  gap:.34rem;
  margin-top:.55rem;
}
.reserve-vehicle-chip {
  display:inline-flex;
  align-items:center;
  max-width:160px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.68rem;
  line-height:1;
  padding:.28rem .52rem;
  border-radius:7px;
  color:rgba(244,242,240,.84);
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.08);
}
.reserve-vehicle-chip--0 {
  color:#dbeafe;
  background:rgba(14,116,255,.28);
  border-color:rgba(96,165,250,.28);
}
.reserve-vehicle-chip--1 {
  color:#dcfce7;
  background:rgba(34,197,94,.22);
  border-color:rgba(74,222,128,.22);
}
.reserve-vehicle-chip--2 {
  color:#ede9fe;
  background:rgba(124,58,237,.24);
  border-color:rgba(167,139,250,.24);
}
[data-theme="light"] .reserve-vehicle-chip {
  color:#475569;
  background:#f1f5f9;
  border-color:rgba(15,23,42,.08);
}
[data-theme="light"] .reserve-vehicle-chip--0 { color:#1d4ed8;background:#dbeafe; }
[data-theme="light"] .reserve-vehicle-chip--1 { color:#166534;background:#dcfce7; }
[data-theme="light"] .reserve-vehicle-chip--2 { color:#5b21b6;background:#ede9fe; }
.reserve-period-separator {
  padding-top:3rem !important;
  line-height:1;
}
.reserve-reason-section #res-reason {
  min-height:48px !important;
  height:48px;
  padding-bottom:.75rem !important;
  resize:none;
}
.reserve-char-count { display:none !important; }
.reserve-series-end {
  margin-top:.95rem;
}
.reserve-series-end > label {
  display:block;
  margin-bottom:.45rem;
  color:var(--text);
  font-weight:700;
}
.reserve-series-end-line {
  display:grid;
  grid-template-columns:auto 112px minmax(0,1fr);
  align-items:center;
  gap:.75rem;
  margin-top:.55rem;
  color:var(--text);
}
.reserve-radio-line {
  display:flex;
  align-items:center;
  gap:.5rem;
  margin:0;
  color:var(--text);
  font-weight:500;
  white-space:nowrap;
}
.reserve-radio-line input {
  accent-color:#0b74ff;
}
.reserve-series-end-line input[type="date"] {
  width:min(220px,100%);
}
.reserve-period-block,
.reserve-period-block .form-group,
.reserve-period-block .form-control,
.reserve-form-section .form-control,
.reserve-series-options .form-control {
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
@media (max-width: 640px) {
  .reserve-vehicle-card--tile {
    grid-template-columns:112px minmax(0,1fr);
    gap:.75rem;
    padding:.75rem;
    min-height:108px;
  }
  .reserve-vehicle-card--tile .reserve-vehicle-photo-wrap {
    width:112px;
    height:76px;
  }
  .reserve-vehicle-card--tile .reserve-vehicle-icon-wrap {
    width:76px;
    height:76px;
  }
  .reserve-vehicle-topline {
    grid-template-columns:minmax(0,1fr);
    gap:.35rem;
  }
  .reserve-vehicle-topline .reserve-vehicle-plate {
    justify-content:flex-start;
    min-width:0;
  }
  .reserve-vehicle-chip {
    max-width:100px;
    font-size:.62rem;
    padding:.22rem .42rem;
  }
  .reserve-period-grid {
    grid-template-columns:minmax(0,1fr) !important;
    width:100%;
    overflow:hidden;
  }
  .reserve-period-separator {
    padding:0 !important;
    text-align:center;
    transform:rotate(90deg);
  }
  .reserve-period-block {
    width:100%;
    overflow:hidden;
  }
  .reserve-period-block .form-control {
    width:100%;
  }
  .reserve-series-end-line {
    grid-template-columns:auto minmax(72px,112px) minmax(0,1fr);
    gap:.55rem;
  }
  .reserve-series-end-line input[type="date"] {
    width:100%;
  }
}

/* ============================================================
   v2.1.6 Reservierungsfenster: Kennzeichen nur Desktop, Mobil-Rollback
   ============================================================ */
/* Wichtig: Diese Regeln sind bewusst komplett auf das Reservierungsmodal begrenzt.
   Die Fahrzeugkacheln in der Smartphone-Uebersicht werden dadurch nicht mehr vergroessert. */
.modal--reserve-v3,
.modal--reserve-v3 .reserve-v3-header,
.modal--reserve-v3 .reserve-vehicle-card--tile {
  background:var(--bg-2) !important;
}

@media (min-width: 641px) {
  .modal--reserve-v3 .reserve-vehicle-topline .reserve-vehicle-plate {
    min-width:156px!important;
  }
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini.plate-unified,
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified.plate-compact,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini.plate-unified.plate-compact {
    width:156px!important;
    min-width:156px!important;
    height:31px!important;
    flex:0 0 156px!important;
    transform:none!important;
  }
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-license-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-license-svg.plate-unified-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified.plate-compact .plate-unified-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini.plate-unified.plate-compact .dashboard-license-svg,
  .modal--reserve-v3 .reserve-vehicle-topline svg {
    width:156px!important;
    height:31px!important;
    max-width:156px!important;
  }
  .modal--reserve-v3 .reserve-period-separator {
    transform:none!important;
    writing-mode:horizontal-tb!important;
    text-align:center;
  }
}

@media (max-width: 640px) {
  /* Reservierungsmodal mobil wieder auf den kompakten Stand vor v2.1.4/v2.1.5 setzen. */
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini.plate-unified,
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified.plate-compact,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini.plate-unified.plate-compact {
    width:116px!important;
    min-width:116px!important;
    height:23px!important;
    flex:0 0 116px!important;
  }
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-license-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-license-svg.plate-unified-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .plate-unified.plate-compact .plate-unified-svg,
  .modal--reserve-v3 .reserve-vehicle-topline .dashboard-plate-mini.plate-unified.plate-compact .dashboard-license-svg,
  .modal--reserve-v3 .reserve-vehicle-topline svg {
    width:116px!important;
    height:23px!important;
    max-width:116px!important;
  }
  .modal--reserve-v3 .reserve-period-grid,
  .modal--reserve-v3 .reserve-period-block,
  .modal--reserve-v3 .reserve-period-block .form-group,
  .modal--reserve-v3 .reserve-period-block .form-control {
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
}

/* v2.1.7 Einheitliche Fahrzeugköpfe und Bubbles */
.vehicle-chip-row--unified {
  display:flex;
  flex-wrap:wrap;
  gap:.34rem;
  margin-top:.5rem;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip {
  font-size:.68rem;
  padding:.28rem .52rem;
  border-radius:7px;
  max-width:160px;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--2 {
  max-width:190px;
}
.modal--vehicle-detail-v3 .modal-header--vehicle-card {
  align-items:flex-start;
  gap:.75rem;
  padding:1rem;
}
.modal--vehicle-detail-v3 .detail-vehicle-card {
  flex:1 1 auto;
  margin:0;
  min-width:0;
}
.modal--vehicle-detail-v3 .modal-close {
  flex:0 0 auto;
  margin-top:.15rem;
}
.modal--vehicle-detail-v3 .reserve-vehicle-chips {
  margin-top:.55rem;
}

@media (max-width: 640px) {
  .vcard .vehicle-chip-row--unified .reserve-vehicle-chip {
    font-size:.6rem;
    padding:.18rem .38rem;
    border-radius:6px;
    max-width:135px;
  }
  .modal--vehicle-detail-v3 .modal-header--vehicle-card {
    padding:.75rem;
    gap:.5rem;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card {
    grid-template-columns:82px minmax(0,1fr);
    min-height:82px;
    padding:.65rem;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-photo-wrap,
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-icon-wrap {
    width:82px;
    height:62px;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-name {
    font-size:1.05rem;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-chip {
    font-size:.6rem;
    padding:.18rem .38rem;
  }
}

/* ===== v2.1.8 Fahrzeugdetails Dashboard ===== */
.modal--vehicle-detail-v3 {
  max-width: 980px !important;
  width: min(980px, calc(100vw - 24px)) !important;
}
.modal--vehicle-detail-v3 .modal-header--vehicle-card,
.modal--vehicle-detail-v3 .modal-body,
.reserve-vehicle-card--tile,
.detail-panel-v4,
.detail-status-card {
  background: var(--bg-2) !important;
}
.modal-header--vehicle-card {
  align-items: flex-start !important;
  gap: .8rem !important;
}
.detail-vehicle-card {
  flex: 1;
  min-width: 0;
  padding: .75rem !important;
}
.detail-vehicle-card .reserve-vehicle-topline,
.reserve-vehicle-card .reserve-vehicle-topline {
  align-items: flex-start;
}
.detail-vehicle-card .reserve-vehicle-plate,
.reserve-vehicle-card .reserve-vehicle-plate {
  margin-left: auto;
  flex-shrink: 0;
}
.vehicle-detail-body-v4 {
  display: flex;
  flex-direction: column;
  gap: .9rem;
}
.detail-status-grid-v4 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
}
.detail-status-card,
.detail-panel-v4 {
  border: 1px solid var(--border-h);
  border-radius: 14px;
  padding: 1rem;
  box-shadow: 0 10px 30px rgba(0,0,0,.16);
}
.detail-status-card--current { border-color: rgba(16,214,122,.55); }
.detail-status-card--next { border-color: rgba(255,188,61,.65); }
.detail-status-card--free { border-color: rgba(16,214,122,.42); }
.detail-card-title,
.detail-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  margin-bottom: .7rem;
  font-family: 'Outfit', sans-serif;
  font-size: 1rem;
}
.detail-dot {
  width: .72rem;
  height: .72rem;
  border-radius: 99px;
  display: inline-block;
  flex-shrink: 0;
}
.detail-dot--green { background: var(--green); }
.detail-dot--orange { background: #ffbc3d; }
.detail-card-title strong { margin-right: auto; }
.detail-card-main {
  display: flex;
  align-items: center;
  gap: .85rem;
  margin: .45rem 0 .8rem;
}
.detail-card-main > div {
  display: flex;
  flex-direction: column;
  gap: .12rem;
  min-width: 0;
}
.detail-card-icon {
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(16,214,122,.14);
  font-size: 1.45rem;
  flex-shrink: 0;
}
.detail-status-card--next .detail-card-icon { background: rgba(255,188,61,.16); }
.detail-card-main strong {
  font-size: 1.28rem;
  color: var(--green) !important;
  line-height: 1.2;
}
.detail-status-card--next .detail-card-main strong { color: #ffbc3d !important; }
.detail-muted {
  color: var(--text-muted) !important;
  font-size: .82rem;
}
.detail-card-foot {
  border-top: 1px solid var(--border);
  padding-top: .65rem;
  display: flex;
  justify-content: space-between;
  gap: .7rem;
  color: var(--text-muted);
  font-size: .88rem;
}
.detail-timeline-scale {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  color: var(--text-muted);
  font-size: .75rem;
  margin-bottom: .35rem;
}
.detail-timeline-scale span:not(:first-child) { text-align: center; }
.detail-timeline-scale span:last-child { text-align: right; }
.detail-timeline {
  position: relative;
  height: 28px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(255,255,255,.06);
  border: 1px solid var(--border);
}
.detail-segment {
  position: absolute;
  top: 0;
  bottom: 0;
}
.detail-segment--free { background: linear-gradient(90deg, rgba(16,214,122,.75), rgba(95,226,120,.85)); }
.detail-segment--busy { background: linear-gradient(90deg, rgba(229,35,15,.78), rgba(255,94,94,.85)); }
.detail-timeline-legend {
  display: flex;
  gap: 1.2rem;
  margin-top: .8rem;
  color: var(--text-muted);
  font-size: .86rem;
}
.detail-timeline-legend span { display:flex;align-items:center;gap:.35rem; }
.detail-timeline-legend i { width:.85rem;height:.85rem;border-radius:3px;display:inline-block; }
.legend-free { background: var(--green); }
.legend-busy { background: #ff5e5e; }
.detail-quick-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
}
.detail-quick-grid button {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.7rem;
  border:1px solid rgba(16,214,122,.55);
  background: rgba(16,214,122,.08);
  color: #78ff93;
  border-radius: 12px;
  padding: .75rem 1rem;
  font: 700 .95rem 'Outfit', sans-serif;
  cursor:pointer;
}
.detail-quick-grid strong { font-size:1.25rem;color:#78ff93!important; }
.detail-new-res-btn {
  width: 100%;
  justify-content: center;
  font-size: 1rem;
  padding: .9rem 1rem !important;
}
.detail-link-btn {
  background: transparent;
  border: 0;
  color: #5ea1ff;
  cursor: pointer;
  font: 700 .86rem 'Inter', sans-serif;
}
.detail-history-list { display:flex;flex-direction:column; }
.detail-history-row {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1.2fr 1.2fr;
  gap: .75rem;
  padding: .55rem 0;
  border-top: 1px solid var(--border);
  font-size: .86rem;
  color: var(--text-muted);
}
.detail-history-row strong { color: var(--text) !important; }
.detail-history-empty { color: var(--text-muted);font-size:.88rem;padding:.45rem 0; }
.detail-login-note {
  display:flex;
  flex-direction:column;
  gap:.65rem;
  padding:1rem;
  border:1px solid var(--border-h);
  border-radius:14px;
  background: var(--bg-2);
  color: var(--text-muted);
}
.detail-login-note strong { color: var(--text) !important; }
.detail-login-note .btn-primary { display:flex;justify-content:center;text-decoration:none;margin-top:.3rem; }

/* Kennzeichen als „1 mit Sternchen“ und einheitlich schärfer */
.dashboard-plate-mini.plate-unified {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.22));
}
.dashboard-license-svg.plate-unified-svg {
  width: 156px;
  height: 31px;
  display: block;
  shape-rendering: geometricPrecision;
}
.reserve-vehicle-plate .dashboard-license-svg.plate-unified-svg,
#dm-plate-chip .dashboard-license-svg.plate-unified-svg,
#modal-vplate .dashboard-license-svg.plate-unified-svg {
  width: 156px;
  height: 31px;
}
.vcard .dashboard-license-svg.plate-unified-svg {
  width: 112px;
  height: auto;
}

@media (max-width: 760px) {
  .modal--vehicle-detail-v3 { width: calc(100vw - 10px) !important; max-height: calc(100vh - 10px) !important; }
  .modal--vehicle-detail-v3 .modal-header--vehicle-card { padding: .85rem !important; }
  .vehicle-detail-body-v4 { gap: .75rem; }
  .detail-status-grid-v4 { grid-template-columns: 1fr; gap: .65rem; }
  .detail-status-card, .detail-panel-v4 { padding: .8rem; border-radius: 12px; }
  .detail-card-main strong { font-size: 1.08rem; }
  .detail-card-icon { width:2.6rem;height:2.6rem;font-size:1.15rem; }
  .detail-quick-grid { grid-template-columns: 1fr; }
  .detail-history-row { grid-template-columns: 1fr; gap:.18rem; }
  .detail-timeline-scale { font-size:.65rem; }
  .detail-vehicle-card .reserve-vehicle-photo-wrap,
  .reserve-vehicle-card .reserve-vehicle-photo-wrap { width: 96px !important; height: 70px !important; }
  .detail-vehicle-card .reserve-vehicle-name,
  .reserve-vehicle-card .reserve-vehicle-name { font-size: 1.05rem !important; }
  #dm-plate-chip .dashboard-license-svg.plate-unified-svg,
  #modal-vplate .dashboard-license-svg.plate-unified-svg,
  .reserve-vehicle-plate .dashboard-license-svg.plate-unified-svg { width: 112px; height: auto; }
}

/* ============================================================
   v2.1.9 Detailfenster Feinschliff: mobil, Lightmode, Statusfarben
   ============================================================ */
/* Reservierte Fahrzeuge in der Übersicht klar rot darstellen */
.vcard.card--busy {
  border-color: rgba(229,35,15,.62) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.18), inset 3px 0 0 rgba(229,35,15,.36) !important;
}
.vcard.card--busy::before { background: var(--red) !important; }
.vcard.card--busy .vcard-statusbar {
  background: rgba(229,35,15,.10) !important;
}
.vcard.card--busy .vcard-dot { background: var(--red) !important; }
.vcard.card--busy .vcard-status-text,
.vcard.card--busy .vcard-status-text--busy,
.vcard.card--busy .vcard-countdown {
  color: #ff5e5e !important;
}
[data-theme="light"] .vcard.card--busy {
  border-color: rgba(229,35,15,.58) !important;
  box-shadow: 0 8px 26px rgba(15,23,42,.06), inset 3px 0 0 rgba(229,35,15,.34) !important;
}
[data-theme="light"] .vcard.card--busy .vcard-statusbar {
  background: rgba(229,35,15,.075) !important;
}

/* Detailfenster: gleiche Lesbarkeit in Hell und Dunkel */
.modal--vehicle-detail-v3 .detail-card-title,
.modal--vehicle-detail-v3 .detail-card-title strong,
.modal--vehicle-detail-v3 .detail-panel-head,
.modal--vehicle-detail-v3 .detail-panel-head strong {
  color: var(--text) !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-card-title,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-card-title strong,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-panel-head,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-panel-head strong {
  color: #111827 !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-muted,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-card-foot,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-history-row,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-timeline-scale,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-timeline-legend {
  color: #5b6472 !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-panel-v4,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-status-card,
[data-theme="light"] .modal--vehicle-detail-v3 .modal-header--vehicle-card,
[data-theme="light"] .modal--vehicle-detail-v3 .modal-body,
[data-theme="light"] .modal--vehicle-detail-v3 .reserve-vehicle-card--tile {
  background: #fff !important;
}

/* Höhe reduzieren, damit die Aktionsbuttons schneller sichtbar sind */
.modal--vehicle-detail-v3 {
  max-width: 980px !important;
  max-height: calc(100vh - 36px) !important;
}
.modal--vehicle-detail-v3 .modal-header--vehicle-card {
  padding: .8rem 1rem !important;
}
.modal--vehicle-detail-v3 .modal-body {
  padding: .85rem 1rem 1rem !important;
  overflow-y: auto;
}
.vehicle-detail-body-v4 { gap: .72rem !important; }
.detail-status-grid-v4 { gap: .7rem !important; }
.detail-status-card,
.detail-panel-v4 {
  padding: .82rem !important;
  border-radius: 13px !important;
}
.detail-card-title,
.detail-panel-head { margin-bottom: .45rem !important; }
.detail-card-main {
  gap: .65rem !important;
  margin: .25rem 0 .55rem !important;
}
.detail-card-icon {
  width: 2.55rem !important;
  height: 2.55rem !important;
  font-size: 1.18rem !important;
}
.detail-card-main strong {
  font-size: 1.12rem !important;
}
.detail-card-foot {
  padding-top: .52rem !important;
  font-size: .82rem !important;
}
.detail-timeline { height: 23px !important; }
.detail-timeline-legend { margin-top: .55rem !important; }
.detail-quick-grid button { padding: .62rem .85rem !important; }
.detail-new-res-btn { padding: .78rem 1rem !important; }
.detail-history-row { padding: .45rem 0 !important; }

/* Smartphoneansicht des Fahrzeugdetails: kompakt und ohne übergroße Karten */
@media (max-width: 760px) {
  .modal--vehicle-detail-v3 {
    width: calc(100vw - 14px) !important;
    max-height: calc(100vh - 14px) !important;
    border-radius: 16px !important;
  }
  .modal--vehicle-detail-v3 .modal-header--vehicle-card {
    padding: .65rem !important;
    gap: .45rem !important;
  }
  .modal--vehicle-detail-v3 .modal-close {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 1rem !important;
  }
  .modal--vehicle-detail-v3 .modal-body {
    padding: .65rem !important;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card {
    grid-template-columns: 88px minmax(0,1fr) !important;
    min-height: 74px !important;
    padding: .55rem !important;
    gap: .6rem !important;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-photo-wrap,
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-icon-wrap {
    width: 88px !important;
    height: 62px !important;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-name {
    font-size: 1.02rem !important;
    line-height: 1.05 !important;
  }
  .modal--vehicle-detail-v3 .reserve-vehicle-topline {
    grid-template-columns: minmax(0,1fr) !important;
    gap: .25rem !important;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-plate {
    margin-left: 0 !important;
    justify-content: flex-start !important;
  }
  .modal--vehicle-detail-v3 .reserve-vehicle-chips {
    margin-top: .32rem !important;
    gap: .25rem !important;
  }
  .modal--vehicle-detail-v3 .reserve-vehicle-chip {
    font-size: .56rem !important;
    padding: .16rem .34rem !important;
    border-radius: 6px !important;
    max-width: 118px !important;
  }
  .modal--vehicle-detail-v3 .detail-status-grid-v4 {
    grid-template-columns: 1fr !important;
    gap: .5rem !important;
  }
  .modal--vehicle-detail-v3 .detail-status-card,
  .modal--vehicle-detail-v3 .detail-panel-v4 {
    padding: .62rem !important;
    border-radius: 12px !important;
  }
  .modal--vehicle-detail-v3 .detail-card-title,
  .modal--vehicle-detail-v3 .detail-panel-head {
    font-size: .92rem !important;
    margin-bottom: .35rem !important;
  }
  .modal--vehicle-detail-v3 .detail-card-main {
    margin: .15rem 0 .42rem !important;
    gap: .5rem !important;
  }
  .modal--vehicle-detail-v3 .detail-card-icon {
    width: 2.2rem !important;
    height: 2.2rem !important;
    font-size: 1rem !important;
  }
  .modal--vehicle-detail-v3 .detail-card-main strong {
    font-size: 1rem !important;
  }
  .modal--vehicle-detail-v3 .detail-muted,
  .modal--vehicle-detail-v3 .detail-card-foot,
  .modal--vehicle-detail-v3 .detail-history-row {
    font-size: .76rem !important;
  }
  .modal--vehicle-detail-v3 .detail-card-foot {
    padding-top: .4rem !important;
  }
  .modal--vehicle-detail-v3 .detail-timeline-scale {
    font-size: .6rem !important;
  }
  .modal--vehicle-detail-v3 .detail-timeline {
    height: 18px !important;
  }
  .modal--vehicle-detail-v3 .detail-timeline-legend {
    font-size: .75rem !important;
    gap: .8rem !important;
    margin-top: .45rem !important;
  }
  .modal--vehicle-detail-v3 .detail-quick-grid {
    grid-template-columns: 1fr !important;
    gap: .45rem !important;
  }
  .modal--vehicle-detail-v3 .detail-quick-grid button {
    padding: .55rem .7rem !important;
    font-size: .86rem !important;
  }
  .modal--vehicle-detail-v3 .detail-new-res-btn {
    padding: .68rem .8rem !important;
    font-size: .9rem !important;
    border-radius: 12px !important;
  }
  .modal--vehicle-detail-v3 .detail-history-row {
    grid-template-columns: 1fr !important;
    gap: .16rem !important;
  }
}

/* ============================================================
   v2.2.0 Fahrzeugdetails: Statusfarbe, Kennzeichen, Notiz/Dauerinfo
   ============================================================ */
.modal--vehicle-detail-v3 .modal-header--vehicle-card{
  background:linear-gradient(180deg, rgba(16,27,42,.96), rgba(11,18,31,.98)) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .modal-header--vehicle-card{
  background:#fff !important;
  border-bottom-color:rgba(15,23,42,.10) !important;
}
.modal--vehicle-detail-v3 .detail-vehicle-card{
  background:linear-gradient(135deg, rgba(32,47,70,.94), rgba(15,24,38,.97)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045), 0 12px 30px rgba(0,0,0,.18) !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-vehicle-card{
  background:#fff !important;
  border-color:rgba(15,23,42,.10) !important;
  box-shadow:0 10px 28px rgba(15,23,42,.08) !important;
}
.modal--vehicle-detail-v3 .reserve-vehicle-name{font-size:1.55rem !important;}
.modal--vehicle-detail-v3 #dm-plate-chip .plate-unified,
.modal--vehicle-detail-v3 #dm-plate-chip.dashboard-plate-mini,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini.plate-unified{
  width:156px !important;
  min-width:156px !important;
  height:31px !important;
  flex:0 0 156px !important;
}
.modal--vehicle-detail-v3 #dm-plate-chip .plate-unified-svg,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg{
  width:156px !important;
  height:31px !important;
  max-width:156px !important;
}
.detail-dot--red{background:var(--red) !important;}
.detail-status-card--current{
  border-color:rgba(229,35,15,.68) !important;
  box-shadow:0 10px 30px rgba(0,0,0,.16), inset 0 0 0 1px rgba(229,35,15,.10) !important;
}
.detail-status-card--current .detail-card-icon{background:rgba(229,35,15,.16) !important;}
.detail-status-card--current .detail-card-main strong{color:#ff5e5e !important;}
.detail-status-card--current .detail-card-title strong{color:var(--text) !important;}
[data-theme="light"] .detail-status-card--current .detail-card-main strong{color:#e5230f !important;}
.detail-card-foot{
  display:grid !important;
  grid-template-columns:max-content minmax(0,1fr) !important;
  align-items:start !important;
  row-gap:.34rem !important;
  column-gap:.85rem !important;
}
.detail-card-foot span{color:var(--text-muted) !important;}
.detail-card-foot strong{
  color:var(--text) !important;
  font-weight:650 !important;
  min-width:0 !important;
  overflow-wrap:anywhere !important;
}
.detail-info-lines{display:grid;gap:.45rem;}
.detail-info-lines > div{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:.75rem;
  align-items:start;
  font-size:.88rem;
}
.detail-info-lines span{color:var(--text-muted);}
.detail-info-lines strong{color:var(--text);font-weight:650;overflow-wrap:anywhere;}
.detail-history-row--rich{grid-template-columns:1fr .9fr .75fr 1.1fr 1.1fr !important;}
.detail-history-note{grid-column:1 / -1;color:var(--text-muted);font-size:.82rem;line-height:1.35;}

@media (max-width:760px){
  .modal--vehicle-detail-v3 .reserve-vehicle-name{font-size:1.05rem !important;}
  .modal--vehicle-detail-v3 #dm-plate-chip .plate-unified,
  .modal--vehicle-detail-v3 #dm-plate-chip.dashboard-plate-mini,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini.plate-unified{
    width:112px !important;
    min-width:112px !important;
    height:22px !important;
    flex-basis:112px !important;
  }
  .modal--vehicle-detail-v3 #dm-plate-chip .plate-unified-svg,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg{
    width:112px !important;
    height:auto !important;
    max-width:112px !important;
  }
  .detail-card-foot{grid-template-columns:1fr !important;gap:.12rem !important;}
  .detail-card-foot span{font-size:.72rem !important;text-transform:uppercase;letter-spacing:.04em;}
  .detail-card-foot strong{font-size:.78rem !important;}
  .detail-info-lines > div{grid-template-columns:1fr;gap:.15rem;font-size:.78rem;}
  .detail-history-row--rich{grid-template-columns:1fr !important;}
}

/* ============================================================
   v2.2.1 Detailfenster: Überschrift, saubere Kachel-Linie, Enddatum
   ============================================================ */
/* Doppelte Linie in den Fahrzeugkacheln entfernen: Kopf-Border reicht aus. */
.vcard-statusbar::before { display: none !important; content: none !important; }
.vcard-head { border-bottom: 1px solid rgba(255,255,255,.06) !important; }
[data-theme="light"] .vcard-head { border-bottom-color: rgba(15,23,42,.08) !important; }

.modal--vehicle-detail-v3 .modal-header--vehicle-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: .75rem !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading {
  grid-column: 1 / 2;
  display: flex;
  align-items: center;
  gap: .55rem;
  color: var(--text) !important;
  font-family: 'Outfit', sans-serif;
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.1;
  padding: .05rem 0 .15rem;
}
.modal--vehicle-detail-v3 .detail-modal-heading-icon {
  color: var(--text-muted);
  font-size: 1.05rem;
  line-height: 1;
}
.modal--vehicle-detail-v3 .modal-close {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  justify-self: end;
}
.modal--vehicle-detail-v3 .detail-vehicle-card {
  grid-column: 1 / 3;
  width: 100%;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-modal-heading { color: #111827 !important; }
[data-theme="light"] .modal--vehicle-detail-v3 .detail-modal-heading-icon { color: #5b6472 !important; }

/* Kennzeichen im Fahrzeugdetail bewusst größer als in den Kacheln. */
.modal--vehicle-detail-v3 #dm-plate-chip .plate-unified,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini.plate-unified {
  width: 172px !important;
  min-width: 172px !important;
  height: 34px !important;
  flex: 0 0 172px !important;
}
.modal--vehicle-detail-v3 #dm-plate-chip .plate-unified-svg,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg {
  width: 172px !important;
  height: 34px !important;
  max-width: 172px !important;
}

@media (max-width:760px){
  .modal--vehicle-detail-v3 .modal-header--vehicle-card {
    grid-template-columns: minmax(0,1fr) auto !important;
    gap: .5rem !important;
  }
  .modal--vehicle-detail-v3 .detail-modal-heading {
    font-size: .98rem;
    padding-top: .05rem;
  }
  .modal--vehicle-detail-v3 .detail-vehicle-card {
    grid-column: 1 / 3;
  }
  .modal--vehicle-detail-v3 #dm-plate-chip .plate-unified,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini.plate-unified {
    width: 112px !important;
    min-width: 112px !important;
    height: 22px !important;
    flex-basis: 112px !important;
  }
  .modal--vehicle-detail-v3 #dm-plate-chip .plate-unified-svg,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg {
    width: 112px !important;
    height: auto !important;
    max-width: 112px !important;
  }
}


/* ============================================================
   v2.2.2 Fahrzeugdetails: Überschrift exakt dezenter, Kennzeichen größer
   ============================================================ */
.modal--vehicle-detail-v3 .modal-header--vehicle-card{
  background: linear-gradient(180deg, rgba(16,27,42,.98), rgba(11,18,31,.98)) !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .modal-header--vehicle-card{
  background: #ffffff !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading{
  color: #f8fafc !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 1.08rem !important;
  font-weight: 800 !important;
  letter-spacing: -.015em !important;
  min-height: 1.6rem !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading strong{
  color: inherit !important;
  font: inherit !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading-icon{
  width: 1.15rem !important;
  height: 1.15rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: rgba(226,232,240,.76) !important;
  font-size: 0 !important;
  line-height: 1 !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading-icon svg{
  width: 1.15rem !important;
  height: 1.15rem !important;
  display: block !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading-icon svg path{
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-modal-heading{
  color: #111827 !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-modal-heading strong{
  color: #111827 !important;
}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-modal-heading-icon{
  color: #64748b !important;
}

/* Fahrzeugdetail-Kennzeichen näher am Entwurf: größer, klarer, rechts im Kopf */
.modal--vehicle-detail-v3 #dm-plate-chip{
  transform: none !important;
  align-self: flex-start !important;
}
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini.plate-unified,
.modal--vehicle-detail-v3 #dm-plate-chip .plate-unified{
  width: 188px !important;
  min-width: 188px !important;
  height: 38px !important;
  flex: 0 0 188px !important;
  filter: drop-shadow(0 10px 22px rgba(0,0,0,.26)) !important;
}
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg,
.modal--vehicle-detail-v3 #dm-plate-chip .plate-unified-svg{
  width: 188px !important;
  height: 38px !important;
  max-width: 188px !important;
}

@media (max-width: 760px){
  .modal--vehicle-detail-v3 .detail-modal-heading{
    font-size: .98rem !important;
  }
  .modal--vehicle-detail-v3 .detail-modal-heading-icon,
  .modal--vehicle-detail-v3 .detail-modal-heading-icon svg{
    width: 1.05rem !important;
    height: 1.05rem !important;
  }
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini.plate-unified,
  .modal--vehicle-detail-v3 #dm-plate-chip .plate-unified{
    width: 112px !important;
    min-width: 112px !important;
    height: 22px !important;
    flex-basis: 112px !important;
    filter: drop-shadow(0 6px 12px rgba(0,0,0,.20)) !important;
  }
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg,
  .modal--vehicle-detail-v3 #dm-plate-chip .plate-unified-svg{
    width: 112px !important;
    height: auto !important;
    max-width: 112px !important;
  }
}

/* ============================================================
   v2.3.0 Einheitlicher Feinschliff, Mobilefix, Kennzeichen, Schutz
   ============================================================ */
:root{
  --app-card-head-bg: linear-gradient(135deg, rgba(14,25,39,.96), rgba(20,34,52,.92));
  --app-card-head-border: rgba(255,255,255,.09);
}
[data-theme="light"]{
  --app-card-head-bg: linear-gradient(135deg, #ffffff, #f7f9fc);
  --app-card-head-border: rgba(15,23,42,.09);
}
img, .vehicle-image-wrap, .vehicle-image-real, .vehicle-image-fallback, .vcard, .reserve-vehicle-card{
  -webkit-user-drag:none;
  user-select:none;
}
/* Kacheln: Statusfarbe klarer, keine doppelte Trennlinie */
.vcard{overflow:hidden;}
.vcard-head{border-bottom:0 !important;}
.vcard-statusbar{position:relative;border-top:1px solid rgba(255,255,255,.07) !important;}
[data-theme="light"] .vcard-statusbar{border-top-color:rgba(15,23,42,.08) !important;}
.vcard-statusbar::before{display:none !important;content:none !important;}
.vcard.card--busy{border-color:rgba(239,68,68,.65) !important;box-shadow:0 10px 28px rgba(0,0,0,.18), inset 3px 0 0 rgba(239,68,68,.38) !important;}
.vcard.card--busy .vcard-statusbar{background:rgba(239,68,68,.11) !important;}
.vcard.card--busy .vcard-status-text,.vcard.card--busy .vcard-countdown{color:#ff4d4d !important;}
[data-theme="light"] .vcard.card--busy .vcard-statusbar{background:rgba(239,68,68,.075) !important;}
.vcard.card--free .vcard-statusbar{background:rgba(16,185,129,.09) !important;}
.vcard.card--soon .vcard-statusbar{background:rgba(245,158,11,.09) !important;}
/* Einheitliche Bubbles */
.reserve-vehicle-chip,.vcard-chips-row .reserve-vehicle-chip{
  border-radius:7px !important;
  padding:.17rem .46rem !important;
  font-size:.68rem !important;
  line-height:1.12 !important;
  font-weight:700 !important;
  max-width:100%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.reserve-vehicle-chip--0{color:#dbeafe !important;background:rgba(37,99,235,.25) !important;border:1px solid rgba(96,165,250,.28) !important;}
.reserve-vehicle-chip--1{color:#bbf7d0 !important;background:rgba(16,185,129,.18) !important;border:1px solid rgba(74,222,128,.24) !important;}
.reserve-vehicle-chip--2{color:#e9d5ff !important;background:rgba(124,58,237,.20) !important;border:1px solid rgba(167,139,250,.24) !important;}
[data-theme="light"] .reserve-vehicle-chip--0{color:#1d4ed8 !important;background:#dbeafe !important;border-color:#bfdbfe !important;}
[data-theme="light"] .reserve-vehicle-chip--1{color:#15803d !important;background:#dcfce7 !important;border-color:#bbf7d0 !important;}
[data-theme="light"] .reserve-vehicle-chip--2{color:#6d28d9 !important;background:#ede9fe !important;border-color:#ddd6fe !important;}
/* Kennzeichen: zentral realistischer und im Detailkopf wie im Entwurf */
.dashboard-plate-mini.plate-unified{filter:drop-shadow(0 8px 18px rgba(0,0,0,.20));}
.vcard-info-top .dashboard-plate-mini.plate-unified{filter:none;}
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg{
  width:180px !important;height:36px !important;max-width:180px !important;
}
.modal--vehicle-detail-v3 #dm-plate-chip.dashboard-plate-mini,
.modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini,
.modal--vehicle-detail-v3 #dm-plate-chip .plate-unified{
  width:180px !important;min-width:180px !important;height:36px !important;flex:0 0 180px !important;
}
/* Fahrzeugdetail: Standardkopf überall gleich */
.modal--vehicle-detail-v3 .modal-header--vehicle-card{
  background:var(--app-card-head-bg) !important;
  border-bottom:1px solid var(--app-card-head-border) !important;
  padding:1.05rem 1.25rem 1.15rem !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading{
  color:var(--text) !important;
  font-size:1.08rem !important;
  margin-bottom:.4rem !important;
}
.modal--vehicle-detail-v3 .detail-modal-heading-icon svg{width:1.22rem;height:1.22rem;stroke:currentColor;fill:none;stroke-width:1.6;}
.modal--vehicle-detail-v3 .detail-modal-heading-icon{color:rgba(229,231,235,.8) !important;background:transparent !important;border:0 !important;}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-modal-heading{color:#111827 !important;}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-modal-heading-icon{color:#4b5563 !important;}
.modal--vehicle-detail-v3 .detail-vehicle-card,
.reserve-vehicle-card--tile{
  background:var(--app-card-head-bg) !important;
  border:1px solid var(--app-card-head-border) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035), 0 12px 30px rgba(0,0,0,.16) !important;
}
.modal--vehicle-detail-v3 .detail-status-card--current{border-color:rgba(239,68,68,.78) !important;}
.modal--vehicle-detail-v3 .detail-status-card--current .detail-dot{background:#ef4444 !important;}
.modal--vehicle-detail-v3 .detail-status-card--current .detail-card-main strong{color:#ef4444 !important;}
.modal--vehicle-detail-v3 .detail-new-res-btn{background:linear-gradient(135deg,#1463ff,#0052e8) !important;box-shadow:0 10px 26px rgba(20,99,255,.26) !important;}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-new-res-btn{color:#fff !important;}
/* Höhe etwas reduzieren, damit wichtige Buttons schneller sichtbar sind */
.vehicle-detail-body-v4{gap:.64rem !important;padding:.82rem 1rem 1rem !important;}
.detail-status-card,.detail-panel-v4{padding:.82rem !important;}
.detail-card-main{margin:.45rem 0 .55rem !important;}
.detail-card-icon{width:42px !important;height:42px !important;font-size:1.1rem !important;}
.detail-card-foot{gap:.26rem .65rem !important;}
.detail-timeline{height:32px !important;}
.detail-quick-grid button{min-height:42px !important;}
/* Lightmode Überschriften sauber lesbar */
[data-theme="light"] .modal--vehicle-detail-v3 .detail-card-title,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-card-title strong,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-panel-head,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-panel-head strong,
[data-theme="light"] .modal--vehicle-detail-v3 .reserve-vehicle-name{color:#111827 !important;}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-card-foot strong,
[data-theme="light"] .modal--vehicle-detail-v3 .detail-history-row strong{color:#111827 !important;}
/* Mobile Detailansicht: kompakter und keine überstehenden Elemente */
@media (max-width:760px){
  .modal--vehicle-detail-v3{width:calc(100vw - 14px) !important;max-height:calc(100vh - 14px) !important;border-radius:18px !important;}
  .modal--vehicle-detail-v3 .modal-header--vehicle-card{padding:.68rem .72rem .72rem !important;gap:.45rem !important;}
  .modal--vehicle-detail-v3 .detail-modal-heading{font-size:.94rem !important;margin:0 !important;}
  .modal--vehicle-detail-v3 .modal-close{width:32px !important;height:32px !important;}
  .modal--vehicle-detail-v3 .detail-vehicle-card{padding:.62rem !important;gap:.58rem !important;display:grid !important;grid-template-columns:86px minmax(0,1fr) !important;align-items:center !important;}
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-photo-wrap,
  .modal--vehicle-detail-v3 .detail-vehicle-card .reserve-vehicle-icon-wrap{width:86px !important;height:64px !important;min-width:86px !important;}
  .modal--vehicle-detail-v3 .reserve-vehicle-main{min-width:0 !important;width:100% !important;}
  .modal--vehicle-detail-v3 .reserve-vehicle-topline{display:grid !important;grid-template-columns:1fr !important;gap:.28rem !important;align-items:start !important;}
  .modal--vehicle-detail-v3 .reserve-vehicle-name{font-size:1rem !important;line-height:1.05 !important;}
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-license-svg.plate-unified-svg{width:112px !important;height:23px !important;max-width:112px !important;}
  .modal--vehicle-detail-v3 #dm-plate-chip.dashboard-plate-mini,
  .modal--vehicle-detail-v3 #dm-plate-chip .dashboard-plate-mini,
  .modal--vehicle-detail-v3 #dm-plate-chip .plate-unified{width:112px !important;min-width:112px !important;height:23px !important;flex:0 0 112px !important;}
  .modal--vehicle-detail-v3 .reserve-vehicle-chips{gap:.22rem !important;flex-wrap:wrap !important;}
  .modal--vehicle-detail-v3 .reserve-vehicle-chip{font-size:.58rem !important;padding:.13rem .32rem !important;max-width:100px !important;}
  .vehicle-detail-body-v4{padding:.62rem !important;gap:.55rem !important;}
  .modal--vehicle-detail-v3 .detail-status-grid-v4{grid-template-columns:1fr !important;gap:.55rem !important;}
  .modal--vehicle-detail-v3 .detail-status-card,.modal--vehicle-detail-v3 .detail-panel-v4{padding:.68rem !important;border-radius:14px !important;}
  .modal--vehicle-detail-v3 .detail-card-main{grid-template-columns:36px minmax(0,1fr) !important;gap:.55rem !important;margin:.35rem 0 .42rem !important;}
  .modal--vehicle-detail-v3 .detail-card-icon{width:36px !important;height:36px !important;font-size:1rem !important;}
  .modal--vehicle-detail-v3 .detail-card-main strong{font-size:1rem !important;line-height:1.15 !important;}
  .modal--vehicle-detail-v3 .detail-card-title,.modal--vehicle-detail-v3 .detail-panel-head{font-size:.9rem !important;}
  .modal--vehicle-detail-v3 .detail-muted,.modal--vehicle-detail-v3 .detail-card-foot,.modal--vehicle-detail-v3 .detail-history-row{font-size:.75rem !important;}
  .modal--vehicle-detail-v3 .detail-timeline-scale{font-size:.62rem !important;}
  .modal--vehicle-detail-v3 .detail-timeline{height:26px !important;}
  .modal--vehicle-detail-v3 .detail-quick-grid{grid-template-columns:1fr !important;}
  .modal--vehicle-detail-v3 .detail-new-res-btn{min-height:44px !important;font-size:.9rem !important;border-radius:14px !important;}
  .modal--vehicle-detail-v3 .detail-history-row--rich{grid-template-columns:1fr !important;gap:.18rem !important;padding:.55rem 0 !important;}
}
/* Mobile Fahrzeugübersicht bleibt bewusst kompakt */
@media (max-width:540px){
  .main-content{padding:.75rem !important;}
  .vehicle-grid{gap:.62rem !important;}
  .vcard-head{min-height:72px !important;padding:.5rem .55rem !important;gap:.55rem !important;}
  .vcard-img{width:58px !important;min-width:58px !important;height:58px !important;}
  .vcard-name{font-size:.9rem !important;line-height:1.12 !important;}
  .vcard-chips-row{gap:.2rem !important;}
  .vcard-chips-row .reserve-vehicle-chip{font-size:.56rem !important;padding:.12rem .28rem !important;max-width:94px !important;}
  .vcard-statusbar{min-height:30px !important;padding:.34rem .56rem !important;}
  .vcard-status-text,.vcard-countdown{font-size:.69rem !important;}
  .vcard-info-top .dashboard-license-svg.plate-unified-svg{width:100px !important;height:20px !important;max-width:100px !important;}
  .vcard-info-top .dashboard-plate-mini.plate-unified{width:100px !important;min-width:100px !important;height:20px !important;flex-basis:100px !important;}
}

/* v2.3.2: intelligente Kalender-Listenansicht */
#calendar .fc-listSevenDays-view .fc-list-day.fc-day-today .fc-list-day-cushion,
#calendar .fc-listSevenDays-view .fc-list-day.fc-day-today th {
  position: relative;
}
#calendar .fc-listSevenDays-view .fc-list-day.fc-day-today .fc-list-day-text::before {
  content: 'Heute';
  display: inline-flex;
  align-items: center;
  margin-right: .5rem;
  padding: .16rem .5rem;
  border-radius: 999px;
  background: var(--primary, #2563eb);
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .01em;
}
#calendar .fc-list-event.fc-event-now .fc-list-event-title::after {
  content: 'Läuft gerade';
  display: inline-flex;
  align-items: center;
  margin-left: .55rem;
  padding: .12rem .45rem;
  border-radius: 999px;
  background: rgba(34,197,94,.16);
  border: 1px solid rgba(34,197,94,.32);
  color: #16a34a;
  font-size: .7rem;
  font-weight: 800;
  white-space: nowrap;
}
html:not([data-theme="light"]) #calendar .fc-list-event.fc-event-now .fc-list-event-title::after {
  color: #4ade80;
  background: rgba(34,197,94,.18);
  border-color: rgba(74,222,128,.35);
}
#calendar .fc-list-empty {
  padding: 1.1rem;
  color: var(--text-2);
  font-weight: 700;
}
@media (max-width: 720px) {
  #calendar .fc-header-toolbar {
    gap: .45rem;
  }
  #calendar .fc-toolbar-chunk:last-child {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .35rem;
  }
  #calendar .fc-button {
    padding: .42rem .55rem;
    font-size: .78rem;
  }
  #calendar .fc-list-event.fc-event-now .fc-list-event-title::after {
    display: flex;
    width: max-content;
    margin: .25rem 0 0 0;
  }
}


.detail-trailer-list{display:flex;flex-wrap:wrap;gap:.45rem;align-items:flex-start}
.detail-trailer-chip{display:inline-flex;flex-direction:column;gap:.1rem;padding:.35rem .55rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);line-height:1.15}
.detail-trailer-chip small{font-size:.72rem;color:var(--text-muted);font-weight:500}
.detail-info-line--trailers{align-items:flex-start}


/* v2.4.5: Anhänger in der Fahrzeugübersicht */
.vcard-trailer-row{
  display:flex;align-items:center;gap:.35rem;margin-top:.35rem;font-size:.76rem;color:var(--text-3);line-height:1.2;
}
.vcard-trailer-icon{
  width:20px;height:18px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--border);background:var(--surface);color:var(--text-3);font-size:.85rem;flex:0 0 auto;
}
.detail-trailer-chip{flex-direction:row;align-items:center;border-radius:14px;}
.detail-trailer-chip > span{display:flex;flex-direction:column;gap:.1rem;}
.detail-trailer-img,.detail-trailer-icon{
  width:34px;height:26px;border-radius:7px;object-fit:cover;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--border);background:var(--bg-2);color:var(--accent);font-size:1rem;flex:0 0 auto;
}
.trailer-icon-svg,.vehicle-icon-svg{width:18px;height:15px;color:currentColor;display:block;}
.detail-trailer-icon .trailer-icon-svg{width:24px;height:18px;}

/* v2.4.6: Anhänger auf der Startseite */
.trailer-overview-section{margin-top:1.75rem;}
.trailer-overview-head{display:flex;align-items:flex-end;justify-content:space-between;margin:0 0 .9rem;padding:0 .15rem;}
.trailer-overview-head h2{margin:0;color:var(--text);font-size:1.25rem;font-weight:900;letter-spacing:-.02em;}
.trailer-overview-head p{margin:.15rem 0 0;color:var(--text-3);font-size:.9rem;}
.trailer-grid{margin-top:.25rem;}
.trailer-card-icon-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--red);background:linear-gradient(145deg,rgba(239,68,68,.14),rgba(255,255,255,.04));}
.trailer-card-icon-fallback .trailer-icon-svg{width:56%;height:56%;}
.modal--trailer-detail{max-width:760px;}
.trailer-detail-head{display:flex;gap:1rem;align-items:center;margin-bottom:1rem;}
.trailer-detail-visual{width:132px;height:92px;border-radius:18px;border:1px solid var(--border);background:rgba(255,255,255,.04);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--red);flex:0 0 auto;}
.trailer-detail-visual img{width:100%;height:100%;object-fit:cover;display:block;}
.trailer-detail-visual .detail-trailer-icon{width:70px;height:54px;display:flex;align-items:center;justify-content:center;}
.trailer-detail-visual .trailer-icon-svg{width:70px;height:54px;}
.trailer-detail-head h2{margin:0 0 .25rem;color:var(--text);font-size:1.35rem;}
.trailer-detail-meta{color:var(--text-3);font-size:.95rem;}


/* v2.4.8: Anhänger nutzen exakt das normale Kachelraster */
.vehicle-grid > .vcard[data-id^="trailer-"] {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  align-self: stretch;
}
.vehicle-grid > .vcard[data-id^="trailer-"] .vcard-head {
  min-height: 70px;
}
.vehicle-grid > .vcard[data-id^="trailer-"] .vcard-info-top {
  align-items: flex-start;
}
.vehicle-grid > .vcard[data-id^="trailer-"] .vcard-chips-row {
  flex-wrap: wrap;
}

/* v2.4.9 Anhänger vollständig integriert */
.vcard-trailer-row--warning { color: var(--orange); }
.trailer-vehicle-chip,
.trailer-vehicle-select-item {
  width:100%;
  border:1px solid var(--border);
  background:var(--surface);
  color:var(--text);
  border-radius:12px;
  padding:.65rem .8rem;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.15rem;
  cursor:pointer;
  font:inherit;
  text-align:left;
}
.trailer-vehicle-chip:hover,
.trailer-vehicle-select-item:hover {
  border-color:var(--accent);
  background:var(--surface-2);
}
.trailer-vehicle-chip small,
.trailer-vehicle-select-item small {
  color:var(--text-2);
  font-size:.72rem;
}
.trailer-vehicle-select-list,
#td-vehicles.detail-trailer-list {
  display:grid;
  gap:.5rem;
}
.trailer-select-hint,
.trailer-no-vehicle {
  color:var(--text-2);
  margin:0 0 .75rem;
  font-size:.9rem;
}
#td-reserve-btn:disabled {
  opacity:.55;
  cursor:not-allowed;
}


/* v2.6.0 Einheitliche Kachel-Chips für Fahrzeuge und Anhänger */
.vcard .vehicle-chip-row--unified{display:flex!important;flex-wrap:wrap!important;gap:.34rem!important;overflow:visible!important;}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip{display:inline-flex!important;align-items:center!important;min-width:0!important;white-space:nowrap!important;}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--2{display:inline-flex!important;}


/* v2.6.1 Anhänger interne Nummer in der Kachel sicher sichtbar */
.vcard[data-id^="trailer-"] .vcard-internal-number-chip,
.vcard[data-id^="trailer-"] [data-chip="internal-number"]{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto!important;
  max-width:none!important;
  white-space:nowrap!important;
  order:3!important;
}


/* v2.6.3 Anhänger: Bremsanlage nicht mehr als Haupt-Bubble, interne Nummer sichtbar wie bei Fahrzeugen */
.vcard[data-id^="trailer-"] .vcard-internal-number-chip{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  order:3!important;
}

/* v2.6.6: Kachel-Layout stabilisieren, damit lange Modellwerte andere Kacheln nicht aufziehen */
.vcard .vcard-info-top{
  min-width:0;
  align-items:flex-start;
}
.vcard .vcard-info-top .de-plate{
  flex:0 0 auto;
}
.vcard .vcard-name{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  display:block!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
  min-width:0;
}
.vcard .vehicle-chip-row--unified{
  flex-wrap:nowrap!important;
  overflow:hidden!important;
  min-width:0!important;
  width:100%;
  gap:.28rem!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  max-width:100%;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--0{
  flex:0 0 auto!important;
  max-width:86px!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:none!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--2,
.vcard[data-id^="trailer-"] .vcard-internal-number-chip{
  flex:0 0 auto!important;
  max-width:72px!important;
}
.vcard .vcard-trailer-row{
  width:100%;
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
}
.vcard .vcard-trailer-row > span:last-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.vehicle-grid > .vcard[data-id^="trailer-"] .vcard-chips-row{
  flex-wrap:nowrap!important;
}
@media (max-width:520px){
  .vcard .vehicle-chip-row--unified .reserve-vehicle-chip--0{max-width:74px!important;}
  .vcard .vehicle-chip-row--unified .reserve-vehicle-chip--2{max-width:64px!important;}
}

/* v2.6.7: Kachel-Bubbles kompakter. Die mittlere Modell-Bubble darf die Kachel nicht dominieren. */
.vcard .vehicle-chip-row--unified{
  display:flex!important;
  align-items:center!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:0 1 auto!important;
  max-width:132px!important;
}
.vcard[data-id^="trailer-"] .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  max-width:138px!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--2,
.vcard[data-id^="trailer-"] .vcard-internal-number-chip{
  flex:0 0 auto!important;
}
@media (max-width:520px){
  .vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{max-width:112px!important;}
  .vcard[data-id^="trailer-"] .vehicle-chip-row--unified .reserve-vehicle-chip--1{max-width:116px!important;}
}

/* v2.6.8: Kachelkopf mit interner Nummer unter dem Kennzeichen, Modell-Bubble wieder mit Hersteller */
.vcard-plate-stack{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:.22rem;
  min-width:116px;
  max-width:116px;
}
.vcard-internal-top{
  font-size:.66rem!important;
  padding:.22rem .46rem!important;
  border-radius:7px!important;
  max-width:116px!important;
  align-self:flex-end;
}
.vcard .vehicle-chip-row--unified{
  flex-wrap:nowrap!important;
  min-width:0;
  width:100%;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--0{
  flex:0 0 auto;
}
.vcard .vehicle-chip-row--unified .vcard-model-chip,
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:1 1 auto;
  min-width:0;
  max-width:none!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--2:not(.vcard-internal-top){
  flex:0 0 auto;
}
@media (max-width:720px){
  .vcard-plate-stack{min-width:108px;max-width:108px;}
  .vcard-internal-top{max-width:108px!important;}
}
@media (max-width:460px){
  .vcard-plate-stack{align-items:flex-start;}
}

/* v2.6.9: Kachelkopf repariert – interne Nummer rechts unter Kennzeichen ohne Layoutbruch */
.vcard-head{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  min-height:88px!important;
}
.vcard-img{
  flex:0 0 70px!important;
  align-self:center!important;
}
.vcard-info{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:.38rem!important;
  min-width:0!important;
  padding:0 124px 0 0!important;
}
.vcard-info-top{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:24px!important;
}
.vcard-name{
  text-align:left!important;
  max-width:100%!important;
}
.vcard-plate-stack{
  position:absolute!important;
  top:0!important;
  right:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:.18rem!important;
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  z-index:2!important;
}
.vcard-internal-top{
  display:inline-flex!important;
  width:auto!important;
  max-width:118px!important;
  margin:0!important;
  white-space:nowrap!important;
}
.vcard .vehicle-chip-row--unified,
.vcard .vcard-trailer-row{
  max-width:100%!important;
}
@media (max-width:720px){
  .vcard-info{padding-right:114px!important;}
  .vcard-plate-stack{width:108px!important;min-width:108px!important;max-width:108px!important;}
}
@media (max-width:460px){
  .vcard-info{padding-right:0!important;}
  .vcard-plate-stack{position:static!important;align-items:flex-start!important;margin-top:.25rem!important;}
  .vcard-info-top{display:flex!important;flex-direction:column!important;gap:.25rem!important;}
}

/* ============================================================
   v2.7.0: Robustes Kachel-Layout
   Bild | Inhalt. Rechts im Inhalt stehen Kennzeichen + interne Nummer.
   Keine absolute Positionierung mehr, dadurch kein Überlappen.
   ============================================================ */
.vehicle-grid{
  grid-template-columns:repeat(auto-fill,minmax(340px,1fr))!important;
}
.vcard{
  min-width:0!important;
}
.vcard-head{
  display:grid!important;
  grid-template-columns:82px minmax(0,1fr)!important;
  align-items:stretch!important;
  min-height:96px!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
}
.vcard-img{
  width:82px!important;
  min-width:82px!important;
  flex:0 0 82px!important;
  align-self:stretch!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
}
.vcard-info{
  position:static!important;
  display:grid!important;
  grid-template-rows:auto auto minmax(0,auto)!important;
  align-content:center!important;
  justify-content:normal!important;
  align-items:start!important;
  gap:.34rem!important;
  min-width:0!important;
  width:100%!important;
  padding:.55rem .70rem!important;
}
.vcard-info-top{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:.55rem!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
}
.vcard-name{
  display:block!important;
  text-align:left!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
  min-width:0!important;
  line-height:1.16!important;
  padding-top:.06rem!important;
}
.vcard-plate-stack{
  position:static!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:.22rem!important;
  width:125px!important;
  min-width:125px!important;
  max-width:125px!important;
  z-index:auto!important;
}
.vcard-plate-stack .plate-unified,
.vcard-plate-stack .dashboard-plate-mini,
.vcard-plate-stack .dashboard-plate-mini.plate-unified{
  width:125px!important;
  min-width:125px!important;
  height:25px!important;
  flex:0 0 25px!important;
}
.vcard-plate-stack .plate-unified-svg,
.vcard-plate-stack .dashboard-license-svg,
.vcard-plate-stack .dashboard-license-svg.plate-unified-svg{
  width:125px!important;
  height:25px!important;
  max-width:125px!important;
}
.vcard-internal-top{
  display:inline-flex!important;
  align-self:flex-end!important;
  width:auto!important;
  max-width:125px!important;
  font-size:.64rem!important;
  line-height:1!important;
  padding:.22rem .44rem!important;
  margin:0!important;
  white-space:nowrap!important;
}
.vcard .vehicle-chip-row--unified{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:.28rem!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--0{
  flex:0 0 auto!important;
  max-width:82px!important;
}
.vcard .vehicle-chip-row--unified .vcard-model-chip,
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vcard .vcard-trailer-row{
  display:flex!important;
  align-items:center!important;
  gap:.34rem!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.vcard .vcard-trailer-row > span:last-child{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
@media (max-width:720px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))!important;}
  .vcard-head{grid-template-columns:74px minmax(0,1fr)!important;min-height:92px!important;}
  .vcard-img{width:74px!important;min-width:74px!important;flex-basis:74px!important;}
  .vcard-info{padding:.50rem .58rem!important;gap:.30rem!important;}
  .vcard-plate-stack{width:114px!important;min-width:114px!important;max-width:114px!important;}
  .vcard-plate-stack .plate-unified,
  .vcard-plate-stack .dashboard-plate-mini,
  .vcard-plate-stack .dashboard-plate-mini.plate-unified{width:114px!important;min-width:114px!important;height:23px!important;flex-basis:23px!important;}
  .vcard-plate-stack .plate-unified-svg,
  .vcard-plate-stack .dashboard-license-svg,
  .vcard-plate-stack .dashboard-license-svg.plate-unified-svg{width:114px!important;height:23px!important;max-width:114px!important;}
  .vcard-internal-top{max-width:114px!important;font-size:.61rem!important;}
}
@media (max-width:460px){
  .vehicle-grid{grid-template-columns:1fr!important;}
  .vcard-info-top{grid-template-columns:minmax(0,1fr) auto!important;}
  .vcard-plate-stack{align-items:flex-end!important;}
}

/* ============================================================
   v2.7.1: Kachelkopf ruhig aufgebaut
   Name bekommt wieder die volle Breite. Kennzeichen + interne Nummer
   sitzen rechts in der zweiten Zeile. Dadurch wird der Titel nicht mehr
   von der Kennzeichen-Spalte abgeschnitten.
   ============================================================ */
.vehicle-grid{
  grid-template-columns:repeat(auto-fill,minmax(360px,1fr))!important;
}
.vcard-head{
  display:grid!important;
  grid-template-columns:82px minmax(0,1fr)!important;
  align-items:stretch!important;
  min-height:104px!important;
}
.vcard-info{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 126px!important;
  grid-template-rows:auto auto auto!important;
  align-content:center!important;
  gap:.36rem .55rem!important;
  padding:.58rem .70rem!important;
  min-width:0!important;
  width:100%!important;
}
.vcard-info-top{
  display:contents!important;
}
.vcard-name{
  grid-column:1 / -1!important;
  grid-row:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
  min-width:0!important;
  line-height:1.18!important;
  padding:0!important;
}
.vcard-plate-stack{
  grid-column:2!important;
  grid-row:2 / span 2!important;
  position:static!important;
  width:126px!important;
  min-width:126px!important;
  max-width:126px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:.24rem!important;
  align-self:start!important;
  justify-self:end!important;
}
.vcard .vehicle-chip-row--unified{
  grid-column:1!important;
  grid-row:2!important;
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:.30rem!important;
  overflow:hidden!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--0{
  flex:0 0 auto!important;
  max-width:82px!important;
}
.vcard .vehicle-chip-row--unified .vcard-model-chip,
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vcard .vcard-trailer-row{
  grid-column:1!important;
  grid-row:3!important;
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:.34rem!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.vcard .vcard-trailer-row > span:last-child{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vcard-plate-stack .plate-unified,
.vcard-plate-stack .dashboard-plate-mini,
.vcard-plate-stack .dashboard-plate-mini.plate-unified{
  width:126px!important;
  min-width:126px!important;
  height:25px!important;
  flex:0 0 25px!important;
}
.vcard-plate-stack .plate-unified-svg,
.vcard-plate-stack .dashboard-license-svg,
.vcard-plate-stack .dashboard-license-svg.plate-unified-svg{
  width:126px!important;
  height:25px!important;
  max-width:126px!important;
}
.vcard-internal-top{
  max-width:126px!important;
  white-space:nowrap!important;
}
@media (max-width:720px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))!important;}
  .vcard-head{grid-template-columns:74px minmax(0,1fr)!important;min-height:100px!important;}
  .vcard-img{width:74px!important;min-width:74px!important;flex-basis:74px!important;}
  .vcard-info{grid-template-columns:minmax(0,1fr) 114px!important;padding:.52rem .58rem!important;gap:.32rem .42rem!important;}
  .vcard-plate-stack{width:114px!important;min-width:114px!important;max-width:114px!important;}
  .vcard-plate-stack .plate-unified,
  .vcard-plate-stack .dashboard-plate-mini,
  .vcard-plate-stack .dashboard-plate-mini.plate-unified{width:114px!important;min-width:114px!important;height:23px!important;flex-basis:23px!important;}
  .vcard-plate-stack .plate-unified-svg,
  .vcard-plate-stack .dashboard-license-svg,
  .vcard-plate-stack .dashboard-license-svg.plate-unified-svg{width:114px!important;height:23px!important;max-width:114px!important;}
  .vcard-internal-top{max-width:114px!important;}
}
@media (max-width:460px){
  .vehicle-grid{grid-template-columns:1fr!important;}
  .vcard-info{grid-template-columns:minmax(0,1fr) 108px!important;}
  .vcard-plate-stack{width:108px!important;min-width:108px!important;max-width:108px!important;}
}

/* ============================================================
   v2.7.2: Kachelkopf sauber neu aufgebaut
   Ziel: keine Überlappungen, keine abgeschnittenen Pflichtinfos.
   Aufbau: Name volle Breite, Kennzeichen rechts darunter,
   Bubbles darunter wieder mit voller Breite.
   ============================================================ */
.vehicle-grid{
  grid-template-columns:repeat(auto-fill,minmax(370px,1fr))!important;
}
.vcard{
  min-width:0!important;
  overflow:hidden!important;
}
.vcard-head{
  display:grid!important;
  grid-template-columns:86px minmax(0,1fr)!important;
  align-items:stretch!important;
  min-height:128px!important;
  padding:0!important;
  gap:0!important;
}
.vcard-img{
  width:86px!important;
  min-width:86px!important;
  height:auto!important;
  align-self:stretch!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:.62rem .50rem!important;
  border-right:1px solid rgba(255,255,255,.07)!important;
}
.vcard-img-object,
.trailer-card-icon-fallback.vcard-img-object{
  width:72px!important;
  height:58px!important;
  object-fit:cover!important;
  border-radius:10px!important;
}
.vcard-info{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto auto auto!important;
  align-content:center!important;
  align-items:start!important;
  gap:.42rem .55rem!important;
  width:100%!important;
  min-width:0!important;
  padding:.66rem .72rem .60rem .78rem!important;
}
.vcard-info-top{
  display:contents!important;
}
.vcard-name{
  grid-column:1 / -1!important;
  grid-row:1!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-align:left!important;
  line-height:1.16!important;
  padding:0!important;
  margin:0!important;
}
.vcard-plate-stack{
  grid-column:2!important;
  grid-row:2!important;
  position:static!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  justify-self:end!important;
  align-self:start!important;
  width:116px!important;
  min-width:116px!important;
  max-width:116px!important;
  gap:.22rem!important;
  margin:0!important;
  z-index:auto!important;
}
.vcard-plate-stack .plate-unified,
.vcard-plate-stack .dashboard-plate-mini,
.vcard-plate-stack .dashboard-plate-mini.plate-unified{
  width:116px!important;
  min-width:116px!important;
  max-width:116px!important;
  height:23px!important;
  flex:0 0 23px!important;
}
.vcard-plate-stack .plate-unified-svg,
.vcard-plate-stack .dashboard-license-svg,
.vcard-plate-stack .dashboard-license-svg.plate-unified-svg{
  width:116px!important;
  min-width:116px!important;
  max-width:116px!important;
  height:23px!important;
}
.vcard-internal-top{
  display:inline-flex!important;
  align-self:flex-end!important;
  max-width:116px!important;
  padding:.20rem .42rem!important;
  font-size:.62rem!important;
  line-height:1!important;
  white-space:nowrap!important;
  margin:0!important;
}
.vcard .vehicle-chip-row--unified{
  grid-column:1 / -1!important;
  grid-row:3!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:.32rem!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--0{
  flex:0 0 auto!important;
  max-width:90px!important;
}
.vcard .vehicle-chip-row--unified .vcard-model-chip,
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vcard .vcard-trailer-row{
  grid-column:1 / -1!important;
  grid-row:4!important;
  display:flex!important;
  align-items:center!important;
  gap:.36rem!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  margin:0!important;
}
.vcard .vcard-trailer-row > span:last-child{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vcard-statusbar{
  min-height:33px!important;
}
@media (max-width:720px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr))!important;}
  .vcard-head{grid-template-columns:78px minmax(0,1fr)!important;min-height:124px!important;}
  .vcard-img{width:78px!important;min-width:78px!important;padding:.58rem .42rem!important;}
  .vcard-img-object,
  .trailer-card-icon-fallback.vcard-img-object{width:64px!important;height:54px!important;}
  .vcard-info{padding:.62rem .60rem .56rem .66rem!important;gap:.38rem .46rem!important;}
  .vcard-plate-stack{width:108px!important;min-width:108px!important;max-width:108px!important;}
  .vcard-plate-stack .plate-unified,
  .vcard-plate-stack .dashboard-plate-mini,
  .vcard-plate-stack .dashboard-plate-mini.plate-unified{width:108px!important;min-width:108px!important;max-width:108px!important;height:22px!important;flex-basis:22px!important;}
  .vcard-plate-stack .plate-unified-svg,
  .vcard-plate-stack .dashboard-license-svg,
  .vcard-plate-stack .dashboard-license-svg.plate-unified-svg{width:108px!important;min-width:108px!important;max-width:108px!important;height:22px!important;}
  .vcard-internal-top{max-width:108px!important;font-size:.60rem!important;}
}
@media (max-width:460px){
  .vehicle-grid{grid-template-columns:1fr!important;}
  .vcard-head{grid-template-columns:76px minmax(0,1fr)!important;min-height:126px!important;}
  .vcard-info{padding:.60rem .56rem!important;}
}

/* ============================================================
   v2.7.3: Kachel-Layout zurück auf ruhige, kompakte Struktur
   ------------------------------------------------------------
   Aufbau:
   - Bild links wieder kompakt, nicht gestreckt
   - Name oben über die volle Breite
   - zweite Zeile: Bubbles links, Kennzeichen + interne Nummer rechts
   - Hinweiszeile darunter ohne Überlappung
   ============================================================ */
.vehicle-grid{
  grid-template-columns:repeat(auto-fill,minmax(370px,1fr))!important;
}
.vcard{
  min-width:0!important;
  overflow:hidden!important;
}
.vcard-head{
  display:flex!important;
  align-items:flex-start!important;
  gap:.72rem!important;
  min-height:0!important;
  padding:.78rem .84rem .68rem .84rem!important;
}
.vcard-img{
  flex:0 0 78px!important;
  width:78px!important;
  min-width:78px!important;
  height:78px!important;
  align-self:flex-start!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  border-right:0!important;
}
.vcard-img-object,
.trailer-card-icon-fallback.vcard-img-object{
  width:78px!important;
  height:78px!important;
  max-width:78px!important;
  max-height:78px!important;
  object-fit:cover!important;
  border-radius:10px!important;
}
.vcard-info{
  position:relative!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 118px!important;
  grid-template-rows:auto auto auto!important;
  column-gap:.58rem!important;
  row-gap:.38rem!important;
  align-items:start!important;
  align-content:start!important;
}
.vcard-info-top{
  display:contents!important;
}
.vcard-name{
  grid-column:1 / -1!important;
  grid-row:1!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0!important;
  margin:0!important;
  text-align:left!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  line-height:1.2!important;
}
.vcard-plate-stack{
  grid-column:2!important;
  grid-row:2!important;
  position:static!important;
  justify-self:end!important;
  align-self:start!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:.24rem!important;
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  margin:0!important;
  z-index:2!important;
}
.vcard-plate-stack .plate-unified,
.vcard-plate-stack .dashboard-plate-mini,
.vcard-plate-stack .dashboard-plate-mini.plate-unified{
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  height:24px!important;
  flex:0 0 24px!important;
}
.vcard-plate-stack .plate-unified-svg,
.vcard-plate-stack .dashboard-license-svg,
.vcard-plate-stack .dashboard-license-svg.plate-unified-svg{
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  height:24px!important;
}
.vcard-internal-top{
  display:inline-flex!important;
  width:auto!important;
  max-width:118px!important;
  align-self:flex-end!important;
  margin:0!important;
  padding:.20rem .42rem!important;
  font-size:.62rem!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.vcard .vehicle-chip-row--unified{
  grid-column:1!important;
  grid-row:2!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:.34rem!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  margin:0!important;
  align-self:center!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip{
  min-width:0!important;
  white-space:nowrap!important;
}
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--0{
  flex:0 0 auto!important;
  max-width:82px!important;
}
.vcard .vehicle-chip-row--unified .vcard-model-chip,
.vcard .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vcard .vcard-trailer-row{
  grid-column:1 / -1!important;
  grid-row:3!important;
  display:flex!important;
  align-items:center!important;
  gap:.36rem!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  margin:.05rem 0 0 0!important;
}
.vcard .vcard-trailer-row > span:last-child{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vcard-statusbar{
  min-height:33px!important;
}
@media (max-width:720px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr))!important;}
  .vcard-head{gap:.62rem!important;padding:.70rem .72rem .62rem!important;}
  .vcard-img{flex-basis:70px!important;width:70px!important;min-width:70px!important;height:70px!important;}
  .vcard-img-object,
  .trailer-card-icon-fallback.vcard-img-object{width:70px!important;height:70px!important;max-width:70px!important;max-height:70px!important;}
  .vcard-info{grid-template-columns:minmax(0,1fr) 110px!important;column-gap:.48rem!important;row-gap:.34rem!important;}
  .vcard-plate-stack{width:110px!important;min-width:110px!important;max-width:110px!important;}
  .vcard-plate-stack .plate-unified,
  .vcard-plate-stack .dashboard-plate-mini,
  .vcard-plate-stack .dashboard-plate-mini.plate-unified{width:110px!important;min-width:110px!important;max-width:110px!important;height:22px!important;flex-basis:22px!important;}
  .vcard-plate-stack .plate-unified-svg,
  .vcard-plate-stack .dashboard-license-svg,
  .vcard-plate-stack .dashboard-license-svg.plate-unified-svg{width:110px!important;min-width:110px!important;max-width:110px!important;height:22px!important;}
  .vcard-internal-top{max-width:110px!important;font-size:.60rem!important;}
}
@media (max-width:460px){
  .vehicle-grid{grid-template-columns:1fr!important;}
  .vcard-head{gap:.55rem!important;padding:.66rem .66rem .58rem!important;}
  .vcard-img{flex-basis:66px!important;width:66px!important;min-width:66px!important;height:66px!important;}
  .vcard-img-object,
  .trailer-card-icon-fallback.vcard-img-object{width:66px!important;height:66px!important;max-width:66px!important;max-height:66px!important;}
  .vcard-info{grid-template-columns:minmax(0,1fr) 104px!important;}
  .vcard-plate-stack{width:104px!important;min-width:104px!important;max-width:104px!important;}
}

/* ============================================================
   v2.7.4: Kachelkopf wieder sauber und stabil
   - Kennzeichen wieder oben rechts
   - interne Nummer direkt darunter
   - Textbereich links bleibt ruhig und kollidiert nicht mit dem Kennzeichen
   ============================================================ */
.vehicle-grid .vcard{
  min-height:132px!important;
}
.vehicle-grid .vcard-head{
  display:flex!important;
  align-items:flex-start!important;
  min-height:96px!important;
  padding:.66rem .72rem .52rem .88rem!important;
  gap:.70rem!important;
  box-sizing:border-box!important;
}
.vehicle-grid .vcard-img{
  flex:0 0 72px!important;
  width:72px!important;
  min-width:72px!important;
  height:72px!important;
  align-self:flex-start!important;
}
.vehicle-grid .vcard-img-object,
.vehicle-grid .trailer-card-icon-fallback.vcard-img-object,
.vehicle-grid .vcard-img .vehicle-image-wrap{
  width:72px!important;
  height:72px!important;
  max-width:72px!important;
  max-height:72px!important;
}
.vehicle-grid .vcard-info{
  position:relative!important;
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  min-height:72px!important;
  padding:0!important;
  overflow:hidden!important;
}
.vehicle-grid .vcard-info-top{
  display:block!important;
  min-height:22px!important;
  padding-right:124px!important;
  margin:0!important;
}
.vehicle-grid .vcard-name{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  line-height:1.15!important;
}
.vehicle-grid .vcard-plate-stack{
  position:absolute!important;
  top:0!important;
  right:0!important;
  z-index:2!important;
  width:116px!important;
  min-width:116px!important;
  max-width:116px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:4px!important;
  margin:0!important;
  padding:0!important;
}
.vehicle-grid .vcard-plate-stack .plate-unified,
.vehicle-grid .vcard-plate-stack .dashboard-plate-mini,
.vehicle-grid .vcard-plate-stack .dashboard-plate-mini.plate-unified{
  width:116px!important;
  min-width:116px!important;
  max-width:116px!important;
  height:23px!important;
  flex:0 0 23px!important;
  margin:0!important;
}
.vehicle-grid .vcard-plate-stack .plate-unified-svg,
.vehicle-grid .vcard-plate-stack .dashboard-license-svg,
.vehicle-grid .vcard-plate-stack .dashboard-license-svg.plate-unified-svg{
  width:116px!important;
  height:23px!important;
  max-width:116px!important;
}
.vehicle-grid .vcard-internal-top{
  display:inline-flex!important;
  width:auto!important;
  max-width:116px!important;
  align-self:flex-end!important;
  margin:0!important;
  padding:.16rem .36rem!important;
  line-height:1!important;
  font-size:.62rem!important;
  white-space:nowrap!important;
}
.vehicle-grid .vcard-chips-row{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:.34rem!important;
  min-width:0!important;
  max-width:100%!important;
  margin:.48rem 0 0 0!important;
  padding-right:68px!important;
  overflow:hidden!important;
}
.vehicle-grid .vcard-chips-row .reserve-vehicle-chip{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
.vehicle-grid .vcard-chips-row .vcard-model-chip{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:156px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.vehicle-grid .vcard-trailer-row{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  max-width:100%!important;
  margin:.46rem 0 0 0!important;
  gap:.34rem!important;
  overflow:hidden!important;
}
.vehicle-grid .vcard-trailer-row > span:last-child{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vehicle-grid .vcard-statusbar{
  min-height:34px!important;
  padding:.42rem .72rem .42rem .88rem!important;
}
@media (max-width:720px){
  .vehicle-grid .vcard-head{min-height:94px!important;padding:.64rem .66rem .50rem .82rem!important;gap:.62rem!important;}
  .vehicle-grid .vcard-img,
  .vehicle-grid .vcard-img-object,
  .vehicle-grid .trailer-card-icon-fallback.vcard-img-object,
  .vehicle-grid .vcard-img .vehicle-image-wrap{width:68px!important;min-width:68px!important;max-width:68px!important;height:68px!important;max-height:68px!important;flex-basis:68px!important;}
  .vehicle-grid .vcard-info-top{padding-right:116px!important;}
  .vehicle-grid .vcard-plate-stack{width:110px!important;min-width:110px!important;max-width:110px!important;}
  .vehicle-grid .vcard-plate-stack .plate-unified,
  .vehicle-grid .vcard-plate-stack .dashboard-plate-mini,
  .vehicle-grid .vcard-plate-stack .dashboard-plate-mini.plate-unified{width:110px!important;min-width:110px!important;max-width:110px!important;height:22px!important;flex-basis:22px!important;}
  .vehicle-grid .vcard-plate-stack .plate-unified-svg,
  .vehicle-grid .vcard-plate-stack .dashboard-license-svg,
  .vehicle-grid .vcard-plate-stack .dashboard-license-svg.plate-unified-svg{width:110px!important;height:22px!important;max-width:110px!important;}
  .vehicle-grid .vcard-chips-row{padding-right:60px!important;}
  .vehicle-grid .vcard-chips-row .vcard-model-chip{max-width:140px!important;}
}
@media (max-width:460px){
  .vehicle-grid .vcard-head{min-height:92px!important;padding:.62rem .62rem .48rem .78rem!important;gap:.56rem!important;}
  .vehicle-grid .vcard-img,
  .vehicle-grid .vcard-img-object,
  .vehicle-grid .trailer-card-icon-fallback.vcard-img-object,
  .vehicle-grid .vcard-img .vehicle-image-wrap{width:64px!important;min-width:64px!important;max-width:64px!important;height:64px!important;max-height:64px!important;flex-basis:64px!important;}
  .vehicle-grid .vcard-info-top{padding-right:108px!important;}
  .vehicle-grid .vcard-plate-stack{width:104px!important;min-width:104px!important;max-width:104px!important;}
  .vehicle-grid .vcard-plate-stack .plate-unified,
  .vehicle-grid .vcard-plate-stack .dashboard-plate-mini,
  .vehicle-grid .vcard-plate-stack .dashboard-plate-mini.plate-unified{width:104px!important;min-width:104px!important;max-width:104px!important;height:21px!important;flex-basis:21px!important;}
  .vehicle-grid .vcard-plate-stack .plate-unified-svg,
  .vehicle-grid .vcard-plate-stack .dashboard-license-svg,
  .vehicle-grid .vcard-plate-stack .dashboard-license-svg.plate-unified-svg{width:104px!important;height:21px!important;max-width:104px!important;}
  .vehicle-grid .vcard-chips-row{padding-right:54px!important;}
  .vehicle-grid .vcard-chips-row .vcard-model-chip{max-width:126px!important;}
}

/* v2.7.5: Kachel-Bubbles wieder kompakt und interne Nummer in derselben Zeile */
.vehicle-grid .vcard-plate-stack{
  gap:0!important;
}
.vehicle-grid .vcard-internal-top{
  display:none!important;
}
.vehicle-grid .vcard-chips-row,
.vehicle-grid .vehicle-chip-row--unified{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:.34rem!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  margin:.44rem 0 0 0!important;
  padding-right:0!important;
  overflow:hidden!important;
}
.vehicle-grid .vcard-chips-row .reserve-vehicle-chip,
.vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:auto!important;
  white-space:nowrap!important;
}
.vehicle-grid .vcard-chips-row .vcard-model-chip,
.vehicle-grid .vehicle-chip-row--unified .vcard-model-chip,
.vehicle-grid .vcard-chips-row .reserve-vehicle-chip--1,
.vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--1{
  flex:0 1 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:158px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vehicle-grid .vcard-internal-chip,
.vehicle-grid .vcard-chips-row .reserve-vehicle-chip--2.vcard-internal-chip,
.vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--2.vcard-internal-chip{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:auto!important;
  max-width:74px!important;
  padding:.18rem .42rem!important;
  line-height:1.15!important;
  font-size:.66rem!important;
  white-space:nowrap!important;
}
@media (max-width:720px){
  .vehicle-grid .vcard-chips-row .vcard-model-chip,
  .vehicle-grid .vehicle-chip-row--unified .vcard-model-chip,
  .vehicle-grid .vcard-chips-row .reserve-vehicle-chip--1,
  .vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--1{max-width:136px!important;}
}
@media (max-width:460px){
  .vehicle-grid .vcard-chips-row .vcard-model-chip,
  .vehicle-grid .vehicle-chip-row--unified .vcard-model-chip,
  .vehicle-grid .vcard-chips-row .reserve-vehicle-chip--1,
  .vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--1{max-width:112px!important;}
}

/* ============================================================
   v2.7.6: Bubble-Zeile final repariert
   - interne Nummer bleibt wieder sichtbar und sitzt in derselben Zeile
   - Hersteller/Modell wird nur so breit wie nötig, aber nie so breit,
     dass die interne Nummer verdrängt wird
   ============================================================ */
.vehicle-grid .vcard-chips-row,
.vehicle-grid .vehicle-chip-row--unified{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:.34rem!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.vehicle-grid .vcard-chips-row .reserve-vehicle-chip--0,
.vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--0{
  flex:0 0 auto!important;
}
.vehicle-grid .vcard-chips-row .reserve-vehicle-chip--1,
.vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--1,
.vehicle-grid .vcard-chips-row .vcard-model-chip,
.vehicle-grid .vehicle-chip-row--unified .vcard-model-chip{
  flex:0 1 auto!important;
  width:max-content!important;
  min-width:0!important;
  max-width:calc(100% - 128px)!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.vehicle-grid .vcard-chips-row .reserve-vehicle-chip--2.vcard-internal-chip,
.vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--2.vcard-internal-chip,
.vehicle-grid .vcard-internal-chip{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:auto!important;
  max-width:74px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:.18rem .42rem!important;
  line-height:1.15!important;
  font-size:.66rem!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media (max-width:720px){
  .vehicle-grid .vcard-chips-row .reserve-vehicle-chip--1,
  .vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--1,
  .vehicle-grid .vcard-chips-row .vcard-model-chip,
  .vehicle-grid .vehicle-chip-row--unified .vcard-model-chip{max-width:calc(100% - 118px)!important;}
}
@media (max-width:460px){
  .vehicle-grid .vcard-chips-row .reserve-vehicle-chip--1,
  .vehicle-grid .vehicle-chip-row--unified .reserve-vehicle-chip--1,
  .vehicle-grid .vcard-chips-row .vcard-model-chip,
  .vehicle-grid .vehicle-chip-row--unified .vcard-model-chip{max-width:calc(100% - 112px)!important;}
}


/* v2.7.7 Kennzeichen-Schärfe und EU-Balken */
.dashboard-license-svg.plate-unified-svg,
.plate-unified-svg{
  shape-rendering: geometricPrecision;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  backface-visibility: hidden;
  transform: translateZ(0);
}


/* v2.8.0 Ampel für Zugfahrzeug/Anhänger-Kombinationen */
.trailer-combo-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center !important;
  gap: .7rem !important;
}
.trailer-combo-card > span { min-width: 0; }
.trailer-combo-card em {
  font-style: normal;
  font-size: .78rem;
  font-weight: 800;
  border-radius: 999px;
  padding: .34rem .55rem;
  white-space: nowrap;
}
.trailer-combo-card--ok em { color: #35f39b; background: rgba(34,197,94,.12); border: 1px solid rgba(34,197,94,.25); }
.trailer-combo-card--warn em { color: #ffd166; background: rgba(245,158,11,.13); border: 1px solid rgba(245,158,11,.28); }
.trailer-combo-card--bad em { color: #ff8b8b; background: rgba(239,68,68,.14); border: 1px solid rgba(239,68,68,.32); }
.trailer-vehicle-select-item:disabled { opacity: .72; cursor: not-allowed; }
.detail-trailer-chip--ok { border-color: rgba(34,197,94,.28) !important; }
.detail-trailer-chip--warn { border-color: rgba(245,158,11,.34) !important; }
.detail-trailer-chip--bad { border-color: rgba(239,68,68,.34) !important; }
@media (max-width: 640px) {
  .trailer-combo-card { grid-template-columns: 1fr !important; align-items: start !important; }
  .trailer-combo-card em { justify-self: start; white-space: normal; }
}


/* v2.8.8: Detailfenster platzsparend und sauber gegliedert */
.detail-info-note{
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:.75rem;
  align-items:start;
  padding:.65rem .75rem;
  border:1px solid var(--border);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}
.detail-info-note span{color:var(--text-muted);font-size:.84rem;}
.detail-info-note strong{color:var(--text);font-weight:650;line-height:1.35;}
.detail-info-note--permanent{background:rgba(59,130,246,.08);border-color:rgba(96,165,250,.20);}
.detail-tech-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(185px,1fr));
  gap:.55rem;
}
.detail-tech-card{
  min-width:0;
  border:1px solid var(--border);
  border-radius:12px;
  background:rgba(255,255,255,.025);
  padding:.62rem .7rem;
}
.detail-tech-card span{
  display:block;
  color:var(--text-muted);
  font-size:.78rem;
  line-height:1.2;
  margin-bottom:.22rem;
}
.detail-tech-card span small{
  display:block;
  margin-top:.12rem;
  color:var(--text-soft, var(--text-muted));
  font-size:.72rem;
  font-weight:600;
}
.detail-tech-card strong{
  display:block;
  color:var(--text);
  font-size:.93rem;
  font-weight:800;
  line-height:1.15;
  white-space:nowrap;
}
.detail-info-lines > .detail-tech-grid,
.detail-info-lines > .detail-info-note{
  grid-column:1 / -1;
}
@media (max-width:760px){
  .detail-info-note{grid-template-columns:1fr;gap:.2rem;}
  .detail-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .detail-tech-card{padding:.55rem .6rem;}
}
@media (max-width:430px){.detail-tech-grid{grid-template-columns:1fr;}}

/* v2.8.9: Detailfenster deutlich kompakter */
.detail-info-lines{gap:.55rem !important;}
.detail-info-note{
  display:flex !important;
  align-items:center !important;
  gap:.7rem !important;
  padding:.55rem .7rem !important;
  border-radius:10px !important;
}
.detail-info-note span{flex:0 0 auto;font-size:.78rem !important;}
.detail-info-note strong{font-size:.86rem !important;line-height:1.25 !important;}
.detail-tech-compact{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:.42rem .6rem !important;
  padding:.2rem 0 0 !important;
}
.detail-tech-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:.75rem !important;
  min-width:0 !important;
  padding:.46rem .62rem !important;
  border:1px solid var(--border) !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.022) !important;
  font-size:.84rem !important;
}
.detail-tech-row span{min-width:0;color:var(--text-muted) !important;line-height:1.15 !important;}
.detail-tech-row span b{display:block;font-weight:650;color:var(--text-muted) !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.detail-tech-row span small{display:block;margin-top:.08rem;font-size:.68rem;font-weight:700;color:var(--text-soft,var(--text-muted)) !important;white-space:nowrap;}
.detail-tech-row strong{flex:0 0 auto;color:var(--text) !important;font-weight:850 !important;font-size:.9rem !important;white-space:nowrap !important;}
@media (min-width:1120px){.detail-tech-compact{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}
@media (max-width:760px){
  .detail-info-note{align-items:flex-start !important;flex-direction:column !important;gap:.15rem !important;}
  .detail-tech-compact{grid-template-columns:1fr !important;}
}

/* v2.9.0: Detailfenster modern, platzsparend und mobil sauber */
.detail-panel-head--modern{
  margin-bottom:.75rem !important;
}
.detail-info-lines--modern{
  display:flex !important;
  flex-direction:column !important;
  gap:.85rem !important;
}
.detail-info-note--modern{
  display:flex !important;
  align-items:center !important;
  gap:.8rem !important;
  width:100% !important;
  padding:.72rem .9rem !important;
  border-radius:14px !important;
  border:1px solid rgba(96,165,250,.22) !important;
  background:linear-gradient(135deg, rgba(37,99,235,.12), rgba(15,23,42,.18)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.detail-info-note--modern span{
  flex:0 0 auto !important;
  color:#69adff !important;
  font-size:.9rem !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
.detail-info-note--modern strong{
  color:var(--text) !important;
  font-size:.94rem !important;
  line-height:1.35 !important;
  font-weight:750 !important;
}
.detail-tech-modern{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:0 2rem !important;
  padding:.15rem 0 .05rem !important;
}
.detail-tech-modern > div{
  min-width:0 !important;
}
.detail-tech-modern > div + div{
  border-left:1px solid rgba(148,163,184,.22) !important;
  padding-left:2rem !important;
}
.detail-tech-modern-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:1rem !important;
  min-height:34px !important;
  padding:.42rem 0 !important;
  border:0 !important;
  border-bottom:1px solid rgba(148,163,184,.18) !important;
  background:transparent !important;
}
.detail-tech-modern-row:last-child{
  border-bottom:0 !important;
}
.detail-tech-modern-row span{
  min-width:0 !important;
  color:rgba(226,232,240,.82) !important;
  font-size:.93rem !important;
  line-height:1.25 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.detail-tech-modern-row strong{
  color:var(--text) !important;
  font-size:.96rem !important;
  font-weight:850 !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  text-align:right !important;
}
@media (max-width:760px){
  .detail-info-note--modern{
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:.32rem !important;
    padding:.7rem .8rem !important;
  }
  .detail-info-note--modern span{
    font-size:.84rem !important;
  }
  .detail-info-note--modern strong{
    font-size:.9rem !important;
  }
  .detail-tech-modern{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }
  .detail-tech-modern > div + div{
    border-left:0 !important;
    padding-left:0 !important;
  }
  .detail-tech-modern-row{
    min-height:36px !important;
    gap:.8rem !important;
    padding:.48rem 0 !important;
  }
  .detail-tech-modern-row span{
    font-size:.86rem !important;
    white-space:normal !important;
  }
  .detail-tech-modern-row strong{
    font-size:.9rem !important;
  }
}
@media (max-width:420px){
  .detail-tech-modern-row{
    grid-template-columns:1fr !important;
    gap:.15rem !important;
    align-items:start !important;
  }
  .detail-tech-modern-row strong{
    text-align:left !important;
  }
}

/* ===== v2.9.1 Einheitlicher Detail-Feinschliff ===== */
.modal--vehicle-detail-v3 .modal-header--vehicle-card,
.modal--trailer-detail .modal-header--vehicle-card,
.modal--trailer-vehicle-select .modal-header--vehicle-card{
  border-bottom:1px solid rgba(148,163,184,.16) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.18) !important;
}
.detail-modal-heading{
  letter-spacing:.01em !important;
}
.detail-panel-v4,
.detail-status-card{
  border-color:rgba(148,163,184,.20) !important;
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012)) !important;
}
.detail-panel-head strong,
.detail-card-title strong{
  display:inline-flex !important;
  align-items:center !important;
  gap:.44rem !important;
}
.detail-panel-head{
  padding-bottom:.58rem !important;
  border-bottom:1px solid rgba(148,163,184,.14) !important;
  margin-bottom:.74rem !important;
}
.detail-status-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.55rem;
}
.detail-status-strip--trailer{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.detail-status-strip-chip{
  display:flex;
  align-items:center;
  gap:.48rem;
  min-width:0;
  padding:.62rem .72rem;
  border:1px solid rgba(148,163,184,.18);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.detail-status-strip-chip em{
  flex:0 0 auto;
  font-style:normal;
  font-size:1rem;
}
.detail-status-strip-chip span{
  flex:0 0 auto;
  color:var(--text-2);
  font-size:.74rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.detail-status-strip-chip strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--text);
  font-size:.88rem;
  font-weight:850;
  margin-left:auto;
  text-align:right;
}
.detail-status-strip-chip--ok{
  border-color:rgba(16,214,122,.28);
  background:linear-gradient(135deg, rgba(16,214,122,.13), rgba(16,214,122,.035));
}
.detail-status-strip-chip--warn{
  border-color:rgba(245,158,11,.34);
  background:linear-gradient(135deg, rgba(245,158,11,.14), rgba(245,158,11,.04));
}
.detail-status-strip-chip--bad{
  border-color:rgba(239,68,68,.34);
  background:linear-gradient(135deg, rgba(239,68,68,.14), rgba(239,68,68,.04));
}
.detail-info-note--modern{
  border-left:3px solid rgba(96,165,250,.7) !important;
}
.detail-tech-modern{
  gap:0 1.4rem !important;
}
.detail-tech-modern > div + div{
  padding-left:1.4rem !important;
}
.detail-tech-modern-row{
  min-height:31px !important;
  padding:.35rem 0 !important;
}
.detail-tech-modern-row span{
  font-size:.88rem !important;
}
.detail-tech-modern-row strong{
  font-size:.9rem !important;
}
.detail-new-res-btn,
.detail-login-note .btn-primary,
.trailer-vehicle-select-item,
.trailer-vehicle-chip,
.detail-quick-grid button{
  min-height:44px !important;
}
.modal--vehicle-detail-v3 .btn-primary,
.modal--trailer-detail .btn-primary{
  border-radius:14px !important;
}
.detail-link-btn{
  border:1px solid rgba(148,163,184,.18) !important;
  border-radius:999px !important;
  padding:.32rem .65rem !important;
  background:rgba(255,255,255,.035) !important;
}
[data-theme="light"] .detail-panel-v4,
[data-theme="light"] .detail-status-card,
[data-theme="light"] .detail-status-strip-chip{
  background:linear-gradient(180deg,#fff,#f8fafc) !important;
  border-color:rgba(15,23,42,.12) !important;
}
[data-theme="light"] .detail-tech-modern-row{
  border-bottom-color:rgba(15,23,42,.12) !important;
}
[data-theme="light"] .detail-tech-modern-row span{color:#475569 !important;}
[data-theme="light"] .detail-tech-modern-row strong{color:#0f172a !important;}
@media (max-width: 900px){
  .detail-status-strip,
  .detail-status-strip--trailer{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 640px){
  .vehicle-detail-body-v4{gap:.72rem !important;}
  .detail-status-strip,
  .detail-status-strip--trailer{
    grid-template-columns:1fr;
    gap:.42rem;
  }
  .detail-status-strip-chip{
    padding:.54rem .62rem;
    border-radius:12px;
  }
  .detail-status-strip-chip span{font-size:.68rem;}
  .detail-status-strip-chip strong{font-size:.84rem;}
  .detail-panel-head{font-size:.93rem !important;margin-bottom:.55rem !important;padding-bottom:.48rem !important;}
  .detail-info-note--modern{padding:.62rem .72rem !important;}
  .detail-tech-modern-row{min-height:34px !important;padding:.4rem 0 !important;}
}
@media (max-width:420px){
  .detail-status-strip-chip{
    display:grid;
    grid-template-columns:auto 1fr auto;
  }
  .detail-status-strip-chip strong{
    text-align:right !important;
  }
}

/* ===== v2.9.2 Detailfenster kompakt wie Mockup ===== */
.modal--vehicle-detail-v3 .detail-status-strip,
.modal--trailer-detail .detail-status-strip{
  display:none !important;
}
.modal--vehicle-detail-v3 .detail-panel-v4,
.modal--trailer-detail .detail-panel-v4{
  border-radius:18px !important;
  border:1px solid rgba(148,163,184,.18) !important;
  background:linear-gradient(180deg, rgba(15,23,42,.72), rgba(11,18,32,.64)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.modal--vehicle-detail-v3 .detail-panel-head,
.modal--trailer-detail .detail-panel-head{
  border-bottom:0 !important;
  padding-bottom:0 !important;
  margin-bottom:.72rem !important;
}
.modal--vehicle-detail-v3 .detail-panel-head strong,
.modal--trailer-detail .detail-panel-head strong{
  font-size:1rem !important;
  gap:.5rem !important;
}
.detail-info-lines--modern{
  gap:.8rem !important;
}
.detail-info-note--modern{
  border-radius:16px !important;
  padding:.82rem 1rem !important;
  border:1px solid rgba(59,130,246,.38) !important;
  border-left:1px solid rgba(59,130,246,.38) !important;
  background:linear-gradient(135deg, rgba(37,99,235,.18), rgba(14,47,95,.16)) !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  gap:.7rem !important;
}
.detail-info-note--modern span{
  color:#62a8ff !important;
  font-size:.92rem !important;
}
.detail-info-note--modern strong{
  font-size:.94rem !important;
  font-weight:700 !important;
}
.detail-tech-modern{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:0 2.2rem !important;
  padding:.1rem 0 !important;
}
.detail-tech-modern > div + div{
  border-left:1px solid rgba(148,163,184,.20) !important;
  padding-left:2.2rem !important;
}
.detail-tech-modern-row{
  min-height:33px !important;
  padding:.39rem 0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:1.1rem !important;
  border-bottom:1px solid rgba(148,163,184,.16) !important;
}
.detail-tech-modern-row span{
  color:rgba(226,232,240,.78) !important;
  font-size:.92rem !important;
  font-weight:500 !important;
}
.detail-tech-modern-row strong{
  color:#f8fafc !important;
  font-size:.95rem !important;
  font-weight:850 !important;
}
.detail-fallback-vehicle-icon,
.detail-fallback-vehicle-icon svg{
  width:34px !important;
  height:34px !important;
  display:block !important;
  fill:none !important;
  stroke:#ff4b55 !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.detail-fallback-vehicle-icon circle{
  fill:none !important;
}
.detail-related-list{
  display:flex;
  flex-direction:column;
  gap:.58rem;
}
.detail-related-row{
  width:100%;
  border:1px solid rgba(148,163,184,.18);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  padding:.58rem .7rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:.75rem;
  align-items:center;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.detail-related-row:hover{
  border-color:rgba(96,165,250,.38);
  background:rgba(96,165,250,.08);
}
.detail-related-img{
  width:48px;
  height:34px;
  object-fit:cover;
  border-radius:8px;
  border:1px solid rgba(148,163,184,.18);
}
.detail-related-icon{
  width:48px;
  height:34px;
  border-radius:8px;
  display:grid;
  place-items:center;
  color:#60a5fa;
  background:rgba(59,130,246,.10);
  border:1px solid rgba(59,130,246,.22);
}
.detail-related-icon svg{width:28px;height:22px;}
.detail-related-main{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:.1rem;
}
.detail-related-main strong{
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.detail-related-main small{
  color:var(--text-muted);
  font-size:.78rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.detail-related-row em{
  justify-self:end;
  font-style:normal;
  font-weight:800;
  font-size:.84rem;
  white-space:nowrap;
}
.detail-related-row--ok em{color:#34d399;}
.detail-related-row--warn em{color:#fbbf24;}
.detail-related-row--bad em{color:#fb7185;}
[data-theme="light"] .modal--vehicle-detail-v3 .detail-panel-v4,
[data-theme="light"] .modal--trailer-detail .detail-panel-v4{
  background:linear-gradient(180deg,#fff,#f8fafc) !important;
  border-color:rgba(15,23,42,.12) !important;
}
[data-theme="light"] .detail-tech-modern-row span{color:#475569 !important;}
[data-theme="light"] .detail-tech-modern-row strong{color:#0f172a !important;}
@media (max-width:760px){
  .detail-info-note--modern{
    grid-template-columns:1fr !important;
    gap:.28rem !important;
    padding:.72rem .82rem !important;
  }
  .detail-tech-modern{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }
  .detail-tech-modern > div + div{
    border-left:0 !important;
    padding-left:0 !important;
  }
  .detail-tech-modern-row{
    min-height:34px !important;
    padding:.43rem 0 !important;
    grid-template-columns:minmax(0,1fr) auto !important;
  }
  .detail-tech-modern-row span{
    font-size:.88rem !important;
    white-space:nowrap !important;
  }
  .detail-tech-modern-row strong{
    font-size:.9rem !important;
    text-align:right !important;
  }
  .detail-related-row{
    grid-template-columns:auto minmax(0,1fr);
    gap:.65rem;
  }
  .detail-related-row em{
    grid-column:2;
    justify-self:start;
    font-size:.78rem;
  }
}
@media (max-width:420px){
  .detail-tech-modern-row{
    grid-template-columns:minmax(0,1fr) auto !important;
  }
  .detail-tech-modern-row span{
    font-size:.82rem !important;
  }
  .detail-tech-modern-row strong{
    font-size:.86rem !important;
  }
}

/* v2.9.3: Fahrzeug- und Anhänger-Zuordnungslisten vereinheitlicht */
#dm-v4-trailers.detail-related-list,
#td-vehicles.detail-trailer-list{
  display:grid !important;
  gap:.58rem !important;
}
.detail-combo-row.trailer-combo-card,
#td-vehicles .trailer-combo-card{
  border-radius:14px !important;
  background:rgba(255,255,255,.035) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  padding:.62rem .78rem !important;
}
.detail-combo-row.trailer-combo-card:hover,
#td-vehicles .trailer-combo-card:hover{
  border-color:rgba(96,165,250,.38) !important;
  background:rgba(96,165,250,.08) !important;
}
.detail-combo-row.trailer-combo-card > span,
#td-vehicles .trailer-combo-card > span{
  display:flex !important;
  flex-direction:column !important;
  gap:.16rem !important;
  min-width:0 !important;
}
.detail-combo-row.trailer-combo-card strong,
#td-vehicles .trailer-combo-card strong{
  font-weight:800 !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.detail-combo-row.trailer-combo-card small,
#td-vehicles .trailer-combo-card small{
  display:block !important;
  margin-top:.08rem !important;
  color:var(--text-2) !important;
  font-size:.78rem !important;
  line-height:1.18 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
/* Abstand zwischen Fahrzeugname und Kennzeichen/Meta erzwingen */
#td-vehicles .trailer-combo-card strong + small{
  margin-top:.16rem !important;
}
/* Kennzeichen in Fahrzeug- und Anhängerdetail gleich groß */
.modal--vehicle-detail-v3 #td-plate-chip .dashboard-license-svg,
.modal--vehicle-detail-v3 #td-plate-chip .dashboard-license-svg.plate-unified-svg,
.modal--trailer-detail #td-plate-chip .dashboard-license-svg,
.modal--trailer-detail #td-plate-chip .dashboard-license-svg.plate-unified-svg{
  width:180px !important;
  height:36px !important;
  max-width:180px !important;
}
.modal--vehicle-detail-v3 #td-plate-chip.dashboard-plate-mini,
.modal--vehicle-detail-v3 #td-plate-chip .dashboard-plate-mini,
.modal--vehicle-detail-v3 #td-plate-chip .plate-unified,
.modal--trailer-detail #td-plate-chip.dashboard-plate-mini,
.modal--trailer-detail #td-plate-chip .dashboard-plate-mini,
.modal--trailer-detail #td-plate-chip .plate-unified{
  width:180px !important;
  min-width:180px !important;
  height:36px !important;
  flex:0 0 180px !important;
}
@media (max-width:760px){
  .modal--vehicle-detail-v3 #td-plate-chip .dashboard-license-svg,
  .modal--vehicle-detail-v3 #td-plate-chip .dashboard-license-svg.plate-unified-svg,
  .modal--trailer-detail #td-plate-chip .dashboard-license-svg,
  .modal--trailer-detail #td-plate-chip .dashboard-license-svg.plate-unified-svg{
    width:112px !important;
    height:23px !important;
    max-width:112px !important;
  }
  .modal--vehicle-detail-v3 #td-plate-chip.dashboard-plate-mini,
  .modal--vehicle-detail-v3 #td-plate-chip .dashboard-plate-mini,
  .modal--vehicle-detail-v3 #td-plate-chip .plate-unified,
  .modal--trailer-detail #td-plate-chip.dashboard-plate-mini,
  .modal--trailer-detail #td-plate-chip .dashboard-plate-mini,
  .modal--trailer-detail #td-plate-chip .plate-unified{
    width:112px !important;
    min-width:112px !important;
    height:23px !important;
    flex:0 0 112px !important;
  }
  .detail-combo-row.trailer-combo-card,
  #td-vehicles .trailer-combo-card{
    grid-template-columns:1fr !important;
    gap:.42rem !important;
    padding:.6rem .7rem !important;
  }
  .detail-combo-row.trailer-combo-card em,
  #td-vehicles .trailer-combo-card em{
    justify-self:start !important;
    white-space:normal !important;
  }
}

/* v2.9.4: Detail-Zuordnungslisten wirklich einheitlich */
#dm-v4-trailers.detail-related-list,
#td-vehicles.detail-trailer-list {
  display: flex !important;
  flex-direction: column !important;
  gap: .58rem !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row,
#td-vehicles .trailer-combo-card.detail-combo-row,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
  width: 100% !important;
  min-height: 54px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: .62rem .78rem !important;
  border-radius: 14px !important;
  border: 1px solid rgba(148,163,184,.18) !important;
  background: rgba(255,255,255,.035) !important;
  color: var(--text) !important;
  text-align: left !important;
  cursor: pointer !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row:hover,
#td-vehicles .trailer-combo-card.detail-combo-row:hover,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row:hover {
  border-color: rgba(96,165,250,.38) !important;
  background: rgba(96,165,250,.08) !important;
}
.detail-combo-main {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: .22rem !important;
  line-height: 1.15 !important;
}
.detail-combo-main strong {
  display: block !important;
  font-size: .92rem !important;
  font-weight: 850 !important;
  line-height: 1.18 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.detail-combo-main small {
  display: block !important;
  margin-top: 0 !important;
  color: var(--text-2) !important;
  font-size: .78rem !important;
  font-weight: 650 !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  letter-spacing: .01em !important;
}
.detail-combo-status,
#dm-v4-trailers .trailer-combo-card.detail-combo-row em,
#td-vehicles .trailer-combo-card.detail-combo-row em,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row em {
  justify-self: end !important;
  align-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: min(320px, 42vw) !important;
  border-radius: 999px !important;
  padding: .38rem .62rem !important;
  font-style: normal !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.trailer-combo-card--ok .detail-combo-status,
.trailer-combo-card--ok em {
  color: #bbf7d0 !important;
  background: rgba(34,197,94,.14) !important;
  border: 1px solid rgba(34,197,94,.30) !important;
}
.trailer-combo-card--warn .detail-combo-status,
.trailer-combo-card--warn em {
  color: #fde68a !important;
  background: rgba(245,158,11,.16) !important;
  border: 1px solid rgba(245,158,11,.35) !important;
}
.trailer-combo-card--bad .detail-combo-status,
.trailer-combo-card--bad em {
  color: #fecaca !important;
  background: rgba(239,68,68,.16) !important;
  border: 1px solid rgba(239,68,68,.35) !important;
}
@media (max-width: 760px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    grid-template-columns: 1fr !important;
    gap: .45rem !important;
    min-height: 0 !important;
    padding: .64rem .72rem !important;
  }
  .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row em,
  #td-vehicles .trailer-combo-card.detail-combo-row em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row em {
    justify-self: start !important;
    max-width: 100% !important;
    white-space: normal !important;
    text-align: left !important;
  }
}

/* v2.9.5: Detail-Zuordnungslisten mit Bild, Statuspunkt und identischem Aufbau */
.detail-combo-entity {
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: .72rem !important;
}
.detail-combo-thumb {
  width: 52px !important;
  height: 38px !important;
  border-radius: 9px !important;
  overflow: hidden !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(15,23,42,.72) !important;
  border: 1px solid rgba(148,163,184,.20) !important;
  color: #ff4b55 !important;
  flex: 0 0 auto !important;
}
.detail-combo-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
.detail-combo-thumb svg {
  width: 24px !important;
  height: 24px !important;
  stroke: currentColor !important;
}
.detail-combo-status i,
#dm-v4-trailers .trailer-combo-card.detail-combo-row em i,
#td-vehicles .trailer-combo-card.detail-combo-row em i,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row em i {
  width: .56rem !important;
  height: .56rem !important;
  border-radius: 999px !important;
  display: inline-block !important;
  margin-right: .42rem !important;
  flex: 0 0 auto !important;
  background: currentColor !important;
  box-shadow: 0 0 10px currentColor !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row,
#td-vehicles .trailer-combo-card.detail-combo-row,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
  min-height: 62px !important;
}
@media (max-width: 760px) {
  .detail-combo-entity {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: .62rem !important;
  }
  .detail-combo-thumb {
    width: 48px !important;
    height: 36px !important;
  }
}

/* v2.9.6: Detail-Zuordnungslisten mit einheitlichen Spalten: Bild | Kennzeichen | Name | Status */
#dm-v4-trailers .trailer-combo-card.detail-combo-row,
#td-vehicles .trailer-combo-card.detail-combo-row,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
  grid-template-columns: minmax(0, 1fr) auto !important;
}
.detail-combo-entity {
  grid-template-columns: 58px 132px minmax(0, 1fr) !important;
  gap: .82rem !important;
  align-items: center !important;
}
.detail-combo-thumb {
  width: 58px !important;
  height: 42px !important;
}
.detail-combo-plate {
  min-width: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}
.detail-combo-plate .dashboard-plate-mini {
  transform-origin: left center !important;
}
.detail-combo-plate--empty {
  color: var(--text-3) !important;
  font-weight: 800 !important;
}
.detail-combo-main small {
  color: rgba(203,213,225,.72) !important;
}
@media (max-width: 760px) {
  .detail-combo-entity {
    grid-template-columns: 48px minmax(96px, 124px) minmax(0, 1fr) !important;
    gap: .55rem !important;
  }
  .detail-combo-thumb {
    width: 48px !important;
    height: 36px !important;
  }
  .detail-combo-plate .dashboard-plate-mini {
    transform: scale(.82) !important;
  }
  .detail-combo-main strong { font-size: .86rem !important; }
  .detail-combo-main small { font-size: .74rem !important; }
}
@media (max-width: 520px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    grid-template-columns: 1fr !important;
  }
  .detail-combo-entity {
    grid-template-columns: 46px minmax(92px, 118px) minmax(0, 1fr) !important;
  }
  .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row em,
  #td-vehicles .trailer-combo-card.detail-combo-row em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row em {
    justify-self: end !important;
    margin-left: calc(46px + 92px + 1.1rem) !important;
  }
}


/* v2.9.7: Detail-Zuordnungslisten final: Bild | Kennzeichen | Name | Status, linksbündig und ohne bunte Überschrift-Icons */
#dm-v4-trailers.detail-related-list,
#td-vehicles.detail-trailer-list{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  overflow:hidden !important;
  border-radius:14px !important;
  border:1px solid rgba(148,163,184,.18) !important;
  background:rgba(15,23,42,.22) !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row,
#td-vehicles .trailer-combo-card.detail-combo-row,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row{
  width:100% !important;
  min-height:68px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  justify-items:stretch !important;
  gap:1rem !important;
  padding:.58rem .72rem !important;
  border:0 !important;
  border-bottom:1px solid rgba(148,163,184,.15) !important;
  border-radius:0 !important;
  background:transparent !important;
  text-align:left !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row:last-child,
#td-vehicles .trailer-combo-card.detail-combo-row:last-child,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row:last-child{
  border-bottom:0 !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row:hover,
#td-vehicles .trailer-combo-card.detail-combo-row:hover,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row:hover{
  background:rgba(96,165,250,.065) !important;
}
#dm-v4-trailers .detail-combo-entity,
#td-vehicles .detail-combo-entity,
.trailer-vehicle-select-list .detail-combo-entity{
  width:100% !important;
  min-width:0 !important;
  justify-self:stretch !important;
  display:grid !important;
  grid-template-columns:64px 164px minmax(0,1fr) !important;
  align-items:center !important;
  justify-items:start !important;
  gap:1rem !important;
}
#dm-v4-trailers .detail-combo-thumb,
#td-vehicles .detail-combo-thumb,
.trailer-vehicle-select-list .detail-combo-thumb{
  width:64px !important;
  height:46px !important;
  border-radius:9px !important;
  justify-self:start !important;
}
#dm-v4-trailers .detail-combo-plate,
#td-vehicles .detail-combo-plate,
.trailer-vehicle-select-list .detail-combo-plate{
  width:164px !important;
  min-width:164px !important;
  max-width:164px !important;
  overflow:hidden !important;
  justify-self:start !important;
  display:flex !important;
  align-items:center !important;
}
#dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
#td-vehicles .detail-combo-plate .dashboard-license-svg,
.trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg{
  width:150px !important;
  height:auto !important;
  max-width:150px !important;
}
#dm-v4-trailers .detail-combo-main,
#td-vehicles .detail-combo-main,
.trailer-vehicle-select-list .detail-combo-main{
  justify-self:start !important;
  align-self:center !important;
  min-width:0 !important;
  max-width:100% !important;
}
#dm-v4-trailers .detail-combo-main strong,
#td-vehicles .detail-combo-main strong,
.trailer-vehicle-select-list .detail-combo-main strong{
  font-size:.94rem !important;
  font-weight:850 !important;
}
#dm-v4-trailers .detail-combo-main small,
#td-vehicles .detail-combo-main small,
.trailer-vehicle-select-list .detail-combo-main small{
  font-size:.78rem !important;
  color:rgba(203,213,225,.72) !important;
}
#dm-v4-trailers .detail-combo-status,
#td-vehicles .detail-combo-status,
.trailer-vehicle-select-list .detail-combo-status{
  justify-self:end !important;
  align-self:center !important;
  margin-left:0 !important;
}
.detail-panel-head strong{
  gap:.42rem !important;
}
@media (max-width:760px){
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row{
    grid-template-columns:1fr !important;
    gap:.48rem !important;
    padding:.64rem .68rem !important;
  }
  #dm-v4-trailers .detail-combo-entity,
  #td-vehicles .detail-combo-entity,
  .trailer-vehicle-select-list .detail-combo-entity{
    grid-template-columns:52px 118px minmax(0,1fr) !important;
    gap:.58rem !important;
  }
  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb{
    width:52px !important;
    height:38px !important;
  }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate{
    width:118px !important;
    min-width:118px !important;
    max-width:118px !important;
  }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg{
    width:112px !important;
    max-width:112px !important;
  }
  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status{
    justify-self:start !important;
    max-width:100% !important;
    white-space:normal !important;
  }
}
@media (max-width:430px){
  #dm-v4-trailers .detail-combo-entity,
  #td-vehicles .detail-combo-entity,
  .trailer-vehicle-select-list .detail-combo-entity{
    grid-template-columns:50px minmax(0,1fr) !important;
    grid-template-areas:"thumb main" "plate main" !important;
    align-items:center !important;
  }
  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb{ grid-area:thumb !important; }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate{ grid-area:plate !important; width:96px !important; min-width:96px !important; max-width:96px !important; }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg{ width:94px !important; max-width:94px !important; }
  #dm-v4-trailers .detail-combo-main,
  #td-vehicles .detail-combo-main,
  .trailer-vehicle-select-list .detail-combo-main{ grid-area:main !important; }
}

/* v2.9.8: Anhänger- und Fahrzeug-Detailinformationen sowie Zuordnungslisten endgültig einheitlich */
#dm-v4-trailers.detail-related-list,
#td-vehicles.detail-trailer-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(148,163,184,.18) !important;
  border-radius: 14px !important;
  background: rgba(15,23,42,.22) !important;
}

#dm-v4-trailers .trailer-combo-card.detail-combo-row,
#td-vehicles .trailer-combo-card.detail-combo-row,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
  width: 100% !important;
  min-height: 74px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 1.2rem !important;
  padding: .62rem .84rem !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(148,163,184,.14) !important;
  border-radius: 0 !important;
  background: transparent !important;
  text-align: left !important;
  color: var(--text) !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row:last-child,
#td-vehicles .trailer-combo-card.detail-combo-row:last-child,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row:last-child {
  border-bottom: 0 !important;
}
#dm-v4-trailers .trailer-combo-card.detail-combo-row:hover,
#td-vehicles .trailer-combo-card.detail-combo-row:hover,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row:hover {
  background: rgba(96,165,250,.07) !important;
}

#dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
#td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
  min-width: 0 !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 72px 176px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 1.05rem !important;
}

#dm-v4-trailers .detail-combo-thumb,
#td-vehicles .detail-combo-thumb,
.trailer-vehicle-select-list .detail-combo-thumb {
  width: 72px !important;
  height: 52px !important;
  border-radius: 9px !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(15,23,42,.78) !important;
  border: 1px solid rgba(148,163,184,.22) !important;
}
#dm-v4-trailers .detail-combo-thumb img,
#td-vehicles .detail-combo-thumb img,
.trailer-vehicle-select-list .detail-combo-thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

#dm-v4-trailers .detail-combo-plate,
#td-vehicles .detail-combo-plate,
.trailer-vehicle-select-list .detail-combo-plate {
  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}
#dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
#td-vehicles .detail-combo-plate .dashboard-license-svg,
.trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
#dm-v4-trailers .detail-combo-plate .plate-unified-svg,
#td-vehicles .detail-combo-plate .plate-unified-svg,
.trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
  width: 154px !important;
  max-width: 154px !important;
  height: auto !important;
  display: block !important;
}

#dm-v4-trailers .detail-combo-main,
#td-vehicles .detail-combo-main,
.trailer-vehicle-select-list .detail-combo-main {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: .18rem !important;
  align-items: flex-start !important;
  justify-content: center !important;
}
#dm-v4-trailers .detail-combo-main strong,
#td-vehicles .detail-combo-main strong,
.trailer-vehicle-select-list .detail-combo-main strong {
  display: block !important;
  max-width: 100% !important;
  color: var(--text) !important;
  font-size: 1rem !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
#dm-v4-trailers .detail-combo-main small,
#td-vehicles .detail-combo-main small,
.trailer-vehicle-select-list .detail-combo-main small {
  display: block !important;
  max-width: 100% !important;
  color: rgba(203,213,225,.72) !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

#dm-v4-trailers .detail-combo-status,
#td-vehicles .detail-combo-status,
.trailer-vehicle-select-list .detail-combo-status,
#dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
#td-vehicles .trailer-combo-card.detail-combo-row > em,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
  justify-self: end !important;
  align-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: .5rem !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--text) !important;
  font-style: normal !important;
  font-size: .95rem !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  max-width: 360px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
#dm-v4-trailers .detail-combo-status i,
#td-vehicles .detail-combo-status i,
.trailer-vehicle-select-list .detail-combo-status i,
#dm-v4-trailers .trailer-combo-card.detail-combo-row > em i,
#td-vehicles .trailer-combo-card.detail-combo-row > em i,
.trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em i {
  width: .62rem !important;
  height: .62rem !important;
  margin: 0 !important;
  border-radius: 999px !important;
  flex: 0 0 .62rem !important;
  display: inline-block !important;
  background: currentColor !important;
  box-shadow: 0 0 10px currentColor !important;
}
.trailer-combo-card--ok .detail-combo-status,
.trailer-combo-card--ok > em { color: #22c55e !important; }
.trailer-combo-card--warn .detail-combo-status,
.trailer-combo-card--warn > em { color: #f59e0b !important; }
.trailer-combo-card--bad .detail-combo-status,
.trailer-combo-card--bad > em { color: #ef4444 !important; }
.trailer-combo-card--ok .detail-combo-status,
.trailer-combo-card--warn .detail-combo-status,
.trailer-combo-card--bad .detail-combo-status,
.trailer-combo-card--ok > em,
.trailer-combo-card--warn > em,
.trailer-combo-card--bad > em {
  background: transparent !important;
  border: 0 !important;
}

/* Detail-Überschriften neutral halten: keine bunten Emoji-Optik in den Abschnittstiteln */
.modal--detail .detail-panel-head strong,
.modal--detail .detail-panel-head strong span[aria-hidden="true"] {
  color: var(--text) !important;
}
.modal--detail .detail-panel-head strong span[aria-hidden="true"] {
  filter: grayscale(1) brightness(1.35) !important;
  opacity: .9 !important;
}

/* Anhängerinformationen im gleichen kompakten Stil wie Fahrzeuginformationen */
.modal--trailer-detail #td-info-wrap .detail-panel-head--modern strong,
.modal--vehicle-detail-v3 #dm-v4-info-wrap .detail-panel-head--modern strong {
  font-size: 1rem !important;
  font-weight: 850 !important;
}
.modal--trailer-detail .detail-tech-modern,
.modal--vehicle-detail-v3 .detail-tech-modern {
  width: 100% !important;
}

@media (max-width: 900px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
    grid-template-columns: 62px 146px minmax(0,1fr) !important;
    gap: .75rem !important;
  }
  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb {
    width: 62px !important;
    height: 44px !important;
  }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    width: 146px !important;
    min-width: 146px !important;
    max-width: 146px !important;
  }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 136px !important;
    max-width: 136px !important;
  }
}

@media (max-width: 620px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    grid-template-columns: 1fr !important;
    gap: .5rem !important;
    min-height: 0 !important;
    padding: .7rem !important;
  }
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
    grid-template-columns: 54px 118px minmax(0,1fr) !important;
    gap: .58rem !important;
  }
  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb {
    width: 54px !important;
    height: 40px !important;
  }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
  }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 112px !important;
    max-width: 112px !important;
  }
  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
    justify-self: end !important;
    max-width: calc(100% - 54px - 118px - 1.2rem) !important;
    font-size: .82rem !important;
    white-space: normal !important;
    text-align: right !important;
  }
}

@media (max-width: 430px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
    grid-template-columns: 48px minmax(0,1fr) !important;
    grid-template-areas: "thumb main" "plate main" !important;
  }
  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb { grid-area: thumb !important; width:48px !important; height:36px !important; }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate { grid-area: plate !important; width:104px !important; min-width:104px !important; max-width:104px !important; }
  #dm-v4-trailers .detail-combo-main,
  #td-vehicles .detail-combo-main,
  .trailer-vehicle-select-list .detail-combo-main { grid-area: main !important; }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg { width:100px !important; max-width:100px !important; }
  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
    justify-self: start !important;
    margin-left: calc(48px + .58rem) !important;
    max-width: calc(100% - 48px - .58rem) !important;
    text-align: left !important;
  }
}


/* v2.9.9: Kachelnamen passen sich nur bei Bedarf automatisch an */
.vehicle-grid .vcard-name{
  font-size:var(--vcard-name-size, 1rem)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media (max-width: 430px){
  .vehicle-grid .vcard-name{font-size:var(--vcard-name-size, .9rem)!important;}
}

/* v2.10.0: Kachelnamen dürfen pro Kachel deutlich kleiner werden, bevor sie abgeschnitten werden */
.vehicle-grid .vcard-name{
  min-height:1.1em!important;
  will-change:font-size, transform;
}

/* v2.10.1: Kachelname wirklich vollständig anzeigen, nur betroffene Kachel wird per JS verkleinert */
.vehicle-grid .vcard-name{
  font-size:var(--vcard-name-size, 1rem)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  max-width:100%!important;
  min-width:0!important;
  display:block!important;
}

/* v2.10.3: Mobile Detail-Zuordnungslisten kompakt und sauber ausrichten
   Desktop bleibt unverändert. Auf Smartphones werden Bild, Kennzeichen,
   Name und Status ohne Überlappung in ein echtes 2x2 Raster gesetzt. */
@media (max-width: 620px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    display: grid !important;
    grid-template-columns: 108px minmax(0, 1fr) !important;
    grid-template-areas:
      "thumb main"
      "plate status" !important;
    column-gap: .72rem !important;
    row-gap: .34rem !important;
    align-items: center !important;
    padding: .58rem .64rem !important;
    min-height: 0 !important;
  }

  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
    display: contents !important;
  }

  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb {
    grid-area: thumb !important;
    width: 56px !important;
    height: 40px !important;
    justify-self: start !important;
    align-self: end !important;
    margin: 0 !important;
  }

  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    grid-area: plate !important;
    width: 108px !important;
    min-width: 108px !important;
    max-width: 108px !important;
    justify-self: start !important;
    align-self: start !important;
    margin: 0 !important;
  }

  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 104px !important;
    max-width: 104px !important;
    height: auto !important;
  }

  #dm-v4-trailers .detail-combo-main,
  #td-vehicles .detail-combo-main,
  .trailer-vehicle-select-list .detail-combo-main {
    grid-area: main !important;
    min-width: 0 !important;
    justify-self: stretch !important;
    align-self: end !important;
    gap: .16rem !important;
  }

  #dm-v4-trailers .detail-combo-main strong,
  #td-vehicles .detail-combo-main strong,
  .trailer-vehicle-select-list .detail-combo-main strong {
    font-size: .98rem !important;
    line-height: 1.08 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #dm-v4-trailers .detail-combo-main small,
  #td-vehicles .detail-combo-main small,
  .trailer-vehicle-select-list .detail-combo-main small {
    font-size: .74rem !important;
    line-height: 1.08 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
    grid-area: status !important;
    justify-self: start !important;
    align-self: start !important;
    margin: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-align: left !important;
    font-size: .78rem !important;
    line-height: 1.12 !important;
    gap: .36rem !important;
  }

  #dm-v4-trailers .detail-combo-status i,
  #td-vehicles .detail-combo-status i,
  .trailer-vehicle-select-list .detail-combo-status i,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em i,
  #td-vehicles .trailer-combo-card.detail-combo-row > em i,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em i {
    width: .48rem !important;
    height: .48rem !important;
    flex-basis: .48rem !important;
  }
}

@media (max-width: 380px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    grid-template-columns: 100px minmax(0, 1fr) !important;
    column-gap: .62rem !important;
  }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    width: 100px !important;
    min-width: 100px !important;
    max-width: 100px !important;
  }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 96px !important;
    max-width: 96px !important;
  }
}

/* v2.10.4: Mobile Detailansicht weiter verdichtet und näher an Desktop angeglichen
   Betrifft nur Smartphone-Breite. Desktop bleibt unverändert. */
@media (max-width: 620px) {
  .modal--vehicle-detail-v3,
  .modal--trailer-detail {
    width: calc(100vw - .75rem) !important;
  }

  .modal--vehicle-detail-v3 .modal-body,
  .modal--trailer-detail .modal-body {
    padding: .72rem !important;
    gap: .72rem !important;
  }

  .modal--vehicle-detail-v3 .detail-panel-v4,
  .modal--trailer-detail .detail-panel-v4 {
    padding: .78rem !important;
    border-radius: 16px !important;
  }

  .modal--vehicle-detail-v3 .detail-panel-head,
  .modal--trailer-detail .detail-panel-head {
    font-size: .94rem !important;
    margin-bottom: .55rem !important;
    padding-bottom: .48rem !important;
  }

  .modal--vehicle-detail-v3 .detail-tech-modern-row,
  .modal--trailer-detail .detail-tech-modern-row {
    min-height: 31px !important;
    padding: .36rem 0 !important;
  }

  .modal--vehicle-detail-v3 .detail-tech-modern-row span,
  .modal--trailer-detail .detail-tech-modern-row span {
    font-size: .82rem !important;
  }

  .modal--vehicle-detail-v3 .detail-tech-modern-row strong,
  .modal--trailer-detail .detail-tech-modern-row strong {
    font-size: .86rem !important;
  }

  #dm-v4-trailers.detail-related-list,
  #td-vehicles.detail-trailer-list {
    border-radius: 15px !important;
  }

  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) auto !important;
    grid-template-areas:
      "thumb main status"
      "plate main status" !important;
    column-gap: .66rem !important;
    row-gap: .22rem !important;
    align-items: center !important;
    padding: .58rem .62rem !important;
    min-height: 76px !important;
  }

  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
    display: contents !important;
  }

  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb {
    grid-area: thumb !important;
    width: 56px !important;
    height: 42px !important;
    justify-self: start !important;
    align-self: end !important;
    margin: 0 !important;
    border-radius: 11px !important;
  }

  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    grid-area: plate !important;
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
    justify-self: start !important;
    align-self: start !important;
    margin: 0 !important;
  }

  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 100px !important;
    max-width: 100px !important;
  }

  #dm-v4-trailers .detail-combo-main,
  #td-vehicles .detail-combo-main,
  .trailer-vehicle-select-list .detail-combo-main {
    grid-area: main !important;
    min-width: 0 !important;
    align-self: center !important;
    justify-self: stretch !important;
    gap: .13rem !important;
  }

  #dm-v4-trailers .detail-combo-main strong,
  #td-vehicles .detail-combo-main strong,
  .trailer-vehicle-select-list .detail-combo-main strong {
    font-size: .96rem !important;
    line-height: 1.08 !important;
    letter-spacing: -.01em !important;
  }

  #dm-v4-trailers .detail-combo-main small,
  #td-vehicles .detail-combo-main small,
  .trailer-vehicle-select-list .detail-combo-main small {
    font-size: .73rem !important;
    line-height: 1.1 !important;
  }

  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
    grid-area: status !important;
    justify-self: end !important;
    align-self: center !important;
    margin: 0 !important;
    max-width: 116px !important;
    min-width: 0 !important;
    padding: .32rem .46rem !important;
    border-radius: 12px !important;
    border: 1px solid currentColor !important;
    background: rgba(255,255,255,.045) !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    text-align: left !important;
    font-size: .73rem !important;
    line-height: 1.12 !important;
    font-weight: 800 !important;
    gap: .32rem !important;
  }

  #dm-v4-trailers .detail-combo-status i,
  #td-vehicles .detail-combo-status i,
  .trailer-vehicle-select-list .detail-combo-status i,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em i,
  #td-vehicles .trailer-combo-card.detail-combo-row > em i,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em i {
    width: .5rem !important;
    height: .5rem !important;
    flex: 0 0 .5rem !important;
  }

  .trailer-combo-card--ok .detail-combo-status,
  .trailer-combo-card--ok > em {
    background: rgba(34,197,94,.10) !important;
  }

  .trailer-combo-card--warn .detail-combo-status,
  .trailer-combo-card--warn > em {
    background: rgba(245,158,11,.12) !important;
  }

  .trailer-combo-card--bad .detail-combo-status,
  .trailer-combo-card--bad > em {
    background: rgba(239,68,68,.11) !important;
  }
}

@media (max-width: 390px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    grid-template-columns: 54px minmax(0, 1fr) auto !important;
    column-gap: .54rem !important;
    padding: .54rem .56rem !important;
  }

  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb {
    width: 52px !important;
    height: 39px !important;
  }

  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
  }

  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 92px !important;
    max-width: 92px !important;
  }

  #dm-v4-trailers .detail-combo-main strong,
  #td-vehicles .detail-combo-main strong,
  .trailer-vehicle-select-list .detail-combo-main strong {
    font-size: .9rem !important;
  }

  #dm-v4-trailers .detail-combo-main small,
  #td-vehicles .detail-combo-main small,
  .trailer-vehicle-select-list .detail-combo-main small {
    font-size: .68rem !important;
  }

  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
    max-width: 96px !important;
    font-size: .68rem !important;
    padding: .28rem .38rem !important;
  }
}


/* v2.10.5: Mobile Zuordnungslisten ruhiger: Status unten, interne Nummer sichtbar, Bremsinfo mobil ausblenden */
.detail-combo-internal{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:max-content !important;
  border-radius:999px !important;
  padding:.08rem .34rem !important;
  font-size:.74rem !important;
  font-weight:850 !important;
  line-height:1.1 !important;
  color:#ddd6fe !important;
  background:rgba(124,58,237,.24) !important;
  border:1px solid rgba(167,139,250,.34) !important;
}
.detail-combo-brake{
  color:rgba(203,213,225,.72) !important;
}
@media (max-width:760px){
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-areas:"entity" "status" !important;
    gap:.5rem !important;
    min-height:0 !important;
    padding:.62rem .66rem !important;
    align-items:stretch !important;
  }
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity{
    grid-area:entity !important;
    display:grid !important;
    grid-template-columns:58px minmax(0,1fr) !important;
    grid-template-areas:"thumb main" "plate main" !important;
    column-gap:.64rem !important;
    row-gap:.24rem !important;
    align-items:center !important;
    width:100% !important;
    min-width:0 !important;
  }
  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb{
    grid-area:thumb !important;
    width:56px !important;
    height:42px !important;
    border-radius:10px !important;
    align-self:end !important;
  }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate{
    grid-area:plate !important;
    width:108px !important;
    min-width:108px !important;
    max-width:108px !important;
    align-self:start !important;
    justify-self:start !important;
  }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg{
    width:104px !important;
    max-width:104px !important;
    height:auto !important;
  }
  #dm-v4-trailers .detail-combo-main,
  #td-vehicles .detail-combo-main,
  .trailer-vehicle-select-list .detail-combo-main{
    grid-area:main !important;
    min-width:0 !important;
    align-self:center !important;
    justify-self:stretch !important;
    gap:.18rem !important;
  }
  #dm-v4-trailers .detail-combo-main strong,
  #td-vehicles .detail-combo-main strong,
  .trailer-vehicle-select-list .detail-combo-main strong{
    font-size:1rem !important;
    line-height:1.12 !important;
    max-width:100% !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  #dm-v4-trailers .detail-combo-main small,
  #td-vehicles .detail-combo-main small,
  .trailer-vehicle-select-list .detail-combo-main small{
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:.28rem !important;
    font-size:.74rem !important;
    line-height:1.1 !important;
  }
  #dm-v4-trailers .detail-combo-brake,
  .trailer-vehicle-select-list .detail-combo-brake{
    display:none !important;
  }
  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em{
    grid-area:status !important;
    justify-self:stretch !important;
    align-self:stretch !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:.42rem .58rem !important;
    border-radius:10px !important;
    display:flex !important;
    justify-content:flex-start !important;
    align-items:center !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:.78rem !important;
    line-height:1.05 !important;
    background:rgba(255,255,255,.04) !important;
  }
}
@media (max-width:390px){
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row{
    padding:.58rem .58rem !important;
  }
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity{
    grid-template-columns:54px minmax(0,1fr) !important;
    column-gap:.56rem !important;
  }
  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb{
    width:52px !important;
    height:39px !important;
  }
  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate{
    width:100px !important;
    min-width:100px !important;
    max-width:100px !important;
  }
  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg{
    width:96px !important;
    max-width:96px !important;
  }
  #dm-v4-trailers .detail-combo-main strong,
  #td-vehicles .detail-combo-main strong,
  .trailer-vehicle-select-list .detail-combo-main strong{
    font-size:.94rem !important;
  }
  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em{
    font-size:.72rem !important;
  }
}

/* v2.10.6: Mobile Zuordnungskarten final ruhiger und näher an Desktop
   Ziel: Bild links, Name/Interne Nr./Kennzeichen rechts, Status als dezente Zeile unten.
   Gilt nur für Smartphone-Ansichten, Desktop bleibt unverändert. */
@media (max-width: 760px) {
  #dm-v4-trailers.detail-related-list,
  #td-vehicles.detail-trailer-list,
  .trailer-vehicle-select-list {
    gap: .55rem !important;
    border: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    width: 100% !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "entity"
      "status" !important;
    gap: .5rem !important;
    padding: .66rem !important;
    border: 1px solid rgba(148,163,184,.20) !important;
    border-radius: 15px !important;
    background: rgba(15,23,42,.40) !important;
  }

  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
    grid-area: entity !important;
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) !important;
    grid-template-areas:
      "thumb main"
      "thumb plate" !important;
    column-gap: .68rem !important;
    row-gap: .26rem !important;
    align-items: center !important;
  }

  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb {
    grid-area: thumb !important;
    width: 68px !important;
    height: 52px !important;
    align-self: center !important;
    justify-self: start !important;
    margin: 0 !important;
    border-radius: 12px !important;
  }

  #dm-v4-trailers .detail-combo-thumb img,
  #td-vehicles .detail-combo-thumb img,
  .trailer-vehicle-select-list .detail-combo-thumb img {
    object-fit: cover !important;
  }

  #dm-v4-trailers .detail-combo-main,
  #td-vehicles .detail-combo-main,
  .trailer-vehicle-select-list .detail-combo-main {
    grid-area: main !important;
    min-width: 0 !important;
    width: 100% !important;
    justify-self: stretch !important;
    align-self: end !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: .22rem !important;
  }

  #dm-v4-trailers .detail-combo-main strong,
  #td-vehicles .detail-combo-main strong,
  .trailer-vehicle-select-list .detail-combo-main strong {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    max-width: 100% !important;
    overflow: hidden !important;
    white-space: normal !important;
    text-overflow: ellipsis !important;
    color: #f8fafc !important;
    font-size: .98rem !important;
    font-weight: 850 !important;
    line-height: 1.12 !important;
    letter-spacing: -.015em !important;
  }

  #dm-v4-trailers .detail-combo-main small,
  #td-vehicles .detail-combo-main small,
  .trailer-vehicle-select-list .detail-combo-main small {
    display: flex !important;
    align-items: center !important;
    gap: .32rem !important;
    flex-wrap: wrap !important;
    max-width: 100% !important;
    min-height: 1.05rem !important;
    color: rgba(203,213,225,.72) !important;
    font-size: .72rem !important;
    line-height: 1.05 !important;
    overflow: visible !important;
    white-space: normal !important;
  }

  #dm-v4-trailers .detail-combo-brake,
  #td-vehicles .detail-combo-brake,
  .trailer-vehicle-select-list .detail-combo-brake {
    display: none !important;
  }

  #dm-v4-trailers .detail-combo-internal,
  #td-vehicles .detail-combo-internal,
  .trailer-vehicle-select-list .detail-combo-internal {
    font-size: .70rem !important;
    padding: .08rem .32rem !important;
  }

  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    grid-area: plate !important;
    width: 116px !important;
    min-width: 116px !important;
    max-width: 116px !important;
    justify-self: start !important;
    align-self: start !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
  }

  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 112px !important;
    max-width: 112px !important;
    height: auto !important;
  }

  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
    grid-area: status !important;
    justify-self: stretch !important;
    align-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    min-height: 30px !important;
    padding: .38rem .52rem !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .42rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-align: left !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    border: 1px solid rgba(148,163,184,.18) !important;
    background: rgba(255,255,255,.035) !important;
    box-shadow: none !important;
  }

  #dm-v4-trailers .detail-combo-status i,
  #td-vehicles .detail-combo-status i,
  .trailer-vehicle-select-list .detail-combo-status i,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em i,
  #td-vehicles .trailer-combo-card.detail-combo-row > em i,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em i {
    width: .5rem !important;
    height: .5rem !important;
    flex: 0 0 .5rem !important;
    box-shadow: 0 0 8px currentColor !important;
  }

  .trailer-combo-card--ok .detail-combo-status,
  .trailer-combo-card--ok > em {
    color: #22c55e !important;
    border-color: rgba(34,197,94,.25) !important;
    background: rgba(34,197,94,.08) !important;
  }

  .trailer-combo-card--warn .detail-combo-status,
  .trailer-combo-card--warn > em {
    color: #fbbf24 !important;
    border-color: rgba(251,191,36,.26) !important;
    background: rgba(251,191,36,.09) !important;
  }

  .trailer-combo-card--bad .detail-combo-status,
  .trailer-combo-card--bad > em {
    color: #fb7185 !important;
    border-color: rgba(251,113,133,.28) !important;
    background: rgba(251,113,133,.08) !important;
  }
}

@media (max-width: 390px) {
  #dm-v4-trailers .trailer-combo-card.detail-combo-row,
  #td-vehicles .trailer-combo-card.detail-combo-row,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row {
    padding: .6rem !important;
  }

  #dm-v4-trailers .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  #td-vehicles .trailer-combo-card.detail-combo-row > .detail-combo-entity,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > .detail-combo-entity {
    grid-template-columns: 62px minmax(0, 1fr) !important;
    column-gap: .58rem !important;
  }

  #dm-v4-trailers .detail-combo-thumb,
  #td-vehicles .detail-combo-thumb,
  .trailer-vehicle-select-list .detail-combo-thumb {
    width: 62px !important;
    height: 48px !important;
  }

  #dm-v4-trailers .detail-combo-main strong,
  #td-vehicles .detail-combo-main strong,
  .trailer-vehicle-select-list .detail-combo-main strong {
    font-size: .92rem !important;
  }

  #dm-v4-trailers .detail-combo-plate,
  #td-vehicles .detail-combo-plate,
  .trailer-vehicle-select-list .detail-combo-plate {
    width: 106px !important;
    min-width: 106px !important;
    max-width: 106px !important;
  }

  #dm-v4-trailers .detail-combo-plate .dashboard-license-svg,
  #td-vehicles .detail-combo-plate .dashboard-license-svg,
  .trailer-vehicle-select-list .detail-combo-plate .dashboard-license-svg,
  #dm-v4-trailers .detail-combo-plate .plate-unified-svg,
  #td-vehicles .detail-combo-plate .plate-unified-svg,
  .trailer-vehicle-select-list .detail-combo-plate .plate-unified-svg {
    width: 102px !important;
    max-width: 102px !important;
  }

  #dm-v4-trailers .detail-combo-status,
  #td-vehicles .detail-combo-status,
  .trailer-vehicle-select-list .detail-combo-status,
  #dm-v4-trailers .trailer-combo-card.detail-combo-row > em,
  #td-vehicles .trailer-combo-card.detail-combo-row > em,
  .trailer-vehicle-select-list .trailer-combo-card.detail-combo-row > em {
    font-size: .70rem !important;
    min-height: 28px !important;
    padding: .34rem .48rem !important;
  }
}

/* =====================================================================
   v2.12.6 – Fahrzeugkarten sauber neu aufgebaut
   Ziel: Desktop kompakt, Mobil im Mockup-Stil. Anhängerkarten bleiben
   bewusst beim alten Layout.
   ===================================================================== */
.vehicle-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(335px,1fr)) !important;
  gap:1rem !important;
  align-items:start !important;
}

.vcard.vehicle-card-v3{
  display:flex !important;
  flex-direction:column !important;
  background:linear-gradient(180deg,rgba(15,25,39,.98),rgba(8,17,29,.98)) !important;
  border:2px solid rgba(148,163,184,.18) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  box-shadow:0 14px 34px rgba(0,0,0,.26) !important;
  min-height:0 !important;
  max-width:none !important;
}
.vcard.vehicle-card-v3.card--free{border-color:rgba(16,214,122,.72) !important;}
.vcard.vehicle-card-v3.card--busy{border-color:rgba(239,68,68,.72) !important;}
.vcard.vehicle-card-v3.card--soon{border-color:rgba(249,115,22,.72) !important;}
.vcard.vehicle-card-v3:hover{box-shadow:0 18px 38px rgba(0,0,0,.34) !important;background:linear-gradient(180deg,rgba(17,29,45,.98),rgba(9,20,33,.98)) !important;}

.vehicle-card-v3 .v3-media{
  position:relative !important;
  height:164px !important;
  overflow:hidden !important;
  background:#0f172a !important;
  border-bottom:1px solid rgba(148,163,184,.16) !important;
}
.vehicle-card-v3 .v3-photo,
.vehicle-card-v3 .v3-photo.vehicle-image-wrap{
  display:block !important;
  width:100% !important;
  height:100% !important;
  border:0 !important;
  background:#111827 !important;
}
.vehicle-card-v3 .v3-photo .vehicle-image-real,
.vehicle-card-v3 .v3-photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
.vehicle-card-v3 .v3-photo.vehicle-image-missing{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.vehicle-card-v3 .v3-photo .vehicle-image-fallback-inner svg{
  width:46px !important;
  height:46px !important;
  color:rgba(248,113,113,.9) !important;
}
.vehicle-card-v3 .v3-status-badge{
  position:absolute !important;
  right:16px !important;
  top:16px !important;
  z-index:2 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:.45rem !important;
  min-height:36px !important;
  padding:.48rem .95rem !important;
  border-radius:999px !important;
  color:#fff !important;
  font-family:'Outfit',system-ui,sans-serif !important;
  font-size:.86rem !important;
  font-weight:850 !important;
  line-height:1 !important;
  box-shadow:0 12px 28px rgba(0,0,0,.32) !important;
}
.vehicle-card-v3.card--free .v3-status-badge{background:linear-gradient(135deg,#20c85b,#10a74b) !important;}
.vehicle-card-v3.card--busy .v3-status-badge{background:linear-gradient(135deg,#ff3b32,#e11d1d) !important;}
.vehicle-card-v3.card--soon .v3-status-badge{background:linear-gradient(135deg,#fb923c,#f97316) !important;}
.vehicle-card-v3 .v3-badge-dot{width:.54rem;height:.54rem;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 0 12px rgba(255,255,255,.45);flex:0 0 .54rem;}

.vehicle-card-v3 .v3-body{
  padding:1rem 1rem 1rem !important;
  display:flex !important;
  flex-direction:column !important;
  gap:.85rem !important;
}
.vehicle-card-v3 .v3-title-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:.75rem !important;
  min-height:38px !important;
  padding-bottom:.72rem !important;
  border-bottom:1px solid rgba(148,163,184,.18) !important;
}
.vehicle-card-v3 .v3-name{
  margin:0 !important;
  min-width:0 !important;
  flex:1 1 auto !important;
  color:#f8fafc !important;
  font-family:'Outfit',system-ui,sans-serif !important;
  font-size:1.28rem !important;
  font-weight:900 !important;
  line-height:1.05 !important;
  letter-spacing:-.025em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.vehicle-card-v3 .v3-plate{
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  line-height:1 !important;
  max-width:46% !important;
  overflow:hidden !important;
}
.vehicle-card-v3 .v3-plate .dashboard-plate-mini,
.vehicle-card-v3 .v3-plate .plate-unified{
  display:inline-flex !important;
  width:auto !important;
  max-width:150px !important;
  height:auto !important;
  margin:0 !important;
  transform:none !important;
}
.vehicle-card-v3 .v3-plate .dashboard-license-svg,
.vehicle-card-v3 .v3-plate .plate-unified-svg{
  width:142px !important;
  max-width:142px !important;
  height:auto !important;
  display:block !important;
}

.vehicle-card-v3 .v3-info-row{
  display:grid !important;
  grid-template-columns:minmax(0,1.45fr) minmax(74px,.65fr) minmax(78px,.7fr) !important;
  align-items:center !important;
  column-gap:.72rem !important;
}
.vehicle-card-v3 .v3-info-block{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:.48rem !important;
  padding-right:.72rem !important;
  border-right:1px solid rgba(148,163,184,.20) !important;
}
.vehicle-card-v3 .v3-info-block:last-child{border-right:0 !important;padding-right:0 !important;}
.vehicle-card-v3 .v3-info-icon{flex:0 0 auto !important;display:flex !important;align-items:center !important;justify-content:center !important;}
.vehicle-card-v3 .vehicle-brand-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:42px !important;
  max-width:58px !important;
  height:24px !important;
  padding:0 .35rem !important;
  border-radius:7px !important;
  font-family:'Outfit',system-ui,sans-serif !important;
  font-size:.72rem !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  line-height:1 !important;
  background:rgba(255,255,255,.035) !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.vehicle-brand-badge--iveco{color:#ff5252 !important;text-shadow:0 0 12px rgba(239,68,68,.55) !important;}
.vehicle-brand-badge--audi{color:#22c55e !important;text-shadow:0 0 12px rgba(34,197,94,.45) !important;}
.vehicle-brand-badge--vw{color:#60a5fa !important;text-shadow:0 0 12px rgba(96,165,250,.45) !important;}
.vehicle-brand-badge--mercedes{color:#e5e7eb !important;text-shadow:0 0 12px rgba(229,231,235,.35) !important;}
.vehicle-brand-badge--man{color:#ef4444 !important;text-shadow:0 0 12px rgba(239,68,68,.45) !important;}
.vehicle-brand-badge--ford,.vehicle-brand-badge--bmw{color:#60a5fa !important;}
.vehicle-brand-badge--opel,.vehicle-brand-badge--fiat,.vehicle-brand-badge--renault{color:#fbbf24 !important;}
.vehicle-brand-badge--skoda{color:#22c55e !important;}
.vehicle-brand-badge--generic{color:#cbd5e1 !important;}
.vehicle-card-v3 .v3-symbol{font-size:1rem !important;line-height:1 !important;filter:drop-shadow(0 0 8px rgba(96,165,250,.18));}
.vehicle-card-v3 .v3-info-text{min-width:0 !important;display:flex !important;flex-direction:column !important;gap:.08rem !important;line-height:1.05 !important;}
.vehicle-card-v3 .v3-info-text strong{
  color:#f8fafc !important;
  font-family:'Outfit',system-ui,sans-serif !important;
  font-size:.84rem !important;
  font-weight:900 !important;
  line-height:1.05 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.vehicle-card-v3 .v3-info-text span{
  color:rgba(203,213,225,.66) !important;
  font-size:.68rem !important;
  font-weight:750 !important;
  line-height:1.05 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.vehicle-card-v3 .v3-status-line{
  min-height:42px !important;
  display:flex !important;
  align-items:center !important;
  gap:.52rem !important;
  padding:.58rem .75rem !important;
  border-radius:14px !important;
  border:1px solid rgba(148,163,184,.16) !important;
  overflow:hidden !important;
}
.vehicle-card-v3.card--free .v3-status-line{background:rgba(16,185,129,.12) !important;border-color:rgba(16,185,129,.28) !important;color:#22c55e !important;}
.vehicle-card-v3.card--busy .v3-status-line{background:rgba(239,68,68,.12) !important;border-color:rgba(239,68,68,.30) !important;color:#ff5f5f !important;}
.vehicle-card-v3.card--soon .v3-status-line{background:rgba(249,115,22,.11) !important;border-color:rgba(249,115,22,.30) !important;color:#fb923c !important;}
.vehicle-card-v3 .v3-status-main{
  min-width:0 !important;
  flex:1 1 auto !important;
  font-family:'Outfit',system-ui,sans-serif !important;
  font-size:.78rem !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.vehicle-card-v3 .v3-status-counter{
  flex:0 0 auto !important;
  min-width:76px !important;
  max-width:104px !important;
  padding:.28rem .55rem !important;
  border-radius:999px !important;
  background:rgba(15,23,42,.72) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  text-align:center !important;
  font-size:.73rem !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.vehicle-card-v3 .v3-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:.72rem !important;
}
.vehicle-card-v3 .v3-btn{
  appearance:none !important;
  border:0 !important;
  min-height:44px !important;
  border-radius:14px !important;
  cursor:pointer !important;
  font-family:'Outfit',system-ui,sans-serif !important;
  font-size:.84rem !important;
  font-weight:900 !important;
  line-height:1 !important;
  color:#fff !important;
  transition:filter .16s ease, transform .16s ease !important;
}
.vehicle-card-v3 .v3-btn:hover{filter:brightness(1.06) !important;}
.vehicle-card-v3 .v3-btn:active{transform:translateY(1px) !important;}
.vehicle-card-v3 .v3-btn-detail{background:linear-gradient(180deg,rgba(30,43,61,.98),rgba(22,34,50,.98)) !important;border:1px solid rgba(148,163,184,.20) !important;}
.vehicle-card-v3 .v3-btn-reserve{background:linear-gradient(135deg,#ff312a,#e11d1d) !important;box-shadow:0 14px 30px rgba(239,68,68,.18) !important;}

@media (min-width:1500px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr)) !important;}
  .vehicle-card-v3 .v3-media{height:170px !important;}
}
@media (max-width:1100px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr)) !important;}
  .vehicle-card-v3 .v3-media{height:152px !important;}
  .vehicle-card-v3 .v3-body{padding:.9rem !important;gap:.75rem !important;}
  .vehicle-card-v3 .v3-name{font-size:1.18rem !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:126px !important;max-width:126px !important;}
  .vehicle-card-v3 .v3-info-row{grid-template-columns:minmax(0,1.35fr) minmax(68px,.62fr) minmax(70px,.64fr) !important;column-gap:.55rem !important;}
  .vehicle-card-v3 .v3-info-block{gap:.38rem !important;padding-right:.55rem !important;}
  .vehicle-card-v3 .vehicle-brand-badge{min-width:36px;max-width:48px;font-size:.66rem;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.78rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.62rem !important;}
}
@media (max-width:768px){
  .vehicle-grid{grid-template-columns:1fr !important;gap:1rem !important;}
  .vcard.vehicle-card-v3{border-radius:22px !important;}
  .vehicle-card-v3 .v3-media{height:168px !important;}
  .vehicle-card-v3 .v3-body{padding:1rem !important;gap:.9rem !important;}
  .vehicle-card-v3 .v3-title-row{min-height:42px !important;gap:.7rem !important;}
  .vehicle-card-v3 .v3-name{font-size:1.34rem !important;}
  .vehicle-card-v3 .v3-plate{max-width:50% !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:138px !important;max-width:138px !important;}
  .vehicle-card-v3 .v3-info-row{grid-template-columns:minmax(0,1.42fr) minmax(74px,.7fr) minmax(76px,.72fr) !important;column-gap:.62rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.86rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.66rem !important;}
  .vehicle-card-v3 .v3-actions{gap:.72rem !important;}
  .vehicle-card-v3 .v3-btn{min-height:50px !important;font-size:.92rem !important;border-radius:16px !important;}
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-media{height:150px !important;}
  .vehicle-card-v3 .v3-status-badge{right:12px !important;top:12px !important;min-height:32px !important;padding:.42rem .78rem !important;font-size:.78rem !important;}
  .vehicle-card-v3 .v3-body{padding:.86rem !important;gap:.78rem !important;}
  .vehicle-card-v3 .v3-title-row{gap:.5rem !important;padding-bottom:.62rem !important;}
  .vehicle-card-v3 .v3-name{font-size:1.16rem !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:120px !important;max-width:120px !important;}
  .vehicle-card-v3 .v3-info-row{grid-template-columns:minmax(0,1.25fr) minmax(60px,.58fr) minmax(64px,.62fr) !important;column-gap:.42rem !important;}
  .vehicle-card-v3 .v3-info-block{gap:.30rem !important;padding-right:.42rem !important;}
  .vehicle-card-v3 .vehicle-brand-badge{min-width:32px !important;max-width:42px !important;height:22px !important;font-size:.60rem !important;padding:0 .22rem !important;}
  .vehicle-card-v3 .v3-symbol{font-size:.9rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.74rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.56rem !important;}
  .vehicle-card-v3 .v3-status-line{min-height:40px !important;padding:.54rem .62rem !important;}
  .vehicle-card-v3 .v3-status-main{font-size:.72rem !important;}
  .vehicle-card-v3 .v3-status-counter{min-width:68px !important;max-width:88px !important;font-size:.68rem !important;padding:.25rem .45rem !important;}
  .vehicle-card-v3 .v3-btn{min-height:46px !important;font-size:.82rem !important;}
}


/* v2.12.7: Karten-Feinschliff, ohne Herstellerlogos, kompakter, Sitzplätze */
.vehicle-grid{
  grid-template-columns:repeat(auto-fill,minmax(320px,360px)) !important;
  justify-content:start !important;
  gap:.78rem !important;
}
.vcard.vehicle-card-v3{
  max-width:360px !important;
  border-radius:18px !important;
}
.vehicle-card-v3 .v3-media{
  height:128px !important;
}
.vehicle-card-v3 .v3-photo .vehicle-image-real,
.vehicle-card-v3 .v3-photo img{
  object-fit:cover !important;
  object-position:center center !important;
}
.vehicle-card-v3 .v3-status-badge{
  right:12px !important;
  top:12px !important;
  min-height:30px !important;
  padding:.38rem .78rem !important;
  font-size:.74rem !important;
}
.vehicle-card-v3 .v3-body{
  padding:.72rem .82rem .82rem !important;
  gap:.62rem !important;
}
.vehicle-card-v3 .v3-title-row{
  min-height:31px !important;
  padding-bottom:.55rem !important;
  gap:.55rem !important;
}
.vehicle-card-v3 .v3-name{
  font-size:1.05rem !important;
}
.vehicle-card-v3 .v3-plate .dashboard-license-svg,
.vehicle-card-v3 .v3-plate .plate-unified-svg{
  width:118px !important;
  max-width:118px !important;
}
.vehicle-card-v3 .v3-info-row{
  grid-template-columns:minmax(0,1.35fr) minmax(54px,.55fr) minmax(58px,.58fr) !important;
  column-gap:.52rem !important;
}
.vehicle-card-v3 .v3-info-block{
  gap:.34rem !important;
  padding-right:.52rem !important;
}
.vehicle-card-v3 .v3-info-model .v3-info-icon,
.vehicle-card-v3 .vehicle-brand-badge{
  display:none !important;
}
.vehicle-card-v3 .v3-info-model{
  padding-left:0 !important;
}
.vehicle-card-v3 .v3-info-text strong{
  font-size:.75rem !important;
}
.vehicle-card-v3 .v3-info-text span{
  font-size:.58rem !important;
}
.vehicle-card-v3 .v3-symbol{
  font-size:.88rem !important;
}
.vehicle-card-v3 .v3-status-line{
  min-height:36px !important;
  padding:.48rem .58rem !important;
  border-radius:12px !important;
}
.vehicle-card-v3 .v3-status-main{
  font-size:.69rem !important;
}
.vehicle-card-v3 .v3-status-counter{
  min-width:66px !important;
  max-width:82px !important;
  font-size:.64rem !important;
  padding:.22rem .40rem !important;
}
.vehicle-card-v3 .v3-actions{
  gap:.52rem !important;
}
.vehicle-card-v3 .v3-btn{
  min-height:38px !important;
  border-radius:12px !important;
  font-size:.74rem !important;
}
@media (min-width:1500px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(320px,360px)) !important;}
  .vehicle-card-v3 .v3-media{height:132px !important;}
}
@media (max-width:1100px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr)) !important;}
  .vcard.vehicle-card-v3{max-width:none !important;}
  .vehicle-card-v3 .v3-media{height:128px !important;}
}
@media (max-width:768px){
  .vehicle-grid{grid-template-columns:1fr !important;gap:.9rem !important;}
  .vcard.vehicle-card-v3{max-width:none !important;border-radius:20px !important;}
  .vehicle-card-v3 .v3-media{height:154px !important;}
  .vehicle-card-v3 .v3-body{padding:.9rem !important;gap:.78rem !important;}
  .vehicle-card-v3 .v3-title-row{min-height:38px !important;}
  .vehicle-card-v3 .v3-name{font-size:1.24rem !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:132px !important;max-width:132px !important;}
  .vehicle-card-v3 .v3-info-row{grid-template-columns:minmax(0,1.45fr) minmax(72px,.75fr) minmax(72px,.75fr) !important;column-gap:.62rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.84rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.64rem !important;}
  .vehicle-card-v3 .v3-btn{min-height:48px !important;font-size:.88rem !important;border-radius:15px !important;}
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-media{height:142px !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:118px !important;max-width:118px !important;}
  .vehicle-card-v3 .v3-info-row{grid-template-columns:minmax(0,1.2fr) minmax(58px,.6fr) minmax(60px,.62fr) !important;column-gap:.42rem !important;}
}


/* v2.12.8: Feinschliff Karten - Hersteller/Modell, flachere Statuszeile, dezenter Desktop-Hover */
.vehicle-card-v3 .v3-info-model .v3-info-text span{
  font-size:.56rem !important;
  line-height:1.05 !important;
}
.vehicle-card-v3 .v3-status-line{
  min-height:32px !important;
  padding:.42rem .56rem !important;
}
.vehicle-card-v3 .v3-status-counter{
  padding:.20rem .38rem !important;
}
@media (hover:hover) and (pointer:fine) and (min-width:769px){
  .vcard.vehicle-card-v3{
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }
  .vcard.vehicle-card-v3:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 18px 36px rgba(0,0,0,.34) !important;
  }
  .vehicle-card-v3 .v3-photo .vehicle-image-real,
  .vehicle-card-v3 .v3-photo img{
    transition:transform .22s ease !important;
  }
  .vcard.vehicle-card-v3:hover .v3-photo .vehicle-image-real,
  .vcard.vehicle-card-v3:hover .v3-photo img{
    transform:scale(1.025) !important;
  }
}
@media (max-width:768px){
  .vehicle-card-v3 .v3-status-line{
    min-height:38px !important;
    padding:.50rem .62rem !important;
  }
  .vehicle-card-v3 .v3-info-model .v3-info-text span{
    font-size:.61rem !important;
  }
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-info-model .v3-info-text span{
    font-size:.54rem !important;
  }
}

/* v2.12.9: ruhiger Karten-Look ohne Außenrahmen + öffentliche technische Detailansicht */
.vcard.vehicle-card-v3{
  position:relative !important;
  border:0 !important;
  box-shadow:0 10px 26px rgba(0,0,0,.28), inset 0 0 0 1px rgba(148,163,184,.12) !important;
  background:linear-gradient(180deg,rgba(14,25,40,.98),rgba(7,16,28,.98)) !important;
}
.vcard.vehicle-card-v3::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:4px !important;
  z-index:3 !important;
  border-radius:18px 0 0 18px !important;
  background:rgba(148,163,184,.45) !important;
}
.vcard.vehicle-card-v3.card--free::before{background:#10b981 !important;box-shadow:0 0 14px rgba(16,185,129,.35) !important;}
.vcard.vehicle-card-v3.card--busy::before{background:#ef2929 !important;box-shadow:0 0 14px rgba(239,41,41,.35) !important;}
.vcard.vehicle-card-v3.card--soon::before{background:#f97316 !important;box-shadow:0 0 14px rgba(249,115,22,.35) !important;}
.vcard.vehicle-card-v3.card--free,
.vcard.vehicle-card-v3.card--busy,
.vcard.vehicle-card-v3.card--soon{
  border-color:transparent !important;
}
.vcard.vehicle-card-v3:hover{
  border-color:transparent !important;
}
.vehicle-card-v3 .v3-media{
  height:116px !important;
  border-bottom:1px solid rgba(148,163,184,.10) !important;
}
.vehicle-card-v3 .v3-photo .vehicle-image-real,
.vehicle-card-v3 .v3-photo img{
  object-fit:cover !important;
  object-position:center center !important;
}
.vehicle-card-v3 .v3-body{
  padding:.66rem .78rem .74rem !important;
  gap:.52rem !important;
}
.vehicle-card-v3 .v3-title-row{
  min-height:29px !important;
  padding-bottom:.48rem !important;
  border-bottom:1px solid rgba(148,163,184,.13) !important;
}
.vehicle-card-v3 .v3-info-row{
  grid-template-columns:minmax(0,1.45fr) minmax(54px,.55fr) minmax(56px,.55fr) !important;
  column-gap:.44rem !important;
}
.vehicle-card-v3 .v3-status-line{
  min-height:31px !important;
  padding:.38rem .52rem !important;
}
.vehicle-card-v3 .v3-actions{
  display:none !important;
}
.vehicle-card-v3 .v3-info-text strong{
  font-size:.72rem !important;
}
.vehicle-card-v3 .v3-info-text span{
  font-size:.55rem !important;
}
.vehicle-card-v3 .v3-status-main{
  font-size:.66rem !important;
}
.vehicle-card-v3 .v3-status-counter{
  min-width:62px !important;
  max-width:78px !important;
  font-size:.61rem !important;
}
@media (min-width:769px){
  .vehicle-grid{
    grid-template-columns:repeat(auto-fill,minmax(300px,340px)) !important;
    gap:.72rem !important;
  }
  .vcard.vehicle-card-v3{max-width:340px !important;}
}
@media (max-width:768px){
  .vehicle-card-v3 .v3-media{height:146px !important;}
  .vehicle-card-v3 .v3-body{padding:.84rem !important;gap:.68rem !important;}
  .vehicle-card-v3 .v3-title-row{min-height:36px !important;padding-bottom:.58rem !important;}
  .vehicle-card-v3 .v3-info-row{grid-template-columns:minmax(0,1.38fr) minmax(70px,.72fr) minmax(70px,.72fr) !important;column-gap:.58rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.82rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.62rem !important;}
  .vehicle-card-v3 .v3-status-line{min-height:36px !important;padding:.46rem .60rem !important;}
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-media{height:136px !important;}
}

/* v2.13.0: Kacheln geschärft, Anhänger neues Layout, Sperrstatus */
.vehicle-overview-page,
.vehicle-overview-page .vcard,
.vehicle-overview-page .vcard *{
  -webkit-font-smoothing:antialiased !important;
  -moz-osx-font-smoothing:grayscale !important;
  text-rendering:geometricPrecision !important;
}
.vehicle-overview-page .vcard strong,
.vehicle-overview-page .vcard h2,
.vehicle-overview-page .vcard .v3-status-main{
  text-shadow:none !important;
}

/* kompakter und ruhiger: kein Außenrahmen, nur Statusstreifen */
.vehicle-grid{
  grid-template-columns:repeat(auto-fill,minmax(285px,320px)) !important;
  gap:.70rem !important;
  align-items:start !important;
}
.vcard.vehicle-card-v3,
.vcard.vehicle-card-v3.trailer-card-v3{
  max-width:320px !important;
  border:0 !important;
  border-radius:16px !important;
  overflow:hidden !important;
  box-shadow:0 10px 24px rgba(0,0,0,.26), inset 0 0 0 1px rgba(148,163,184,.10) !important;
  background:linear-gradient(180deg,rgba(13,24,38,.98),rgba(7,16,28,.98)) !important;
}
.vcard.vehicle-card-v3::before,
.vcard.vehicle-card-v3.trailer-card-v3::before{
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:4px !important;
  border-radius:16px 0 0 16px !important;
}
.vcard.vehicle-card-v3.card--blocked::before{background:#ef4444 !important;box-shadow:0 0 14px rgba(239,68,68,.35) !important;}
.vehicle-card-v3.card--blocked .v3-status-badge{background:linear-gradient(135deg,#ef4444,#b91c1c) !important;}
.vehicle-card-v3.card--blocked .v3-status-line{background:rgba(239,68,68,.12) !important;border-color:rgba(239,68,68,.30) !important;color:#ff6b6b !important;}

/* Bilder einheitlich mittig */
.vehicle-card-v3 .v3-media{
  height:108px !important;
}
.vehicle-card-v3 .v3-photo,
.vehicle-card-v3 .v3-photo.vehicle-image-wrap,
.vehicle-card-v3 .v3-trailer-photo{
  display:block !important;
  width:100% !important;
  height:100% !important;
  background:#101827 !important;
}
.vehicle-card-v3 .v3-photo img,
.vehicle-card-v3 .v3-photo .vehicle-image-real,
.vehicle-card-v3 .v3-trailer-photo img,
.vehicle-card-v3 .v3-trailer-photo.vcard-img-object{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.trailer-card-v3 .trailer-card-icon-fallback.v3-photo,
.trailer-card-v3 .trailer-card-icon-fallback.v3-trailer-photo{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.trailer-card-v3 .trailer-card-icon-fallback .trailer-icon-svg{width:48px !important;height:48px !important;}

.vehicle-card-v3 .v3-status-badge{
  right:10px !important;
  top:10px !important;
  min-height:28px !important;
  padding:.34rem .70rem !important;
  font-size:.70rem !important;
  font-weight:900 !important;
}
.vehicle-card-v3 .v3-badge-dot{width:.46rem !important;height:.46rem !important;flex-basis:.46rem !important;}

/* Mehr Luft links/rechts im Inhalt */
.vehicle-card-v3 .v3-body{
  padding:.72rem .92rem .78rem 1.02rem !important;
  gap:.54rem !important;
}
.vehicle-card-v3 .v3-title-row{
  min-height:30px !important;
  padding-bottom:.50rem !important;
  gap:.60rem !important;
  border-bottom:1px solid rgba(148,163,184,.12) !important;
}
.vehicle-card-v3 .v3-name{
  font-size:1.04rem !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
}
.vehicle-card-v3 .v3-plate .dashboard-license-svg,
.vehicle-card-v3 .v3-plate .plate-unified-svg{
  width:112px !important;
  max-width:112px !important;
}

/* Infozeile klarer und ohne Logos */
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .trailer-v3-info-row{
  grid-template-columns:minmax(0,1.35fr) minmax(50px,.58fr) minmax(54px,.58fr) !important;
  column-gap:.44rem !important;
  align-items:center !important;
}
.vehicle-card-v3 .v3-info-block{
  gap:.32rem !important;
  padding-right:.46rem !important;
  border-right:1px solid rgba(148,163,184,.14) !important;
}
.vehicle-card-v3 .v3-info-block:last-child{border-right:0 !important;}
.vehicle-card-v3 .vehicle-brand-badge{display:none !important;}
.vehicle-card-v3 .v3-info-model{padding-left:0 !important;}
.vehicle-card-v3 .v3-info-text strong{
  font-size:.71rem !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
}
.vehicle-card-v3 .v3-info-text span{
  font-size:.53rem !important;
  font-weight:800 !important;
  color:rgba(203,213,225,.70) !important;
}
.vehicle-card-v3 .v3-symbol{font-size:.82rem !important;filter:none !important;}

.vehicle-card-v3 .v3-status-line{
  min-height:30px !important;
  padding:.36rem .50rem !important;
  border-radius:11px !important;
}
.vehicle-card-v3 .v3-status-main{
  font-size:.64rem !important;
  font-weight:950 !important;
}
.vehicle-card-v3 .v3-status-counter{
  min-width:58px !important;
  max-width:76px !important;
  font-size:.59rem !important;
  font-weight:950 !important;
}

@media (min-width:1500px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(285px,320px)) !important;}
}
@media (max-width:1100px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(285px,1fr)) !important;}
  .vcard.vehicle-card-v3,.vcard.vehicle-card-v3.trailer-card-v3{max-width:none !important;}
}
@media (max-width:768px){
  .vehicle-grid{grid-template-columns:1fr !important;gap:.9rem !important;}
  .vcard.vehicle-card-v3,.vcard.vehicle-card-v3.trailer-card-v3{max-width:none !important;border-radius:20px !important;}
  .vcard.vehicle-card-v3::before{border-radius:20px 0 0 20px !important;}
  .vehicle-card-v3 .v3-media{height:142px !important;}
  .vehicle-card-v3 .v3-body{padding:.88rem 1rem .92rem 1.08rem !important;gap:.68rem !important;}
  .vehicle-card-v3 .v3-title-row{min-height:36px !important;padding-bottom:.58rem !important;}
  .vehicle-card-v3 .v3-name{font-size:1.20rem !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:128px !important;max-width:128px !important;}
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .trailer-v3-info-row{grid-template-columns:minmax(0,1.35fr) minmax(68px,.68fr) minmax(68px,.68fr) !important;column-gap:.56rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.80rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.61rem !important;}
  .vehicle-card-v3 .v3-status-line{min-height:35px !important;padding:.45rem .58rem !important;}
  .vehicle-card-v3 .v3-status-main{font-size:.70rem !important;}
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-media{height:134px !important;}
  .vehicle-card-v3 .v3-body{padding:.82rem .88rem .86rem .98rem !important;}
  .vehicle-card-v3 .v3-name{font-size:1.12rem !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:116px !important;max-width:116px !important;}
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .trailer-v3-info-row{grid-template-columns:minmax(0,1.18fr) minmax(58px,.60fr) minmax(60px,.62fr) !important;column-gap:.38rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.72rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.53rem !important;}
}

/* v2.13.1: Kacheln wieder lesbarer, Raster ohne rechten Leerraum, schärfere Schrift, Anhängerbild sauber */
.vehicle-overview-page,
.vehicle-overview-page .vcard,
.vehicle-overview-page .vcard *{
  -webkit-font-smoothing:auto !important;
  -moz-osx-font-smoothing:auto !important;
  text-rendering:optimizeLegibility !important;
}

/* Desktop: Karten füllen die Breite wieder besser und werden nicht künstlich winzig */
.vehicle-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(340px,1fr)) !important;
  justify-content:stretch !important;
  align-items:start !important;
  gap:.92rem !important;
}
.vcard.vehicle-card-v3,
.vcard.vehicle-card-v3.trailer-card-v3{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  border:0 !important;
  outline:0 !important;
  border-radius:18px !important;
  box-shadow:0 12px 28px rgba(0,0,0,.30), inset 0 0 0 1px rgba(148,163,184,.10) !important;
}
.vcard.vehicle-card-v3.card--free,
.vcard.vehicle-card-v3.card--busy,
.vcard.vehicle-card-v3.card--soon,
.vcard.vehicle-card-v3.card--blocked,
.vcard.vehicle-card-v3.trailer-card-v3.card--free,
.vcard.vehicle-card-v3.trailer-card-v3.card--busy,
.vcard.vehicle-card-v3.trailer-card-v3.card--soon{
  border-color:transparent !important;
}

/* Status nur noch als linker Streifen, kein farbiger Außenrahmen */
.vcard.vehicle-card-v3::before,
.vcard.vehicle-card-v3.trailer-card-v3::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:4px !important;
  border-radius:18px 0 0 18px !important;
  z-index:3 !important;
}

/* Bilder etwas höher, Fahrzeuge mittig. Anhänger vollständig lesbarer darstellen. */
.vehicle-card-v3 .v3-media{
  height:126px !important;
  background:#0b1422 !important;
}
.vehicle-card-v3 .v3-photo img,
.vehicle-card-v3 .v3-photo .vehicle-image-real,
.vehicle-card-v3 .v3-photo.vehicle-image-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  image-rendering:auto !important;
}
.trailer-card-v3 .v3-media{
  background:linear-gradient(180deg,#0b1422,#09111d) !important;
}
.trailer-card-v3 .v3-photo img,
.trailer-card-v3 .v3-photo .vehicle-image-real,
.trailer-card-v3 .v3-trailer-photo img,
.trailer-card-v3 .v3-trailer-photo.vcard-img-object{
  object-fit:contain !important;
  object-position:center center !important;
  background:#0b1422 !important;
}

/* Mehr Luft am linken/rechten Rand und bessere Lesbarkeit */
.vehicle-card-v3 .v3-body{
  padding:.82rem 1rem .86rem 1.12rem !important;
  gap:.62rem !important;
}
.vehicle-card-v3 .v3-title-row{
  min-height:34px !important;
  padding-bottom:.56rem !important;
  gap:.72rem !important;
}
.vehicle-card-v3 .v3-name{
  font-size:1.12rem !important;
  line-height:1.08 !important;
  font-weight:900 !important;
  letter-spacing:-.018em !important;
}
.vehicle-card-v3 .v3-plate .dashboard-license-svg,
.vehicle-card-v3 .v3-plate .plate-unified-svg{
  width:122px !important;
  max-width:122px !important;
}

/* Infozeile lesbarer, Hersteller/Modell bekommt genügend Raum */
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .trailer-v3-info-row{
  grid-template-columns:minmax(0,1.65fr) minmax(68px,.62fr) minmax(72px,.66fr) !important;
  column-gap:.62rem !important;
}
.vehicle-card-v3 .v3-info-block{
  gap:.38rem !important;
  padding-right:.58rem !important;
  border-right:1px solid rgba(148,163,184,.16) !important;
}
.vehicle-card-v3 .v3-info-text strong{
  font-size:.78rem !important;
  line-height:1.08 !important;
  font-weight:900 !important;
}
.vehicle-card-v3 .v3-info-text span{
  font-size:.58rem !important;
  line-height:1.08 !important;
  font-weight:750 !important;
  color:rgba(203,213,225,.76) !important;
}
.vehicle-card-v3 .v3-symbol{font-size:.90rem !important;}

.vehicle-card-v3 .v3-status-line{
  min-height:33px !important;
  padding:.40rem .56rem !important;
  border-radius:12px !important;
}
.vehicle-card-v3 .v3-status-main{font-size:.69rem !important;}
.vehicle-card-v3 .v3-status-counter{font-size:.62rem !important;min-width:62px !important;max-width:82px !important;}

/* Große Displays: 4 Karten ohne riesige rechte Lücke, aber nicht zu klein */
@media (min-width:1500px){
  .vehicle-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:1rem !important;}
  .vehicle-card-v3 .v3-media{height:132px !important;}
}
@media (min-width:1900px){
  .vehicle-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important;}
}
@media (max-width:1300px){
  .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr)) !important;}
}
@media (max-width:768px){
  .vehicle-grid{grid-template-columns:1fr !important;gap:.95rem !important;}
  .vcard.vehicle-card-v3,
  .vcard.vehicle-card-v3.trailer-card-v3{border-radius:20px !important;}
  .vcard.vehicle-card-v3::before,
  .vcard.vehicle-card-v3.trailer-card-v3::before{border-radius:20px 0 0 20px !important;}
  .vehicle-card-v3 .v3-media{height:150px !important;}
  .vehicle-card-v3 .v3-body{padding:.92rem 1rem .96rem 1.12rem !important;gap:.72rem !important;}
  .vehicle-card-v3 .v3-name{font-size:1.22rem !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:130px !important;max-width:130px !important;}
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .trailer-v3-info-row{grid-template-columns:minmax(0,1.45fr) minmax(72px,.72fr) minmax(74px,.74fr) !important;column-gap:.58rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.82rem !important;}
  .vehicle-card-v3 .v3-info-text span{font-size:.62rem !important;}
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-media{height:138px !important;}
  .vehicle-card-v3 .v3-body{padding:.84rem .9rem .88rem 1rem !important;}
  .vehicle-card-v3 .v3-name{font-size:1.14rem !important;}
  .vehicle-card-v3 .v3-plate .dashboard-license-svg,
  .vehicle-card-v3 .v3-plate .plate-unified-svg{width:118px !important;max-width:118px !important;}
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .trailer-v3-info-row{grid-template-columns:minmax(0,1.22fr) minmax(60px,.62fr) minmax(62px,.64fr) !important;column-gap:.40rem !important;}
}

/* v2.13.3 – Kartenstandard: vorige kompakte Größe behalten, Bilder nicht verzerren, Text schärfen */
html, body, .vcard, .vcard *{
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-synthesis-weight: none;
}
.vehicle-grid{
  align-items:start !important;
}
.vehicle-card-v3 .v3-media,
.trailer-card-v3 .v3-media{
  height:126px !important;
  aspect-ratio:auto !important;
  overflow:hidden !important;
  background:#0b1422 !important;
}
.vehicle-card-v3 .v3-photo,
.trailer-card-v3 .v3-photo,
.vehicle-card-v3 .vehicle-image-wrap,
.trailer-card-v3 .vehicle-image-wrap,
.trailer-card-v3 .v3-trailer-photo{
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
}
.vehicle-card-v3 .v3-photo img,
.vehicle-card-v3 .v3-photo .vehicle-image-real,
.vehicle-card-v3 .v3-photo.vehicle-image-wrap img,
.vehicle-card-v3 .vehicle-image-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  transform:none !important;
  image-rendering:auto !important;
}
.trailer-card-v3 .v3-photo img,
.trailer-card-v3 .v3-photo .vehicle-image-real,
.trailer-card-v3 .v3-trailer-photo img,
.trailer-card-v3 .v3-trailer-photo.vcard-img-object,
.trailer-card-v3 .vehicle-image-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  transform:none !important;
  background:#0b1422 !important;
  image-rendering:auto !important;
}
.vehicle-card-v3 .v3-info-text strong,
.vehicle-card-v3 .v3-info-text span,
.vehicle-card-v3 .v3-name,
.vehicle-card-v3 .v3-status-main,
.vehicle-card-v3 .v3-status-counter{
  filter:none !important;
  text-shadow:none !important;
}
@media (min-width:1500px){
  .vehicle-card-v3 .v3-media,
  .trailer-card-v3 .v3-media{height:132px !important;}
}
@media (max-width:768px){
  .vehicle-card-v3 .v3-media,
  .trailer-card-v3 .v3-media{height:150px !important;aspect-ratio:auto !important;}
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-media,
  .trailer-card-v3 .v3-media{height:138px !important;}
}

/* v2.13.4: Anhängerbild nicht verzerren + Textfit auf neue Karten anwenden */
.vehicle-card-v3 .v3-info-text strong,
.vehicle-card-v3 .v3-info-text span,
.vehicle-card-v3 .v3-name{
  max-width:100% !important;
  transform-origin:left center !important;
  will-change:auto !important;
}

/* Anhänger dürfen niemals gestreckt werden. Bei echten Anhängerfotos lieber sauber einpassen
   als das Seitenverhältnis kaputtziehen. */
.trailer-card-v3 img.v3-photo,
.trailer-card-v3 img.v3-trailer-photo,
.trailer-card-v3 .v3-photo img,
.trailer-card-v3 .v3-trailer-photo img,
.trailer-card-v3 .v3-photo .vehicle-image-real,
.trailer-card-v3 .v3-trailer-photo .vehicle-image-real{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#0b1422 !important;
  image-rendering:auto !important;
}

/* Zugfahrzeuge brauchen auf Anhängerkarten mehr Platz als die interne Nummer. */
.trailer-card-v3 .trailer-v3-info-row{
  grid-template-columns:minmax(0,1.25fr) minmax(0,1.15fr) minmax(48px,.45fr) !important;
  column-gap:.42rem !important;
}
.trailer-card-v3 .v3-info-crew .v3-info-text strong,
.trailer-card-v3 .v3-info-crew .v3-info-text span{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
}

/* Schrift nicht weichzeichnen. Keine Filter/Skalierung an ganzen Karten oder Bildern. */
.vehicle-overview-page .vcard,
.vehicle-overview-page .vcard *{
  -webkit-font-smoothing:auto !important;
  -moz-osx-font-smoothing:auto !important;
  text-rendering:optimizeLegibility !important;
}
.vehicle-overview-page .vcard strong,
.vehicle-overview-page .vcard h2,
.vehicle-overview-page .vcard span{
  text-shadow:none !important;
}


/* v2.13.5 – Feinschliff Kacheln, Anhänger und Schrift */
.weekday-checks{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.35rem}
.weekday-check{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-weight:800;cursor:pointer}
.weekday-check input{accent-color:var(--red);width:16px;height:16px}

.vehicle-grid,
.vehicle-grid .vcard,
.vehicle-card-v3,
.vehicle-card-v3 *{
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    text-rendering:geometricPrecision;
}

.vehicle-card-v3 .v3-info-row{
    align-items:center !important;
}
.vehicle-card-v3 .v3-info-text{
    gap:0 !important;
}
.vehicle-card-v3 .v3-info-text span{
    display:none !important;
}
.vehicle-card-v3 .v3-info-text strong{
    line-height:1.05 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
}
.vehicle-card-v3 .v3-info-model{
    padding-left:.08rem !important;
}
.vehicle-card-v3 .v3-info-model .v3-info-text strong{
    font-weight:900 !important;
}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal{
    justify-content:center !important;
}
.vehicle-card-v3 .v3-info-icon{
    width:18px !important;
    min-width:18px !important;
}

/* Anhängerbilder nie verzerren. Bildausschnitt wie bei Fahrzeugen, aber mittig und seitenverhältnistreu. */
.vehicle-card-v3.trailer-card-v3 .v3-media img,
.vehicle-card-v3.trailer-card-v3 .v3-trailer-photo,
.vehicle-card-v3.trailer-card-v3 .v3-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    display:block !important;
}

/* Anhänger: zweiter Block zeigt jetzt zGG statt Zugfahrzeugliste. */
.trailer-card-v3 .v3-info-crew .v3-symbol{filter:drop-shadow(0 0 7px rgba(245,158,11,.2));}

/* Desktop-Standard kompakt halten, keine riesigen Karten durch Bildverhältnisse. */
@media (min-width: 901px){
    .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(330px,360px)) !important;justify-content:start !important;gap:.72rem !important;}
    .vehicle-card-v3 .v3-media{height:128px !important;}
    .vehicle-card-v3 .v3-body{padding:.70rem .78rem .78rem !important;gap:.58rem !important;}
    .vehicle-card-v3 .v3-title-row{min-height:28px !important;}
    .vehicle-card-v3 .v3-info-row{grid-template-columns:minmax(0,1.25fr) minmax(48px,.42fr) minmax(58px,.48fr) !important;column-gap:.5rem !important;}
    .vehicle-card-v3 .v3-status-line{min-height:34px !important;padding:.42rem .55rem !important;}
}
@media (max-width: 900px){
    .vehicle-card-v3 .v3-info-text strong{font-size:var(--vcard-fit-size, .86rem) !important;}
}


/* v2.13.6 – Infozeile wieder lesbar: Untertitel zurück, mehr Raum, keine unscharfe Skalierung */
.vehicle-card-v3 .v3-info-text span{
    display:block !important;
    margin-top:1px !important;
    font-size:.57rem !important;
    line-height:1.05 !important;
    font-weight:800 !important;
    color:rgba(203,213,225,.72) !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}
.vehicle-card-v3 .v3-info-text strong{
    font-size:.78rem !important;
    line-height:1.05 !important;
    font-weight:900 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    letter-spacing:0 !important;
    transform:none !important;
}
.vehicle-card-v3 .v3-info-text{
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:1px !important;
}
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .trailer-v3-info-row{
    min-height:36px !important;
    align-items:center !important;
}
.vehicle-card-v3 .v3-info-model{
    min-width:0 !important;
}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal{
    min-width:0 !important;
}
.vehicle-card-v3 .v3-info-icon{
    width:16px !important;
    min-width:16px !important;
    font-size:.83rem !important;
}
@media (min-width:901px){
    .vehicle-card-v3 .v3-info-row{
        grid-template-columns:minmax(0,1.34fr) minmax(54px,.46fr) minmax(62px,.50fr) !important;
        column-gap:.54rem !important;
    }
    .trailer-card-v3 .trailer-v3-info-row{
        grid-template-columns:minmax(0,1.36fr) minmax(58px,.52fr) minmax(62px,.50fr) !important;
        column-gap:.54rem !important;
    }
    .vehicle-card-v3 .v3-info-text strong{font-size:.79rem !important;}
    .vehicle-card-v3 .v3-info-text span{font-size:.56rem !important;}
}
@media (max-width:900px){
    .vehicle-card-v3 .v3-info-text strong{font-size:var(--vcard-fit-size, .84rem) !important;}
    .vehicle-card-v3 .v3-info-text span{font-size:.62rem !important;}
}

/* v2.13.7 – Infozeile ohne Untertitel, Werte größer und klar lesbar */
.vehicle-card-v3 .v3-info-text span{
    display:none !important;
}
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .trailer-v3-info-row{
    min-height:30px !important;
    align-items:center !important;
}
.vehicle-card-v3 .v3-info-text{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    min-width:0 !important;
    gap:0 !important;
}
.vehicle-card-v3 .v3-info-text strong{
    font-size:.88rem !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    color:#fff !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    letter-spacing:-.01em !important;
    transform:none !important;
}
.vehicle-card-v3 .v3-info-icon{
    width:17px !important;
    min-width:17px !important;
    font-size:.86rem !important;
    margin-right:.28rem !important;
}
.vehicle-card-v3 .v3-info-block{
    min-width:0 !important;
    align-items:center !important;
}
.vehicle-card-v3 .v3-info-model{
    padding-left:.06rem !important;
}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal{
    justify-content:center !important;
}

@media (min-width:901px){
    .vehicle-card-v3 .v3-info-row{
        grid-template-columns:minmax(0,1.55fr) minmax(52px,.38fr) minmax(58px,.44fr) !important;
        column-gap:.62rem !important;
    }
    .trailer-card-v3 .trailer-v3-info-row{
        grid-template-columns:minmax(0,1.50fr) minmax(64px,.48fr) minmax(58px,.44fr) !important;
        column-gap:.62rem !important;
    }
    .vehicle-card-v3 .v3-info-text strong{
        font-size:.88rem !important;
    }
}
@media (max-width:900px){
    .vehicle-card-v3 .v3-info-text strong{
        font-size:var(--vcard-fit-size, .96rem) !important;
    }
    .vehicle-card-v3 .v3-info-row,
    .trailer-card-v3 .trailer-v3-info-row{
        min-height:34px !important;
    }
}

/* v2.13.8 – Infozeile wie Mockup: Modell links, Werte rechts, keine Untertitel */
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .trailer-v3-info-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto auto !important;
    align-items:center !important;
    column-gap:1.15rem !important;
    min-height:38px !important;
    padding:.12rem 0 !important;
}
.vehicle-card-v3 .v3-info-block{
    border-right:0 !important;
    padding-right:0 !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:.42rem !important;
}
.vehicle-card-v3 .v3-info-model{
    justify-content:flex-start !important;
    padding-left:0 !important;
}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal{
    justify-content:flex-end !important;
    flex:0 0 auto !important;
}
.vehicle-card-v3 .v3-info-text{
    display:block !important;
    min-width:0 !important;
    line-height:1.1 !important;
}
.vehicle-card-v3 .v3-info-text span{
    display:none !important;
}
.vehicle-card-v3 .v3-info-text strong{
    display:block !important;
    color:#fff !important;
    font-family:'Outfit',system-ui,sans-serif !important;
    font-size:.88rem !important;
    font-weight:900 !important;
    line-height:1.1 !important;
    letter-spacing:-.012em !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    transform:none !important;
    filter:none !important;
    text-shadow:none !important;
}
.vehicle-card-v3 .v3-info-model .v3-info-text strong{
    font-size:.92rem !important;
    max-width:100% !important;
}
.vehicle-card-v3 .v3-info-icon{
    width:19px !important;
    min-width:19px !important;
    height:19px !important;
    margin-right:0 !important;
    font-size:1rem !important;
    line-height:1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    filter:none !important;
}
.vehicle-card-v3 .v3-symbol{font-size:1rem !important;filter:none !important;}
.vehicle-card-v3 .v3-info-crew .v3-info-text strong,
.vehicle-card-v3 .v3-info-internal .v3-info-text strong{
    font-size:.88rem !important;
    min-width:1.5rem !important;
    text-align:left !important;
}
.vehicle-card-v3 .v3-title-row{
    margin-bottom:.08rem !important;
}
.vehicle-card-v3 .v3-status-line{
    margin-top:.04rem !important;
}

/* Anhänger: Modell links, zGG mittig, interne Nr. rechts */
.trailer-card-v3 .trailer-v3-info-row{
    grid-template-columns:minmax(0,1fr) auto auto !important;
}
.trailer-card-v3 .v3-info-crew .v3-info-icon{
    color:#fbbf24 !important;
}
.trailer-card-v3 .v3-info-crew .v3-info-text strong{
    min-width:4.2rem !important;
}

@media (min-width:901px){
    .vehicle-card-v3 .v3-info-row,
    .trailer-card-v3 .trailer-v3-info-row{
        column-gap:1rem !important;
    }
    .vehicle-card-v3 .v3-info-text strong{
        font-size:.82rem !important;
    }
    .vehicle-card-v3 .v3-info-model .v3-info-text strong{
        font-size:.86rem !important;
    }
    .vehicle-card-v3 .v3-info-icon{
        width:17px !important;
        min-width:17px !important;
        height:17px !important;
        font-size:.9rem !important;
    }
}
@media (max-width:768px){
    .vehicle-card-v3 .v3-info-row,
    .trailer-card-v3 .trailer-v3-info-row{
        column-gap:1.05rem !important;
        min-height:42px !important;
    }
    .vehicle-card-v3 .v3-info-text strong{
        font-size:.98rem !important;
    }
    .vehicle-card-v3 .v3-info-model .v3-info-text strong{
        font-size:1rem !important;
    }
    .vehicle-card-v3 .v3-info-icon{
        width:20px !important;
        min-width:20px !important;
        height:20px !important;
        font-size:1.04rem !important;
    }
}
@media (max-width:430px){
    .vehicle-card-v3 .v3-info-row,
    .trailer-card-v3 .trailer-v3-info-row{
        column-gap:.62rem !important;
    }
    .vehicle-card-v3 .v3-info-text strong{
        font-size:.84rem !important;
    }
    .vehicle-card-v3 .v3-info-model .v3-info-text strong{
        font-size:.88rem !important;
    }
    .vehicle-card-v3 .v3-info-icon{
        width:17px !important;
        min-width:17px !important;
        height:17px !important;
        font-size:.9rem !important;
    }
    .trailer-card-v3 .v3-info-crew .v3-info-text strong{
        min-width:3.4rem !important;
    }
}

/* v2.13.9: Performance-Fix + finale lesbare Infozeile
   Keine JS-Textmessung mehr, keine Skalierung, keine Blur/Filter auf Kartentexten. */
.vehicle-grid,
.vehicle-grid *{
  -webkit-font-smoothing:auto !important;
  -moz-osx-font-smoothing:auto !important;
  text-rendering:auto !important;
  transform:none;
  filter:none !important;
  text-shadow:none !important;
  will-change:auto !important;
}

.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .trailer-v3-info-row{
  display:grid !important;
  grid-template-columns:minmax(0,1.6fr) minmax(74px,.44fr) minmax(74px,.44fr) !important;
  align-items:center !important;
  column-gap:0 !important;
  min-height:42px !important;
  padding:.32rem .1rem !important;
}

.vehicle-card-v3 .v3-info-block{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.42rem !important;
  padding:0 .72rem !important;
  border-right:1px solid rgba(255,255,255,.16) !important;
}
.vehicle-card-v3 .v3-info-block:last-child{border-right:0 !important;}
.vehicle-card-v3 .v3-info-model{justify-content:flex-start !important;padding-left:.25rem !important;}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal{justify-content:center !important;}
.vehicle-card-v3 .v3-info-text{min-width:0 !important;display:block !important;line-height:1.15 !important;}
.vehicle-card-v3 .v3-info-text span{display:none !important;}
.vehicle-card-v3 .v3-info-text strong{
  display:block !important;
  color:#fff !important;
  font-size:1rem !important;
  font-weight:750 !important;
  line-height:1.15 !important;
  letter-spacing:-.01em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  transform:none !important;
  filter:none !important;
  text-shadow:none !important;
}
.vehicle-card-v3 .v3-info-model .v3-info-text strong{font-size:1.02rem !important;}
.vehicle-card-v3 .v3-info-icon,
.vehicle-card-v3 .v3-symbol{
  width:20px !important;
  min-width:20px !important;
  height:20px !important;
  font-size:1.05rem !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  filter:none !important;
  text-shadow:none !important;
}

/* Bildstandard: Fahrzeuge füllen den Bildbereich, Anhänger werden eingepasst und niemals gestreckt. */
.vehicle-card-v3 .v3-media,
.trailer-card-v3 .v3-media{
  height:126px !important;
  overflow:hidden !important;
  background:#0b1422 !important;
}
.vehicle-card-v3:not(.trailer-card-v3) .v3-photo img,
.vehicle-card-v3:not(.trailer-card-v3) .vehicle-image-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}
.trailer-card-v3 .v3-photo img,
.trailer-card-v3 .v3-trailer-photo img,
.trailer-card-v3 .vehicle-image-wrap img,
.trailer-card-v3 img.v3-photo,
.trailer-card-v3 img.v3-trailer-photo{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  background:#0b1422 !important;
}

@media (min-width:901px){
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .trailer-v3-info-row{min-height:40px !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.98rem !important;}
  .vehicle-card-v3 .v3-info-model .v3-info-text strong{font-size:1rem !important;}
}
@media (max-width:768px){
  .vehicle-card-v3 .v3-media,
  .trailer-card-v3 .v3-media{height:138px !important;}
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .trailer-v3-info-row{
    grid-template-columns:minmax(0,1.45fr) minmax(64px,.45fr) minmax(68px,.48fr) !important;
    min-height:44px !important;
  }
}
@media (max-width:430px){
  .vehicle-card-v3 .v3-info-block{padding:0 .42rem !important;gap:.28rem !important;}
  .vehicle-card-v3 .v3-info-text strong{font-size:.88rem !important;}
  .vehicle-card-v3 .v3-info-model .v3-info-text strong{font-size:.9rem !important;}
  .vehicle-card-v3 .v3-info-icon,
  .vehicle-card-v3 .v3-symbol{width:17px !important;min-width:17px !important;height:17px !important;font-size:.92rem !important;}
}

/* v2.14.0 – Detailseite + Kartenstandard sauber halten */
.vehicle-card-v3 .v3-status-badge,
.trailer-card-v3 .v3-status-badge{
  display:none !important;
}
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .trailer-v3-info-row{
  grid-template-columns:minmax(0,1.55fr) minmax(54px,.42fr) minmax(64px,.50fr) !important;
  column-gap:.72rem !important;
  align-items:center !important;
  min-height:34px !important;
}
.vehicle-card-v3 .v3-info-block{
  border-right:1px solid rgba(148,163,184,.20) !important;
  padding-right:.72rem !important;
  min-width:0 !important;
}
.vehicle-card-v3 .v3-info-block:last-child,
.trailer-card-v3 .v3-info-block:last-child{border-right:0 !important;padding-right:0 !important;}
.vehicle-card-v3 .v3-info-text strong{
  font-size:.88rem !important;
  line-height:1.1 !important;
  font-weight:850 !important;
  letter-spacing:-.01em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.vehicle-card-v3 .v3-info-text span{display:none !important;}
.vehicle-card-v3 .v3-symbol{font-size:1rem !important;line-height:1 !important;}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal{justify-content:center !important;}
.vehicle-card-v3 .v3-info-crew .v3-info-text,
.vehicle-card-v3 .v3-info-internal .v3-info-text{align-items:flex-start !important;}

.detail-page{padding-top:1.1rem;}
.detail-breadcrumb{display:flex;align-items:center;gap:.55rem;color:var(--text-muted);font-weight:650;margin:0 0 1rem;}
.detail-breadcrumb a{color:var(--text-muted);text-decoration:none;}
.detail-breadcrumb a:hover{color:var(--text);}
.detail-hero{display:grid;grid-template-columns:minmax(320px,1.15fr) minmax(320px,1fr) minmax(290px,.85fr);gap:1rem;align-items:stretch;}
.detail-hero-image,.detail-info-card,.detail-side-card{background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(9,16,29,.96));border:1px solid rgba(148,163,184,.16);border-radius:18px;box-shadow:0 18px 42px rgba(0,0,0,.26);overflow:hidden;}
.detail-hero-image{min-height:340px;display:flex;align-items:center;justify-content:center;}
.detail-hero-image img,.detail-hero-image .detail-page-image-wrap,.detail-hero-image .detail-page-image-wrap img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;}
.detail-image-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#ff4b4b;background:#0b1422;}
.detail-image-fallback svg{width:72px;height:72px;stroke:currentColor;}
.detail-hero-main{display:flex;flex-direction:column;gap:1rem;}
.detail-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(9,16,29,.96));border:1px solid rgba(148,163,184,.16);border-radius:18px;padding:1.05rem 1.15rem;box-shadow:0 18px 42px rgba(0,0,0,.22);}
.detail-title-row h1{font-size:2rem;line-height:1.05;margin:0;color:var(--text);letter-spacing:-.035em;}
.detail-title-row .plate-unified-svg,.detail-title-row .dashboard-license-svg{width:150px;max-width:42vw;}
.detail-status-pill{display:inline-flex;align-items:center;gap:.55rem;border-radius:999px;padding:.62rem .9rem;font-weight:850;border:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.8);width:max-content;max-width:100%;}
.detail-status-pill span{width:.72rem;height:.72rem;border-radius:50%;background:currentColor;box-shadow:0 0 15px currentColor;}
.detail-status-free{color:#20d16b;background:rgba(16,185,129,.11);border-color:rgba(16,185,129,.28);}
.detail-status-busy{color:#ff4b4b;background:rgba(239,68,68,.11);border-color:rgba(239,68,68,.30);}
.detail-status-soon{color:#fb923c;background:rgba(251,146,60,.11);border-color:rgba(251,146,60,.30);}
.detail-info-card,.detail-side-card{padding:1.05rem;}
.detail-info-card h2,.detail-side-card h2{font-size:1.05rem;margin:0 0 .85rem;color:var(--text);letter-spacing:-.015em;}
.detail-page-row{display:grid;grid-template-columns:28px 1fr auto;gap:.75rem;align-items:center;padding:.68rem 0;border-bottom:1px solid rgba(148,163,184,.12);}
.detail-page-row:last-child{border-bottom:0;}
.detail-page-row-icon{font-size:1rem;opacity:.92;}
.detail-page-row span:nth-child(2){color:var(--text-muted);font-weight:650;}
.detail-page-row strong{color:var(--text);font-weight:850;text-align:right;}
.detail-res-list,.detail-history-list-page,.detail-related-list-page{display:flex;flex-direction:column;gap:.65rem;}
.detail-res-item{display:grid;grid-template-columns:112px 1fr;gap:.75rem;align-items:start;padding:.75rem;border-radius:14px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.12);}
.detail-res-item strong,.detail-related-item strong,.detail-history-item-page strong{color:var(--text);font-weight:850;}
.detail-res-item span,.detail-related-item span,.detail-history-item-page span,.detail-history-item-page em{display:block;color:var(--text-muted);font-style:normal;font-size:.85rem;margin-top:.18rem;}
.detail-related-item{display:grid;grid-template-columns:1fr auto;gap:.55rem;align-items:center;padding:.8rem;border-radius:14px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.12);color:inherit;text-decoration:none;}
.detail-related-item:hover{border-color:rgba(239,68,68,.35);transform:translateY(-1px);}
.detail-related-item .plate-unified-svg,.detail-related-item .dashboard-license-svg{width:102px;}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;}
.detail-empty{color:var(--text-muted);background:rgba(15,23,42,.55);border:1px dashed rgba(148,163,184,.18);border-radius:14px;padding:1rem;font-weight:650;}
.detail-history-item-page{display:grid;grid-template-columns:92px 1fr auto;gap:.7rem;align-items:center;padding:.72rem;border-radius:14px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.12);}
@media (max-width:1200px){.detail-hero{grid-template-columns:1fr 1fr}.detail-side-card{grid-column:1/-1}.detail-hero-image{min-height:300px}}
@media (max-width:760px){.detail-page{padding:1rem}.detail-hero,.detail-grid{grid-template-columns:1fr}.detail-title-row{align-items:flex-start;flex-direction:column}.detail-title-row h1{font-size:1.65rem}.detail-hero-image{min-height:230px}.detail-res-item,.detail-history-item-page{grid-template-columns:1fr}.detail-related-item{grid-template-columns:1fr}.detail-related-item .plate-unified-svg,.detail-related-item .dashboard-license-svg{width:116px}}

/* ============================================================
   v2.15.0 Detailseite V2 – ruhiger, mit großem Zurück-Button
   ============================================================ */
.detail-page-v2{
  padding-top:1.15rem;
  max-width:1450px;
  margin:0 auto;
  padding-left:24px;
  padding-right:24px;
}
.detail-back-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:46px;
  padding:.72rem 1.1rem;
  margin:0 0 1rem;
  border-radius:14px;
  color:var(--text);
  text-decoration:none;
  font-weight:800;
  background:linear-gradient(180deg,rgba(30,41,59,.92),rgba(15,23,42,.92));
  border:1px solid rgba(148,163,184,.20);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.detail-back-button:hover{
  border-color:rgba(239,68,68,.34);
  background:linear-gradient(180deg,rgba(39,52,74,.96),rgba(19,31,50,.96));
}
.detail-breadcrumb--small{
  font-size:.88rem;
  margin-bottom:1.35rem;
  opacity:.9;
}
.detail-layout-v2{
  display:grid;
  grid-template-columns:500px minmax(360px,1fr) 340px;
  gap:1.15rem;
  align-items:start;
}
.detail-left-col,.detail-middle-col,.detail-right-col{
  display:flex;
  flex-direction:column;
  gap:1.15rem;
  min-width:0;
}
.detail-hero-image--v2{
  position:relative;
  aspect-ratio:4 / 3;
  min-height:0;
  height:auto;
  border-radius:18px;
  background:#08111f;
  overflow:hidden;
}
.detail-hero-image--v2 > img,
.detail-hero-image--v2 .detail-image-fallback{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.detail-hero-image--v2 .detail-image-fallback{
  display:flex;
  align-items:center;
  justify-content:center;
}
.detail-image-type-chip{
  position:absolute;
  z-index:2;
  left:1rem;
  top:1rem;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  max-width:calc(100% - 2rem);
  padding:.48rem .72rem;
  border-radius:10px;
  color:#fff;
  font-weight:900;
  font-size:.9rem;
  background:rgba(15,23,42,.76);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 24px rgba(0,0,0,.22);
  backdrop-filter:blur(6px);
}
.detail-image-status{
  position:absolute;
  z-index:2;
  left:1rem;
  bottom:1rem;
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  max-width:calc(100% - 2rem);
  padding:.58rem .9rem;
  border-radius:999px;
  font-weight:900;
  font-size:.94rem;
  border:1px solid currentColor;
  background:rgba(15,23,42,.78);
  box-shadow:0 12px 28px rgba(0,0,0,.24);
}
.detail-image-status span{
  width:.72rem;
  height:.72rem;
  border-radius:999px;
  background:currentColor;
  box-shadow:0 0 16px currentColor;
}
.detail-title-row--clean{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:.15rem 0 .35rem;
  border-radius:0;
}
.detail-title-row--clean h1{
  font-size:2.15rem;
  letter-spacing:-.04em;
}
.detail-title-row--clean .detail-title-plate .plate-unified-svg,
.detail-title-row--clean .detail-title-plate .dashboard-license-svg{
  width:154px;
}
.detail-tech-card,
.detail-side-card--reservations,
.detail-history-card,
.detail-related-card--wide{
  border-color:rgba(148,163,184,.18);
  background:linear-gradient(180deg,rgba(15,23,42,.93),rgba(8,15,28,.96));
}
.detail-panel-headline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:.85rem;
}
.detail-panel-headline h2{margin:0;}
.detail-panel-headline a,
.detail-wide-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  color:var(--text);
  text-decoration:none;
  font-weight:800;
  font-size:.9rem;
  padding:.68rem .85rem;
  border-radius:12px;
  background:rgba(15,23,42,.74);
  border:1px solid rgba(148,163,184,.17);
}
.detail-panel-headline a:hover,
.detail-wide-action:hover{border-color:rgba(239,68,68,.32);}
.detail-wide-action{width:100%;margin-top:.75rem;}
.detail-history-card h2 span{color:var(--text-muted);font-size:.9rem;font-weight:650;}
.detail-related-card-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.85rem;
}
.detail-related-tile{
  min-width:0;
  display:grid;
  grid-template-columns:88px minmax(0,1fr) 16px;
  gap:.75rem;
  align-items:center;
  min-height:102px;
  padding:.75rem;
  color:inherit;
  text-decoration:none;
  border-radius:14px;
  background:rgba(15,23,42,.74);
  border:1px solid rgba(148,163,184,.14);
}
.detail-related-tile:hover{border-color:rgba(239,68,68,.34);background:rgba(20,31,50,.80);}
.detail-related-thumb{
  width:88px;
  height:64px;
  border-radius:10px;
  overflow:hidden;
  background:#07111d;
  display:flex;
  align-items:center;
  justify-content:center;
}
.detail-related-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.detail-mini-fallback{
  color:#ff6b6b;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.detail-mini-fallback svg{width:38px;height:38px;stroke:currentColor;}
.detail-related-copy{min-width:0;}
.detail-related-copy strong{
  display:block;
  color:var(--text);
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.detail-related-copy span{
  display:block;
  color:var(--text-muted);
  font-size:.82rem;
  margin-top:.16rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.detail-related-plate{margin-top:.35rem;}
.detail-related-plate .plate-unified-svg,
.detail-related-plate .dashboard-license-svg{width:96px;}
.detail-related-meta{
  display:flex;
  align-items:center;
  gap:.7rem;
  margin-top:.35rem;
  color:var(--text-muted);
  font-size:.8rem;
}
.detail-related-arrow{
  color:var(--text-muted);
  font-size:1.8rem;
  font-weight:400;
}
.detail-res-item--clickable{
  color:inherit;
  text-decoration:none;
  grid-template-columns:110px minmax(0,1fr) 18px;
  align-items:center;
}
.detail-res-main{min-width:0;}
.detail-res-main strong{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.detail-row-arrow{
  color:var(--text-muted);
  font-size:1.8rem;
  line-height:1;
}
.detail-history-list-page--scroll{
  max-height:300px;
  overflow:auto;
  padding-right:.25rem;
}
.detail-empty--plain{
  border-style:solid;
  border-color:rgba(148,163,184,.12);
}
.detail-page-v2 .detail-page-row{
  grid-template-columns:30px 1fr auto;
  padding:.72rem 0;
}
.detail-page-v2 .detail-page-row strong{
  max-width:240px;
}
/* Einheitliches Bildverhalten für Anhänger und Fahrzeuge in Karten */
.vehicle-card-v3 .v3-photo,
.vehicle-card-v3 .v3-photo img,
.trailer-card-v3 .v3-trailer-photo,
.trailer-card-v3 .v3-trailer-photo img{
  object-fit:cover !important;
  object-position:center center !important;
}
@media (max-width:1200px){
  .detail-layout-v2{grid-template-columns:minmax(380px,1fr) minmax(320px,.9fr);}
  .detail-right-col{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;}
  .detail-related-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:900px){
  .detail-layout-v2{grid-template-columns:1fr;}
  .detail-right-col{display:flex;}
  .detail-related-card-grid{grid-template-columns:1fr;}
  .detail-title-row--clean{flex-direction:row;align-items:center;}
  .detail-title-row--clean h1{font-size:1.8rem;}
}
@media (max-width:600px){
  .detail-page-v2{padding:1rem;}
  .detail-back-button{width:100%;}
  .detail-title-row--clean{flex-direction:column;align-items:flex-start;}
  .detail-hero-image--v2{aspect-ratio:4 / 3;}
  .detail-related-tile{grid-template-columns:74px minmax(0,1fr) 14px;}
  .detail-related-thumb{width:74px;height:54px;}
  .detail-res-item--clickable{grid-template-columns:1fr 18px;}
  .detail-res-date{grid-column:1/-1;}
}

/* v2.15.1: Karten-Infozeile lesbar und kompakt
   Ziel: keine Untertitel, klare Trennstriche, Modell links, Sitzplätze/Interne Nr. rechts. */
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .v3-info-row{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 68px 82px !important;
  align-items:center !important;
  gap:0 !important;
  min-height:40px !important;
  padding:.58rem .58rem .52rem .58rem !important;
  margin:.18rem 0 .35rem !important;
  border-top:1px solid rgba(148,163,184,.16) !important;
  border-bottom:0 !important;
}
.vehicle-card-v3 .v3-info-block,
.trailer-card-v3 .v3-info-block{
  min-width:0 !important;
  height:100% !important;
  display:flex !important;
  align-items:center !important;
  padding:0 .62rem !important;
  gap:.38rem !important;
  border-right:1px solid rgba(148,163,184,.18) !important;
  line-height:1 !important;
}
.vehicle-card-v3 .v3-info-block:last-child,
.trailer-card-v3 .v3-info-block:last-child{
  border-right:0 !important;
  padding-right:0 !important;
}
.vehicle-card-v3 .v3-info-model,
.trailer-card-v3 .v3-info-model{
  justify-content:flex-start !important;
  padding-left:0 !important;
}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal,
.trailer-card-v3 .v3-info-crew,
.trailer-card-v3 .v3-info-internal{
  justify-content:center !important;
}
.vehicle-card-v3 .v3-info-text,
.trailer-card-v3 .v3-info-text{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  line-height:1 !important;
}
.vehicle-card-v3 .v3-info-text span,
.trailer-card-v3 .v3-info-text span{
  display:none !important;
}
.vehicle-card-v3 .v3-info-text strong,
.trailer-card-v3 .v3-info-text strong{
  display:block !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:#fff !important;
  font-size:.96rem !important;
  font-weight:850 !important;
  letter-spacing:-.015em !important;
  line-height:1 !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.vehicle-card-v3 .v3-info-model .v3-info-text strong,
.trailer-card-v3 .v3-info-model .v3-info-text strong{
  font-size:1rem !important;
  font-weight:850 !important;
}
.vehicle-card-v3 .v3-info-icon,
.vehicle-card-v3 .v3-symbol,
.trailer-card-v3 .v3-info-icon,
.trailer-card-v3 .v3-symbol{
  width:18px !important;
  min-width:18px !important;
  height:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:1.02rem !important;
  line-height:1 !important;
  filter:none !important;
  transform:none !important;
}
.vehicle-card-v3 .v3-info-crew .v3-info-text strong,
.vehicle-card-v3 .v3-info-internal .v3-info-text strong,
.trailer-card-v3 .v3-info-crew .v3-info-text strong,
.trailer-card-v3 .v3-info-internal .v3-info-text strong{
  font-size:.94rem !important;
  min-width:0 !important;
}
@media (max-width:520px){
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .v3-info-row{
    grid-template-columns:minmax(0, 1fr) 56px 66px !important;
    min-height:36px !important;
    padding:.5rem .5rem .45rem !important;
  }
  .vehicle-card-v3 .v3-info-block,
  .trailer-card-v3 .v3-info-block{
    padding:0 .42rem !important;
    gap:.28rem !important;
  }
  .vehicle-card-v3 .v3-info-model .v3-info-text strong,
  .trailer-card-v3 .v3-info-model .v3-info-text strong{
    font-size:.92rem !important;
  }
  .vehicle-card-v3 .v3-info-crew .v3-info-text strong,
  .vehicle-card-v3 .v3-info-internal .v3-info-text strong,
  .trailer-card-v3 .v3-info-crew .v3-info-text strong,
  .trailer-card-v3 .v3-info-internal .v3-info-text strong{
    font-size:.84rem !important;
  }
  .vehicle-card-v3 .v3-info-icon,
  .vehicle-card-v3 .v3-symbol,
  .trailer-card-v3 .v3-info-icon,
  .trailer-card-v3 .v3-symbol{
    width:16px !important;
    min-width:16px !important;
    height:16px !important;
    font-size:.9rem !important;
  }
}

/* v2.15.2: finaler Infozeilen-Feinschliff
   Ziel: kleiner, scharf, 3 klare Bereiche mit genau zwei dezenten Trennlinien. */
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .v3-info-row{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 58px 68px !important;
  align-items:center !important;
  gap:0 !important;
  min-height:34px !important;
  padding:.42rem .48rem .38rem .48rem !important;
  margin:.12rem 0 .30rem !important;
  border-top:1px solid rgba(148,163,184,.14) !important;
  border-bottom:0 !important;
}
.vehicle-card-v3 .v3-info-block,
.trailer-card-v3 .v3-info-block{
  min-width:0 !important;
  height:22px !important;
  display:flex !important;
  align-items:center !important;
  gap:.32rem !important;
  padding:0 .46rem !important;
  border-right:1px solid rgba(148,163,184,.18) !important;
  line-height:1 !important;
}
.vehicle-card-v3 .v3-info-block:last-child,
.trailer-card-v3 .v3-info-block:last-child{
  border-right:0 !important;
  padding-right:0 !important;
}
.vehicle-card-v3 .v3-info-model,
.trailer-card-v3 .v3-info-model{
  justify-content:flex-start !important;
  padding-left:0 !important;
}
.vehicle-card-v3 .v3-info-crew,
.vehicle-card-v3 .v3-info-internal,
.trailer-card-v3 .v3-info-crew,
.trailer-card-v3 .v3-info-internal{
  justify-content:center !important;
}
.vehicle-card-v3 .v3-info-text,
.trailer-card-v3 .v3-info-text{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  line-height:1 !important;
}
.vehicle-card-v3 .v3-info-text span,
.trailer-card-v3 .v3-info-text span{
  display:none !important;
}
.vehicle-card-v3 .v3-info-text strong,
.trailer-card-v3 .v3-info-text strong{
  display:block !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  color:#f8fafc !important;
  font-size:13px !important;
  font-weight:650 !important;
  letter-spacing:-.01em !important;
  line-height:1 !important;
  -webkit-font-smoothing:antialiased !important;
  -moz-osx-font-smoothing:grayscale !important;
  text-rendering:optimizeLegibility !important;
}
.vehicle-card-v3 .v3-info-model .v3-info-text strong,
.trailer-card-v3 .v3-info-model .v3-info-text strong{
  font-size:14px !important;
  font-weight:700 !important;
}
.vehicle-card-v3 .v3-info-icon,
.vehicle-card-v3 .v3-symbol,
.trailer-card-v3 .v3-info-icon,
.trailer-card-v3 .v3-symbol{
  width:15px !important;
  min-width:15px !important;
  height:15px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:14px !important;
  line-height:1 !important;
  filter:none !important;
  transform:none !important;
}
.vehicle-card-v3 .v3-status-line,
.trailer-card-v3 .v3-status-line{
  margin-top:.18rem !important;
}
@media (max-width:520px){
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .v3-info-row{
    grid-template-columns:minmax(0, 1fr) 52px 62px !important;
    min-height:32px !important;
    padding:.38rem .42rem .34rem !important;
  }
  .vehicle-card-v3 .v3-info-block,
  .trailer-card-v3 .v3-info-block{
    gap:.24rem !important;
    padding:0 .34rem !important;
  }
  .vehicle-card-v3 .v3-info-model .v3-info-text strong,
  .trailer-card-v3 .v3-info-model .v3-info-text strong{
    font-size:13px !important;
  }
  .vehicle-card-v3 .v3-info-text strong,
  .trailer-card-v3 .v3-info-text strong{
    font-size:12px !important;
  }
  .vehicle-card-v3 .v3-info-icon,
  .vehicle-card-v3 .v3-symbol,
  .trailer-card-v3 .v3-info-icon,
  .trailer-card-v3 .v3-symbol{
    width:14px !important;
    min-width:14px !important;
    height:14px !important;
    font-size:13px !important;
  }
}

/* v2.15.3: Infozeile ruhiger
   - zweiter horizontaler Querstreifen entfernt
   - rechte Info-Werte kleiner und dezenter
   - Modell bleibt lesbar, aber nicht zu dominant */
.vehicle-card-v3 .v3-info-row,
.trailer-card-v3 .v3-info-row{
  border-top:0 !important;
  border-bottom:0 !important;
  min-height:30px !important;
  padding:.30rem .48rem .28rem .48rem !important;
  margin:.06rem 0 .26rem !important;
}
.vehicle-card-v3 .v3-info-block,
.trailer-card-v3 .v3-info-block{
  height:18px !important;
  gap:.26rem !important;
  padding:0 .40rem !important;
  border-right:1px solid rgba(148,163,184,.16) !important;
}
.vehicle-card-v3 .v3-info-block:last-child,
.trailer-card-v3 .v3-info-block:last-child{
  border-right:0 !important;
}
.vehicle-card-v3 .v3-info-model .v3-info-text strong,
.trailer-card-v3 .v3-info-model .v3-info-text strong{
  font-size:13px !important;
  font-weight:650 !important;
  letter-spacing:-.005em !important;
}
.vehicle-card-v3 .v3-info-crew .v3-info-text strong,
.vehicle-card-v3 .v3-info-internal .v3-info-text strong,
.trailer-card-v3 .v3-info-crew .v3-info-text strong,
.trailer-card-v3 .v3-info-internal .v3-info-text strong{
  font-size:11.5px !important;
  font-weight:600 !important;
  color:#e2e8f0 !important;
  letter-spacing:0 !important;
}
.vehicle-card-v3 .v3-info-icon,
.vehicle-card-v3 .v3-symbol,
.trailer-card-v3 .v3-info-icon,
.trailer-card-v3 .v3-symbol{
  width:13px !important;
  min-width:13px !important;
  height:13px !important;
  font-size:12px !important;
}
@media (max-width:520px){
  .vehicle-card-v3 .v3-info-row,
  .trailer-card-v3 .v3-info-row{
    min-height:29px !important;
    padding:.28rem .42rem .25rem !important;
  }
  .vehicle-card-v3 .v3-info-model .v3-info-text strong,
  .trailer-card-v3 .v3-info-model .v3-info-text strong{
    font-size:12.5px !important;
  }
  .vehicle-card-v3 .v3-info-crew .v3-info-text strong,
  .vehicle-card-v3 .v3-info-internal .v3-info-text strong,
  .trailer-card-v3 .v3-info-crew .v3-info-text strong,
  .trailer-card-v3 .v3-info-internal .v3-info-text strong{
    font-size:11px !important;
  }
}

/* v2.15.5 Detailseite: nur Breite begrenzen, keine Bild-Bubble */
.detail-page-v2{
  max-width:1600px;
  margin-left:auto;
  margin-right:auto;
}
.detail-image-type-chip{display:none !important;}
@media (min-width:1201px){
  .detail-layout-v2{
    grid-template-columns:500px minmax(430px,1fr) 360px;
    gap:1.35rem;
  }
}

/* v2.15.6 Detailseite: Layout wieder harmonisch, ohne Bild-Bubble
   Nur Detailseite betroffen. Fahrzeugbild bleibt groß, Seite aber nicht überbreit. */
.detail-page-v2{
  width:100%;
  max-width:1500px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:28px !important;
  padding-right:28px !important;
}
.detail-image-type-chip{
  display:none !important;
}
@media (min-width:1201px){
  .detail-layout-v2{
    display:grid !important;
    grid-template-columns:minmax(500px,560px) minmax(380px,1fr) minmax(330px,370px) !important;
    gap:24px !important;
    align-items:start !important;
  }
  .detail-left-col,
  .detail-middle-col,
  .detail-right-col{
    min-width:0 !important;
  }
  .detail-hero-image--v2{
    width:100% !important;
    aspect-ratio:4 / 3 !important;
    max-height:430px !important;
  }
  .detail-side-card--reservations,
  .detail-history-card{
    width:100% !important;
  }
}
@media (max-width:1200px){
  .detail-page-v2{
    max-width:980px !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }
  .detail-layout-v2{
    grid-template-columns:minmax(360px,1fr) minmax(360px,1fr) !important;
    gap:20px !important;
  }
  .detail-right-col{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:20px !important;
  }
}
@media (max-width:820px){
  .detail-page-v2{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  .detail-layout-v2,
  .detail-right-col{
    display:flex !important;
    flex-direction:column !important;
    gap:16px !important;
  }
}

/* v2.15.7 Detailseite: zurück zum bewährten Layout
   Bild links groß, Technik mittig, Reservierungen rechts, Historie unten breit. */
.detail-page-v2{
  max-width:1500px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
}
.detail-image-type-chip{display:none !important;}
@media (min-width:1201px){
  .detail-layout-v2{
    display:grid !important;
    grid-template-columns:560px minmax(390px,1fr) 360px !important;
    gap:24px !important;
    align-items:start !important;
  }
  .detail-left-col{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:1.15rem !important;
    min-width:0 !important;
  }
  .detail-middle-col{
    grid-column:2 !important;
    grid-row:1 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:1.15rem !important;
    min-width:0 !important;
  }
  .detail-right-col{
    display:contents !important;
  }
  .detail-side-card--reservations{
    grid-column:3 !important;
    grid-row:1 !important;
    width:100% !important;
    min-width:0 !important;
  }
  .detail-history-card{
    grid-column:2 / 4 !important;
    grid-row:2 !important;
    width:100% !important;
    min-width:0 !important;
  }
  .detail-hero-image--v2{
    width:100% !important;
    aspect-ratio:4 / 3 !important;
    max-height:none !important;
  }
}
@media (max-width:1200px){
  .detail-page-v2{
    max-width:980px !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }
  .detail-layout-v2{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  .detail-right-col{
    display:flex !important;
    flex-direction:column !important;
    gap:20px !important;
  }
}

/* v2.15.8 Detailseite: Kartenhöhen und Reservierungsliste beruhigt
   Nur Detailseite betroffen. Fahrzeugbild bleibt unverändert. */
@media (min-width:1201px){
  .detail-page-v2{
    max-width:1500px !important;
  }

  /* Reservierungen auf Höhe der Technik-Karte ziehen */
  .detail-side-card--reservations{
    margin-top:68px !important;
    height:374px !important;
    max-height:374px !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
  }

  .detail-side-card--reservations > h2{
    flex:0 0 auto !important;
    margin-bottom:.75rem !important;
  }

  .detail-side-card--reservations .detail-res-list--page{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding-right:.25rem !important;
    gap:.5rem !important;
  }

  .detail-side-card--reservations .detail-wide-action{
    flex:0 0 auto !important;
    margin-top:.65rem !important;
  }

  /* Untere Karten gleich hoch: Zugfähige Anhänger und Historie */
  .detail-related-card--wide,
  .detail-history-card{
    height:220px !important;
    max-height:220px !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
  }

  .detail-related-card--wide .detail-panel-headline,
  .detail-history-card > h2{
    flex:0 0 auto !important;
    margin-bottom:.7rem !important;
  }

  .detail-related-card--wide .detail-related-card-grid,
  .detail-related-card--wide .detail-empty,
  .detail-history-card .detail-history-list-page--scroll{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
  }

  .detail-history-card .detail-wide-action{
    flex:0 0 auto !important;
    margin-top:.65rem !important;
  }
}

/* Detail-Reservierungen kompakter und besser lesbar */
.detail-res-item--clickable{
  grid-template-columns:88px minmax(0,1fr) 12px !important;
  gap:.55rem !important;
  min-height:64px !important;
  padding:.58rem .62rem !important;
  border-radius:12px !important;
}
.detail-res-date strong{
  font-size:.92rem !important;
  line-height:1.12 !important;
}
.detail-res-date span{
  font-size:.78rem !important;
  line-height:1.18 !important;
  margin-top:.2rem !important;
}
.detail-res-main strong{
  font-size:.86rem !important;
  line-height:1.16 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
}
.detail-res-main span{
  font-size:.76rem !important;
  line-height:1.18 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
}
.detail-row-arrow{
  font-size:1.25rem !important;
  opacity:.75 !important;
}

/* Detail-Historie ebenfalls etwas kompakter */
.detail-history-item-page{
  grid-template-columns:86px minmax(0,1fr) minmax(70px,.7fr) !important;
  gap:.55rem !important;
  padding:.58rem .65rem !important;
  min-height:54px !important;
}
.detail-history-item-page strong{
  font-size:.86rem !important;
}
.detail-history-item-page span,
.detail-history-item-page em{
  font-size:.76rem !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width:1200px){
  .detail-side-card--reservations,
  .detail-related-card--wide,
  .detail-history-card{
    height:auto !important;
    max-height:none !important;
    margin-top:0 !important;
  }
}


/* ============================================================
   v2.15.9 Detailseite: kompletter ruhiger Neuaufbau
   Ziel: keine 3-Spalten-Hektik, keine Scrollbar-Kacheln, keine Bild-Bubble.
   HTML bleibt kompatibel, nur die Detailseite wird neu angeordnet.
   ============================================================ */
.detail-page-v2{
  width:100% !important;
  max-width:1400px !important;
  margin:0 auto !important;
  padding:22px 28px 32px !important;
}
.detail-page-v2 .detail-back-button{
  min-height:42px !important;
  padding:.62rem 1rem !important;
  margin:0 0 .95rem !important;
  border-radius:12px !important;
}
.detail-page-v2 .detail-breadcrumb--small{
  margin-bottom:1.2rem !important;
  font-size:.84rem !important;
}
.detail-image-type-chip{
  display:none !important;
}

@media (min-width:1101px){
  .detail-layout-v2{
    display:grid !important;
    grid-template-columns:minmax(500px,560px) minmax(560px,1fr) !important;
    grid-template-areas:
      "left main"
      "left side" !important;
    gap:22px !important;
    align-items:start !important;
  }
  .detail-left-col{
    grid-area:left !important;
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
    min-width:0 !important;
  }
  .detail-middle-col{
    grid-area:main !important;
    display:flex !important;
    flex-direction:column !important;
    gap:16px !important;
    min-width:0 !important;
  }
  .detail-right-col{
    grid-area:side !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:18px !important;
    min-width:0 !important;
  }
  .detail-hero-image--v2{
    width:100% !important;
    aspect-ratio:4 / 3 !important;
    height:auto !important;
    max-height:none !important;
    min-height:0 !important;
  }
}

/* Titelbereich ruhig und kompakt */
.detail-title-row--clean{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  padding:0 0 2px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.detail-title-row--clean h1{
  margin:0 !important;
  font-size:2.05rem !important;
  line-height:1.05 !important;
  letter-spacing:-.045em !important;
}
.detail-title-row--clean .detail-title-plate{
  flex:0 0 auto !important;
}
.detail-title-row--clean .detail-title-plate .plate-unified-svg,
.detail-title-row--clean .detail-title-plate .dashboard-license-svg{
  width:142px !important;
  display:block !important;
}

/* Karten wieder natürlich wachsen lassen, keine künstlichen Höhen/Scrollbars */
.detail-tech-card,
.detail-side-card--reservations,
.detail-history-card,
.detail-related-card--wide{
  height:auto !important;
  max-height:none !important;
  margin-top:0 !important;
  overflow:visible !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,rgba(15,23,42,.93),rgba(8,15,28,.96)) !important;
  border:1px solid rgba(148,163,184,.17) !important;
}
.detail-side-card--reservations,
.detail-history-card{
  display:flex !important;
  flex-direction:column !important;
}
.detail-side-card--reservations > h2,
.detail-history-card > h2,
.detail-tech-card > h2,
.detail-panel-headline h2{
  font-size:1rem !important;
  line-height:1.2 !important;
  margin-bottom:.75rem !important;
}
.detail-history-card h2 span{
  font-size:.78rem !important;
  color:var(--text-muted) !important;
}

/* Technikdaten klarer, aber nicht riesig */
.detail-page-v2 .detail-page-row{
  grid-template-columns:26px 1fr auto !important;
  gap:.6rem !important;
  padding:.62rem 0 !important;
}
.detail-page-v2 .detail-page-row span:not(.detail-page-row-icon){
  font-size:.86rem !important;
}
.detail-page-v2 .detail-page-row strong{
  font-size:.92rem !important;
  max-width:220px !important;
}
.detail-page-row-icon{
  font-size:.88rem !important;
}

/* Reservierungen und Historie: lesbar ohne Chaos */
.detail-side-card--reservations .detail-res-list--page,
.detail-history-card .detail-history-list-page--scroll{
  display:flex !important;
  flex-direction:column !important;
  gap:.55rem !important;
  overflow:visible !important;
  max-height:none !important;
  padding-right:0 !important;
}
.detail-res-item--clickable{
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) 14px !important;
  gap:.6rem !important;
  align-items:center !important;
  min-height:58px !important;
  padding:.55rem .62rem !important;
  border-radius:12px !important;
}
.detail-res-date strong{
  font-size:.86rem !important;
  line-height:1.12 !important;
}
.detail-res-date span{
  font-size:.74rem !important;
  line-height:1.15 !important;
  color:var(--text-muted) !important;
}
.detail-res-main strong{
  font-size:.82rem !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.detail-res-main span{
  font-size:.74rem !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:var(--text-muted) !important;
}
.detail-row-arrow{
  font-size:1.15rem !important;
  opacity:.65 !important;
}
.detail-wide-action{
  margin-top:.7rem !important;
  min-height:38px !important;
  padding:.55rem .75rem !important;
  border-radius:11px !important;
  font-size:.82rem !important;
}
.detail-history-item-page{
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) minmax(56px,.55fr) !important;
  gap:.55rem !important;
  align-items:center !important;
  min-height:52px !important;
  padding:.55rem .62rem !important;
  border-radius:12px !important;
}
.detail-history-item-page strong{
  font-size:.82rem !important;
}
.detail-history-item-page span,
.detail-history-item-page em{
  font-size:.73rem !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* Zugehörige Anhänger/Fahrzeuge: kompakt und ohne gestrichelte Riesenbox */
.detail-related-card--wide .detail-empty,
.detail-empty--plain{
  min-height:auto !important;
  padding:.85rem 1rem !important;
  border-style:solid !important;
  border-color:rgba(148,163,184,.12) !important;
  border-radius:12px !important;
}
.detail-related-card-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:.7rem !important;
  overflow:visible !important;
}
.detail-related-tile{
  grid-template-columns:82px minmax(0,1fr) 14px !important;
  min-height:88px !important;
  padding:.65rem !important;
}
.detail-related-thumb{
  width:82px !important;
  height:58px !important;
}

@media (max-width:1100px){
  .detail-page-v2{
    max-width:920px !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }
  .detail-layout-v2,
  .detail-right-col{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }
  .detail-title-row--clean h1{font-size:1.85rem !important;}
}
@media (max-width:620px){
  .detail-page-v2{padding:14px !important;}
  .detail-title-row--clean{align-items:flex-start !important;flex-direction:column !important;}
  .detail-title-row--clean .detail-title-plate .plate-unified-svg,
  .detail-title-row--clean .detail-title-plate .dashboard-license-svg{width:132px !important;}
  .detail-res-item--clickable,
  .detail-history-item-page{grid-template-columns:1fr 14px !important;}
  .detail-res-date,
  .detail-history-item-page strong{grid-column:1/-1 !important;}
}

/* ============================================================
   v2.16.0 Detailseite: ruhige 2-Spalten-Struktur
   Hauptbereich: Bild links, Titel/Technik rechts.
   Danach Reservierungen breit, unten Anhänger + Historie.
   ============================================================ */
.detail-page-v2{
  max-width:1500px !important;
  margin:0 auto !important;
  padding:22px 28px 36px !important;
}
.detail-layout-v2.detail-layout-v3{
  display:grid !important;
  grid-template-columns:minmax(500px,560px) minmax(560px,1fr) !important;
  grid-template-areas:
    "image data"
    "reservations reservations"
    "related history" !important;
  gap:22px !important;
  align-items:start !important;
}
.detail-top-image-col{grid-area:image !important; min-width:0 !important;}
.detail-top-data-col{grid-area:data !important; min-width:0 !important; display:flex !important; flex-direction:column !important; gap:16px !important;}
.detail-reservations-wide{grid-area:reservations !important; min-width:0 !important;}
.detail-related-wide{grid-area:related !important; min-width:0 !important;}
.detail-history-wide{grid-area:history !important; min-width:0 !important;}

.detail-layout-v3 .detail-hero-image--v2{
  width:100% !important;
  aspect-ratio:4 / 3 !important;
  height:auto !important;
  max-height:none !important;
}
.detail-layout-v3 .detail-hero-image--v2 img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.detail-layout-v3 .detail-title-row--clean{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.detail-layout-v3 .detail-title-row--clean h1{
  font-size:2.05rem !important;
  line-height:1.05 !important;
  margin:0 !important;
}
.detail-layout-v3 .detail-title-row--clean .detail-title-plate .plate-unified-svg,
.detail-layout-v3 .detail-title-row--clean .detail-title-plate .dashboard-license-svg{
  width:142px !important;
}

.detail-layout-v3 .detail-tech-card,
.detail-layout-v3 .detail-side-card--reservations,
.detail-layout-v3 .detail-history-card,
.detail-layout-v3 .detail-related-card--wide{
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,rgba(15,23,42,.94),rgba(8,15,28,.96)) !important;
  border:1px solid rgba(148,163,184,.17) !important;
}

/* Reservierungen breit und ohne rechte Chaos-Spalte */
.detail-layout-v3 .detail-side-card--reservations .detail-res-list--page{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:.75rem !important;
  overflow:visible !important;
  max-height:none !important;
  padding-right:0 !important;
}
.detail-layout-v3 .detail-res-item--clickable{
  grid-template-columns:78px minmax(0,1fr) 14px !important;
  min-height:64px !important;
  padding:.65rem .72rem !important;
  border-radius:12px !important;
}
.detail-layout-v3 .detail-res-date strong{font-size:.86rem !important;}
.detail-layout-v3 .detail-res-date span{font-size:.74rem !important;}
.detail-layout-v3 .detail-res-main strong{font-size:.82rem !important;}
.detail-layout-v3 .detail-res-main span{font-size:.73rem !important;}
.detail-layout-v3 .detail-wide-action{
  margin-top:.8rem !important;
  width:max-content !important;
  min-width:230px !important;
  margin-left:auto !important;
}

/* Untere Reihe ruhig nebeneinander */
.detail-layout-v3 .detail-related-card-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;
  gap:.75rem !important;
}
.detail-layout-v3 .detail-history-list-page--scroll{
  display:flex !important;
  flex-direction:column !important;
  gap:.55rem !important;
  overflow:visible !important;
  max-height:none !important;
}
.detail-layout-v3 .detail-history-item-page{
  grid-template-columns:86px minmax(0,1fr) minmax(70px,.42fr) !important;
  min-height:52px !important;
  padding:.55rem .65rem !important;
}

@media (max-width:1300px){
  .detail-layout-v2.detail-layout-v3{
    grid-template-columns:minmax(420px,520px) minmax(480px,1fr) !important;
  }
  .detail-layout-v3 .detail-side-card--reservations .detail-res-list--page{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width:980px){
  .detail-page-v2{padding:16px !important;}
  .detail-layout-v2.detail-layout-v3{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }
  .detail-top-image-col,
  .detail-top-data-col,
  .detail-reservations-wide,
  .detail-related-wide,
  .detail-history-wide{width:100% !important;}
  .detail-layout-v3 .detail-side-card--reservations .detail-res-list--page{
    grid-template-columns:1fr !important;
  }
  .detail-layout-v3 .detail-title-row--clean h1{font-size:1.85rem !important;}
}
@media (max-width:620px){
  .detail-layout-v3 .detail-title-row--clean{align-items:flex-start !important; flex-direction:column !important;}
  .detail-layout-v3 .detail-title-row--clean .detail-title-plate .plate-unified-svg,
  .detail-layout-v3 .detail-title-row--clean .detail-title-plate .dashboard-license-svg{width:132px !important;}
}

/* v2.16.1 Detailseite: Reservierungen/Historie direkt aufklappen */
.detail-extra-reservation.is-hidden,
.detail-extra-history.is-hidden{
  display:none !important;
}
.detail-toggle-list{
  cursor:pointer;
  font-family:inherit;
}
.detail-res-item--clickable{
  text-decoration:none;
  color:inherit;
}
.detail-layout-v3 .detail-res-item--clickable{
  cursor:default;
}

/* v2.16.2 – Detailseite als Status-Dashboard */
.detail-page-v2{
  max-width:1280px !important;
  margin:0 auto !important;
  padding:22px 24px 36px !important;
}
.detail-page-v2 .detail-back-button{
  display:inline-flex !important;
  align-items:center;
  height:44px !important;
  padding:0 20px !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,rgba(30,41,59,.96),rgba(15,23,42,.96)) !important;
  border:1px solid rgba(148,163,184,.22) !important;
  color:#f8fafc !important;
  text-decoration:none !important;
  font-weight:800 !important;
  box-shadow:0 10px 28px rgba(0,0,0,.22) !important;
}
.detail-page-v2 .detail-breadcrumb--small{
  margin:18px 0 14px !important;
  font-size:.9rem !important;
  color:rgba(226,232,240,.7) !important;
}
.detail-dashboard-shell{
  background:linear-gradient(180deg,rgba(10,16,29,.98),rgba(8,13,24,.98));
  border:1px solid rgba(148,163,184,.16);
  border-radius:18px;
  box-shadow:0 28px 80px rgba(0,0,0,.35);
  padding:18px;
}
.detail-dashboard-head{
  display:grid;
  grid-template-columns:230px 1fr auto;
  gap:18px;
  align-items:center;
  border:1px solid rgba(148,163,184,.14);
  border-radius:16px;
  padding:14px;
  background:rgba(15,23,42,.52);
  margin-bottom:18px;
}
.detail-dashboard-thumb{
  width:230px;
  height:120px;
  border-radius:12px;
  overflow:hidden;
  background:rgba(15,23,42,.85);
}
.detail-dashboard-thumb img{
  width:100%;height:100%;object-fit:cover;object-position:center;display:block;
}
.detail-dashboard-thumb .detail-image-fallback{
  height:100%;min-height:0;border:0;border-radius:0;
}
.detail-dashboard-title h1{
  margin:0 0 10px;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:-.035em;
  color:#fff;
}
.detail-dashboard-chips{display:flex;gap:8px;flex-wrap:wrap;}
.detail-dashboard-chips span{
  display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:7px;
  background:rgba(79,70,229,.22);border:1px solid rgba(167,139,250,.35);
  color:#e9d5ff;font-weight:750;font-size:.78rem;
}
.detail-dashboard-plate .plate-unified-svg,
.detail-dashboard-plate .dashboard-license-svg{width:150px !important;max-width:150px !important;}
.detail-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px;}
.detail-status-card{
  border:1px solid rgba(148,163,184,.16);
  border-radius:16px;
  background:rgba(15,23,42,.50);
  padding:16px;
  min-height:136px;
}
.detail-status-card h2{font-size:1rem;margin:0 0 14px;color:#f8fafc;display:flex;align-items:center;gap:8px;}
.detail-status-card h2 i{width:10px;height:10px;border-radius:99px;background:#22c55e;box-shadow:0 0 14px rgba(34,197,94,.45);}
.detail-status-card--next h2 i{background:#f59e0b;box-shadow:0 0 14px rgba(245,158,11,.4);}
.detail-status-card--current{border-color:rgba(34,197,94,.45);}
.detail-status-card--next{border-color:rgba(245,158,11,.45);}
.detail-status-card--free{border-color:rgba(34,197,94,.45);}
.detail-status-body{display:flex;gap:12px;align-items:center;}
.detail-status-avatar{width:44px;height:44px;border-radius:99px;display:flex;align-items:center;justify-content:center;background:rgba(99,102,241,.18);font-size:1.25rem;flex:0 0 auto;}
.detail-status-body p{margin:0;color:rgba(226,232,240,.78);font-weight:600;line-height:1.28;}
.detail-status-body p strong{display:block;color:#22c55e;font-size:1.35rem;line-height:1.15;margin-top:2px;}
.detail-status-card--next .detail-status-body p strong{color:#fbbf24;}
.detail-status-body span{display:block;color:rgba(226,232,240,.72);font-size:.85rem;}
.detail-status-body em{display:block;margin-top:4px;font-style:normal;color:#f8fafc;font-weight:750;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.detail-dashboard-card,
.detail-info-card{
  background:rgba(15,23,42,.56) !important;
  border:1px solid rgba(148,163,184,.16) !important;
  border-radius:16px !important;
  box-shadow:none !important;
}
.detail-dashboard-card{padding:16px;margin-bottom:16px;}
.detail-dashboard-card h2,.detail-info-card h2{font-size:1.02rem;margin:0 0 14px;color:#f8fafc;}
.detail-availability-scale{display:grid;grid-template-columns:repeat(7,1fr);font-size:.78rem;color:rgba(226,232,240,.72);margin-bottom:8px;}
.detail-availability-scale span:last-child{text-align:right;}
.detail-availability-scale span:not(:first-child):not(:last-child){text-align:center;}
.detail-availability-bar{height:32px;border-radius:999px;background:rgba(15,23,42,.75);position:relative;overflow:hidden;border:1px solid rgba(148,163,184,.12);}
.detail-availability-seg{position:absolute;top:0;bottom:0;}
.detail-availability-seg--free{background:linear-gradient(90deg,#17b26a,#5bd481);}
.detail-availability-seg--busy{background:linear-gradient(90deg,#c91d18,#f87171);}
.detail-availability-legend{display:flex;gap:18px;margin-top:10px;color:rgba(226,232,240,.75);font-size:.88rem;}
.detail-availability-legend span{display:flex;align-items:center;gap:7px;}
.detail-availability-legend i{width:12px;height:12px;border-radius:4px;display:inline-block;}
.detail-availability-legend i.free{background:#22c55e;}.detail-availability-legend i.busy{background:#f87171;}
.detail-quick-card{padding-bottom:18px;}
.detail-primary-action{display:flex;align-items:center;justify-content:center;text-decoration:none;color:#fff;font-weight:850;height:46px;border-radius:14px;background:linear-gradient(135deg,#fb2a21,#e31812);box-shadow:0 14px 34px rgba(239,68,68,.18);}
.detail-dashboard-lower{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px;}
.detail-dashboard-lower--wide{grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-bottom:0;}
.detail-page-v2 .detail-page-row{display:grid !important;grid-template-columns:28px minmax(0,1fr) auto !important;gap:10px !important;align-items:center !important;padding:.72rem 0 !important;}
.detail-page-v2 .detail-page-row strong{font-size:.95rem !important;}
.detail-res-list--page,.detail-history-list-page{display:flex;flex-direction:column;gap:10px;}
.detail-res-item--clickable,.detail-history-item-page{min-height:58px !important;padding:12px !important;border-radius:12px !important;background:rgba(15,23,42,.62) !important;border:1px solid rgba(148,163,184,.12) !important;}
.detail-res-item--clickable{display:grid !important;grid-template-columns:105px 1fr !important;gap:10px !important;align-items:center !important;}
.detail-res-date strong,.detail-history-item-page strong{font-size:.9rem !important;white-space:nowrap;}
.detail-res-date span,.detail-res-main span,.detail-history-item-page span,.detail-history-item-page em{font-size:.78rem !important;color:rgba(226,232,240,.68) !important;}
.detail-res-main strong{font-size:.9rem !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;}
.detail-wide-action{margin-top:12px !important;width:100%;height:40px;border-radius:11px;border:1px solid rgba(148,163,184,.16);background:rgba(15,23,42,.70);color:#f8fafc;font-weight:800;}
.detail-history-item-page{display:grid !important;grid-template-columns:100px 1fr auto !important;gap:12px !important;align-items:center !important;}
.detail-related-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;}
.detail-related-tile{min-width:0;}
.detail-extra-reservation.is-hidden,.detail-extra-history.is-hidden{display:none !important;}
@media(max-width:1100px){
  .detail-dashboard-head{grid-template-columns:160px 1fr;}.detail-dashboard-plate{grid-column:2}.detail-dashboard-thumb{width:160px;height:96px}.detail-status-grid,.detail-dashboard-lower,.detail-dashboard-lower--wide{grid-template-columns:1fr;}
}
@media(max-width:680px){
  .detail-page-v2{padding:14px !important}.detail-dashboard-shell{padding:12px;border-radius:14px}.detail-dashboard-head{grid-template-columns:1fr}.detail-dashboard-thumb{width:100%;height:190px}.detail-dashboard-title h1{font-size:1.75rem}.detail-dashboard-plate{grid-column:1}.detail-status-body p strong{font-size:1.1rem}.detail-res-item--clickable,.detail-history-item-page{grid-template-columns:1fr !important}.detail-history-item-page em{justify-self:start;}
}

/* v2.16.3 – Detailseite wie Entwurf: Datenblatt statt Kachel-Sammlung */
.detail-page-v2{
  max-width: none !important;
  width: 100% !important;
  padding: 22px 24px 34px !important;
}
.detail-page-v2 .detail-back-button{
  margin-bottom: 14px !important;
}
.detail-page-v2 .detail-breadcrumb--small{
  display:inline-flex !important;
  margin:0 0 18px 18px !important;
  vertical-align:middle !important;
}
.detail-dashboard-shell{
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
.detail-dashboard-head,
.detail-status-grid,
.detail-dashboard-card,
.detail-info-card{
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:12px !important;
  box-shadow:0 16px 40px rgba(15,23,42,.06) !important;
}
html[data-theme="dark"] .detail-dashboard-head,
html[data-theme="dark"] .detail-status-grid,
html[data-theme="dark"] .detail-dashboard-card,
html[data-theme="dark"] .detail-info-card{
  background:rgba(15,23,42,.56) !important;
  border-color:rgba(148,163,184,.16) !important;
  box-shadow:none !important;
}
.detail-dashboard-head{
  display:grid !important;
  grid-template-columns:330px 220px minmax(430px,1fr) auto !important;
  gap:28px !important;
  align-items:center !important;
  padding:24px !important;
  margin-bottom:18px !important;
}
.detail-dashboard-thumb{
  width:330px !important;
  height:210px !important;
  border-radius:10px !important;
}
.detail-dashboard-title{
  align-self:center !important;
}
.detail-dashboard-title h1{
  color:#0f172a !important;
  font-size:2.55rem !important;
  margin-bottom:16px !important;
}
html[data-theme="dark"] .detail-dashboard-title h1{color:#f8fafc !important;}
.detail-dashboard-chips span{
  height:30px !important;
  border-radius:7px !important;
  padding:0 14px !important;
  background:rgba(79,70,229,.06) !important;
  border-color:rgba(79,70,229,.35) !important;
  color:#312e81 !important;
  font-size:.86rem !important;
  font-weight:800 !important;
}
html[data-theme="dark"] .detail-dashboard-chips span{
  background:rgba(79,70,229,.22) !important;
  border-color:rgba(167,139,250,.35) !important;
  color:#e9d5ff !important;
}
.detail-dashboard-tech{
  border-left:1px solid rgba(15,23,42,.10);
  border-right:1px solid rgba(15,23,42,.10);
  padding:0 28px !important;
  min-height:168px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
html[data-theme="dark"] .detail-dashboard-tech{
  border-color:rgba(148,163,184,.16);
}
.detail-dashboard-tech h2{
  margin:0 0 16px !important;
  color:#475569 !important;
  text-transform:uppercase;
  font-size:.78rem !important;
  letter-spacing:.06em;
  font-weight:850;
}
html[data-theme="dark"] .detail-dashboard-tech h2{color:#cbd5e1 !important;}
.detail-tech-inline-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(180px,1fr));
  gap:14px 28px;
}
.detail-page-v2 .detail-page-row{
  display:grid !important;
  grid-template-columns:26px minmax(90px,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
  padding:0 !important;
  border:0 !important;
  color:#111827 !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-page-row{color:#e5e7eb !important;}
.detail-page-v2 .detail-page-row-icon{
  color:#6b7280 !important;
  font-size:1.15rem !important;
  filter:grayscale(1);
}
.detail-page-v2 .detail-page-row span:not(.detail-page-row-icon){
  color:#374151 !important;
  font-size:.8rem !important;
  font-weight:700 !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-page-row span:not(.detail-page-row-icon){color:#cbd5e1 !important;}
.detail-page-v2 .detail-page-row strong{
  color:#0f172a !important;
  font-size:.84rem !important;
  font-weight:850 !important;
  white-space:nowrap;
}
html[data-theme="dark"] .detail-page-v2 .detail-page-row strong{color:#f8fafc !important;}
.detail-dashboard-plate{justify-self:end;}
.detail-dashboard-plate .plate-unified-svg,
.detail-dashboard-plate .dashboard-license-svg{
  width:220px !important;
  max-width:220px !important;
}
.detail-status-grid{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:0 !important;
  padding:20px 24px !important;
  margin-bottom:18px !important;
}
.detail-status-card{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  min-height:82px !important;
  padding:0 30px !important;
  display:flex;
  align-items:center;
}
.detail-status-card + .detail-status-card{border-left:1px solid rgba(15,23,42,.12) !important;}
html[data-theme="dark"] .detail-status-card + .detail-status-card{border-left-color:rgba(148,163,184,.18) !important;}
.detail-status-card h2{display:none !important;}
.detail-status-avatar{
  width:56px !important;
  height:56px !important;
  background:transparent !important;
  border:1px solid currentColor !important;
  font-size:1.35rem !important;
}
.detail-status-card--current .detail-status-avatar{color:#22c55e !important;}
.detail-status-card--next .detail-status-avatar{color:#f59e0b !important;}
.detail-status-card--free .detail-status-avatar{color:#22c55e !important;}
.detail-status-body{gap:18px !important;}
.detail-status-body p,.detail-status-body span{color:#111827 !important;}
html[data-theme="dark"] .detail-status-body p,html[data-theme="dark"] .detail-status-body span{color:#e2e8f0 !important;}
.detail-status-body p strong{font-size:1.35rem !important;color:#16a34a !important;}
.detail-status-card--next .detail-status-body p strong{color:#f59e0b !important;}
.detail-status-body em{color:#111827 !important;font-weight:850 !important;}
html[data-theme="dark"] .detail-status-body em{color:#fff !important;}
.detail-dashboard-card{padding:22px 24px !important;margin-bottom:18px !important;}
.detail-dashboard-card h2,.detail-info-card h2{
  color:#111827 !important;
  font-size:1.12rem !important;
  font-weight:850 !important;
}
html[data-theme="dark"] .detail-dashboard-card h2,html[data-theme="dark"] .detail-info-card h2{color:#f8fafc !important;}
.detail-availability-bar{height:18px !important;border:0 !important;background:rgba(15,23,42,.08) !important;}
.detail-availability-scale{color:#111827 !important;font-size:.86rem !important;}
html[data-theme="dark"] .detail-availability-scale{color:#cbd5e1 !important;}
.detail-availability-legend{color:#111827 !important;}
html[data-theme="dark"] .detail-availability-legend{color:#cbd5e1 !important;}
.detail-dashboard-lower--wide{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  margin-bottom:0 !important;
}
.detail-info-card{padding:22px 24px !important;min-height:260px !important;}
.detail-panel-headline{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;}
.detail-count-pill{
  display:inline-flex;
  align-items:center;
  height:28px;
  padding:0 12px;
  border-radius:8px;
  background:rgba(79,70,229,.06);
  border:1px solid rgba(79,70,229,.18);
  color:#312e81;
  font-weight:800;
  font-size:.8rem;
}
html[data-theme="dark"] .detail-count-pill{background:rgba(79,70,229,.20);border-color:rgba(167,139,250,.28);color:#e9d5ff;}
.detail-related-card-grid{display:flex !important;flex-direction:column !important;gap:10px !important;}
.detail-related-tile{
  display:grid !important;
  grid-template-columns:88px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
  min-height:88px !important;
  padding:14px !important;
  text-decoration:none !important;
  color:#111827 !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.45) !important;
}
html[data-theme="dark"] .detail-related-tile{background:rgba(15,23,42,.42) !important;border-color:rgba(148,163,184,.14) !important;color:#f8fafc !important;}
.detail-related-thumb{width:88px !important;height:64px !important;border-radius:8px !important;overflow:hidden !important;}
.detail-related-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.detail-related-copy strong{display:block;font-size:1rem;font-weight:850;margin-bottom:3px;}
.detail-related-copy span{display:block;color:#374151;font-weight:600;}
html[data-theme="dark"] .detail-related-copy span{color:#cbd5e1;}
.detail-related-weight{font-size:.9rem;color:#111827;font-weight:700;white-space:nowrap;}
html[data-theme="dark"] .detail-related-weight{color:#e5e7eb;}
.detail-res-list--page{gap:0 !important;}
.detail-res-item--clickable{
  min-height:46px !important;
  padding:8px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  display:grid !important;
  grid-template-columns:42px 120px 1fr 1fr !important;
  gap:12px !important;
  border-bottom:1px solid rgba(15,23,42,.10) !important;
  position:relative;
}
html[data-theme="dark"] .detail-res-item--clickable{border-bottom-color:rgba(148,163,184,.14) !important;}
.detail-res-item--clickable:before{
  content:'📅';
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;height:28px;
  border-radius:6px;
  background:rgba(79,70,229,.10);
  color:#312e81;
  grid-column:1;
  align-self:center;
}
.detail-res-date{grid-column:2;}
.detail-res-main{grid-column:3 / span 2;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center;}
.detail-res-date strong,.detail-res-main strong{color:#111827 !important;font-size:.9rem !important;}
.detail-res-date span,.detail-res-main span{color:#374151 !important;font-size:.82rem !important;}
html[data-theme="dark"] .detail-res-date strong,html[data-theme="dark"] .detail-res-main strong{color:#f8fafc !important;}
html[data-theme="dark"] .detail-res-date span,html[data-theme="dark"] .detail-res-main span{color:#cbd5e1 !important;}
.detail-wide-action{
  width:auto !important;
  margin-top:18px !important;
  height:auto !important;
  border:0 !important;
  background:transparent !important;
  color:#312e81 !important;
  padding:0 !important;
  font-weight:850 !important;
  text-align:left !important;
}
html[data-theme="dark"] .detail-wide-action{color:#c4b5fd !important;}
@media(max-width:1280px){
  .detail-dashboard-head{grid-template-columns:260px 200px minmax(360px,1fr) auto !important;gap:20px !important;}
  .detail-dashboard-thumb{width:260px !important;height:165px !important;}
  .detail-tech-inline-grid{grid-template-columns:1fr 1fr;gap:12px 18px;}
  .detail-dashboard-plate .plate-unified-svg,.detail-dashboard-plate .dashboard-license-svg{width:180px !important;max-width:180px !important;}
}
@media(max-width:1050px){
  .detail-dashboard-head{grid-template-columns:180px 1fr auto !important;}
  .detail-dashboard-tech{grid-column:1 / -1;border-left:0;border-right:0;border-top:1px solid rgba(15,23,42,.10);padding:18px 0 0 !important;min-height:0;}
  html[data-theme="dark"] .detail-dashboard-tech{border-top-color:rgba(148,163,184,.16);}
  .detail-dashboard-thumb{width:180px !important;height:115px !important;}
  .detail-status-grid,.detail-dashboard-lower--wide{grid-template-columns:1fr !important;}
  .detail-status-card + .detail-status-card{border-left:0 !important;border-top:1px solid rgba(15,23,42,.12) !important;padding-top:18px !important;margin-top:18px !important;}
}
@media(max-width:680px){
  .detail-page-v2{padding:14px !important;}
  .detail-page-v2 .detail-breadcrumb--small{display:flex !important;margin:12px 0 14px !important;}
  .detail-dashboard-head{grid-template-columns:1fr !important;padding:14px !important;gap:14px !important;}
  .detail-dashboard-thumb{width:100% !important;height:190px !important;}
  .detail-dashboard-title h1{font-size:2rem !important;}
  .detail-dashboard-plate{justify-self:start;}
  .detail-tech-inline-grid{grid-template-columns:1fr !important;}
  .detail-status-grid{padding:16px !important;}
  .detail-status-card{padding:0 !important;}
  .detail-info-card{min-height:0 !important;padding:18px !important;}
  .detail-related-tile{grid-template-columns:72px 1fr !important;}
  .detail-related-weight{grid-column:2;justify-self:start;}
  .detail-res-item--clickable{grid-template-columns:32px 1fr !important;}
  .detail-res-date{grid-column:2;}
  .detail-res-main{grid-column:2;grid-template-columns:1fr;}
}

/* v2.16.4 – Detailseite nach Screenshot sauberer ausrichten */
.detail-dashboard-head{
  grid-template-columns:290px 190px minmax(420px,1fr) auto !important;
  gap:24px !important;
}
.detail-dashboard-thumb{
  width:290px !important;
  height:178px !important;
}
.detail-dashboard-tech{
  min-height:128px !important;
}
.detail-tech-inline-grid{
  grid-template-columns:repeat(2,minmax(190px,1fr)) !important;
  gap:18px 34px !important;
}
.detail-dashboard-lower--single{
  grid-template-columns:minmax(0,1fr) !important;
}
.detail-dashboard-lower--single .detail-info-card{
  min-height:0 !important;
}
.detail-empty--plain{
  display:flex !important;
  align-items:center !important;
  min-height:58px !important;
  padding:14px 0 !important;
  color:#6b7280 !important;
  font-weight:750 !important;
}
html[data-theme="dark"] .detail-empty--plain{
  color:#cbd5e1 !important;
}
.detail-related-card-grid{
  max-width:100% !important;
}
.detail-info-card{
  min-height:0 !important;
}
.detail-reservations-wide{
  min-height:260px !important;
}
@media(max-width:1280px){
  .detail-dashboard-head{grid-template-columns:250px 180px minmax(330px,1fr) auto !important;gap:18px !important;}
  .detail-dashboard-thumb{width:250px !important;height:155px !important;}
  .detail-tech-inline-grid{grid-template-columns:1fr 1fr !important;gap:14px 18px !important;}
}
@media(max-width:1050px){
  .detail-dashboard-head{grid-template-columns:180px 1fr auto !important;}
  .detail-dashboard-tech{grid-column:1 / -1 !important;}
}
@media(max-width:680px){
  .detail-dashboard-thumb{width:100% !important;height:190px !important;}
  .detail-tech-inline-grid{grid-template-columns:1fr !important;}
}

/* v2.16.5 – Detailseite final nach Datenblatt-Entwurf: robuste Anordnung */
.detail-page-v2{
  max-width:none !important;
  width:100% !important;
  padding:24px 32px 42px !important;
}
.detail-page-v2 .detail-back-button{
  position:relative !important;
  z-index:3 !important;
  margin:0 18px 10px 0 !important;
}
.detail-page-v2 .detail-breadcrumb--small{
  position:relative !important;
  z-index:2 !important;
  margin:0 0 18px 0 !important;
  display:inline-flex !important;
}
.detail-dashboard-shell{
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.detail-dashboard-head{
  display:grid !important;
  grid-template-columns: minmax(260px, 380px) minmax(260px, 360px) minmax(520px, 1fr) minmax(150px, 220px) !important;
  gap:30px !important;
  align-items:center !important;
  width:100% !important;
  min-height:230px !important;
  padding:24px 28px !important;
  margin:0 !important;
  overflow:hidden !important;
}
.detail-dashboard-thumb{
  width:100% !important;
  height:185px !important;
  border-radius:10px !important;
}
.detail-dashboard-title{
  min-width:0 !important;
  align-self:center !important;
  border-right:1px solid rgba(148,163,184,.18) !important;
  padding-right:24px !important;
}
.detail-dashboard-title h1{
  font-size:clamp(2rem, 2.1vw, 3.1rem) !important;
  line-height:1.03 !important;
  margin:0 0 14px !important;
  max-width:100% !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  hyphens:auto !important;
}
.detail-dashboard-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}
.detail-dashboard-chips span{
  max-width:100% !important;
  white-space:normal !important;
  height:auto !important;
  min-height:28px !important;
  line-height:1.15 !important;
  padding:6px 10px !important;
}
.detail-dashboard-tech{
  min-width:0 !important;
  min-height:0 !important;
  border-left:0 !important;
  border-right:1px solid rgba(148,163,184,.18) !important;
  padding:0 28px 0 0 !important;
}
.detail-dashboard-tech h2{
  margin:0 0 18px !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
}
.detail-tech-inline-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(210px, 1fr)) !important;
  gap:18px 34px !important;
  align-items:start !important;
}
.detail-page-v2 .detail-page-row{
  display:grid !important;
  grid-template-columns:28px minmax(120px,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
  padding:0 !important;
  min-width:0 !important;
}
.detail-page-v2 .detail-page-row span:nth-child(2){
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.detail-page-v2 .detail-page-row strong{
  white-space:nowrap !important;
  justify-self:end !important;
}
.detail-dashboard-plate{
  justify-self:end !important;
  min-width:0 !important;
}
.detail-dashboard-plate .plate-unified-svg,
.detail-dashboard-plate .dashboard-license-svg{
  width:170px !important;
  max-width:170px !important;
}
.detail-status-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:0 !important;
  padding:22px 26px !important;
  margin:0 !important;
  overflow:hidden !important;
}
.detail-status-card{
  min-width:0 !important;
  min-height:82px !important;
  padding:0 34px !important;
  display:flex !important;
  align-items:center !important;
}
.detail-status-card:first-child{padding-left:16px !important;}
.detail-status-card:last-child{padding-right:16px !important;}
.detail-status-body{min-width:0 !important;}
.detail-status-body > div:last-child{min-width:0 !important;}
.detail-dashboard-card{margin:0 !important;}
.detail-dashboard-lower--wide,
.detail-dashboard-lower{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
  margin:14px 0 0 !important;
  width:100% !important;
}
.detail-dashboard-lower--single{
  grid-template-columns:minmax(0,1fr) !important;
}
.detail-info-card{
  min-width:0 !important;
  width:100% !important;
  min-height:0 !important;
  padding:22px 26px !important;
  overflow:hidden !important;
}
.detail-panel-headline{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  margin:0 0 18px !important;
}
.detail-panel-headline h2,
.detail-info-card h2{
  margin:0 0 18px !important;
}
.detail-panel-headline h2{margin:0 !important;}
.detail-related-card-grid{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
}
.detail-related-tile{
  display:grid !important;
  grid-template-columns:88px minmax(0,1fr) auto !important;
  gap:18px !important;
  align-items:center !important;
  width:100% !important;
  min-height:88px !important;
  position:relative !important;
  z-index:1 !important;
}
.detail-reservations-wide{min-height:0 !important;}
.detail-res-list--page{display:flex !important;flex-direction:column !important;gap:0 !important;}
.detail-res-item--clickable{
  width:100% !important;
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:34px minmax(110px,145px) minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
}
.detail-res-main{
  grid-column:3 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:14px !important;
  min-width:0 !important;
}
.detail-res-main strong,
.detail-res-main span{min-width:0 !important;overflow:hidden !important;text-overflow:ellipsis !important;}
.detail-empty--plain{position:relative !important;z-index:1 !important;}
@media (max-width:1500px){
  .detail-dashboard-head{
    grid-template-columns:260px minmax(220px,300px) minmax(430px,1fr) minmax(140px,180px) !important;
    gap:22px !important;
  }
  .detail-dashboard-thumb{height:170px !important;}
  .detail-tech-inline-grid{grid-template-columns:repeat(2,minmax(170px,1fr)) !important;gap:16px 22px !important;}
  .detail-dashboard-plate .plate-unified-svg,.detail-dashboard-plate .dashboard-license-svg{width:150px !important;max-width:150px !important;}
}
@media (max-width:1180px){
  .detail-dashboard-head{
    grid-template-columns:220px minmax(0,1fr) minmax(140px,180px) !important;
    grid-template-areas:"photo title plate" "tech tech tech" !important;
  }
  .detail-dashboard-thumb{grid-area:photo;width:220px !important;height:140px !important;}
  .detail-dashboard-title{grid-area:title;border-right:0 !important;padding-right:0 !important;}
  .detail-dashboard-tech{grid-area:tech;border-right:0 !important;border-top:1px solid rgba(148,163,184,.18) !important;padding:20px 0 0 !important;}
  .detail-dashboard-plate{grid-area:plate;}
  .detail-status-grid,.detail-dashboard-lower--wide,.detail-dashboard-lower{grid-template-columns:1fr !important;}
  .detail-status-card{padding:18px 16px !important;}
  .detail-status-card + .detail-status-card{border-left:0 !important;border-top:1px solid rgba(148,163,184,.18) !important;}
}
@media (max-width:720px){
  .detail-page-v2{padding:14px 14px 30px !important;}
  .detail-dashboard-head{grid-template-columns:1fr !important;grid-template-areas:"photo" "title" "tech" "plate" !important;padding:14px !important;gap:16px !important;}
  .detail-dashboard-thumb{width:100% !important;height:190px !important;}
  .detail-dashboard-title h1{font-size:2rem !important;}
  .detail-tech-inline-grid{grid-template-columns:1fr !important;}
  .detail-dashboard-plate{justify-self:start !important;}
  .detail-status-grid{padding:14px !important;}
  .detail-status-card{padding:16px 0 !important;}
  .detail-info-card{padding:18px !important;}
  .detail-related-tile{grid-template-columns:72px minmax(0,1fr) !important;}
  .detail-related-weight{grid-column:2 !important;justify-self:start !important;}
  .detail-res-item--clickable{grid-template-columns:30px minmax(0,1fr) !important;}
  .detail-res-date{grid-column:2 !important;}
  .detail-res-main{grid-column:2 !important;grid-template-columns:1fr !important;}
}


/* v2.16.6 – Detailseite: saubere Datenblatt-Anordnung ohne Überlagerungen */
.detail-page-v2{
  max-width:none !important;
  width:100% !important;
  padding:24px 32px 42px !important;
}
.detail-page-v2 .detail-breadcrumb--small{
  margin:0 0 18px 12px !important;
  display:inline-flex !important;
}
.detail-dashboard-shell{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.detail-dashboard-head{
  display:grid !important;
  grid-template-columns:minmax(240px, 320px) minmax(280px, 1.05fr) minmax(440px, 1.35fr) minmax(150px, 190px) !important;
  gap:26px !important;
  align-items:center !important;
  width:100% !important;
  min-height:210px !important;
  padding:24px 28px !important;
  margin:0 !important;
  overflow:visible !important;
}
.detail-dashboard-thumb{
  width:100% !important;
  height:185px !important;
  border-radius:10px !important;
  overflow:hidden !important;
}
.detail-dashboard-title{
  min-width:0 !important;
  max-width:100% !important;
  padding-right:24px !important;
  border-right:1px solid rgba(148,163,184,.18) !important;
  overflow:hidden !important;
}
.detail-dashboard-title h1{
  margin:0 0 14px !important;
  font-size:clamp(2rem, 2.15vw, 3rem) !important;
  line-height:1.05 !important;
  max-width:100% !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
.detail-dashboard-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  max-width:100% !important;
}
.detail-dashboard-chips span{
  height:auto !important;
  min-height:28px !important;
  max-width:100% !important;
  padding:6px 10px !important;
  line-height:1.15 !important;
  white-space:normal !important;
}
.detail-dashboard-tech{
  min-width:0 !important;
  width:100% !important;
  padding:0 26px 0 0 !important;
  border-left:0 !important;
  border-right:1px solid rgba(148,163,184,.18) !important;
  overflow:hidden !important;
}
.detail-dashboard-tech h2{
  margin:0 0 16px !important;
  font-size:.78rem !important;
  line-height:1.2 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
.detail-tech-inline-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:16px 28px !important;
  width:100% !important;
}
.detail-page-v2 .detail-page-row{
  display:grid !important;
  grid-template-columns:26px minmax(0,1fr) minmax(max-content, auto) !important;
  gap:10px !important;
  align-items:center !important;
  min-width:0 !important;
  padding:0 !important;
}
.detail-page-v2 .detail-page-row span:not(.detail-page-row-icon){
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.detail-page-v2 .detail-page-row strong{
  justify-self:end !important;
  white-space:nowrap !important;
  min-width:0 !important;
}
.detail-dashboard-plate{
  justify-self:end !important;
  align-self:center !important;
  min-width:0 !important;
}
.detail-dashboard-plate .plate-unified-svg,
.detail-dashboard-plate .dashboard-license-svg{
  width:168px !important;
  max-width:168px !important;
}
.detail-status-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:0 !important;
  padding:22px 26px !important;
  margin:0 !important;
  overflow:hidden !important;
}
.detail-status-card{
  min-width:0 !important;
  min-height:82px !important;
  padding:0 34px !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  display:flex !important;
  align-items:center !important;
}
.detail-status-card + .detail-status-card{
  border-left:1px solid rgba(148,163,184,.18) !important;
}
.detail-status-card h2{display:none !important;}
.detail-status-body{min-width:0 !important;}
.detail-status-body > div:last-child{min-width:0 !important;}
.detail-dashboard-card{margin:0 !important;}
.detail-dashboard-lower,
.detail-dashboard-lower--wide{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
  width:100% !important;
  margin:14px 0 0 !important;
  clear:both !important;
}
.detail-dashboard-lower--single{
  grid-template-columns:minmax(0,1fr) !important;
}
.detail-info-card{
  position:relative !important;
  min-width:0 !important;
  width:100% !important;
  min-height:0 !important;
  padding:22px 26px !important;
  overflow:hidden !important;
  isolation:isolate !important;
}
.detail-related-wide,
.detail-reservations-wide{
  grid-column:auto !important;
  grid-row:auto !important;
}
.detail-panel-headline{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  margin:0 0 18px !important;
}
.detail-panel-headline h2,
.detail-info-card h2{
  margin:0 0 18px !important;
  position:relative !important;
  z-index:2 !important;
}
.detail-panel-headline h2{margin:0 !important;}
.detail-related-card-grid{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
  position:relative !important;
  z-index:1 !important;
}
.detail-related-tile{
  display:grid !important;
  grid-template-columns:88px minmax(0,1fr) auto !important;
  gap:18px !important;
  align-items:center !important;
  width:100% !important;
  min-width:0 !important;
  min-height:88px !important;
  position:relative !important;
  z-index:1 !important;
}
.detail-reservations-wide{min-height:0 !important;}
.detail-res-list--page{display:flex !important;flex-direction:column !important;gap:0 !important;position:relative !important;z-index:1 !important;}
.detail-res-item--clickable{
  width:100% !important;
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:34px minmax(110px,145px) minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
  position:relative !important;
  z-index:1 !important;
}
.detail-res-main{
  grid-column:3 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:14px !important;
  min-width:0 !important;
}
.detail-res-main strong,
.detail-res-main span{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.detail-empty--plain{
  position:relative !important;
  z-index:1 !important;
}
@media (max-width:1500px){
  .detail-dashboard-head{
    grid-template-columns:minmax(220px,270px) minmax(240px, .9fr) minmax(360px,1.25fr) minmax(135px,170px) !important;
    gap:20px !important;
  }
  .detail-dashboard-thumb{height:165px !important;}
  .detail-tech-inline-grid{gap:14px 20px !important;}
  .detail-dashboard-plate .plate-unified-svg,.detail-dashboard-plate .dashboard-license-svg{width:148px !important;max-width:148px !important;}
}
@media (max-width:1180px){
  .detail-dashboard-head{
    grid-template-columns:220px minmax(0,1fr) minmax(135px,170px) !important;
    grid-template-areas:"photo title plate" "tech tech tech" !important;
  }
  .detail-dashboard-thumb{grid-area:photo;width:220px !important;height:140px !important;}
  .detail-dashboard-title{grid-area:title;border-right:0 !important;padding-right:0 !important;}
  .detail-dashboard-tech{grid-area:tech;border-right:0 !important;border-top:1px solid rgba(148,163,184,.18) !important;padding:20px 0 0 !important;}
  .detail-dashboard-plate{grid-area:plate;}
  .detail-status-grid,.detail-dashboard-lower,.detail-dashboard-lower--wide{grid-template-columns:1fr !important;}
  .detail-status-card{padding:18px 16px !important;}
  .detail-status-card + .detail-status-card{border-left:0 !important;border-top:1px solid rgba(148,163,184,.18) !important;}
}
@media (max-width:720px){
  .detail-page-v2{padding:14px 14px 30px !important;}
  .detail-page-v2 .detail-breadcrumb--small{display:flex !important;margin:12px 0 14px !important;}
  .detail-dashboard-head{grid-template-columns:1fr !important;grid-template-areas:"photo" "title" "tech" "plate" !important;padding:14px !important;gap:16px !important;}
  .detail-dashboard-thumb{width:100% !important;height:190px !important;}
  .detail-dashboard-title h1{font-size:2rem !important;}
  .detail-tech-inline-grid{grid-template-columns:1fr !important;}
  .detail-dashboard-plate{justify-self:start !important;}
  .detail-status-grid{padding:14px !important;}
  .detail-status-card{padding:16px 0 !important;}
  .detail-info-card{padding:18px !important;}
  .detail-related-tile{grid-template-columns:72px minmax(0,1fr) !important;}
  .detail-related-weight{grid-column:2 !important;justify-self:start !important;}
  .detail-res-item--clickable{grid-template-columns:30px minmax(0,1fr) !important;}
  .detail-res-date{grid-column:2 !important;}
  .detail-res-main{grid-column:2 !important;grid-template-columns:1fr !important;}
}

/* v2.16.7 – Detailseite: unterer Bereich endgültig als ein sauberes Grid */
.detail-page-v2 .detail-dashboard-shell{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
}
.detail-page-v2 .detail-dashboard-lower,
.detail-page-v2 .detail-dashboard-lower--wide{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  grid-auto-flow:row !important;
  grid-auto-rows:auto !important;
  gap:20px !important;
  align-items:start !important;
  width:100% !important;
  max-width:100% !important;
  margin:14px 0 0 !important;
  padding:0 !important;
  position:relative !important;
  clear:both !important;
  overflow:visible !important;
}
.detail-page-v2 .detail-dashboard-lower--single{
  grid-template-columns:minmax(0,1fr) !important;
}
.detail-page-v2 .detail-dashboard-lower > .detail-info-card,
.detail-page-v2 .detail-dashboard-lower--wide > .detail-info-card{
  grid-column:auto !important;
  grid-row:auto !important;
  align-self:start !important;
  justify-self:stretch !important;
  position:relative !important;
  inset:auto !important;
  transform:none !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:24px 26px !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}
.detail-page-v2 .detail-related-wide,
.detail-page-v2 .detail-reservations-wide,
.detail-page-v2 .detail-related-card--wide,
.detail-page-v2 .detail-side-card--reservations{
  grid-area:auto !important;
  grid-column:auto !important;
  grid-row:auto !important;
  position:relative !important;
  inset:auto !important;
  transform:none !important;
  float:none !important;
}
.detail-page-v2 .detail-related-card-grid,
.detail-page-v2 .detail-res-list--page{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
}
.detail-page-v2 .detail-related-tile{
  display:grid !important;
  grid-template-columns:88px minmax(0,1fr) auto !important;
  gap:18px !important;
  align-items:center !important;
  min-height:88px !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}
.detail-page-v2 .detail-res-item--clickable{
  display:grid !important;
  grid-template-columns:minmax(120px,150px) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:center !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  min-height:58px !important;
  box-sizing:border-box !important;
}
.detail-page-v2 .detail-res-date{grid-column:auto !important;min-width:0 !important;}
.detail-page-v2 .detail-res-main{
  grid-column:auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:16px !important;
  min-width:0 !important;
}
.detail-page-v2 .detail-empty,
.detail-page-v2 .detail-empty--plain{
  position:relative !important;
  z-index:1 !important;
  width:100% !important;
  min-height:54px !important;
  display:flex !important;
  align-items:center !important;
  padding:14px 0 !important;
  background:transparent !important;
  border:0 !important;
  color:var(--muted) !important;
  opacity:1 !important;
  box-shadow:none !important;
}
html[data-theme="light"] .detail-page-v2 .detail-empty,
html[data-theme="light"] .detail-page-v2 .detail-empty--plain{
  color:#64748b !important;
}
.detail-page-v2 .detail-panel-headline,
.detail-page-v2 .detail-info-card > h2{
  position:relative !important;
  z-index:2 !important;
}
@media (max-width:1180px){
  .detail-page-v2 .detail-dashboard-lower,
  .detail-page-v2 .detail-dashboard-lower--wide{
    grid-template-columns:1fr !important;
  }
}
@media (max-width:720px){
  .detail-page-v2 .detail-dashboard-lower > .detail-info-card,
  .detail-page-v2 .detail-dashboard-lower--wide > .detail-info-card{padding:18px !important;}
  .detail-page-v2 .detail-related-tile{grid-template-columns:72px minmax(0,1fr) !important;gap:14px !important;}
  .detail-page-v2 .detail-related-weight{grid-column:2 !important;justify-self:start !important;}
  .detail-page-v2 .detail-res-item--clickable{grid-template-columns:1fr !important;gap:8px !important;}
  .detail-page-v2 .detail-res-main{grid-template-columns:1fr !important;gap:4px !important;}
}

/* v2.16.8 – Detailseite: Feinschliff unterer Bereich ohne Header-Änderungen */
.detail-page-v2 .detail-dashboard-lower,
.detail-page-v2 .detail-dashboard-lower--wide{
  align-items:stretch !important;
  gap:22px !important;
}
.detail-page-v2 .detail-dashboard-lower > .detail-info-card,
.detail-page-v2 .detail-dashboard-lower--wide > .detail-info-card{
  height:100% !important;
  min-height:150px !important;
  padding:24px 26px !important;
  display:flex !important;
  flex-direction:column !important;
}
.detail-page-v2 .detail-panel-headline,
.detail-page-v2 .detail-info-card > h2{
  margin:0 0 18px !important;
  min-height:30px !important;
  display:flex !important;
  align-items:center !important;
}
.detail-page-v2 .detail-panel-headline h2,
.detail-page-v2 .detail-info-card > h2{
  font-size:1.12rem !important;
  line-height:1.2 !important;
  font-weight:850 !important;
  color:var(--text) !important;
}
.detail-page-v2 .detail-related-card-grid,
.detail-page-v2 .detail-res-list--page{
  flex:1 1 auto !important;
}
.detail-page-v2 .detail-related-card-grid{
  gap:12px !important;
}
.detail-page-v2 .detail-related-tile{
  grid-template-columns:86px minmax(0,1fr) minmax(120px,auto) !important;
  min-height:86px !important;
  padding:12px 14px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(15,23,42,.10) !important;
  box-shadow:none !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-related-tile{
  background:rgba(15,23,42,.36) !important;
  border-color:rgba(148,163,184,.14) !important;
}
.detail-page-v2 .detail-related-thumb{
  width:78px !important;
  height:58px !important;
  border-radius:8px !important;
  background:rgba(15,23,42,.06) !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-related-thumb{background:rgba(2,6,23,.42) !important;}
.detail-page-v2 .detail-related-copy strong{
  font-size:1rem !important;
  line-height:1.25 !important;
  font-weight:850 !important;
  color:var(--text) !important;
  white-space:normal !important;
}
.detail-page-v2 .detail-related-copy span{
  margin-top:4px !important;
  color:var(--muted) !important;
  font-weight:700 !important;
}
.detail-page-v2 .detail-related-weight{
  justify-self:end !important;
  font-size:.92rem !important;
  font-weight:850 !important;
  color:var(--text) !important;
  white-space:nowrap !important;
}
.detail-page-v2 .detail-res-list--page{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
}
.detail-page-v2 .detail-res-item--clickable{
  display:grid !important;
  grid-template-columns:34px minmax(112px,150px) minmax(0,1fr) !important;
  gap:14px !important;
  align-items:center !important;
  min-height:62px !important;
  padding:10px 0 !important;
  border:0 !important;
  border-bottom:1px solid rgba(15,23,42,.10) !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-res-item--clickable{border-bottom-color:rgba(148,163,184,.14) !important;}
.detail-page-v2 .detail-res-item--clickable:before{
  content:'📅' !important;
  grid-column:1 !important;
  grid-row:1 !important;
  width:28px !important;
  height:28px !important;
  border-radius:7px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  background:rgba(79,70,229,.10) !important;
  color:#312e81 !important;
  font-size:.9rem !important;
}
.detail-page-v2 .detail-res-date{
  grid-column:2 !important;
  grid-row:1 !important;
  min-width:0 !important;
}
.detail-page-v2 .detail-res-date strong{
  display:block !important;
  font-size:.92rem !important;
  line-height:1.2 !important;
  color:var(--text) !important;
  font-weight:850 !important;
}
.detail-page-v2 .detail-res-date span{
  display:block !important;
  margin-top:4px !important;
  font-size:.84rem !important;
  color:var(--muted) !important;
  font-weight:650 !important;
}
.detail-page-v2 .detail-res-main{
  grid-column:3 !important;
  grid-row:1 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:center !important;
  min-width:0 !important;
}
.detail-page-v2 .detail-res-main strong,
.detail-page-v2 .detail-res-main span{
  display:block !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  line-height:1.25 !important;
}
.detail-page-v2 .detail-res-main strong{
  color:var(--text) !important;
  font-size:.92rem !important;
  font-weight:850 !important;
}
.detail-page-v2 .detail-res-main span{
  color:var(--muted) !important;
  font-size:.84rem !important;
  font-weight:650 !important;
}
.detail-page-v2 .detail-empty,
.detail-page-v2 .detail-empty--plain{
  flex:1 1 auto !important;
  min-height:86px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:18px !important;
  border:1px dashed rgba(100,116,139,.28) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.42) !important;
  color:#64748b !important;
  font-weight:800 !important;
  opacity:1 !important;
  box-shadow:none !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-empty,
html[data-theme="dark"] .detail-page-v2 .detail-empty--plain{
  background:rgba(15,23,42,.28) !important;
  border-color:rgba(148,163,184,.18) !important;
  color:#94a3b8 !important;
}
.detail-page-v2 .detail-wide-action{
  margin-top:16px !important;
  align-self:flex-start !important;
}
@media (max-width:1180px){
  .detail-page-v2 .detail-dashboard-lower,
  .detail-page-v2 .detail-dashboard-lower--wide{
    grid-template-columns:1fr !important;
  }
}
@media (max-width:720px){
  .detail-page-v2 .detail-dashboard-lower > .detail-info-card,
  .detail-page-v2 .detail-dashboard-lower--wide > .detail-info-card{
    padding:18px !important;
  }
  .detail-page-v2 .detail-related-tile{
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:14px !important;
  }
  .detail-page-v2 .detail-related-weight{
    grid-column:2 !important;
    justify-self:start !important;
    margin-top:2px !important;
  }
  .detail-page-v2 .detail-res-item--clickable{
    grid-template-columns:30px minmax(0,1fr) !important;
    gap:12px !important;
    align-items:start !important;
  }
  .detail-page-v2 .detail-res-date{
    grid-column:2 !important;
  }
  .detail-page-v2 .detail-res-main{
    grid-column:2 !important;
    grid-row:2 !important;
    grid-template-columns:1fr !important;
    gap:4px !important;
    padding-left:42px !important;
  }
}

/* v2.16.9 – Detailseite: Reservierungsliste begrenzt + Schnellreservierung */
.detail-page-v2 .detail-list-note{
  margin-top:12px !important;
  color:var(--muted) !important;
  font-size:.82rem !important;
  font-weight:700 !important;
}
.detail-page-v2 .detail-quick-reserve-card{
  margin-top:18px !important;
  padding:22px 24px !important;
}
.detail-page-v2 .detail-quick-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:16px !important;
  margin-bottom:16px !important;
}
.detail-page-v2 .detail-quick-head h2{
  margin:0 0 4px !important;
  font-size:1.08rem !important;
  font-weight:850 !important;
  color:var(--text) !important;
}
.detail-page-v2 .detail-quick-head p{
  margin:0 !important;
  color:var(--muted) !important;
  font-size:.92rem !important;
  font-weight:650 !important;
}
.detail-page-v2 .detail-quick-head strong{color:var(--text) !important;font-weight:850 !important;}
.detail-page-v2 .detail-quick-form{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(170px,1fr)) minmax(230px,1.2fr) minmax(220px,1.2fr) auto !important;
  gap:12px !important;
  align-items:end !important;
}
.detail-page-v2 .detail-quick-form label{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  min-width:0 !important;
  position:relative !important;
}
.detail-page-v2 .detail-quick-form label span{
  color:var(--muted) !important;
  font-size:.78rem !important;
  font-weight:850 !important;
  letter-spacing:.02em !important;
}
.detail-page-v2 .detail-quick-form input{
  width:100% !important;
  height:42px !important;
  border-radius:10px !important;
  border:1px solid rgba(100,116,139,.24) !important;
  background:rgba(255,255,255,.82) !important;
  color:var(--text) !important;
  padding:0 12px !important;
  font:inherit !important;
  font-weight:700 !important;
  box-sizing:border-box !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-quick-form input{
  background:rgba(15,23,42,.54) !important;
  border-color:rgba(148,163,184,.18) !important;
}
.detail-page-v2 .detail-quick-submit{
  height:42px !important;
  border:0 !important;
  border-radius:10px !important;
  padding:0 18px !important;
  background:#2f2389 !important;
  color:#fff !important;
  font:inherit !important;
  font-weight:850 !important;
  cursor:pointer !important;
  white-space:nowrap !important;
}
.detail-page-v2 .detail-quick-submit:disabled{opacity:.65 !important;cursor:not-allowed !important;}
.detail-page-v2 .detail-quick-driver-results{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:100% !important;
  z-index:30 !important;
  display:none;
  margin-top:6px !important;
  padding:6px !important;
  border-radius:12px !important;
  background:#fff !important;
  border:1px solid rgba(100,116,139,.22) !important;
  box-shadow:0 18px 36px rgba(15,23,42,.16) !important;
  max-height:220px !important;
  overflow:auto !important;
}
html[data-theme="dark"] .detail-page-v2 .detail-quick-driver-results{
  background:#0f172a !important;
  border-color:rgba(148,163,184,.20) !important;
}
.detail-page-v2 .detail-quick-driver-results button{
  width:100% !important;
  border:0 !important;
  background:transparent !important;
  color:var(--text) !important;
  text-align:left !important;
  border-radius:8px !important;
  padding:9px 10px !important;
  font:inherit !important;
  font-size:.9rem !important;
  font-weight:750 !important;
  cursor:pointer !important;
}
.detail-page-v2 .detail-quick-driver-results button:hover{background:rgba(79,70,229,.10) !important;}
.detail-page-v2 .detail-quick-message{
  grid-column:1 / -1 !important;
  min-height:18px !important;
  color:var(--muted) !important;
  font-size:.88rem !important;
  font-weight:750 !important;
}
.detail-page-v2 .detail-quick-message.is-ok{color:#16a34a !important;}
.detail-page-v2 .detail-quick-message.is-error{color:#dc2626 !important;}
@media (max-width:1180px){
  .detail-page-v2 .detail-quick-form{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .detail-page-v2 .detail-quick-submit{width:100% !important;}
}
@media (max-width:720px){
  .detail-page-v2 .detail-quick-reserve-card{padding:18px !important;}
  .detail-page-v2 .detail-quick-form{grid-template-columns:1fr !important;}
}

/* Detailseite v2.16.10: Schnellreservierung als einzelner Button */
.detail-page-v2 .detail-quick-button-wrap{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:18px 0 4px !important;
}
.detail-page-v2 .detail-quick-window-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:44px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#4f46e5,#7c3aed) !important;
  color:#fff !important;
  font-weight:850 !important;
  text-decoration:none !important;
  box-shadow:0 14px 28px rgba(79,70,229,.22) !important;
}
.detail-page-v2 .detail-quick-window-btn:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 18px 34px rgba(79,70,229,.28) !important;
}
.detail-page-v2 .detail-quick-button-note{
  color:var(--text-3) !important;
  font-weight:750 !important;
}
@media (max-width:700px){
  .detail-page-v2 .detail-quick-button-wrap{justify-content:stretch !important;}
  .detail-page-v2 .detail-quick-window-btn{width:100% !important;padding:0 16px !important;}
}

/* v2.16.11 – Reservierungsfenster etwas kompakter */
.modal--day-reserve {
  width:clamp(540px, 56vw, 700px) !important;
}
.modal--day-reserve .modal-body {
  padding:1.15rem 1.25rem 1.35rem !important;
}
.modal--day-reserve .form-group,
.modal--day-reserve .day-time-row {
  margin-top:.6rem !important;
}
.modal--day-reserve .form-control {
  min-height:38px !important;
}
@media (max-width:760px) {
  .modal--day-reserve {
    width:100% !important;
    max-width:100% !important;
  }
  .modal--day-reserve .modal-body {
    padding:1rem !important;
  }
}


/* Compact reservation modal v2 */
.modal--day-reserve{
  width:clamp(500px,52vw,640px)!important;
}
.modal--day-reserve .modal-body{
  padding:.95rem 1rem 1.05rem!important;
}
.modal--day-reserve .modal-title{font-size:1.25rem!important;}
.modal--day-reserve label,
.modal--day-reserve .form-label{font-size:.78rem!important;}
.modal--day-reserve .form-control,
.modal--day-reserve select,
.modal--day-reserve textarea{
  min-height:34px!important;
  font-size:.82rem!important;
  padding:.38rem .6rem!important;
}
.modal--day-reserve .btn{
  font-size:.84rem!important;
  padding:.46rem .8rem!important;
}


/* v2.16.13 – Reservierungsfenster Schrift wirklich kleiner, Fahrzeugname kleiner, Kennzeichen größer */
.detail-page-v2 .detail-dashboard-title h1{
  font-size:clamp(1.65rem, 1.75vw, 2.35rem) !important;
  line-height:1.08 !important;
}
.detail-page-v2 .detail-dashboard-plate .plate-unified-svg,
.detail-page-v2 .detail-dashboard-plate .dashboard-license-svg{
  width:190px !important;
  max-width:190px !important;
}

.modal--day-reserve{
  width:clamp(480px, 48vw, 600px) !important;
  font-size:.82rem !important;
}
.modal--day-reserve .modal-header{
  padding:.85rem 1rem .75rem !important;
}
.modal--day-reserve .modal-body{
  padding:.8rem .9rem .95rem !important;
}
.modal--day-reserve .modal-title,
.modal--day-reserve h1,
.modal--day-reserve h2,
.modal--day-reserve h3{
  font-size:1.05rem !important;
  line-height:1.15 !important;
}
.modal--day-reserve .vehicle-preview-badge{
  padding:.62rem .75rem !important;
  gap:.6rem !important;
  margin-bottom:.75rem !important;
}
.modal--day-reserve .vehicle-preview-badge .vname{
  font-size:.82rem !important;
  line-height:1.15 !important;
}
.modal--day-reserve .vehicle-preview-badge .vplate{
  font-size:.68rem !important;
}
.modal--day-reserve .form-row,
.modal--day-reserve .day-time-row{
  gap:.55rem !important;
}
.modal--day-reserve .form-group{
  gap:.22rem !important;
  margin-bottom:.52rem !important;
}
.modal--day-reserve label,
.modal--day-reserve .form-label,
.modal--day-reserve .form-group label,
.modal--day-reserve .dm-section-label,
.modal--day-reserve .res-info-box .info-label{
  font-size:.66rem !important;
  line-height:1.15 !important;
  letter-spacing:.055em !important;
}
.modal--day-reserve .form-control,
.modal--day-reserve input,
.modal--day-reserve select,
.modal--day-reserve textarea{
  min-height:31px !important;
  font-size:.76rem !important;
  line-height:1.2 !important;
  padding:.32rem .52rem !important;
}
.modal--day-reserve textarea.form-control,
.modal--day-reserve textarea{
  min-height:58px !important;
}
.modal--day-reserve .btn,
.modal--day-reserve button,
.modal--day-reserve .btn-primary{
  font-size:.78rem !important;
  min-height:32px !important;
  padding:.36rem .72rem !important;
}
.modal--day-reserve .res-info-box,
.modal--day-reserve .availability-check,
.modal--day-reserve .dm-row,
.modal--day-reserve .dm-chip{
  font-size:.74rem !important;
}
.modal--day-reserve .modal-close{
  width:26px !important;
  height:26px !important;
  font-size:.78rem !important;
}

@media (max-width:1500px){
  .detail-page-v2 .detail-dashboard-title h1{
    font-size:clamp(1.55rem, 1.65vw, 2.05rem) !important;
  }
  .detail-page-v2 .detail-dashboard-plate .plate-unified-svg,
  .detail-page-v2 .detail-dashboard-plate .dashboard-license-svg{
    width:168px !important;
    max-width:168px !important;
  }
}
@media (max-width:760px){
  .modal--day-reserve{
    width:100% !important;
    max-width:100% !important;
  }
  .detail-page-v2 .detail-dashboard-title h1{
    font-size:1.65rem !important;
  }
  .detail-page-v2 .detail-dashboard-plate .plate-unified-svg,
  .detail-page-v2 .detail-dashboard-plate .dashboard-license-svg{
    width:170px !important;
    max-width:170px !important;
  }
}

/* v2.16.14 – Statuskarten zeigen Fahrer + Grund, mobile Reservierungsliste linksbündig */
.detail-page-v2 .detail-status-meta{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  gap:3px 8px !important;
  margin-top:6px !important;
  max-width:100% !important;
}
.detail-page-v2 .detail-status-meta span,
.detail-page-v2 .detail-status-meta em{
  display:block !important;
  min-width:0 !important;
  margin:0 !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  text-align:left !important;
}
.detail-page-v2 .detail-status-meta span{
  color:var(--muted) !important;
  font-size:.78rem !important;
  font-weight:700 !important;
}
.detail-page-v2 .detail-status-meta em{
  color:var(--text) !important;
  font-size:.84rem !important;
  font-weight:850 !important;
  font-style:normal !important;
}
@media (max-width:720px){
  .detail-page-v2 .detail-res-date,
  .detail-page-v2 .detail-res-date strong,
  .detail-page-v2 .detail-res-date span,
  .detail-page-v2 .detail-res-main,
  .detail-page-v2 .detail-res-main strong,
  .detail-page-v2 .detail-res-main span{
    text-align:left !important;
    justify-self:start !important;
    align-self:start !important;
  }
  .detail-page-v2 .detail-res-main{
    padding-left:0 !important;
  }
  .detail-page-v2 .detail-status-meta{
    grid-template-columns:1fr !important;
    gap:2px !important;
  }
}

/* v2.16.15 – Detailseite Header: Name, Kennzeichen, interne Nr.; technische Daten rechts */
.detail-page-v2 .detail-dashboard-head{
  grid-template-columns:minmax(240px, 320px) minmax(260px, .95fr) minmax(460px, 1.45fr) !important;
  gap:28px !important;
  align-items:center !important;
}
.detail-page-v2 .detail-dashboard-title{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:12px !important;
  border-right:1px solid rgba(148,163,184,.18) !important;
  padding-right:26px !important;
}
.detail-page-v2 .detail-dashboard-title h1{
  margin:0 !important;
}
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate{
  justify-self:start !important;
  align-self:flex-start !important;
  margin:0 !important;
}
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .plate-unified-svg,
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .dashboard-license-svg{
  width:192px !important;
  max-width:192px !important;
}
.detail-page-v2 .detail-dashboard-chips{
  margin-top:0 !important;
}
.detail-page-v2 .detail-dashboard-chips span:empty{
  display:none !important;
}
.detail-page-v2 .detail-dashboard-tech{
  border-right:0 !important;
  padding:0 !important;
}
.detail-page-v2 .detail-tech-inline-grid{
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:16px 30px !important;
}
.detail-page-v2 .detail-page-row strong:empty,
.detail-page-v2 .detail-page-row span:empty{
  display:none !important;
}
.detail-page-v2 .detail-page-row:has(strong:empty),
.detail-page-v2 .detail-page-row:has(span:empty){
  display:none !important;
}

@media (max-width:1500px){
  .detail-page-v2 .detail-dashboard-head{
    grid-template-columns:minmax(220px, 280px) minmax(230px, .85fr) minmax(390px, 1.4fr) !important;
    gap:22px !important;
  }
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .plate-unified-svg,
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .dashboard-license-svg{
    width:172px !important;
    max-width:172px !important;
  }
}

@media (max-width:1180px){
  .detail-page-v2 .detail-dashboard-head{
    grid-template-columns:220px minmax(0,1fr) !important;
    grid-template-areas:"photo title" "tech tech" !important;
  }
  .detail-page-v2 .detail-dashboard-thumb{grid-area:photo !important;}
  .detail-page-v2 .detail-dashboard-title{
    grid-area:title !important;
    border-right:0 !important;
    padding-right:0 !important;
  }
  .detail-page-v2 .detail-dashboard-tech{
    grid-area:tech !important;
    border-top:1px solid rgba(148,163,184,.18) !important;
    padding-top:18px !important;
  }
}

@media (max-width:720px){
  .detail-page-v2 .detail-dashboard-head{
    grid-template-columns:1fr !important;
    grid-template-areas:"photo" "title" "tech" !important;
    gap:14px !important;
  }
  .detail-page-v2 .detail-dashboard-title{
    gap:10px !important;
  }
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .plate-unified-svg,
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .dashboard-license-svg{
    width:176px !important;
    max-width:176px !important;
  }
  .detail-page-v2 .detail-tech-inline-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
}

/* v2.16.16 – Detailseite Header-Feinschliff
   - Kennzeichen bündig mit dem Fahrzeugnamen
   - Hersteller und Modell getrennt, damit lange Bezeichnungen nicht überlaufen
   - Technische Daten mit sauberem Umbruch */
.detail-page-v2 .detail-dashboard-title{
  align-items:flex-start !important;
}
.detail-page-v2 .detail-dashboard-title h1,
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate,
.detail-page-v2 .detail-dashboard-chips{
  margin-left:0 !important;
  padding-left:0 !important;
}
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate{
  display:block !important;
}
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .plate-unified-svg,
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .dashboard-license-svg{
  width:170px !important;
  max-width:170px !important;
}
.detail-page-v2 .detail-tech-inline-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px 28px !important;
  align-items:start !important;
}
.detail-page-v2 .detail-page-row{
  display:grid !important;
  grid-template-columns:24px minmax(92px,.75fr) minmax(0,1.2fr) !important;
  align-items:start !important;
  gap:10px !important;
  min-width:0 !important;
}
.detail-page-v2 .detail-page-row span,
.detail-page-v2 .detail-page-row strong{
  min-width:0 !important;
}
.detail-page-v2 .detail-page-row strong{
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  text-align:right !important;
  line-height:1.25 !important;
}
.detail-page-v2 .detail-page-row:nth-child(1),
.detail-page-v2 .detail-page-row:nth-child(2){
  grid-column:1 / -1 !important;
  grid-template-columns:24px minmax(110px,150px) minmax(0,1fr) !important;
}
.detail-page-v2 .detail-page-row:nth-child(1) strong,
.detail-page-v2 .detail-page-row:nth-child(2) strong{
  text-align:left !important;
}

@media (max-width:1500px){
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .plate-unified-svg,
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .dashboard-license-svg{
    width:158px !important;
    max-width:158px !important;
  }
  .detail-page-v2 .detail-tech-inline-grid{
    gap:13px 20px !important;
  }
}
@media (max-width:1180px){
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .plate-unified-svg,
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate .dashboard-license-svg{
    width:166px !important;
    max-width:166px !important;
  }
}
@media (max-width:720px){
  .detail-page-v2 .detail-tech-inline-grid{
    grid-template-columns:1fr !important;
  }
  .detail-page-v2 .detail-page-row,
  .detail-page-v2 .detail-page-row:nth-child(1),
  .detail-page-v2 .detail-page-row:nth-child(2){
    grid-template-columns:24px minmax(110px,.8fr) minmax(0,1fr) !important;
  }
  .detail-page-v2 .detail-page-row strong{
    text-align:right !important;
  }
}


/* v2.16.17 – Detailseite Header: interne Nummer beim Anhänger wieder als Bubble anzeigen
   - Fallback auf short_name, falls internal_number leer ist
   - Chip bleibt unter dem Kennzeichen und verändert den Header nicht */
.detail-page-v2 .detail-dashboard-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:flex-start !important;
}
.detail-page-v2 .detail-dashboard-chips span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:24px !important;
  padding:4px 12px !important;
  border-radius:8px !important;
  line-height:1.1 !important;
}

/* v2.16.18 – Detailseite auf gleiche Inhaltsbreite wie Fahrzeugübersicht begrenzen */
.main-content.detail-page-v2{
  max-width:1560px !important;
  width:100% !important;
  margin:0 auto !important;
  padding:1.05rem 1.35rem 1.6rem !important;
  box-sizing:border-box !important;
}
@media (max-width:700px){
  .main-content.detail-page-v2{
    padding:14px 14px 30px !important;
  }
}

/* v2.16.19 – Detailseite Header: Kennzeichen optisch unter den Namensanfang ziehen */
.detail-page-v2 .detail-dashboard-title .detail-dashboard-plate{
  margin-left:-6px !important;
}

@media (max-width:720px){
  .detail-page-v2 .detail-dashboard-title .detail-dashboard-plate{
    margin-left:-4px !important;
  }
}

/* v2.16.20 – Mobile Ansicht: horizontales Scrollen verhindern
   Ziel: Auf Smartphones nur noch vertikal scrollen, ohne das Layout sichtbar zu verändern. */
html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

@media (max-width: 760px) {
  html,
  body,
  .site-header,
  .header-inner,
  .main-content,
  .vehicle-overview-page,
  .vehicle-page-head,
  .vehicle-toolbar,
  .vehicle-filterbar,
  .vehicle-grid,
  .detail-page-v2,
  .detail-page-v2 * {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .site-header,
  .main-content,
  .vehicle-overview-page,
  .detail-page-v2 {
    overflow-x: hidden !important;
  }

  .vehicle-grid,
  .detail-dashboard-shell,
  .detail-dashboard-header,
  .detail-dashboard-title,
  .detail-dashboard-lower,
  .detail-dashboard-side,
  .detail-tech-inline-grid,
  .detail-status-grid-v4,
  .vehicle-detail-body-v4,
  .detail-history-list,
  .detail-reservation-list {
    min-width: 0 !important;
    width: 100% !important;
    overflow-x: hidden !important;
  }

  .vcard,
  .detail-panel-v4,
  .detail-status-card,
  .detail-dashboard-card,
  .detail-reservation-row,
  .detail-history-row,
  .detail-assigned-item,
  .detail-page-row {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .vcard-name,
  .detail-dashboard-title h1,
  .detail-card-main strong,
  .detail-muted,
  .detail-reservation-row,
  .detail-history-row,
  .detail-assigned-item,
  .detail-page-row span,
  .detail-page-row strong {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .modal-overlay {
    overflow-x: hidden !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  .modal,
  .modal--reserve-v3,
  .modal--vehicle-detail-v3,
  .modal--day-reserve,
  .modal--detail {
    width: calc(100vw - 12px) !important;
    max-width: calc(100vw - 12px) !important;
    overflow-x: hidden !important;
  }

  .modal-body,
  .modal-header,
  .reserve-v3-body,
  .reserve-form-grid,
  .reserve-vehicle-card,
  .reserve-vehicle-main,
  .modal--vehicle-detail-v3 .modal-body {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .day-vehicle-table,
  .day-vehicle-table table,
  .reservations-table,
  .history-table {
    max-width: 100% !important;
  }
}

/* Filter: Karten wirklich ausblenden, auch wenn die Kachel-CSS display:flex !important nutzt */
#view-tiles .vehicle-card-v3.is-filter-hidden,
#view-tiles .vehicle-card-v3[hidden] {
  display: none !important;
}
