/* Rail Café — fixed bottom mobile track-dock navigation */
.rc-track-nav{position:fixed;z-index:80;left:.7rem;right:.7rem;bottom:calc(.55rem + var(--rc-safe-bottom));display:flex;align-items:stretch;gap:.1rem;min-height:66px;padding:.4rem .4rem;border:1px solid var(--rc-line);border-radius:var(--rc-r-pill);background:rgba(15,19,28,.96);box-shadow:0 18px 50px rgba(0,0,0,.5);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transform:translateZ(0);overflow:hidden;box-sizing:border-box}

.rc-track-nav__rail{position:absolute;top:6px;left:14%;right:14%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,127,255,.45),transparent);pointer-events:none}
.rc-track-nav__rail::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,rgba(197,204,216,.3) 0 1px,transparent 1px 9px)}

.rc-track-nav__form{flex:1 1 0;min-width:0;margin:0;display:flex}

.rc-track-nav__stop{position:relative;z-index:1;display:flex;flex:1 1 0;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;width:100%;min-width:0;min-height:54px;padding:.25rem .1rem;border:0;background:none;color:var(--rc-muted);font-size:.6rem;line-height:1.1;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--rc-transition),transform var(--rc-transition)}
.rc-track-nav__stop small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.6rem}
.rc-track-nav__stop:hover,.rc-track-nav__stop.is-active{color:var(--rc-white)}
.rc-track-nav__stop.is-active{transform:translateY(-1px)}
.rc-track-nav__stop:focus-visible{outline:2px solid var(--rc-blue);outline-offset:-2px;border-radius:var(--rc-r-sm)}

.rc-track-nav__signal{position:relative;display:grid;place-items:center;width:31px;aspect-ratio:1;flex:0 0 auto;overflow:hidden;border:1px solid var(--rc-line);border-radius:50%;background:#0a0e16;color:var(--rc-muted);transition:border-color var(--rc-transition),color var(--rc-transition),box-shadow var(--rc-transition)}
.rc-track-nav__stop.is-active .rc-track-nav__signal{border-color:var(--rc-blue);color:var(--rc-blue);box-shadow:0 0 16px rgba(0,127,255,.35)}

@media(max-width:380px){
    .rc-track-nav{left:.45rem;right:.45rem;min-height:58px;padding:.3rem .2rem;gap:0}
    .rc-track-nav__signal{width:27px}
    .rc-track-nav__stop{min-height:48px;font-size:.55rem}
    .rc-track-nav__stop small{font-size:.55rem}
}

/* Desktop: dock disappears, drop the reserved bottom safe-area entirely. */
@media(min-width:961px){
    :root{--rc-nav-h:0px}
    .rc-track-nav{display:none}
}
