.passenger-cabin{-webkit-tap-highlight-color:transparent;color-scheme:dark;--passenger-bg:#0b1220;--passenger-bg-elevated:#111827;--passenger-surface:#151d2e;--passenger-surface-2:#1c2640;--passenger-border:rgb(255 255 255/8%);--passenger-text:#f1f5f9;--passenger-muted:#94a3b8;--passenger-accent:#22c55e;--passenger-accent-dark:#16a34a;--passenger-nav-height:4.75rem;--passenger-danger:#f87171;min-height:100dvh;background:var(--passenger-bg);color:var(--passenger-text)}.passenger-cabin .passenger-main{min-height:0;flex:1 1 0;overflow-y:auto;padding-bottom:calc(var(--passenger-nav-height) + env(safe-area-inset-bottom, 0px) + 1rem)}.passenger-cabin .passenger-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:calc(env(safe-area-inset-top, 0px) + .75rem) 1rem .5rem}.passenger-cabin .passenger-topbar-greeting{font-size:1.375rem;font-weight:800;letter-spacing:-.02em}.passenger-cabin .passenger-topbar-sub{margin-top:.125rem;font-size:.8125rem;color:var(--passenger-muted)}.passenger-cabin .passenger-account-btn{display:inline-flex;align-items:center;gap:.375rem;border-radius:9999px;border:1px solid var(--passenger-border);background:var(--passenger-surface);padding:.5rem .875rem;font-size:.8125rem;font-weight:600;color:var(--passenger-text)}.passenger-cabin .passenger-bottom-nav{position:fixed;z-index:40;left:.75rem;right:.75rem;bottom:calc(env(safe-area-inset-bottom, 0px) + .5rem);display:flex;justify-content:space-around;gap:.25rem;padding:.5rem;border-radius:1.25rem;background:rgb(17 24 39/92%);backdrop-filter:blur(20px);border:1px solid var(--passenger-border);box-shadow:0 10px 40px rgb(0 0 0/35%)}.passenger-cabin .passenger-nav-link{display:flex;flex:1;flex-direction:column;align-items:center;gap:.125rem;border-radius:.875rem;padding:.375rem .25rem;font-size:.6875rem;font-weight:600;color:var(--passenger-muted)}.passenger-cabin .passenger-nav-link[data-active=true]{background:rgb(34 197 94/15%);color:var(--passenger-accent)}.passenger-cabin .passenger-hero{padding:.5rem 1rem .25rem}.passenger-cabin .passenger-hero h1{font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.passenger-cabin .passenger-hero p{margin-top:.25rem;font-size:.875rem;color:var(--passenger-muted)}.passenger-cabin .passenger-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;padding:.75rem 1rem .5rem}.passenger-cabin .passenger-service-btn{display:flex;min-height:6.75rem;flex-direction:column;justify-content:space-between;border-radius:1rem;padding:1rem;text-align:left;font-weight:700;border:1px solid rgb(255 255 255/6%);box-shadow:0 4px 20px rgb(0 0 0/25%);transition:transform .12s ease}.passenger-cabin .passenger-service-btn:active{transform:scale(.98)}.passenger-cabin .passenger-promo-grid{display:grid;gap:.75rem;padding:.5rem 1rem 1rem}.passenger-cabin .passenger-promo-card{display:block;border-radius:1rem;border:1px solid var(--passenger-border);background:linear-gradient(135deg,var(--passenger-surface) 0,var(--passenger-surface-2) 100%);padding:1rem 1.125rem}.passenger-cabin .passenger-promo-card h2{font-size:1rem;font-weight:700}.passenger-cabin .passenger-promo-card p{margin-top:.25rem;font-size:.8125rem;color:var(--passenger-muted)}.passenger-cabin .passenger-card{margin:0 1rem 1rem;border-radius:1rem;border:1px solid var(--passenger-border);background:var(--passenger-surface);padding:1rem}.passenger-cabin .passenger-field{display:block;width:100%;border-radius:.75rem;border:1px solid var(--passenger-border);background:var(--passenger-bg-elevated);padding:.75rem .875rem;font-size:1rem;color:var(--passenger-text)}.passenger-cabin .passenger-field:focus{outline:2px solid rgb(34 197 94/35%);outline-offset:0}.passenger-cabin .passenger-field--missing{border-color:rgb(248 113 113/55%);background:rgb(248 113 113/8%)}.passenger-cabin .passenger-back-link{display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600;color:var(--passenger-muted)}.passenger-cabin .passenger-voice-hero-btn{display:flex;width:100%;align-items:center;gap:1rem;border-radius:1.125rem;border:1px solid rgb(34 197 94/35%);background:linear-gradient(135deg,#166534,#15803d 45%,#0f766e);padding:1.125rem 1.25rem;text-align:left;font-size:1.25rem;font-weight:800;color:white;box-shadow:0 8px 28px rgb(34 197 94/22%)}.passenger-cabin .passenger-voice-hero-btn:active{transform:scale(.98)}.passenger-cabin .passenger-voice-mic-btn{display:flex;height:7rem;width:7rem;align-items:center;justify-content:center;border-radius:9999px;border:3px solid rgb(34 197 94/45%);background:var(--passenger-surface-2);color:var(--passenger-accent);box-shadow:0 0 0 8px rgb(34 197 94/12%)}.passenger-cabin .passenger-voice-mic-btn--active{border-color:#f87171;color:#f87171;box-shadow:0 0 0 8px rgb(248 113 113/15%);animation:passenger-voice-pulse 1.2s ease-in-out infinite}@keyframes passenger-voice-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.passenger-cabin .passenger-label{display:block;margin-bottom:.375rem;font-size:.8125rem;font-weight:600;color:var(--passenger-muted)}.passenger-cabin .passenger-primary-btn{display:flex;width:100%;align-items:center;justify-content:center;gap:.5rem;border-radius:.875rem;background:var(--passenger-accent);padding:.9375rem 1rem;font-size:1rem;font-weight:700;color:white}.passenger-cabin .passenger-primary-btn:disabled{opacity:.55}.passenger-cabin .passenger-secondary-btn{display:flex;width:100%;align-items:center;justify-content:center;gap:.5rem;border-radius:.875rem;border:1px solid var(--passenger-border);background:var(--passenger-surface-2);padding:.875rem 1rem;font-size:.9375rem;font-weight:600;color:var(--passenger-text)}.passenger-cabin .passenger-ghost-btn{display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600;color:var(--passenger-muted)}.passenger-cabin .passenger-whatsapp-btn{background:#25d366;color:white}.passenger-cabin .passenger-map{height:240px;overflow:hidden;border-radius:1rem;border:1px solid var(--passenger-border)}.passenger-cabin .passenger-status-pill{display:inline-flex;align-items:center;border-radius:9999px;background:rgb(34 197 94/15%);padding:.375rem .75rem;font-size:.875rem;font-weight:600;color:var(--passenger-accent)}.passenger-cabin .passenger-status-pill[data-tone=pending]{background:rgb(251 191 36/15%);color:#fbbf24}.passenger-cabin .passenger-booking-row{display:block;width:100%;border-radius:.875rem;padding:.875rem;text-align:left;transition:background-color .12s ease}.passenger-cabin .passenger-booking-row:hover{background:var(--passenger-surface-2)}.passenger-cabin .passenger-booking-row+.passenger-booking-row{border-top:1px solid var(--passenger-border)}.passenger-cabin .passenger-tabs{display:flex;gap:.5rem;margin-top:1rem}.passenger-cabin .passenger-tab{flex:1;border-radius:.75rem;padding:.625rem;font-size:.875rem;font-weight:600;color:var(--passenger-muted);background:transparent}.passenger-cabin .passenger-tab[data-active=true]{background:var(--passenger-surface-2);color:var(--passenger-text)}.passenger-cabin .passenger-stepper{display:flex;align-items:flex-start;justify-content:space-between;gap:.25rem;margin-bottom:1.25rem;padding:0 .25rem}.passenger-cabin .passenger-stepper-item{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;gap:.375rem}.passenger-cabin .passenger-stepper-dot{display:grid;height:1.75rem;width:1.75rem;place-items:center;border-radius:9999px;background:var(--passenger-surface-2);font-size:.75rem;font-weight:700;color:var(--passenger-muted)}.passenger-cabin .passenger-stepper-dot[data-active=true]{background:var(--passenger-accent);color:white}.passenger-cabin .passenger-stepper-dot[data-done=true]{background:rgb(34 197 94/22%);color:var(--passenger-accent)}.passenger-cabin .passenger-stepper-label{font-size:.6875rem;font-weight:600;color:var(--passenger-muted)}.passenger-cabin .passenger-stepper-label[data-active=true]{color:var(--passenger-accent)}.passenger-cabin .passenger-stepper-line{position:absolute;top:.875rem;left:calc(50% + 1rem);right:calc(-50% + 1rem);height:2px;background:var(--passenger-surface-2)}.passenger-cabin .passenger-stepper-line[data-done=true]{background:rgb(34 197 94/35%)}.passenger-cabin .passenger-vehicle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.passenger-cabin .passenger-vehicle-card{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;border-radius:1rem;border:2px solid var(--passenger-border);background:var(--passenger-bg-elevated);padding:.875rem;text-align:left}.passenger-cabin .passenger-vehicle-card[data-selected=true]{border-color:var(--passenger-accent);background:rgb(34 197 94/8%)}.passenger-cabin .passenger-vehicle-icon{font-size:1.5rem}.passenger-cabin .passenger-vehicle-label{font-size:1rem;font-weight:700}.passenger-cabin .passenger-vehicle-sub{font-size:.75rem;color:var(--passenger-muted)}.passenger-cabin .passenger-vehicle-price{margin-top:.25rem;font-size:1.125rem;font-weight:800;color:var(--passenger-accent)}.passenger-cabin .passenger-flow-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.passenger-cabin .passenger-flow-icon{display:grid;height:3rem;width:3rem;place-items:center;border-radius:.875rem}.passenger-cabin .passenger-fare-box{border-radius:1rem;border:1px solid rgb(34 197 94/25%);background:rgb(34 197 94/8%);padding:1rem}.passenger-cabin .passenger-fare-box .passenger-fare-amount{font-size:2rem;font-weight:800;color:var(--passenger-accent)}.passenger-cabin .passenger-error{border-radius:.75rem;background:rgb(248 113 113/12%);padding:.625rem .75rem;font-size:.875rem;color:var(--passenger-danger)}.passenger-cabin .passenger-success{text-align:center;padding:1.5rem 1rem}.passenger-cabin .passenger-success-icon{display:grid;height:4.5rem;width:4.5rem;place-items:center;margin:0 auto;border-radius:9999px;background:rgb(34 197 94/15%);font-size:2rem}.passenger-cabin .passenger-driver-card{display:grid;grid-template-columns:auto 1fr;gap:.875rem;align-items:center}.passenger-cabin .passenger-driver-avatar{display:grid;height:3.5rem;width:3.5rem;place-items:center;border-radius:9999px;background:var(--passenger-surface-2);font-size:1.25rem;font-weight:700;color:var(--passenger-accent)}.passenger-cabin .passenger-action-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.passenger-cabin .passenger-action-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;border-radius:.875rem;border:1px solid var(--passenger-border);background:var(--passenger-surface-2);padding:.75rem .5rem;font-size:.6875rem;font-weight:600;color:var(--passenger-text)}.passenger-cabin .passenger-page-title{font-size:1.375rem;font-weight:800;letter-spacing:-.02em}.passenger-cabin .passenger-page-sub{margin-top:.25rem;font-size:.875rem;color:var(--passenger-muted)}.passenger-cabin .passenger-flow-page{padding:.75rem 1rem 1.5rem}.passenger-cabin .passenger-segment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.passenger-cabin .passenger-segment-btn{border-radius:.875rem;padding:.75rem;font-size:.875rem;font-weight:600;border:1px solid var(--passenger-border);background:var(--passenger-bg-elevated);color:var(--passenger-text)}.passenger-cabin .passenger-segment-btn[data-active=true]{background:rgb(20 184 166/22%);border-color:rgb(45 212 191/35%);color:#5eead4}.passenger-cabin .passenger-segment-btn:disabled{opacity:.45;cursor:not-allowed}.passenger-cabin .passenger-loyalty-card{margin-inline:0;border-radius:1rem;border:1px solid var(--passenger-border);background:linear-gradient(145deg,rgb(21 29 46),rgb(28 38 64));padding:1rem 1.125rem}.passenger-cabin .passenger-loyalty-card--reward{border-color:rgb(34 197 94/35%);background:linear-gradient(145deg,rgb(20 83 45/35%),rgb(21 29 46))}.passenger-cabin .passenger-loyalty-card--compact{padding:.875rem 1rem}.passenger-cabin .passenger-loyalty-kicker{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--passenger-accent)}.passenger-cabin .passenger-loyalty-title{margin-top:.375rem;font-size:1.125rem;font-weight:800;letter-spacing:-.02em}.passenger-cabin .passenger-loyalty-ring{display:grid;place-items:center;width:3.5rem;height:3.5rem;border-radius:9999px;background:radial-gradient(circle at center,var(--passenger-bg-elevated) 58%,transparent 59%),conic-gradient(var(--passenger-accent) var(--loyalty-progress),rgb(255 255 255/10%) 0);font-size:.75rem;font-weight:800;color:var(--passenger-text)}.passenger-cabin .passenger-chip-btn{border-radius:9999px;border:1px solid var(--passenger-border);background:var(--passenger-surface);padding:.375rem .75rem;font-size:.75rem;font-weight:600;color:var(--passenger-muted)}.passenger-cabin .passenger-loyalty-reward-note{display:flex;align-items:center;gap:.375rem;margin-top:.75rem;font-size:.8125rem;color:#86efac}