@import"https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Lato:wght@700;900&display=swap";html,body{margin:0;padding:0}#root{min-height:100vh}html{background:var(--v2-fond, #F2F7F7);color-scheme:light}html[data-mode=sombre],html[data-theme=dark]{color-scheme:dark}body{background:inherit}:root{--d4m-teal: #00C4A7;--d4m-ring: rgba(0, 196, 167, .28);--d4m-tint: rgba(0, 196, 167, .08);--d4m-tint-2: rgba(0, 196, 167, .14);--d4m-shadow-sm: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .1);--d4m-shadow-md: 0 6px 18px rgba(16, 24, 40, .14), 0 2px 6px rgba(16, 24, 40, .08)}*{scrollbar-width:thin;scrollbar-color:rgba(128,128,128,.42) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#80808066;border-radius:8px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:var(--d4m-teal);background-clip:padding-box}*::-webkit-scrollbar-corner{background:transparent}html{scroll-behavior:smooth}button:not(:disabled),a[href],a[onclick],[role=button],[onclick],summary,select,label[for],[tabindex]:not([tabindex="-1"]),.btn,.nav-item,.nav-link,.tab,.tab-btn,.pill-tab,.seg,.seg-btn,.segment,.filter-btn,.chip-btn,.action-btn,.dispatch-btn,.icon-btn,.btn-icon,.menu-item,.clickable,.is-clickable,.link{cursor:pointer}button:disabled,[aria-disabled=true],.btn:disabled,.btn.disabled,.is-disabled{cursor:not-allowed}button,[role=button],[onclick],a,summary,.btn,.action-btn,.dispatch-btn,.nav-item,.nav-link,.tab,.tab-btn,.pill-tab,.pill,.chip,.seg,.seg-btn,.segment,.filter-btn,.icon-btn,.btn-icon,.menu-item,.list-item,.clickable,.avatar,.card{transition:transform .12s ease,box-shadow .16s ease,filter .16s ease,background-color .15s ease,color .15s ease,border-color .15s ease,opacity .15s ease}button:not(:disabled):hover,[role=button]:not([aria-disabled=true]):hover,.btn:not(:disabled):hover,.action-btn:hover,.dispatch-btn:hover,.seg-btn:hover,.filter-btn:hover,.chip-btn:hover{transform:translateY(-1px);box-shadow:var(--d4m-shadow-md);filter:brightness(1.05) saturate(1.02)}button:not(:disabled):active,[role=button]:not([aria-disabled=true]):active,.btn:not(:disabled):active,.action-btn:active,.dispatch-btn:active,.seg-btn:active,.filter-btn:active,.chip-btn:active{transform:translateY(1px);filter:brightness(.97);box-shadow:var(--d4m-shadow-sm)}button:disabled,.btn:disabled,.btn.disabled{opacity:.55;filter:none}.nav-item:hover,.nav-link:hover,.menu-item:hover{background:var(--d4m-tint)}.nav-item:not(.active):hover,.nav-link:not(.active):hover{transform:translate(2px)}.tab:hover,.tab-btn:hover,.pill-tab:hover,.seg:hover,.segment:hover{filter:brightness(1.06);background:var(--d4m-tint)}.chip[onclick]:hover,.pill[onclick]:hover,.chip.clickable:hover,.pill.clickable:hover{filter:brightness(1.06);transform:translateY(-1px)}li[onclick]:hover,.list-item:hover,td[onclick]:hover,.cell[onclick]:hover,.clickable:not(button):not(.btn):not(.card):not(.chip):not(.pill):hover{background:var(--d4m-tint)}.icon-btn:hover,.btn-icon:hover,button.icon:hover,.avatar[onclick]:hover,.avatar.clickable:hover{transform:scale(1.08);filter:brightness(1.05)}.icon-btn:active,.btn-icon:active,button.icon:active{transform:scale(.95)}a:not(.btn):not(.nav-item):not(.nav-link):not(.tab):not(.tab-btn):not([role=button]):hover{opacity:.82;text-decoration-thickness:2px}.card,.kpi,.kpi-card,.stat-card,.ride-card,.vehicle-card,.tile,.metric-card{box-shadow:0 1px 2px #10182812,0 8px 22px #1018281a}.kpi:hover,.kpi-card:hover,.stat-card:hover,.ride-card:hover,.vehicle-card:hover,.tile:hover,.metric-card:hover{transform:translateY(-2px);box-shadow:var(--d4m-shadow-md)}.card:hover{box-shadow:var(--d4m-shadow-md)}.card[onclick],[role=button].card,.card.clickable{cursor:pointer}.card[onclick]:hover,[role=button].card:hover,.card.clickable:hover{transform:translateY(-2px)}tbody tr{transition:background-color .12s ease}tbody tr:hover{background:var(--d4m-tint)}tbody tr[onclick],tbody tr.clickable{cursor:pointer}input:not([type=checkbox]):not([type=radio]):not([type=range]):focus,select:focus,textarea:focus{outline:none;border-color:var(--d4m-teal);box-shadow:0 0 0 3px var(--d4m-ring)}input:not([type=checkbox]):not([type=radio]):not([type=range]):hover,select:hover,textarea:hover{border-color:#00c4a78c}:focus-visible{outline:2px solid rgba(0,196,167,.7);outline-offset:2px;border-radius:4px}@keyframes d4m-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.d4m-skeleton{background:linear-gradient(90deg,#94a3b824 25%,#94a3b84d 37%,#94a3b824 63%);background-size:200% 100%;animation:d4m-shimmer 1.4s ease-in-out infinite;border-radius:8px}.d4m-skeleton-text{height:12px;margin:8px 0}.d4m-theme-toggle{position:fixed;right:16px;bottom:16px;z-index:900;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:19px;line-height:1;cursor:pointer;border:1px solid rgba(128,128,128,.3);background:#ffffffeb;box-shadow:0 6px 18px #1018282e;transition:transform .12s ease,box-shadow .16s ease,background-color .15s ease,border-color .15s ease}:root[data-theme=dark] .d4m-theme-toggle{background:#131c2eeb;border-color:#ffffff29}.d4m-theme-toggle:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 12px 30px #10182847}.d4m-theme-toggle:active{transform:translateY(0) scale(.97)}@media (max-width: 640px){.d4m-theme-toggle{bottom:88px;width:40px;height:40px;font-size:17px}}.d4m-theme-toggle{bottom:calc(16px + var(--ch2-pile, 0px))}@media (max-width: 640px){.d4m-theme-toggle{bottom:calc(88px + var(--ch2-pile, 0px))}}:root:has(.ch2) .d4m-theme-toggle,:root:has(.fl2) .d4m-theme-toggle{display:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}table{max-width:100%}table th,table td{overflow-wrap:break-word}@media (max-width: 900px){table th,table td{word-break:break-word}}.status-pill,.badge,[class*=status-],td button,th button,td .btn,td a.btn{white-space:nowrap}@media (max-width: 900px){.d4m-stack{display:block;width:100%;min-width:0;border-collapse:collapse}.d4m-stack tbody,.d4m-stack tr,.d4m-stack td{display:block;width:auto}.d4m-stack:has(td) thead{display:none}.d4m-stack tr{border:1px solid var(--border, rgba(16, 24, 40, .12));border-radius:12px;margin:0 0 10px;padding:6px 12px;background:inherit}.d4m-stack td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:7px 0;border:0;text-align:right;white-space:normal}.d4m-stack tr td+td{border-top:1px solid var(--border, rgba(16, 24, 40, .08))}.d4m-stack td:before{content:attr(data-label);flex:0 0 40%;text-align:left;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;opacity:.6}.d4m-stack td[data-full]{display:block;text-align:left}.d4m-stack td[data-full]:before{content:none}.d4m-stack td:empty{display:none}}#root{height:100%}.login-scope,.login-scope *,.login-scope *:before,.login-scope *:after{margin:0;padding:0;box-sizing:border-box}.login-scope{--blue:#4A7FC1;--blue2:#3A6BAD;--blue-dim:rgba(74,127,193,.12);--green:#10B981;--red:#E05555;--border:#DDE6F0;--border2:#C5D5E8;--bg:#f4f7fb;--bg2:#FFFFFF;--raised:#F7FAFD;--t1:#1A2B3C;--t2:#5A7A96;--t3:#9AB0C4;--font:"DM Sans",system-ui,sans-serif;min-height:100vh;font-family:var(--font)}:root[data-theme=dark] .login-scope{--border:#26324B;--border2:#33415F;--bg:#0B1220;--bg2:#131C2E;--raised:#1B2740;--t1:#E7ECF3;--t2:#9FB0C7;--t3:#6E7F98}.login-scope #loading{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:99}.login-scope .spin{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}.login-scope .page{display:none;min-height:100vh;flex-wrap:wrap}.login-scope .left{flex:1;background:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;position:relative;overflow:hidden}.login-scope .left:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:#ffffff0a;top:-150px;right:-150px}.login-scope .left:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:#ffffff0a;bottom:-80px;left:-80px}.login-scope .brand{position:relative;z-index:1;text-align:center;max-width:100%}.login-scope .brand-icon{width:88px;height:88px;background:#ffffff26;border-radius:22px;border:2px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;box-shadow:0 8px 32px #00000026}.login-scope .brand-name{font-family:Lato,sans-serif;font-size:36px;font-weight:900;color:#fff;letter-spacing:-.5px;margin-bottom:10px;overflow-wrap:break-word}.login-scope .brand-tag{font-size:14px;color:#ffffffa6;letter-spacing:.04em;line-height:1.6;overflow-wrap:break-word}.login-scope .left-footer{position:absolute;bottom:24px;font-size:11px;color:#ffffff4d;z-index:1}.login-scope .right{flex:1;background:var(--bg2);display:flex;align-items:safe center;justify-content:center;padding:40px}.login-scope .form-box{width:100%;max-width:380px}.login-scope .form-title{font-size:26px;font-weight:800;color:var(--t1);margin-bottom:6px}.login-scope .form-sub{font-size:14px;color:var(--t2);margin-bottom:32px}.login-scope .field{margin-bottom:16px}.login-scope .field label{display:block;font-size:12px;font-weight:700;color:var(--t1);margin-bottom:7px;letter-spacing:.01em}.login-scope .field input{width:100%;padding:13px 15px;border:1.5px solid var(--border);border-radius:11px;font-family:var(--font);font-size:14px;color:var(--t1);background:var(--raised);outline:none;transition:all .15s}.login-scope .field input:focus{border-color:var(--blue);background:var(--bg2);box-shadow:0 0 0 3px #4a7fc11a}.login-scope .field input::placeholder{color:var(--t3)}.login-scope .field input.err{border-color:var(--red);background:#e055551a}.login-scope .field input:-webkit-autofill,.login-scope .field input:-webkit-autofill:hover,.login-scope .field input:-webkit-autofill:focus,.login-scope .field input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--raised) inset!important;-webkit-text-fill-color:var(--t1)!important;caret-color:var(--t1);transition:background-color 9999s ease-in-out 0s}.login-scope .pw-wrap{position:relative}.login-scope .pw-eye{position:absolute;right:13px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--t3);font-size:15px;padding:4px}.login-scope .row{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.login-scope .remember{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--t2);cursor:pointer}.login-scope .remember input{width:15px;height:15px;accent-color:var(--blue);cursor:pointer}.login-scope .forgot{font-size:13px;color:var(--blue);font-weight:600;background:none;border:none;cursor:pointer;font-family:var(--font);padding:0}.login-scope .forgot:hover{text-decoration:underline}.login-scope .error{background:#e055551a;border:1px solid rgba(224,85,85,.2);border-radius:10px;padding:11px 14px;font-size:13px;color:var(--red);margin-bottom:16px;display:none}.login-scope .error.show{display:block}.login-scope .btn{width:100%;padding:15px;border-radius:12px;border:none;font-family:var(--font);font-size:15px;font-weight:700;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:9px}.login-scope .btn:active{transform:scale(.98)}.login-scope .btn-primary{background:var(--blue);color:#fff;box-shadow:0 4px 14px #4a7fc14d;margin-bottom:16px}.login-scope .btn-primary:hover{background:var(--blue2)}.login-scope .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-scope .divider{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--t3);margin-bottom:16px}.login-scope .divider:before,.login-scope .divider:after{content:"";flex:1;height:1px;background:var(--border)}.login-scope .social{display:flex;gap:10px}.login-scope .btn-social{flex:1;padding:12px;border-radius:11px;background:var(--raised);border:1.5px solid var(--border);font-family:var(--font);font-size:13px;font-weight:600;color:var(--t2);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:8px}.login-scope .btn-social:hover{border-color:var(--border2);color:var(--t1)}.login-scope .btn-social.apple{background:#111;border-color:#111;color:#fff}.login-scope .spinner{width:17px;height:17px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:none}.login-scope .spinner.show{display:block}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.login-scope .shake{animation:shake .35s ease}.login-scope .page.visible{display:flex}@media (max-width: 768px){.login-scope .page.visible{display:block}}@media (max-width: 768px){.login-scope{height:auto;min-height:100dvh;overflow-y:auto;background:var(--blue)}.login-scope .page{height:auto!important;min-height:100vh;min-height:100dvh}.login-scope .left{display:flex!important;flex:none!important;width:100%!important;min-height:auto!important;height:auto!important;padding:48px 24px 36px!important;padding-top:max(48px,env(safe-area-inset-top,48px))!important;justify-content:center!important;align-items:center!important}.login-scope .left-footer{display:none}.login-scope .brand-name{font-size:28px!important}.login-scope .brand-tag{font-size:13px!important}.login-scope .brand-icon{width:70px!important;height:70px!important;margin-bottom:16px!important}.login-scope .right{display:block!important;flex:none!important;width:100%!important;background:var(--bg2)!important;border-radius:24px 24px 0 0!important;padding:36px 24px calc(env(safe-area-inset-bottom,0px) + 32px)!important;min-height:60vh}.login-scope .form-box{width:100%!important;max-width:100%!important;margin:0!important}.login-scope input{font-size:16px!important}.login-scope .btn{font-size:16px!important;padding:15px!important}}.reset-scope{--blue:#4A7FC1;--blue2:#3A6BAD;--green:#10B981;--red:#E05555;--border:#DDE6F0;--t1:#1A2B3C;--t2:#5A7A96;--t3:#9AB0C4;--font:"DM Sans",system-ui,sans-serif;font-family:var(--font)}.reset-scope .page{display:flex;height:100vh;min-height:100dvh;background:var(--blue)}.reset-scope .left{flex:1;background:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;position:relative;overflow:hidden}.reset-scope .left:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:#ffffff0a;top:-150px;right:-150px}.reset-scope .left:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:#ffffff0a;bottom:-80px;left:-80px}.reset-scope .brand{position:relative;z-index:1;text-align:center}.reset-scope .brand-icon{width:88px;height:88px;background:#ffffff26;border-radius:22px;border:2px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;box-shadow:0 8px 32px #00000026}.reset-scope .brand-name{font-family:Lato,sans-serif;font-size:36px;font-weight:900;color:#fff;letter-spacing:-.5px;margin-bottom:10px}.reset-scope .brand-tag{font-size:14px;color:#ffffffa6;letter-spacing:.04em;line-height:1.6}.reset-scope .left-footer{position:absolute;bottom:24px;font-size:11px;color:#ffffff4d;z-index:1}.reset-scope .right{flex:1;background:#fff;display:flex;align-items:center;justify-content:center;padding:40px}.reset-scope .form-box{width:100%;max-width:380px}.reset-scope .form-title{font-size:26px;font-weight:800;color:var(--t1);margin-bottom:6px}.reset-scope .form-sub{font-size:14px;color:var(--t2);margin-bottom:32px}@media (max-width: 768px){.reset-scope .page{display:block!important;height:auto!important;min-height:100vh;min-height:100dvh}.reset-scope .left{display:flex!important;flex:none!important;width:100%!important;height:auto!important;min-height:auto!important;padding:44px 24px 32px!important;padding-top:max(44px,env(safe-area-inset-top,44px))!important}.reset-scope .left-footer{display:none}.reset-scope .brand-name{font-size:28px!important}.reset-scope .brand-tag{font-size:13px!important}.reset-scope .brand-icon{width:64px!important;height:64px!important;margin-bottom:14px!important;border-radius:18px!important}.reset-scope .right{display:block!important;flex:none!important;width:100%!important;background:#fff!important;border-radius:24px 24px 0 0!important;padding:32px 24px calc(env(safe-area-inset-bottom,0px) + 36px)!important;min-height:62dvh;box-shadow:0 -4px 24px #0000001f}.reset-scope .form-box{width:100%!important;max-width:100%!important;margin:0!important}.reset-scope .form-title{font-size:22px!important;margin-bottom:5px!important}.reset-scope .form-sub{font-size:14px!important;margin-bottom:24px!important}.reset-scope .field input{font-size:16px!important;padding:14px 15px!important}.reset-scope .btn{font-size:16px!important;padding:16px!important;min-height:52px}.reset-scope .strength-bar{height:5px!important;margin-top:10px!important}.reset-scope .strength-label{font-size:12px!important;margin-top:5px!important}.reset-scope .invalid-state{padding:12px 0!important}.reset-scope .invalid-icon{font-size:52px!important;margin-bottom:20px!important}}.reset-scope .field{margin-bottom:16px}.reset-scope .field label{display:block;font-size:12px;font-weight:700;color:var(--t1);margin-bottom:7px}.reset-scope .field input{width:100%;padding:13px 15px;border:1.5px solid var(--border);border-radius:11px;font-family:var(--font);font-size:14px;color:var(--t1);background:#f7fafd;outline:none;transition:all .15s}.reset-scope .field input:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #4a7fc11a}.reset-scope .field input::placeholder{color:var(--t3)}.reset-scope .field input.err{border-color:var(--red)}.reset-scope .pw-wrap{position:relative}.reset-scope .pw-eye{position:absolute;right:13px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--t3);font-size:15px;padding:4px}.reset-scope .strength-bar{height:4px;border-radius:2px;margin-top:8px;background:var(--border);transition:all .3s}.reset-scope .strength-label{font-size:11px;color:var(--t3);margin-top:4px}.reset-scope .alert{border-radius:10px;padding:11px 14px;font-size:13px;margin-bottom:16px;display:none}.reset-scope .alert.show{display:block}.reset-scope .alert.error{background:#fef2f2;border:1px solid rgba(224,85,85,.2);color:var(--red)}.reset-scope .alert.success{background:#f0fdf4;border:1px solid rgba(16,185,129,.2);color:#166534}.reset-scope .btn{width:100%;padding:15px;border-radius:12px;border:none;font-family:var(--font);font-size:15px;font-weight:700;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:9px}.reset-scope .btn:active{transform:scale(.98)}.reset-scope .btn-primary{background:var(--blue);color:#fff;box-shadow:0 4px 14px #4a7fc14d}.reset-scope .btn-primary:hover{background:var(--blue2)}.reset-scope .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.reset-scope .spinner{width:17px;height:17px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:none}.reset-scope .spinner.show{display:block}@keyframes spin{to{transform:rotate(360deg)}}.reset-scope .invalid-state{text-align:center;padding:20px 0}.reset-scope .invalid-icon{font-size:48px;margin-bottom:16px}
