/* Plot-local position feedback only. Ride guidance is a viewport portal. */
.ride-feedback{position:absolute;inset:0;pointer-events:none;overflow:visible;border-radius:inherit}
.ride-pnl{position:absolute;z-index:7;top:0;right:12px;translate:0 var(--pill-y,0px);height:26px;padding:3px 8px;border-radius:13px;white-space:nowrap;font-size:13px;line-height:18px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--positive-text);isolation:isolate;transition:opacity 150ms ease;animation-duration:220ms;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both}
.ride-pnl[data-tone=down]{color:var(--negative-text)}
.ride-pnl:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:rgba(95,211,154,.14)}
.ride-pnl[data-tone=down]:before{background:rgba(240,107,107,.14)}
.ride-pnl strong{font-weight:600}
.ride-pnl.released{translate:0 calc(var(--pill-y,0px) - 24px);opacity:0;transition:translate 320ms cubic-bezier(.22,1,.36,1),opacity 320ms ease}
.ride-pnl[hidden]{display:none}
@keyframes pnl-arrive{from{opacity:0;transform:translateY(var(--pnl-pop,8px))}to{opacity:1;transform:translateY(0)}}
@keyframes pnl-arrive-again{from{opacity:0;transform:translateY(var(--pnl-pop,8px))}to{opacity:1;transform:translateY(0)}}
@keyframes pnl-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.ride-pnl{transition-property:opacity!important}.ride-pnl{animation-name:pnl-fade!important;animation-duration:150ms}.ride-pnl.released{animation:none!important;translate:0 var(--pill-y,0px);opacity:0}}
