/* ============================================================
   Autosecure Brand-Layer (CI Moby Digg 02/2025)
   Konzept: durchgängiger Dark-Mode — Shell UND Content in
   Brand-Schwarz, Neon (#D1FD0A) als einzige Signalfarbe.
   Umsetzung als Override der Metronic-CSS-Variablen.
   Lädt NACH style.bundle.css + site.css.
   Markenschrift ist Acid Grotesk — bis zur Webfont-Lizenz AllianceNo2.
   ============================================================ */

:root, [data-theme=light] {
    /* Kernfarben */
    --as-neon: #D1FD0A;
    --as-neon-active: #b9e206;
    --as-black: #141315;
    --as-surface: #1E1D1F;
    --as-surface-2: #242326;
    --as-border: #2E2D30;
    --as-white: #FEFEFE;
    --as-text-muted: rgba(254, 254, 254, 0.55);
    --as-shell-border: rgba(254, 254, 254, 0.08);
    --as-shell-text: rgba(254, 254, 254, 0.65);

    /* Semantische Farben */
    --kt-primary: var(--as-neon);
    --kt-primary-inverse: var(--as-black);
    --kt-primary-active: var(--as-neon-active);
    --kt-primary-light: rgba(209, 253, 10, 0.1);
    --kt-secondary: var(--as-surface-2);
    --kt-secondary-active: #343337;
    --kt-secondary-inverse: var(--as-white);
    --kt-info: #9141FA;
    --kt-info-active: #7a2fe0;
    --kt-danger: #FC3B30;
    --kt-danger-active: #c41c12;
    --kt-danger-light: rgba(252, 59, 48, 0.12);
    --kt-success: #34C85A;
    --kt-success-active: #279644;
    --kt-success-light: rgba(52, 200, 90, 0.12);
    --kt-warning: #FFD953;
    --kt-warning-active: #e9bd23;
    --kt-warning-light: rgba(255, 217, 83, 0.12);
    --kt-dark: var(--as-white);
    --kt-dark-active: #ffffff;
    --kt-dark-inverse: var(--as-black);
    --kt-light: var(--as-surface-2);
    --kt-light-active: #2C2B2F;
    --kt-light-inverse: var(--as-white);

    /* Grauskala invertiert (hell → dunkel) */
    --kt-gray-100: #232225;
    --kt-gray-200: #2A292C;
    --kt-gray-300: #353438;
    --kt-gray-400: #55545A;
    --kt-gray-500: #7C7B82;
    --kt-gray-600: #9C9BA1;
    --kt-gray-700: #C0BFC4;
    --kt-gray-800: #DEDDE0;
    --kt-gray-900: #FEFEFE;
    --kt-text-gray-100: #232225;
    --kt-text-gray-200: #2A292C;
    --kt-text-gray-300: #353438;
    --kt-text-gray-400: #55545A;
    --kt-text-gray-500: #7C7B82;
    --kt-text-gray-600: #9C9BA1;
    --kt-text-gray-700: #C0BFC4;
    --kt-text-gray-800: #DEDDE0;
    --kt-text-gray-900: #FEFEFE;
    --kt-text-muted: var(--as-text-muted);
    --kt-text-dark: var(--as-white);
    --kt-text-primary: var(--as-neon);

    /* Body & Grundflächen */
    --kt-body-bg: #161517;
    --kt-body-bg-rgb: 22, 21, 23;
    --kt-body-color: var(--as-white);
    --kt-headings-color: var(--as-white);
    --kt-link-color: var(--as-white);
    --kt-link-hover-color: var(--as-neon);
    --kt-border-color: var(--as-border);
    --kt-border-dashed-color: #3A393D;
    --kt-app-blank-bg-color: #161517;

    /* Komponenten-Zustände */
    --kt-component-active-color: var(--as-black);
    --kt-component-active-bg: var(--as-neon);
    --kt-component-hover-color: var(--as-neon);
    --kt-component-hover-bg: rgba(209, 253, 10, 0.08);
    --kt-component-checked-color: var(--as-black);
    --kt-component-checked-bg: var(--as-neon);

    /* Cards */
    --kt-card-bg: var(--as-surface);
    --kt-card-border-color: var(--as-border);
    --kt-card-border-dashed-color: #3A393D;
    --kt-card-cap-bg: var(--as-surface);
    --kt-card-border-radius: 1rem;
    --kt-card-box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35);
    --kt-border-radius: 0.75rem;

    /* Formulare */
    --kt-form-label-color: var(--as-text-muted);
    --kt-input-bg: var(--as-surface-2);
    --kt-input-color: var(--as-white);
    --kt-input-border-color: #3A393D;
    --kt-input-focus-bg: var(--as-surface-2);
    --kt-input-focus-color: var(--as-white);
    --kt-input-focus-border-color: var(--as-neon);
    --kt-input-placeholder-color: rgba(254, 254, 254, 0.35);
    --kt-input-disabled-bg: #1B1A1D;
    --kt-input-disabled-color: #7C7B82;
    --kt-input-disabled-border-color: var(--as-border);
    --kt-input-solid-bg: var(--as-surface-2);
    --kt-input-solid-bg-focus: #2A292C;
    --kt-input-solid-color: var(--as-white);
    --kt-input-solid-placeholder-color: rgba(254, 254, 254, 0.35);
    --kt-input-group-addon-bg: var(--as-surface-2);
    --kt-input-group-addon-color: var(--as-text-muted);
    --kt-input-group-addon-border-color: #3A393D;
    --kt-form-select-bg: var(--as-surface-2);
    --kt-form-select-color: var(--as-white);
    --kt-form-select-border-color: #3A393D;
    --kt-form-select-focus-border-color: var(--as-neon);
    --kt-form-select-disabled-bg: #1B1A1D;
    --kt-form-select-disabled-color: #7C7B82;
    --kt-form-select-indicator: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23FEFEFE' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    --kt-form-check-input-bg: var(--as-surface-2);
    --kt-form-check-input-border: 1px solid #4A494E;
    --kt-form-check-input-checked-bg-color: var(--as-neon);
    --kt-form-check-input-checked-color: var(--as-black);
    --kt-form-check-input-bg-solid: #343337;

    /* Tabellen */
    --kt-table-color: var(--as-white);
    --kt-table-bg: transparent;
    --kt-table-striped-color: var(--as-white);
    --kt-table-striped-bg: rgba(254, 254, 254, 0.025);
    --kt-table-hover-bg: rgba(209, 253, 10, 0.05);
    --kt-table-hover-color: var(--as-white);
    --kt-table-border-color: var(--as-border);

    /* Dropdowns, Modals, Menüs, Drawer */
    --kt-dropdown-bg: var(--as-surface-2);
    --kt-dropdown-color: var(--as-white);
    --kt-dropdown-link-color: rgba(254, 254, 254, 0.75);
    --kt-dropdown-link-hover-bg: rgba(209, 253, 10, 0.08);
    --kt-dropdown-link-hover-color: var(--as-neon);
    --kt-dropdown-link-active-bg: var(--as-neon);
    --kt-dropdown-link-active-color: var(--as-black);
    --kt-dropdown-divider-bg: var(--as-border);
    --kt-dropdown-header-color: var(--as-text-muted);
    --kt-dropdown-box-shadow: 0 12px 40px rgba(0, 0, 0, 0.5);
    --kt-modal-bg: var(--as-surface);
    --kt-modal-content-bg: var(--as-surface);
    --kt-modal-border-color: var(--as-border);
    --kt-modal-content-border-color: var(--as-border);
    --kt-modal-header-border-color: var(--as-border);
    --kt-modal-footer-border-color: var(--as-border);
    --kt-modal-backdrop-bg: #000000;
    --kt-modal-backdrop-opacity: 0.6;
    --kt-drawer-bg-color: var(--as-surface);
    --kt-menu-dropdown-bg-color: var(--as-surface-2);
    --kt-menu-link-color-hover: var(--as-neon);
    --kt-menu-link-bg-color-hover: rgba(209, 253, 10, 0.08);
    --kt-menu-link-bg-color-active: rgba(209, 253, 10, 0.12);
    --kt-menu-heading-color: var(--as-text-muted);

    /* Listen, Pagination, Akkordeons */
    --kt-list-group-bg: var(--as-surface);
    --kt-list-group-color: var(--as-white);
    --kt-list-group-border-color: var(--as-border);
    --kt-list-group-hover-bg: rgba(254, 254, 254, 0.04);
    --kt-accordion-bg: var(--as-surface);
    --kt-accordion-color: var(--as-white);
    --kt-accordion-border-color: var(--as-border);
    --kt-accordion-button-bg: var(--as-surface);
    --kt-accordion-button-color: var(--as-white);
    --kt-accordion-button-active-bg: var(--as-surface-2);
    --kt-accordion-button-active-color: var(--as-neon);

    --kt-app-header-base-bg-color: var(--as-black);
    --kt-app-footer-bg-color: var(--as-black);
    --kt-app-toolbar-base-bg-color: var(--as-black);
    --kt-blockui-overlay-bg: rgba(20, 19, 21, 0.6);
    --kt-breadcrumb-active-color: var(--as-neon);
    --kt-code-bg: var(--as-surface-2);
    --kt-code-color: var(--as-neon);
    --kt-badge-color: var(--as-white);
    --kt-tooltip-bg: var(--as-surface-2);
    --kt-tooltip-color: var(--as-white);
    --kt-popover-bg: var(--as-surface-2);
    --kt-popover-color: var(--as-white);
    --kt-scrolltop-bg-color: var(--as-black);
}

