/* Simbora passenger planning and selection, using the supplied mobile references. */
.ride-redesign[data-native-screen=riding] .topbar{background:transparent!important;border:0;box-shadow:none;pointer-events:none;padding:14px;height:76px;justify-content:flex-start}
.ride-redesign[data-native-screen=riding] .topbar .native-top-action{pointer-events:auto;background:white;color:black;border-radius:50%;width:46px;height:46px;box-shadow:0 3px 18px #0002}
.ride-redesign[data-native-screen=riding] .topbar .native-title,.ride-redesign[data-native-screen=riding] .topbar .native-header-spacer{display:none}
.native-app.ride-redesign .native-active-layout{inset:0;grid-template-rows:minmax(150px,50%) minmax(0,1fr)}
.native-app.ride-redesign .native-active-layout>.native-driver-sheet{border-radius:26px 26px 0 0;border:0;box-shadow:0 -8px 30px #0001}
.native-app.ride-redesign .native-active-layout>.native-driver-sheet:before{content:'';display:block;width:44px;height:5px;background:#e8e8e8;border-radius:8px;margin:9px auto 0;flex-shrink:0}
.ride-redesign .passenger-trip-scroll{padding:14px 20px 10px}
.ride-redesign .passenger-trip-heading{align-items:flex-start;margin-bottom:14px}
.ride-redesign .native-driver-sheet .passenger-trip-heading h1{font:650 24px system-ui;letter-spacing:-.7px}
.ride-redesign .passenger-trip-heading>span{font:500 12px system-ui;color:#555;padding-top:8px}
.ride-redesign .native-driver-sheet .trip-estimate-panel{border-radius:16px;padding:12px;background:#f3f3f3;margin-bottom:16px}
.ride-redesign .native-driver-sheet .trip-estimate-values b{font:650 28px system-ui}
.ride-redesign .native-driver-sheet .passenger-driver-identity .native-driver-avatar{width:68px;height:52px;min-width:68px;background:white url('/app/assets/ride-car-modern.png?v=1') center/contain no-repeat;border-radius:0}
.ride-redesign .passenger-driver-identity .native-driver-avatar>svg{display:none}
.ride-redesign .native-driver-sheet .passenger-driver-identity h2{font:600 16px system-ui}
.ride-redesign .native-driver-sheet .passenger-driver-identity p{font:13px system-ui;margin:4px 0}
.ride-redesign .native-driver-sheet .native-car-details span{border:0;background:#f1f1f1;border-radius:6px;padding:5px 8px}
.ride-redesign .native-driver-sheet .native-car-details .native-plate{background:#e6e6e6;color:black;font-weight:750;font-size:14px}
.ride-redesign .passenger-trip-actions{padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #eee}
.ride-redesign .native-driver-sheet .native-trip-buttons>a{border-radius:12px;min-height:48px;font:600 15px system-ui}
@media(min-width:900px){.native-app.ride-redesign .native-active-layout{grid-template-rows:1fr;grid-template-columns:minmax(0,1fr) 410px}}
.ride-redesign{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;--ride-radius:22px}
.ride-redesign:is([data-native-screen=landing],[data-native-screen=route],[data-native-screen=choosing]) .topbar{background:transparent!important;box-shadow:none;border:0;height:calc(64px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 14px 0;pointer-events:none;align-items:center}
.ride-redesign:is([data-native-screen=landing],[data-native-screen=route],[data-native-screen=choosing]) .topbar .native-top-action{width:46px;height:46px;border-radius:50%;background:#fff;color:#000;box-shadow:0 3px 18px #0001;pointer-events:auto}
.ride-redesign[data-native-screen=choosing] .topbar :is(.native-header-brand,.native-title,.native-header-spacer,a){display:none}
.ride-use-location{display:flex;align-items:center;justify-content:center;gap:7px;pointer-events:auto;border:0;border-radius:18px;background:#0798ef;color:#fff;font:400 14px system-ui;padding:13px 16px;max-width:calc(100% - 60px);min-height:46px;white-space:nowrap}
.ride-use-location .native-icon{width:19px;height:19px}
.ride-planner-layout,.ride-choice-layout{position:fixed;inset:0 0 auto;height:var(--ride-vh,100dvh);display:grid;grid-template-rows:minmax(140px,51%) minmax(0,1fr);overflow:hidden;background:#e8edf1}
.ride-planner-layout.planner-focused{grid-template-rows:minmax(90px,26%) minmax(0,1fr)}
.ride-choice-layout{grid-template-rows:minmax(160px,43%) minmax(0,1fr)}
.ride-redesign :is(.ride-planner-layout,.ride-choice-layout)>.native-map{position:relative;inset:auto;width:100%;height:100%;min-height:0;overflow:hidden}
.ride-redesign :is(.ride-planner-layout,.ride-choice-layout) .map-card{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;border:0;border-radius:0}
.ride-redesign :is(.ride-planner-layout,.ride-choice-layout) .native-location{top:auto;bottom:12px;right:12px;left:auto;width:42px;height:42px}
.native-planner-sheet,.ride-redesign .ride-choice-layout>.native-chooser{position:relative;inset:auto;display:flex;flex-direction:column;min-height:0;width:100%;max-width:none;max-height:none;height:100%;padding:0;border-radius:var(--ride-radius) var(--ride-radius) 0 0;background:#fff;box-shadow:0 -8px 25px #0001;z-index:20;overflow:hidden}
.ride-sheet-handle{width:48px;height:4px;border-radius:6px;background:#ededed;margin:8px auto 13px;flex-shrink:0}
.native-planner-sheet>h1{font:650 21px system-ui;text-align:center;letter-spacing:-.6px;margin:0 14px 16px;flex-shrink:0}
.native-planner-sheet>form,.ride-choice-layout>.native-chooser>form{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}
.ride-plan-scroll,.ride-choice-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 16px}
.ride-plan-footer,.ride-choice-footer{flex-shrink:0;padding:10px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #eee;background:#fff}
.ride-redesign .ride-plan-footer>.button,.ride-redesign .ride-choice-footer>.native-confirm{width:100%;min-height:48px;border:0;border-radius:8px;background:#000;color:#fff;font:500 16px system-ui;padding:13px 16px;margin:0}
.ride-redesign .ride-planner-layout .route-inputs{border:2px solid #f0f0f0;border-radius:12px;padding:0 12px 0 38px;background:#fff;position:relative}
.ride-redesign .ride-planner-layout .route-inputs:before{display:block;content:'';position:absolute;left:20px;top:28px;bottom:28px;width:2px;background:#000}
.ride-redesign .ride-planner-layout .route-field{padding:0;border:0;min-height:49px;position:relative;overflow:visible}
.ride-redesign .ride-planner-layout .route-field+.route-field{border-top:1px solid #eee}
.ride-redesign .ride-planner-layout .route-field>div{width:100%;min-width:0}
.ride-redesign .ride-planner-layout .route-field label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.ride-redesign .ride-planner-layout .route-field input{height:49px;min-height:49px;width:100%;font:400 16px system-ui;padding:10px 6px;border:0;border-radius:0;background:#fff;box-shadow:none;margin:0;color:#111}
.ride-redesign .ride-planner-layout .route-field .route-dot{position:absolute;left:-26px;top:19px;width:12px;height:12px;background:#fff;border:2px solid #000;border-radius:50%;box-shadow:0 0 0 4px #fff}
.ride-redesign .ride-planner-layout .route-field .route-dot:after{content:'';position:absolute;inset:2px;background:#000}
.ride-redesign .ride-planner-layout .route-field .route-dot.destination{border-radius:2px}
.ride-plan-city{display:flex;align-items:center;gap:15px;min-height:50px;margin:10px -16px 0;padding:12px 19px;font-size:14px;border-bottom:1px solid #eee}
.ride-plan-city .native-icon{width:20px;height:20px}
.ride-redesign .ride-planner-layout .formula-map-buttons{display:grid;grid-template-columns:1fr;margin:0 -16px}
.ride-redesign .ride-planner-layout .formula-map-buttons button{border:0;border-bottom:1px solid #eee;border-radius:0;background:#fff;color:#111;display:flex;align-items:center;gap:14px;min-height:48px;text-align:left;padding:12px 20px;font:500 14px system-ui}
.ride-plan-options{margin:0 -16px;padding:12px 16px;border-bottom:1px solid #eee;font-size:13px}
.ride-plan-options summary{cursor:pointer;font-size:13px;font-weight:500;padding:3px 0}
.ride-redesign .ride-plan-options .formula-stop{border:1px solid #ddd;padding:0 8px;margin:10px 0;border-radius:6px}
.ride-redesign .ride-plan-options .formula-stop .route-dot{display:none}
.ride-redesign .ride-plan-options .field{margin:10px 0}
.ride-address-results{margin:0 -16px}
.ride-address-results>button,.ride-redesign .ride-address-results>button{display:flex;align-items:center;gap:14px;width:100%;min-height:62px;padding:12px 19px;border:0;border-bottom:1px solid #e6e6e6;background:#fff;color:#111;text-align:left;font:14px system-ui}
.ride-address-results>button>span:last-child{flex:1;min-width:0}
.ride-address-results strong,.ride-address-results small{display:block;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ride-address-results strong{font-size:15px;margin-bottom:3px}.ride-address-results small{font-size:12px;color:#555}
.ride-result-pin{font-size:24px;width:24px;text-align:center}
.ride-address-results>p{font:13px system-ui;padding:14px 18px;color:#666}
.ride-redesign .native-category-description{text-align:left;padding:0 16px 10px;flex-shrink:0}
.ride-redesign .native-category-description h1{font:650 21px system-ui;letter-spacing:-.5px;margin:0 0 5px}
.ride-redesign .native-category-description p{font:12px system-ui;color:#666;margin:0;line-height:1.4}
.ride-redesign .native-category-strip{display:block;position:static;margin:0;padding:0}
.ride-redesign .native-category-scroll{display:flex;flex-direction:column;overflow:visible;gap:5px;padding:0}
.ride-redesign .native-category{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;min-width:0;min-height:83px;flex:none;padding:8px;border:2px solid transparent;border-radius:15px;text-align:left;position:relative;background:#fff}
.ride-redesign .native-category.selected{border-color:#000;box-shadow:0 0 0 1px #000}
.ride-redesign .native-category input,.ride-redesign .native-category-check{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden}
.ride-category-car{width:82px;height:52px;object-fit:contain;flex-shrink:0}
.ride-category-copy{flex:1;min-width:0}.ride-category-copy>strong{display:block;font:600 16px system-ui;line-height:1.3;color:#111}
.ride-category-copy>small{display:block;font:12px system-ui;color:#444;margin-top:5px}
.ride-seats{font:11px system-ui;display:inline-flex;gap:2px;align-items:center}.ride-seats .native-icon{width:12px;height:12px}
.ride-category-fare{text-align:right;flex-shrink:0}.ride-category-fare>strong{font:600 16px system-ui;white-space:nowrap}.ride-category-fare>s{display:block;font:12px system-ui;color:#666;margin-top:5px}
.ride-redesign .ride-choice-footer .native-payment{min-height:45px;margin:0 0 9px;padding:0;border:0;gap:10px}
.ride-redesign .ride-choice-footer .native-payment select{font:500 15px system-ui}
.ride-choice-tools{display:flex;justify-content:space-between;gap:12px;margin-top:8px}
.ride-redesign .ride-choice-tools>button{width:auto;min-height:28px;border:0;border-radius:0;background:none;color:#555;font:12px system-ui;margin:0;padding:5px 0}
.ride-review-car{text-align:center;padding:12px 0}.ride-review-car img{width:170px;height:100px;object-fit:contain}
.ride-review-info{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:8px 0 15px}.ride-review-info strong{font:600 20px system-ui}.ride-review-info p{font:13px system-ui;margin:6px 0;color:#555}
.ride-applied-promo{font:500 13px system-ui;color:#a82b0b;display:flex;gap:7px;align-items:center;padding:9px 0}.ride-applied-promo .native-icon{width:17px;height:17px}
.formula-picking .native-planner-sheet{visibility:hidden}.formula-picking .ride-planner-layout>.native-map{position:fixed;inset:0;z-index:90}.formula-picking .ride-planner-layout .map-card{position:absolute!important;inset:0!important}
.ride-redesign .native-active-layout>.native-driver-sheet,.ride-redesign .driver-bottom-panel{border-radius:18px 18px 0 0}
@media(max-width:350px){.native-planner-sheet>h1,.ride-redesign .native-category-description h1{font-size:19px}.ride-use-location{font-size:12px;padding:12px}.ride-category-car{width:67px}.ride-category-copy>strong,.ride-category-fare>strong{font-size:14px}.ride-redesign .native-category{gap:5px;padding:7px}}
@media(min-width:900px){.ride-planner-layout,.ride-choice-layout,.ride-planner-layout.planner-focused{grid-template-rows:1fr;grid-template-columns:minmax(0,1fr) 410px}.native-planner-sheet,.ride-redesign .ride-choice-layout>.native-chooser{border-radius:0}.ride-redesign:is([data-native-screen=landing],[data-native-screen=route],[data-native-screen=choosing]) .topbar{right:430px}}
/* Passenger shares the dark Simbora palette across booking and account screens. */
body.native-passenger{--ink:#eee;--muted:#aaa;--line:#414141;--mint:#292929;background:#1d1d1d;color:#eee;color-scheme:dark}
body.native-passenger .content{background:#1d1d1d;color:#eee}
body.native-passenger :is(.native-planner-sheet,.native-chooser,.native-driver-sheet,.native-raised,.native-extra-content,.native-finished-screen,.native-request-screen,.native-coupons-screen,.native-contact-form,.native-drawer,.native-modal,.auth-panel,.auth-layout){background:#1d1d1d;color:#eee}
body.native-passenger :is(.ride-plan-scroll,.ride-plan-footer,.ride-choice-footer,.passenger-trip-actions,.native-category-strip,.native-category-scroll,.native-category,.native-payment,.native-coupon-entry,.native-profile-header){background:#1d1d1d;color:#eee;border-color:#3b3b3b}
body.native-passenger :is(h1,h2,h3,.native-title,.ride-category-copy>strong,.ride-category-fare>strong,.native-selected-name,.native-driver-sheet h2,.native-total-card h1,.native-trip-note){color:#eee}
body.native-passenger :is(.native-category-description p,.ride-category-copy>small,.ride-review-info p,.passenger-gps,.passenger-trip-heading>span,.native-driver-sheet p,.ride-plan-city,.native-contact-intro,.native-contact-storage,.native-contact-confirm p,.hint,.eyebrow,.native-extra-content>p){color:#aaa}
body.native-passenger .native-category{border-color:transparent}body.native-passenger .native-category.selected{border-color:#eee;background:#292929;box-shadow:none}
body.native-passenger :is(.native-confirm,.native-black-button,.ride-plan-footer>.button,.native-contact-confirm button,.native-coupon-input-row button){background:#eee;color:#151515;border-color:#eee;border-radius:12px}
body.native-passenger :is(.native-white-button,.native-coupon,.native-edit-route,.ride-choice-tools>button,.native-service-item){color:#ddd;border-color:#555;background:transparent}
body.native-passenger :is(.ride-sheet-handle,.native-active-layout>.native-driver-sheet:before){background:#444}
body.native-passenger .native-driver-sheet .trip-estimate-panel{background:#2b2b2b;color:#eee}body.native-passenger .trip-estimate-panel :is(strong,b){color:#eee}body.native-passenger .trip-estimate-panel :is(span,p){color:#bbb}
body.native-passenger .native-driver-sheet .native-driver-avatar{background-color:transparent}body.native-passenger .native-driver-sheet .native-car-details span{background:#353535;color:#ddd}body.native-passenger .native-driver-sheet .native-car-details .native-plate{background:#ddd;color:#151515}
body.native-passenger :is(.ride-use-location,.topbar .native-top-action){background:#262626!important;color:#eee!important;box-shadow:0 2px 10px #0003}
body.native-passenger :is(.native-drawer nav a,.native-drawer nav>button,.native-drawer nav h2,.native-profile-header strong,.native-profile-header p,.native-profile-header small){color:#eee;background:transparent;border-color:#383838}
body.native-passenger :is(.native-drawer-blue,.native-drawer-header,.topbar){background:#000;color:#eee}body.native-passenger .native-drawer .native-icon{color:#ddd}
body.native-passenger :is(.card,.option-card,.section-card){background:transparent;color:#eee;border:0;border-radius:0;box-shadow:none}
body.native-passenger :is(.option-link,.native-receipt-row,.native-rating-prompt,.native-contact-confirm,.native-contact-storage){color:#ddd;border-color:#414141}
body.native-passenger :is(input:not([type=checkbox]):not([type=radio]),select,textarea){color:#eee;background:transparent;border:0;border-bottom:1px solid #555;border-radius:0;box-shadow:none;color-scheme:dark}
body.native-passenger :is(input,textarea)::placeholder{color:#aaa}body.native-passenger :is(input,select,textarea):focus{outline:0;border-bottom-color:#eee}
body.native-passenger :is(.route-inputs,.route-inputs .field,.ride-plan-options,.native-payment,.formula-stop){background:transparent;border-color:#414141;color:#ddd}
body.native-passenger .route-inputs:before{background:#ddd}body.native-passenger .route-inputs:after{border-color:#ddd}
body.native-passenger .ride-address-results>button,body.native-passenger #formula-address-results>button{background:#242424;color:#eee;border-color:#3c3c3c}
body.native-passenger :is(.ride-plan-city,.formula-map-buttons button,.ride-plan-options summary,.native-payment select){color:#ddd}
body.native-passenger .button{background:#eee;color:#161616;border-color:#eee;border-radius:12px}body.native-passenger .button.secondary,body.native-passenger .button.ghost{background:#303030;color:#eee;border-color:#505050}
body.native-passenger :is(.notice,.option-notice,.native-selected-coupon,.native-coupon-selected){background:#292929;color:#ccc;border-color:#444}
body.native-passenger .native-contact-form>input,body.native-passenger .native-contact-form>textarea{background:transparent;color:#eee;border-color:#555}
body.native-passenger .passenger-trip-actions{border-top-color:#383838}body.native-passenger .native-cancel{color:#ff8d82}body.native-passenger .native-location{background:#eee;color:#111}
body.native-passenger .service-tabs :is(a,button){background:#303030;color:#ddd;border-color:#444}body.native-passenger .service-tabs .active{background:#eee;color:#111}
body.native-passenger.native-app :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:transparent!important;color:#eee!important;border-radius:0!important;box-shadow:none!important}
body.native-passenger.native-app .route-inputs{background:transparent!important;border-radius:0;border:0}
body.native-passenger.native-app .formula-map-buttons{background:transparent!important}
body.native-passenger.native-app .formula-map-buttons button{background:transparent!important;color:#ddd!important;border:0!important;border-bottom:1px solid #3b3b3b!important;border-radius:0!important}
body.native-passenger.native-app .route-inputs input{border:0!important;border-bottom:1px solid #555!important}
/* Planning reference: blue location action and a single light address outline. */
body.native-passenger.native-app .topbar .ride-use-location{background:#009af5!important;color:#fff!important;border-radius:18px;font-size:14px;font-weight:400;padding:13px 15px;gap:8px;box-shadow:none;min-height:47px}
body.native-passenger.native-app .ride-planner-layout .route-inputs{border:3px solid #e3e3e3!important;border-radius:14px!important;background:#1d1d1d!important;padding:0 12px 0 47px;margin:0 0 17px;overflow:visible}
body.native-passenger.native-app .ride-planner-layout .route-inputs input{border:0!important;background:transparent!important;font-size:16px;height:49px;min-height:49px;padding:12px 0;margin:0;color:#eee!important}
body.native-passenger.native-app .ride-planner-layout .route-field{margin:0;min-height:49px}
body.native-passenger.native-app .ride-planner-layout .route-field+.route-field{border-top:1px solid #3d3d3d}
body.native-passenger.native-app .ride-planner-layout .route-inputs:before{left:23px;top:27px;bottom:27px;background:#ddd;width:2px}
body.native-passenger.native-app .ride-planner-layout .route-field .route-dot{left:-32px;top:19px;background:#1d1d1d;border-color:#ddd;box-shadow:0 0 0 3px #1d1d1d;width:14px;height:14px}
body.native-passenger.native-app .ride-planner-layout .route-field .route-dot:after{background:#ddd}
body.native-passenger.native-app .native-planner-sheet>h1{font-size:22px;font-weight:650;line-height:1.25;margin:8px 14px 22px}
body.native-passenger.native-app .ride-address-results>button,body.native-passenger.native-app #formula-address-results>button{background:#1d1d1d;color:#eee;border-bottom:1px solid #343434;min-height:65px;padding:13px 20px;gap:15px}
body.native-passenger.native-app .ride-address-results strong{font-size:16px;color:#eee;font-weight:400}.ride-address-results small{color:#ccc;font-size:13px;line-height:1.3}
body.native-passenger.native-app .ride-address-results:has(>button)+.ride-plan-city{display:none}
body.native-passenger.native-app .ride-planner-layout:has(#origin:focus,#destination:focus) :is(.ride-plan-footer,.ride-plan-options,.formula-map-buttons){display:none}
body.native-passenger.native-app .ride-planner-layout.planner-focused{grid-template-rows:minmax(95px,30%) minmax(0,1fr)}
@media(max-width:350px){body.native-passenger.native-app .topbar .ride-use-location{font-size:12px;padding:12px 10px}body.native-passenger.native-app .native-planner-sheet>h1{font-size:20px}}
body.native-passenger.native-app .ride-planner-layout .route-field{background:transparent!important;border-radius:0!important;box-shadow:none!important;padding-top:0;padding-bottom:0}
body.native-passenger.native-app .topbar .ride-use-location{flex:1;max-width:calc(100% - 56px);justify-content:center;font-weight:400!important}
body.native-passenger.native-app .ride-planner-layout .route-field input::placeholder{color:#aaa;opacity:1}
/* Passenger floating navigation matches the driver capsule. */
body.native-passenger.native-app .mobile-nav.native-bottom-nav{position:fixed!important;display:flex!important;left:50%;right:auto;bottom:calc(10px + env(safe-area-inset-bottom));transform:translateX(-50%);width:78%;max-width:330px;height:clamp(52px,16.25vw,69px);min-height:0;padding:7px;gap:5px;border:1px solid #383838;border-radius:999px;background:#1d1d1d;box-shadow:0 3px 12px #0002;z-index:110;align-items:stretch;justify-content:space-between;overflow:hidden}
body.native-passenger.native-app .native-bottom-nav>a{display:flex;flex:1 1 0;min-width:0;height:100%;padding:3px 2px;gap:3px;border:0;border-radius:999px;background:transparent;color:#aaa;align-items:center;justify-content:center;flex-direction:column;text-decoration:none;line-height:1.1}
body.native-passenger.native-app .native-bottom-nav>a>.native-icon{width:19px;height:19px;flex-shrink:0}
body.native-passenger.native-app .native-bottom-nav>a>span{display:block;max-width:59px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;line-height:1.15}
body.native-passenger.native-app .native-bottom-nav>a.active{background:#292929;color:#eee;font-weight:600}
body.native-passenger.native-app :is(.ride-planner-layout,.ride-choice-layout){height:calc(var(--ride-vh,100dvh) - clamp(52px,16.25vw,69px) - 20px - env(safe-area-inset-bottom))}
body.native-passenger.native-app .native-active-layout{bottom:calc(clamp(52px,16.25vw,69px) + 20px + env(safe-area-inset-bottom))}
body.native-passenger.native-app .content{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
body.native-passenger.native-app:has(#origin:focus,#destination:focus) .native-bottom-nav{display:none!important}
body.native-passenger.native-app:has(#origin:focus,#destination:focus) .ride-planner-layout{height:var(--ride-vh,100dvh)}
/* Quote selection and confirmation share one uninterrupted dark sheet. */
body.native-passenger.native-app .ride-choice-layout>.native-chooser{background:#1d1d1d!important;color:#eee;border:0;box-shadow:0 -6px 20px #0002}
body.native-passenger.native-app .ride-choice-layout :is(.native-category-description,.ride-choice-scroll,.ride-review-car,.ride-review-info,.native-category-strip,.native-category-scroll){background:#1d1d1d;color:#eee}
body.native-passenger.native-app .ride-choice-layout>.native-chooser>form{background:#1d1d1d;color:#eee}
body.native-passenger.native-app .ride-choice-layout .native-category-description h1{color:#eee;font-size:23px;font-weight:650}
body.native-passenger.native-app .ride-choice-layout .native-category-description p{color:#aaa}
body.native-passenger.native-app .ride-choice-footer{background:#1d1d1d;border-top:1px solid #383838;color:#eee}
body.native-passenger.native-app .native-payment .native-caret{border-top-color:#ddd}
body.native-passenger.native-app .ride-review-info strong{color:#eee}
/* Taller mobile map; keep the complete attribution row above the sheet. */
@media(min-height:700px) and (max-width:899px){
body.native-passenger.native-app .ride-planner-layout:not(.planner-focused){grid-template-rows:minmax(160px,55%) minmax(0,1fr)}
body.native-passenger.native-app .ride-choice-layout{grid-template-rows:minmax(180px,48%) minmax(0,1fr)}
body.native-passenger.native-app .native-active-layout{grid-template-rows:minmax(180px,55%) minmax(0,1fr)}
}
/* Passenger drawer: continuous dark surface and readable navigation. */
body.native-passenger.native-app dialog.native-drawer{background:#1d1d1d!important;color:#eee;width:min(310px,84vw);max-width:84vw;border:0;box-shadow:6px 0 30px #0005;padding:0;color-scheme:dark}
body.native-passenger.native-app .native-drawer .native-drawer-blue{height:calc(18px + env(safe-area-inset-top));background:#1d1d1d}
body.native-passenger.native-app .native-drawer .native-profile-header{background:#1d1d1d!important;color:#eee;padding:22px 18px 25px;border-bottom:1px solid #373737;gap:13px}
body.native-passenger.native-app .native-drawer .native-profile-photo{background:#333;color:#ddd;width:55px;height:55px;min-width:55px;border-radius:50%;display:grid;place-items:center}
body.native-passenger.native-app .native-drawer .native-profile-photo .native-icon{width:30px;height:30px;color:#ddd}
body.native-passenger.native-app .native-drawer .native-profile-header strong{font-size:18px;color:#eee;font-weight:600;line-height:1.25}
body.native-passenger.native-app .native-drawer .native-profile-header :is(p,small){font-size:13px;color:#bbb;line-height:1.4}
body.native-passenger.native-app .native-drawer nav{background:#1d1d1d!important;color:#eee;padding:12px 14px 30px}
body.native-passenger.native-app .native-drawer nav h2{background:transparent!important;color:#999!important;font-size:12px;font-weight:600;margin:18px 9px 7px;line-height:1.3}
body.native-passenger.native-app .native-drawer nav :is(a,button){background:transparent!important;color:#eee!important;border:0!important;border-radius:10px;min-height:47px;padding:12px 9px;font-size:16px;line-height:1.3;box-shadow:none}
body.native-passenger.native-app .native-drawer nav .native-icon{color:#c4c4c4!important;width:22px;height:22px;stroke-width:1.7}
body.native-passenger.native-app .native-drawer .native-menu-label{display:flex;align-items:center;gap:14px;color:inherit}
body.native-passenger.native-app .native-drawer nav :is(a,button):hover{background:#292929!important}
body.native-passenger.native-app .native-drawer nav :is(a,button):focus{outline:none}
body.native-passenger.native-app .native-drawer nav :is(a,button):focus-visible{outline:2px solid #bbb;outline-offset:-2px;background:#292929!important}
body.native-passenger.native-app .native-drawer .native-menu-other{background:transparent;border-color:#373737}
body.native-passenger.native-app .native-drawer .native-drawer-blue:empty{min-height:18px}
/* Keep route editing visible and cover the whole PWA viewport with the app theme. */
html:has(body.native-passenger){background:#1d1d1d;color-scheme:dark}
body.native-passenger,body.native-passenger #app,body.native-passenger .app-shell,body.native-passenger .main-wrap{background:#1d1d1d!important;min-height:100dvh}
body.native-passenger.native-app .ride-planner-layout .map-card{visibility:visible!important;background:#3d424a!important}
body.native-passenger.native-app :is(.native-map,.ride-planner-layout,.ride-choice-layout){background:#3d424a}
/* Route mode inherited a white content surface beneath its fixed map/sheet. */
body.native-passenger.native-app #main.content,body.native-passenger.native-app[data-native-screen=route] #main.content{background-color:#1d1d1d!important}
/* Compact location action, horizontally centered independently of the back button. */
body.native-passenger.native-app .topbar .ride-use-location{position:absolute;left:50%;transform:translateX(-50%);flex:none;width:248px;max-width:calc(100% - 128px);min-height:36px;height:36px;padding:8px 10px;border-radius:14px;font-size:12px;gap:6px;line-height:1.2}
body.native-passenger.native-app .topbar .ride-use-location .native-icon{width:16px;height:16px}
@media(max-width:350px){body.native-passenger.native-app .topbar .ride-use-location{font-size:10px;padding:8px 6px;gap:4px;max-width:calc(100% - 114px)}}
body.native-passenger.native-app .topbar .ride-use-location{font-family:'Source Sans Pro',sans-serif!important;font-size:14px!important;font-weight:400!important;height:34px;min-height:34px;padding:5px 8px;border-radius:12px;width:260px;max-width:calc(100% - 112px);gap:5px}
body.native-passenger.native-app .topbar .ride-use-location .native-icon{width:15px;height:15px}
@media(max-width:350px){body.native-passenger.native-app .topbar .ride-use-location{font-size:12px!important;width:224px;max-width:calc(100% - 96px);padding:5px 6px;gap:4px}}

/* Activity uses the same visual rules in both apps. */

.activity-heading h1{font-size:34px;line-height:1.1;letter-spacing:-.7px;margin:0 0 28px;font-weight:700;color:#eee}

.activity-subheading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}
.activity-subheading h2{font-size:22px;font-weight:600;margin:0;color:#eee}

.activity-filter select{width:86px;min-height:36px;border:0;border-radius:24px;background:#272727;color:#ccc;font-size:12px;padding:6px 10px}

.activity-ride{display:flex;gap:16px;padding:16px 0;align-items:flex-start}
.activity-car{width:64px;height:64px;border-radius:10px;background:#383838;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.activity-car img{width:54px;height:40px;object-fit:contain}

.activity-copy{flex:1;min-width:0;border-bottom:1px solid #373737;padding-bottom:13px}
.activity-copy h3{font-size:18px;line-height:1.2;margin:0 0 5px;color:#eee;font-weight:600;overflow-wrap:anywhere}
.activity-copy p{font-size:14px;color:#c4c4c4;line-height:1.35;margin:3px 0}

.activity-copy details>summary{display:inline-block;list-style:none;border-radius:25px;background:#292929;color:#ddd;padding:8px 14px;font-size:14px;margin-top:12px;cursor:pointer}
.activity-copy details>summary::-webkit-details-marker{display:none}
.activity-details{padding-top:8px}
.activity-details p{font-size:13px;overflow-wrap:anywhere}

.activity-featured{display:block;border:2px solid #373737;border-radius:14px;padding:14px;margin-bottom:10px}
.activity-featured .activity-car{width:100%;height:140px;border-radius:10px;background:#3d424a;margin-bottom:16px}
.activity-featured .activity-car img{width:96px;height:65px}
.activity-featured .activity-copy{border:0;padding:0}
.activity-featured h3{font-size:22px}
.activity-empty{color:#bbb;padding:25px 0;font-size:15px}

.activity-filter{position:relative;display:block;width:38px;height:38px;border-radius:50%;background:#272727}

.activity-filter:before{content:'';position:absolute;inset:9px;pointer-events:none;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ddd' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M3 7h18M3 17h18'/%3E%3Ccircle cx='8' cy='7' r='3' fill='%232727'/%3E%3Ccircle cx='16' cy='17' r='3' fill='%232727'/%3E%3C/svg%3E")}

.activity-filter select{position:absolute;inset:0;width:100%;height:100%;min-height:0;opacity:0;cursor:pointer;margin:0;padding:0}

.activity-filter:focus-within{outline:2px solid #ddd;outline-offset:3px}

.activity-filter>.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}body.native-passenger.native-app[data-native-screen=history] .topbar{display:none}
body.native-passenger.native-app[data-native-screen=history] #main.content{max-width:600px;margin:0 auto;padding:calc(32px + env(safe-area-inset-top)) 16px calc(110px + env(safe-area-inset-bottom));background:#1d1d1d;color:#eee;min-height:100dvh}
body.native-passenger.native-app[data-native-screen=history] .activity-filter select{position:absolute;inset:0;width:100%;height:100%;min-height:0;opacity:0;cursor:pointer;margin:0;padding:0;border:0}
body.native-passenger.native-app[data-native-screen=history] .activity-details a{color:#ddd;display:inline-block;padding-top:8px}
body.native-passenger.native-app[data-native-screen=services] .topbar{display:none}
body.native-passenger.native-app[data-native-screen=services] #main.content{max-width:600px;margin:0 auto;padding:calc(32px + env(safe-area-inset-top)) 18px calc(110px + env(safe-area-inset-bottom));min-height:100dvh}
.passenger-options>header h1{font-size:34px;letter-spacing:-.7px;color:#eee;margin:0 0 7px;line-height:1.1}.passenger-options>header p{font-size:14px;color:#aaa;line-height:1.4;margin:0 0 26px}
.passenger-options .options-primary-trip{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 0 24px;border:0;border-bottom:1px solid #383838;border-radius:0;background:transparent;color:#eee;text-align:left;gap:8px;cursor:pointer}
.options-primary-trip>span{flex:1;min-width:0}.options-primary-trip strong{font-size:24px;line-height:1.1;display:block;font-weight:600}.options-primary-trip small{display:block;font-size:13px;line-height:1.4;color:#aaa;margin-top:8px}.options-primary-trip b{display:inline-flex;align-items:center;gap:5px;margin-top:18px;font-size:14px;font-weight:600}.options-primary-trip b>.native-icon{width:16px;height:16px}.options-primary-trip img{width:43%;max-width:170px;height:100px;object-fit:contain}
.options-services{padding:25px 0;border-bottom:1px solid #383838}.passenger-options h2{font-size:20px;color:#eee;margin:0 0 19px;font-weight:600;line-height:1.2}.options-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.passenger-options .options-shortcuts>a,.passenger-options .options-shortcuts>button{display:flex;align-items:center;flex-direction:column;gap:5px;min-width:0;padding:0;border:0;border-radius:0;background:transparent;color:#eee;text-decoration:none;text-align:center;cursor:pointer}.options-shortcuts>a>span,.options-shortcuts>button>span{display:grid;place-items:center;width:66px;height:66px;background:#292929;border-radius:50%;margin-bottom:5px}.options-shortcuts svg{width:29px;height:29px;color:#ddd}.options-shortcuts strong{font-size:16px;font-weight:600}.options-shortcuts small{font-size:11px;color:#aaa;line-height:1.3}
.options-more{padding-top:25px}.passenger-options .options-more>a{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid #343434;color:#eee;text-decoration:none}.options-more>a>span{flex:1;min-width:0}.options-more strong{display:block;font-size:17px;font-weight:600;line-height:1.3}.options-more small{display:block;font-size:12px;color:#aaa;margin-top:4px}.options-more>a>.native-icon:first-child{width:23px;height:23px;color:#ccc}.options-more>a>.native-icon:last-child{width:16px;height:16px;color:#888}
@media(max-width:350px){.options-primary-trip strong{font-size:21px}.options-shortcuts{gap:7px}.options-shortcuts>a>span,.options-shortcuts>button>span{width:57px;height:57px}}
body.native-passenger.native-app[data-native-screen=profile] .topbar{display:none}
body.native-passenger.native-app[data-native-screen=profile] #main.content{max-width:600px;margin:0 auto;padding:calc(32px + env(safe-area-inset-top)) 18px calc(110px + env(safe-area-inset-bottom));min-height:100dvh}
.passenger-account>header h1{font-size:34px;line-height:1.1;letter-spacing:-.7px;color:#eee;margin:0 0 26px}
.passenger-account .passenger-account-person{display:flex;align-items:center;gap:14px;padding:0 0 23px;color:#eee;text-decoration:none;border-bottom:1px solid #383838}.passenger-account-avatar{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#333;color:#ddd;font-size:20px;font-weight:600;flex-shrink:0}.passenger-account-person>span:nth-child(2){flex:1;min-width:0}.passenger-account-person strong{display:block;font-size:23px;line-height:1.2;font-weight:600;overflow-wrap:anywhere}.passenger-account-person small{display:block;font-size:13px;color:#aaa;margin-top:6px}.passenger-account-person>.native-icon{width:17px;height:17px;color:#999}
.passenger-account .passenger-account-wallet{display:flex;align-items:center;gap:11px;color:#ddd;text-decoration:none;padding:18px 0;border-bottom:1px solid #383838;font-size:14px}.passenger-account-wallet>span{flex:1}.passenger-account-wallet>strong{font-size:19px;font-weight:600;color:#eee}.passenger-account-wallet>.native-icon:last-child{width:15px;height:15px;color:#999}
.passenger-account-group{padding-top:27px}.passenger-account-group h2{font-size:14px;color:#999;margin:0 0 7px;font-weight:600}.passenger-account .passenger-account-group>a{display:flex;align-items:center;gap:14px;color:#eee;text-decoration:none;background:transparent;padding:16px 0;border-bottom:1px solid #343434}.passenger-account-group>a>span{flex:1;min-width:0}.passenger-account-group strong{display:block;font-size:17px;line-height:1.3;font-weight:600}.passenger-account-group small{display:block;font-size:12px;color:#aaa;margin-top:4px;line-height:1.3}.passenger-account-group>a>.native-icon:first-child{width:23px;height:23px;color:#ccc}.passenger-account-group>a>.native-icon:last-child{width:15px;height:15px;color:#888}
.passenger-account .passenger-account-logout{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:16px 0;margin-top:24px;background:transparent;color:#ddd;border:0;border-top:1px solid #383838;border-radius:0;font-size:16px;font-weight:600;text-align:left}
body.native-passenger.native-app .native-bottom-nav>a.active[href='#home']>.native-icon{fill:currentColor;stroke-width:1}
body.native-passenger .native-total-content>p,body.native-passenger .native-receipt-row>.native-icon{color:#ccc}
/* Reserve room for both addresses before allocating the remaining height to the map. */
@media(max-width:899px){
 body.native-passenger.native-app:not(.input-editing):not(.keyboard-open) .ride-planner-layout:not(.planner-focused){grid-template-rows:minmax(110px,1fr) minmax(390px,auto)}
 body.native-passenger.native-app .native-planner-sheet>.simbora-home-greeting{flex-shrink:0;font-size:19px;margin:5px 16px 6px}
 body.native-passenger.native-app .native-planner-sheet:has(>.simbora-home-greeting)>h1{margin:4px 14px 14px}
 body.native-passenger.native-app:not(.input-editing):not(.keyboard-open) .native-planner-sheet .ride-plan-scroll{min-height:122px}
 body.native-passenger.native-app .native-planner-sheet .route-inputs{flex-shrink:0}
}
@media(max-width:899px){
 body.native-passenger.native-app .ride-choice-layout{grid-template-rows:minmax(95px,1fr) minmax(430px,auto)}
 body.native-passenger.native-app .ride-choice-layout .native-category-description{flex-shrink:0}
 body.native-passenger.native-app .ride-choice-layout .ride-choice-scroll{min-height:175px;scroll-padding:8px}
 body.native-passenger.native-app .ride-choice-layout .ride-choice-footer{flex-shrink:0}
}
@media(max-width:899px) and (max-height:700px){
 body.native-passenger.native-app .ride-choice-layout{grid-template-rows:minmax(85px,1fr) minmax(385px,auto)}
 body.native-passenger.native-app .ride-choice-layout .native-category{min-height:72px;padding:6px}
 body.native-passenger.native-app .ride-choice-layout .ride-choice-scroll{min-height:151px}
 body.native-passenger.native-app .ride-choice-layout .ride-choice-footer{padding-top:6px;padding-bottom:8px}
 body.native-passenger.native-app .ride-choice-layout .native-payment{min-height:36px;margin-bottom:5px}
 body.native-passenger.native-app .ride-choice-layout .ride-review-car img{height:75px}
 body.native-passenger.native-app .ride-choice-layout .native-category-description h1{font-size:21px}
}
@media(max-width:899px){
 body.native-passenger.native-app:not(.input-editing):not(.keyboard-open) :is(.ride-planner-layout,.ride-choice-layout){height:calc(var(--ride-vh,100dvh) - clamp(52px,16.25vw,69px) - 14px - env(safe-area-inset-bottom))}
 body.native-passenger.native-app .ride-choice-layout .ride-choice-footer{display:flex;flex-direction:column;padding-bottom:4px}
 body.native-passenger.native-app .ride-choice-footer .native-payment{order:0}
 body.native-passenger.native-app .ride-choice-footer .ride-choice-tools{order:1;margin-top:0;margin-bottom:8px}
 body.native-passenger.native-app .ride-choice-footer .native-confirm{order:2}
 body.native-passenger.native-app .ride-plan-footer{padding-bottom:4px}
}
.ride-pending-layout{position:fixed;inset:0 0 auto;height:calc(var(--ride-vh,100dvh) - clamp(52px,16.25vw,69px) - 14px - env(safe-area-inset-bottom));display:grid;grid-template-rows:minmax(100px,1fr) minmax(430px,auto);background:#3d424a;overflow:hidden}
body.native-passenger.native-app .ride-pending-layout{height:calc(var(--ride-vh,100dvh) - clamp(52px,16.25vw,69px) - 14px - env(safe-area-inset-bottom));background:#3d424a}
.ride-pending-layout>.native-map{position:relative;inset:auto;min-height:0;height:100%;overflow:hidden}
.ride-pending-layout .map-card{position:absolute!important;inset:0!important;width:100%;height:100%;min-height:0;margin:0;border:0;border-radius:0}
.ride-pending-layout .native-location{top:auto;bottom:12px;right:12px;width:42px;height:42px}
.ride-pending-sheet{display:flex;flex-direction:column;min-height:0;background:#1d1d1d;color:#eee;border-radius:22px 22px 0 0;overflow:hidden;z-index:20}
.ride-pending-heading{display:flex;align-items:center;gap:15px;padding:5px 20px 18px;flex-shrink:0}
.ride-pending-heading h1{font-family:inherit;font-size:23px;font-weight:650;line-height:1.2;margin:0 0 6px!important;color:#eee}
.ride-pending-heading p{font-size:14px;line-height:1.4;color:#aaa;margin:0}
.ride-pending-heading .native-spinner{width:27px;height:27px;flex-shrink:0;border:3px solid #555;border-top-color:#eee;border-right-color:#eee}
.ride-pending-scroll{flex:1;min-height:0;overflow:auto;padding:0 20px}
.ride-pending-route>div{display:flex;gap:14px;align-items:flex-start;padding:9px 0}
.ride-pending-point{width:12px;height:12px;border:2px solid #eee;border-radius:50%;margin-top:7px;flex-shrink:0}
.ride-pending-point.destination{border-radius:2px}
.ride-pending-route p{margin:0;min-width:0}.ride-pending-route small{display:block;color:#aaa;font-size:12px;margin-bottom:3px}
.ride-pending-route strong{font-size:15px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}
.ride-pending-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #383838;margin-top:12px;padding:14px 0}
.ride-pending-summary>strong{font-size:23px;white-space:nowrap}.ride-pending-summary span strong{font-size:16px}.ride-pending-summary small{display:block;font-size:14px;color:#aaa;margin-top:4px}
.ride-pending-stops{color:#aaa;font-size:13px;margin:8px 0}
.ride-pending-footer{padding:10px 16px 4px;flex-shrink:0;border-top:1px solid #383838}
.ride-pending-footer button{width:100%;min-height:48px;border:0;border-radius:12px;background:#303030;color:#eee;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer}
body.native-passenger.native-app[data-native-screen=requesting] .topbar{background:transparent!important;box-shadow:none;border:0;pointer-events:none;padding:12px 14px}
body.native-passenger.native-app[data-native-screen=requesting] .native-top-action{background:#1d1d1d;border-radius:50%;width:46px;height:46px;pointer-events:auto}
body.native-passenger.native-app[data-native-screen=requesting] :is(.native-title,.native-header-spacer){display:none}
body.native-passenger #toast{background:#eee;color:#151515;bottom:calc(clamp(52px,16.25vw,69px) + 24px + env(safe-area-inset-bottom));z-index:200}
@media(min-width:900px){.ride-pending-layout{grid-template-rows:1fr;grid-template-columns:minmax(0,1fr) 410px}.ride-pending-sheet{border-radius:0}}
