@media(max-width:800px){body:has(.customer-portal:not(.hidden)){overflow:hidden}.customer-portal{display:block!important;position:relative;height:calc(100dvh - 66px);min-height:620px;background:#eef1f2}.customer-portal.hidden{display:none!important}.customer-map{position:absolute!important;inset:0 0 auto!important;width:100%!important;height:52%!important;min-height:330px;border-radius:0}.customer-map .eta-card{top:78px!important;bottom:auto!important;left:16px!important;right:auto!important;width:auto!important;border-radius:14px!important;padding:10px 14px!important}.city-switcher{top:18px}.booking-copy{position:absolute!important;z-index:700;left:0;right:0;bottom:0;width:100%!important;height:57%;min-height:430px;padding:0 20px 18px!important;background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -8px 28px #10243b1c;overflow-y:auto}.booking-copy:before{content:'';display:block;width:44px;height:5px;margin:10px auto 14px;border-radius:5px;background:#e3e5e7}.booking-copy>.hero-logo,.booking-copy>.eyebrow{display:none}.booking-copy>h1{font:800 25px Manrope!important;text-align:center;letter-spacing:-1px!important;margin:0 0 4px!important}.booking-copy>p{display:none}.booking-card{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.booking-card>label{display:none}.ride-types{display:grid!important;gap:4px!important;margin:12px 0!important}.ride-type{position:relative;display:grid!important;grid-template-columns:74px 1fr auto;grid-template-rows:auto auto;align-items:center;min-height:79px;padding:10px 12px!important;border:2px solid transparent!important;border-radius:15px!important;background:#fff!important;text-align:left}.ride-type:before{content:'🚙';grid-row:1/3;display:grid;place-items:center;font-size:39px;filter:drop-shadow(0 5px 4px #18231f29)}.ride-type:nth-child(2):before{content:'🚘'}.ride-type:nth-child(3):before{content:'🚐'}.ride-type:nth-child(4):before{content:'🚗'}.ride-type.selected{border-color:#101827!important;background:#f9fafb!important}.ride-type b{grid-column:2;font-size:17px!important}.ride-type small{grid-column:2;color:#414a54!important;font-size:12px!important}.ride-type strong{grid-column:3;grid-row:1/3;font-size:16px}.ride-type em{position:absolute;right:12px;bottom:8px;color:#818891;font-size:10px;font-style:normal;text-decoration:line-through}.ride-type .fast{display:inline-block;width:max-content;margin-top:4px;padding:3px 7px;border-radius:5px;background:#1577ef;color:#fff;font-size:10px}.mobile-payment{display:grid;grid-template-columns:1fr auto;align-items:center;border-top:1px solid #eceef0;padding:12px 4px;font-size:14px}.mobile-payment b:before{content:'▣';margin-right:9px}.mobile-payment span{color:#8c949c}.booking-actions{display:grid;grid-template-columns:1fr 54px;gap:10px;position:sticky;bottom:0;background:white;padding-top:4px}.book-ride{height:54px!important;border-radius:13px!important;background:#050607!important;font-size:16px!important}.schedule-ride{border:0;border-radius:13px;background:#f0f2f3;font-size:22px}.safe{display:none!important}.mobile-route-bar{position:absolute;z-index:650;top:18px;left:14px;right:14px;display:grid;grid-template-columns:34px 1fr 16px 1fr;align-items:center;gap:6px;padding:11px;border-radius:15px;background:#fff;box-shadow:0 7px 25px #12251f30;font:700 12px DM Sans}.mobile-route-bar button{width:32px;height:32px;border:1px solid #e6e9eb;border-radius:9px;background:#fff;font-size:18px}.mobile-route-bar span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-route-bar i{font-style:normal;color:#727a82}.customer-map .city-switcher{top:76px}.leaflet-control-zoom{display:none}.role-bar{position:relative;z-index:900}}

.address-backdrop{position:fixed;inset:0;z-index:3000;display:grid;place-items:end center;background:#0b172266;backdrop-filter:blur(3px)}
.address-sheet{width:min(100%,540px);max-height:92dvh;overflow:auto;padding:16px 20px max(24px,env(safe-area-inset-bottom));border-radius:26px 26px 0 0;background:#fff;box-shadow:0 -15px 50px #07111b33}
.address-sheet-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;margin-bottom:18px}.address-sheet-head h2{margin:0;text-align:center;font:800 23px Manrope}.address-sheet-head button{width:42px;height:42px;border:0;border-radius:50%;background:#f1f3f4;font-size:22px}
.address-fields{position:relative;display:grid;gap:9px;padding-left:34px}.address-fields label{display:grid;padding:10px 14px;border-radius:12px;background:#f2f4f5}.address-fields small{font-size:9px;font-weight:800;letter-spacing:.08em;color:#747d85}.address-fields input{width:100%;padding:2px 0 0;border:0;outline:0;background:transparent;font:700 15px DM Sans;color:#101827}.address-line{position:absolute;left:12px;top:31px;width:2px;height:53px;background:#cad0d3}.address-dot{position:absolute;left:7px;width:12px;height:12px;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #101827}.pickup-dot{top:26px;background:#11b67f}.destination-dot{top:83px;border-radius:2px;background:#101827}
.use-location,.saved-place{width:100%;display:grid;grid-template-columns:46px 1fr;grid-template-rows:auto auto;align-items:center;text-align:left;border:0;border-bottom:1px solid #eceff0;background:#fff;padding:14px 4px}.use-location span,.saved-place span{grid-row:1/3;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#edf8f4;color:#087e5b;font-size:18px}.use-location b,.saved-place b{font-size:14px}.use-location small,.saved-place small{color:#808890;font-size:11px}.saved-title{margin:20px 4px 2px;font-size:10px;font-weight:800;letter-spacing:.1em;color:#7d858d}.confirm-address{position:sticky;bottom:0;width:100%;height:54px;margin-top:18px;border:0;border-radius:13px;background:#101827;color:#fff;font:800 16px Manrope;box-shadow:0 -10px 20px #fff}.address-open{overflow:hidden}
.mobile-route-bar .route-place{width:auto;height:auto;min-width:0;display:grid;text-align:left;border:0;padding:1px 2px;background:transparent}.mobile-route-bar .route-place small{font-size:8px;color:#7d858d;letter-spacing:.08em}.mobile-route-bar .route-place b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.mobile-route-bar .route-swap{border:0;background:#f1f4f3;font-size:16px}