/* Content-Hintergrund: Metronic definiert --kt-app-bg-color zusätzlich auf
   html:not([data-theme=dark]) — gleicher Selektor nötig, sonst verliert :root */
html:not([data-theme=dark]),
:root,
[data-theme=light] {
    --kt-app-bg-color: #161517;
    --kt-app-bg-color-dark: #161517;
}

/* ---------- Typografie ---------- */
body, html {
    color: var(--as-white);
}

h1, h2, h3, .fw-bolder {
    letter-spacing: -0.01em;
}

/* ============================================================
   SHELL: Header
   ============================================================ */
.app-header,
#kt_app_header {
    background-color: var(--as-black) !important;
    border-bottom: 1px solid var(--as-shell-border) !important;
    box-shadow: none !important;
}

#kt_app_header img.app-sidebar-logo-default {
    max-height: 26px;
}

.header-support-icon {
    color: rgba(254, 254, 254, 0.55);
}

.header-support-icon:hover {
    color: var(--as-neon);
}

#kt_header_user_menu_toggle .symbol span {
    color: var(--as-white);
    font-weight: 500;
}

#kt_header_user_menu_toggle .symbol img {
    border-radius: 50%;
    border: 1px solid var(--as-shell-border);
}

.app-header .nav-link.text-dark {
    color: rgba(254, 254, 254, 0.55) !important;
}

