@charset "UTF-8";
/* QLINE guide: builds on people-mover.css (shared .pm-* layout) with the streetcar's red and a tall Woodward map. */
.ql-page{--ql-red:#e3342c;--ql-red-soft:#ff8a7a}
.ql-page .pm-title-kicker{color:var(--ql-red-soft)}
.ql-page .pm-section-head .eyebrow{color:var(--ql-red-soft)}
.ql-page .pm-section-head.is-light .eyebrow,.ql-page .pm-intro .eyebrow,.ql-page .pm-station-main .eyebrow{color:#b3261f}
.ql-page .pm-prose a,.ql-page .pm-card a,.ql-page .pm-faq-list a,.ql-page .pm-sources a{color:#b3261f}
.ql-page .pm-walk,.ql-page .pm-event-near{color:#b3261f}
.ql-page .pm-dropcap::first-letter{color:var(--ql-red)}
.ql-page .pm-timeline{border-left-color:var(--ql-red)}
.ql-page .pm-timeline li::before{border-color:var(--ql-red-soft)}
.ql-page .pm-timeline.is-light li::before{border-color:var(--ql-red)}
.ql-page .pm-timeline.is-light li.is-milestone::before{background:var(--ql-red);border-color:var(--ql-red)}
.ql-page .pm-bar rect{fill:var(--ql-red-soft)}
.ql-page .pm-bars tr.is-record .pm-bar rect{fill:var(--pm-lime)}
.ql-page .pm-bars tr.is-closed .pm-bar rect{fill:#5a625e}
.ql-page .pm-ride{background:radial-gradient(ellipse at 20% 0%,#2a1414 0%,var(--pm-night) 55%)}
.ql-page .pm-ride-progress span{background:linear-gradient(90deg,var(--ql-red),var(--pm-lime))}
.ql-num,.ql-page .pm-num{background:var(--ql-red)}

.ql-line-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1fr)}
.ql-map-frame{position:relative;aspect-ratio:1000/1473.7;border-radius:14px;overflow:hidden;background:#101614;box-shadow:0 30px 70px rgba(0,0,0,.45);border:1px solid var(--pm-line)}
.ql-map-frame>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block}
.ql-map-frame .pm-map-aerial{filter:saturate(.9) brightness(.8) contrast(1.05)}
.ql-line-shadow{fill:none;stroke:rgba(227,52,44,.35);stroke-width:22;stroke-linecap:round;stroke-linejoin:round}
.ql-line{fill:none;stroke:var(--ql-red);stroke-width:8;stroke-linecap:round;stroke-linejoin:round}
.ql-map-svg.is-compact .ql-line{stroke-width:12}
.ql-map-svg .pm-station-label{font-size:17px}
.ql-map-svg.is-compact .pm-station-label{font-size:30px;stroke-width:9px}
.ql-map-svg .pm-streets text{font-size:12px}
.ql-map-svg .pm-landmark{font-size:17px}
.ql-page .pm-car-body{fill:#fff;stroke:var(--ql-red);stroke-width:3}
.ql-page .pm-car-window{fill:var(--ql-red);opacity:.9}
.ql-page .pm-car-glow{fill:rgba(255,255,255,.18)}
.ql-page .pm-car.is-live .pm-car-body{fill:var(--pm-lime);stroke:#0e1412}
.ql-page .pm-car.is-live .pm-car-window{fill:#0e1412}
.ql-page .pm-car.is-live .pm-car-glow{fill:rgba(233,252,130,.3)}
.ql-page .pm-ride-car .pm-car-body{fill:#ffbd59;stroke:#0e1412}
.pm-legend i.is-qline-track{background:var(--ql-red)}
.pm-legend i.is-sched{width:14px;height:8px;background:#fff;border:2px solid var(--ql-red);box-sizing:border-box}
.ql-live-flag{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;padding:6px 11px;border:1px solid var(--pm-lime);border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--pm-lime)}
.ql-live-flag span:first-child{animation:pulse 1.8s infinite}
.ql-live-flag.is-hero{margin-top:12px}
.ql-board-head{display:grid;grid-template-columns:34px minmax(0,1fr) 70px 70px;gap:12px;padding:0 4px 8px;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:var(--pm-muted);font-weight:700}
.ql-board-head span:nth-child(n+3){text-align:right}
.ql-board-list a{grid-template-columns:34px minmax(0,1fr) 70px 70px}
.ql-board-list .pm-board-next{min-width:0}
.ql-era-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.ql-era-photos figure{margin:0}
.ql-era-photos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:4px;filter:sepia(.15)}
.ql-era-photos figcaption{font-size:10px;line-height:1.45;color:var(--pm-muted);margin-top:5px}
.ql-era-photos figcaption a{color:var(--pm-muted)}
.ql-next-pair{display:flex;flex-wrap:wrap;gap:10px}
.ql-page .pm-station-nav>span{display:block}
.ql-side-map .ql-map-frame{border-radius:12px}
@media(max-width:1100px){.ql-line-layout{grid-template-columns:minmax(0,1fr)}.ql-map{max-width:620px}}
@media(max-width:700px){.ql-board-head,.ql-board-list a{grid-template-columns:30px minmax(0,1fr) 56px 56px;gap:8px}.ql-era-photos{grid-template-columns:1fr 1fr}}

/* Long gallery strips must not widen the single mobile column */
.ql-page .pm-station-main,.ql-page .pm-station-side{min-width:0}
