.ajax-loading{position:relative;pointer-events:none;opacity:.6}.ajax-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgb(255 255 255 / .7);z-index:10;border-radius:inherit}[data-bs-theme="dark"] .ajax-loading-overlay{background:rgb(0 0 0 / .5)}.page-loader{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#fff;z-index:9999;transition:opacity 0.3s ease,visibility 0.3s ease}aja] .page-loader{background:#1e1e2d}body:not(.page-loading) .page-loader{opacity:0;visibility:hidden}.status-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.status-indicator.active,.status-indicator.online{background-color:var(--ez-vehicle-active);animation:pulse-green 2s infinite}.status-indicator.inactive,.status-indicator.offline{background-color:var(--ez-vehicle-inactive)}.status-indicator.maintenance,.status-indicator.warning{background-color:var(--ez-vehicle-maintenance);animation:pulse-yellow 2s infinite}.status-indicator.breakdown,.status-indicator.error{background-color:var(--ez-vehicle-breakdown);animation:pulse-red 2s infinite}@keyframes pulse-green{0%,100%{box-shadow:0 0 0 0 rgb(23 198 83 / .4)}50%{box-shadow:0 0 0 4px #fff0}}@keyframes pulse-yellow{0%,100%{box-shadow:0 0 0 0 rgb(246 192 0 / .4)}50%{box-shadow:0 0 0 4px #fff0}}@keyframes pulse-red{0%,100%{box-shadow:0 0 0 0 rgb(241 65 108 / .4)}50%{box-shadow:0 0 0 4px #fff0}}.badge-vehicle-active{background-color:rgb(23 198 83 / .1);color:var(--ez-vehicle-active)}.badge-vehicle-inactive{background-color:rgb(153 161 183 / .1);color:var(--ez-vehicle-inactive)}.badge-vehicle-maintenance{background-color:rgb(246 192 0 / .1);color:var(--ez-vehicle-maintenance)}.badge-vehicle-breakdown{background-color:rgb(241 65 108 / .1);color:var(--ez-vehicle-breakdown)}.fuel-gauge{width:100%;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.fuel-gauge-fill{height:100%;border-radius:4px;transition:width 0.3s ease,background-color 0.3s ease}.fuel-gauge-fill.low{background:linear-gradient(90deg,var(--ez-fuel-low),#ff8787)}.fuel-gauge-fill.medium{background:linear-gradient(90deg,var(--ez-fuel-medium),#ffdd87)}.fuel-gauge-fill.full{background:linear-gradient(90deg,var(--ez-fuel-full),#87ffb5)}.vehicle-card{border-radius:var(--ez-radius-lg);transition:transform var(--ez-transition-base),box-shadow var(--ez-transition-base)}.vehicle-card:hover{transform:translateY(-4px);box-shadow:var(--ez-shadow-lg)}.vehicle-card .vehicle-image{height:180px;object-fit:cover;border-radius:var(--ez-radius-lg) var(--ez-radius-lg) 0 0}.vehicle-card .vehicle-status{position:absolute;top:12px;right:12px}.driver-avatar{position:relative;display:inline-block}.driver-avatar .avatar-img{width:40px;height:40px;border-radius:50%;object-fit:cover}.driver-avatar .avatar-status{position:absolute;bottom:0;right:0;width:12px;height:12px;border-radius:50%;border:2px solid #fff}.driver-avatar .avatar-status.available{background-color:var(--ez-driver-available)}.driver-avatar .avatar-status.on-duty{background-color:var(--ez-driver-on-duty)}.driver-avatar .avatar-status.on-leave{background-color:var(--ez-driver-on-leave)}.stats-card{padding:1.5rem;border-radius:var(--ez-radius-lg);background:#fff;box-shadow:var(--ez-shadow-sm);transition:box-shadow var(--ez-transition-base)}.stats-card:hover{box-shadow:var(--ez-shadow-md)}.stats-card .stats-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--ez-radius-md)}.stats-card .stats-value{font-size:1.75rem;font-weight:700;line-height:1.2}.stats-card .stats-label{font-size:.875rem;color:#99A1B7}.stats-card .stats-trend{font-size:.75rem;font-weight:500}.stats-card .stats-trend.up{color:var(--ez-vehicle-active)}.stats-card .stats-trend.down{color:var(--ez-vehicle-breakdown)}.empty-state{text-align:center;padding:3rem 2rem}.empty-state .empty-icon{font-size:4rem;color:#E1E3EA;margin-bottom:1.5rem}.empty-state .empty-title{font-size:1.25rem;font-weight:600;color:#181C32;margin-bottom:.5rem}.empty-state .empty-text{color:#99A1B7;margin-bottom:1.5rem}[data-bs-theme="dark"] .empty-state .empty-icon{color:#3f4254}[data-bs-theme="dark"] .empty-state .empty-title{color:#fff}.ez-timeline{position:relative;padding-left:30px}.ez-timeline::before{content:'';position:absolute;left:9px;top:0;bottom:0;width:2px;background:#E1E3EA}.ez-timeline-item{position:relative;padding-bottom:1.5rem}.ez-timeline-item:last-child{padding-bottom:0}.ez-timeline-item::before{content:'';position:absolute;left:-21px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--ez-primary);border:2px solid #fff;box-shadow:0 0 0 2px var(--ez-primary-light)}.ez-timeline-item.success::before{background:var(--ez-vehicle-active);box-shadow:0 0 0 2px rgb(23 198 83 / .2)}.ez-timeline-item.warning::before{background:var(--ez-vehicle-maintenance);box-shadow:0 0 0 2px rgb(246 192 0 / .2)}.ez-timeline-item.danger::before{background:var(--ez-vehicle-breakdown);box-shadow:0 0 0 2px rgb(241 65 108 / .2)}.notification-badge{position:relative}.notification-badge .badge-count{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;font-size:.65rem;font-weight:600;line-height:18px;text-align:center;border-radius:9px;background:var(--ez-vehicle-breakdown);color:#fff}.notification-badge .badge-dot{position:absolute;top:0;right:0;width:8px;height:8px;border-radius:50%;background:var(--ez-vehicle-breakdown);border:2px solid #fff}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--ez-radius-sm)}.skeleton-text{height:1em;margin-bottom:.5em}.skeleton-title{height:1.5em;width:60%;margin-bottom:1em}.skeleton-circle{border-radius:50%}.skeleton-rect{border-radius:var(--ez-radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}[data-bs-theme="dark"] .skeleton{background:linear-gradient(90deg,#2b2b40 25%,#3b3b50 50%,#2b2b40 75%);background-size:200% 100%}select.is-invalid+.select2-container .select2-selection,select.is-invalid~.select2-container .select2-selection{border-color:#F8285A!important}.select2-container.is-invalid .select2-selection{border-color:#F8285A!important}select.is-invalid+.select2-container .select2-selection:focus,select.is-invalid~.select2-container .select2-selection:focus,.select2-container.is-invalid .select2-selection:focus{border-color:#F8285A!important;box-shadow:0 0 0 .25rem rgb(248 40 90 / .25)!important}.select2-container.is-invalid .select2-selection--multiple{border-color:#F8285A!important}.daterangepicker.show-calendar .ranges{height:auto!important;min-height:auto!important}.daterangepicker .ranges ul{max-height:260px!important;overflow:auto}.daterangepicker .drp-calendar{vertical-align:top}.daterangepicker .drp-buttons{padding:.75rem 1.25rem}.ez_ft-dashboard{content:url(../../media/menu-icons/dashboard.svg);height:20px}.ez_ft-diamonds{content:url(../../media/menu-icons/diamonds.svg);height:20px}.ez_ft-driver{content:url(../../media/menu-icons/driver.svg);height:20px}.ez_ft-fleet{content:url(../../media/menu-icons/fleet.svg);height:20px}.ez_ft-fuel{content:url(../../media/menu-icons/fuel.svg);height:20px}.ez_ft-note{content:url(../../media/menu-icons/note.svg);height:20px}.ez_ft-profile-circle{content:url(../../media/menu-icons/profile-circle.svg);height:20px}.ez_ft-report{content:url(../../media/menu-icons/report.svg);height:20px}.ez_ft-rocket{content:url(../../media/menu-icons/rocket.svg);height:20px}.ez_ft-security-user{content:url(../../media/menu-icons/security-user.svg);height:20px}.ez_ft-setting{content:url(../../media/menu-icons/setting.svg);height:20px}.ez_ft-trip{content:url(../../media/menu-icons/trip.svg);height:20px}.ez_ft-tyre{content:url(../../media/menu-icons/tyre.svg);height:20px}.ez_ft-users{content:url(../../media/menu-icons/users.svg);height:20px}.ez_ft_axle-CRR0204PA{content:url(../../media/axle/car_rear_drive.svg);height:20px}.ez_ft_axle-CRF0204PB{content:url(../../media/axle/car_frnt_drive.svg);height:20px}.ez_ft_axle-CRA0204PC{content:url(../../media/axle/car_all_drive.svg);height:20px}.ez_ft_axle-CRD0206GD{content:url(../../media/axle/dual_rear_pickup.svg);height:20px}.ez_ft_axle-TRT0308GE{content:url(../../media/axle/6x2_tag_truck.svg);height:20px}.ez_ft_axle-TRP0308GF{content:url(../../media/axle/6x2_pusher_truck.svg);height:20px}.ez_ft_axle-TRT0310GH{content:url(../../media/axle/6x4_twin_drive.svg);height:20px}.ez_ft_axle-TRR0412HI{content:url(../../media/axle/8x2_truck.svg);height:20px}.ez_ft_axle-TRP0410HJ{content:url(../../media/axle/8x2_pusher_truck.svg);height:20px}.ez_ft_axle-TRH0412HK{content:url(../../media/axle/8x4_heavy_truck.svg);height:20px}.ez_ft_axle-TR120514HL{content:url(../../media/axle/12_wheel_truck.svg);height:20px}.ez_ft_axle-TR140516HM{content:url(../../media/axle/14_wheel_truck.svg);height:20px}.ez_ft_axle-TR160618HN{content:url(../../media/axle/16_wheel_truck.svg);height:20px}.ez_ft_axle-BDD0308PO{content:url(../../media/axle/dual_stear_bus.svg);height:20px}.ez_ft_axle-BTA0308PP{content:url(../../media/axle/tag_axle_bus.svg);height:20px}.ez_ft_axle-BLC0410PQ{content:url(../../media/axle/luxury_coach.svg);height:20px}.select-icon-img-veh-axle-wrapper{display:inline-block;position:relative;overflow:visible}.select-icon-img-veh-axle{width:20px;height:20px;transition:transform 0.3s ease,box-shadow 0.3s ease,z-index 0.3s ease;object-fit:contain;background-color:#fff0;border-radius:4px;transform-origin:center center}.select-icon-img-veh-axle:hover{transform:scale(3.5);background-color:#fff;box-shadow:0 4px 12px rgb(0 0 0 / .2);z-index:9999;position:relative}