/* User-Dropdown im Header: Dark Glass */
#kt_header_user_menu_toggle .menu-sub-dropdown {
    background: rgba(30, 29, 31, 0.97);
    border: 1px solid rgba(254, 254, 254, 0.14);
    border-radius: 1rem;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

#kt_header_user_menu_toggle .menu-sub-dropdown .menu-link {
    color: rgba(254, 254, 254, 0.75) !important;
    border-radius: 0.6rem;
}

#kt_header_user_menu_toggle .menu-sub-dropdown .menu-link i {
    color: rgba(254, 254, 254, 0.45);
}

#kt_header_user_menu_toggle .menu-sub-dropdown .menu-link:hover {
    background: rgba(209, 253, 10, 0.08) !important;
    color: var(--as-neon) !important;
}

#kt_header_user_menu_toggle .menu-sub-dropdown .menu-link:hover i {
    color: var(--as-neon);
}

#kt_header_user_menu_toggle .menu-sub-dropdown .separator {
    border-color: rgba(254, 254, 254, 0.1);
}

/* ============================================================
   SHELL: Sidebar
   ============================================================ */
.app-sidebar {
    background-color: var(--as-black) !important;
    border-right: 1px solid var(--as-shell-border) !important;
}

.app-sidebar .app-sidebar-menu {
    background: var(--as-black);
}

