/**
 * Dark Mode CSS v4
 * MEGA-AGRESIVNÍ přepis všech pozadí
 */

/* ============================================
   MEGA-AGRESIVNÍ - všechny divy, sekce, karty
   ============================================ */
body.dark-mode .app-container > div,
body.dark-mode .app-container section,
body.dark-mode .app-container article,
body.dark-mode .app-container .personal-stats,
body.dark-mode .app-container .stats-grid,
body.dark-mode .app-container .stat-box,
body.dark-mode .app-container .stat-box.stat-ok,
body.dark-mode .app-container .stat-box.stat-warning,
body.dark-mode .app-container .stat-box.stat-neutral,
body.dark-mode .app-container .quick-menu,
body.dark-mode .app-container .quick-menu-item,
body.dark-mode .app-container .quick-menu-header,
body.dark-mode .app-container .quick-menu-links,
body.dark-mode .app-container .duty-section,
body.dark-mode .app-container .duty-grid,
body.dark-mode .app-container .duty-card,
body.dark-mode .app-container .duty-card-empty,
body.dark-mode .app-container .available-section,
body.dark-mode .app-container .available-grid,
body.dark-mode .app-container .available-card,
body.dark-mode .app-container .my-shifts-section,
body.dark-mode .app-container .my-shifts-list,
body.dark-mode .app-container .my-shift-item,
body.dark-mode .app-container .my-shift-date,
body.dark-mode .app-container .card,
body.dark-mode .app-container .card-body,
body.dark-mode .app-container .card-header,
body.dark-mode .app-container .table-responsive,
body.dark-mode .app-container .incident-card,
body.dark-mode .app-container .work-card,
body.dark-mode .app-container .offer-card,
body.dark-mode .app-container .contact-card,
body.dark-mode .app-container .vehicle-btn,
body.dark-mode .app-container .fuel-summary,
body.dark-mode .app-container .fuel-summary-item,
body.dark-mode .app-container .chem-stats,
body.dark-mode .app-container .chem-stat-box,
body.dark-mode .app-container .chem-person,
body.dark-mode .app-container .training-card,
body.dark-mode .app-container .event-card,
body.dark-mode .app-container .sms-checkbox,
body.dark-mode .app-container .chat-message,
body.dark-mode .app-container .profile-card,
body.dark-mode .app-container .user-card,
body.dark-mode .app-container .form-info,
body.dark-mode .app-container .info-box,
body.dark-mode .app-container .alert-info,
body.dark-mode .app-container .sluzba-section,
body.dark-mode .app-container .print-section {
    background: #242424 !important;
    background-color: #242424 !important;
    background-image: none !important;
}

/* Tabulky - tmavé pozadí ale NE na buňky s inline barvou (timeline, badge) */
body.dark-mode .app-container table {
    background-color: #242424 !important;
}

body.dark-mode .app-container thead tr,
body.dark-mode .app-container tbody tr {
    background-color: #242424 !important;
}

/* TD/TH jen pokud NEMAJÍ inline style s background */
body.dark-mode .app-container th:not([style*="background"]),
body.dark-mode .app-container td:not([style*="background"]) {
    background-color: #242424 !important;
}

/* Odstranit světlé box-shadow a bordery */
body.dark-mode .app-container .personal-stats,
body.dark-mode .app-container .stat-box,
body.dark-mode .app-container .quick-menu,
body.dark-mode .app-container .quick-menu-item,
body.dark-mode .app-container .duty-section,
body.dark-mode .app-container .available-section,
body.dark-mode .app-container .my-shifts-section,
body.dark-mode .app-container .card,
body.dark-mode .app-container .module-section,
body.dark-mode .app-container .vehicle-selector,
body.dark-mode .app-container .ride-form,
body.dark-mode .app-container .rides-section,
body.dark-mode .app-container .stats-section,
body.dark-mode .app-container .chem-section,
body.dark-mode .app-container .work-form,
body.dark-mode .app-container .incident-card,
body.dark-mode .app-container .training-card,
body.dark-mode .app-container .event-card {
    box-shadow: none !important;
    border: 1px solid #333 !important;
}

/* Grid gapy - tmavé pozadí */
body.dark-mode .app-container .duty-grid,
body.dark-mode .app-container .available-grid,
body.dark-mode .app-container .stats-grid,
body.dark-mode .app-container .quick-menu {
    background: #1a1a1a !important;
    gap: 1px !important;
}

/* ============================================
   ZÁKLAD
   ============================================ */
body.dark-mode {
    background: #1a1a1a !important;
    background-image: none !important;
    color: #e0e0e0 !important;
}

body.dark-mode .app-container {
    background: rgba(36, 36, 36, 0.95) !important;
    background-color: #242424 !important;
}

body.dark-mode .main-content {
    background: transparent !important;
    box-shadow: none !important;
}

/* ============================================
   STAT BOXY - vysoká specificita pro přepis gradient
   ============================================ */
