:root{--navy:#07132b;--blue:#0968f7;--cyan:#05aed8;--orange:#ff7900;--muted:#727887;--line:#dce1e8;--soft:#f5f8fc;--danger:#b42318;--success:#17a76b;--shadow:0 20px 65px rgba(7,19,43,.14)}
*{box-sizing:border-box}html{background:#eef2f7}body{margin:0;min-width:320px;min-height:100vh;color:var(--navy);background:radial-gradient(circle at 50% 0,#fff 0,#f5f7fa 72%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{position:relative;width:min(100%,430px);min-height:100dvh;margin:auto;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.screen{display:none;position:relative;min-height:100dvh;padding:calc(22px + env(safe-area-inset-top)) 28px calc(24px + env(safe-area-inset-bottom));background:#fff}.screen.active{display:flex;flex-direction:column;animation:screen-in .28s ease both}@keyframes screen-in{from{opacity:.2;transform:translateX(12px)}to{opacity:1;transform:none}}
.alert{position:fixed;z-index:50;top:calc(14px + env(safe-area-inset-top));left:50%;width:min(calc(100% - 32px),398px);padding:13px 16px;border:1px solid #ffd1cc;border-radius:13px;transform:translateX(-50%);color:var(--danger);background:#fff4f2;box-shadow:0 12px 30px rgba(7,19,43,.16);font-size:.86rem;font-weight:650}.alert.success{color:#067647;border-color:#b7ebd0;background:#edfff5}.alert.info{color:#174ea6;border-color:#bad4ff;background:#eff6ff}
.brand-window{position:relative;overflow:hidden}.brand-window img{position:absolute;max-width:none}.brand-window--splash{width:290px;height:230px}.brand-window--splash img{width:460px;left:-84px;top:-110px}.brand-window--welcome{width:246px;height:190px;margin:48px auto 0}.brand-window--welcome img{width:390px;left:-72px;top:-91px}.brand-window--header{width:135px;height:70px}.brand-window--header img{width:215px;left:-40px;top:-64px}.brand-window--login{width:210px;height:155px;margin:20px auto 25px}.brand-window--login img{width:332px;left:-61px;top:-79px}
.splash-screen{justify-content:center;align-items:center}.splash-center{margin-top:auto}.splash-footer{width:100%;margin-top:auto;text-align:center}.splash-footer p{margin:0 0 35px;font-size:1rem;font-weight:700}.splash-footer strong{color:var(--blue)}.loading-track{display:block;width:150px;height:4px;margin:auto;border-radius:99px;background:#dfe3e9;overflow:hidden}.loading-track i{display:block;width:38%;height:100%;border-radius:inherit;background:var(--blue);animation:load 1.8s ease forwards}@keyframes load{from{width:8%}to{width:100%}}
.text-button,.back-icon,.eye-button,.terms button,.new-account button{border:0;background:transparent;color:var(--blue)}.skip{position:absolute;right:26px;top:calc(28px + env(safe-area-inset-top));font-weight:750}.onboarding-copy{margin-top:105px}.onboarding-copy h1{margin:0;font-size:2rem;line-height:1.18;letter-spacing:-.045em}.onboarding-copy em{color:var(--blue);font-style:normal}.onboarding-copy p{max-width:335px;margin:22px 0 0;color:#596171;font-size:1rem;line-height:1.55}.route-illustration{height:330px;margin:18px -12px 0}.route-illustration svg{width:100%;height:100%}.map-line{fill:none;stroke:#e9edf3;stroke-width:2}.route-line{fill:none;stroke:var(--blue);stroke-width:5;stroke-linecap:round}.route-dot{stroke:#fff;stroke-width:5}.route-dot.start{fill:var(--cyan)}.route-dot.end{fill:var(--orange)}.moto{fill:none;stroke:var(--navy);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.moto .helmet{fill:var(--blue);stroke:var(--navy)}.moto .rider{fill:var(--blue)}.screen-footer{margin-top:auto}.dots{display:flex;justify-content:center;gap:10px;margin:10px 0 28px}.dots i{width:9px;height:9px;border-radius:50%;background:#d9dce2}.dots i.active{width:25px;border-radius:10px;background:var(--blue)}
.primary-button,.outline-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:55px;border-radius:15px;font-weight:800;transition:transform .15s,filter .15s}.primary-button{border:0;color:#fff;background:linear-gradient(100deg,#075be8,#0876ff);box-shadow:0 12px 25px rgba(9,104,247,.22)}.primary-button span{margin-left:auto;font-size:1.55rem;font-weight:400}.primary-button:not(:disabled):active,.outline-button:active{transform:scale(.985)}.primary-button:disabled{cursor:wait;opacity:.65}.outline-button{border:2px solid #7cacf8;color:#1761cb;background:#fff}.benefit-list{display:grid;gap:29px;margin-top:44px}.benefit-list article{display:grid;grid-template-columns:75px 1fr;align-items:center;gap:18px}.benefit-icon{display:grid;width:72px;height:72px;place-items:center;border-radius:50%;font-size:2.3rem;font-weight:500;background:#f1f6fc}.benefit-icon.blue{color:var(--blue)}.benefit-icon.orange{color:var(--orange)}.benefit-list h2{margin:0 0 7px;font-size:1.05rem}.benefit-list p{margin:0;color:#626978;font-size:.9rem;line-height:1.45}
.welcome-screen{align-items:center}.welcome-copy{text-align:center}.welcome-copy h1{margin:12px 0 5px;font-size:1.42rem}.welcome-copy p{margin:0;color:var(--muted)}.welcome-actions{display:grid;width:100%;gap:13px;margin-top:42px}.role-area{width:100%;margin-top:38px;padding-top:26px;border-top:1px solid #edf0f4;text-align:center}.role-area>p{margin:0 0 20px;color:#707887;font-size:.9rem}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.role-card{padding:19px 10px;border:1.5px solid #d9e2ee;border-radius:15px;color:var(--navy);background:#fff}.role-card.selected{border-color:#5d9efc;background:#f7fbff}.role-card[data-role="DRIVER"].selected{border-color:#ffc078;background:#fffaf5}.person-icon{position:relative;display:block;width:57px;height:57px;margin:0 auto 9px;color:transparent}.person-icon:before{content:"";position:absolute;left:18px;top:2px;width:21px;height:21px;border-radius:50%;background:currentColor}.person-icon:after{content:"";position:absolute;left:7px;bottom:0;width:44px;height:32px;border-radius:23px 23px 7px 7px;background:currentColor}.person-icon.passenger{color:var(--blue)}.person-icon.driver{color:var(--orange)}.role-card strong{font-size:.94rem;line-height:1.45}
.app-header{display:flex;align-items:center;justify-content:space-between;min-height:72px}.back-icon{padding:8px 8px 8px 0;color:var(--navy);font-size:1.7rem;line-height:1}.form-heading{margin:12px 0 22px}.form-heading h1{margin:0;font-size:1.55rem;letter-spacing:-.035em}.form-heading p{margin:8px 0 0;color:#6b7280;font-size:.86rem;line-height:1.45}.form-heading strong{color:var(--blue)}.stack-form{display:flex;flex-direction:column}.input-row{display:flex;align-items:center;min-height:48px;border:1px solid var(--line);border-radius:10px;background:#fff}.input-row:focus-within{border-color:#6ca6fc;box-shadow:0 0 0 3px rgba(9,104,247,.09)}.input-icon{width:42px;color:#959cab;text-align:center}.input-row input{flex:1;min-width:0;height:46px;padding:0 10px 0 0;border:0;outline:0;color:var(--navy);background:transparent;font-size:.88rem}.input-row input::placeholder{color:#9198a5}.eye-button{width:42px;padding:0;color:#8b94a3}.field-error{display:block;min-height:8px;margin:2px 4px 3px;color:var(--danger);font-size:.67rem}.terms{margin:8px 0 18px;color:#7a818e;font-size:.7rem;line-height:1.45}.terms button,.new-account button{padding:0;font-size:inherit;font-weight:650}.form-submit{min-height:50px;border-radius:13px;font-size:.9rem}.photo-card{position:relative;display:flex;align-items:center;gap:13px;min-height:86px;padding:13px;border:1.5px dashed #5598f9;border-radius:11px;color:var(--navy);background:#f7fbff;overflow:hidden}.photo-card input{position:absolute;inset:0;opacity:0;cursor:pointer}.camera-icon{display:grid;flex:0 0 49px;width:49px;height:49px;place-items:center;border-radius:50%;color:var(--blue);background:#e4f0ff;font-size:1.4rem}.photo-card strong,.photo-card small{display:block}.photo-card strong{font-size:.85rem}.photo-card small{margin-top:4px;color:#737b88;font-size:.66rem;line-height:1.45}.photo-card img{width:55px;height:55px;margin-left:auto;border-radius:50%;object-fit:cover}.spacious{gap:0}.plain-label{display:grid;gap:9px;margin-top:10px;font-size:.84rem;font-weight:750}.plain-label input{width:100%;height:50px;padding:0 14px;border:1px solid var(--line);border-radius:10px;outline:0}.plain-label input:focus{border-color:#6ca6fc;box-shadow:0 0 0 3px rgba(9,104,247,.09)}.hint{margin:0;color:#7c8390;font-size:.73rem}.plate-examples{margin-top:25px}.plate-examples>p{font-size:.76rem;font-weight:750}.plate-examples>div{display:flex;gap:12px}.plate-examples span{display:grid;min-width:112px;padding:9px 13px;border:1px solid var(--line);border-radius:10px}.plate-examples b{font-size:1rem;letter-spacing:.05em}.plate-examples small{margin-top:3px;color:#818895;font-size:.68rem}.pinned{margin-top:auto}.driver-bike .stack-form,.verification-form,.login-screen .stack-form{flex:1}
.verification-form{display:flex;flex-direction:column}.code-boxes{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:22px 0}.code-boxes input{width:100%;height:52px;padding:0;border:1px solid #d6dce5;border-radius:9px;outline:0;text-align:center;font-size:1.3rem;font-weight:750}.code-boxes input:focus{border:2px solid var(--blue);box-shadow:0 0 0 3px rgba(9,104,247,.08)}.timer-block{text-align:center}.clock{display:inline-block;margin-right:6px;color:#727b8b;font-size:1.35rem}.timer-block strong{font-size:1rem}.timer-block p{margin:8px 0;color:#7b8290;font-size:.76rem}.resend{margin:28px auto 0;font-weight:750}.security-note{display:grid;grid-template-columns:34px 1fr;gap:10px;margin-top:auto;margin-bottom:22px;padding:14px;border-radius:11px;color:#335175;background:#edf5ff}.security-note>span{color:var(--blue);font-size:1.6rem}.security-note p{margin:0;font-size:.7rem;line-height:1.5}.security-note strong{font-size:.74rem}
.success-screen{align-items:center;text-align:center}.success-mark{display:grid;width:64px;height:64px;margin:25px auto 10px;place-items:center;border:2px solid #2cc47c;border-radius:50%;color:#1bad68;font-size:2rem}.success-copy h1{margin:0;font-size:1.45rem}.success-copy p{margin:7px 0;color:#6f7683;font-size:.84rem}.driver-profile-card{width:100%;margin:26px auto;padding:20px;border:1px solid #e4e8ee;border-radius:15px;background:#fff}.driver-profile-card>img{width:118px;height:118px;border-radius:50%;object-fit:cover}.driver-profile-card h2{margin:9px 0 7px;font-size:1rem}.driver-profile-card>span{display:inline-block;padding:6px 14px;border-radius:99px;color:var(--blue);background:#eaf3ff;font-size:.69rem}.driver-profile-card dl{display:grid;gap:12px;margin:22px 0 0;text-align:left}.driver-profile-card dl div{display:grid;grid-template-columns:28px 1fr}.driver-profile-card dt,.driver-profile-card dd{margin:0;font-size:.83rem}.passenger-success-art{position:relative;width:100%;height:330px;margin-top:12px;background:linear-gradient(180deg,transparent 45%,#f4f9ff)}.brand-bird{position:absolute;top:55px;left:80px;color:var(--blue);font-size:7rem;font-weight:900;transform:skewX(-16deg)}.round-check{position:absolute;top:110px;right:70px;display:grid;width:67px;height:67px;place-items:center;border-radius:50%;color:var(--blue);background:#ddecff;font-size:2rem}.tiny-moto{position:absolute;bottom:23px;left:50%;font-size:4.4rem;transform:translateX(-50%)}.pinned-bottom{margin-top:auto}.login-screen .form-heading{margin-top:0}.remember{display:flex;align-items:center;gap:8px;margin-top:15px;color:#424b5a;font-size:.77rem}.remember input{width:20px;height:20px;margin:0;accent-color:var(--blue)}.forgot{margin:27px auto 0;font-size:.78rem;font-weight:750}.new-account{margin:13px 0 0;text-align:center;color:#8a909b;font-size:.7rem}.dashboard-screen{align-items:center;text-align:center}.dashboard-logo{align-self:center;margin-bottom:35px}.dashboard-screen h1{margin:9px 0;font-size:1.65rem}.dashboard-screen>p{color:var(--muted)}.driver-profile-card.compact{padding:16px}.dashboard-note{max-width:310px;line-height:1.55}.dashboard-screen .outline-button{margin-top:auto}
@media(min-width:700px){body{padding:30px}.app-shell{min-height:calc(100dvh - 60px);border-radius:36px}.screen{min-height:calc(100dvh - 60px)}.alert{top:45px}}
@media(max-height:760px){.screen{padding-top:calc(14px + env(safe-area-inset-top));padding-bottom:calc(16px + env(safe-area-inset-bottom))}.onboarding-copy{margin-top:65px}.route-illustration{height:265px}.brand-window--welcome{margin-top:12px}.welcome-actions{margin-top:25px}.role-area{margin-top:25px}.input-row{min-height:44px}.input-row input{height:42px}.field-error{min-height:5px}.form-heading{margin:4px 0 14px}.app-header{min-height:60px}.photo-card{min-height:76px}.passenger-success-art{height:245px}}
.screen[data-screen="driver-bike"] .stack-form{flex:1}

/* Assets oficiais recebidos para a versão 0.3 */
.route-illustration img{display:block;width:100%;height:100%;object-fit:contain}
.benefit-list .benefit-icon{display:block;width:72px;height:72px;border-radius:50%;object-fit:cover;background:#f4f7fb}
.role-card{padding:0;overflow:hidden;background:#fff;border-color:transparent}
.role-card img{display:block;width:100%;height:auto}
.role-card.selected{border-width:2px;box-shadow:0 0 0 3px rgba(9,104,247,.08)}
.role-card[data-role="DRIVER"].selected{box-shadow:0 0 0 3px rgba(255,121,0,.08)}
.driver-profile-card dt img{display:block;width:23px;height:20px;object-fit:contain}

/* Interface vetorial e responsiva — versão 0.4 */
.route-illustration{overflow:hidden}
.route-illustration img{display:block;width:100%;height:100%;object-fit:contain}
.benefit-list .benefit-icon{display:grid;width:72px;height:72px;place-items:center;overflow:visible;background:#f1f6fc;object-fit:initial}
.benefit-list .benefit-icon.orange{background:#fff8ef}
.benefit-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.role-card{display:flex;min-height:180px;padding:18px 10px;overflow:visible;flex-direction:column;align-items:center;justify-content:center;border:1.5px solid #d9e2ee;background:#fff;box-shadow:0 7px 20px rgba(7,19,43,.04)}
.role-card.driver{color:var(--orange);border-color:#f3dfc9}
.role-card.selected{border:2px solid #5d9efc;background:#f7fbff;box-shadow:0 0 0 3px rgba(9,104,247,.08)}
.role-card[data-role="DRIVER"].selected{border-color:#ffad55;background:#fffaf5;box-shadow:0 0 0 3px rgba(255,121,0,.08)}
.role-avatar{display:grid;width:76px;height:76px;margin:0 auto 11px;place-items:center;border-radius:50%;color:var(--blue);background:#eef5ff}
.role-card.driver .role-avatar{color:var(--orange);background:#fff3e8}
.role-avatar svg{width:65px;height:65px;fill:currentColor;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.role-card strong{color:var(--navy);font-size:1rem;line-height:1.35}
.input-icon{display:grid;flex:0 0 42px;width:42px;place-items:center;color:#9199a8}
.input-icon svg,.eye-button svg,.camera-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.eye-button{display:grid;place-items:center}
.camera-icon svg{width:27px;height:27px}
.driver-profile-card dt svg{display:block;width:23px;height:23px;fill:none;stroke:#626b79;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.passenger-success-art{overflow:hidden;border-radius:20px;background:linear-gradient(180deg,#fff 25%,#f3f8ff 100%)}
.success-brand-window{position:absolute;top:25px;left:50%;width:190px;height:140px;overflow:hidden;transform:translateX(-50%)}
.success-brand-window img{position:absolute;width:302px;max-width:none;left:-56px;top:-72px}
.round-check svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.tiny-moto{display:grid;width:92px;height:92px;place-items:center;border-radius:50%;color:var(--blue);background:#e6f1ff}
.tiny-moto svg{width:62px;height:62px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:380px){.screen{padding-left:20px;padding-right:20px}.role-cards{gap:11px}.role-card{min-height:164px}.role-avatar{width:68px;height:68px}.role-avatar svg{width:58px;height:58px}}

/* Solicitação e acompanhamento de corridas — versão 0.5 */
.ride-screen{padding:calc(20px + env(safe-area-inset-top)) 22px calc(20px + env(safe-area-inset-bottom));overflow:hidden}
.ride-screen.map-screen{padding:0}
.ride-screen svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ride-header{display:flex;align-items:center;gap:12px;min-height:72px}.ride-header h1{margin:0;font-size:1.42rem;letter-spacing:-.035em}
.ride-map{position:relative;overflow:hidden;background-color:#f8fafc;background-image:linear-gradient(30deg,transparent 47%,#e8edf3 48%,#e8edf3 50%,transparent 51%),linear-gradient(120deg,transparent 47%,#edf1f5 48%,#edf1f5 50%,transparent 51%),repeating-linear-gradient(0deg,transparent 0 58px,#f0f3f6 59px 62px)}
.ride-map:before,.ride-map:after{content:"";position:absolute;width:120px;height:70px;border-radius:45% 55% 50% 45%;background:#dff3df;opacity:.75}.ride-map:before{top:18%;right:-35px;transform:rotate(-18deg)}.ride-map:after{bottom:30%;left:-45px;transform:rotate(15deg)}
.full-map{position:absolute;inset:0}.map-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:2}.route-path{fill:none;stroke:#0968f7;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.location-halo{fill:rgba(9,104,247,.14);stroke:none}.location-point{fill:#0874ff;stroke:#fff;stroke-width:5}.map-pin-shape{fill:#ff7900;stroke:#fff;stroke-width:2}.map-label{position:absolute;z-index:1;color:#8b93a0;font-size:.67rem}.map-label.l1{top:28%;left:15%}.map-label.l2{top:20%;right:10%}.map-label.l3{top:46%;right:13%}
.floating-header,.driver-topbar{position:absolute;z-index:6;top:calc(18px + env(safe-area-inset-top));left:20px;right:20px;display:flex;align-items:center;justify-content:space-between}.floating-header>div{display:grid;gap:3px}.floating-header strong{font-size:1.06rem}.floating-header small{font-size:.74rem;color:#636b78}.round-icon{display:grid;flex:0 0 43px;width:43px;height:43px;padding:0;place-items:center;border:1px solid #e4e9f0;border-radius:50%;color:#23324a;background:rgba(255,255,255,.94);box-shadow:0 7px 20px rgba(7,19,43,.08)}.round-icon svg{width:21px;height:21px}.round-icon.small{flex-basis:36px;width:36px;height:36px;box-shadow:none}.round-icon.small svg{width:18px;height:18px}
.bottom-sheet{position:absolute;z-index:5;left:0;right:0;bottom:0;padding:15px 24px calc(24px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;background:#fff;box-shadow:0 -12px 35px rgba(7,19,43,.1)}.sheet-handle{display:block;width:48px;height:5px;margin:0 auto 17px;border-radius:99px;background:#c9ced6}.bottom-sheet h1{margin:0 0 17px;font-size:1.5rem}.search-field{display:flex;width:100%;height:52px;padding:0 16px;align-items:center;gap:12px;border:1px solid #dbe1e9;border-radius:13px;color:#9097a4;background:#fafbfc}.search-field svg{width:20px;height:20px}.saved-places{display:grid;margin-top:14px}.saved-places button,.suggestions button{display:grid;grid-template-columns:35px 1fr;align-items:center;padding:13px 2px;border:0;border-bottom:1px solid #edf0f4;text-align:left;color:var(--navy);background:#fff}.saved-places svg,.suggestions svg{width:22px;height:22px;color:var(--blue)}.saved-places span,.suggestions span{display:grid;gap:3px}.saved-places strong,.suggestions strong{font-size:.83rem}.saved-places small,.suggestions small{color:#7b8391;font-size:.7rem}
.address-card{padding:13px 15px;border:1px solid #e1e6ed;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(7,19,43,.07)}.address-card label,.summary-address{position:relative;display:flex;min-height:51px;align-items:center;gap:12px}.address-card label:focus-within{z-index:20}.address-card label>span,.summary-address span{position:relative;display:grid;flex:1;gap:2px}.address-card small,.summary-address small{color:#89909d;font-size:.67rem}.address-card input{width:100%;padding:2px 0;border:0;outline:0;color:var(--navy);font-weight:700}.origin-dot{display:block;flex:0 0 11px;width:11px;height:11px;border:3px solid #fff;border-radius:50%;background:var(--blue);box-shadow:0 0 0 1px #a9ccff}.destination-pin{display:grid;flex:0 0 18px;width:18px;color:var(--orange)}.destination-pin svg{width:18px;height:18px;fill:currentColor;stroke:currentColor}.address-line{height:1px;margin-left:30px;background:#edf0f4}.suggestions{margin-top:20px}.suggestions h2,.section-label{margin:0 0 7px;font-size:.78rem}.suggestions button{grid-template-columns:30px 1fr;padding:12px 1px}.suggestions svg{width:18px;height:18px;color:#687386}.route-preview{height:220px;margin:18px -22px 68px}.ride-bottom-button{position:absolute;z-index:9;left:22px;right:22px;bottom:calc(18px + env(safe-area-inset-bottom));width:auto}
.place-suggestions{position:absolute;z-index:100;top:calc(100% + 8px);left:-42px;right:-42px;overflow:hidden;border:1px solid #dce3ec;border-radius:12px;background:#fff;box-shadow:0 12px 28px rgba(7,19,43,.18)}.place-suggestions[hidden]{display:none}.place-suggestions button{display:grid;width:100%;gap:3px;padding:11px 13px;border:0;border-bottom:1px solid #edf0f4;text-align:left;color:var(--navy);background:#fff}.place-suggestions button:last-child{border-bottom:0}.place-suggestions button:active,.place-suggestions button:hover{background:#f4f8ff}.place-suggestions strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}.place-suggestions small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#737c89;font-size:.66rem}
.confirm-address{padding-bottom:0}.confirm-address strong{font-size:.82rem}.trip-metrics{display:grid;grid-template-columns:1fr 1fr;margin:8px -15px 0;border-top:1px solid #edf0f4}.trip-metrics>span{display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;gap:1px 6px;padding:13px 15px}.trip-metrics>span+span{border-left:1px solid #edf0f4}.trip-metrics svg{grid-row:1/3;width:21px;height:21px;color:#34435a}.trip-metrics strong{font-size:.78rem}.service-card,.payment-card{display:flex;min-height:63px;padding:10px 13px;align-items:center;gap:12px;border:1px solid #e0e5ec;border-radius:13px}.service-card.selected{border:2px solid var(--blue);background:#f8fbff}.service-card>div,.payment-card>span{display:grid;flex:1;gap:3px}.service-card strong,.payment-card strong{font-size:.78rem}.service-card small,.payment-card small{color:#747c89;font-size:.65rem}.service-bike{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;color:var(--blue);background:#eaf3ff}.service-bike svg{width:28px;height:28px}.selected-check{display:grid;width:23px;height:23px;place-items:center;border-radius:50%;color:#fff;background:var(--blue)}.section-label{margin-top:18px}.payment-card>svg{width:29px;height:29px;color:var(--blue)}.fare-card{margin-top:18px;text-align:center}.fare-card small{color:#747c89;font-size:.68rem}.fare-card strong{display:block;margin-top:2px;font-size:1.75rem}.fare-card p{margin:4px 0;color:#808895;font-size:.62rem}
.searching-screen{align-items:center}.cancel-link{align-self:flex-end}.searching-copy{align-self:flex-start;margin-top:45px}.searching-copy h1{margin:0;font-size:1.8rem;line-height:1.15}.searching-copy em{color:var(--blue);font-style:normal}.searching-copy p{color:#6f7785;font-size:.85rem}.search-route{position:relative;width:100%;height:360px;margin-top:4px;background-image:linear-gradient(30deg,transparent 47%,#eef1f5 48%,#eef1f5 50%,transparent 51%),linear-gradient(120deg,transparent 47%,#f0f2f5 48%,#f0f2f5 50%,transparent 51%)}.search-route svg{position:absolute;inset:0;width:100%;height:100%}.search-route img{position:absolute;z-index:2;left:50%;top:50%;width:155px;height:95px;object-fit:cover;object-position:50% 19%;transform:translate(-50%,-50%)}.searching-note{width:calc(100% + 44px);margin-top:auto;margin-bottom:calc(-20px - env(safe-area-inset-bottom));padding:24px 30px calc(24px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;text-align:center;background:#fff;box-shadow:0 -10px 28px rgba(7,19,43,.08)}.searching-note p{margin:7px 0;color:#737b88;font-size:.73rem}.loading-dots{display:flex;justify-content:center;gap:6px;margin-top:18px}.loading-dots i{width:7px;height:7px;border-radius:50%;background:#d7dbe1;animation:pulse-dot 1.2s infinite}.loading-dots i:first-child{width:25px;border-radius:7px;background:var(--blue)}.loading-dots i:nth-child(2){animation-delay:.2s}.loading-dots i:nth-child(3){animation-delay:.4s}.loading-dots i:nth-child(4){animation-delay:.6s}@keyframes pulse-dot{50%{opacity:.35}}
.tracking-status{position:absolute;z-index:6;top:calc(20px + env(safe-area-inset-top));left:20px;display:grid;grid-template-columns:12px auto;gap:2px 7px;padding:11px 14px;border-radius:13px;background:#fff;box-shadow:0 8px 22px rgba(7,19,43,.1)}.tracking-status .status-dot{grid-row:1/3;width:8px;height:8px;margin-top:4px;border-radius:50%;background:#16b978}.tracking-status strong{font-size:.76rem}.tracking-status small{color:#747c89;font-size:.64rem}.moving-bike{fill:#fff;stroke:var(--navy);stroke-width:4}.tracking-sheet{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.driver-mini,.passenger-mini{display:flex;align-items:center;gap:11px}.avatar-placeholder{display:grid;flex:0 0 58px;width:58px;height:58px;place-items:center;overflow:hidden;border-radius:50%;color:var(--blue);background:#e9f3ff}.avatar-placeholder img{width:100%;height:100%;object-fit:cover}.avatar-placeholder svg{width:48px;height:48px;fill:currentColor;stroke:#fff}.driver-mini>div:nth-child(2){display:grid;flex:1;grid-template-columns:auto auto;gap:2px 6px}.driver-mini>div:nth-child(2) small{grid-column:1/3;color:#747c89}.driver-mini span{color:#ef9c00;font-size:.72rem}.tracking-destination{display:grid;gap:3px;margin-top:14px;padding:13px 0;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}.tracking-destination>small{color:#7b8390;font-size:.65rem}.tracking-destination>strong{font-size:.84rem}.tracking-destination>span{display:flex;margin-top:8px;align-items:center;justify-content:space-between}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.contact-actions button{display:flex;height:45px;align-items:center;justify-content:center;gap:7px;border:0;border-radius:13px;color:var(--blue);background:#f4f8ff;font-weight:700}.contact-actions svg{width:19px;height:19px}
.completed-screen{align-items:center;text-align:center}.completion-check{display:grid;width:72px;height:72px;margin:45px auto 16px;place-items:center;border-radius:50%;color:#109c68;background:#e8faf3}.completion-check svg{width:38px;height:38px;stroke-width:2.5}.completed-screen h1{margin:0;font-size:1.65rem}.completed-screen>p{margin:8px 0 27px;color:#737b89;font-size:.82rem}.completion-summary{display:grid;width:100%;padding:8px 16px;border:1px solid #e1e6ed;border-radius:15px;box-shadow:0 8px 24px rgba(7,19,43,.06)}.completion-summary span{display:flex;padding:13px 0;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f4}.completion-summary span:last-child{border-bottom:0}.completion-summary small{color:#777f8d}.completion-summary strong{font-size:.78rem}.rating{display:grid;gap:5px;margin-top:28px}.rating small{color:#7c8491;font-size:.7rem}.rating div{display:flex;gap:6px;margin-top:8px}.rating button{padding:0;border:0;color:#6580a4;background:transparent;font-size:2.1rem}.rating button.selected{color:#ffb000}
.driver-topbar{align-items:center}.online-switch{display:flex;height:45px;padding:5px 10px;align-items:center;gap:7px;border:1px solid #e2e7ed;border-radius:23px;background:#fff;box-shadow:0 7px 20px rgba(7,19,43,.08);font-size:.67rem}.online-switch input{position:absolute;opacity:0}.online-switch i{position:relative;width:42px;height:25px;border-radius:20px;background:#cbd2dc;transition:.2s}.online-switch i:after{content:"";position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;transition:.2s}.online-switch input:checked+i{background:var(--blue)}.online-switch input:checked+i:after{transform:translateX(17px)}.online-switch strong{color:var(--blue)}.driver-welcome{position:absolute;z-index:5;top:calc(84px + env(safe-area-inset-top));left:20px;right:20px;display:grid;gap:4px;padding:13px 15px;border-radius:12px;background:rgba(255,255,255,.95);box-shadow:0 8px 22px rgba(7,19,43,.09)}.driver-welcome strong{font-size:.8rem}.driver-welcome small{color:#747c89;font-size:.67rem}.driver-welcome i{position:absolute;right:15px;top:18px;width:8px;height:8px;border-radius:50%;background:#c8ced7}.driver-welcome.online i{background:#18b76c}.driver-radius{fill:rgba(9,104,247,.12);stroke:none}.driver-navigation circle{fill:#fff;stroke:#cbd7e8}.driver-navigation path{fill:var(--blue);stroke:var(--blue)}.driver-stats h2{margin:0 0 13px;font-size:.85rem}.driver-stats>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.driver-stats>div>span{display:grid;gap:3px;padding:11px 7px;border:1px solid #edf0f4;border-radius:11px}.driver-stats svg{width:19px;height:19px;color:var(--blue)}.driver-stats strong{font-size:.75rem}.driver-stats small{color:#7e8693;font-size:.61rem}.logout-link{margin:16px auto 0;font-size:.7rem}.offer-sheet h1{font-size:1.35rem}.offer-address{display:grid;gap:14px}.offer-address>span{display:grid;grid-template-columns:20px 1fr;align-items:start;gap:9px}.offer-address strong{font-size:.78rem;line-height:1.35}.offer-metrics{display:grid;grid-template-columns:1fr 1fr;margin-top:18px;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}.offer-metrics>span{display:grid;grid-template-columns:28px 1fr;gap:1px 7px;padding:14px 8px}.offer-metrics>span+span{border-left:1px solid #edf0f4}.offer-metrics svg{grid-row:1/3;width:21px;height:21px;color:var(--blue)}.offer-metrics strong{font-size:1rem}.offer-metrics small{color:#7b8390;font-size:.62rem}.offer-actions{display:grid;grid-template-columns:1fr 1.7fr;gap:10px;margin-top:17px}.offer-actions .primary-button,.offer-actions .outline-button{min-height:51px}.offer-actions .primary-button small{margin-left:auto;color:#fff}.navigation-banner{position:absolute;z-index:5;top:calc(20px + env(safe-area-inset-top));left:20px;right:20px;display:flex;padding:13px 15px;align-items:center;gap:12px;border-radius:13px;background:#fff;box-shadow:0 8px 22px rgba(7,19,43,.1)}.navigation-banner>svg{width:34px;height:34px;color:var(--blue);fill:var(--blue)}.navigation-banner span{display:grid;gap:3px}.navigation-banner strong{font-size:.8rem}.navigation-banner small{color:#747c89;font-size:.66rem}.passenger-mini>span{display:grid;flex:1;gap:3px}.passenger-mini small{color:#e49300}.avatar-placeholder.client svg{width:30px;height:30px;fill:none;stroke:currentColor}.active-address{display:grid;gap:4px;margin-top:14px;padding:13px 0;border-top:1px solid #edf0f4}.active-address small{color:#7b8390;font-size:.66rem}.active-address strong{font-size:.82rem}.driver-active-sheet>.primary-button{margin-top:16px}
@media(max-height:760px){.home-sheet{padding-top:10px}.saved-places button{padding:9px 2px}.route-preview{height:155px}.suggestions button{padding:9px 1px}.searching-copy{margin-top:20px}.search-route{height:280px}.completion-check{margin-top:20px}.rating{margin-top:18px}.bottom-sheet{padding-bottom:calc(15px + env(safe-area-inset-bottom))}}

/* Perfil, histórico, carteira e configurações — versão 0.7 */
.account-screen{padding:calc(12px + env(safe-area-inset-top)) 20px calc(94px + env(safe-area-inset-bottom));overflow-y:auto;background:#fbfcfe}.account-screen svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.account-header{display:grid;grid-template-columns:42px 1fr 42px;min-height:62px;align-items:center}.account-header h1{margin:0;text-align:center;font-size:1.06rem;letter-spacing:-.02em}.account-header .back-icon{padding:7px;text-align:left}.header-icon{display:grid;width:38px;height:38px;padding:0;place-items:center;border:0;color:var(--navy);background:transparent}.header-icon.static{cursor:default}.profile-summary{display:flex;flex-direction:column;align-items:center;padding:12px 0 24px}.profile-avatar{display:grid;width:94px;height:94px;place-items:center;overflow:hidden;border:5px solid #fff;border-radius:50%;color:var(--blue);background:#e9f2ff;box-shadow:0 8px 24px rgba(7,19,43,.12)}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar svg{width:52px;height:52px}.profile-summary h2{margin:12px 0 3px;font-size:1.15rem}.profile-summary p,.profile-summary span{margin:2px 0;color:#707887;font-size:.76rem}.profile-summary small{margin-top:8px;padding:5px 10px;border-radius:99px;color:var(--blue);background:#eaf3ff;font-size:.65rem;font-weight:750}.account-menu{overflow:hidden;border:1px solid #e2e7ed;border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(7,19,43,.04)}.account-menu button,.account-menu label{display:grid;width:100%;min-height:64px;padding:10px 13px;grid-template-columns:32px 1fr 20px;align-items:center;gap:8px;border:0;border-bottom:1px solid #e9edf2;text-align:left;color:var(--navy);background:#fff}.account-menu button:last-child,.account-menu label:last-child{border-bottom:0}.account-menu i{display:grid;place-items:center;color:var(--blue);font-style:normal}.account-menu span{display:grid;gap:3px}.account-menu strong{font-size:.78rem}.account-menu small{color:#7a8290;font-size:.65rem}.account-menu b{color:#7b8390;text-align:right;font-size:1.35rem;font-weight:400}.account-menu .danger-row,.account-menu .danger-row i{color:#e33232}.account-nav{position:fixed;z-index:20;left:50%;bottom:0;display:grid;width:min(100%,430px);height:calc(70px + env(safe-area-inset-bottom));padding:7px 14px env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);border-top:1px solid #e4e8ee;transform:translateX(-50%);background:rgba(255,255,255,.97);box-shadow:0 -7px 22px rgba(7,19,43,.05)}.account-nav button{display:flex;padding:4px;align-items:center;justify-content:center;gap:3px;flex-direction:column;border:0;color:#727b89;background:transparent;font-size:.59rem}.account-nav button svg{width:20px;height:20px}.account-nav button.active{color:var(--blue);font-weight:750}.history-filters{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 17px}.history-filters button{height:34px;border:1px solid #e1e6ed;border-radius:10px;color:#596171;background:#fff;font-size:.7rem}.history-filters button.active{border-color:var(--blue);color:#fff;background:var(--blue)}.account-section-label{margin:2px 0 9px;color:#606876;font-size:.73rem;font-weight:700}.history-list{display:grid;gap:9px}.history-card{display:grid;padding:12px 13px;grid-template-columns:1fr auto;gap:7px 12px;border:1px solid #e2e7ed;border-radius:12px;background:#fff}.history-card time{color:#737b88;font-size:.62rem}.history-card>strong{font-size:.8rem}.history-route{display:grid;grid-column:1/2;gap:8px}.history-route span{display:grid;grid-template-columns:12px 1fr;align-items:start;gap:7px;font-size:.72rem}.history-route i{width:8px;height:8px;margin-top:3px;border:2px solid var(--blue);border-radius:50%}.history-route span+span i{border-color:var(--orange)}.history-card aside{display:flex;grid-column:2;grid-row:2;align-items:flex-end;gap:5px;flex-direction:column}.history-status{padding:4px 7px;border-radius:99px;color:#078452;background:#e7f8f0;font-size:.57rem}.history-status.cancelled{color:#b42318;background:#fff0ee}.history-rating{color:#f2a100;font-size:.65rem}.empty-state{padding:35px 15px;text-align:center;color:#7b8390;font-size:.78rem}.wallet-method{display:grid;min-height:72px;margin-bottom:10px;padding:12px 13px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;border:1px solid #e0e6ed;border-radius:13px;background:#fff}.wallet-method.primary{color:#fff;border-color:#075cdb;background:linear-gradient(135deg,#0767ee,#063475);box-shadow:0 9px 20px rgba(9,104,247,.17)}.wallet-method.muted{margin-bottom:22px}.wallet-method-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:rgba(255,255,255,.16)}.wallet-method>span:nth-child(2){display:grid;gap:3px}.wallet-method strong{font-size:.76rem}.wallet-method small{color:inherit;opacity:.75;font-size:.61rem}.wallet-method b{font-size:.6rem}.pix-mark{color:#08aab0;font-size:.68rem;font-weight:900}.wallet-summary{margin-bottom:10px;padding:2px 13px;border:1px solid #e2e7ed;border-radius:13px;background:#fff}.wallet-summary>div{display:grid;min-height:63px;grid-template-columns:37px 1fr;align-items:center;gap:9px;border-bottom:1px solid #e9edf2}.wallet-summary>div:last-child{border-bottom:0}.wallet-summary i{display:grid;width:30px;height:30px;place-items:center;border-radius:9px}.wallet-summary i svg{width:18px;height:18px}.wallet-summary i.blue{color:var(--blue);background:#eaf3ff}.wallet-summary i.orange{color:var(--orange);background:#fff1e7}.wallet-summary i.cyan{color:#0aa5bd;background:#e8f9fb}.wallet-summary span{display:grid;gap:3px}.wallet-summary small{color:#737b88;font-size:.63rem}.wallet-summary strong{font-size:.83rem}.wallet-history-link{display:flex;width:100%;padding:13px;align-items:center;justify-content:space-between;border:1px solid #e2e7ed;border-radius:11px;color:var(--blue);background:#fff;font-size:.7rem;font-weight:750}.settings-menu{margin-top:10px}.settings-menu label{grid-template-columns:32px 1fr 42px}.settings-menu label input{position:absolute;opacity:0}.settings-menu label em{position:relative;width:39px;height:23px;border-radius:20px;background:#cbd2dc}.settings-menu label em:after{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;border-radius:50%;background:#fff;transition:.2s}.settings-menu label input:checked+em{background:var(--blue)}.settings-menu label input:checked+em:after{transform:translateX(16px)}.profile-edit-form{gap:0;margin-top:12px}.profile-edit-form label{display:grid;gap:7px;margin-top:10px;color:#354052;font-size:.72rem;font-weight:750}.profile-edit-form input{height:49px;padding:0 13px;border:1px solid #dbe1e8;border-radius:10px;outline:0;color:var(--navy);background:#fff}.profile-edit-form input:focus{border-color:#6ca6fc;box-shadow:0 0 0 3px rgba(9,104,247,.09)}.profile-edit-form input:disabled{color:#747c89;background:#f2f4f7}.profile-edit-form .primary-button{margin-top:22px}.field-hint{margin:4px 3px 0;color:#7b8390;font-size:.62rem}
@media(min-width:700px){.account-nav{bottom:30px;border-radius:0 0 36px 36px}}
.profile-avatar{font-size:1.4rem;font-weight:850}

/* Google Maps — versão 0.8 */
.google-map{position:absolute;z-index:1;inset:0;width:100%;height:100%;opacity:0;transition:opacity .2s ease}
.google-map.map-ready{opacity:1}
.confirm-route-map{height:135px;margin-top:14px;border-radius:13px}
.ride-map:has(>.google-map.map-ready)>.map-overlay,.ride-map:has(>.google-map.map-ready)>.map-label{display:none}
.standalone-map{z-index:1}
.map-screen>.standalone-map.map-ready+.ride-map{visibility:hidden}
.gm-style .gm-style-iw-c{font-family:Inter,Arial,sans-serif}
.pac-container{z-index:10000;border:0;border-radius:0 0 12px 12px;font-family:Inter,Arial,sans-serif;box-shadow:0 8px 24px rgba(7,19,43,.16)}
.pac-item{padding:8px 12px;border-top:1px solid #edf0f4;font-size:.72rem}
.pac-item-query{font-size:.78rem}