.app-sidebar .menu-section {
    color: var(--as-white) !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.85rem !important;
}

.app-sidebar .app-sidebar-menu a.menu-content {
    border-radius: 0.75rem;
    font-weight: 500;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
}

.app-sidebar .app-sidebar-menu a.menu-content.bg-light {
    background-color: transparent !important;
}

.app-sidebar .app-sidebar-menu a.menu-content.text-gray-900,
.app-sidebar .app-sidebar-menu a.menu-content.bg-light i {
    color: var(--as-shell-text) !important;
}

.app-sidebar .app-sidebar-menu a.menu-content:hover {
    background-color: rgba(254, 254, 254, 0.06) !important;
    color: var(--as-white) !important;
}

.app-sidebar .app-sidebar-menu a.menu-content:hover i {
    color: var(--as-neon) !important;
}

.app-sidebar .app-sidebar-menu a.menu-content.bg-light-primary {
    background-color: rgba(209, 253, 10, 0.1) !important;
    box-shadow: inset 3px 0 0 var(--as-neon);
}

.app-sidebar .app-sidebar-menu a.menu-content.bg-light-primary,
.app-sidebar .app-sidebar-menu a.menu-content.bg-light-primary i {
    color: var(--as-neon) !important;
}

/* ============================================================
   SHELL: Sub-Navbar (Filterleiste) + Footer
   ============================================================ */
.sub-navbar {
    background-color: var(--as-black) !important;
    border-bottom: 1px solid var(--as-shell-border) !important;
    box-shadow: none !important;
}

.sub-navbar span.select2-selection,
.sub-navbar input,
.sub-navbar .form-select,
.sub-navbar .form-control {
    background-color: rgba(254, 254, 254, 0.07) !important;
    border: 1px solid rgba(254, 254, 254, 0.12) !important;
    border-radius: 0.75rem !important;
    color: var(--as-white) !important;
}

.sub-navbar input::placeholder {
    color: rgba(254, 254, 254, 0.4) !important;
}

.sub-navbar .select2-selection__rendered,
.sub-navbar .select2-selection__placeholder {
    color: rgba(254, 254, 254, 0.75) !important;
}

.sub-navbar .input-search i {
    color: rgba(254, 254, 254, 0.5);
}

.app-footer {
    background-color: var(--as-black) !important;
}

.app-footer .text-muted,
.app-footer .text-dark {
    color: rgba(254, 254, 254, 0.4) !important;
}

/* ============================================================
   CONTENT: Buttons (Pillen)
   ============================================================ */
.btn {
    border-radius: 999px;
    font-weight: 600;
}

.btn.btn-primary {
    color: var(--as-black);
    background-color: var(--as-neon);
    border: 1px solid var(--as-neon);
}

.btn.btn-primary:hover:not(.btn-active),
.btn.btn-primary:focus:not(.btn-active),
.btn.btn-primary:active:not(.btn-active) {
    color: var(--as-neon) !important;
    background-color: var(--as-black) !important;
    border-color: var(--as-neon) !important;
}

.btn.btn-secondary,
.btn.btn-secondary.bg-white {
    color: var(--as-white);
    background-color: transparent !important;
    border: 1px solid rgba(254, 254, 254, 0.35);
}

.btn.btn-secondary:hover {
    background-color: var(--as-white) !important;
    color: var(--as-black) !important;
    border-color: var(--as-white);
}