body.dark-mode .app-container .stats-grid .stat-box,
body.dark-mode .app-container .personal-stats .stat-box,
body.dark-mode .app-container .stat-box,
body.dark-mode .app-container .stat-box.stat-ok,
body.dark-mode .app-container .stat-box.stat-warning,
body.dark-mode .app-container .stat-box.stat-neutral {
    background: #242424 !important;
    background-image: none !important;
    border-left-color: #555 !important;
    border-color: #444 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

body.dark-mode .stat-box .stat-icon,
body.dark-mode .stat-box.stat-ok .stat-icon,
body.dark-mode .stat-box.stat-warning .stat-icon,
body.dark-mode .stat-box.stat-neutral .stat-icon {
    color: #888 !important;
}

body.dark-mode .stat-box .stat-title {
    color: #bbb !important;
}

body.dark-mode .stat-box .stat-value {
    color: #fff !important;
}

body.dark-mode .stat-box .stat-note,
body.dark-mode .stat-box.stat-ok .stat-note,
body.dark-mode .stat-box.stat-warning .stat-note {
    color: #999 !important;
}

body.dark-mode .stat-box .stat-badge {
    color: #888 !important;
    background: #333 !important;
}

/* ============================================
   QUICK MENU - vysoká specificita
   ============================================ */
body.dark-mode .app-container .quick-menu .quick-menu-item {
    background: #242424 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

body.dark-mode .quick-menu-item .quick-menu-header {
    background: #333 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .quick-menu-item .quick-menu-links {
    background: #242424 !important;
}

body.dark-mode .quick-menu-item .quick-menu-links a {
    color: #ccc !important;
    border-color: #333 !important;
}

body.dark-mode .quick-menu-item .quick-menu-links a:hover {
    background: #333 !important;
    color: #fff !important;
}

/* ============================================
   DUTY SECTION - vysoká specificita
   ============================================ */
body.dark-mode .app-container .duty-section {
    background: #242424 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

body.dark-mode .duty-section .duty-grid {
    background: #333 !important;
}

body.dark-mode .duty-section .duty-card,
body.dark-mode .app-container .duty-card {
    background: #242424 !important;
}

body.dark-mode .duty-section .duty-card-empty,
body.dark-mode .app-container .duty-card-empty {
    background: #2a2a2a !important;
}

body.dark-mode .duty-card .duty-function {
    color: #999 !important;
}

body.dark-mode .duty-card .duty-name {
    color: #fff !important;
}

body.dark-mode .duty-card .duty-time {
    color: #888 !important;
}

body.dark-mode .duty-empty-text {
    color: #888 !important;
}

/* ============================================
   AVAILABLE SECTION - vysoká specificita
   ============================================ */
body.dark-mode .app-container .available-section {
    background: #242424 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

body.dark-mode .available-section .available-grid {
    background: #333 !important;
}

body.dark-mode .available-section .available-card,
body.dark-mode .app-container .available-card {
    background: #242424 !important;
}

body.dark-mode .available-card .available-name {
    color: #fff !important;
}

body.dark-mode .available-card .available-time {
    color: #888 !important;
}

/* ============================================
   MY SHIFTS SECTION
   ============================================ */
body.dark-mode .app-container .my-shifts-section {
    background: #242424 !important;
}

body.dark-mode .my-shifts-section .my-shifts-list {
    background: #242424 !important;
}

body.dark-mode .my-shift-item {
    background: #2a2a2a !important;
    border-color: #333 !important;
}

body.dark-mode .my-shift-item.my-shift-today {
    background: #333 !important;
}

body.dark-mode .my-shift-date {
    background: #333 !important;
}

body.dark-mode .my-shift-day {
    color: #888 !important;
}

body.dark-mode .my-shift-date-num {
    color: #fff !important;
}

body.dark-mode .my-shift-function {
    color: #fff !important;
}

body.dark-mode .my-shift-time {
    color: #888 !important;
}

body.dark-mode .my-shift-hours {
    color: #ccc !important;
}

/* ============================================
   GLOBÁLNÍ TEXT - vše bílé/šedé
   ============================================ */
body.dark-mode,
body.dark-mode p,
body.dark-mode span,
body.dark-mode div,
body.dark-mode li,
body.dark-mode td,
body.dark-mode th,
body.dark-mode label,
body.dark-mode small,
body.dark-mode .text-muted {
    color: #e0e0e0 !important;
}

body.dark-mode strong,
body.dark-mode b,
body.dark-mode h1, body.dark-mode h2, body.dark-mode h3,
body.dark-mode h4, body.dark-mode h5, body.dark-mode h6 {
    color: #fff !important;
}

body.dark-mode a {
    color: #ccc !important;
}

body.dark-mode a:hover {
    color: #fff !important;
}

body.dark-mode hr {
    border-color: #333 !important;
}

body.dark-mode code {
    background: #333 !important;
    color: #e0e0e0 !important;
}

/* ============================================
   HEADER & NAVIGACE
   ============================================ */
body.dark-mode .header,
body.dark-mode .site-header,
body.dark-mode .main-nav,
body.dark-mode .nav-main {
    background: #111 !important;
    border-color: #333 !important;
}

body.dark-mode .nav-dropdown-menu {
    background: #222 !important;
    border: 1px solid #333 !important;
}

body.dark-mode .nav-dropdown-item {
    color: #ccc !important;
}

body.dark-mode .nav-dropdown-item:hover {
    background: #333 !important;
    color: #fff !important;
}

@media (max-width: 1023px) {
    body.dark-mode .nav-main,
    body.dark-mode .nav-main.active {
        background: #111 !important;
    }
}

/* ============================================
   USER BAR
   ============================================ */
body.dark-mode .user-bar {
    background: #1e1e1e !important;
    border-color: #333 !important;
    color: #ccc !important;
}

body.dark-mode .user-bar * {
    color: #ccc !important;
}

body.dark-mode .user-info strong,
body.dark-mode .user-name {
    color: #fff !important;
}

body.dark-mode .chat-preview {
    background: #2a2a2a !important;
    color: #ccc !important;
}

body.dark-mode .chat-preview:hover {
    background: #333 !important;
    color: #fff !important;
}

/* ============================================
   SUBMENU
   ============================================ */
body.dark-mode .submenu {
    background: #1e1e1e !important;
    border-color: #333 !important;
}

body.dark-mode .submenu-link {
    color: #bbb !important;
}

body.dark-mode .submenu-link:hover {
    color: #fff !important;
    background: #333 !important;
}

body.dark-mode .submenu-link.active {
    color: #fff !important;
}

/* ============================================
   VŠECHNY MODULY - kontejnery s background: white
   ============================================ */
body.dark-mode .card,
body.dark-mode .work-section,
body.dark-mode .work-detail,
body.dark-mode .work-form,
body.dark-mode .work-stats,
body.dark-mode .training-section,
body.dark-mode .training-detail,
body.dark-mode .training-form,
body.dark-mode .training-stats,
body.dark-mode .event-section,
body.dark-mode .event-detail,
body.dark-mode .event-form,
body.dark-mode .board-section,
body.dark-mode .board-form,
body.dark-mode .incidents-section,
body.dark-mode .duty-section,
body.dark-mode .available-section,
body.dark-mode .contacts-section,
body.dark-mode .hours-section,
body.dark-mode .asset-section,
body.dark-mode .overview-section,
body.dark-mode .load-section,
body.dark-mode .vykaz-section,
body.dark-mode .chem-section,
body.dark-mode .stats-section,
body.dark-mode .stat-section,
body.dark-mode .stats-card,
body.dark-mode .my-shifts-section,
body.dark-mode .ride-form,
body.dark-mode .rides-section,
body.dark-mode .vehicle-selector,
body.dark-mode .module-section,
body.dark-mode .sms-form-card,
body.dark-mode .sms-history-card,
body.dark-mode .sms-history,
body.dark-mode .sms-add-contact,
body.dark-mode .chat-form-card,
body.dark-mode .chat-messages-card,
body.dark-mode .chat-history,
body.dark-mode .tech-section,
body.dark-mode .confirm-dialog,
body.dark-mode .doc-section,
body.dark-mode .doc-card,
body.dark-mode .news-section,
body.dark-mode .support-section,
body.dark-mode .security-section,
body.dark-mode .personal-stats,
body.dark-mode .permissions-card {
    background: #242424 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.4) !important;
}

/* ============================================
   KARTY
   ============================================ */
body.dark-mode .card-header {
    background: #2a2a2a !important;
    border-color: #333 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .card-body {
    color: #ddd !important;
}

body.dark-mode .card-form {
    border-color: #333 !important;
}

/* ============================================
   DASHBOARD - STAT BOXY
   ============================================ */
body.dark-mode .stat-box,
body.dark-mode .stat-box.stat-ok,
body.dark-mode .stat-box.stat-warning,
body.dark-mode .stat-box.stat-neutral {
    background: #242424 !important;
    background-image: none !important;
    border-left-color: #555 !important;
    border-color: #444 !important;
}

body.dark-mode .stat-box .stat-title,
body.dark-mode .stat-box .stat-note {
    color: #bbb !important;
}

body.dark-mode .stat-box .stat-value {
    color: #fff !important;
}

body.dark-mode .stat-box .stat-badge {
    color: #888 !important;
}

/* ============================================
   DASHBOARD - QUICK MENU
   ============================================ */
body.dark-mode .quick-menu-item {
    background: #242424 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

body.dark-mode .quick-menu-links {
    background: #242424 !important;
}

body.dark-mode .quick-menu-links a {
    color: #ccc !important;
}

body.dark-mode .quick-menu-links a:hover {
    background: #333 !important;
    color: #fff !important;
}

/* ============================================
   TABULKY
   ============================================ */
body.dark-mode table {
    color: #ddd !important;
}

body.dark-mode th {
    background: #2a2a2a !important;
    color: #fff !important;
}

body.dark-mode td {
    color: #ddd !important;
}

body.dark-mode table td,
body.dark-mode table th {
    border-color: #3a3a3a !important;
}

body.dark-mode tbody tr:hover {
    background: #2e2e2e !important;
}

body.dark-mode .table-responsive {
    color: #ddd !important;
}

body.dark-mode thead {
    background: #2a2a2a !important;
}

/* ============================================
   FORMULÁŘE
   ============================================ */
body.dark-mode input[type="text"],
body.dark-mode input[type="number"],
body.dark-mode input[type="date"],
body.dark-mode input[type="time"],
body.dark-mode input[type="email"],
body.dark-mode input[type="password"],
body.dark-mode input[type="tel"],
body.dark-mode input[type="url"],
body.dark-mode input[type="search"],
body.dark-mode select,
body.dark-mode textarea,
body.dark-mode .form-control {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode input:focus,
body.dark-mode select:focus,
body.dark-mode textarea:focus {
    border-color: #666 !important;
    box-shadow: 0 0 0 3px rgba(255,255,255,0.05) !important;
}

body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder {
    color: #666 !important;
}

body.dark-mode .form-actions {
    border-color: #333 !important;
}

/* ============================================
   TLAČÍTKA
   ============================================ */
body.dark-mode .btn-outline {
    border-color: #555 !important;
    color: #ccc !important;
}

body.dark-mode .btn-outline:hover {
    background: #333 !important;
    color: #fff !important;
}

body.dark-mode .btn-icon-sm {
    background: #333 !important;
    color: #aaa !important;
}

/* ============================================
   KALENDÁŘ
   ============================================ */
body.dark-mode .calendar-nav {
    background: #242424 !important;
}

body.dark-mode .calendar-nav-label {
    color: #aaa !important;
}

body.dark-mode .calendar-day {
    background: #2a2a2a !important;
    color: #ddd !important;
    border-color: #444 !important;
}

body.dark-mode .calendar-day:hover {
    background: #333 !important;
    color: #fff !important;
}

body.dark-mode .calendar-day.past {
    opacity: 0.5;
}

body.dark-mode .calendar-nav-date {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .day-header-compact {
    background: #2a2a2a !important;
}

body.dark-mode .day-compact-date,
body.dark-mode .calendar-day-date {
    color: #fff !important;
}

body.dark-mode .day-compact-name,
body.dark-mode .calendar-day-weekday {
    color: #aaa !important;
}

body.dark-mode .calendar-day-header {
    background: #242424 !important;
}

/* Směnový kalendář - měsíční přehled */
body.dark-mode .month-card {
    background: #242424 !important;
    border-color: #444 !important;
}

body.dark-mode .month-grid td,
body.dark-mode .month-grid th {
    border-color: #3a3a3a !important;
    color: #ddd !important;
}

body.dark-mode .month-grid a {
    color: #ddd !important;
    background: #2a2a2a !important;
    border-color: #444 !important;
}

body.dark-mode .month-grid a:hover {
    background: #333 !important;
    color: #fff !important;
}

/* ============================================
   SMĚNY
   ============================================ */
body.dark-mode .shift-column {
    background: #2a2a2a !important;
    border-color: #333 !important;
}

body.dark-mode .shift-card {
    background: #2a2a2a !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.3) !important;
}

body.dark-mode .shift-name,
body.dark-mode .shift-row-name {
    color: #fff !important;
}

body.dark-mode .shift-time,
body.dark-mode .shift-row-time {
    color: #999 !important;
}

body.dark-mode .shift-row {
    background: #2a2a2a !important;
}

body.dark-mode .shift-row:hover {
    background: #333 !important;
}

body.dark-mode .shift-row-empty,
body.dark-mode .shift-empty {
    color: #666 !important;
}

body.dark-mode .shift-cell {
    border-color: #333 !important;
}

body.dark-mode .timeline-header {
    background: #242424 !important;
}

body.dark-mode .timeline-label {
    background: #2a2a2a !important;
    color: #aaa !important;
}

body.dark-mode .timeline-hour {
    background: #222 !important;
    color: #999 !important;
    border-color: #333 !important;
}

/* ============================================
   NABÍDKY SMĚN
   ============================================ */
body.dark-mode .offer-card {
    background: #2a2a2a !important;
    border-color: #444 !important;
}

body.dark-mode .offer-card:hover {
    background: #333 !important;
}

body.dark-mode .offers-actions-bar {
    background: #2a2a2a !important;
    border-color: #333 !important;
}

body.dark-mode .offer-action-item {
    background: #333 !important;
}

/* ============================================
   ZÁLOŽKY (TABS)
   ============================================ */
body.dark-mode .tabs-nav {
    background: #1e1e1e !important;
    border-color: #333 !important;
}

body.dark-mode .tab-btn {
    color: #999 !important;
}

body.dark-mode .tab-btn:hover {
    color: #fff !important;
    background: #333 !important;
}

body.dark-mode .tab-btn.active {
    background: #2a2a2a !important;
    color: #fff !important;
}

/* ============================================
   DUTY & AVAILABLE
   ============================================ */
body.dark-mode .duty-grid,
body.dark-mode .available-grid {
    background: #1e1e1e !important;
}

body.dark-mode .duty-card,
body.dark-mode .duty-card-empty,
body.dark-mode .available-card {
    background: #242424 !important;
}

body.dark-mode .my-shift-date {
    background: #333 !important;
}

body.dark-mode .my-shift-today {
    background: #2a2a2a !important;
}

/* ============================================
   KONTAKTY
   ============================================ */
body.dark-mode .contact-card {
    background: #2a2a2a !important;
}

body.dark-mode .contact-detail,
body.dark-mode .contact-detail-phone,
body.dark-mode .contact-detail-family,
body.dark-mode .contact-detail-birthday,
body.dark-mode .contact-detail-age {
    background: #333 !important;
    color: #e0e0e0 !important;
}

/* ============================================
   STROJNÍ SLUŽBA
   ============================================ */
body.dark-mode .vehicle-section {
    border-color: #333 !important;
}

body.dark-mode .vehicle-btn,
body.dark-mode .tech-btn {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .vehicle-btn:hover,
body.dark-mode .tech-btn:hover {
    background: #333 !important;
}

body.dark-mode .vehicle-btn.active {
    color: #fff !important;
}

/* ============================================
   CHEMICKÁ SLUŽBA
   ============================================ */
body.dark-mode .chem-people-grid {
    background: #2a2a2a !important;
}

body.dark-mode .chem-person {
    background: #333 !important;
    border-color: #444 !important;
    color: #ddd !important;
}

body.dark-mode .chem-person:hover {
    background: #3a3a3a !important;
}

body.dark-mode .chem-stat-box {
    background: #2a2a2a !important;
}

body.dark-mode .chem-stats {
    background: #1e1e1e !important;
    border-color: #333 !important;
}

body.dark-mode .chem-edit-form {
    background: #2a2a2a !important;
    border-color: #444 !important;
}

body.dark-mode .chem-people-section {
    border-color: #333 !important;
}

/* ============================================
   CHAT & SMS
   ============================================ */
body.dark-mode .chat-panel {
    background: #242424 !important;
}

body.dark-mode .chat-messages,
body.dark-mode .chat-messages-list {
    background: #1e1e1e !important;
}

body.dark-mode .chat-message {
    background: #2a2a2a !important;
    color: #ddd !important;
}

body.dark-mode .chat-message-mine,
body.dark-mode .chat-message-own,
body.dark-mode .sms-message-own {
    background: #2e2e2e !important;
}

body.dark-mode .chat-form {
    border-color: #333 !important;
}

body.dark-mode .chat-input,
body.dark-mode .chat-textarea,
body.dark-mode .chat-reply input {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .sms-message-text {
    background: #2a2a2a !important;
    color: #ddd !important;
}

body.dark-mode .sms-checkbox-group,
body.dark-mode .chat-checkbox-group {
    background: #2a2a2a !important;
}

body.dark-mode .sms-private-section {
    background: #2a2a2a !important;
}

/* ============================================
   ŠKOLENÍ & PRÁCE
   ============================================ */
body.dark-mode .training-confirm-section,
body.dark-mode .training-form-checkboxes,
body.dark-mode .work-form-workers,
body.dark-mode .work-detail-workers {
    background: #2a2a2a !important;
}

body.dark-mode .training-files {
    background: #2a2a2a !important;
    border-color: #333 !important;
}

/* ============================================
   VYTÍŽENÍ & VÝKAZ
   ============================================ */
body.dark-mode .vykaz-info {
    background: #2a2a2a !important;
    border-color: #333 !important;
}

body.dark-mode .vykaz-quick-btn {
    background: #2a2a2a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .vykaz-quick-btn:hover {
    background: #333 !important;
}

/* ============================================
   STATISTIKY
   ============================================ */
body.dark-mode .stat-bar,
body.dark-mode .stats-bar,
body.dark-mode .work-stats-bar,
body.dark-mode .training-stats-bar,
body.dark-mode .load-bar {
    background: #333 !important;
}

body.dark-mode .stat-summary {
    background: #2a2a2a !important;
    border-color: #333 !important;
}

body.dark-mode .stat-hour,
body.dark-mode .stat-value-total {
    background: #2a2a2a !important;
    color: #fff !important;
}

/* ============================================
   ZÁSAHY - incident cards
   ============================================ */
body.dark-mode .incident-card,
body.dark-mode .work-card,
body.dark-mode .training-card,
body.dark-mode .event-card,
body.dark-mode .board-post {
    border-color: #333 !important;
}

body.dark-mode .incident-card:hover,
body.dark-mode .work-card:hover,
body.dark-mode .training-card:hover,
body.dark-mode .event-card:hover,
body.dark-mode .board-post:hover {
    background: #2e2e2e !important;
}

/* Badge - zachovat barvy pozadí ale bílý text */
body.dark-mode .badge {
    color: #fff !important;
}

body.dark-mode .badge-secondary,
body.dark-mode .badge-gray {
    background: #444 !important;
    color: #ddd !important;
}

/* ============================================
   ALERTY & ZPRÁVY
   ============================================ */
body.dark-mode .alert {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .empty-state,
body.dark-mode .incidents-empty,
body.dark-mode .work-empty,
body.dark-mode .training-empty,
body.dark-mode .event-empty,
body.dark-mode .board-empty,
body.dark-mode .chem-empty,
body.dark-mode .load-empty,
body.dark-mode .ride-empty {
    color: #666 !important;
}

body.dark-mode .confirm-delete,
body.dark-mode .confirm-message,
body.dark-mode .success-message {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .confirm-recipients-list {
    background: #2a2a2a !important;
}

body.dark-mode .confirm-recipient {
    border-color: #333 !important;
}

/* ============================================
   MODÁLNÍ OKNA
   ============================================ */
body.dark-mode .modal-content,
body.dark-mode .pwa-modal,
body.dark-mode .help-modal {
    background: #242424 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .pwa-instructions {
    background: #2a2a2a !important;
    color: #ddd !important;
}

/* ============================================
   ONLINE SEKCE
   ============================================ */
body.dark-mode .online-section {
    background: #1a1a1a !important;
    border-color: #333 !important;
}

body.dark-mode .online-user-card {
    background: #2a2a2a !important;
    border-color: #444 !important;
}

/* ============================================
   FOOTER
   ============================================ */
body.dark-mode .site-footer {
    background: #111 !important;
}

/* ============================================
   BORDERY MODULŮ
   ============================================ */
body.dark-mode .ride-form-section,
body.dark-mode .form-actions {
    border-color: #333 !important;
}

/* ============================================
   ADMIN
   ============================================ */
body.dark-mode .stat-grid .stat-box {
    background: #242424 !important;
}

body.dark-mode .admin-subtab {
    color: #ccc !important;
}

body.dark-mode .permissions-footer {
    color: #999 !important;
}

body.dark-mode .login-history-item {
    border-color: #333 !important;
}

body.dark-mode .login-history-item:hover {
    background: #2a2a2a !important;
}

/* ============================================
   SCROLLBAR
   ============================================ */
body.dark-mode ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

body.dark-mode ::-webkit-scrollbar-track {
    background: #1a1a1a;
}

body.dark-mode ::-webkit-scrollbar-thumb {
    background: #444;
    border-radius: 4px;
}

body.dark-mode ::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* ============================================
   SELECTION
   ============================================ */
body.dark-mode ::selection {
    background: #444;
    color: #fff;
}

/* ============================================
   SMĚNOVÝ KALENDÁŘ (smeny_kalendar.php)
   ============================================ */
body.dark-mode .shift-calendar-container {
    color: #e0e0e0 !important;
}

body.dark-mode .shift-calendar-header h1 {
    color: #e0e0e0 !important;
}

body.dark-mode .year-selector .current-year {
    color: #e0e0e0 !important;
}

body.dark-mode .shift-month {
    background: #242424 !important;
    border-color: #444 !important;
}

body.dark-mode .shift-month-body {
    background: #242424 !important;
}

body.dark-mode .shift-weekday {
    color: #999 !important;
}

body.dark-mode .shift-day.shift-b {
    background: #444 !important;
    color: #e0e0e0 !important;
    border-color: #555 !important;
}

body.dark-mode .shift-legend-b {
    background: #444 !important;
    color: #e0e0e0 !important;
    border-color: #555 !important;
}

/* ============================================
   ZÁSAHY (zasahy.php)
   ============================================ */
body.dark-mode .incident-card {
    background: #242424 !important;
}

body.dark-mode .incident-number {
    color: #999 !important;
}

body.dark-mode .incident-title {
    color: #fff !important;
}

body.dark-mode .incident-location {
    color: #bbb !important;
}

body.dark-mode .incident-meta {
    color: #ccc !important;
}

body.dark-mode .incident-meta-item {
    color: #ccc !important;
}

body.dark-mode .incident-meta-item strong {
    color: #fff !important;
}

body.dark-mode .incident-type {
    color: #fff !important;
}

body.dark-mode .incident-actions {
    color: #ccc !important;
}

/* ============================================
   INFO BOXY (tiskový výstup, SMS atd.)
   ============================================ */
body.dark-mode .info-box,
body.dark-mode .form-info,
body.dark-mode .alert-info {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #ddd !important;
}

/* ============================================
   MODULE HEADERS s inline gradient
   ============================================ */
body.dark-mode .module-header {
    color: #fff !important;
}

/* ============================================
   STROJNÍ SLUŽBA - sumář, fuel, vozidla
   ============================================ */
body.dark-mode .fuel-summary,
body.dark-mode .ride-summary {
    background: #2a2a2a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .fuel-summary-item,
body.dark-mode .ride-summary-item {
    background: #333 !important;
}

body.dark-mode .fuel-summary-value,
body.dark-mode .ride-summary-value {
    color: #fff !important;
}

body.dark-mode .fuel-summary-label,
body.dark-mode .ride-summary-label {
    color: #999 !important;
}

body.dark-mode .vehicle-btn {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .vehicle-btn:hover,
body.dark-mode .vehicle-btn.active {
    background: #333 !important;
    border-color: #555 !important;
}

body.dark-mode .vehicle-btn-spz {
    color: #888 !important;
}

body.dark-mode .ride-form,
body.dark-mode .work-form {
    background: #242424 !important;
}

body.dark-mode .ride-form-header,
body.dark-mode .work-form-header {
    color: #fff !important;
}

body.dark-mode .ride-form-body,
body.dark-mode .work-form-body {
    background: #242424 !important;
}

/* ============================================
   PRÁCE - work cards, badges
   ============================================ */
body.dark-mode .work-card {
    background: #242424 !important;
    border-color: #444 !important;
}

body.dark-mode .work-card-header {
    background: #333 !important;
}

body.dark-mode .work-detail-workers {
    background: #2a2a2a !important;
}

body.dark-mode .work-form-workers {
    background: #2a2a2a !important;
}

body.dark-mode .work-form-workers label {
    color: #e0e0e0 !important;
}

/* ============================================
   SMS - tlačítka, checkboxy, zprávy
   ============================================ */
body.dark-mode .sms-quick-btn {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .sms-quick-btn:hover {
    background: #333 !important;
}

body.dark-mode .sms-checkbox {
    background: #2a2a2a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .sms-checkbox-group {
    background: #242424 !important;
}

body.dark-mode .sms-section-title {
    color: #e0e0e0 !important;
}

body.dark-mode .sms-messages-list {
    background: #242424 !important;
}

body.dark-mode .sms-message {
    background: #2a2a2a !important;
    border-color: #444 !important;
}

body.dark-mode .sms-message-text {
    color: #e0e0e0 !important;
}

/* ============================================
   CHAT - zprávy, checkboxy
   ============================================ */
body.dark-mode .chat-messages {
    background: #1a1a1a !important;
}

body.dark-mode .chat-message {
    background: #2a2a2a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .chat-message-own {
    background: #333 !important;
}

body.dark-mode .chat-checkbox-group {
    background: #242424 !important;
}

/* ============================================
   ŠKOLENÍ, AKCE
   ============================================ */
body.dark-mode .training-card {
    background: #242424 !important;
}

body.dark-mode .training-confirm-section {
    background: #2a2a2a !important;
}

body.dark-mode .training-form-checkboxes {
    background: #2a2a2a !important;
}

body.dark-mode .event-card {
    background: #242424 !important;
}

/* ============================================
   CHEMICKÁ SLUŽBA
   ============================================ */
body.dark-mode .chem-stats {
    background: #2a2a2a !important;
}

body.dark-mode .chem-stat-box {
    background: #333 !important;
}

body.dark-mode .chem-stat-value {
    color: #fff !important;
}

body.dark-mode .chem-stat-label {
    color: #999 !important;
}

body.dark-mode .chem-people-grid {
    background: #242424 !important;
}

body.dark-mode .chem-person {
    background: #2a2a2a !important;
    border-color: #444 !important;
}

body.dark-mode .chem-person-name {
    color: #fff !important;
}

/* ============================================
   KONTAKTY
   ============================================ */
body.dark-mode .contact-card {
    background: #242424 !important;
    border-color: #444 !important;
}

body.dark-mode .contact-card:hover {
    background: #2a2a2a !important;
}

body.dark-mode .contact-name {
    color: #fff !important;
}

body.dark-mode .contact-detail {
    color: #bbb !important;
}

/* ============================================
   PROFIL, UŽIVATELÉ
   ============================================ */
body.dark-mode .profile-card {
    background: #242424 !important;
}

body.dark-mode .user-card {
    background: #242424 !important;
    border-color: #444 !important;
}

body.dark-mode .user-info {
    color: #e0e0e0 !important;
}

/* ============================================
   PRINT SECTION - tiskový výstup
   ============================================ */
body.dark-mode .print-section {
    background: #242424 !important;
    box-shadow: none !important;
    border: 1px solid #333 !important;
}

body.dark-mode .print-section-body {
    background: #242424 !important;
}

body.dark-mode .print-form-content {
    background: #2a2a2a !important;
}

body.dark-mode .print-form-group label {
    color: #e0e0e0 !important;
}

body.dark-mode .print-form-group input {
    background: #333 !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .print-info {
    background: #2a2a2a !important;
    border-color: #444 !important;
}

body.dark-mode .print-info h4 {
    color: #e0e0e0 !important;
}

body.dark-mode .print-info ul,
body.dark-mode .print-info li {
    color: #bbb !important;
}

body.dark-mode .print-info kbd {
    background: #333 !important;
    border-color: #555 !important;
    color: #e0e0e0 !important;
}

/* ============================================
   INCIDENT TYPE / WORK TYPE BADGES (bubliny)
   ============================================ */
body.dark-mode .incident-type,
body.dark-mode .work-type,
body.dark-mode .incident-card .incident-type,
body.dark-mode .work-card .work-type {
    background: #333 !important;
    color: #e0e0e0 !important;
    border: 1px solid #555 !important;
}

/* ============================================
   SCORING / VYTÍŽENÍ BADGES (load-percent)
   ============================================ */
body.dark-mode .load-percent {
    color: #fff !important;
}

body.dark-mode .load-percent-high {
    background: #166534 !important;
    color: #fff !important;
}

body.dark-mode .load-percent-medium {
    background: #92400e !important;
    color: #fff !important;
}

body.dark-mode .load-percent-low {
    background: #991b1b !important;
    color: #fff !important;
}

body.dark-mode .load-bar {
    background: #333 !important;
}

body.dark-mode .load-name {
    color: #e0e0e0 !important;
}

body.dark-mode .load-value {
    color: #e0e0e0 !important;
}

/* ============================================
   CHEMICKÁ SLUŽBA - zbývá dní badges
   ============================================ */
body.dark-mode .chem-next-ok {
    background: #166534 !important;
    color: #fff !important;
}

body.dark-mode .chem-next-warning {
    background: #92400e !important;
    color: #fff !important;
}

body.dark-mode .chem-next-expired {
    background: #991b1b !important;
    color: #fff !important;
}

body.dark-mode .chem-interval {
    color: #e0e0e0 !important;
}

body.dark-mode .chem-interval-long {
    color: #f87171 !important;
}

body.dark-mode .chem-date {
    color: #ccc !important;
}

body.dark-mode .chem-usage {
    color: #999 !important;
}

body.dark-mode .chem-name-link {
    color: #ccc !important;
}

/* ============================================
   SLUŽBA OBČANŮM
   ============================================ */
body.dark-mode .sluzba-section {
    background: #242424 !important;
    box-shadow: none !important;
    border: 1px solid #333 !important;
}

body.dark-mode .sluzba-grid {
    background: #242424 !important;
}

body.dark-mode .confirm-dialog {
    background: #242424 !important;
}

body.dark-mode .confirm-body {
    background: #242424 !important;
}

body.dark-mode .confirm-recipients-list {
    background: #2a2a2a !important;
}

body.dark-mode .confirm-message {
    background: #2a2a2a !important;
    border-color: #444 !important;
    color: #e0e0e0 !important;
}

/* ============================================
   STATISTIKA VÝJEZDŮ - scoring/procenta badges
   ============================================ */
body.dark-mode .stat-percent {
    color: #fff !important;
}

body.dark-mode .stat-percent-high {
    background: #166534 !important;
    color: #fff !important;
}

body.dark-mode .stat-percent-medium {
    background: #92400e !important;
    color: #fff !important;
}

body.dark-mode .stat-percent-low {
    background: #991b1b !important;
    color: #fff !important;
}

body.dark-mode .stat-bar {
    background: #333 !important;
}

body.dark-mode .stat-hour {
    color: #e0e0e0 !important;
    background: #2a2a2a !important;
}

body.dark-mode .stat-value-secondary {
    color: #999 !important;
}

body.dark-mode .stat-value-total {
    color: #fff !important;
    background: #2a2a2a !important;
}

body.dark-mode .stat-table th {
    background: #2a2a2a !important;
    color: #999 !important;
    border-color: #444 !important;
}

body.dark-mode .stat-table td {
    border-color: #333 !important;
}

body.dark-mode .stat-table tr:hover {
    background: #2a2a2a !important;
}

body.dark-mode .stat-summary {
    background: #2a2a2a !important;
    border-color: #444 !important;
}

body.dark-mode .stat-summary-label {
    color: #999 !important;
}

body.dark-mode .stat-summary-value {
    color: #fff !important;
}

body.dark-mode .stat-section {
    background: #242424 !important;
    box-shadow: none !important;
    border: 1px solid #333 !important;
}

body.dark-mode .stat-name {
    color: #e0e0e0 !important;
}

body.dark-mode .stat-value {
    color: #fff !important;
}

/* ============================================
   TIMELINE (kalendar2)
   ============================================ */
body.dark-mode .timeline-cell {
    border-color: #333 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .timeline-cell.has-shift {
    color: #fff !important;
}

body.dark-mode .timeline-shift-info strong {
    color: #fff !important;
}

body.dark-mode .timeline-func-header {
    color: #fff !important;
}

/* ============================================
   AKCESCHOPNOST
   ============================================ */
body.dark-mode .akce-toggle-btn {
    background: #333 !important;
    color: #ccc !important;
}

body.dark-mode .akce-toggle-btn.akce-dostupny {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
    color: #fff !important;
}

body.dark-mode .akce-toggle-btn.akce-nedostupny {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
    color: #fff !important;
}

body.dark-mode .akce-status-banner.akce-ok {
    background: rgba(22,163,74,0.15) !important;
    color: #86efac !important;
    border-color: rgba(134,239,172,0.3) !important;
}

body.dark-mode .akce-status-banner.akce-warning {
    background: rgba(217,119,6,0.15) !important;
    color: #fde047 !important;
    border-color: rgba(253,224,71,0.3) !important;
}

body.dark-mode .akce-status-banner.akce-danger {
    background: rgba(220,38,38,0.15) !important;
    color: #fca5a5 !important;
    border-color: rgba(252,165,165,0.3) !important;
}

body.dark-mode .akce-person-card {
    background: #2a2a2a !important;
    box-shadow: none !important;
    border-color: #333 !important;
}

body.dark-mode .akce-person-card .akce-person-name {
    color: #e0e0e0 !important;
}

body.dark-mode .akce-auto-rule {
    background: #2a2a2a !important;
    border-color: #333 !important;
}

body.dark-mode .akce-auto-rule select,
body.dark-mode .akce-auto-rule input[type="time"] {
    background: #333 !important;
    color: #e0e0e0 !important;
    border-color: #444 !important;
}

body.dark-mode .akce-log-stav.stav-dostupny {
    background: rgba(22,163,74,0.2) !important;
    color: #86efac !important;
}

body.dark-mode .akce-log-stav.stav-nedostupny {
    background: rgba(220,38,38,0.2) !important;
    color: #fca5a5 !important;
}

body.dark-mode .akce-log-zdroj {
    background: #333 !important;
    color: #aaa !important;
}

body.dark-mode .akce-heatmap-label {
    color: #e0e0e0 !important;
}

body.dark-mode .akce-heatmap-hour {
    color: #888 !important;
}

/* ============================================
   TISK
   ============================================ */
@media print {
    body.dark-mode,
    body.dark-mode * {
        background: white !important;
        color: black !important;
        box-shadow: none !important;
    }
}
