/* Recodet Move v7 — Taxi drivers and inventory-code map modes */
body.moveBoltActive .moveBoltShell.taxiMode .moveBoltMap .leaflet-control-attribution{margin-bottom:88px!important}
.moveBoltDriverPin{position:relative;width:44px;height:44px;border:3px solid #fff;border-radius:15px;background:#151515;color:#f2c84e;display:grid;place-items:center;box-shadow:0 8px 20px rgba(0,0,0,.25);transition:transform .18s,border-color .18s}
.moveBoltDriverPin>span{width:25px;height:25px;display:grid;place-items:center}.moveBoltDriverPin svg{width:24px;height:24px}.moveBoltDriverPin>i{position:absolute;right:-1px;top:-1px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:#22c55e}.moveBoltDriverPin.busy{background:#8b8b88;color:#fff;opacity:.82}.moveBoltDriverPin.selected{border-color:#f2c84e;transform:scale(1.13);box-shadow:0 0 0 5px rgba(242,200,78,.2),0 10px 22px rgba(0,0,0,.28)}
.moveBoltPlacePin.destination{background:#151515;color:#f2c84e;border-radius:50% 50% 50% 10px;transform:rotate(-45deg)}.moveBoltPlacePin.destination svg{transform:rotate(45deg)}
.moveBoltFallbackDrivers{position:absolute;inset:0}.moveBoltFallbackDriver{position:absolute;left:var(--driver-x);top:var(--driver-y);width:39px;height:39px;border:3px solid #fff;border-radius:13px;background:#151515;color:#f2c84e;display:grid;place-items:center;box-shadow:0 8px 18px rgba(0,0,0,.22);transform:translate(-50%,-50%);animation:moveDriverArrive .24s ease both;animation-delay:var(--driver-delay)}.moveBoltFallbackDriver svg{width:21px;height:21px}.moveBoltFallbackDriver.busy{background:#8c8c89;color:#fff;opacity:.8}@keyframes moveDriverArrive{from{opacity:0;transform:translate(-50%,-50%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.moveTaxiSheet{position:absolute;z-index:980;left:8px;right:8px;bottom:88px;max-height:58%;overflow:auto;padding:8px 14px 14px;border-radius:25px 25px 20px 20px;background:#fff;color:#151515;box-shadow:0 -5px 30px rgba(0,0,0,.22)}.moveTaxiSheet.compact{max-height:40%}.moveTaxiHandle{width:42px;height:4px;margin:0 auto 9px;border-radius:999px;background:#d0d0cd}.moveTaxiSheet>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.moveTaxiSheet>header>div{min-width:0;display:grid;gap:2px}.moveTaxiSheet>header small{color:#777;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.moveTaxiSheet>header strong{font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.moveTaxiSheet>header>button{width:35px;height:35px;border:0;border-radius:50%;background:#f0f0ed;color:#151515;font-size:22px}.moveTaxiLocationRow,.moveTaxiDestination{min-height:58px;padding:8px 10px;border:1px solid #e5e5e1;border-radius:15px;display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center}.moveTaxiLocationRow{margin-bottom:7px}.moveTaxiLocationRow>span,.moveTaxiDestination>span{width:29px;height:29px;border-radius:50%;background:#151515;color:#f2c84e;display:grid;place-items:center;font-size:11px;font-weight:900}.moveTaxiLocationRow>div,.moveTaxiDestination>div{min-width:0;display:grid;gap:2px}.moveTaxiLocationRow small,.moveTaxiDestination small{color:#777;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.moveTaxiLocationRow strong{font-size:13px}.moveTaxiDestination input{width:100%;border:0;outline:0;background:transparent;color:#151515;font:inherit;font-size:14px;font-weight:800}.moveTaxiDestination input::placeholder{color:#999}.moveTaxiVehicles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:9px 0}.moveTaxiVehicles label{position:relative}.moveTaxiVehicles input{position:absolute;opacity:0}.moveTaxiVehicles span{min-height:68px;padding:7px 3px;border:1px solid #e6e6e2;border-radius:14px;background:#fff;display:grid;justify-items:center;align-content:center;gap:2px;text-align:center}.moveTaxiVehicles svg{width:20px;height:20px}.moveTaxiVehicles strong{font-size:10px}.moveTaxiVehicles small{font-size:8px;color:#777}.moveTaxiVehicles label:has(input:checked) span{border-color:#151515;background:#151515;color:#fff}.moveTaxiVehicles label:has(input:checked) svg{color:#f2c84e}.moveTaxiVehicles label:has(input:checked) small{color:#bbb}.moveTaxiPrimary{width:100%;min-height:52px;border:0;border-radius:16px;background:#151515;color:#fff;font-size:13px;font-weight:900}.moveTaxiSecondary{width:100%;height:38px;margin-top:4px;border:0;background:transparent;color:#6c6c6c;font-size:11px;font-weight:850}.moveTaxiDriverCard{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border-radius:16px;background:#f3f3f0;margin-bottom:9px}.moveTaxiDriverCard>span{width:44px;height:44px;border-radius:14px;background:#151515;color:#f2c84e;display:grid;place-items:center}.moveTaxiDriverCard svg{width:23px;height:23px}.moveTaxiDriverCard>div{min-width:0;display:grid;gap:2px}.moveTaxiDriverCard strong{font-size:13px}.moveTaxiDriverCard small{font-size:9px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.moveTaxiDriverCard>b{font-size:9px;color:#177c38}.moveTaxiDriverCard.matched>b{color:#8b6a10}.moveTaxiNotice{margin:3px 0;color:#777;font-size:11px}.moveTaxiRouteSummary{display:grid;gap:6px;margin-bottom:9px}.moveTaxiRouteSummary>div{display:grid;grid-template-columns:29px minmax(0,1fr);gap:9px;align-items:center}.moveTaxiRouteSummary>div>span{width:29px;height:29px;border-radius:50%;background:#151515;color:#f2c84e;display:grid;place-items:center;font-size:10px;font-weight:900}.moveTaxiRouteSummary p{margin:0;min-width:0;display:grid;gap:1px}.moveTaxiRouteSummary small{color:#777;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.moveTaxiRouteSummary strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.moveTaxiMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:9px}.moveTaxiMetrics>span{padding:8px 5px;border-radius:13px;background:#f3f3f0;text-align:center}.moveTaxiMetrics small{display:block;color:#777;font-size:8px}.moveTaxiMetrics strong{display:block;margin-top:2px;font-size:11px}
body.moveBoltActive .moduleBottomBar[data-module="transport"] button.active .tabIcon{color:#151515}
@media(max-width:390px){.moveTaxiSheet{left:6px;right:6px;bottom:83px;max-height:61%;padding:7px 10px 11px;border-radius:22px 22px 18px 18px}.moveTaxiVehicles{gap:4px}.moveTaxiVehicles span{min-height:63px}.moveTaxiSheet>header strong{font-size:16px}}


/* V8 live driver layer */
.moveBoltShell.taxiMode .leaflet-marker-icon{transition:transform 1.15s linear!important;will-change:transform}
.moveBoltDriverPin{position:relative}
.moveBoltDriverPin>span{display:grid;place-items:center;transform:rotate(var(--driver-heading,0deg));transition:transform .25s ease}
.moveBoltDriverPin>i{position:absolute;right:-2px;bottom:-1px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:#19a955;box-shadow:0 0 0 0 rgba(25,169,85,.42);animation:moveDriverLivePulse 1.7s infinite}
.moveBoltDriverPin.busy>i{background:#f0ad32;box-shadow:0 0 0 0 rgba(240,173,50,.35)}
.moveBoltDriverPin.selected>i{background:#f2c84e}
@keyframes moveDriverLivePulse{0%{box-shadow:0 0 0 0 currentColor}70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}
.moveBoltSearch small #moveTaxiLiveCount{display:inline-flex;align-items:center;gap:5px}
.moveBoltSearch small #moveTaxiLiveCount:before{content:"";width:7px;height:7px;border-radius:50%;background:#20ad58;box-shadow:0 0 0 4px rgba(32,173,88,.12)}