.btn.btn-dark {
    background-color: var(--as-white);
    color: var(--as-black);
}

.btn.btn-dark:hover {
    background-color: var(--as-neon) !important;
    color: var(--as-black) !important;
}

.btn.btn-icon.bg-white {
    background-color: transparent !important;
    border: 1px solid rgba(254, 254, 254, 0.35);
    color: var(--as-white);
}

/* ---------- Formulare ---------- */
.form-control, .form-select {
    border-radius: 0.75rem;
}

.form-control:focus, .form-select:focus {
    box-shadow: 0 0 0 3px rgba(209, 253, 10, 0.3);
}

input[readonly],
input[readonly]:focus {
    background-color: var(--kt-input-disabled-bg) !important;
    color: var(--kt-input-disabled-color);
}

/* ---------- Tabellen (site.css-Altlasten überschreiben) ---------- */
.table-view .table {
    background: var(--as-black);
    color: var(--as-white);
}

.table-view .table tbody {
    background: var(--as-surface) !important;
    color: var(--as-white) !important;
}

.table-common thead tr {
    background: var(--as-surface-2);
}

.table-common tbody tr {
    border-bottom: 1px solid var(--as-border);
}

table.dataTable tr {
    border-color: var(--as-border);
}

table.dataTable thead th,
table.dataTable thead td {
    border-bottom: 1px solid var(--as-border) !important;
    color: var(--as-white);
}

.row-link:hover {
    background-color: rgba(209, 253, 10, 0.06);
}

.div-detail > label {
    color: var(--as-text-muted) !important;
}

/* ---------- Select2, SweetAlert, Datepicker, DataTables ---------- */
.select2-container--bootstrap5 .select2-selection {
    background-color: var(--kt-form-select-bg) !important;
    border-color: var(--kt-form-select-border-color) !important;
    color: var(--as-white) !important;
}

.select2-container--bootstrap5 .select2-selection__rendered {
    color: var(--as-white) !important;
}

.select2-dropdown {
    background-color: var(--as-surface-2) !important;
    border-color: var(--as-border) !important;
    color: var(--as-white);
}

.select2-container--bootstrap5 .select2-results__option {
    color: rgba(254, 254, 254, 0.8);
}

.select2-container--bootstrap5 .select2-results__option--highlighted {
    background-color: rgba(209, 253, 10, 0.1) !important;
    color: var(--as-neon) !important;
}

.select2-search__field {
    background: var(--as-surface) !important;
    color: var(--as-white) !important;
    border-color: var(--as-border) !important;
}

.swal2-popup {
    background: var(--as-surface) !important;
    color: var(--as-white) !important;
    border-radius: 1rem !important;
}

.swal2-title, .swal2-html-container {
    color: var(--as-white) !important;
}

.tempus-dominus-widget {
    background: var(--as-surface-2) !important;
    color: var(--as-white) !important;
    border: 1px solid var(--as-border);
}

.tempus-dominus-widget .date-container-days div,
.tempus-dominus-widget .toolbar div {
    color: var(--as-white);
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
    color: var(--as-text-muted) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    color: var(--as-text-muted) !important;
}

/* ---------- Kleinkram ---------- */
.scrolltop {
    background-color: var(--as-black);
    border: 1px solid var(--as-border);
}

.scrolltop .svg-icon {
    color: var(--as-neon);
}

.carousel-prev-btn, .carousel-next-btn {
    background-color: var(--as-surface-2);
    color: var(--as-neon);
}

.bg-lightblue {
    background: var(--as-surface-2);
}

.bg-white {
    background-color: var(--as-surface) !important;
}

.text-black, .text-dark {
    color: var(--as-white) !important;
}

i.text-black, i.text-dark {
    color: var(--as-neon) !important;
}

.btn-check:focus + .btn, .btn:focus {
    box-shadow: 0 0 0 3px rgba(209, 253, 10, 0.3);
}

/* ============================================================
   KOMPAKT-PASS: kleinere Titel, dichte Tabellen & Formulare
   ============================================================ */
