.ride-booking{--ride-ink:#17212b;--ride-orange:#f47619;overflow:clip!important;background:#f4f5f7!important;color:var(--ride-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.ride-booking button,.ride-booking input,.ride-booking select{-webkit-tap-highlight-color:transparent}.ride-booking :is(button,input,select,textarea):focus-visible{outline:3px solid #f9ac68;outline-offset:3px}.ride-booking-header{box-shadow:none!important;background:#fff!important;border-bottom:1px solid #e9ebee}.ride-booking-layout{display:grid;grid-template-areas:"map" "panel"}.ride-booking-map{grid-area:map;position:relative;height:clamp(190px,29dvh,270px);overflow:hidden;background:#e4e9e7}.ride-booking-map .maplibregl-ctrl-attrib{font-size:9px;max-width:80%}.ride-booking-map .maplibregl-ctrl-attrib a{font-size:9px}.ride-booking-map .maplibregl-ctrl-bottom-left,.ride-booking-map .maplibregl-ctrl-bottom-right{bottom:18px}.ride-booking[data-estimated=true] .ride-booking-map{height:190px}.ride-booking-panel{grid-area:panel;position:relative;z-index:10;margin-top:-16px;border-radius:24px 24px 0 0;background:#fff;padding:22px 20px 150px;box-shadow:0 -6px 24px #17212b09}.ride-booking-panel h1{font-size:26px;line-height:1.2;letter-spacing:-1px;font-weight:750}.ride-booking-eyebrow{margin-bottom:5px;color:#7b8490;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.ride-booking-status{display:flex;gap:7px;align-items:center;color:#68727e;font-size:11px;margin:12px 0 17px}.ride-booking-status>span:first-child{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#f47619}.ride-booking-route{border:1px solid #e3e7ec;background:linear-gradient(135deg,#fff,#f7f8fa);border-radius:18px;overflow:hidden;box-shadow:0 4px 16px #17212b05}.ride-booking-route:focus-within{border-color:#f47619;box-shadow:0 0 0 3px #fff0e3}.ride-booking-route-row{display:grid;grid-template-columns:12px minmax(0,1fr) 40px;align-items:center;gap:12px;padding:9px 12px;min-height:65px}.ride-booking-route-row+.ride-booking-route-row{border-top:1px solid #e6e9ed}.ride-booking-route-row input{font-size:16px!important;font-weight:600!important}.ride-booking-route-row small{display:block;margin-bottom:2px;color:#7b8490;font-size:10px;font-weight:600}.ride-booking-route-row>span:first-child{width:9px;height:9px;justify-self:center}.ride-booking-route-row button{min-height:40px}.ride-booking-route-row.destination{grid-template-columns:12px minmax(0,1fr)}.ride-booking-shortcuts{display:flex;gap:8px;margin:12px 0 18px}.ride-booking-shortcuts button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border:1px solid #e7e9ed;border-radius:10px;padding:0 12px;color:#53606e;font-size:12px;font-weight:600}.ride-booking-shortcuts button:disabled{opacity:.45}.ride-booking-payment{padding:15px 0;border-top:1px solid #edf0f2;border-bottom:1px solid #edf0f2}.ride-booking-payment legend{margin-bottom:9px;font-size:12px;font-weight:650;color:#52606d}.ride-booking-payment>div{display:flex;gap:7px}.ride-booking-payment button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:72px;padding:10px 6px;border:1px solid #dce2e8;border-radius:14px;color:#52606d;font-size:12px;font-weight:600;transition:background .15s,border-color .15s}.ride-booking-payment button svg{flex-shrink:0;width:21px;height:21px}.ride-booking-payment button:hover{background:#fff8f1;border-color:#ed8a43}.ride-booking-payment button[aria-pressed=true]{background:#fff7ef;border-color:#ed8a43;color:#91410a}.ride-booking-options{margin-top:20px;scroll-margin-top:80px}.ride-booking-options>div>p{color:#7b8490;font-weight:400}.ride-booking-options h2{font-size:16px;font-weight:700;letter-spacing:-.3px}.ride-booking-options .ride-choice{min-height:84px;padding:12px;gap:12px;grid-template-columns:52px minmax(0,1fr) auto;border-radius:14px;border-color:#e6e9ed;box-shadow:none}.ride-booking-options .ride-choice[aria-pressed=true]{background:#fff9f3;border:1.5px solid #ee8a43}.ride-booking-options .ride-choice-icon{display:block;width:52px;height:52px;flex:none;border:1px solid #f4dfc9;border-radius:14px;background:#fff7ef url(/media/icons/moto-real-v1.webp) 50%/100% no-repeat}.ride-booking-options .ride-choice[aria-pressed=true] .ride-choice-icon{border-color:#efb078;background-color:#ffebd8}.ride-map-moto-icon{display:block;width:100%;height:100%;border-radius:50%;background:url(/media/icons/moto-real-v1.webp) 50%/120% no-repeat}.ride-booking-trip-meta{display:flex;gap:14px;align-items:center;margin:8px 0 14px;color:#7b8490;font-size:12px}.ride-booking-trip-meta span{display:flex;align-items:center;gap:5px}.ride-booking-dock{position:fixed;bottom:0;left:0;right:0;z-index:80;border-top:1px solid #e9ebee;background:#fff;padding:12px 20px max(14px,env(safe-area-inset-bottom));box-shadow:0 -4px 24px #17212b08}.ride-booking-dock-inner{max-width:700px;margin:auto}.ride-booking-total{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:12px;color:#697582}.ride-booking-total strong{font-size:22px;line-height:1;letter-spacing:-.6px;font-weight:750;color:#17212b}.ride-booking-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:52px;border-radius:14px;background:#c64b0b;color:#fff;font-size:14px;font-weight:700;transition:background .15s}.ride-booking-submit:hover{background:#a83d08}.ride-booking-submit:disabled{background:#e7eaee;color:#8b95a0}.ride-booking-empty{padding:22px 0 4px;font-size:12px;line-height:1.7;color:#87909b}.ride-booking-origin{display:grid;grid-template-columns:1fr 85px;gap:10px;margin:12px 0;padding:14px;border:1px solid #e6e9ed;border-radius:14px}.ride-booking-origin label{font-size:11px;color:#68727e}.ride-booking-origin input{display:block;width:100%;height:44px;margin-top:4px;padding:0 10px;border:1px solid #e3e7eb;border-radius:8px;font-size:16px;color:#17212b}.ride-booking-origin button{grid-column:1/-1;min-height:42px;border-radius:9px;background:#f1f3f5;font-size:12px;font-weight:600}@media(min-width:768px) and (max-width:1279px){.ride-booking-panel{padding-left:max(24px,calc((100vw - 640px)/2));padding-right:max(24px,calc((100vw - 640px)/2))}}@media(min-width:1280px){.ride-booking-layout{grid-template-areas:"panel map";grid-template-columns:440px minmax(0,1fr);min-height:calc(100dvh - 64px)}.ride-booking-panel{margin:0;padding:32px 28px 20px;border-radius:0;height:calc(100dvh - 64px);overflow-y:auto;box-shadow:8px 0 32px #17212b08}.ride-booking-map{position:sticky;top:64px}.ride-booking-map,.ride-booking[data-estimated=true] .ride-booking-map{height:calc(100dvh - 64px)}.ride-booking-panel h1{font-size:30px}.ride-booking-dock{position:sticky;margin:22px -4px -20px;padding:16px 4px 22px;box-shadow:none}.ride-booking-new .ride-booking-map:after{content:"";position:absolute;pointer-events:none;inset:0;box-shadow:inset 12px 0 28px #17212b09}}@media(max-width:359px){.ride-booking-dock,.ride-booking-panel{padding-left:14px;padding-right:14px}.ride-booking-payment button{gap:4px;font-size:11px}}@media(prefers-reduced-motion:reduce){.ride-booking *{scroll-behavior:auto!important;transition:none!important}}.ride-booking-route-row{min-height:72px;padding:12px 14px}.ride-booking-route-row small{font-size:11px;color:#6e7b8b}.ride-booking-route-row button[aria-label="Atualizar localização atual"]{min-width:40px;min-height:40px;border:1px solid #e5eaf0;box-shadow:0 2px 6px #17212b06;color:#bd4d13;transition:background .15s}.ride-booking-route-row button[aria-label="Atualizar localização atual"]:hover{background:#fff3e8}.ride-booking-route-row button[aria-busy=true]{background:#fff3e8;opacity:.65;cursor:progress}.ride-booking-options .ride-choice{background:#fff;border:1px solid #e3e8ee;border-radius:16px;min-height:88px}.ride-booking-options .ride-choice[aria-pressed=true]{background:#fffaf5;border:1.5px solid #e99456;box-shadow:0 3px 12px #a9531608}.ride-booking-trip-meta{color:#647487;background:#f6f8fb;border-radius:10px;padding:10px 12px;margin-top:0}.ride-booking-payment{border-bottom:0}.ride-booking-new{height:100dvh;min-height:0!important;display:flex;flex-direction:column}.ride-booking-new .ride-booking-header{flex-shrink:0}.ride-booking-new .ride-booking-layout{display:block;position:relative;flex:1;min-height:0}.ride-booking-new .ride-booking-map{position:absolute;inset:0;height:100%!important}.ride-booking-new .ride-booking-map:after{display:none}.ride-booking-new .ride-booking-panel{position:absolute;bottom:max(12px,env(safe-area-inset-bottom));left:12px;right:12px;margin:0;padding:10px;border:1px solid #e4e9ed;border-radius:20px;height:auto;max-height:60%;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 8px 35px #17212b24;scrollbar-width:thin}.ride-booking-new .ride-booking-route{border-radius:13px;box-shadow:none}.ride-booking-new .ride-booking-route-row{min-height:56px;padding:6px 10px;gap:9px}.ride-booking-new .ride-booking-route-row small{font-size:10px}.ride-booking-new .ride-booking-route-row input{font-weight:500!important}.ride-booking-new .ride-booking-options{margin-top:12px}.ride-booking-new .ride-booking-options .ride-choice{min-height:64px;padding:8px 10px;border-radius:12px}.ride-booking-new .ride-booking-trip-meta{padding:7px 10px;margin-bottom:8px;font-size:11px}.ride-booking-new .ride-booking-payment{padding:10px 0}.ride-booking-new .ride-booking-payment button{flex-direction:row;min-height:42px;gap:6px;border-radius:10px;padding:6px}.ride-booking-new .ride-booking-payment button svg{width:17px;height:17px}.ride-booking-new .ride-booking-dock{position:sticky;bottom:-10px;margin:8px -2px -10px;padding:10px 2px;box-shadow:none;z-index:12}.ride-booking-new .ride-booking-total{display:none}.ride-booking-new .ride-booking-submit{min-height:44px;border-radius:11px;font-size:13px}.ride-booking-new .maplibregl-ctrl-bottom-right .maplibregl-ctrl-group{position:absolute;bottom:auto;top:65px;right:0}.ride-booking-new .maplibregl-ctrl-bottom-right{top:0;bottom:0;pointer-events:none}.ride-booking-new .maplibregl-ctrl-bottom-right .maplibregl-ctrl{pointer-events:auto}.ride-booking-new .maplibregl-ctrl-attrib{position:absolute;bottom:0;right:0}@media(min-width:1280px){.ride-booking-new .ride-booking-panel{top:18px;left:18px;right:auto;bottom:auto;width:370px;max-height:calc(100% - 36px);padding:14px}.ride-booking-new .ride-booking-dock{bottom:-14px;margin-bottom:-14px}}.ride-booking-options .ride-choice-icon.ride-choice-car{background-image:url(/media/icons/car-real-v1.webp)}.ride-map-car-icon{display:block;width:100%;height:100%;border-radius:50%;background:url(/media/icons/car-real-v1.webp) 50%/120% no-repeat}