.ride-dialog{width:min(760px,calc(100% - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;border:1px solid var(--e-border,#c3c6ca);border-radius:var(--e-radius-xl,24px);padding:24px;color:var(--e-text,#20242c);background:var(--e-surface,#fff);overflow:auto;font:inherit}
.ride-dialog::backdrop{background:#161b2366}.ride-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}.ride-dialog h2{margin:0;font-size:1.6rem}.ride-dialog nav{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.ride-dialog button{min-height:44px;white-space:normal;max-width:100%}.ride-dialog label{display:flex;flex-direction:column;gap:6px;margin:12px 0}.ride-dialog label:has([type=radio]),.ride-dialog label:has([type=checkbox]){flex-direction:row;align-items:center}.ride-dialog input:not([type=radio]):not([type=checkbox]),.ride-dialog select{box-sizing:border-box;max-width:100%;width:100%;font:inherit;padding:12px;border:1px solid var(--e-border-strong,#7c8593);border-radius:12px;background:#fff;color:inherit}.ride-dialog :focus-visible{outline:3px solid #1758d6;outline-offset:3px}.ride-points{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ride-points>div,.ride-offers>li,.ride-pending{border:1px solid var(--e-border,#c3c6ca);border-radius:16px;padding:16px;overflow-wrap:anywhere}.ride-offers{padding:0;list-style:none;display:grid;gap:12px}.ride-map{height:280px;position:relative;border-radius:16px;overflow:hidden}.ride-map:after{content:'+';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:32px;line-height:1;color:#ae2017;text-shadow:0 0 3px #fff;pointer-events:none;z-index:5}.ride-note{font-size:.9rem}.ride-dialog fieldset{border:1px solid var(--e-border,#c3c6ca);border-radius:16px}.ride-dialog [role=alert]{color:#a51e16}.ride-dialog [disabled]{opacity:.6}@media(max-width:540px){.ride-dialog{padding:16px}.ride-dialog header{align-items:flex-start}.ride-dialog h2{font-size:1.3rem}.ride-points{grid-template-columns:1fr}.ride-dialog nav button{flex:1 1 42%}}

.ride-pricing{margin:16px 0;padding:16px;border:1px solid var(--e-border,#c3c6ca);border-radius:16px;background:var(--e-bg,#f6f8fb);overflow-wrap:anywhere}.ride-pricing h3{margin-top:0}.ride-dialog input[aria-invalid=true]{border-color:#a51e16}

/* Role navigation uses the same surface and controls, including narrow screens. */
.ride-dialog[data-ride-screen] header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}
.ride-dialog[data-ride-screen] h2{min-width:0;overflow-wrap:anywhere}
.ride-dialog [data-ride-role-nav] button{overflow-wrap:normal}
@media(max-width:540px){
 .ride-dialog[data-ride-screen] header{grid-template-columns:minmax(0,1fr) auto;gap:8px}
 .ride-dialog[data-ride-screen] header h2{grid-column:1/-1;grid-row:2}
 .ride-dialog [data-ride-back]{grid-column:1;grid-row:1;justify-self:start}
 .ride-dialog [data-ride-close]{grid-column:2;grid-row:1;justify-self:end}
 .ride-dialog [data-ride-role-nav] button{flex:1 1 9rem;min-width:min(100%,9rem)}
}