/* Seitentitel & Sektions-Titel deutlich kleiner (statt riesiger fs-1/fs-2) */
.app-content h1 {
    font-size: 1.5rem;
    font-weight: 700;
}

.card .fs-2,
.card .fs-2qx {
    font-size: 1rem !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--as-white);
}

.card .fs-3 {
    font-size: 1.05rem !important;
}

.breadcrumb-item {
    color: var(--as-text-muted);
    font-size: 0.85rem;
}

/* Tabellen-Header: dunkel, kompakt, Versalien — schlägt Seiten-Styles */
.table thead,
table.dataTable thead {
    background: var(--as-surface-2) !important;
}

.table thead th,
table.dataTable thead th,
table.dataTable thead td {
    color: var(--as-text-muted) !important;
    font-size: 0.75rem !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 600 !important;
    padding-top: 0.6rem !important;
    padding-bottom: 0.6rem !important;
}

.table > :not(caption) > * > * {
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
}

/* Formulare kompakter: kleinere Labels, engere Abstände */
.card .form-label,
.card label {
    font-size: 0.85rem;
    color: var(--as-text-muted);
}

.card .form-control,
.card .form-select {
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
    font-size: 0.95rem;
}

.card .mb-4, .card .mb-5 {
    margin-bottom: 0.9rem !important;
}

.card-body.p-5, .card-body.p-4 {
    padding: 1.25rem !important;
}

/* Leere DataTables nicht künstlich hoch */
.dataTables_scrollBody {
    min-height: unset !important;
}

/* Dichtere Grundgröße: mehr Inhalt pro Seite */
@media (min-width: 768px) {
    html {
        font-size: 14px;
    }
}

.btn:not(.btn-icon):not(.btn-sm) {
    padding: 0.55rem 1.4rem;
    font-size: 0.95rem;
}

.dataTables_empty {
    color: var(--as-text-muted) !important;
    padding: 1.5rem 0 !important;
}

/* ============================================================
   RESPONSIVE: Mobile-Nutzbarkeit (Hereinnahme unterwegs)
   ============================================================ */
@media (max-width: 991.98px) {
    /* Header & Content enger */
    #kt_app_header_container {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    #kt_app_header img.app-sidebar-logo-default {
        max-height: 22px;
    }

    .app-content {
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }

    /* Flex-Spalten-Layouts (z.B. Fahrzeug-Detail) untereinander */
    .app-content .d-flex.flex-row,
    .app-content .d-flex.mt-7 {
        flex-direction: column !important;
        height: auto !important;
    }

    .app-content .d-flex.mt-7 > div,
    .app-content .d-flex.flex-row > .card {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 1rem;
    }

    .w-25, .mw-275px, .mw-200px {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Hero (Fahrzeug-Detail): Aktionen umbrechen, Stats 2-spaltig */
    .vehicle-hero {
        padding: 1.25rem 1rem 1rem;
    }

    .vehicle-hero > .d-flex {
        flex-wrap: wrap;
        gap: 0.75rem;
    }

    .vehicle-hero .hero-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        width: 100%;
    }

    .vehicle-hero .hero-actions .btn {
        margin-right: 0 !important;
        flex: 1 1 45%;
    }

    .vehicle-hero .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.75rem 1rem;
    }

    /* Tabellen horizontal scrollbar statt gequetscht */
    .card .dataTables_wrapper,
    .card .table-responsive-fallback,
    .card .overflow-auto {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .table {
        min-width: 640px;
    }

    .table.no-min-width {
        min-width: 0;
    }

    /* Sub-Navbar (Filter) umbrechen */
    .sub-navbar,
    .sub-navbar > div,
    .sub-navbar .d-flex {
        flex-wrap: wrap !important;
        gap: 0.5rem;
    }

    .sub-navbar .vehicle-status,
    .sub-navbar .vehicle-location,
    .sub-navbar .vehicle-in-stock,
    .sub-navbar .vehicle-dms,
    .sub-navbar .vehicle-search {
        width: 100% !important;
    }

    /* Buttons voll tappbar */
    .btn:not(.btn-icon):not(.btn-sm) {
        padding: 0.65rem 1.2rem;
    }
}

