@font-face { font-family: 'Tajawal'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/Tajawal-Regular.ttf') format('truetype'); }
@font-face { font-family: 'Tajawal'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/Tajawal-Medium.ttf') format('truetype'); }
@font-face { font-family: 'Tajawal'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/Tajawal-Bold.ttf') format('truetype'); }

:root{
  --primary:#0f2439;--primary-light:#1e3a5f;--primary-hover:#16304d;
  --accent:#3b82f6;--accent-light:#e0f2fe;--accent-bg:#f0f7ff;
  --green:#22c55e;--green-dark:#15803d;--green-bg:#dcfce7;
  --red:#ef4444;--red-bg:#fee2e2;
  --yellow:#f59e0b;--yellow-bg:#fef3c7;
  --gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-700:#374151;--gray-900:#111827;
  --bg:#f0f2f5;--card-bg:#fff;
  --card-shadow:0 1px 3px rgba(0,0,0,.05),0 4px 16px rgba(0,0,0,.04);
  --card-shadow-hover:0 8px 30px rgba(0,0,0,.1),0 2px 8px rgba(0,0,0,.06);
  --shadow-lg:0 8px 32px rgba(0,0,0,.12);
  --sidebar-w:260px;--header-h:60px;
  --radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-xl:24px;
  --transition:all .25s cubic-bezier(.4,0,.2,1);
  --input-bg:var(--gray-50);--input-border:var(--gray-200);--text-primary:var(--gray-900);--text-secondary:var(--gray-700);--text-muted:var(--gray-500);--border-color:var(--gray-200);--modal-bg:#fff;--table-stripe:#f9fafb;--header-bg:#fff
}
body.dark-mode{
  --bg:#0f172a;--card-bg:#1e293b;--gray-50:#1e293b;--gray-100:#334155;--gray-200:#475569;--gray-300:#64748b;--gray-400:#94a3b8;--gray-500:#cbd5e1;--gray-700:#e2e8f0;--gray-900:#f8fafc;
  --accent-light:#1e3a5f;--accent-bg:#0f2439;--green-bg:#064e3b;--red-bg:#7f1d1d;--yellow-bg:#78350f;
  --card-shadow:0 1px 3px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.2);--card-shadow-hover:0 8px 30px rgba(0,0,0,.4);--shadow-lg:0 8px 32px rgba(0,0,0,.4);
  --input-bg:#1e293b;--input-border:#475569;--text-primary:#f8fafc;--text-secondary:#e2e8f0;--text-muted:#94a3b8;--border-color:#334155;--modal-bg:#1e293b;--table-stripe:#334155;--header-bg:#0f172a;
  color-scheme:dark
}
body.dark-mode .header{background:var(--header-bg);border-bottom-color:var(--border-color)}
body.dark-mode .sidebar{background:linear-gradient(180deg,#0c1829 0%,#0f2439 100%)}
body.dark-mode .side-menu{background:#1e293b;box-shadow:-4px 0 20px rgba(0,0,0,.4)}
body.dark-mode .card,body.dark-mode .stat-card,body.dark-mode .dept-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .data-table th{background:#0f172a;color:#e2e8f0;border-color:var(--border-color)}
body.dark-mode .data-table td{border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .data-table tr:nth-child(even){background:var(--table-stripe)}
body.dark-mode .data-table tr:hover{background:#334155}
body.dark-mode .modal-overlay{background:rgba(0,0,0,.7)}
body.dark-mode .modal-card{background:var(--modal-bg);border:1px solid var(--border-color)}
body.dark-mode .modal-content{background:var(--modal-bg);border:1px solid var(--border-color)}
body.dark-mode .modal-content>h3{color:#93c5fd}
body.dark-mode .modal-content>label{color:var(--text-secondary)}
body.dark-mode .modal-content>input,body.dark-mode .modal-content>select,body.dark-mode .modal-content>textarea{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .modal-body{color:var(--text-primary)}
body.dark-mode .modal-body .form-group label{color:var(--text-secondary)}
body.dark-mode .modal-body .form-input,body.dark-mode .modal-body .form-control{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .modal-body .form-input:focus,body.dark-mode .modal-body .form-control:focus{background:#0f172a}
body.dark-mode .modal-body .insp-type-btn{background:var(--input-bg);color:var(--text-primary);border-color:var(--border-color)}
body.dark-mode .modal-body .insp-type-btn.active{background:#0c4a6e;border-color:#0369a1;color:#7dd3fc}
body.dark-mode .add-form input,body.dark-mode .add-form select,body.dark-mode .form-textarea{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .add-form input:focus,body.dark-mode .add-form select:focus,body.dark-mode .form-textarea:focus{background:#0f172a}
body.dark-mode .hr-field input,body.dark-mode .hr-field select{background:#0f172a;border-color:#475569;color:#f8fafc}
body.dark-mode .hr-field input:focus,body.dark-mode .hr-field select:focus{background:#0f172a}
body.dark-mode .form-control{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .page-container,body.dark-mode .empty-state{color:var(--text-primary)}
body.dark-mode .quick-btn{border-color:var(--border-color);background:var(--card-bg);color:var(--text-primary)}
body.dark-mode .quick-btn-primary{background:linear-gradient(135deg,#1e3a5f,#2a4a70)!important;color:#fff!important;border-color:#1e3a5f!important}
body.dark-mode .quick-btn-green{background:linear-gradient(135deg,#22c55e,#16a34a)!important;color:#fff!important;border-color:#22c55e!important}
body.dark-mode .quick-btn-blue{background:linear-gradient(135deg,#0369a1,#0284c7)!important;color:#fff!important;border-color:#0369a1!important}
body.dark-mode .quick-btn-purple{background:linear-gradient(135deg,#7c3aed,#6d28d9)!important;color:#fff!important;border-color:#7c3aed!important}
body.dark-mode .quick-btn-orange{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border-color:#f59e0b!important}
body.dark-mode .auth-btn{border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .notif-dropdown{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .badge{opacity:.9}
body.dark-mode .lang-toggle-btn{border:none;background:transparent;color:var(--text-muted)}
body.dark-mode .user-display{color:var(--text-primary)}
body.dark-mode .login-page{background:linear-gradient(135deg,#0f172a,#1e293b)}
body.dark-mode .login-card{background:#1e293b;border-color:var(--border-color);box-shadow:0 8px 32px rgba(0,0,0,.4)}
body.dark-mode .login-header h2{color:#f1f5f9}
body.dark-mode .login-header p{color:#94a3b8}
body.dark-mode .login-card .add-form label{color:#cbd5e1}
body.dark-mode .login-card .add-form input{background:#0f172a;border-color:#334155;color:#f8fafc}
body.dark-mode .login-card .add-form input:focus{background:#0f172a;border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.15)}
body.dark-mode .login-card .add-form input::placeholder{color:#64748b}
body.dark-mode .pw-toggle{color:#64748b}
body.dark-mode .pw-toggle:hover{color:#94a3b8}
body.dark-mode .otp-info{background:#0f2a1a;border:1px solid #166534}
body.dark-mode .otp-info p{color:#bbf7d0}
body.dark-mode .login-links{border-top-color:#334155;color:#94a3b8}
body.dark-mode .login-link{color:#60a5fa}
body.dark-mode .auth-tabs{background:#0f172a}
body.dark-mode .auth-tab{color:#94a3b8}
body.dark-mode .auth-tab.active{background:#334155;color:#f8fafc;box-shadow:none}
body.dark-mode .form-error{background:#7f1d1d;color:#fecaca}
body.dark-mode .recaptcha-wrap{filter:invert(.88) hue-rotate(180deg)}
body.dark-mode .otp-display{background:#0f172a;color:#93c5fd}
body.dark-mode .landing-hero-wave svg path{fill:#0f172a}
body.dark-mode .card-header{background:linear-gradient(135deg,#0f172a,#1e293b);color:#93c5fd;border-bottom-color:var(--border-color)}
body.dark-mode .dash-city-item{border-bottom-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .dash-city-item:hover{background:#334155}
body.dark-mode .dash-city-name{color:var(--text-primary)}
body.dark-mode .dash-city-count{color:#93c5fd}
body.dark-mode .overview-card{border-color:var(--border-color)}
body.dark-mode .dash-table th{background:linear-gradient(135deg,#0f172a,#1e293b);color:#94a3b8;border-bottom-color:var(--border-color)}
body.dark-mode .dash-table td{color:#e2e8f0;border-bottom-color:var(--border-color)}
body.dark-mode .dash-table tbody tr:hover{background:#334155}
body.dark-mode .dash-table tbody tr:nth-child(even){background:#1e293b80}
body.dark-mode .dash-table tbody tr:active{background:#475569}
body.dark-mode .data-table tr:active{background:#475569}
body.dark-mode ::selection{background:#2563eb;color:#fff}
body.dark-mode *::-webkit-tap-highlight-color{-webkit-tap-highlight-color:transparent}
body.dark-mode [style*="overflow"]{scrollbar-color:#475569 #1e293b}
body.dark-mode .booking-card-header{background:linear-gradient(135deg,#0f172a,#1e293b);border-bottom-color:var(--border-color);color:#e2e8f0}
body.dark-mode .meeting-card-header{border-bottom-color:var(--border-color)}
body.dark-mode .meeting-card-header h3{color:#93c5fd}
body.dark-mode .rental-card-header{background:linear-gradient(135deg,#0f172a,#1e293b);border-bottom-color:var(--border-color);color:#e2e8f0}
body.dark-mode .leaflet-control-layers{background:#1e293b;border-color:var(--border-color);color:#e2e8f0}
body.dark-mode .leaflet-control-layers label{color:#e2e8f0}
body.dark-mode .leaflet-control-layers-separator{border-top-color:var(--border-color)}
body.dark-mode .leaflet-control-zoom a{background:#1e293b;color:#e2e8f0;border-color:var(--border-color)}
body.dark-mode .leaflet-control-zoom a:hover{background:#334155}
body.dark-mode .leaflet-bar{border-color:var(--border-color)}
.leaflet-control-layers{border-radius:12px!important;box-shadow:0 2px 16px rgba(0,0,0,.2)!important;border:none!important;overflow:hidden}
.leaflet-control-layers-toggle{width:40px!important;height:40px!important;border-radius:12px!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6'/%3E%3Cline x1='8' y1='2' x2='8' y2='18'/%3E%3Cline x1='16' y1='6' x2='16' y2='22'/%3E%3C/svg%3E") no-repeat center center!important;background-size:22px 22px!important;background-color:#fff!important;box-shadow:0 2px 8px rgba(0,0,0,.15)!important}
.leaflet-control-layers-toggle:hover{background-color:#f1f5f9!important}
.leaflet-control-layers-expanded{padding:10px 14px!important;min-width:140px}
.leaflet-control-layers label{display:flex!important;align-items:center;gap:8px;padding:6px 4px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit}
.leaflet-control-layers-base input[type="radio"]{accent-color:#1e3a5f;width:16px;height:16px}
body.dark-mode .leaflet-control-layers-toggle{background-color:#1e293b!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6'/%3E%3Cline x1='8' y1='2' x2='8' y2='18'/%3E%3Cline x1='16' y1='6' x2='16' y2='22'/%3E%3C/svg%3E")!important}
body.dark-mode .leaflet-control-layers-toggle:hover{background-color:#334155!important}
body.dark-mode .report-card,body.dark-mode .report-detail-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .rd-actions{background:#1e293b!important;border-color:var(--border-color)}
body.dark-mode .rd-actions label{color:#e2e8f0}
body.dark-mode .rd-actions select,body.dark-mode .rd-actions textarea{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .rd-header{border-color:var(--border-color)}
body.dark-mode .rd-body{color:var(--text-primary)}
body.dark-mode .rd-row{border-color:var(--border-color)}
body.dark-mode .rd-row span{color:#94a3b8}
body.dark-mode .rd-row b{color:#e2e8f0}
body.dark-mode .ticket-id{color:#93c5fd;background:#1e293b}
body.dark-mode .report-card-item{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .report-timeline{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .user-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .user-name{color:#e2e8f0}
body.dark-mode .user-role{color:#94a3b8}
body.dark-mode .user-city-label{color:#64748b}
body.dark-mode .user-meta{border-top-color:var(--border-color);color:#94a3b8}
body.dark-mode .user-meta span{color:#94a3b8}
body.dark-mode .user-detail-row{color:#94a3b8}
body.dark-mode .user-avatar{background:linear-gradient(135deg,#1e3a5f,#1e40af);color:#93c5fd}
body.dark-mode .role-select{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .active-badge{background:#064e3b;color:#6ee7b7}
body.dark-mode .inactive-badge{background:#7f1d1d;color:#fca5a5}
body.dark-mode .btn-activate{background:#064e3b;color:#6ee7b7}
body.dark-mode .btn-activate:hover{background:#059669;color:#fff}
body.dark-mode .btn-deactivate{background:#7f1d1d;color:#fca5a5}
body.dark-mode .btn-deactivate:hover{background:#dc2626;color:#fff}
body.dark-mode .btn-edit-name{color:#64748b}
body.dark-mode .btn-edit-name:hover{color:#60a5fa}
body.dark-mode .btn-save-user{background:#1d4ed8;color:#fff}
body.dark-mode .btn-sm.btn-delete{background:#7f1d1d;color:#fca5a5}
body.dark-mode .btn-sm.btn-delete:hover{background:#dc2626;color:#fff}
body.dark-mode .user-card-pending{border-color:#ca8a04!important}
body.dark-mode .status-badge{background:#1e293b;color:#94a3b8;border:1px solid var(--border-color)}
body.dark-mode .user-delete-btn{background:var(--card-bg);border-color:#7f1d1d}
body.dark-mode .about-action-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .loc-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .popup-sbtn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .cs-search-wrap{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .cs-search-wrap:focus-within{background:#0f172a}
body.dark-mode .cs-search-wrap input{color:var(--text-primary)}
body.dark-mode .msg-page{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .msg-chat-input input{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .msg-chat-input input:focus{background:#0f172a}
body.dark-mode .notif-setting-item{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .notif-page-item{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .rental-form-container{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .rental-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .help-chat-popup{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .hcp-action-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .help-ticket-card{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .overview-welcome-logo{background:#1e293b}
body.dark-mode .landing-stats{background:linear-gradient(180deg,#0f172a,#1e293b)}
body.dark-mode .landing-stat-card{background:#1e293b;border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .landing-stat-num{color:#f8fafc;font-weight:900}
body.dark-mode .landing-stat-label{color:#94a3b8}
body.dark-mode .landing-section-title{color:#f1f5f9;font-weight:900}
body.dark-mode .landing-section-desc{color:#94a3b8}
body.dark-mode .landing-services{background:#0f172a}
body.dark-mode .landing-svc-card{background:#1e293b;border-color:var(--border-color)}
body.dark-mode .landing-svc-card:hover{box-shadow:0 16px 48px rgba(0,0,0,.3);border-color:transparent}
body.dark-mode .landing-svc-card h3{color:#e2e8f0}
body.dark-mode .landing-svc-card p{color:var(--text-muted)}
body.dark-mode .landing-features{background:#0c1829}
body.dark-mode .landing-feature-item{background:#1e293b;color:var(--text-primary)}
body.dark-mode .landing-news{background:linear-gradient(180deg,#0f172a,#1e293b)}
body.dark-mode .landing-news-card{background:#1e293b;border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .landing-news-card h3{color:#e2e8f0}
body.dark-mode .landing-news-card p{color:var(--text-muted)}
body.dark-mode .landing-news-more{border-color:#3b82f6;color:#60a5fa}
body.dark-mode .landing-news-more:hover{background:#3b82f6;color:#fff}
body.dark-mode .landing-cta{background:#0f172a}
body.dark-mode .landing-future{background:#0f172a}
body.dark-mode .landing-future-card{background:#1e293b;border-color:var(--border-color);color:var(--text-muted)}
body.dark-mode .landing-future-card h4{color:var(--text-secondary)}
body.dark-mode .landing-btn-white{background:#1e293b;color:#e2e8f0;box-shadow:0 4px 16px rgba(0,0,0,.3)}
body.dark-mode .landing-footer-logo{background:#1e293b}
body.dark-mode .about-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .about-card h1{color:#93c5fd}
body.dark-mode .about-card h2{color:var(--text-muted)}
body.dark-mode .about-card p{color:var(--text-secondary)}
body.dark-mode .about-card .about-action-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .fin-tab-btn{color:var(--text-muted)}
body.dark-mode .fin-tab-btn.active{background:var(--card-bg);color:var(--text-primary);border-color:var(--border-color)}
body.dark-mode .fin-add-btn{border-color:var(--border-color)}
body.dark-mode .fin-action-btn{border-color:var(--border-color)}
body.dark-mode input,body.dark-mode select,body.dark-mode textarea{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode select option{background:var(--input-bg);color:var(--text-primary)}
body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:var(--text-muted)}
body.dark-mode label{color:var(--text-secondary)}
body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5{color:var(--text-primary)}
body.dark-mode p{color:var(--text-secondary)}
body.dark-mode .nav-link{color:rgba(255,255,255,.7)}
body.dark-mode .nav-link:hover,body.dark-mode .nav-link.active{color:#fff}
body.dark-mode .header-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .header-btn:hover{background:#334155}
body.dark-mode .header-btn-secondary{background:transparent;border-color:var(--border-color);color:var(--text-muted)}
body.dark-mode .submit-btn{color:#fff}
body.dark-mode .page-header-bar{color:var(--text-primary)}
body.dark-mode .page-header h1{color:#e2e8f0}
body.dark-mode .splash-logo{background:#1e293b}
body.dark-mode .modal-header{background:linear-gradient(135deg,#0f172a,#1e293b);border-bottom-color:var(--border-color)}
body.dark-mode .modal-header h3{color:#93c5fd}
body.dark-mode .modal-close{background:rgba(255,255,255,.1);color:#e2e8f0}
body.dark-mode .modal-close:hover{background:rgba(255,255,255,.2)}
body.dark-mode .modal-container{background:var(--modal-bg);border:1px solid var(--border-color)}
body.dark-mode .form-label{color:var(--text-secondary)}
body.dark-mode .sidebar .icon svg,.dark-mode .nav-link .icon svg{fill:currentColor}
body.dark-mode .teamwork-card,body.dark-mode .announcement-card,body.dark-mode .ui-feature-card{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-primary)}
body.dark-mode [style*="background:#fff"],body.dark-mode [style*="background: #fff"],body.dark-mode [style*="background:white"]{background:var(--card-bg)!important;border-color:var(--border-color)!important}
body.dark-mode [style*="color:#374151"],body.dark-mode [style*="color:#111827"],body.dark-mode [style*="color:#1e293b"]{color:var(--text-primary)!important}
body.dark-mode [style*="color:#1e3a5f"]{color:#93c5fd!important}
body.dark-mode [style*="color:#6b7280"],body.dark-mode [style*="color:#9ca3af"],body.dark-mode [style*="color:#64748b"]{color:var(--text-muted)!important}
body.dark-mode [style*="color:#475569"]{color:var(--text-secondary)!important}
body.dark-mode [style*="color:#0f172a"]{color:var(--text-primary)!important}
body.dark-mode [style*="color:#334155"]{color:var(--text-secondary)!important}
body.dark-mode [style*="border:1px solid #e5e7eb"],body.dark-mode [style*="border:1px solid #e2e8f0"],body.dark-mode [style*="border:1px solid #d1d5db"],body.dark-mode [style*="border:2px solid #e5e7eb"]{border-color:var(--border-color)!important}
body.dark-mode [style*="border-bottom:1px solid #e"],body.dark-mode [style*="border-top:1px solid #e"]{border-color:var(--border-color)!important}
body.dark-mode [style*="background:#f9fafb"],body.dark-mode [style*="background:#f3f4f6"],body.dark-mode [style*="background:#f0f2f5"],body.dark-mode [style*="background:#f8fafc"]{background:var(--card-bg)!important}
body.dark-mode [style*="background:#f0f7ff"],body.dark-mode [style*="background:#f0f9ff"],body.dark-mode [style*="background:#f0fdf4"],body.dark-mode [style*="background:#fef3c7"],body.dark-mode [style*="background:#dbeafe"],body.dark-mode [style*="background:#e0f2fe"]{background:var(--table-stripe)!important}
body.dark-mode [style*="background:#fffef5"]{background:#1a1a0f!important}
body.dark-mode [style*="background:#fef2f2"],body.dark-mode [style*="background:#fee2e2"]{background:#3b1111!important}
body.dark-mode [style*="background:#dcfce7"],body.dark-mode [style*="background:#ecfdf5"]{background:#0a2e1a!important}
body.dark-mode .hr-page h3[style*="border-right"]{background:#1e293b!important;color:#e2e8f0!important}
body.dark-mode .hr-page h3[style*="border-right"] span{color:#94a3b8!important}
body.dark-mode .hr-page .data-table{border-color:var(--border-color)}
body.dark-mode .hr-page .data-table td b,body.dark-mode .hr-page .data-table td strong{color:#e2e8f0}
body.dark-mode .notif-item{border-color:var(--border-color)}
body.dark-mode .notif-item:hover{background:var(--table-stripe)}
body.dark-mode a{color:#60a5fa}
body.dark-mode .msg-contact-list{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .msg-contact{border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .msg-contact:hover,body.dark-mode .msg-contact.active{background:var(--table-stripe)}
body.dark-mode .msg-contact-name{color:#e2e8f0}
body.dark-mode .msg-contact-name span{color:#94a3b8!important}
body.dark-mode .msg-contact-last{color:#94a3b8}
body.dark-mode .msg-contact-city{color:#94a3b8}
body.dark-mode .msg-contact-avatar{background:linear-gradient(135deg,#1e3a5f,#2a4a70);color:#93c5fd}
body.dark-mode .msg-sidebar{border-color:var(--border-color)}
body.dark-mode .msg-sidebar-header{border-color:var(--border-color)}
body.dark-mode .msg-sidebar-header h3{color:#e2e8f0}
body.dark-mode .msg-group-label{background:#1e293b;color:#94a3b8;border-color:var(--border-color)}
body.dark-mode .msg-divider{background:var(--border-color)}
body.dark-mode .msg-empty{color:#94a3b8}
body.dark-mode .msg-header{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .msg-messages{background:var(--bg)}
body.dark-mode .msg-bubble{background:var(--card-bg);color:var(--text-primary)}
body.dark-mode .msg-bubble.sent{background:#1e3a5f;color:#f8fafc}
body.dark-mode .it-section-card{background:var(--card-bg)!important;border-color:#1e40af!important}
body.dark-mode [style*="background:linear-gradient(135deg,#dcfce7"]{background:linear-gradient(135deg,#064e3b,#065f46)!important;border-color:#059669!important}
body.dark-mode [style*="background:linear-gradient(135deg,#fef3c7"],body.dark-mode [style*="background:linear-gradient(135deg,#fde68a"]{background:linear-gradient(135deg,#78350f,#92400e)!important;border-color:#d97706!important}
body.dark-mode [style*="background:linear-gradient(135deg,#dbeafe"],body.dark-mode [style*="background:linear-gradient(135deg,#eff6ff"]{background:linear-gradient(135deg,#1e3a5f,#1e40af33)!important;border-color:#2563eb!important}
body.dark-mode [style*="background:linear-gradient(135deg,#bfdbfe"]{background:linear-gradient(135deg,#1e3a5f,#1e40af44)!important}
body.dark-mode .overview-card[style*="fef3c7"]{color:var(--text-primary)!important}
body.dark-mode .dept-card{color:var(--text-primary)}
body.dark-mode .dept-name{color:var(--text-primary)}
body.dark-mode .dept-count{color:var(--text-muted)}
body.dark-mode .stat-value{color:var(--text-primary)}
body.dark-mode .stat-label{color:var(--text-muted)}
body.dark-mode .overview-welcome{color:var(--text-primary)}
body.dark-mode .overview-welcome h2{color:var(--text-primary)!important}
body.dark-mode .overview-kpi{color:var(--text-primary)}
body.dark-mode .main-content{background:var(--bg)}
body.dark-mode .nav-section-title{color:var(--text-muted)}
body.dark-mode .sidebar-footer{border-color:var(--border-color)}
body.dark-mode .search-bar input{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}
body.dark-mode .search-bar input::placeholder{color:var(--text-muted)}
body.dark-mode .filter-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .filter-btn.active{background:var(--accent);color:#fff}
body.dark-mode .tab-btn{color:var(--text-muted);border-color:transparent}
body.dark-mode .tab-btn.active{color:var(--accent);border-color:var(--accent)}
body.dark-mode .status-badge{opacity:.9}
body.dark-mode hr{border-color:var(--border-color)}
body.dark-mode .report-meta{color:var(--text-muted)}
body.dark-mode .report-desc{color:var(--text-secondary)}
body.dark-mode .chat-msg{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .pagination-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .pagination-btn.active{background:var(--accent);color:#fff}
body.dark-mode .tooltip{background:var(--card-bg);color:var(--text-primary);border-color:var(--border-color)}
body.dark-mode .dropdown-menu{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .dropdown-item{color:var(--text-primary)}
body.dark-mode .dropdown-item:hover{background:var(--table-stripe)}
body.dark-mode .fin-toolbar{border-color:var(--border-color)}
body.dark-mode .fin-tab-bar{border-color:var(--border-color)}
body.dark-mode td,body.dark-mode th{color:var(--text-primary)}
body.dark-mode .salary-card,body.dark-mode .invoice-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .projects-card{background:var(--card-bg);border-color:var(--border-color);color:var(--text-primary)}
body.dark-mode .tree-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .car-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .car-card-name{color:#e2e8f0}
body.dark-mode .car-detail-row{color:#94a3b8}
body.dark-mode .car-detail-row span{color:#94a3b8}
body.dark-mode .car-detail-row strong{color:#e2e8f0}
body.dark-mode .car-type-badge{background:linear-gradient(135deg,#1e3a5f,#0c4a6e);color:#7dd3fc}
body.dark-mode .container-detail,body.dark-mode .car-detail,body.dark-mode .tree-detail{background:var(--card-bg);border-color:var(--border-color)}
html.dark-mode-preload{background:#0f172a}
html.dark-mode-preload body{background:#0f172a}
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%;font-family:'Tajawal',system-ui,sans-serif;background:var(--bg);color:var(--gray-900);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

.icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;flex-shrink:0}
.icon svg{width:100%;height:100%}

/* Splash */
.splash{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99999;background:linear-gradient(135deg,#0f2439 0%,#1e3a5f 50%,#0f2439 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .6s ease}
.splash.fade-out{opacity:0;pointer-events:none}
.splash-logo{width:100px;height:100px;border-radius:20px;object-fit:contain;background:#fff;padding:10px;animation:splashPulse 1.5s ease-in-out infinite}
.splash-text{color:#fff;font-size:28px;font-weight:900;margin-top:20px}
.splash-sub{color:rgba(255,255,255,.5);font-size:14px;margin-top:4px}
@keyframes splashPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}

/* Header */
.main-header{position:fixed;top:0;right:0;left:0;height:var(--header-h);background:var(--card-bg);color:var(--gray-900);z-index:5000;display:flex;align-items:center;padding:0 24px;gap:14px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 4px 12px rgba(0,0,0,.03);transition:right .3s;border-bottom:1px solid rgba(0,0,0,.04)}
.menu-btn{width:40px;height:40px;border:none;background:var(--gray-100);border-radius:var(--radius);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--gray-700);font-size:20px;transition:var(--transition)}
.menu-btn:hover{background:var(--gray-200)}
.menu-btn::after{content:"\2630";font-size:18px;color:var(--gray-700)}
.header-brand{display:flex;align-items:center;gap:10px}
.header-logo{width:40px;height:40px;border-radius:var(--radius);object-fit:contain;background:var(--primary);padding:5px;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.header-title{font-size:16px;font-weight:800;display:block;color:var(--primary);line-height:1.3}
.header-sub{font-size:11px;color:var(--gray-400);display:block;margin-top:1px}
.header-nav{display:none}
.header-actions{display:flex;align-items:center;gap:8px;margin-right:auto}

/* Notification Bell */
.notif-wrap{position:relative}
.notif-bell{width:40px;height:40px;border:none;background:var(--gray-100);border-radius:var(--radius);cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;color:var(--gray-500);transition:var(--transition)}
.notif-bell:hover{background:var(--gray-200);color:var(--primary-light)}
.notif-bell::after{content:"";display:block;width:20px;height:20px;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9'/%3E%3Cpath d='M13.73 21a2 2 0 0 1-3.46 0'/%3E%3C/svg%3E");background-size:contain}
.notif-count{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;background:var(--red);color:#fff;border-radius:9px;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--card-bg)}
.notif-dropdown{position:absolute;top:48px;left:0;width:340px;background:#fff;border-radius:var(--radius-lg);box-shadow:0 12px 48px rgba(0,0,0,.18);overflow:hidden;z-index:9000;direction:rtl;border:1px solid rgba(0,0,0,.06)}
.notif-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid #f3f4f6;font-weight:800;font-size:14px;color:#1e3a5f}
.notif-mark-all{border:none;background:none;color:#3b82f6;font-size:12px;font-family:inherit;cursor:pointer;font-weight:600}
.notif-empty{padding:30px;text-align:center;color:#9ca3af;font-size:13px}
.notif-item{padding:12px 18px;border-bottom:1px solid #f9fafb;cursor:pointer;transition:background .15s}
.notif-item:hover{background:#f0f7ff}
.notif-item.unread{background:#eff6ff;border-right:3px solid #3b82f6}
.notif-item-title{font-size:13px;font-weight:700;color:#111827;margin-bottom:2px}
.notif-item-body{font-size:12px;color:#6b7280;margin-bottom:2px}
.notif-item-time{font-size:10px;color:#9ca3af}

.user-display{font-size:12px;font-weight:600;color:var(--gray-500);display:flex;align-items:center;gap:4px}
.auth-btn{border:1px solid var(--gray-200);background:var(--card-bg);color:var(--primary-light);padding:8px 18px;border-radius:var(--radius);font-size:12px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:4px;transition:var(--transition)}
.auth-btn:hover{background:var(--primary-light);color:#fff;border-color:var(--primary-light)}

/* Side Menu (Mobile) */
.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:5500;opacity:0;pointer-events:none;transition:opacity .3s}
.menu-overlay.open{opacity:1;pointer-events:auto}
.side-menu{position:fixed;top:0;right:-280px;width:280px;height:100%;background:#fff;z-index:6000;transition:right .3s;padding-top:20px;box-shadow:-4px 0 20px rgba(0,0,0,.1)}
.side-menu.open{right:0}
.side-menu-header{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid #f3f4f6;margin-bottom:8px}
.side-menu-logo{width:40px;height:40px;border-radius:10px;object-fit:contain}
.side-menu-header span{font-size:16px;font-weight:800;color:#1e3a5f}
.side-menu .nav-link{display:flex;align-items:center;gap:10px;padding:12px 20px;color:#374151;text-decoration:none;font-size:14px;font-weight:600;transition:background .15s;cursor:pointer}
.side-menu .nav-link:hover,.side-menu .nav-link.active{background:#f0f7ff;color:#1e3a5f}

/* No sidebar (landing/login) */
body.no-sidebar .main-header{right:0!important;left:0!important;background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;border-bottom:none;box-shadow:0 2px 12px rgba(0,0,0,.15)}
body.no-sidebar .main-header .header-title{color:#fff}
body.no-sidebar .main-header .header-sub{color:rgba(255,255,255,.5)}
body.no-sidebar .auth-btn{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff}
body.no-sidebar .auth-btn:hover{background:rgba(255,255,255,.2)}
body.no-sidebar .theme-toggle-btn{color:rgba(255,255,255,.7)}
body.no-sidebar .theme-toggle-btn:hover{color:#fff}
body.no-sidebar .lang-toggle-btn{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff}
body.no-sidebar .lang-toggle-btn:hover{background:rgba(255,255,255,.2)}
body.no-sidebar .main-content{margin-right:0!important;margin-left:0!important}
body.no-sidebar .menu-btn{display:none!important}

/* Main Content */
.main-content{margin-top:var(--header-h);margin-right:0;min-height:calc(100vh - var(--header-h));padding:0;transition:margin-right .3s}
.page-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px;color:#6b7280;font-size:16px}
.page-error{text-align:center;padding:60px;color:#ef4444;font-size:16px}

/* KPI Cards */
.kpi-row{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;padding:24px 24px 0}
.kpi-card{background:var(--card-bg);border-radius:var(--radius-lg);padding:22px 18px;text-align:center;box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.04);transition:var(--transition);position:relative;overflow:hidden}
.kpi-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--kpi-color);border-radius:3px 3px 0 0}
.kpi-card::after{content:'';position:absolute;bottom:-20px;right:-20px;width:80px;height:80px;border-radius:50%;background:var(--kpi-bg);opacity:.5;transition:var(--transition)}
.kpi-card:hover{transform:translateY(-4px);box-shadow:var(--card-shadow-hover)}
.kpi-card:hover::after{opacity:.8;transform:scale(1.2)}
.kpi-icon{width:48px;height:48px;margin:0 auto 12px;border-radius:var(--radius);background:var(--kpi-bg);color:var(--kpi-color);display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
.kpi-value{font-size:38px;font-weight:900;color:var(--kpi-color);line-height:1;letter-spacing:-.5px;position:relative;z-index:1}
.kpi-label{font-size:12px;font-weight:700;color:var(--gray-500);margin-top:8px;letter-spacing:.2px;position:relative;z-index:1}

/* Overview */
.overview-page{padding-bottom:24px}
.overview-welcome{display:flex;align-items:center;gap:16px;padding:24px 24px 0;direction:rtl}
.overview-welcome-logo{width:60px;height:60px;border-radius:16px;object-fit:contain;background:#fff;padding:4px;box-shadow:0 2px 12px rgba(0,0,0,.08)}
.overview-welcome-text h1{font-size:22px;font-weight:900;color:#1e3a5f;margin-bottom:2px}
.overview-welcome-text p{font-size:13px;color:#6b7280;font-weight:600}
.overview-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;padding:18px 24px}
.overview-sections{display:flex;flex-direction:column;gap:14px;padding:18px 24px}
.kpi-row-client{grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:12px;padding:0}
.overview-card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);overflow:hidden;border:1px solid rgba(0,0,0,.04);transition:var(--transition)}
.overview-card:hover{box-shadow:var(--card-shadow-hover)}
.card-header{padding:16px 20px;font-size:15px;font-weight:800;color:var(--primary-light);display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--gray-100);background:linear-gradient(135deg,#f8fafc,#f0f4f8)}
.maps-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.maps-row .overview-map{height:45vh;min-height:320px}
.overview-map{height:45vh;min-height:320px}
.stat-bar-group{padding:16px 20px}
.stat-bar-item{margin-bottom:14px}
.stat-bar-label{display:flex;justify-content:space-between;font-size:12px;font-weight:600;color:#374151;margin-bottom:6px}
.stat-bar-track{height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden}
.stat-bar-fill{height:100%;border-radius:4px;transition:width .8s cubic-bezier(.4,0,.2,1)}
.quick-actions{display:flex;gap:10px;padding:16px 24px;flex-wrap:wrap}
.quick-btn{flex:0 0 auto;min-width:calc(20% - 10px);padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;color:#1e3a5f;transition:all .25s;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.quick-btn:hover{background:#f0f7ff;border-color:#1e3a5f;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.quick-btn-primary{background:linear-gradient(135deg,#1e3a5f,#2a4a70);color:#fff;border-color:#1e3a5f}
.quick-btn-primary:hover{background:linear-gradient(135deg,#16304d,#1e3a5f)}
.quick-btn-green{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:#22c55e}
.quick-btn-green:hover{background:linear-gradient(135deg,#16a34a,#15803d)}
.quick-btn-blue{background:linear-gradient(135deg,#0369a1,#0284c7);color:#fff;border-color:#0369a1}
.quick-btn-blue:hover{background:linear-gradient(135deg,#075985,#0369a1)}

.tree-location-link{display:flex;align-items:center;gap:6px;font-weight:600;transition:color .2s}
.tree-location-link:hover{color:#1e3a5f;text-decoration:underline}

.scroll-indicator{display:flex;justify-content:center;padding:8px 0 4px;cursor:pointer;opacity:.6;transition:opacity .3s}
.scroll-indicator:hover{opacity:1}
.scroll-indicator svg{animation:scrollBounce 2s ease-in-out infinite}
@keyframes scrollBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

.dash-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.dash-table{width:100%;border-collapse:collapse;font-size:13px}
.dash-table th{background:linear-gradient(135deg,#f8fafc,#f0f4f8);color:#64748b;font-weight:700;text-align:start;padding:12px 14px;border-bottom:2px solid #e2e8f0;font-size:12px;text-transform:uppercase;letter-spacing:.4px}
.dash-table td{padding:11px 14px;border-bottom:1px solid #f1f5f9;color:#334155}
.dash-table tbody tr:hover{background:#f8fafc}
.dash-table tbody tr:last-child td{border-bottom:none}

/* Containers Page */
.containers-page{display:flex;height:calc(100vh - var(--header-h));overflow:hidden}
.containers-sidebar{width:340px;background:var(--card-bg);display:flex;flex-direction:column;border-left:1px solid var(--gray-200);flex-shrink:0;height:100%}
.containers-map{flex:1;height:100%}
.cs-tools{padding:14px;border-bottom:1px solid #f3f4f6}
.cs-search-wrap{display:flex;align-items:center;gap:8px;border:1.5px solid var(--gray-200);border-radius:var(--radius);padding:0 12px;margin-bottom:10px;transition:var(--transition);background:var(--gray-50)}
.cs-search-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1);background:#fff}
.cs-search-wrap .icon{color:var(--gray-400);flex-shrink:0}
.cs-search{border:none;outline:none;padding:10px 0;font-size:13px;font-family:inherit;width:100%;direction:rtl;background:transparent}
.cs-filters{display:flex;gap:6px;margin-bottom:10px}
.cs-fbtn{flex:1;border:1px solid var(--gray-200);background:var(--card-bg);color:var(--gray-700);padding:8px 8px;border-radius:var(--radius-sm);font-size:12px;font-family:inherit;cursor:pointer;font-weight:600;transition:var(--transition)}
.cs-fbtn:hover{background:var(--gray-50)}
.cs-fbtn.active{background:var(--primary-light);color:#fff;border-color:var(--primary-light)}
.cs-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#6b7280;margin-bottom:8px}
.cs-legend{display:flex;align-items:center;gap:4px;font-size:11px}
.ldot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-left:4px}
.cs-add-btn{width:100%;padding:10px;background:var(--green);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:var(--transition)}
.cs-add-btn:hover{background:var(--green-dark)}
.cs-list{flex:1;overflow-y:auto}
.cs-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid #f9fafb;transition:background .15s}
.cs-item.has-thumb{flex-direction:column;align-items:stretch;gap:0;padding:0}
.cs-item.has-thumb .cs-item-body{display:flex;align-items:center;gap:10px;padding:10px 14px}
.cs-thumb{width:100%;height:100px;overflow:hidden;position:relative;background:#f1f5f9;border-radius:0}
.cs-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}
.cs-thumb:hover img{transform:scale(1.05)}
.cs-thumb-placeholder{display:flex;align-items:center;justify-content:center;color:#94a3b8;height:60px}
.cs-item:hover{background:#f0f7ff}
.cs-item.active{background:#e8f0fe;border-right:3px solid #1e3a5f}
.cs-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.1)}
.cs-item-info{flex:1;min-width:0}
.cs-item-code{font-size:14px;font-weight:700}
.cs-item-area{font-size:11px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cs-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;color:#fff;flex-shrink:0}
.no-results{text-align:center;padding:40px 20px;color:#9ca3af;font-size:14px}

/* Map Popup */
.leaflet-popup-content-wrapper{border-radius:16px!important;padding:0!important;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.2)!important}
.leaflet-popup-content{margin:0!important;width:280px!important}
.map-popup{font-family:'Tajawal',sans-serif;direction:rtl}
.map-popup img{width:100%;height:140px;object-fit:cover;display:block}
.map-popup-body{padding:14px 16px}
.map-popup-title{font-size:15px;font-weight:800;margin-bottom:2px}
.map-popup-sub{font-size:12px;color:#6b7280;margin-bottom:8px}
.map-popup-row{font-size:13px;margin-bottom:4px;display:flex;align-items:center;gap:4px}
.popup-time{font-size:11px!important;color:#9ca3af!important;margin-top:4px}
.status-badge{display:inline-block;padding:3px 12px;border-radius:999px;font-size:11px;font-weight:700;color:#fff}
.status-new{background:#3b82f6}
.status-progress{background:#f59e0b}
.status-resolved{background:#22c55e}
.status-closed{background:#6b7280}
.popup-status-btns{display:flex;gap:4px;margin-top:8px}
.popup-sbtn{flex:1;border:1px solid #e5e7eb;background:#fff;padding:5px;border-radius:6px;font-size:11px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s;color:#374151}
.popup-sbtn:hover,.popup-sbtn.active{background:var(--c);color:#fff;border-color:var(--c)}
.map-popup-actions{display:flex;gap:6px;margin-top:10px}
.map-popup-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;text-align:center;padding:8px;border-radius:8px;text-decoration:none;font-size:12px;font-weight:600;font-family:inherit;border:none;cursor:pointer;transition:opacity .2s}
.map-popup-btn.directions{background:#4285f4;color:#fff}
.map-popup-btn.secondary{background:#f3f4f6;color:#374151}
.map-popup-btn:hover{opacity:.85}
.mini-popup{font-family:'Tajawal',sans-serif;direction:rtl;text-align:center;padding:4px}

/* Cluster Icons */
.custom-cluster{background:transparent}
.cluster-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-family:'Tajawal',sans-serif;font-weight:900;text-align:center;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.cluster-small{width:36px;height:36px;font-size:14px;background:rgba(30,58,95,.85);border:3px solid rgba(255,255,255,.8)}
.cluster-medium{width:42px;height:42px;font-size:16px;background:rgba(245,158,11,.85);border:3px solid rgba(255,255,255,.8)}
.cluster-large{width:48px;height:48px;font-size:18px;background:rgba(239,68,68,.85);border:3px solid rgba(255,255,255,.8)}

/* Report Page */
.report-page{max-width:800px;margin:0 auto;padding:24px;display:grid;grid-template-columns:1fr;gap:18px}
.report-card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.04);padding:28px;overflow:hidden}
.report-card-header{text-align:center;margin-bottom:24px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#1e3a5f}
.report-card-header h2{font-size:22px;font-weight:900}
.report-card-header p{font-size:13px;color:#6b7280}
.report-success{text-align:center;padding:30px 0}
.success-icon{width:64px;height:64px;margin:0 auto 16px;background:#dcfce7;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#22c55e}
.report-success h3{font-size:20px;font-weight:800;color:#15803d;margin-bottom:10px}
.ticket-id{font-size:28px;font-weight:900;color:#1e3a5f;background:#f0f7ff;padding:10px 20px;border-radius:12px;display:inline-block;margin-bottom:8px;letter-spacing:2px}
.report-success p{font-size:13px;color:#6b7280}
.track-card{border-top:3px solid #3b82f6}
.track-form{display:flex;gap:8px}
.track-form input{flex:1;padding:10px 14px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;font-family:inherit;outline:none;direction:rtl}
.track-result-card{background:#f9fafb;border-radius:12px;padding:16px;margin-top:12px}
.track-row{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #f3f4f6}
.track-row:last-child{border:none}
.submit-report{background:#f59e0b}
.submit-report:hover{background:#d97706}

/* Supervisor Reports */
.sup-reports-page{padding:24px}
.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.page-header h1{font-size:22px;font-weight:900;color:#1e3a5f;display:flex;align-items:center;gap:8px}
.header-btn{padding:9px 18px;background:linear-gradient(135deg,#1e3a5f,#2a4a70);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s;box-shadow:0 2px 8px rgba(30,58,95,.2)}
.header-btn:hover{background:linear-gradient(135deg,#16304d,#1e3a5f);transform:translateY(-1px)}
.report-filters{display:flex;gap:10px;margin-bottom:16px}
.report-filters .cs-search-wrap{flex:1;margin-bottom:0}
.filter-select{padding:10px 16px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-size:13px;font-family:inherit;outline:none;direction:rtl;background:var(--card-bg);transition:var(--transition)}
.filter-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1)}
.data-table{width:100%;background:var(--card-bg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.04);border-collapse:collapse}
.data-table th{background:linear-gradient(135deg,#f8fafc,#f0f4f8);padding:14px 18px;font-size:12px;font-weight:700;color:var(--gray-500);text-align:right;border-bottom:2px solid var(--gray-100);letter-spacing:.3px;text-transform:uppercase}
.data-table td{padding:13px 18px;font-size:13px;border-bottom:1px solid var(--gray-50)}
.data-table tr:hover td{background:var(--accent-bg)}
.table-btn{width:32px;height:32px;border:1px solid var(--gray-200);background:var(--card-bg);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--gray-500);transition:var(--transition)}
.table-btn:hover{background:var(--primary-light);color:#fff;border-color:var(--primary-light)}

/* Report Detail */
.report-detail-page{max-width:600px;margin:0 auto;padding:24px}
.back-btn{display:flex;align-items:center;gap:4px;border:none;background:none;color:#6b7280;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;margin-bottom:12px;padding:6px 10px;border-radius:8px;transition:background .15s}
.back-btn:hover{background:#f3f4f6}
.report-detail-card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--card-shadow);overflow:hidden;border:1px solid rgba(0,0,0,.04)}
.rd-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #f3f4f6}
.rd-img{width:100%;max-height:200px;object-fit:cover}
.rd-body{padding:18px 22px}
.rd-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;border-bottom:1px solid #f9fafb}
.rd-row span{color:#6b7280}
.rd-actions{padding:18px 22px;background:#f9fafb;display:flex;flex-direction:column;gap:8px}
.rd-actions label{font-size:12px;font-weight:700;color:#374151}
.rd-actions select,.rd-actions textarea{padding:9px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:13px;font-family:inherit;outline:none;direction:rtl}

/* Admin */
.admin-page{padding:24px}
.users-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.user-card{background:#fff;border-radius:var(--radius-lg);padding:18px;box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;min-height:0;transition:var(--transition)}
.user-card:hover{box-shadow:var(--card-shadow-hover)}
.user-card-top{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px;flex-shrink:0}
.user-info{min-width:0;flex:1;overflow:hidden;display:flex;flex-direction:column;gap:3px}
.user-avatar{width:46px;height:46px;min-width:46px;background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#0369a1;flex-shrink:0;margin-top:2px}
.user-name{font-size:15px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1e3a5f;line-height:1.3;display:flex;align-items:center;gap:6px}
.btn-edit-name{background:none;border:none;color:#6b7280;cursor:pointer;padding:2px 4px;border-radius:4px;display:inline-flex;align-items:center;transition:color 0.2s}
.btn-edit-name:hover{color:#2563eb}
.user-role{font-size:12px;color:#6b7280;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-city-label{display:flex;align-items:center;gap:4px;font-size:11px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-meta{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#9ca3af;margin-bottom:10px;flex-shrink:0;border-top:1px solid #f3f4f6;padding-top:8px}
.user-meta span{display:flex;align-items:center;gap:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-detail-row{display:flex;align-items:center;gap:4px;font-size:11px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.6}
.active-badge{display:inline-block;background:#dcfce7;color:#15803d;padding:3px 10px;border-radius:10px;font-size:10px;font-weight:700;white-space:nowrap;flex-shrink:0}
.inactive-badge{display:inline-block;background:#fee2e2;color:#dc2626;padding:3px 10px;border-radius:10px;font-size:10px;font-weight:700;white-space:nowrap;flex-shrink:0}
.user-delete-btn{width:100%;padding:8px;border:1px solid #fecaca;background:#fff;border-radius:8px;color:#ef4444;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .15s}
.user-delete-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}

/* Login */
.login-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 60px);padding:24px;background:linear-gradient(135deg,#f0f2f5,#e0f2fe)}
.login-card{background:#fff;border-radius:var(--radius-xl);padding:44px 34px;width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid rgba(0,0,0,.04)}
.recaptcha-wrap{display:flex;justify-content:center;margin:12px 0;direction:ltr}
.login-header{text-align:center;margin-bottom:28px}
.login-logo{width:72px;height:72px;border-radius:18px;object-fit:contain;margin-bottom:14px;box-shadow:0 4px 16px rgba(0,0,0,.1)}
.login-header h2{font-size:24px;font-weight:900;color:#1e3a5f}
.login-header p{font-size:13px;color:#6b7280;margin-top:4px}

/* Auth Tabs */
.auth-tabs{display:flex;gap:0;margin-bottom:18px;background:#f3f4f6;border-radius:var(--radius);padding:3px}
.auth-tab{flex:1;padding:10px;border:none;background:transparent;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;border-radius:var(--radius-sm);color:#6b7280;transition:all .2s}
.auth-tab.active{background:#fff;color:#1e3a5f;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.submit-register{background:#1e3a5f}
.submit-register:hover{background:#16304d}

/* About */
.about-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 60px);padding:24px}
.about-card{background:var(--card-bg);border-radius:var(--radius-xl);padding:44px;max-width:500px;width:100%;text-align:center;box-shadow:var(--shadow-lg);border:1px solid rgba(0,0,0,.04)}
.about-logo{width:90px;height:90px;border-radius:20px;object-fit:contain;margin-bottom:18px;box-shadow:0 4px 16px rgba(0,0,0,.08)}
.about-card h1{font-size:24px;font-weight:900;color:#1e3a5f;margin-bottom:4px}
.about-card h2{font-size:14px;font-weight:600;color:#6b7280;direction:ltr}
.about-divider{width:60px;height:3px;background:linear-gradient(135deg,#1e3a5f,#3b82f6);border-radius:3px;margin:18px auto}
.about-card p{font-size:14px;color:#374151;line-height:1.8;margin-bottom:20px}
.about-features{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:right}
.about-feat{display:flex;align-items:center;gap:8px;padding:12px;background:#f9fafb;border-radius:var(--radius);font-size:13px;font-weight:600;color:#374151;transition:all .2s;border:1px solid transparent}
.about-feat .icon{color:#1e3a5f;flex-shrink:0}
.about-feat-link{cursor:pointer}
.about-feat-link:hover{background:#e0f2fe;color:#1e3a5f;transform:translateX(-2px);border-color:#bae6fd}
.about-actions{display:flex;gap:10px;margin-top:20px}
.about-action-btn{flex:1;padding:12px;border:1px solid #e5e7eb;border-radius:var(--radius);font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;color:#374151;background:#fff;transition:all .2s}
.about-action-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}
.about-action-primary{background:linear-gradient(135deg,#1e3a5f,#2a4a70);color:#fff;border-color:#1e3a5f}
.about-action-primary:hover{background:linear-gradient(135deg,#16304d,#1e3a5f)}
.about-action-green{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:#22c55e}
.about-action-green:hover{background:linear-gradient(135deg,#16a34a,#15803d)}
.about-footer{margin-top:20px;font-size:12px;color:#9ca3af}

/* Forms */
.add-form{display:flex;flex-direction:column;gap:6px}
.add-form label{font-size:13px;font-weight:600;color:#374151;margin-top:6px}
.hr-field label{display:block;font-size:12px;font-weight:700;color:#64748b;margin-bottom:4px;margin-top:0}
.hr-field input,.hr-field select{width:100%;padding:10px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:13px;font-family:inherit;outline:none;direction:rtl;transition:all .2s ease;background:#f8fafc;box-sizing:border-box}
.hr-field input:focus,.hr-field select:focus{border-color:#0369a1;box-shadow:0 0 0 3px rgba(3,105,161,.1);background:#fff}
.add-form input,.add-form select{padding:11px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-size:13px;font-family:inherit;outline:none;direction:rtl;transition:var(--transition);background:var(--gray-50)}
.add-form input:focus,.add-form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1);background:#fff}
.form-textarea{padding:11px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-size:13px;font-family:inherit;outline:none;direction:rtl;resize:vertical;transition:var(--transition);background:var(--gray-50)}
.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1);background:#fff}
.form-error{background:var(--red-bg);color:var(--red);padding:8px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}
.submit-btn{margin-top:14px;padding:13px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:var(--transition);box-shadow:0 2px 8px rgba(34,197,94,.2)}
.submit-btn:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px)}
.cancel-btn{margin-top:14px;padding:13px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:var(--transition);box-shadow:0 2px 8px rgba(239,68,68,.2)}
.cancel-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}

/* Location Picker */
.loc-btns{display:flex;gap:8px;margin-top:4px}
.loc-btn{flex:1;padding:10px;border:1px solid #e5e7eb;border-radius:10px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s;background:#fff;color:#374151}
.loc-btn:hover{border-color:#1e3a5f;color:#1e3a5f}
.loc-map{background:#f0f7ff;border-color:#93c5fd;color:#1e3a5f}
.loc-gps{background:#f0fdf4;border-color:#86efac;color:#15803d}
.loc-confirm{width:100%;background:#22c55e;color:#fff;border-color:#22c55e;margin-top:8px}
.loc-confirm:hover{background:#16a34a}
.loc-status{font-size:12px;padding:6px 0;min-height:20px}
.loc-status.success{color:#15803d}
.loc-status.error{color:#ef4444}
.loc-status.loading{color:#6b7280}
.mini-map-wrap{margin-top:8px;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:#f9fafb;padding:0}
.mini-map{width:100%;height:220px;z-index:1}
.coords-display{font-size:12px;color:#6b7280;background:#f9fafb;padding:6px 12px;border-radius:8px;text-align:center;direction:ltr}

/* Image Upload */
.img-upload-area{position:relative}
.img-upload-placeholder{border:2px dashed #e5e7eb;border-radius:var(--radius);padding:24px;text-align:center;font-size:14px;color:#9ca3af;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}
.img-upload-placeholder:hover{border-color:#1e3a5f;color:#1e3a5f;background:#f0f7ff}
.img-preview{width:100%;height:160px;object-fit:cover;border-radius:12px;cursor:pointer}

/* Modal */
.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(6px)}
.modal-card{background:var(--card-bg);border-radius:var(--radius-xl);overflow:hidden;max-width:440px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px rgba(0,0,0,.25);position:relative;animation:modalIn .3s ease-out}
.modal-small{max-width:380px}
@keyframes modalIn{from{transform:scale(.94) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}
.modal-close{position:absolute;top:12px;left:12px;z-index:10;width:32px;height:32px;border-radius:50%;border:none;background:rgba(0,0,0,.08);color:#374151;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.modal-close:hover{background:rgba(0,0,0,.15)}
.modal-info{padding:24px}
.modal-info h2{font-size:18px;font-weight:800;margin-bottom:16px;display:flex;align-items:center;gap:8px;color:#1e3a5f}
.modal-content{background:#fff;border-radius:var(--radius-xl);overflow:hidden;max-width:520px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 64px rgba(0,0,0,.25);position:relative;animation:modalIn .3s ease-out;padding:0}
.modal-content>h3{padding:16px 20px 0;margin:0 0 12px;font-size:16px;font-weight:700;color:#1e3a5f}
.modal-content>label{padding:0 20px;font-size:13px;font-weight:600;color:#374151;display:block;margin-bottom:4px}
.modal-content>input,.modal-content>select,.modal-content>textarea,.modal-content>.form-input,.modal-content>.form-select,.modal-content>.form-textarea,.modal-content>.hcp-input{margin:0 20px 12px;width:calc(100% - 40px);box-sizing:border-box}
.modal-content>button[type="submit"],.modal-content>.submit-btn,.modal-content>button:last-of-type{margin:8px 20px 20px}
.modal-header{padding:18px 22px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#f8fafc,#f0f4f8);flex-shrink:0}
.modal-header h3{font-size:16px;font-weight:800;color:#1e3a5f;display:flex;align-items:center;gap:8px;margin:0}
.modal-header .modal-close{position:static;width:28px;height:28px;flex-shrink:0}
.modal-body{padding:22px;overflow-y:auto;flex:1}
.modal-body .form-group{margin-bottom:16px}
.modal-body .form-group:last-child{margin-bottom:0}
.modal-body .form-group label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:6px}
.modal-body .form-input,.modal-body .form-control{width:100%;padding:11px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-family:inherit;font-size:14px;background:var(--gray-50);transition:var(--transition);box-sizing:border-box}
.modal-body .form-input:focus,.modal-body .form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none;background:#fff}
.modal-body textarea.form-input,.modal-body textarea.form-control{resize:vertical;min-height:70px}
.modal-body .insp-type-toggle{display:flex;gap:10px}
.modal-body .insp-type-btn{flex:1;text-align:center;padding:12px 8px;border:2px solid #d1d5db;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;background:#fff;color:#374151;user-select:none}
.modal-body .insp-type-btn.active{border-color:#0369a1;background:#e0f2fe;color:#0369a1}
.modal-body .insp-row{display:flex;gap:12px}
.modal-body .insp-row .form-group{flex:1;min-width:0}
.modal-body .insp-file-input{padding:10px;border:2px dashed #d1d5db;border-radius:10px;width:100%;box-sizing:border-box;font-family:inherit;font-size:13px;background:#f9fafb;cursor:pointer;transition:border-color .2s}
.modal-body .insp-file-input:hover{border-color:#93c5fd}
.modal-body .insp-photo-preview{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.modal-body .insp-photo-preview img{width:56px;height:56px;object-fit:cover;border-radius:8px;border:1.5px solid #e2e8f0}
.modal-body .insp-submit-btn{width:100%;padding:13px;font-size:15px;font-weight:700;border:none;border-radius:var(--radius);background:linear-gradient(135deg,#0369a1,#0284c7);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .2s,transform .1s;margin-top:4px;box-shadow:0 2px 8px rgba(3,105,161,.2)}
.modal-body .insp-submit-btn:hover{opacity:.92}
.modal-body .insp-submit-btn:active{transform:scale(.98)}
.modal-body .insp-submit-btn:disabled{opacity:.5;cursor:not-allowed}
.modal-body .insp-history{margin-top:20px;border-top:1.5px solid #e2e8f0;padding-top:16px}
.modal-body .insp-history h4{margin:0 0 10px;color:#64748b;font-size:13px;font-weight:600}
.modal-body .insp-history-list{max-height:200px;overflow-y:auto;font-size:13px}
.modal-body .insp-car-banner{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;padding:10px 14px;margin-bottom:16px;text-align:center;font-weight:600;color:#0369a1;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px}
.modal-body .insp-history-item{padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:8px;background:#f9fafb}
.modal-body .insp-history-item:last-child{margin-bottom:0}
.insp-hist-row{display:flex;justify-content:space-between;align-items:center}
.insp-hist-type{font-weight:600;font-size:13px}
.insp-hist-cond{color:#fff;padding:2px 10px;border-radius:10px;font-size:11px}
.insp-hist-meta{color:#64748b;font-size:11px;margin-top:3px}
.insp-hist-notes{font-size:12px;margin-top:6px;color:#334155}
.insp-hist-photos{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.insp-hist-photos img{width:40px;height:40px;object-fit:cover;border-radius:6px;cursor:pointer;border:1px solid #e2e8f0}
.insp-hist-error{color:#ef4444;text-align:center;font-size:13px}
.insp-hist-empty{color:#94a3b8;text-align:center;font-size:13px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
@media(max-width:600px){
  .modal-content{max-width:100%;border-radius:12px;max-height:92vh}
  .modal-body{padding:16px}
  .modal-body .insp-row{flex-direction:column;gap:0}
  .modal-body .insp-type-btn{padding:10px 6px;font-size:13px}
  .modal-header h3{font-size:14px}
}

.mtg-tabs{display:flex;gap:4px;margin-bottom:12px;background:#f1f5f9;border-radius:10px;padding:3px}
.mtg-tab{flex:1;padding:8px 6px;border:none;background:transparent;color:#64748b;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .2s;white-space:nowrap}
.mtg-tab.active{background:#fff;color:#0369a1;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.mtg-tab-content{border:1.5px solid #e2e8f0;border-radius:10px;padding:2px;max-height:220px;overflow-y:auto}
.mtg-tab-panel{display:none}
.mtg-tab-panel.active{display:block}
.mtg-cb-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;border-radius:8px;transition:background .15s;font-size:13px;color:#334155}
.mtg-cb-item:hover{background:#f0f9ff}
.mtg-cb-item input[type="checkbox"]{width:16px;height:16px;accent-color:#0369a1;flex-shrink:0;cursor:pointer}
.mtg-cb-item span{flex:1;min-width:0}
.mtg-emp-group-label{font-size:11px;font-weight:700;color:#6b7280;padding:8px 12px 2px;text-transform:uppercase;letter-spacing:.3px}
.mtg-emp-list{max-height:180px;overflow-y:auto}
.mtg-search{margin:8px 10px 4px;width:calc(100% - 20px) !important}
.mtg-sel-count{font-size:12px;font-weight:400;color:#0369a1}
@media(max-width:600px){
  .mtg-tab{font-size:11px;padding:6px 4px}
  .mtg-tab svg{display:none}
  .mtg-tab-content{max-height:180px}
}

/* Cars Page */
.cars-page{padding:24px;max-width:1400px;margin:0 auto}
.cars-filters{display:flex;gap:12px;align-items:center;margin-bottom:24px;flex-wrap:wrap;background:#fff;padding:18px 22px;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.04)}
.filter-select{padding:10px 16px;border:1.5px solid #e5e7eb;border-radius:var(--radius);font-family:inherit;font-size:14px;background:#fff;min-width:170px;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 12px center;padding-left:32px;padding-right:16px;transition:border-color .2s,box-shadow .2s}
.filter-input{padding:10px 16px;border:1.5px solid #e5e7eb;border-radius:var(--radius);font-family:inherit;font-size:14px;flex:1;min-width:200px;transition:border-color .2s,box-shadow .2s}
.filter-select:focus,.filter-input:focus{border-color:#1e3a5f;outline:none;box-shadow:0 0 0 3px rgba(30,58,95,.1)}
.filter-clear-btn{padding:10px 18px;background:#f3f4f6;color:#6b7280;border:1.5px solid #e5e7eb;border-radius:var(--radius);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px;white-space:nowrap}
.filter-clear-btn:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}
.cars-count{font-size:13px;color:#6b7280;font-weight:600;margin-right:auto;white-space:nowrap}
.cars-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;animation:carsIn .4s ease}
@keyframes carsIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.car-card{background:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--card-shadow);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative;border:1px solid rgba(0,0,0,.04)}
.car-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px rgba(0,0,0,.12)}
.car-card-top{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;gap:8px;border-bottom:1px solid #f3f4f6;flex-wrap:wrap}
.car-card-icon{width:50px;height:50px;background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#0369a1;flex-shrink:0}
.car-avail-badge{padding:5px 14px;border-radius:20px;font-size:11px;font-weight:700}
.car-avail-badge.available{background:#dcfce7;color:#15803d}
.car-avail-badge.unavailable{background:#fee2e2;color:#dc2626}
.car-status-badge{padding:5px 14px;border-radius:20px;font-size:11px;font-weight:700}
.car-status-available{background:#dcfce7;color:#15803d}
.car-status-maintenance{background:#fef3c7;color:#92400e}
.car-status-busy{background:#fee2e2;color:#dc2626}
.car-detail-row{display:flex;align-items:center;gap:6px;color:#4b5563;font-size:13px;margin-bottom:6px;line-height:1.4}
.car-detail-row span{color:#6b7280;white-space:nowrap}
.car-detail-row strong{color:#1e3a5f;font-weight:600;word-break:break-word}
.required-star{color:#dc2626;font-weight:700}
.field-error{color:#dc2626;font-size:12px;margin-top:2px;font-weight:600}
.car-card-body{padding:20px;flex:1;display:flex;flex-direction:column}
.car-card-name{font-size:18px;font-weight:800;color:#1e3a5f;margin-bottom:10px;line-height:1.3}
.car-card-info{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.car-type-badge{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0369a1;padding:4px 14px;border-radius:20px;font-size:12px;font-weight:700}
.car-city{display:flex;align-items:center;gap:5px;color:#6b7280;font-size:13px;font-weight:500}
.car-card-price{font-size:22px;font-weight:900;color:#15803d;margin-bottom:14px;display:flex;align-items:baseline;gap:4px}
.car-card-price .price-label{font-size:13px;font-weight:500;color:#6b7280}
.car-card-footer{display:flex;gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid #f3f4f6}
.btn-view-details{flex:1;padding:12px 20px;background:linear-gradient(135deg,#0f2439,#1e3a5f);color:#fff;border:none;border-radius:var(--radius);font-family:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px rgba(15,36,57,.25);letter-spacing:.3px}
.btn-view-details:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(15,36,57,.35)}
.car-card-actions{display:flex;gap:8px}
.btn-sm{padding:8px 16px;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:4px}
.btn-edit{background:#e0f2fe;color:#0369a1}
.btn-edit:hover{background:#0369a1;color:#fff}
.btn-delete{background:#fee2e2;color:#dc2626}
.btn-delete:hover{background:#dc2626;color:#fff}
.btn-toggle-avail{background:#fef3c7;color:#92400e;font-size:11px;padding:6px 12px}
.btn-toggle-avail:hover{background:#f59e0b;color:#fff}
.btn-book-now{flex:1;padding:10px 16px;background:linear-gradient(135deg,#15803d,#22c55e);color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:13px;font-weight:800;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 4px 12px rgba(21,128,61,.3)}
.btn-book-now:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(21,128,61,.4)}
.btn-pay{background:#15803d;color:#fff}
.btn-pay:hover{background:#166534}
.btn-pay-submit{background:linear-gradient(135deg,#15803d,#22c55e)!important;display:flex;align-items:center;justify-content:center;gap:8px}
.booking-summary{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;padding:16px;margin:16px 0}
.booking-summary-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;color:#374151}
.booking-summary-row.booking-total{border-top:2px solid #86efac;padding-top:12px;margin-top:8px;font-size:18px;font-weight:900;color:#15803d}
.booking-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);overflow:hidden;border:1px solid rgba(0,0,0,.04)}
.booking-card-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:linear-gradient(135deg,#f8fafc,#f0f4f8);border-bottom:1px solid #f1f5f9}
.booking-card-id{font-weight:800;color:#1e3a5f;font-size:15px}
.booking-status-badge{padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;color:#fff}
.booking-card-body{padding:16px 18px}
.booking-card-car{font-size:15px;font-weight:700;color:#1e3a5f;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.booking-card-user{font-size:13px;color:#6b7280;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.booking-card-dates{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;color:#4b5563;margin-bottom:6px}
.booking-days{background:#e0f2fe;color:#0369a1;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:700}
.booking-card-price{font-size:18px;font-weight:900;color:#15803d;margin-bottom:6px}
.booking-card-city{font-size:12px;color:#6b7280;display:flex;align-items:center;gap:4px}
.booking-card-reason{font-size:12px;color:#dc2626;margin-top:6px;display:flex;align-items:center;gap:4px}
.booking-card-actions{display:flex;gap:8px;padding:12px 18px;border-top:1px solid #f1f5f9;flex-wrap:wrap}
.bookings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.booking-result-page{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:20px}
.booking-result-card{background:#fff;border-radius:var(--radius-xl);padding:48px;text-align:center;max-width:480px;box-shadow:var(--shadow-lg)}
.booking-result-card.success .booking-result-icon{color:#15803d}
.booking-result-card.cancel .booking-result-icon{color:#f59e0b}
.booking-result-icon{margin-bottom:16px}
.booking-result-card h2{font-size:24px;font-weight:900;color:#1e3a5f;margin-bottom:12px}
.booking-result-card p{color:#6b7280;font-size:14px}
.booking-result-id{font-weight:700;color:#1e3a5f;margin-top:12px}
.booking-result-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}

/* Car Detail Modal */
.car-detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);backdrop-filter:blur(6px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}
.car-detail-card{background:#fff;border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px rgba(0,0,0,.25);animation:slideUp .3s ease}
@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.car-detail-body{padding:28px}
.car-detail-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
.car-detail-header-info{display:flex;align-items:center;gap:12px}
.car-detail-icon{width:52px;height:52px;background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-radius:16px;display:flex;align-items:center;justify-content:center;color:#0369a1;flex-shrink:0}
.car-detail-name{font-size:22px;font-weight:900;color:#1e3a5f;line-height:1.3}
.car-detail-close{width:36px;height:36px;border:none;background:#f3f4f6;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;color:#6b7280}
.car-detail-close:hover{background:#fee2e2;color:#dc2626}
.car-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}
.car-detail-meta-item{background:#f9fafb;border-radius:14px;padding:14px 16px;border:1px solid rgba(0,0,0,.04)}
.car-detail-meta-label{font-size:12px;color:#9ca3af;font-weight:600;margin-bottom:4px}
.car-detail-meta-value{font-size:16px;font-weight:800;color:#1e3a5f}
.car-detail-price-box{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:14px;padding:18px 20px;text-align:center;margin-bottom:20px}
.car-detail-price-amount{font-size:32px;font-weight:900;color:#15803d}
.car-detail-price-label{font-size:13px;color:#059669;font-weight:600;margin-top:2px}
.car-detail-section{margin-bottom:20px}
.car-detail-section-title{font-size:14px;font-weight:800;color:#1e3a5f;margin-bottom:12px;display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:2px solid #f3f4f6}
.car-detail-location{display:flex;align-items:center;gap:12px;background:#f0f7ff;border-radius:12px;padding:14px 16px}
.car-detail-location-icon{color:#1e3a5f;flex-shrink:0}
.car-detail-location-city{font-size:16px;font-weight:800;color:#1e3a5f}
.car-detail-location-addr{font-size:13px;color:#6b7280;margin-top:2px}
.car-detail-durations{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.duration-option{background:#f9fafb;border:2px solid #e5e7eb;border-radius:14px;padding:16px 12px;text-align:center;transition:all .2s;position:relative}
.duration-option:hover{border-color:#1e3a5f;background:#f0f7ff}
.duration-popular{border-color:#15803d;background:#f0fdf4}
.duration-badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:#15803d;color:#fff;font-size:10px;font-weight:700;padding:2px 10px;border-radius:20px;white-space:nowrap}
.duration-label{font-size:13px;font-weight:600;color:#6b7280;margin-bottom:6px}
.duration-price{font-size:20px;font-weight:900;color:#1e3a5f}
.duration-price span{font-size:12px;font-weight:500;color:#6b7280}
.car-detail-contact{background:linear-gradient(135deg,#0f2439,#1e3a5f);border-radius:14px;padding:16px 20px;text-align:center;margin-bottom:16px}
.car-detail-contact-text{color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px}
.car-detail-actions{display:flex;gap:10px;margin-top:12px}
.car-detail-actions .btn-sm{flex:1;padding:12px;justify-content:center;font-size:14px;border-radius:12px}

/* Skeleton Loading */
.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.skeleton-card{background:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--card-shadow)}
.skeleton-img{height:0;padding-bottom:60%;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}
.skeleton-body{padding:20px}
.skeleton-line{height:14px;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px;margin-bottom:12px}
.skeleton-line.w60{width:60%}
.skeleton-line.w40{width:40%}
.skeleton-line.w80{width:80%}
.skeleton-line.h24{height:24px}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

.empty-state{text-align:center;padding:80px 20px;color:#9ca3af}
.empty-state .icon{opacity:.4;margin-bottom:8px}
.empty-state p{margin-top:12px;font-size:16px;font-weight:500}
.empty-state .empty-sub{font-size:13px;color:#d1d5db;margin-top:4px}
.page-header-bar{margin-bottom:24px}
.page-header-bar h1{font-size:24px;font-weight:900;color:#1e3a5f;display:flex;align-items:center;gap:10px}
.page-header-bar p{color:#6b7280;font-size:14px;margin-top:6px;font-weight:500}
.add-btn{padding:10px 22px;background:linear-gradient(135deg,#0f2439,#1e3a5f);color:#fff;border:none;border-radius:var(--radius);font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s;box-shadow:0 4px 12px rgba(15,36,57,.25)}
.add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(15,36,57,.35)}

/* Role styles */
.role-admin{color:#dc2626;font-weight:700}
.role-employee{color:#0369a1;font-weight:600}
.role-client{color:#6b7280}
.role-select{padding:6px 10px;border:1px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:12px;background:#fff;cursor:pointer}
.password-field{position:relative;display:flex;align-items:center}
.password-field input{flex:1;padding-left:40px}
.pw-toggle{position:absolute;left:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#9ca3af;padding:4px;display:flex;align-items:center;transition:color 0.2s}
.pw-toggle:hover{color:#1e3a5f}
.dept-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px}
.dept-card{display:flex;flex-direction:column;align-items:center;padding:10px 6px;border-radius:var(--radius-lg);background:#f8fafc;border:1px solid #e5e7eb;transition:all 0.25s;text-decoration:none;color:inherit;min-height:76px;justify-content:center}
.dept-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.08);background:#fff;border-color:#3b82f6}
.dept-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:6px;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.dept-name{font-size:12px;font-weight:700;color:#374151;text-align:center;margin-bottom:4px;line-height:1.3}
.dept-count{font-size:16px;font-weight:900;color:#1e3a5f}
.dept-grid-client{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:14px}

.employee-info-card{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0f2439,#1e3a5f);border-radius:var(--radius-xl);padding:24px 28px;margin:24px 24px 0;color:#fff;box-shadow:0 4px 20px rgba(15,36,57,.25)}
.emp-info-right{display:flex;align-items:center;gap:14px}
.emp-avatar{width:56px;height:56px;border-radius:16px;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}
.emp-details{display:flex;flex-direction:column;gap:4px}
.emp-name{font-size:20px;font-weight:900;color:#fff;margin:0}
.emp-role-badge{font-size:12px;font-weight:700;color:rgba(255,255,255,.6);background:rgba(255,255,255,.1);padding:3px 12px;border-radius:20px;display:inline-block;width:fit-content}
.emp-city{font-size:12px;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:4px}
.emp-info-left{display:flex;align-items:center}
.emp-logo{width:48px;height:48px;border-radius:12px;object-fit:contain;background:#fff;padding:4px;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.map-toggle-btns{display:flex;gap:4px}
.map-toggle{padding:6px 14px;border:1px solid #e5e7eb;background:#fff;border-radius:var(--radius-sm);font-family:inherit;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s}
.map-toggle:hover{background:#f0f7ff;color:#1e3a5f}
.map-toggle.active{background:#1e3a5f;color:#fff;border-color:#1e3a5f}
@media(max-width:768px){.employee-info-card{margin:14px 12px 0;padding:16px 18px;flex-direction:column;gap:12px;text-align:center}.emp-info-right{flex-direction:column}.emp-name{font-size:16px}}

.dashboard-page{padding:0 24px 24px}
.dashboard-page .overview-card{margin-bottom:18px}
.dashboard-page .overview-grid{padding:18px 0}

.dash-admin-section{margin-top:20px;text-align:center}
.dash-city-list{padding:14px 18px}
.dash-city-item{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #f3f4f6;transition:background .15s}
.dash-city-item:last-child{border-bottom:none}
.dash-city-item:hover{background:#f8fafc}
.dash-city-name{font-size:14px;font-weight:700;color:#1e3a5f}
.dash-city-count{font-size:18px;font-weight:900;color:#0369a1;background:linear-gradient(135deg,#e0f2fe,#bae6fd);padding:4px 14px;border-radius:10px}

/* Bookings Page */
.bookings-page{padding:24px;max-width:1400px;margin:0 auto}
.bookings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;animation:carsIn .4s ease}
.booking-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.04);transition:transform .2s,box-shadow .2s}
.booking-card:hover{transform:translateY(-3px);box-shadow:var(--card-shadow-hover)}
.booking-card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f3f4f6}
.booking-card-id{font-size:14px;font-weight:800;color:#1e3a5f}
.booking-status-badge{padding:4px 14px;border-radius:20px;font-size:11px;font-weight:700;color:#fff}
.booking-card-body{padding:16px 20px}
.booking-card-car{font-size:16px;font-weight:700;color:#1e3a5f;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.booking-card-user{font-size:13px;color:#6b7280;margin-bottom:8px;display:flex;align-items:center;gap:4px}
.booking-card-dates{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#6b7280;margin-bottom:8px}
.booking-days{background:#e0f2fe;color:#0369a1;padding:2px 10px;border-radius:10px;font-size:12px;font-weight:700}
.booking-card-price{font-size:20px;font-weight:900;color:#15803d;margin-bottom:6px}
.booking-card-city{font-size:13px;color:#6b7280;display:flex;align-items:center;gap:4px;margin-bottom:4px}
.booking-card-reason{font-size:12px;color:#dc2626;background:#fee2e2;padding:6px 12px;border-radius:8px;margin-top:8px;display:flex;align-items:center;gap:4px}
.booking-card-actions{display:flex;gap:8px;padding:12px 20px;border-top:1px solid #f3f4f6;flex-wrap:wrap}
.btn-pay{background:linear-gradient(135deg,#15803d,#22c55e);color:#fff;font-weight:700}
.btn-pay:hover{background:#15803d;color:#fff}

/* Booking Form in Car Detail */
.booking-form-inline{padding:4px 0}
.booking-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.booking-form-field label{display:block;font-size:12px;font-weight:700;color:#6b7280;margin-bottom:4px}
.booking-date-input{width:100%;padding:10px 14px;border:1.5px solid #e5e7eb;border-radius:10px;font-family:inherit;font-size:14px;transition:border-color .2s}
.booking-date-input:focus{border-color:#1e3a5f;outline:none;box-shadow:0 0 0 3px rgba(30,58,95,.1)}
.booking-calc{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:12px;padding:12px 16px;margin-bottom:12px}
.booking-calc-days{font-size:14px;font-weight:700;color:#059669}
.booking-calc-total{font-size:20px;font-weight:900;color:#15803d}
.booking-form-error{color:#dc2626;font-size:13px;background:#fee2e2;padding:8px 12px;border-radius:8px;margin-bottom:12px}
.btn-book-pay{width:100%;padding:14px;background:linear-gradient(135deg,#15803d,#22c55e);color:#fff;border:none;border-radius:var(--radius);font-family:inherit;font-size:16px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;box-shadow:0 4px 16px rgba(21,128,61,.3)}
.btn-book-pay:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(21,128,61,.4)}
.btn-book-pay:disabled{opacity:.5;cursor:not-allowed}

/* Booking Result Pages */
.booking-result-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 60px);padding:20px}
.booking-result-card{background:#fff;border-radius:var(--radius-xl);padding:48px 40px;text-align:center;max-width:480px;width:100%;box-shadow:var(--shadow-lg)}
.booking-result-card.success .booking-result-icon{color:#15803d;background:#dcfce7;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.booking-result-card.cancel .booking-result-icon{color:#dc2626;background:#fee2e2;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.booking-result-card h2{font-size:24px;font-weight:900;color:#1e3a5f;margin-bottom:8px}
.booking-result-card p{font-size:15px;color:#6b7280;margin-bottom:4px}
.booking-result-id{font-size:18px;font-weight:800;color:#0369a1;margin-top:12px}
.booking-result-actions{display:flex;gap:12px;margin-top:24px;justify-content:center}

/* Login Note */
.login-note{text-align:center;color:#9ca3af;font-size:13px;margin-top:16px;padding:0 20px 20px}

/* Sidebar */
.sidebar{position:fixed;top:0;right:calc(-1 * var(--sidebar-w));width:var(--sidebar-w);height:100%;background:var(--primary);z-index:6000;transition:right .3s,left .3s;overflow-y:auto;display:flex;flex-direction:column}
[dir="ltr"] .sidebar{right:auto;left:calc(-1 * var(--sidebar-w))}
.sidebar.open{right:0}
[dir="ltr"] .sidebar.open{left:0;right:auto}
.sidebar-header{display:flex;align-items:center;gap:10px;padding:20px 18px;border-bottom:1px solid rgba(255,255,255,.08);height:var(--header-h);box-sizing:border-box}
.sidebar-logo{width:36px;height:36px;border-radius:var(--radius-sm);object-fit:contain;background:#fff;padding:3px}
.sidebar-brand{font-size:16px;font-weight:900;color:#fff}
.sidebar-close-btn{margin-right:auto;background:none;border:none;color:rgba(255,255,255,.6);font-size:24px;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:var(--transition)}
.sidebar-close-btn:hover{background:rgba(255,255,255,.12);color:#fff}
.sidebar-nav{flex:1;padding:12px 0;overflow-y:auto}
.sidebar-section{padding:2px 0}
.sidebar-section-title{padding:4px 20px 6px;font-size:11px;font-weight:700;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.5px}
.sidebar-divider{height:1px;background:rgba(255,255,255,.06);margin:6px 18px}
.sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 20px;color:rgba(255,255,255,.65);text-decoration:none;font-size:13px;font-weight:600;transition:var(--transition);cursor:pointer;border-radius:0;margin:1px 8px;border-radius:var(--radius-sm);position:relative}
.sidebar-link:hover{background:rgba(255,255,255,.08);color:#fff}
.sidebar-link.active{background:rgba(255,255,255,.12);color:#fff}
.sidebar-link.active::before{content:'';position:absolute;right:0;top:6px;bottom:6px;width:3px;background:var(--accent);border-radius:3px}
.sidebar-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.45);flex-shrink:0;transition:var(--transition)}
.sidebar-link:hover .sidebar-icon,.sidebar-link.active .sidebar-icon{color:#fff}
.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.06);padding-top:4px}

/* Responsive */
@media (max-width:1024px){
  .kpi-row{grid-template-columns:repeat(3,1fr)}
  .kpi-row-client{grid-template-columns:repeat(2,1fr)}
  .overview-grid{grid-template-columns:1fr}
  .overview-sections{padding:12px}
  .dash-split-grid{grid-template-columns:1fr}
  .dept-grid{grid-template-columns:repeat(3,1fr)}
  .users-grid{grid-template-columns:repeat(2,1fr)}
  .maps-row{grid-template-columns:1fr 1fr;gap:10px}
}
@media (max-width:768px){
  .header-text .header-title{font-size:14px}
  .user-display span:not(.icon){display:none}
  .kpi-row{grid-template-columns:repeat(2,1fr);gap:10px;padding:14px}
  .dash-table{font-size:12px}
  .dash-table th,.dash-table td{padding:8px 10px}
  .kpi-value{font-size:28px}
  .maps-row{grid-template-columns:1fr}
  .maps-row .overview-map,.overview-map{height:34vh;min-height:220px}
  .dept-grid{grid-template-columns:repeat(3,1fr);gap:8px;padding:10px}
  .dept-card{padding:8px 4px;min-height:68px}
  .dept-icon{width:40px;height:40px;margin-bottom:6px}
  .dept-name{font-size:11px}
  .dept-count{font-size:13px}
  .containers-page{flex-direction:column}
  .containers-sidebar{width:100%;height:50vh;order:2}
  .containers-map{height:55vh;order:1}
  .report-page{padding:12px}
  .report-card{padding:16px}
  .add-form label{font-size:12px;margin-top:4px}
  .add-form input,.add-form select,.form-textarea{font-size:13px;padding:8px 10px;width:100%;box-sizing:border-box}
  .img-upload-placeholder{padding:16px;font-size:13px}
  .submit-btn{padding:10px;font-size:13px}
  #clientReportMap{height:220px !important}
  #prRegionDisplay{font-size:13px;padding:10px 12px}
  #clientSelectedContainer{font-size:13px;padding:10px 12px}
  #clientNearbyMsg div{font-size:13px;padding:10px 12px}
  .users-grid{grid-template-columns:1fr}
  .admin-page{padding:12px}
  .user-card-actions{flex-direction:column;gap:6px}
  .user-card-actions select{width:100%;font-size:13px}
  .user-card-btns{flex-wrap:wrap;gap:4px}
  .user-card-btns button{flex:1 1 auto;min-width:0;font-size:11px;padding:6px 8px}
  .overview-grid{padding:12px}
  .quick-actions{padding:0 12px;flex-wrap:wrap}
  .quick-btn{min-width:calc(50% - 6px);flex:1 1 auto}
  .notif-dropdown{width:280px;left:-60px}
  .about-features{grid-template-columns:1fr}
  .about-actions{flex-direction:column}
  .cars-page{padding:12px}
  .cars-grid{grid-template-columns:1fr}
  .bookings-grid{grid-template-columns:1fr}
  .bookings-page{padding:12px}
  .booking-form-row{grid-template-columns:1fr}
  .skeleton-grid{grid-template-columns:1fr}
  .cars-filters{flex-direction:column;padding:12px}
  .filter-input{min-width:100%}
  .filter-select{min-width:100%}
  .cars-count{margin-right:0;text-align:center}
  .car-detail-card{margin:10px;max-height:95vh}
  .car-detail-meta{grid-template-columns:1fr 1fr}
  .car-detail-durations{grid-template-columns:1fr}
  .car-detail-actions{flex-wrap:wrap}
  .duration-badge{position:static;transform:none;display:inline-block;margin-bottom:4px}
  .overview-welcome{padding:14px 12px 0}
  .overview-welcome-text h1{font-size:16px}
  .data-table{font-size:12px}
  .data-table th,.data-table td{padding:8px 10px}
  .logs-page{padding:12px}
  .logs-filters{flex-direction:column}
  .help-chat-fab{width:48px;height:48px;bottom:20px;left:16px}
  .help-chat-fab svg{width:20px;height:20px}
  .help-chat-popup{left:8px;right:8px;width:auto;bottom:76px;max-height:70vh}
  .hcp-body{max-height:calc(70vh - 60px)}
  .dashboard-page{padding:0 14px 14px}
}
@media (max-width:420px){
  .dept-grid{grid-template-columns:repeat(2,1fr)}
  .dept-grid-client{grid-template-columns:repeat(2,1fr)}
  .kpi-row{gap:6px;padding:8px}
  .kpi-row-client{gap:6px}
  .kpi-card{padding:14px 10px}
  .kpi-value{font-size:22px}
  .quick-btn{min-width:100%;font-size:13px;padding:12px}
  .help-chat-fab{width:44px;height:44px;bottom:16px;left:12px}
  .help-chat-fab svg{width:18px;height:18px}
}
@media (max-width:320px){
  .dept-grid-client{grid-template-columns:1fr}
}

/* Toast Notifications */
.toast-container{position:fixed;top:74px;left:50%;transform:translateX(-50%);z-index:99999;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}
.toast{display:flex;align-items:center;gap:10px;padding:14px 22px;border-radius:var(--radius-lg);font-size:14px;font-weight:600;font-family:inherit;box-shadow:0 8px 30px rgba(0,0,0,.15);pointer-events:auto;opacity:0;transform:translateY(-20px);transition:opacity .3s ease,transform .3s ease;direction:rtl;min-width:280px;max-width:420px;backdrop-filter:blur(10px)}
.toast.toast-show{opacity:1;transform:translateY(0)}
.toast-success{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#15803d;border:1px solid #86efac}
.toast-error{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;border:1px solid #fca5a5}
.toast-info{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0369a1;border:1px solid #7dd3fc}
.toast-msg{flex:1}
.toast-close{background:none;border:none;font-size:18px;cursor:pointer;color:inherit;opacity:.6;padding:0 4px;line-height:1;transition:opacity .15s}
.toast-close:hover{opacity:1}

/* Activity Logs */
.logs-page{padding:24px;max-width:1200px;margin:0 auto}
.logs-filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.table-responsive{overflow-x:auto;border-radius:var(--radius-lg)}
.log-ip{font-family:monospace;font-size:12px;color:#9ca3af;direction:ltr;text-align:right}
.action-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;color:#fff}
.action-login{background:#3b82f6}
.action-create{background:#22c55e}
.action-update{background:#f59e0b}
.action-delete{background:#ef4444}
.action-role_change{background:#8b5cf6}
.action-status_change{background:#06b6d4}
.action-availability_change{background:#14b8a6}
.action-activate{background:#22c55e}
.action-deactivate{background:#6b7280}

/* Pagination */
.pagination{display:flex;justify-content:space-between;align-items:center;padding:16px 0;gap:12px;flex-wrap:wrap}
.pag-info{font-size:13px;color:#6b7280;font-weight:600}
.pag-btns{display:flex;gap:8px}
.pag-btn{padding:8px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;color:#1e3a5f;transition:all .15s}
.pag-btn:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}

/* User Status Badges */
.active-badge{font-size:11px;font-weight:700;color:#15803d;background:#dcfce7;padding:3px 10px;border-radius:20px;margin-right:auto}
.inactive-badge{font-size:11px;font-weight:700;color:#dc2626;background:#fee2e2;padding:3px 10px;border-radius:20px;margin-right:auto}
.user-inactive{opacity:.7;border-color:#fecaca}
.btn-activate{background:#dcfce7;color:#15803d}
.btn-activate:hover{background:#22c55e;color:#fff}
.btn-deactivate{background:#fee2e2;color:#dc2626}
.btn-deactivate:hover{background:#ef4444;color:#fff}

/* Admin Header Actions */
.page-header-actions{display:flex;gap:8px;align-items:center}
.header-btn-secondary{background:rgba(30,58,95,.1);color:#1e3a5f}
.header-btn-secondary:hover{background:#1e3a5f;color:#fff}

.otp-info{text-align:center;padding:16px;background:#f0fdf4;border-radius:12px;margin-bottom:16px}
.otp-info p{margin:6px 0;font-size:14px;color:#374151}
.otp-display{display:inline-block;font-size:32px;letter-spacing:10px;color:#1e3a5f;background:#e0f2fe;padding:8px 24px;border-radius:10px;font-weight:900;direction:ltr}
.otp-note{font-size:12px;color:#6b7280;margin-top:8px}
.login-links{text-align:center;margin-top:16px;padding-top:12px;border-top:1px solid #e5e7eb;font-size:14px;color:#6b7280}
.login-link{color:#1e3a5f;font-weight:700;text-decoration:none;margin-right:6px}
.login-link:hover{text-decoration:underline}
.required-star{color:#ef4444;font-weight:900}
.role-driver{background:#fef3c7;color:#92400e}
.role-it{color:#7c3aed;font-weight:800}

.settings-page{max-width:720px;margin:0 auto;padding:24px 16px}
.settings-grid{display:grid;gap:20px}
.settings-card{background:#fff;border-radius:var(--radius-lg);padding:24px;box-shadow:var(--card-shadow)}
.settings-card h3{font-size:16px;font-weight:700;color:#1e3a5f;margin-bottom:16px;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}
.input-disabled{background:#f3f4f6 !important;color:#6b7280 !important;cursor:not-allowed}
.submit-btn-outline{background:transparent !important;color:#1e3a5f !important;border:2px solid #1e3a5f !important}
.submit-btn-outline:hover{background:#1e3a5f !important;color:#fff !important}

.theme-toggle-btn{width:40px;height:40px;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;color:var(--gray-500);font-size:20px;display:flex;align-items:center;justify-content:center;transition:var(--transition);line-height:1}
.theme-toggle-btn:hover{color:var(--accent);transform:scale(1.1)}
body.dark-mode .theme-toggle-btn{color:var(--yellow)}
body.dark-mode .theme-toggle-btn:hover{color:#fbbf24;transform:scale(1.1)}
.lang-toggle-btn{width:40px;height:40px;border:1px solid var(--gray-200);background:var(--gray-100);border-radius:var(--radius);cursor:pointer;color:var(--gray-500);font-size:13px;font-weight:800;font-family:'Tajawal',system-ui,sans-serif;display:flex;align-items:center;justify-content:center;transition:var(--transition)}
.lang-toggle-btn:hover{background:var(--gray-200);color:var(--primary-light)}

.page-header-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:24px}

.meetings-page{padding:24px;max-width:1200px;margin:0 auto}
.meetings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.meeting-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.04);overflow:hidden;transition:transform .2s,box-shadow .2s}
.meeting-card:hover{transform:translateY(-3px);box-shadow:var(--card-shadow-hover)}
.meeting-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 18px;border-bottom:1px solid #f3f4f6}
.meeting-card-header h3{font-size:16px;font-weight:800;color:#1e3a5f;margin:0}
.meeting-card-body{padding:14px 18px}
.meeting-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;margin-bottom:8px}
.meeting-desc{font-size:13px;color:#374151;margin-bottom:8px;line-height:1.6}
.meeting-link{display:inline-flex;align-items:center;gap:4px;color:#0369a1;font-size:13px;font-weight:600;text-decoration:none;margin-bottom:6px}
.meeting-link:hover{text-decoration:underline}
.meeting-creator{font-size:12px;color:#9ca3af;display:flex;align-items:center;gap:4px}
.meeting-actions{display:flex;gap:4px}

.hr-page{padding:24px;max-width:1400px;margin:0 auto}
.file-upload-area{display:flex;align-items:center;gap:12px;flex-wrap:wrap}

.export-page{padding:24px;max-width:1200px;margin:0 auto}
.export-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}
.export-card{background:#fff;border-radius:var(--radius-lg);padding:28px 20px;text-align:center;box-shadow:var(--card-shadow);transition:transform .2s,box-shadow .2s;border:1px solid rgba(0,0,0,.04)}
.export-card:hover{transform:translateY(-3px);box-shadow:var(--card-shadow-hover)}
.export-card-icon{margin-bottom:12px}
.export-card h3{font-size:15px;font-weight:700;color:#1e3a5f;margin-bottom:16px}

.it-dashboard{padding:24px;max-width:1400px;margin:0 auto}
.it-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-bottom:24px}
.it-stat-card{background:#fff;border-radius:var(--radius-lg);padding:20px 16px;text-align:center;box-shadow:var(--card-shadow);border-top:3px solid var(--stat-color,#1e3a5f)}
.it-stat-card .icon{color:var(--stat-color,#1e3a5f);margin-bottom:6px}
.it-stat-value{font-size:28px;font-weight:900;color:var(--stat-color,#1e3a5f)}
.it-stat-label{font-size:12px;font-weight:600;color:#6b7280;margin-top:4px}
.it-sections{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}
.it-section-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--card-shadow);overflow:hidden;border:1px solid rgba(0,0,0,.04)}
.it-section-header{padding:14px 18px;font-size:15px;font-weight:800;color:#1e3a5f;display:flex;align-items:center;gap:8px;border-bottom:1px solid #f3f4f6;background:linear-gradient(135deg,#f8fafc,#f0f4f8)}
.it-section-body{padding:14px 18px}
.it-quick-link{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius);font-size:14px;font-weight:600;color:#374151;cursor:pointer;transition:all .15s;text-decoration:none}
.it-quick-link:hover{background:#f0f7ff;color:#1e3a5f;transform:translateX(-2px)}

[dir="ltr"] .sidebar-link.active::before{right:auto;left:0}
[dir="ltr"] .main-header{right:0;left:0}
[dir="ltr"] .main-content{margin-right:0;margin-left:0}
[dir="ltr"] .data-table th{text-align:left}

.hr-stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:30px}
.hr-stats-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.hr-stat-card{background:#fff;padding:16px 12px;text-align:center;border-radius:14px;border:1px solid #e5e7eb}
.hr-stat-card .hr-stat-icon{width:44px;height:44px;border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 8px}
.hr-stat-card .hr-stat-value{font-size:26px;font-weight:900;color:#1e3a5f}
.hr-stat-card .hr-stat-label{font-size:12px;color:#6b7280;font-weight:600;line-height:1.4}

@media (max-width:768px){
  .sidebar{width:260px}
  .export-grid{grid-template-columns:1fr 1fr}
  .it-stats-grid{grid-template-columns:repeat(2,1fr)}
  .it-sections{grid-template-columns:1fr}
  .meetings-grid{grid-template-columns:1fr}
  .hr-stats-grid{grid-template-columns:repeat(3,1fr);gap:10px}
  .hr-stats-grid-4{grid-template-columns:repeat(2,1fr);gap:10px}
}
@media (max-width:480px){
  .hr-stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .hr-stats-grid-4{grid-template-columns:repeat(2,1fr);gap:8px}
  .hr-stat-card{padding:12px 8px}
  .hr-stat-card .hr-stat-icon{width:38px;height:38px;border-radius:10px}
  .hr-stat-card .hr-stat-value{font-size:22px}
  .hr-stat-card .hr-stat-label{font-size:11px}
}

/* ===== LANDING PAGE ===== */
.landing{overflow:hidden}
.landing-hero{position:relative;min-height:90vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.landing-hero-bg{position:absolute;inset:0;background:linear-gradient(160deg,#060f1d 0%,#0a1e38 30%,#143050 60%,#0d1f33 100%);z-index:0}
.landing-hero-bg::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(59,130,246,.08) 1px,transparent 1px);background-size:32px 32px;z-index:1}
.landing-hero-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(34,197,94,.1) 0%,transparent 50%),radial-gradient(ellipse at 70% 30%,rgba(59,130,246,.08) 0%,transparent 40%),radial-gradient(ellipse at 50% 80%,rgba(34,197,94,.06) 0%,transparent 50%);z-index:1}
.landing-hero-content{position:relative;z-index:2;max-width:750px;padding:40px 24px}
.landing-logo{width:110px;height:110px;border-radius:26px;object-fit:contain;background:#fff;padding:12px;margin-bottom:24px;box-shadow:0 12px 40px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.1);animation:landingFloat 4s ease-in-out infinite}
@keyframes landingFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.landing-title{font-size:48px;font-weight:900;color:#fff;line-height:1.15;margin-bottom:16px;text-shadow:0 2px 30px rgba(0,0,0,.4)}
.landing-subtitle{font-size:18px;color:rgba(255,255,255,.65);line-height:1.7;margin-bottom:36px;max-width:600px;margin-left:auto;margin-right:auto}
.landing-hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.landing-btn{display:inline-flex;align-items:center;gap:8px;padding:15px 32px;border-radius:var(--radius-lg);font-size:16px;font-weight:700;font-family:inherit;border:none;cursor:pointer;transition:all .3s;text-decoration:none}
.landing-btn-primary{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 6px 24px rgba(34,197,94,.35)}
.landing-btn-primary:hover{transform:translateY(-3px);box-shadow:0 10px 36px rgba(34,197,94,.45)}
.landing-btn-outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.35)}
.landing-btn-outline:hover{background:rgba(255,255,255,.1);border-color:#fff;transform:translateY(-3px)}
.landing-btn-white{background:#fff;color:#1e3a5f;box-shadow:0 4px 16px rgba(0,0,0,.15)}
.landing-btn-white:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.2)}
.landing-btn-outline-white{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4)}
.landing-btn-outline-white:hover{background:rgba(255,255,255,.1)}
.landing-hero-wave{position:absolute;bottom:-2px;left:0;right:0;z-index:3}
.landing-hero-wave svg{display:block;width:100%;height:100px}
.landing-container{max-width:1200px;margin:0 auto;padding:0 24px}
.landing-section-title{text-align:center;font-size:32px;font-weight:900;color:#1e3a5f;margin-bottom:12px;display:flex;align-items:center;justify-content:center;gap:10px}
.landing-section-desc{text-align:center;color:#6b7280;font-size:16px;margin-bottom:48px;line-height:1.7}
.landing-stats{background:linear-gradient(180deg,#f8fafc,#fff);padding:80px 0}
.landing-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.landing-stat-card{background:#fff;border-radius:var(--radius-xl);padding:32px 24px;text-align:center;box-shadow:0 2px 20px rgba(0,0,0,.04);transition:transform .3s,box-shadow .3s;border:1px solid rgba(0,0,0,.04);position:relative;overflow:hidden}
.landing-stat-card::before{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--stat-accent,#1e3a5f),transparent);opacity:.5}
.landing-stat-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px rgba(0,0,0,.1)}
.landing-stat-icon{width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:#fff;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.landing-stat-num{font-size:42px;font-weight:900;color:#1e3a5f;direction:ltr;line-height:1}
.landing-stat-label{font-size:14px;font-weight:700;color:#6b7280;margin-top:8px;letter-spacing:.3px}
.landing-services{padding:100px 0;background:#fff}
.landing-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:800px;margin:0 auto}
.landing-svc-card{background:#f8fafc;border-radius:var(--radius-xl);padding:36px 28px;text-align:center;transition:all .3s;border:1px solid #e5e7eb;position:relative;overflow:hidden}
.landing-svc-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#22c55e,#3b82f6);opacity:0;transition:opacity .3s}
.landing-svc-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px rgba(0,0,0,.08);border-color:transparent}
.landing-svc-card:hover::before{opacity:1}
.landing-svc-icon{margin-bottom:18px}
.landing-svc-card h3{font-size:18px;font-weight:800;color:#1e3a5f;margin-bottom:10px}
.landing-svc-card p{font-size:14px;color:#6b7280;line-height:1.7}
.landing-features{padding:60px 0;background:#f0f7ff}
.landing-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:800px;margin:0 auto}
.landing-feature-item{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-radius:14px;font-size:15px;font-weight:600;color:#374151;transition:transform .2s}
.landing-feature-item:hover{transform:translateX(-4px)}
.landing-feature-check{width:28px;height:28px;background:#22c55e;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}
.landing-news{padding:100px 0;background:linear-gradient(180deg,#fff,#f8fafc)}
.landing-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.landing-news-card{background:#fff;border-radius:var(--radius-xl);padding:28px 24px;border:1px solid #e5e7eb;transition:all .3s;box-shadow:0 1px 4px rgba(0,0,0,.02)}
.landing-news-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.06);border-color:transparent}
.landing-news-date{font-size:12px;font-weight:700;color:#22c55e;margin-bottom:10px;letter-spacing:.3px}
.landing-news-card h3{font-size:16px;font-weight:800;color:#1e3a5f;margin-bottom:10px;line-height:1.4}
.landing-news-card p{font-size:13px;color:#6b7280;line-height:1.7}
.landing-cta{padding:100px 0;background:#fff}
.landing-cta-box{background:linear-gradient(135deg,#0a1628,#143050,#1a4a6e);border-radius:var(--radius-xl);padding:72px 48px;text-align:center;color:#fff;position:relative;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.15)}
.landing-cta-box::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:24px 24px}
.landing-cta-box h2{font-size:34px;font-weight:900;margin-bottom:14px;position:relative}
.landing-cta-box p{font-size:17px;opacity:.7;margin-bottom:32px;position:relative}
.landing-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative}
.landing-future{padding:60px 0;background:#fff}
.landing-future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.landing-future-card{position:relative;background:#f8fafc;border:2px dashed #e5e7eb;border-radius:var(--radius-xl);padding:32px 24px;text-align:center;color:#9ca3af}
.landing-future-badge{position:absolute;top:12px;left:12px;background:#fbbf24;color:#92400e;font-size:11px;font-weight:800;padding:4px 10px;border-radius:8px}
.landing-future-card h4{font-size:16px;font-weight:800;color:#6b7280;margin:12px 0 6px}
.landing-future-card p{font-size:13px}
.landing-footer{background:linear-gradient(135deg,#060f1d,#0f2439);padding:48px 0 32px;color:rgba(255,255,255,.6)}
.landing-footer-inner{text-align:center}
.landing-footer-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px;color:#fff;font-weight:700;font-size:16px}
.landing-footer-logo{width:40px;height:40px;border-radius:10px;background:#fff;padding:3px;object-fit:contain;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.landing-footer-text{font-size:13px;margin-top:6px;line-height:1.6}
.landing-footer-links{display:flex;justify-content:center;gap:24px;margin:20px 0;flex-wrap:wrap}
.landing-footer-link{color:rgba(255,255,255,.5);text-decoration:none;font-size:13px;font-weight:600;transition:color .2s}
.landing-footer-link:hover{color:#fff}
.landing-footer-divider{width:60px;height:1px;background:rgba(255,255,255,.1);margin:20px auto}
.fade-in-up{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}
.fade-in-up.visible{opacity:1;transform:translateY(0)}
.landing-scroll-indicator{position:absolute;bottom:120px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,.4);font-size:11px;font-weight:600;animation:scrollBounce 2s ease-in-out infinite;letter-spacing:1px}
.landing-scroll-indicator::after{content:'';width:20px;height:32px;border:2px solid rgba(255,255,255,.3);border-radius:10px;position:relative}
.landing-scroll-indicator::before{content:'';width:3px;height:8px;background:rgba(255,255,255,.5);border-radius:3px;position:absolute;bottom:30px;animation:scrollDot 2s ease-in-out infinite}
@keyframes scrollBounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}
@keyframes scrollDot{0%,100%{opacity:1;transform:translateY(0)}50%{opacity:.3;transform:translateY(6px)}}

/* Messages Page */
.msg-page{display:flex;height:calc(100vh - 60px);background:#fff;border-radius:var(--radius-lg);overflow:hidden;margin:12px;box-shadow:var(--card-shadow)}
.msg-sidebar{width:300px;border-left:1px solid #e5e7eb;display:flex;flex-direction:column}
[dir=ltr] .msg-sidebar{border-left:none;border-right:1px solid #e5e7eb}
.msg-sidebar-header{padding:16px;border-bottom:1px solid #f3f4f6;display:flex;align-items:center;justify-content:space-between}
.msg-sidebar-header h3{font-size:16px;font-weight:800;color:#1e3a5f}
.msg-contact-list{flex:1;overflow-y:auto}
.msg-contact{display:flex;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;transition:background .15s;border-bottom:1px solid #f9fafb}
.msg-contact:hover,.msg-contact.active{background:#f0f7ff}
.msg-contact-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);display:flex;align-items:center;justify-content:center;color:#4f46e5;font-weight:800;font-size:16px;flex-shrink:0}
.msg-contact-info{flex:1;min-width:0}
.msg-contact-name{font-size:13px;font-weight:700;color:#1e3a5f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.msg-contact-city{font-size:11px;color:#6b7280;display:flex;align-items:center;gap:3px;margin-top:2px}
.msg-contact-last{font-size:12px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.msg-contact-badge{background:#ef4444;color:#fff;font-size:11px;font-weight:800;padding:2px 7px;border-radius:10px}
.msg-chat{flex:1;display:flex;flex-direction:column}
.msg-chat-header{padding:14px 20px;border-bottom:1px solid #f3f4f6;display:flex;align-items:center;gap:10px}
.msg-chat-header h3{font-size:15px;font-weight:700;color:#1e3a5f}
.msg-chat-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:8px}
.msg-bubble{max-width:75%;padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.5;position:relative}
.msg-bubble-mine{align-self:flex-end;background:linear-gradient(135deg,#1e3a5f,#2a4a70);color:#fff;border-bottom-left:4px}
.msg-bubble-other{align-self:flex-start;background:#f3f4f6;color:#374151;border-bottom-right:4px}
.msg-bubble-time{font-size:10px;opacity:.6;margin-top:4px}
.msg-chat-input{padding:14px 20px;border-top:1px solid #f3f4f6;display:flex;gap:10px}
.msg-chat-input input{flex:1;padding:10px 16px;border:1.5px solid #e5e7eb;border-radius:var(--radius);font-family:inherit;font-size:14px;outline:none;background:var(--gray-50);transition:var(--transition)}
.msg-chat-input input:focus{border-color:#1e3a5f;background:#fff}
.msg-chat-input button{padding:10px 20px;background:linear-gradient(135deg,#1e3a5f,#2a4a70);color:#fff;border:none;border-radius:var(--radius);font-family:inherit;font-weight:700;cursor:pointer;font-size:14px}
.msg-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:15px;text-align:center}

/* Notification Settings */
.notif-settings{max-width:600px;margin:20px auto;padding:20px}
.notif-setting-item{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:#fff;border-radius:var(--radius-lg);margin-bottom:10px;box-shadow:var(--card-shadow)}
.notif-setting-label{display:flex;flex-direction:column;gap:2px}
.notif-setting-label span:first-child{font-size:15px;font-weight:700;color:#1e3a5f}
.notif-setting-label span:last-child{font-size:12px;color:#9ca3af}
.toggle-switch{position:relative;width:48px;height:26px;cursor:pointer}
.toggle-switch input{opacity:0;width:0;height:0}
.toggle-slider{position:absolute;inset:0;background:#d1d5db;border-radius:26px;transition:.3s}
.toggle-slider::before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;bottom:3px;right:3px;transition:.3s}
[dir=ltr] .toggle-slider::before{right:auto;left:3px}
.toggle-switch input:checked+.toggle-slider{background:#22c55e}
.toggle-switch input:checked+.toggle-slider::before{transform:translateX(-22px)}
[dir=ltr] .toggle-switch input:checked+.toggle-slider::before{transform:translateX(22px)}

@media(max-width:768px){
  .landing-title{font-size:30px}
  .landing-subtitle{font-size:15px}
  .landing-stats-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .landing-stat-card{padding:22px 14px}
  .landing-stat-num{font-size:30px}
  .landing-stat-icon{width:48px;height:48px;border-radius:14px}
  .landing-stat-label{font-size:12px}
  .landing-stats{padding:50px 0}
  .landing-services{padding:60px 0}
  .landing-services-grid{grid-template-columns:1fr}
  .landing-features-grid{grid-template-columns:1fr}
  .landing-news{padding:60px 0}
  .landing-news-grid{grid-template-columns:1fr}
  .landing-future-grid{grid-template-columns:1fr}
  .landing-cta{padding:60px 0}
  .landing-cta-box{padding:36px 22px}
  .landing-cta-box h2{font-size:24px}
  .landing-hero{min-height:70vh;padding:40px 16px}
  .landing-hero-content{padding:0 8px}
  .landing-section-title{font-size:24px}
  .landing-section-desc{font-size:14px;margin-bottom:28px}
  .landing-svc-card{padding:24px 18px}
  .landing-svc-card h3{font-size:16px}
  .msg-page{flex-direction:column;height:auto;min-height:calc(100vh - 60px)}
  .msg-sidebar{width:100%;max-height:50vh}
  .landing-scroll-indicator{display:none}
}
@media(max-width:420px){
  .landing-stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .landing-stat-card{padding:16px 10px;border-radius:var(--radius-lg)}
  .landing-stat-num{font-size:26px}
  .landing-stat-icon{width:42px;height:42px;border-radius:12px}
  .landing-stat-label{font-size:11px}
  .landing-hero{min-height:auto;padding:60px 12px}
  .landing-title{font-size:26px}
  .landing-subtitle{font-size:13px;margin-bottom:20px}
  .landing-logo{width:85px;height:85px;border-radius:20px;margin-bottom:16px}
  .landing-btn{padding:13px 24px;font-size:14px}
  .landing-news-card{padding:20px 16px}
  .landing-section-title{font-size:20px}
}

.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.95);z-index:10000;display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:pointer;animation:lbFadeIn .25s ease}
@keyframes lbFadeIn{from{opacity:0}to{opacity:1}}
.lightbox-content{position:relative;max-width:95vw;max-height:90vh;text-align:center;display:flex;flex-direction:column;align-items:center}
.lightbox-img{max-width:95vw;max-height:82vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);transition:transform .3s ease;cursor:grab;user-select:none;-webkit-user-select:none}
.lightbox-img.zoomed{transform:scale(2);cursor:zoom-out}
.lightbox-title{color:#fff;font-size:20px;font-weight:800;margin-bottom:12px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.lightbox-close{position:fixed;top:16px;right:16px;background:rgba(255,255,255,.15);border:none;color:#fff;border-radius:50%;width:44px;height:44px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:10001;backdrop-filter:blur(4px)}
.lightbox-close:hover{background:rgba(255,255,255,.35)}
.lightbox-controls{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:12px;z-index:10001}
.lightbox-ctrl-btn{background:rgba(255,255,255,.15);border:none;color:#fff;border-radius:12px;padding:10px 18px;cursor:pointer;font-size:13px;font-weight:700;display:flex;align-items:center;gap:6px;backdrop-filter:blur(4px);transition:background .2s;font-family:inherit}
.lightbox-ctrl-btn:hover{background:rgba(255,255,255,.3)}
.lightbox-hint{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.5);font-size:12px;z-index:10001}

.map-popup-img-wrap{position:relative;overflow:hidden;border-radius:12px 12px 0 0}
.map-popup-img-wrap img{transition:transform .3s}
.map-popup-img-wrap:hover img{transform:scale(1.05)}
.map-popup-img-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.5);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}
.map-popup-img-wrap:hover .map-popup-img-overlay{opacity:1}

.msg-new-btn{background:#0369a1;color:#fff;border:none;padding:6px 14px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:4px;font-family:inherit}
.msg-new-btn:hover{background:#0284c7}
.msg-group-label{padding:8px 16px;font-size:12px;font-weight:800;color:#6b7280;background:#f1f5f9;border-bottom:1px solid #e2e8f0}
.msg-divider{height:1px;background:#e2e8f0;margin:4px 0}

.landing-news-more{background:none;border:1px solid #0369a1;color:#0369a1;padding:6px 16px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;margin-top:10px;font-family:inherit;transition:all .2s}
.landing-news-more:hover{background:#0369a1;color:#fff}

.car-rental-page{max-width:900px;margin:0 auto;padding:24px 16px}
.rental-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:2px solid #e2e8f0;padding-bottom:0}
.rental-tab{background:none;border:none;border-bottom:3px solid transparent;padding:10px 20px;font-size:14px;font-weight:700;color:#64748b;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:6px;transition:all .2s}
.rental-tab:hover{color:#0369a1}
.rental-tab.active{color:#0369a1;border-bottom-color:#0369a1}
.rental-form-container{background:#fff;border-radius:var(--radius-lg);padding:24px;border:1px solid #e2e8f0;box-shadow:var(--card-shadow)}
.form-section-title{font-size:15px;font-weight:700;color:#1e3a5f;margin-bottom:16px;display:flex;align-items:center;gap:6px}
.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.form-grid-2{grid-template-columns:1fr}}
.rentals-list{display:flex;flex-direction:column;gap:12px}
.rental-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.04);transition:box-shadow .2s}
.rental-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.08)}
.rental-card-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:linear-gradient(135deg,#f8fafc,#f0f4f8);border-bottom:1px solid #e2e8f0}
.rental-car-info{display:flex;flex-direction:column;gap:2px}
.rental-car-name{font-size:15px;font-weight:700;color:#1e3a5f;display:flex;align-items:center;gap:6px}
.rental-car-type{font-size:12px;color:#64748b}
.rental-card-body{padding:14px 18px;display:flex;flex-direction:column;gap:6px}
.rental-detail{font-size:13px;color:#334155;display:flex;align-items:center;gap:4px}
.rental-detail strong{color:#1e3a5f;min-width:100px;display:inline-block}
.rental-date{color:#94a3b8;font-size:12px;margin-top:4px;display:flex;align-items:center;gap:4px}
.rental-card-actions{display:flex;gap:8px;padding:10px 18px;border-top:1px solid #e2e8f0;background:#fafbfc}
.btn-info{background:#0ea5e9;color:#fff;border:none;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:4px;font-family:inherit}
.btn-info:hover{background:#0284c7}
.badge-warning{background:#f59e0b;color:#fff;padding:2px 10px;border-radius:8px;font-size:12px;font-weight:700}
.badge-success{background:#10b981;color:#fff;padding:2px 10px;border-radius:8px;font-size:12px;font-weight:700}
.badge-danger{background:#ef4444;color:#fff;padding:2px 10px;border-radius:8px;font-size:12px;font-weight:700}
.badge-info{background:#0ea5e9;color:#fff;padding:2px 10px;border-radius:8px;font-size:12px;font-weight:700}
.badge-secondary{background:#94a3b8;color:#fff;padding:2px 10px;border-radius:8px;font-size:12px;font-weight:700}
.field-hint{font-size:12px;color:#94a3b8;margin-top:2px;margin-bottom:8px}
.inspection-results{margin-top:10px;display:flex;flex-direction:column;gap:10px}
.inspection-item{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:12px}
.inspection-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.inspection-meta{font-size:11px;color:#64748b}
.inspection-detail{font-size:13px;color:#334155;margin-bottom:6px}
.inspection-photos{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.inspection-photo{width:90px;height:90px;object-fit:cover;border-radius:8px;border:1px solid #d1d5db;cursor:pointer;transition:transform .2s}
.inspection-photo:hover{transform:scale(1.05)}
.badge-primary{background:#3b82f6;color:#fff;padding:2px 10px;border-radius:8px;font-size:12px;font-weight:700}
.btn-warning{background:#f59e0b;color:#fff;border:none;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:4px;font-family:inherit}
.btn-warning:hover{background:#d97706}
body.dark-mode .inspection-item{background:#1a2332;border-color:#334155}
body.dark-mode .inspection-meta{color:#94a3b8}
body.dark-mode .inspection-detail{color:#cbd5e1}
body.dark-mode .inspection-photo{border-color:#475569}
.goog-te-banner-frame{display:none !important}
.goog-te-gadget{font-size:0 !important}
body{top:0 !important}
.skiptranslate{display:none !important}
#goog-gt-tt{display:none !important}

.report-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;padding:8px 0}
.report-card-item{display:flex;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius-lg);padding:16px;cursor:pointer;transition:all .2s}
.report-card-item:hover{box-shadow:0 4px 16px rgba(0,0,0,.08);border-color:#0ea5e9;transform:translateY(-2px)}
.rci-thumb{width:60px;height:60px;border-radius:10px;overflow:hidden;flex-shrink:0;background:#f1f5f9}
.rci-thumb img{width:100%;height:100%;object-fit:cover}
.rci-info{flex:1;min-width:0}
.rci-code{font-size:11px;color:#0369a1;font-weight:700;letter-spacing:.5px;margin-bottom:2px;font-family:monospace;direction:ltr;text-align:right}
.rci-type{font-size:14px;font-weight:700;color:#1e293b;margin-bottom:4px}
.rci-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:2px}
.rci-date{font-size:12px;color:#94a3b8}
.rci-reporter{font-size:12px;color:#64748b}

.report-timeline{margin-top:20px;background:#fff;border-radius:var(--radius-lg);padding:20px;border:1px solid #e2e8f0}
.report-timeline h3{font-size:16px;color:#1e293b;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.timeline-steps{position:relative;padding-right:20px}
.tl-step{display:flex;gap:12px;margin-bottom:16px;position:relative}
.tl-step:before{content:'';position:absolute;right:-14px;top:24px;bottom:-16px;width:2px;background:#e2e8f0}
.tl-step:last-child:before{display:none}
.tl-dot{width:12px;height:12px;border-radius:50%;background:#e2e8f0;flex-shrink:0;margin-top:4px;position:relative;z-index:1}
.tl-dot.done{background:#10b981}
.tl-dot.active{background:#0ea5e9;box-shadow:0 0 0 4px rgba(14,165,233,.2)}
.tl-content{flex:1}
.tl-content b{font-size:13px;color:#1e293b;display:block}
.tl-content span{font-size:12px;color:#64748b;display:block;margin-top:2px}
.tl-content small{font-size:11px;color:#94a3b8;display:block;margin-top:2px}

.geofence-modal{text-align:center;max-width:400px}
.geofence-icon{color:#f59e0b;margin-bottom:8px}
.geofence-modal h3{color:#dc2626;font-size:18px;margin-bottom:8px}
.geofence-info{display:flex;justify-content:center;gap:24px;margin:16px 0;font-size:14px;color:#475569}
.geofence-info b{color:#dc2626}
.geofence-hint{color:#64748b;font-size:13px;margin:12px 0}
.geofence-actions{display:flex;gap:12px;justify-content:center;margin-top:16px}
.geofence-retry-btn{background:#0ea5e9 !important;display:flex;align-items:center;gap:6px}

.ops-map-page{position:relative}
.ops-map-toolbar{display:flex;gap:8px;padding:12px 16px;background:#1e293b;flex-wrap:wrap}
.ops-layer-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:2px solid #475569;border-radius:10px;background:transparent;color:#94a3b8;font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;transition:all .2s}
.ops-layer-btn.active{background:#0ea5e9;border-color:#0ea5e9;color:#fff}
.ops-layer-btn:hover{border-color:#0ea5e9}
.ops-marker{background:transparent !important;border:none !important}

.pres-mode-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:var(--radius);border:2px solid #6366f1;background:transparent;color:#6366f1;font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;transition:all .2s}
.pres-mode-btn:hover{background:#6366f1;color:#fff}
.presentation-mode .quick-actions{display:none}
.presentation-mode .log-ip{display:none}
.presentation-mode .rd-actions{display:none}
.presentation-mode{animation:presSlide .5s ease}
@keyframes presSlide{from{opacity:.5;transform:scale(.98)}to{opacity:1;transform:scale(1)}}

.help-chat-fab{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));left:24px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 24px rgba(14,165,233,.4);z-index:9998;transition:all .2s}
.help-chat-fab:hover{transform:scale(1.1);box-shadow:0 8px 30px rgba(14,165,233,.5)}
.help-chat-popup{position:fixed;bottom:90px;left:24px;width:360px;max-height:500px;background:#fff;border-radius:var(--radius-lg);box-shadow:0 12px 40px rgba(0,0,0,.18);z-index:9999;display:flex;flex-direction:column;overflow:hidden;animation:hcpSlide .3s ease}
@keyframes hcpSlide{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.hcp-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;font-weight:700}
.hcp-close{background:none;border:none;color:#fff;font-size:22px;cursor:pointer;line-height:1}
.hcp-body{padding:16px;overflow-y:auto;flex:1;max-height:380px}
.hcp-welcome{background:#f0f9ff;padding:12px;border-radius:10px;font-size:14px;color:#0369a1;margin-bottom:12px;text-align:center;font-weight:600}
.hcp-qa-list{margin-bottom:12px}
.hcp-qa-item{margin-bottom:6px}
.hcp-qa-q{width:100%;text-align:right;padding:10px 14px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:13px;font-weight:600;color:#334155;cursor:pointer;transition:all .2s}
.hcp-qa-q:hover{background:#e2e8f0}
.hcp-qa-a{padding:10px 14px;background:#f0fdf4;border-radius:0 0 10px 10px;font-size:13px;color:#15803d;border:1px solid #dcfce7;border-top:none;margin-top:-1px}
.hcp-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0}
.hcp-action-btn{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;font-family:inherit;font-size:13px;font-weight:600;color:#475569;cursor:pointer;transition:all .2s;flex:1;text-align:center;min-height:42px;display:flex;align-items:center;justify-content:center}
.hcp-action-btn:hover{background:#f1f5f9}
.hcp-action-support{background:#0ea5e9;color:#fff;border-color:#0ea5e9}
.hcp-action-support:hover{background:#0284c7}
.hcp-input{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:13px;margin-bottom:8px;box-sizing:border-box}
.hcp-textarea{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:13px;margin-bottom:8px;box-sizing:border-box;resize:vertical}
.hcp-submit{width:100%;margin-top:4px}
.hcp-back{width:100%;margin-top:4px;background:#f1f5f9;color:#475569;border:none;padding:8px;border-radius:8px;font-family:inherit;cursor:pointer}
.hcp-success{text-align:center;padding:24px}
.hcp-check{color:#10b981;margin-bottom:12px}
.hcp-ticket-num{font-family:monospace;font-size:16px;color:#0369a1;font-weight:700;margin-top:8px}
.hcp-ticket-form h4{margin:0 0 12px;color:#1e293b}
.hcp-label{display:block;font-size:12px;font-weight:700;color:#475569;margin-bottom:4px;margin-top:4px}
.hcp-req{color:#dc2626;font-weight:700}
.hcp-image-btns{display:flex;gap:8px;margin-bottom:8px}
.hcp-img-btn{flex:1;padding:10px 8px;border:1px dashed #94a3b8;border-radius:10px;background:#f8fafc;font-family:inherit;font-size:12px;font-weight:700;color:#475569;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}
.hcp-img-btn:hover{background:#e0f2fe;border-color:#0369a1;color:#0369a1}
.hcp-img-remove{position:absolute;top:4px;right:4px;background:rgba(220,38,38,.85);color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}
[dir=rtl] .hcp-img-remove{right:auto;left:4px}

.help-page{max-width:800px;margin:0 auto}
.notif-page-list{display:flex;flex-direction:column;gap:8px;margin-top:16px}
.notif-page-item{background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius);padding:14px 16px;transition:all .2s}
.notif-page-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.06)}
.notif-page-item.notif-unread{background:#eff6ff;border-color:#93c5fd}
.notif-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:12px}
.notif-page-title{font-weight:700;color:#1e293b;font-size:14px}
.notif-page-time{font-size:11px;color:#94a3b8;white-space:nowrap}
.notif-page-body{font-size:13px;color:#475569;line-height:1.5}
.quick-btn-purple{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff}
.quick-btn-purple:hover{background:linear-gradient(135deg,#6d28d9,#5b21b6)}
.quick-btn-orange{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-color:#f59e0b}
.quick-btn-orange:hover{background:linear-gradient(135deg,#d97706,#b45309)}

.help-ticket-card{background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius-lg);padding:16px;margin-bottom:12px}
.htc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.htc-id{font-family:monospace;font-weight:700;color:#0369a1}
.htc-subject{font-weight:700;color:#1e293b;margin-bottom:4px}
.htc-meta{font-size:12px;color:#94a3b8}

/* Finance Module */
.fin-tab-bar{display:flex;gap:4px;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:var(--radius);padding:4px;margin-bottom:24px}
.fin-tab-btn{flex:1;padding:12px 20px;text-align:center;border:none;background:transparent;font-family:inherit;font-size:15px;font-weight:700;color:#64748b;cursor:pointer;border-radius:var(--radius-sm);transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}
.fin-tab-btn:hover{color:#1e3a5f;background:rgba(255,255,255,.5)}
.fin-tab-btn.active{background:#fff;color:#1e3a5f;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.fin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.fin-add-btn{padding:10px 22px;background:linear-gradient(135deg,#059669,#10b981);color:#fff;border:none;border-radius:var(--radius);font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s;box-shadow:0 2px 8px rgba(5,150,105,.2)}
.fin-add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(5,150,105,.3)}
.fin-action-btn{padding:6px 14px;border:1px solid #e2e8f0;background:#fff;border-radius:var(--radius-sm);font-family:inherit;font-size:12px;font-weight:600;color:#475569;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:4px}
.fin-action-btn:hover{background:#f1f5f9}
.fin-action-btn.fin-delete,.fin-action-btn.fin-btn-del{color:#dc2626;border-color:#fecaca}
.fin-action-btn.fin-delete:hover,.fin-action-btn.fin-btn-del:hover{background:#fee2e2}

.fin-reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px;margin-top:16px}
.fin-report-card{background:#fff;border-radius:var(--radius);border:1px solid #e2e8f0;overflow:hidden;transition:all .2s;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.fin-report-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-2px)}
.fin-report-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;border-bottom:1px solid #f1f5f9;background:linear-gradient(135deg,#f8fafc,#f0f9ff)}
.fin-report-body{padding:12px 16px}
.fin-report-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;color:#475569}
body.dark-mode .fin-report-card{background:var(--card-bg);border-color:var(--border-color)}
body.dark-mode .fin-report-header{background:var(--card-bg)}

.form-select{width:100%;padding:11px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-family:inherit;font-size:14px;background:var(--gray-50);transition:var(--transition);box-sizing:border-box}
.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none;background:#fff}
.form-control{width:100%;padding:11px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-family:inherit;font-size:14px;background:var(--gray-50);transition:var(--transition);box-sizing:border-box}
.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none;background:#fff}
.form-label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:6px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;border:none;border-radius:var(--radius);font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s}
.btn-success{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 2px 8px rgba(34,197,94,.2)}
.btn-success:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(34,197,94,.3)}
.btn-outline-primary{border:1.5px solid #0369a1;background:#fff;color:#0369a1}
.btn-outline-primary:hover{background:#e0f2fe}
.btn-outline-secondary{border:1.5px solid #94a3b8;background:#fff;color:#475569}
.btn-outline-secondary:hover{background:#f1f5f9}
.w-100{width:100%}
.mb-3{margin-bottom:12px}
.text-center{text-align:center}
.p-3{padding:12px}

.accounts-table-container{overflow-x:auto;background:#fff;border-radius:12px;box-shadow:0 1px 4px rgba(0,0,0,.08);margin-top:8px}
.accounts-table{width:100%;border-collapse:collapse;font-size:13px;min-width:900px}
.accounts-table thead{background:#f1f5f9;position:sticky;top:0;z-index:2}
.accounts-table th{padding:10px 12px;text-align:right;font-weight:600;color:#334155;border-bottom:2px solid #e2e8f0;white-space:nowrap}
.accounts-table td{padding:8px 12px;border-bottom:1px solid #f1f5f9;vertical-align:middle}
.accounts-table tbody tr:hover{background:#f8fafc}
.accounts-table tbody tr.row-inactive{opacity:.5;background:#fef2f2}
.cell-username{font-family:monospace;font-size:12px;color:#64748b;direction:ltr;text-align:right}
.cell-name{font-weight:500}
.cell-date{font-size:11px;color:#94a3b8;white-space:nowrap}
.cell-actions{white-space:nowrap}
.editable-name{cursor:pointer;color:#1e293b}
.editable-name:hover{color:#2563eb}
.editable-name svg{opacity:.3}
.editable-name:hover svg{opacity:1}
.role-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}
.role-badge.role-it{background:#dbeafe;color:#1d4ed8}
.role-badge.role-director{background:#fef3c7;color:#92400e}
.role-badge.role-secretary{background:#e0e7ff;color:#3730a3}
.role-badge.role-hr_manager,.role-badge.role-hr{background:#fce7f3;color:#9d174d}
.role-badge.role-finance_manager{background:#d1fae5;color:#065f46}
.role-badge.role-city_manager,.role-badge.role-project_manager,.role-badge.role-projects_director{background:#fed7aa;color:#9a3412}
.role-badge.role-supervisor,.role-badge.role-container_supervisor,.role-badge.role-rental_supervisor,.role-badge.role-tree_supervisor{background:#e9d5ff;color:#6b21a8}
.role-badge.role-vehicle_inspector{background:#ccfbf1;color:#134e4a}
.role-badge.role-rental_officer,.role-badge.role-employee{background:#e0f2fe;color:#075985}
.role-badge.role-driver{background:#fef9c3;color:#854d0e}
.role-badge.role-worker,.role-badge.role-tree_worker{background:#f1f5f9;color:#475569}
.status-active-dot{color:#16a34a;font-weight:600;font-size:12px}
.status-inactive-dot{color:#ef4444;font-weight:600;font-size:12px}
.tbl-btn{border:none;padding:4px 6px;border-radius:6px;cursor:pointer;font-size:11px;display:inline-flex;align-items:center;margin:0 2px}
.tbl-btn-edit{background:#fef3c7;color:#92400e}
.tbl-btn-edit:hover{background:#fde68a}
.tbl-btn-deactivate{background:#fee2e2;color:#dc2626}
.tbl-btn-deactivate:hover{background:#fecaca}
.tbl-btn-activate{background:#d1fae5;color:#16a34a}
.tbl-btn-activate:hover{background:#bbf7d0}
body.dark-mode .accounts-table-container{background:var(--card-bg);box-shadow:0 1px 4px rgba(0,0,0,.3)}
body.dark-mode .accounts-table thead{background:#0f172a}
body.dark-mode .accounts-table th{color:#94a3b8;border-bottom-color:var(--border-color)}
body.dark-mode .accounts-table td{color:#e2e8f0;border-bottom-color:var(--border-color)}
body.dark-mode .accounts-table tbody tr:hover{background:#334155}
body.dark-mode .accounts-table tbody tr.row-inactive{background:#1c1917;opacity:.6}
body.dark-mode .cell-username{color:#94a3b8}
body.dark-mode .cell-name{color:#e2e8f0}
body.dark-mode .cell-date{color:#64748b}
body.dark-mode .role-badge.role-it{background:#1e3a5f;color:#93c5fd}
body.dark-mode .role-badge.role-director{background:#78350f;color:#fde68a}
body.dark-mode .role-badge.role-secretary{background:#312e81;color:#c7d2fe}
body.dark-mode .role-badge.role-hr_manager,body.dark-mode .role-badge.role-hr{background:#831843;color:#fbcfe8}
body.dark-mode .role-badge.role-finance_manager{background:#064e3b;color:#6ee7b7}
body.dark-mode .role-badge.role-city_manager,body.dark-mode .role-badge.role-project_manager,body.dark-mode .role-badge.role-projects_director{background:#7c2d12;color:#fed7aa}
body.dark-mode .role-badge.role-supervisor,body.dark-mode .role-badge.role-container_supervisor,body.dark-mode .role-badge.role-rental_supervisor,body.dark-mode .role-badge.role-tree_supervisor{background:#581c87;color:#d8b4fe}
body.dark-mode .role-badge.role-vehicle_inspector{background:#134e4a;color:#99f6e4}
body.dark-mode .role-badge.role-rental_officer,body.dark-mode .role-badge.role-employee{background:#0c4a6e;color:#bae6fd}
body.dark-mode .role-badge.role-driver{background:#713f12;color:#fef08a}
body.dark-mode .role-badge.role-worker,body.dark-mode .role-badge.role-tree_worker{background:#1e293b;color:#94a3b8}
body.dark-mode .tbl-btn-edit{background:#78350f;color:#fde68a}
body.dark-mode .tbl-btn-edit:hover{background:#92400e}
body.dark-mode .tbl-btn-deactivate{background:#7f1d1d;color:#fca5a5}
body.dark-mode .tbl-btn-deactivate:hover{background:#991b1b}
body.dark-mode .tbl-btn-activate{background:#064e3b;color:#6ee7b7}
body.dark-mode .tbl-btn-activate:hover{background:#065f46}
body.dark-mode .status-active-dot{color:#4ade80}
body.dark-mode .status-inactive-dot{color:#f87171}
.collapsible-header{user-select:none;transition:background .2s}
.collapsible-header:hover{opacity:.85}
.collapse-icon{display:inline-flex;align-items:center;transition:transform .3s ease;color:#94a3b8}
.collapsible-content{transition:max-height .4s ease,opacity .3s ease;opacity:1;max-height:2000px;overflow:visible}
.collapsible-content.collapsed{max-height:0!important;opacity:0;overflow:hidden}
.role-row-item:hover{background:#f0f7ff !important}
