body{overflow-x:hidden;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%}@supports (overflow-x: clip){body{overflow-x:clip}}img,video,canvas,iframe{max-width:100%}.fl-scrolls-hoverable,.table-responsive,.overflow-auto,.overflow-x-auto{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}@media (max-width: 991.98px){.page-content{width:100%!important;overflow-x:hidden!important}.content-wrapper{width:100%!important;min-width:0!important}.sidebar-main{position:fixed!important;top:0!important;bottom:0!important;width:290px!important;max-width:85vw!important;z-index:1060!important;transition:transform .3s cubic-bezier(.25,.8,.25,1),box-shadow .3s ease!important;box-shadow:none!important;overflow-y:auto!important;overscroll-behavior:contain}[dir=rtl] .sidebar-main{right:0!important;left:auto!important;transform:translate(105%)!important}[dir=ltr] .sidebar-main{left:0!important;right:auto!important;transform:translate(-105%)!important}body.sidebar-mobile-main .sidebar-main,[dir=rtl] body.sidebar-mobile-main .sidebar-main,[dir=ltr] body.sidebar-mobile-main .sidebar-main{transform:translate(0)!important;box-shadow:0 0 35px #0000008c!important}body.sidebar-mobile-main:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0f14a6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1055;cursor:pointer;animation:drawerBackdropIn .25s ease-out forwards}body.sidebar-mobile-main{overflow:hidden!important}@keyframes drawerBackdropIn{0%{opacity:0}to{opacity:1}}.sidebar-mobile-toggler{display:flex!important;padding:.85rem 1rem!important;background:#00000026!important;font-weight:700!important}.top-navbar-glass>.d-flex.d-md-none a,.top-navbar-glass>.d-flex.d-md-none button{min-width:44px!important;min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:.25rem!important;border-radius:10px!important;margin:0 2px!important}}@media (min-width: 768px) and (max-width: 991.98px){.top-navbar-glass.navbar-expand-md{flex-wrap:wrap}.top-navbar-glass.navbar-expand-md>.d-flex.d-md-none{display:flex!important}.top-navbar-glass.navbar-expand-md .navbar-collapse:not(.show):not(.collapsing){display:none!important}.top-navbar-glass.navbar-expand-md .navbar-collapse{flex-basis:100%}.top-navbar-glass .sidebar-main-toggle{display:none!important}}@media (max-width: 767.98px){.page-content{flex-direction:column!important}.content-wrapper{padding:0!important}.content{padding:.75rem .65rem!important}.card-header.header-elements-inline{flex-wrap:wrap;gap:.5rem}.card-header.header-elements-inline>.card-title{flex:1 1 12rem;min-width:0}.card-header .header-elements .badge{white-space:normal;text-align:start;line-height:1.5}.navbar.top-navbar-glass{padding:.5rem .75rem!important;min-height:56px}.navbar .brand-logo-badge{width:36px!important;height:36px!important}.navbar .brand-logo-badge i{font-size:20px!important}.navbar .d-flex.d-md-none button.navbar-toggler{background:#ffffff14!important;border:1px solid rgba(255,255,255,.12)!important}.dashboard-hero-banner{padding:1.15rem 1rem!important;border-radius:16px!important;margin-bottom:1rem!important}.dashboard-hero-banner .hero-avatar-ring{width:52px!important;height:52px!important}.dashboard-hero-banner h3{font-size:1.15rem!important}.quick-action-grid{grid-template-columns:1fr!important;gap:8px!important;margin-top:1rem!important}.quick-action-card{min-height:52px!important;padding:8px 12px!important}.quick-action-title{font-size:.85rem!important}.stat-card-glass{margin-bottom:.75rem!important}.card .table{margin-bottom:0}.table-responsive,.dataTables_wrapper{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;border-radius:12px}.table th,.table td{white-space:nowrap!important;padding:.65rem .75rem!important;font-size:.82rem!important}.dataTables_filter,.dataTables_length,.dt-buttons{float:none!important;text-align:right!important;width:100%!important;margin-bottom:.5rem!important}.dataTables_filter input{width:100%!important;margin:0!important}.dt-buttons{display:flex!important;flex-wrap:wrap!important;gap:4px!important}.dt-button{flex:1 1 auto!important;text-align:center!important}.form-control,.custom-select,.select2-selection{font-size:16px!important;min-height:44px!important;border-radius:10px!important}input.form-control,select.form-control,.custom-select,.input-group-text{height:44px!important}.btn:not(.btn-sm):not(.btn-xs){min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:.9rem!important;padding:.5rem 1rem!important;border-radius:10px!important}.nav-tabs{flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.nav-tabs .nav-link{white-space:nowrap}.modal-dialog{margin:0!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;max-width:100%!important;width:100%!important;transform:translateY(100%)!important;transition:transform .3s cubic-bezier(.16,1,.3,1)!important}.modal.show .modal-dialog{transform:translateY(0)!important}.modal-content{border-radius:22px 22px 0 0!important;max-height:85vh!important;overflow-y:auto!important;box-shadow:0 -10px 30px #00000059!important}.modal-content:before{content:"";display:block;width:44px;height:4px;background:#96969666;border-radius:4px;margin:10px auto 4px}}@media (max-width: 374.98px){.content{padding:.6rem .45rem!important}.card-body{padding:.85rem!important}.dashboard-hero-banner h3{font-size:1.05rem!important}}@media (max-width: 991.98px) and (max-height: 500px) and (orientation: landscape){.navbar.top-navbar-glass{min-height:48px!important;padding-top:.25rem!important;padding-bottom:.25rem!important}.modal-content{max-height:92vh!important}}@media (min-width: 768px) and (max-width: 1199.98px){.content{padding:1.25rem 1rem!important}.table th,.table td{padding:.65rem .85rem!important;font-size:.88rem!important}.table-responsive{overflow-x:auto!important}.bubble-scanner-container{display:flex!important;flex-direction:column!important;gap:15px!important}}@media (min-width: 768px) and (max-width: 991.98px){.quick-action-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.stat-cards-row>div[class*=col-]{flex:0 0 50%!important;max-width:50%!important}#fleet-live-map{height:60vh!important;min-height:480px!important}}@media (min-width: 992px) and (max-width: 1199.98px){.quick-action-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}#fleet-live-map{height:560px!important}}@media (min-width: 1200px){.content{padding:1.5rem 1.75rem!important;max-width:1800px;margin:0 auto}.quick-action-grid{grid-template-columns:repeat(3,1fr)!important;gap:12px!important}#fleet-live-map{height:680px!important}}@media (min-width: 1400px){.quick-action-grid{grid-template-columns:repeat(4,1fr)!important}}@media (hover: none) and (pointer: coarse){.form-control,.custom-select,.select2-selection,.dataTables_filter input{font-size:16px!important}.btn:not(.btn-sm):not(.btn-xs),.dropdown-item{min-height:44px}.dropdown-item{display:flex;align-items:center}}@supports (padding: max(0px)){.navbar.top-navbar-glass{padding-left:max(1.25rem,env(safe-area-inset-left))!important;padding-right:max(1.25rem,env(safe-area-inset-right))!important}@media (max-width: 767.98px){.navbar.top-navbar-glass{padding-left:max(.75rem,env(safe-area-inset-left))!important;padding-right:max(.75rem,env(safe-area-inset-right))!important}}.sidebar-main{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}@media (max-width: 767.98px){.content{padding-left:max(.65rem,env(safe-area-inset-left))!important;padding-right:max(.65rem,env(safe-area-inset-right))!important;padding-bottom:max(.75rem,env(safe-area-inset-bottom))!important}.modal-content{padding-bottom:env(safe-area-inset-bottom)}.map-floating-overlay{bottom:max(10px,env(safe-area-inset-bottom))!important}}}@media (max-width: 991.98px){.login-cover{padding:1.5rem .5rem!important;min-height:100vh!important}.login-cover .row{flex-direction:column!important}.login-cover .col-lg-6{text-align:center!important;margin-bottom:1.5rem!important}.login-cover .col-lg-6 .brand-hero-badge{display:inline-flex!important;margin:0 auto .75rem!important}.login-cover .col-lg-6 h1{font-size:1.85rem!important}.login-cover .col-lg-6 p.lead{font-size:.95rem!important;margin-bottom:1rem!important}.login-glass-card{border-radius:20px!important;box-shadow:0 15px 35px -10px #07825c1f,0 2px 8px #0000000a!important}.login-glass-card .card-body{padding:1.5rem 1.25rem!important}}@supports (min-height: 100dvh){@media (max-width: 991.98px){.login-cover{min-height:100dvh!important}}}.scanner-viewport-wrap{transition:all .3s ease}@media (max-width: 767.98px){.scanner-viewport-wrap{border-radius:12px!important;aspect-ratio:1 / 1!important;max-width:100%!important;margin:0 auto 12px!important}.scanner-frame{width:85%!important;height:85%!important}.scanner-controls-mobile{display:flex!important;gap:8px!important;width:100%!important;justify-content:center!important;margin-top:10px!important}.scanner-controls-mobile .btn{flex:1!important}.result-card-box{padding:18px 16px!important;border-radius:18px!important}.score-circle{width:76px!important;height:76px!important}}@media (max-width: 767.98px){#fleet-live-map{height:55vh!important;min-height:380px!important;border-radius:14px!important}.map-floating-overlay{position:fixed!important;bottom:10px!important;left:10px!important;right:10px!important;max-width:none!important;width:auto!important;z-index:1050!important;border-radius:16px!important;box-shadow:0 8px 30px #00000073!important}}@media (max-width: 767.98px){.attendance-btn-group{display:flex!important;width:100%!important;gap:4px!important}.attendance-btn-group .btn{flex:1!important;padding:.4rem .2rem!important;font-size:.75rem!important}.student-attendance-card{border-radius:14px!important;padding:10px 12px!important;margin-bottom:8px!important}}@media (prefers-reduced-motion: reduce){.sidebar-main,.modal-dialog,body.sidebar-mobile-main:after{transition:none!important;animation:none!important}}@media print{body.sidebar-mobile-main:after{display:none!important}}
