*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}*{-webkit-tap-highlight-color:transparent}button,a,[role=button]{touch-action:manipulation}img,video{max-width:100%;height:auto}:root{--font-ar: "Tajawal", sans-serif;--font-en: "Outfit", sans-serif;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--nav-height: 64px;--topbar-height: 48px}html,body,#root{height:100%;height:100vh;height:100dvh;font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body[data-lang=en]{font-family:var(--font-en)}body{overflow-x:hidden;overscroll-behavior-y:none;-webkit-text-size-adjust:100%;padding-top:0!important}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#ff5722,#ff9800);border-radius:8px}.app-container{display:flex;height:100vh;height:100dvh;overflow:hidden;width:100%}.app-sidebar{width:230px;flex-shrink:0;display:flex;flex-direction:column;overflow-y:auto}.app-main{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.mobile-topbar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:8px 14px;padding-top:max(12px,calc(env(safe-area-inset-top,12px) + 4px));background:rgba(255,255,255,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.04);z-index:10}.scroll-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}@media (max-width: 859px){.scroll-content{padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + 16px)}}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(0,0,0,.04);box-shadow:0 -4px 20px rgba(0,0,0,.06);z-index:99;padding-bottom:max(12px,calc(env(safe-area-inset-bottom,12px) + 4px))}.mobile-nav button{flex:1;padding:8px 2px 6px;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;font-family:inherit;min-width:0;position:relative}.mobile-nav button .nav-icon{font-size:22px;transition:transform .2s}.mobile-nav button .nav-label{font-size:9px}.mobile-nav button .nav-indicator{position:absolute;top:0;left:50%;transform:translate(-50%);width:20px;height:3px;background:#ff5722;border-radius:0 0 3px 3px}.mobile-nav button .nav-badge{position:absolute;top:2px;right:20%;background:linear-gradient(135deg,#ff5722,#e64a19);color:#fff;border-radius:20px;min-width:16px;height:16px;font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 3px}.more-menu{position:fixed;bottom:calc(70px + env(safe-area-inset-bottom,0px));left:10px;right:10px;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 -8px 40px rgba(0,0,0,.12);border:1px solid rgba(0,0,0,.04);z-index:98;padding:12px 8px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;animation:slideUp .25s ease}.more-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:97}.sticky-back{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:none;border-bottom:1px solid rgba(0,0,0,.04);width:100%;padding:10px 16px;display:flex;align-items:center;gap:8px;font-family:inherit;cursor:pointer;font-size:14px;font-weight:700;color:#0f1e36}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:1000;display:flex;align-items:flex-end;justify-content:center}.modal-sheet{width:100%;max-width:500px;max-height:90vh;max-height:90dvh;background:#fff;border-radius:24px 24px 0 0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--safe-bottom) + 16px);animation:slideUp .3s cubic-bezier(.22,1,.36,1)}@media (min-width: 860px){.modal-overlay{align-items:center}.modal-sheet{border-radius:24px;max-height:85vh}}.glass-card{background:rgba(255,255,255,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.3);border-radius:20px;box-shadow:0 4px 24px rgba(0,0,0,.06)}input,select,textarea{font-family:inherit;font-size:16px!important;-webkit-appearance:none;appearance:none}input[type=date],input[type=time],input[type=number],input[type=tel],input[type=email],input[type=password]{font-size:16px!important}input,button,select,textarea{font-family:inherit}input:focus,select:focus,textarea:focus{border-color:#ff5722!important;outline:none;box-shadow:0 0 0 4px rgba(255,87,34,.07),0 2px 8px rgba(255,87,34,.05)!important}button,a,[role=button]{min-height:44px}.btn-sm{min-height:32px}.btn-xs{min-height:28px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes up{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes dot{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes glowPulse{0%,to{box-shadow:0 0 rgba(255,87,34,.2)}50%{box-shadow:0 0 0 10px rgba(255,87,34,0)}}@keyframes cartBounce{0%{transform:scale(1)}30%{transform:scale(1.3) rotate(-8deg)}60%{transform:scale(1.15) rotate(4deg)}to{transform:scale(1)}}@keyframes ping{0%{box-shadow:0 0 rgba(255,87,34,.4)}70%{box-shadow:0 0 0 14px rgba(255,87,34,0)}to{box-shadow:0 0 rgba(255,87,34,0)}}@keyframes driverPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes nearestPulse{0%,to{box-shadow:0 0 0 6px rgba(255,107,53,.35),0 6px 24px rgba(0,0,0,.4)}50%{box-shadow:0 0 0 16px rgba(255,107,53,.1),0 6px 24px rgba(0,0,0,.4)}}@keyframes userPulse{0%,to{box-shadow:0 0 0 6px rgba(59,130,246,.3),0 2px 8px rgba(0,0,0,.3)}50%{box-shadow:0 0 0 12px rgba(59,130,246,.1),0 2px 8px rgba(0,0,0,.3)}}.up{animation:up .35s cubic-bezier(.22,1,.36,1) both}.hov{transition:all .3s cubic-bezier(.22,1,.36,1)}.hov:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.07),0 4px 12px rgba(0,0,0,.04)!important}.btn{transition:all .2s cubic-bezier(.22,1,.36,1);cursor:pointer}.btn:active{transform:scale(.97)}.nav{transition:all .2s cubic-bezier(.22,1,.36,1);border-radius:13px!important}.nav:hover{background:rgba(255,87,34,.06)!important;color:#ff5722!important}.glass{background:rgba(255,255,255,.78)!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border:1px solid rgba(255,255,255,.5)!important}.skeleton{background:linear-gradient(90deg,#f0f0f5 25%,#e8e8f0,#f0f0f5 75%);background-size:200% 100%;animation:shimmer 1.5s ease infinite;border-radius:8px}.safe-bottom{padding-bottom:max(16px,env(safe-area-inset-bottom))}.pulse-dot{width:14px;height:14px;background:#ff5722;border-radius:50%;border:3px solid #fff;box-shadow:0 0 rgba(255,87,34,.4);animation:ping 1.5s infinite}.leaflet-container{font-family:var(--font)!important}.leaflet-popup-content-wrapper{border-radius:18px!important;box-shadow:0 12px 40px rgba(0,0,0,.12)!important}.leaflet-popup-content{margin:12px 16px!important;font-family:var(--font)!important}@media (max-width: 860px){body{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}.hov:hover{transform:none!important;box-shadow:none!important}[style*=overflowY],[style*=overflow-y]{-webkit-overflow-scrolling:touch}}@media (display-mode: standalone){body{padding-top:env(safe-area-inset-top,0px)!important}.mobile-topbar{padding-top:calc(env(safe-area-inset-top,12px) + 8px)}}@supports (-webkit-touch-callout: none){.scroll-content{-webkit-overflow-scrolling:touch}.app-container{position:fixed;width:100%;height:100%}}body.dark-mode{color-scheme:dark}@media print{.mobile-nav,.mobile-topbar,.app-sidebar{display:none!important}.scroll-content{padding-bottom:0!important;overflow:visible!important}}@media (orientation: landscape) and (max-height: 500px){.mobile-nav{height:auto;padding-bottom:4px}.mobile-nav button{padding:4px 2px 2px}.mobile-nav button .nav-icon{font-size:18px}.mobile-nav button .nav-label{display:none}.scroll-content{padding-bottom:calc(50px + var(--safe-bottom))}}
