.rides-section{flex-direction:column;gap:14px;padding-top:4px;display:flex}.rides-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.rides-empty{border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--card-tint);color:var(--ink-muted);margin:0;padding:18px 16px;font-size:13px;line-height:1.5}.rides-empty em{font-family:var(--font-body);color:var(--ink-2);margin-right:4px;font-style:normal;font-weight:600}.ride-card{text-align:left;border-radius:var(--radius-md);background:var(--card);border:1px solid var(--line);width:100%;min-height:0;color:var(--ink);cursor:pointer;letter-spacing:-.005em;box-shadow:var(--shadow-soft);flex-direction:column;gap:12px;padding:14px 16px 14px 20px;font-weight:400;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;position:relative;overflow:hidden}.ride-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift);transform:translateY(-1px)}.ride-card.ride-card-selected{border-color:var(--accent-strong);box-shadow:0 0 0 5px #0000000a, var(--shadow-lift)}.ride-card-accent{background:var(--sage);border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.ride-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ride-card-head-left{align-items:center;gap:12px;min-width:0;display:flex}.ride-code{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-muted);background:var(--card-tint);border:1px solid var(--line);text-transform:uppercase;border-radius:4px;padding:3px 6px;font-size:11px;font-weight:500;line-height:1}.ride-vehicle{font-family:var(--font-body);letter-spacing:-.015em;color:var(--ink);font-size:1.5rem;font-weight:600;line-height:1.05}.ride-card-head-right{flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.ride-stage-kicker{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--sage);font-size:10px;font-weight:600}.ride-elapsed{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:0;font-size:13px}.ride-stage{color:var(--ink-2);letter-spacing:-.005em;align-items:center;gap:7px;font-size:13px;display:inline-flex}.ride-stage-dot{background:var(--sage);border-radius:999px;width:7px;height:7px}@keyframes stage-pulse{0%,to{box-shadow:0 0 0 2px #5fb7782e}50%{box-shadow:0 0 0 4px #4381552e}}.ride-trip{grid-template-columns:16px 1fr;align-items:stretch;gap:10px;display:grid}.ride-trip-line{flex-direction:column;align-items:center;width:14px;padding-top:4px;padding-bottom:4px;display:flex;position:relative}.ride-trip-dot{border-radius:999px;flex:none;width:9px;height:9px}.ride-trip-dot-from{background:var(--card);border:2px solid var(--ink)}.ride-trip-dot-to{background:var(--ink);position:relative}.ride-trip-dot-to:after{content:"";border:1px solid var(--ink);opacity:.25;border-radius:999px;position:absolute;inset:-4px}.ride-trip-leg{background:repeating-linear-gradient(to bottom, var(--ink-faint) 0, var(--ink-faint) 3px, transparent 3px, transparent 6px);flex:1 1 0;width:1px;margin:3px 0}.ride-trip-labels{color:var(--ink);flex-direction:column;justify-content:space-between;gap:10px;font-size:13px;line-height:1.3;display:flex}.ride-trip-from{color:var(--ink)}.ride-card-ride_started .ride-trip-from,.ride-card-arrived_at_destination .ride-trip-from{text-decoration:line-through;-webkit-text-decoration-color:var(--ink-faint);text-decoration-color:var(--ink-faint);color:var(--ink-muted)}.ride-trip-to{color:var(--ink-2);font-weight:700}.ride-card-driver_assigned .ride-trip-to{color:var(--ink-muted);font-weight:400}.ride-card-canceled{cursor:default}.ride-card-canceled:hover{border-color:var(--line);box-shadow:var(--shadow-soft);transform:none}.ride-card-canceled .ride-card-accent,.ride-card-canceled .ride-stage-dot{background:var(--terracotta)}.ride-card-canceled .ride-stage-kicker,.ride-card-canceled .ride-code{color:var(--terracotta)}.ride-card-canceled .ride-trip-from,.ride-card-canceled .ride-trip-to{color:var(--ink-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--ink-faint);text-decoration-color:var(--ink-faint);font-weight:400}.ride-card-foot{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.ride-vehicle-chip{align-items:center;gap:8px;min-width:0;display:inline-flex}.ride-vehicle-number{background:var(--ink);width:30px;height:30px;color:var(--paper);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:0;box-shadow:var(--shadow-marker);border-radius:50%;place-items:center;font-size:12px;font-weight:500;display:inline-grid}.ride-vehicle-name{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.ride-passenger-meta{flex-direction:column;min-width:0;display:flex}.ride-passenger-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.ride-passenger-phone{color:var(--ink-muted);font-size:12px}.ride-remaining{color:var(--ink-muted);align-items:baseline;gap:6px;font-size:12px;display:inline-flex}.ride-remaining-label{letter-spacing:.02em}.ride-remaining-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink);font-size:13px}