/* ---------- Mobile-Feinschliff: Filter kompakt, Tabellen modern ---------- */
@media (max-width: 991.98px) {
    .sub-navbar {
        padding: 0.5rem 0.75rem;
    }

    /* Filter hinter Toggle-Button verstecken (site.js injiziert .subnav-filter-toggle) —
       eingeklappt bleibt nur der Toggle sichtbar, kein toter Raum */
    .sub-navbar.filters-collapsed .container > *:not(.subnav-filter-toggle) {
        display: none !important;
    }

    .sub-navbar.filters-collapsed {
        padding-bottom: 0.5rem;
    }

    .sub-navbar .select2-container {
        width: 100% !important;
    }

    .subnav-filter-toggle {
        width: 100%;
        margin-bottom: 0.25rem;
        padding: 0.5rem 1rem;
        border: 1px solid rgba(254, 254, 254, 0.25);
        border-radius: 999px;
        color: rgba(254, 254, 254, 0.75);
        background: transparent;
        font-size: 0.9rem;
    }

    .subnav-filter-toggle.active {
        border-color: #D1FD0A;
        color: #D1FD0A;
    }

    .sub-navbar .form-select,
    .sub-navbar input,
    .sub-navbar span.select2-selection {
        padding-top: 0.45rem !important;
        padding-bottom: 0.45rem !important;
        font-size: 0.9rem !important;
    }

    /* Zwei Filter pro Zeile statt riesiger Stapel */
    .sub-navbar .vehicle-status,
    .sub-navbar .vehicle-location,
    .sub-navbar .vehicle-in-stock,
    .sub-navbar .vehicle-dms {
        width: calc(50% - 0.35rem) !important;
    }

    .sub-navbar .vehicle-search,
    .sub-navbar .input-search {
        width: 100% !important;
    }

    .table {
        font-size: 0.85rem;
        min-width: 560px;
    }

    .dataTables_length, .dataTables_filter {
        float: none !important;
        text-align: left !important;
        margin-bottom: 0.4rem;
    }

    .dataTables_info {
        display: none;
    }

    .app-content h1 {
        font-size: 1.25rem;
    }
}

/* Sidebar-Toggle (Hamburger) im Header, nur mobil */
.sidebar-mobile-toggle {
    color: rgba(254, 254, 254, 0.75);
    border: 1px solid rgba(254, 254, 254, 0.25);
    border-radius: 0.6rem;
}

/* ---------- SweetAlert-Dialoge im Brand-Look ---------- */
.swal2-styled.swal2-confirm {
    background: #D1FD0A !important;
    color: #141315 !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    padding: 0.6rem 2.2rem !important;
    box-shadow: none !important;
}

.swal2-styled.swal2-confirm:hover {
    background: #b9e206 !important;
}

.swal2-styled.swal2-cancel {
    background: transparent !important;
    color: #FEFEFE !important;
    border: 1px solid rgba(254, 254, 254, 0.35) !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
}

.swal2-icon.swal2-success {
    border-color: rgba(209, 253, 10, 0.4) !important;
    color: #D1FD0A !important;
}

.swal2-icon.swal2-success [class^="swal2-success-line"] {
    background-color: #D1FD0A !important;
}

.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(209, 253, 10, 0.4) !important;
}

.swal2-title {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 1.1rem !important;
}

/* iOS-Auto-Zoom verhindern: Eingaben auf Mobile >= 16px */
@media (max-width: 991.98px) {
    .form-control,
    .form-select,
    input:not([type="checkbox"]):not([type="radio"]),
    select,
    textarea,
    .sub-navbar input,
    .sub-navbar .form-select,
    .sub-navbar span.select2-selection {
        font-size: 16px !important;
    }
}
