/* A focused ride flow: service, destination, route and vehicle. */
body.booking-page{background:#fff;color:#19231f}
.booking-app{max-width:1440px}.booking-header{border:0;height:calc(76px + env(safe-area-inset-top,0px));padding-inline:22px;position:relative}.booking-header .mode-badge{margin-left:auto}.booking-header-title{display:none;font-size:21px;line-height:1;margin:0;font-weight:800;letter-spacing:-.7px}.booking-header .icon-button{background:none;border:0}.booking-header .wordmark{font-size:23px;margin-right:0}.booking-progress{display:none}
body[data-stage=itinerary] .booking-header{justify-content:center}body[data-stage=itinerary] .booking-header-title{display:block}body[data-stage=itinerary] .booking-header .wordmark,body[data-stage=itinerary] .booking-header .mode-badge{display:none}body[data-stage=itinerary] #booking-back{position:absolute;left:14px}body[data-stage=vehicle] .booking-header,body[data-stage=pin] .booking-header,body[data-stage=payment] .booking-header{display:none}
.booking-hub.panel{max-width:650px;padding:35px 22px 40px;min-height:calc(100svh - 76px);display:flex;flex-direction:column}.hub-eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:700;color:#83928b;margin-bottom:13px}.booking-hub h1{font-size:clamp(29px,7.6vw,42px);font-weight:800;letter-spacing:-1.5px;line-height:1.14;margin:0 0 26px}.service-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-tile{border:1px solid #edf0ee;background:#f1f3f2;border-radius:19px;min-width:0;padding:10px 10px 19px;display:flex;flex-direction:column;align-items:center;color:#202923;transition:background .18s,transform .18s}.service-tile:hover{background:#e6f2e9;transform:translateY(-2px)}.service-visual{display:block;height:94px;width:100%;position:relative;margin-bottom:4px}.service-tile strong{font-size:18px;letter-spacing:-.6px;font-weight:700;white-space:nowrap}.service-tile>span:last-child{font-size:12px;color:#808a84;margin-top:6px}.service-calendar{position:absolute;bottom:9px;left:16%;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:#287f54;background:#fff;box-shadow:0 4px 12px #203e2b14}.service-calendar .ui-icon{width:25px;height:25px}
.hub-search{display:flex;align-items:center;gap:7px;border-radius:18px;background:#f0f3f1;padding:9px;margin-top:23px;min-height:69px}.hub-search button{border:0;display:flex;align-items:center;justify-content:center;gap:9px;background:none;color:#252e29;min-height:47px;min-width:0}.hub-search #hub-destination{flex:1;justify-content:flex-start;padding:0 6px;font-size:17px;letter-spacing:-.6px;font-weight:800;white-space:nowrap}.hub-search #hub-destination .ui-icon{height:23px;width:23px}.hub-search #hub-plan{background:#fff;border-radius:12px;padding:0 10px;font-size:11px;font-weight:700;gap:6px}.hub-search #hub-plan .ui-icon{width:17px;height:17px}.hub-note{font-size:12px;color:#839087;line-height:1.8;margin:22px 2px 32px}.hub-signature{margin-top:auto;padding-top:40px;display:flex;gap:11px;align-items:center}.hub-signature>span{width:32px;height:2px;background:#82b895}.hub-signature p{margin:0;font-size:10px;line-height:1.8;color:#9ba69f}.hub-signature strong{font-weight:500;color:#76857b}
.itinerary.panel{display:block;max-width:650px;margin-top:0;padding:12px 20px 30px}.route-fields{border:1.8px solid #2c885c;border-radius:17px;padding:4px 12px 4px 43px;box-shadow:none;background:#fff}.route-dots{top:28px;bottom:28px;left:18px}.route-dots i{width:11px;height:11px;border:3px solid #2c885c;background:#fff}.route-dots i:last-child{border-color:#173d2c;background:#fff}.route-dots b{background:#35765a;width:1.5px;margin:0}.field-wrap label{padding-top:9px;font-size:8px;letter-spacing:1.2px;color:#8da196}.field-wrap input{font-size:16px;height:44px;letter-spacing:-.4px;color:#212c25}.field-wrap input::placeholder{color:#87918a}.destination-field{border-color:#e9eeeb}.locate.icon-button{background:none;border:0;color:#2d8058;min-width:35px;height:35px;margin:0}.locate .ui-icon{width:21px;height:21px}
.gps-inline{display:flex;align-items:center;gap:7px;margin:13px 3px 0;color:#8a9b90;font-size:10px}.gps-inline small{margin-left:auto;font-size:9px;color:#91a397}.gps-inline .signal-dot{width:5px;height:5px}.gps-inline.has-position .signal-dot{background:#319360}.gps-inline:has(.connected){color:#397656}.feedback{font-size:10px;margin:7px 3px 17px;color:#7b8e80;line-height:1.65}.schedule-toggle{margin:12px 1px 14px;font-size:11px;min-height:30px}.schedule-toggle input{width:15px;height:15px}.schedule-toggle .ui-icon{width:18px;height:18px}.schedule-fields{padding:3px 0 17px}.schedule-fields label{font-size:11px;color:#6f8376}.schedule-fields input{border-radius:13px}
.suggestions{position:static;max-height:none;overflow:visible;margin:0;border:0;border-radius:0;box-shadow:none;background:none}.suggestions .place-result,.place-list .place-result{display:flex;align-items:center;gap:14px;width:100%;padding:17px 3px;min-height:78px;background:#fff;border:0;border-bottom:1px solid #edf0ee;color:#1f2923;text-align:left}.place-result:hover,.place-result:focus-visible{background:#f5f9f6}.result-icon{width:29px;height:29px;flex-shrink:0;display:grid;place-items:center;color:#7d8981}.result-icon .ui-icon{width:23px;height:23px;stroke-width:1.65}.result-copy{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.result-copy strong{font-size:15px;letter-spacing:-.4px;font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:1.4}.result-copy small{font-size:11px;line-height:1.5;color:#8d9790;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.result-distance{font-size:10px;color:#96a198;flex-shrink:0}.suggestions p{font-size:12px;line-height:1.7;color:#78877d;padding:18px 3px}
.nearby-section{margin-top:22px}.nearby-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 3px}.nearby-heading h2{font-size:11px;text-transform:uppercase;letter-spacing:1.3px;color:#8b9a90;font-weight:700;margin:0}.nearby-heading>span{font-size:9px;color:#a3afa6}.nearby-feedback{margin:18px 3px;font-size:12px;line-height:1.8;color:#8a988e}.nearby-feedback:empty{display:none}.route-submit{margin-top:23px;min-height:54px;border-radius:30px;font-size:14px}.itinerary .privacy-note{font-size:9px;margin-top:21px;line-height:1.8;color:#98a59b}
.trip-layout{min-height:100svh}.map-shell{height:calc(100svh - 322px);min-height:310px;background:#f7f7f6}.map-route{top:calc(18px + env(safe-area-inset-top,0px));left:65px;right:14px;border:0;min-height:49px;border-radius:17px;padding:12px 13px;font-size:12px;gap:8px;box-shadow:0 6px 24px #263a4219}.map-route span{font-weight:650}.map-route b{line-height:1}.map-route .ui-icon{width:15px;height:15px}.map-back{top:calc(20px + env(safe-area-inset-top,0px));left:13px;width:42px;height:44px;min-width:42px;background:#fff}.map-status{left:14px;bottom:40px;font-size:8px;max-width:70%}.map-locate{right:15px;bottom:44px}.leaflet-control-attribution{font-size:7px!important;margin-bottom:22px!important;max-width:calc(100vw - 40px)}.leaflet-bottom.leaflet-left{bottom:19px}.trip-sheet{margin-top:-20px;padding:10px 16px calc(20px + env(safe-area-inset-bottom,0px));border:0;border-radius:25px 25px 0 0;box-shadow:0 -8px 25px #223a2b0b}.sheet-handle{width:40px;height:4px;margin:0 auto 16px}
.vehicle-card{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-template-rows:auto 74px;align-items:center;gap:7px 8px;width:100%;padding:17px 15px 9px;border:1.8px solid #2f895e;border-radius:17px;background:#fff;box-shadow:none;color:#1f2923;overflow:hidden}.vehicle-price{grid-column:1;grid-row:1;align-items:flex-start;gap:3px;align-self:start}.vehicle-price strong{font-size:26px;font-weight:800;letter-spacing:-.9px;color:#1f2923;line-height:1.15}.vehicle-price small{font-size:9px;line-height:1.5;color:#8a968d}.vehicle-details{grid-column:2;grid-row:1;text-align:right;gap:3px;align-self:start}.vehicle-details strong{font-size:23px;font-weight:800;letter-spacing:-.8px;color:#202923;line-height:1.15}.vehicle-details>span{font-size:11px;line-height:1.5;color:#7b887f}.vehicle-card>.rav4-art{grid-column:2;grid-row:2;width:155px;max-width:118%;height:79px;justify-self:end;margin-right:-3px}.vehicle-specs{grid-column:1;grid-row:2;display:flex;flex-direction:column;align-items:flex-start;gap:11px}.vehicle-specs>span{display:flex;align-items:center;gap:6px;color:#7f8b82;font-size:11px;white-space:nowrap}.vehicle-specs .ui-icon{height:15px;width:15px}.vehicle-specs>small{display:block;color:#54886a;background:#eff6ef;padding:4px 6px;border-radius:4px;font-size:7px;font-weight:700;letter-spacing:1px}.route-metrics{gap:7px;margin:12px 1px 4px;font-size:10px;color:#7f9285}.route-time{margin-left:auto;border:0;padding:0;background:none;color:#7c9283;font-size:9px}.driver-eta{margin:0;padding:4px 1px 6px;color:#8e9c92;font-size:9px;line-height:1.5}.price-details{margin:0 0 9px;border:0}.price-details summary{min-height:28px;font-size:10px;color:#6e8878}.price-details p{font-size:9px}.price-line{font-size:11px}.trip-sheet .cta{min-height:55px;border-radius:32px;font-size:16px;font-weight:750;background:#2b875b;border:0;box-shadow:none}.trip-sheet .subtle{font-size:13px;color:#7b8c81;line-height:1.8}.trip-sheet h2{font-size:28px;line-height:1.15;font-weight:800;letter-spacing:-1px;color:#1f2d24}.trip-sheet .step-kicker{font-size:9px}.trip-sheet .text-button{min-height:40px;font-size:11px}.payment-summary{font-size:12px}.payment-summary strong{font-size:26px}.pickup-address{font-size:13px}.payment-method{font-size:11px}.consent{font-size:11px}
.location-permission{position:fixed;inset:auto 0 0;margin:0 auto;width:100%;max-width:560px;max-height:none;border:0;border-radius:30px 30px 0 0;padding:12px 18px calc(30px + env(safe-area-inset-bottom,0px));box-shadow:0 -10px 40px #0000001f}.location-permission[open]{animation:sheet-up .28s cubic-bezier(.2,.8,.2,1)}.location-permission::backdrop{background:#20201f70;backdrop-filter:blur(6px)}@keyframes sheet-up{from{transform:translateY(100%)}}
.location-permission .sheet-handle{display:block;width:44px;height:5px;border-radius:5px;background:#d4d6d5;margin:0 auto 34px}.location-permission h2{font-size:clamp(20px,6.4vw,31px);letter-spacing:-1.1px;white-space:nowrap;line-height:1.15;color:#13241b;text-align:center;margin:0 0 30px}.location-permission h2 em{font-style:normal;color:#2b875b}
.pickup-choice{display:flex;align-items:center;gap:18px;width:100%;min-height:62px;padding:0 20px 0 22px;border-radius:22px;border:1.5px solid #dce6df;background:#f1f6f2;color:#13241b;font:inherit;font-size:17px;font-weight:700;letter-spacing:-.4px;text-align:left;cursor:pointer}.pickup-choice+.pickup-choice{margin-top:13px}.pickup-choice.primary{background:#2b7d55;border-color:#2b7d55;color:#fff}.pickup-choice span{flex:1}.pickup-choice svg{flex:none;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pickup-choice svg:first-child{width:30px;height:30px}.pickup-choice:active{transform:scale(.985)}.pickup-choice:focus-visible{outline:3px solid #8fd0a9;outline-offset:2px}
@media(min-width:600px){.booking-hub.panel{padding-top:48px}.service-visual{height:125px}.service-tile{padding-bottom:23px}.service-tile strong{font-size:23px}.service-tile>span:last-child{font-size:14px}.service-calendar{width:51px;height:51px;bottom:12px}.hub-search #hub-destination{font-size:23px;padding-left:12px}.hub-search #hub-plan{font-size:13px;padding-inline:17px}.hub-search{min-height:80px}.hub-note{font-size:13px}.itinerary.panel{padding-top:30px}.result-copy strong{font-size:17px}.result-copy small{font-size:12px}.place-result{gap:18px}.trip-sheet{padding-inline:25px}.vehicle-card{grid-template-rows:auto 85px}.vehicle-card>.rav4-art{width:200px;height:100px}.vehicle-details strong{font-size:27px}.vehicle-price strong{font-size:30px}.vehicle-details>span{font-size:13px}.vehicle-specs>span{font-size:13px}}
@media(min-width:800px){.booking-header{height:86px;max-width:1100px;margin:auto;padding-inline:35px}.booking-hub.panel{max-width:770px;min-height:calc(100svh - 86px);padding-top:55px}.booking-hub h1{font-size:45px;margin-bottom:32px}.service-options{gap:18px}.service-visual{height:165px}.service-tile{padding-bottom:30px;border-radius:23px}.hub-search{margin-top:28px}.itinerary.panel{max-width:720px;padding:30px 30px 50px}.trip-layout{display:grid;grid-template-columns:minmax(0,1fr) 400px;min-height:100svh}.map-shell{height:100svh;min-height:620px;position:sticky;top:0}.trip-sheet{margin:0;border-radius:0;padding:32px 23px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #edf1ee}.sheet-handle{display:none}.map-route{max-width:570px}.map-status{bottom:40px}.map-back{top:20px}.map-route{top:18px}.leaflet-control-attribution{max-width:calc(100% - 15px)}.vehicle-card{grid-template-rows:auto 90px;padding:20px 16px 13px}.vehicle-card>.rav4-art{width:180px;height:92px}.vehicle-price strong{font-size:28px}.vehicle-details strong{font-size:25px}.vehicle-details>span{font-size:12px}.route-metrics{margin-top:20px;font-size:11px}.route-time{font-size:9px}.driver-eta{font-size:10px;padding-bottom:12px}.price-details{margin-bottom:18px}.trip-sheet .cta{min-height:58px}.trip-sheet .price-details summary{min-height:38px}}
@media(max-width:359px){.booking-header{padding-inline:14px}.booking-header .wordmark{font-size:21px}.booking-hub.panel{padding:28px 16px 30px}.hub-eyebrow{font-size:7px;letter-spacing:1.1px}.booking-hub h1{font-size:29px;letter-spacing:-1.1px}.service-options{gap:9px}.service-tile{padding:7px 6px 16px}.service-visual{height:78px}.service-tile strong{font-size:15px;letter-spacing:-.5px}.service-tile>span:last-child{font-size:10px}.service-calendar{height:33px;width:33px;left:13%}.service-calendar .ui-icon{height:21px;width:21px}.hub-search{padding:7px;gap:3px}.hub-search #hub-destination{font-size:15px;gap:7px;padding-left:2px}.hub-search #hub-destination .ui-icon{width:20px;height:20px}.hub-search #hub-plan{font-size:10px;gap:5px;padding-inline:8px}.itinerary.panel{padding-inline:15px}.result-copy strong{font-size:14px}.result-copy small{font-size:10px}.result-distance{font-size:9px}.suggestions .place-result,.place-list .place-result{gap:10px;padding-block:16px}.vehicle-details strong{font-size:21px}.vehicle-price strong{font-size:23px}.vehicle-card>.rav4-art{width:145px;height:74px;max-width:122%}.vehicle-details>span{font-size:10px}.vehicle-specs>span{font-size:10px}.trip-sheet .cta{font-size:14px}.route-time{font-size:8px}.map-route{font-size:11px;gap:5px}.map-route .ui-icon{width:13px;height:13px}.trip-sheet{padding-inline:14px}}
.map-status{top:auto}
.result-copy small,.result-distance,.nearby-feedback,.hub-note,.hub-signature p,.service-tile>span:last-child,.feedback,.driver-eta,.vehicle-price small,.vehicle-details>span,.vehicle-specs>span,.itinerary .privacy-note{color:#69796e}
@media(prefers-reduced-motion:reduce){.service-tile{transition:none}}
.round-trip-toggle{display:flex;align-items:center;gap:11px;margin:6px 1px 16px;padding:13px 14px;border:1px solid #e3ebe5;border-radius:14px;color:#244332;cursor:pointer}.round-trip-toggle input{width:17px;height:17px;accent-color:#2b875b;flex-shrink:0}.round-trip-toggle>span{display:flex;flex:1;flex-direction:column;gap:4px;font-size:12px;font-weight:700}.round-trip-toggle small{color:#718477;font-size:10px;font-weight:500}.round-trip-toggle>.ui-icon{width:22px;height:22px;color:#658471}.round-trip-toggle:has(input:checked){background:#f0f7f2;border-color:#72a787}
.price-loading{display:flex;align-items:center;gap:8px;min-height:32px;font-size:11px;font-weight:650;letter-spacing:-.2px;line-height:1.4;color:#397253}.price-loading i{width:17px;height:17px;flex:0 0 17px;border:2px solid #d8e9dd;border-top-color:#2b875b;border-radius:50%;animation:price-spin .75s linear infinite}.price-loading[hidden],#trip-price[hidden],#price-caption[hidden]{display:none!important}.vehicle-price{min-height:44px}.trip-sheet #select-vehicle:disabled{opacity:.55;cursor:wait}.trip-sheet #select-vehicle{margin-top:14px}@keyframes price-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.price-loading i{animation:none}}

/* Taxi conventionné: a green box with a white cross, like the main buttons,
   then "bon de transport ?" and its photo just below. */
.round-trip-toggle.medical-toggle{background:#2b875b;border-color:#2b875b;color:#fff}.medical-toggle small{color:#d8eee0}.medical-toggle>.ui-icon{color:#fff;fill:#fff}.medical-toggle input{accent-color:#fff}.round-trip-toggle.medical-toggle:has(input:checked){background:#2b875b;border-color:#2b875b;outline:3px solid #77c994;outline-offset:3px}
.voucher-field{margin:-4px 1px 16px;padding:12px 14px 13px;border:1px solid #e3ebe5;border-radius:14px;background:#f8fbf9}.voucher-field legend{float:left;width:100%;margin-bottom:10px;padding:0;color:#244332;font-size:12px;font-weight:700}.voucher-options{display:flex;gap:8px;clear:both}.voucher-options label{display:flex;flex:1;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid #e3ebe5;border-radius:12px;background:#fff;color:#244332;font-size:13px;font-weight:700;cursor:pointer}.voucher-options input{width:16px;height:16px;margin:0;accent-color:#2b875b}.voucher-options label:has(input:checked){background:#f0f7f2;border-color:#72a787}.voucher-field>small{display:block;margin-top:9px;color:#718477;font-size:10px;line-height:1.5}
.voucher-photo{position:relative;margin-top:10px}.voucher-photo input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.voucher-pick{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 14px;border:1.5px dashed #72a787;border-radius:12px;background:#fff;color:#244332;font-size:13px;font-weight:700;cursor:pointer}.voucher-pick .ui-icon{width:26px;height:26px;flex-shrink:0;color:#2b875b}.voucher-pick span{display:flex;flex-direction:column;gap:3px}.voucher-pick small{color:#718477;font-size:10px;font-weight:500}.voucher-photo input:focus-visible+.voucher-pick{outline:3px solid #77c994;outline-offset:3px}
.voucher-preview{display:flex;align-items:center;gap:12px;padding:8px 8px 8px 8px;border:1px solid #72a787;border-radius:12px;background:#f0f7f2;color:#244332;font-size:13px;font-weight:700}.voucher-preview img{width:52px;height:52px;flex-shrink:0;border-radius:9px;object-fit:cover;background:#dfeae2}.voucher-preview span{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.voucher-preview small{color:#5f7a69;font-size:10px;font-weight:500}.voucher-remove{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:0;border-radius:50%;background:#fff;color:#4f6f5b}.voucher-remove svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}

/* Ride for a company: its name (and SIRET), 10 % off. */
.company-field .company-input{display:block;clear:both;margin:10px 0 6px;color:#244332;font-size:11px;font-weight:700}.company-field .company-input span{color:#718477;font-weight:500}.company-field input{display:block;width:100%;min-height:46px;padding:11px 12px;border:1px solid #d6e4da;border-radius:12px;background:#fff;color:#143c2b;font-size:16px}.company-field legend+.company-input{margin-top:0}

/* Inside the installed app: the 5 % discount is on, and offers by notification. */
.app-offers{display:grid;grid-template-columns:auto 1fr;gap:10px 12px;align-items:center;margin:18px 0 6px;padding:14px;border:1.5px solid #b9dcc5;border-radius:20px;background:#eef7f1}.app-offers-badge{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#00432c;color:#c4ffd2;font-size:16px;font-weight:800}.app-offers-copy strong{display:block;color:#1f2d24;font-size:15px}.app-offers-copy span{display:block;margin-top:2px;color:#4f6656;font-size:12px;line-height:1.45}.app-offers .cta{grid-column:1/-1;min-height:50px;font-size:15px}.app-offers .cta:disabled{cursor:default;opacity:.8}
/* Customer account: header button and greeting. */
.account-link{display:none;position:relative;place-items:center;flex:none;width:40px;height:40px;margin-left:10px;border-radius:50%;background:#f0f7f1;color:#2b6f4b;text-decoration:none}
body[data-stage=hub] .account-link{display:grid}
.account-link .ui-icon{width:21px;height:21px}
.account-initial{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;background:#2b875b;color:#fff;font-size:16px;font-weight:800}
.hub-hello{color:#2b875b}
/* The −5 € first-ride offer: the price with it in green, the full price
   struck through, and the link to create an account. */
.price-line{display:flex;align-items:baseline;gap:8px}
.price-was{color:#8a968d;font-size:15px;font-weight:600;white-space:nowrap}
.vehicle-price.has-offer strong{color:#1f8a52}
.offer-join{display:flex;align-items:center;gap:6px;margin:10px 2px 0;color:#1f7a4a;font-size:14px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.offer-join .ui-icon{flex:none;width:17px;height:17px}
#payment-stage .offer-join{margin-bottom:6px}
/* On a phone the map gives the link its room, so the button stays in view. */
@media(max-width:799px){body[data-stage=vehicle]:has(#ride-join:not([hidden])) .map-shell{height:calc(100svh - 356px)}}
/* Itinerary on one screen: compact route card, side-by-side options, short nearby list, floating button. */
.itinerary.panel{padding-bottom:18px}.itinerary .gps-inline{display:none}.itinerary .feedback{margin:9px 3px 0}.itinerary:has(#gps-status.connected) .feedback{display:none}
.route-fields{border:1.5px solid #8fc5a6;border-radius:20px;padding:2px 12px 2px 46px}.route-fields .field-wrap label{padding-top:12px}.route-fields .input-row{gap:10px}.route-fields .field-wrap input{flex:1;min-width:0;height:42px;font-size:17px;font-weight:700;letter-spacing:-.5px;color:#13241b}#destination{font-weight:600}.route-fields .field-wrap input::placeholder{color:#8a948e;font-weight:600}
.route-fields .locate.icon-button,.field-tile{flex:none;display:grid;place-items:center;width:44px;min-width:44px;height:44px;margin:0 0 7px;border-radius:14px;background:#f0f6f2;border:1px solid #e1ebe4;color:#2b875b;font-size:0}.field-tile{color:#1d3528;cursor:text}.field-tile .ui-icon,.route-fields .locate .ui-icon{width:22px;height:22px}
.ride-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.ride-options>.round-trip-toggle,.ride-options>fieldset{margin:0}.ride-options>fieldset,.round-trip-row{grid-column:1/-1}
.round-trip-toggle.option-card{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"check icon" "text text";align-items:center;align-content:start;gap:11px 12px;padding:14px 13px 15px;border-radius:18px;background:#f4f8f5;border:1px solid #e2ebe5;color:#13241b;outline:0}.option-card input{grid-area:check;width:20px;height:20px}.option-card>.ui-icon{grid-area:icon;width:31px;height:24px;color:#2b7d55;fill:none}.option-card>span{grid-area:text;gap:4px;font-size:13px;letter-spacing:-.2px}.option-card small,.medical-toggle.option-card small{font-size:11px;line-height:1.38;color:#6f7f75}
.medical-toggle .cross{fill:currentColor;stroke:none}.medical-toggle.option-card input{accent-color:#2b875b}.round-trip-toggle.option-card:has(input:checked),.round-trip-toggle.option-card.medical-toggle:has(input:checked){background:#e8f4ec;border-color:#2b875b;outline:0}
.round-trip-row{gap:14px;min-height:60px;padding:11px 16px;border-radius:18px;border-color:#e2ebe5;color:#13241b}.round-trip-row input{width:20px;height:20px}.round-trip-row>.ui-icon{order:1;width:25px;height:25px;color:#1d3528}.round-trip-row>span{order:2;font-size:14px;gap:3px}.round-trip-row small{font-size:11px}.round-trip-row::after{content:"";order:3;width:8px;height:8px;margin-right:5px;border:solid #3c4a42;border-width:2px 2px 0 0;transform:rotate(45deg)}
.itinerary .schedule-toggle:not(:has(input:checked)){display:none}.itinerary .schedule-toggle{margin:14px 1px 6px}
.itinerary .nearby-section{margin-top:22px}.nearby-heading h2{font-size:12px}.nearby-more{display:flex;align-items:center;gap:2px;padding:6px 0;border:0;background:none;color:#1f6b45;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.nearby-more[hidden]{display:none}.nearby-more .ui-icon{width:16px;height:16px}
.place-list:not(.show-all) .place-result:nth-child(n+6){display:none}.place-list .place-result{position:relative;min-height:66px;padding:9px 3px;gap:14px;border-bottom:0}.place-list .place-result+.place-result::before{content:"";position:absolute;top:0;left:63px;right:0;border-top:1px solid #edf0ee}.place-list .result-icon{width:46px;height:46px;border-radius:14px;background:#eef4f0;color:#1d3528}.place-list .result-icon .ui-icon{width:22px;height:22px}.place-list .result-copy{gap:3px}.place-list .result-copy strong{font-size:15px}.place-list .result-copy small{font-size:12px}
.itinerary .route-submit{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:5;margin-top:12px;box-shadow:0 10px 26px #1d5a3a38}
.ride-options:has(#company-toggle[hidden]) .medical-toggle{grid-column:1/-1}
