.rider-mode{overflow:hidden;background:#edf0e8}.rider-mode>header,.rider-mode>footer{display:none}.rider-mode #app{position:relative;width:100%;max-width:none;height:100dvh;min-height:0;margin:0;padding:0;overflow:hidden}#rider-map{height:100%;width:100%;position:absolute;inset:0;z-index:0}.rider-menu-button,.rider-center{position:absolute;z-index:500;display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:50%;background:white;box-shadow:0 2px 10px #0002;color:#202621;font-size:25px}.rider-menu-button{left:18px;top:max(18px,env(safe-area-inset-top))}.rider-center{right:18px;bottom:calc(230px + env(safe-area-inset-bottom));font-size:30px}.rider-top-status{position:absolute;left:75px;right:18px;top:max(21px,env(safe-area-inset-top));z-index:450;border-radius:24px;background:#242d29d9;color:white;font-size:14px;padding:10px 15px;text-align:center}.rider-sheet{position:absolute;z-index:600;bottom:0;left:0;right:0;border-radius:22px 22px 0 0;background:#fff;padding:12px 22px max(24px,env(safe-area-inset-bottom));box-shadow:0 -3px 20px #00000012;max-height:68dvh;overflow:auto}.rider-grab{display:block;width:44px;height:5px;background:#c7cac6;border-radius:10px;margin:0 auto 20px}.destination-launch{width:100%;border:0;border-radius:36px;background:#edf0eb;color:#202822;padding:14px 20px;display:flex;align-items:center;gap:18px;font-size:18px;font-weight:600;text-align:left}.search-symbol{font-size:28px;line-height:1;width:28px}.rider-home-info{display:flex;gap:20px;align-items:center;border-radius:14px;background:#18362c;color:white;padding:19px;margin-top:17px}.rider-brand{font-weight:900;letter-spacing:-2px;font-size:32px}.rider-brand span{color:#c8f36b}.rider-home-info strong{font-size:14px}.rider-home-info p{font-size:12px;color:#bed2c1;line-height:1.5;margin:4px 0 0}.rider-text-button{border:0;background:transparent;color:#344638;padding:12px 5px;font-size:14px;text-decoration:none}.rider-home>.rider-text-button{display:block;margin:4px auto -12px}.rider-sheet-title{display:flex;align-items:center;gap:12px;margin-bottom:20px}.rider-sheet h2{font-size:19px;font-weight:600;letter-spacing:-.4px;margin:0}.round-back{display:grid;place-items:center;border:0;border-radius:50%;background:#f1f3ef;color:#222e26;width:35px;height:35px;font-size:28px;line-height:1;flex-shrink:0}.rider-primary{display:block;width:100%;border:0;border-radius:9px;background:#202421;color:white;padding:16px;font-weight:600;font-size:15px;margin-top:14px}.rider-primary:disabled{opacity:.5}.rider-fields{background:#f0f2ee;border-radius:12px;padding:0 15px}.rider-fields label{display:flex;align-items:center;gap:12px;margin:0;padding:8px 0}.rider-fields label+label{border-top:1px solid #d5dcd2}.rider-fields input{border:0;background:transparent;padding:12px 0;font-size:15px;box-shadow:none}.rider-fields span{font-size:13px;color:#53604c}.rider-note-label{font-size:13px;font-weight:normal}.rider-note-label input{font-size:14px}.rider-address-actions{display:flex;justify-content:space-between;gap:10px}.rider-help{font-size:13px;line-height:1.6;color:#70796e;margin:12px 0}.rider-expanded{max-height:85dvh}.recent-list{margin-top:24px}.recent-list h3{font-size:14px;color:#65715f}.recent-destination{border:0;background:white;padding:14px 0;width:100%;text-align:left;display:flex;gap:15px;font-size:14px;border-bottom:1px solid #ecefea}.recent-destination>span:first-child{font-size:22px}.rider-service{width:100%;display:flex;align-items:center;gap:14px;border:1.5px solid #344c3d;background:#f8faf5;border-radius:11px;padding:15px;text-align:left}.rider-service>span:nth-child(2){flex:1}.rider-service strong{display:block;font-size:15px}.rider-service small{font-size:12px;display:block;margin-top:4px}.rider-service b{font-size:14px;white-space:nowrap}.moto-symbol{font-size:32px;color:#44806c}.review-service{display:flex;justify-content:space-between;gap:12px;font-size:16px}.rider-trip-addresses{border:1px solid #d6ddd2;border-radius:12px;margin:18px 0 8px;padding:12px 15px}.rider-trip-addresses>div{display:flex;gap:15px;align-items:center}.rider-trip-addresses>div+div{border-top:1px solid #e2e7de}.rider-trip-addresses p{font-size:14px;margin:9px 0;overflow-wrap:anywhere}.rider-trip-addresses span{font-size:12px;color:#5b6d4e}.rider-payment{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:17px 0;border-block:1px solid #e6eae3;margin:8px 0}.rider-payment strong{text-align:right}.map-crosshair{position:absolute;top:50%;left:50%;z-index:450;pointer-events:none;transform:translate(-50%,-100%)}.map-crosshair span{display:block;width:30px;height:30px;border-radius:50% 50% 50% 0;background:#26392e;border:4px solid white;transform:rotate(-45deg);box-shadow:0 2px 10px #0004}.rider-marker span{display:grid;place-items:center;width:36px;height:36px;border:3px solid white;border-radius:50%;font-size:13px;font-weight:bold;color:white;box-shadow:0 2px 9px #0003}.rider-marker .pick{background:#344a3b}.rider-marker .dest{background:#1b2420}.rider-marker .driver{background:#137e78}.pin-address{font-size:14px;line-height:1.6}.rider-pin-sheet{max-height:36dvh}.tracking-title{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:14px}.tracking-title>span{background:#eef1eb;padding:4px 12px;border-radius:20px;font-size:13px}.rider-cancel{width:100%;color:#8a3d30;text-align:center;margin-top:7px}.driver-arrival{display:flex;align-items:center;gap:13px;margin:20px 0}.driver-avatar{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;background:#1c4b3b;color:#c8f36b;border-radius:50%;font-size:16px;font-weight:bold}.driver-arrival h2{font-size:16px}.driver-arrival p{font-size:12px;color:#6d7767;margin:5px 0 0}.driver-call{margin-left:auto;text-decoration:none;background:#f0f3ed;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:20px}.rider-menu{position:fixed;inset:0 auto 0 0;height:100dvh;max-height:100dvh;width:min(85vw,350px);margin:0;padding:35px 24px;background:#17251d;color:white;border:0}.rider-menu::backdrop{background:#0006}.rider-menu-top{display:flex;align-items:flex-start;gap:20px;justify-content:space-between;margin-bottom:35px}.rider-menu-top small{color:#bdd1bf}.rider-menu-top h2{font-size:22px;line-height:1.3;margin:7px 0}.rider-menu>button{display:block;border:0;background:transparent;color:white;padding:16px 0;width:100%;text-align:left;border-bottom:1px solid #ffffff14;font-size:16px}.rider-menu-brand{display:block;margin-top:60px;font-size:46px;letter-spacing:-3px;color:#c8f36b;font-weight:900}.rider-history-item{padding:16px 0;border-bottom:1px solid #e3e9df}.rider-history-item>div{display:flex;justify-content:space-between;gap:12px;font-size:14px}.rider-history-item>div>span{font-size:12px;color:#718665}.rider-history-item p{font-size:13px;color:#737d6e;margin:8px 0}.rider-connection{position:absolute;bottom:0;left:-9999px}#rider-message{position:absolute;z-index:800;top:78px;left:18px;right:18px;background:#fffef5;border:1px solid #dbe2d3;border-radius:12px;padding:12px 16px;font-size:14px;box-shadow:0 4px 20px #0001}.rider-mode .leaflet-control-attribution{position:fixed;top:0;right:0;bottom:auto;max-width:65vw;font-size:12px!important;white-space:nowrap;background:#fff9}.rider-mode .leaflet-top.leaflet-right{top:82px}.rider-mode #notice{z-index:1000}@media(min-width:800px){.rider-sheet{left:24px;right:auto;bottom:24px;width:420px;border-radius:22px;max-height:75dvh}.rider-menu-button{left:28px;top:25px}.rider-top-status{left:90px;right:auto;min-width:290px;top:29px}.rider-center{bottom:35px;right:30px}#rider-message{left:90px;right:auto;max-width:550px}.rider-expanded{max-height:85dvh}.rider-mode .leaflet-top.leaflet-right{top:25px}.map-crosshair{top:50%}.rider-pin-sheet{max-height:45dvh}}

.map-crosshair{transform:translate(-50%,-50%)}.map-crosshair span{width:26px;height:26px;border-radius:50%;transform:none;box-shadow:0 0 0 2px #26392e,0 2px 10px #0004}.map-crosshair span:after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:white;margin:6px}
.rider-address-section{padding:14px 0;border-bottom:1px solid #e8ece6}.rider-address-section:first-of-type{padding-top:0}.rider-section-label{display:block;font-size:14px;margin-bottom:10px;color:#344238}.pickup-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px}.pickup-choice-button{border:1.5px solid #d8ded6;background:#f7f9f5;border-radius:12px;padding:12px 10px;text-align:left;color:#28342c;display:grid;grid-template-columns:26px 1fr;grid-template-rows:auto auto;column-gap:7px}.pickup-choice-button>span{grid-row:1/3;font-size:22px;align-self:center}.pickup-choice-button b{font-size:13px}.pickup-choice-button small{font-size:11px;color:#748076;margin-top:2px}.pickup-choice-button.active{border-color:#18362c;background:#eef5ee;box-shadow:0 0 0 1px #18362c inset}.current-location-summary{margin-top:10px;border-radius:10px;background:#f1f4ef;padding:11px 12px;display:flex;flex-direction:column;gap:4px}.current-location-summary b{font-size:13px;font-weight:600}.current-location-summary small{font-size:11px;color:#6f786f;line-height:1.4}.rider-single-field{display:flex;align-items:center;gap:10px;background:#f0f2ee;border-radius:10px;padding:0 13px;margin-top:10px}.rider-single-field span{font-size:13px;color:#53604c}.rider-single-field input{border:0!important;background:transparent!important;box-shadow:none!important;padding:14px 0!important;margin:0!important;font-size:14px!important;width:100%}.rider-map-button{width:100%;border:0;border-radius:9px;background:#e8eee8;color:#294134;padding:12px 13px;margin-top:8px;font-size:13px;font-weight:600;text-align:left}.rider-map-button:disabled{opacity:.55}.address-results{margin-top:5px}.address-results small{display:block;font-size:10px;color:#7a8479;padding:7px 0}.address-results .recent-destination{padding:11px 2px}.rider-address-section>.rider-text-button{padding-left:2px}.rider-expanded .rider-note-label{display:block;margin-top:15px}

/* v7 - refinamento visual do passageiro */
.rider-mode{background:linear-gradient(180deg,#eef3ec 0%,#e7ede8 100%)}
.rider-menu-button,.rider-center{width:50px;height:50px;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.94);backdrop-filter:blur(8px);box-shadow:0 10px 28px rgba(24,42,37,.14);color:#173126}
.rider-menu-button:hover,.rider-center:hover{transform:translateY(-1px)}
.rider-menu-button{top:max(18px,env(safe-area-inset-top));left:18px}
.rider-center{right:18px;bottom:calc(248px + env(safe-area-inset-bottom));font-size:28px}
.rider-top-status{left:78px;right:18px;top:max(20px,env(safe-area-inset-top));border-radius:18px;background:rgba(24,42,37,.92);backdrop-filter:blur(8px);font-size:13px;font-weight:600;padding:12px 16px;box-shadow:0 10px 22px rgba(17,28,24,.12)}
.rider-sheet{border-radius:26px 26px 0 0;background:rgba(255,255,255,.98);backdrop-filter:blur(10px);padding:12px 20px max(24px,env(safe-area-inset-bottom));box-shadow:0 -14px 40px rgba(19,29,24,.12);border-top:1px solid rgba(34,56,44,.06)}
.rider-grab{width:52px;height:5px;background:#d2d8d1;margin-bottom:18px}
.destination-launch{background:#fff;border:1px solid #dde5db;box-shadow:0 8px 22px rgba(23,43,33,.06);padding:16px 18px;gap:14px}
.destination-launch strong{display:block;font-size:18px;line-height:1.2;color:#1f2a23}
.destination-launch small{display:block;margin-top:4px;font-size:12px;color:#738072;font-weight:500}
.search-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#eff4ec;color:#234131;font-size:22px;flex-shrink:0}
.rider-home-info{gap:16px;border-radius:18px;background:linear-gradient(135deg,#12392d 0%,#18362c 100%);padding:18px 18px 17px;box-shadow:0 12px 24px rgba(18,57,45,.14)}
.rider-brand{font-size:31px}
.rider-home-info strong{font-size:15px}
.rider-home-info p{font-size:12px;color:#d7e5d9}
.rider-sheet-title h2{font-size:20px}
.round-back{background:#eff3ee}
.rider-primary{background:linear-gradient(135deg,#1b2d24 0%,#25352d 100%);border-radius:12px;box-shadow:0 10px 22px rgba(24,42,37,.12)}
.rider-fields,.rider-single-field,.current-location-summary{background:#f5f7f3}
.rider-single-field,.current-location-summary,.pickup-choice-button,.rider-map-button,.rider-service,.rider-trip-addresses{border-radius:14px}
.pickup-choice-button{border-color:#dfe5dd;background:#fbfcfa;transition:.15s ease}
.pickup-choice-button.active{border-color:#18362c;background:#eef5ee;box-shadow:0 6px 18px rgba(24,54,44,.08),0 0 0 1px #18362c inset}
.rider-map-button{background:#edf3ed;color:#1f4030;font-weight:700}
.rider-map-button:hover{background:#e6eee6}
.rider-help{font-size:12px;color:#6d776b}
.rider-trip-addresses{background:#fbfcfa}
.driver-call{background:#edf3ee;color:#1d4532}
#rider-message{top:84px;left:18px;right:18px;background:#fff4ed;border:1px solid #f0d4c5;color:#8b4c34;border-radius:14px;padding:13px 15px;box-shadow:0 10px 26px rgba(0,0,0,.08)}
.rider-mode .leaflet-control-attribution{position:fixed;top:auto;right:12px;bottom:calc(206px + env(safe-area-inset-bottom));max-width:72vw;font-size:10px!important;line-height:1.2;white-space:normal;background:rgba(255,255,255,.92);border-radius:10px;padding:5px 8px;box-shadow:0 6px 16px rgba(0,0,0,.08);color:#5e6b5f}
.rider-mode .leaflet-top.leaflet-right{top:86px}
.rider-mode .leaflet-control-zoom a{border:none!important;box-shadow:0 8px 18px rgba(0,0,0,.08)}
@media(min-width:800px){
  .rider-sheet{left:26px;bottom:26px;width:430px;border-radius:28px;max-height:78dvh;padding-inline:22px}
  .rider-menu-button{left:26px;top:26px}
  .rider-top-status{left:92px;right:auto;top:28px;min-width:320px}
  .rider-center{right:30px;bottom:34px}
  #rider-message{left:92px;right:auto;max-width:560px}
  .rider-mode .leaflet-control-attribution{right:16px;bottom:18px;max-width:240px}
  .rider-mode .leaflet-top.leaflet-right{top:26px}
}

/* v8 - menu lateral e linguagem visual estilo app */
.ui-icon{width:22px;height:22px;display:block}.rider-menu-button .ui-icon,.rider-center .ui-icon{width:24px;height:24px}.search-symbol .ui-icon{width:21px;height:21px}.rider-menu{width:min(88vw,360px);padding:0;background:#f8faf7;color:#1b2d24;border-radius:0 26px 26px 0;box-shadow:22px 0 60px rgba(13,28,20,.22);overflow:hidden}.rider-menu::backdrop{background:rgba(11,20,16,.42);backdrop-filter:blur(2px)}.rider-menu-hero{position:relative;padding:32px 24px 24px;background:linear-gradient(145deg,#153c2f 0%,#1c4938 100%);color:#fff}.menu-close-button{position:absolute;top:16px;right:16px;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff}.menu-close-button .ui-icon{width:20px;height:20px}.rider-profile{display:flex;align-items:center;gap:14px;padding-top:18px}.rider-profile-avatar{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:#c8f36b;color:#163127;font-size:17px;font-weight:900;box-shadow:0 8px 22px rgba(0,0,0,.16)}.rider-profile small{color:#c9d9cf;font-size:11px;letter-spacing:.8px;text-transform:uppercase}.rider-profile h2{margin:2px 0 2px;font-size:19px;line-height:1.2;color:#fff}.rider-profile p{margin:0;color:#c9d9cf;font-size:12px}.rider-menu-nav{padding:12px 14px}.rider-menu-nav button{width:100%;display:grid;grid-template-columns:42px 1fr 22px;align-items:center;gap:10px;border:0;background:transparent;padding:12px 10px;border-radius:14px;text-align:left;color:#203128}.rider-menu-nav button+button{margin-top:2px}.rider-menu-nav button:hover,.rider-menu-nav button:focus-visible{background:#edf3ec}.rider-menu-nav b{display:block;font-size:14px;line-height:1.2}.rider-menu-nav small{display:block;margin-top:3px;color:#718076;font-size:10.5px;line-height:1.25}.menu-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#edf4ec;color:#214734}.menu-icon .ui-icon{width:19px;height:19px}.menu-arrow{display:grid;place-items:center;color:#8d9a91}.menu-arrow .ui-icon{width:16px;height:16px}.rider-menu-footer{margin-top:auto;padding:10px 20px 22px;border-top:1px solid #e7ece6}.menu-logout{display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;border:0!important;background:transparent!important;color:#8b4135!important;padding:12px 2px!important;font-size:13px!important;text-align:left!important}.menu-logout .menu-icon{background:#faeeeb;color:#9a4a3b}.rider-menu-footer .rider-menu-brand{margin:10px 0 0;font-size:28px;letter-spacing:-2px;color:#173d30;font-weight:900}.rider-menu-footer .rider-menu-brand span{color:#9dc947}.rider-menu-footer>small{display:block;margin-top:1px;color:#7d897f;font-size:10px}.profile-detail-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #e2e8e0;border-radius:16px;background:#f8faf7}.profile-detail-avatar{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#173d30;color:#c8f36b;font-weight:900}.profile-detail-card strong{display:block;font-size:15px}.profile-detail-card span{display:block;margin-top:3px;color:#748076;font-size:12px}.how-step{display:flex;align-items:flex-start;gap:12px;padding:13px 0}.how-step+.how-step{border-top:1px solid #e7ece6}.how-step b{width:28px;height:28px;flex:0 0 28px;border-radius:9px;display:grid;place-items:center;background:#183b2f;color:#c8f36b;font-size:12px}.how-step span{font-size:13px;line-height:1.5;color:#47544b;padding-top:4px}@media(max-width:420px){.rider-menu{width:90vw}.rider-menu-hero{padding-left:20px;padding-right:20px}.rider-menu-nav{padding-left:10px;padding-right:10px}}

/* v9 - fluxo simplificado de pedido + congelar corrida */
.rider-step-intro{margin:-4px 0 14px;color:#6c776d;font-size:12px;line-height:1.5}
.trip-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 16px}.trip-progress-step{background:#f4f6f3;border:1px solid #e1e7de;border-radius:14px;padding:10px 8px;text-align:center;color:#718076}.trip-progress-step b{display:grid;place-items:center;width:26px;height:26px;margin:0 auto 6px;border-radius:50%;background:#dde6db;color:#274233;font-size:12px}.trip-progress-step small{display:block;font-size:11px;font-weight:700}.trip-progress-step.active{background:#eef5ee;border-color:#cddbcf;color:#1f3c2d}.trip-progress-step.active b{background:#173d30;color:#c8f36b}
.step-dot{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#173d30;color:#c8f36b;font-size:11px;font-weight:700;margin-right:8px;vertical-align:middle}.section-hint{margin:0 0 11px;font-size:12px;line-height:1.45;color:#768274}.pickup-choice-button>span .ui-icon{width:20px;height:20px}.rider-note-label input{margin-top:8px}
.request-status-card{display:grid;gap:10px;margin:16px 0 8px}.status-line{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:14px;background:#f7f9f6;border:1px solid #e4eae1}.status-line>span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:10px;background:#e3e8e1;color:#58675f;font-weight:800;font-size:12px}.status-line b{display:block;font-size:13px;color:#223126}.status-line small{display:block;margin-top:3px;font-size:11px;line-height:1.4;color:#748074}.status-line.done{background:#eef6ee;border-color:#d4e3d3}.status-line.done>span{background:#173d30;color:#c8f36b}
.rider-action-stack{display:grid;gap:10px;margin-top:14px}.rider-secondary{width:100%;border:1px solid #d7e0d7;background:#fff;border-radius:12px;color:#18362c;padding:14px 16px;font-size:14px;font-weight:700}.rider-secondary:hover{background:#f8faf7}
.review-hero{padding:14px 15px;border-radius:16px;background:linear-gradient(135deg,#f5f8f4 0%,#eef4ef 100%);border:1px solid #e1e7df;margin-bottom:14px}.review-hero strong{display:block;font-size:14px;color:#1e3227}.review-hero small{display:block;margin-top:4px;font-size:12px;color:#718077}
.frozen-trip-card{margin-top:14px;border-radius:18px;background:#f8faf7;border:1px solid #dce6dc;padding:16px;box-shadow:0 10px 18px rgba(20,39,29,.05)}.frozen-trip-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.frozen-trip-head strong{font-size:15px;color:#18362c}.frozen-trip-head small{font-size:11px;color:#758273}.frozen-trip-route{display:grid;gap:10px;margin:13px 0}.frozen-trip-route span{display:block;font-size:11px;color:#748073}.frozen-trip-route p{margin:4px 0 0;font-size:13px;line-height:1.45;color:#223026;overflow-wrap:anywhere}.frozen-trip-actions{display:grid;gap:10px}
.recent-list h3{margin-bottom:10px}
@media(min-width:800px){.frozen-trip-actions{grid-template-columns:1fr auto}.trip-progress-step small{font-size:12px}}
