:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#203e35;background:#f6f5f0;font-synthesis:none}*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #327b62;outline-offset:5px}a{color:inherit}svg{display:block}.wrap{width:min(100% - 64px,1040px);margin:auto}.stopbar{display:flex;align-items:center;gap:17px;padding:21px 23px;background:#fffefa;border:1px solid #e1e3d9;border-radius:17px}.route-badge{background:#e9efda;border:1px solid #dce4c9;border-radius:10px;display:grid;place-items:center;min-width:49px;height:49px;font-size:24px;font-weight:750}.stop-title{font-size:18px;font-weight:650;letter-spacing:-.5px}.stop-sub{font-size:12px;color:#728074;margin-top:6px}.east{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px;color:#506c5a;background:#f1f3e9;padding:9px 12px;border-radius:30px}.section-label{display:flex;align-items:center;justify-content:space-between;margin:30px 0 13px}.section-label h2{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:750;margin:0;color:#67776b}.status{font-size:12px;display:flex;align-items:center;gap:7px;color:#697769}.dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:#8b937f}.status.live .dot{background:#367d59;box-shadow:0 0 0 3px #e5ecd9}.cards{display:grid;grid-template-columns:1.25fr 1fr;gap:18px}.card{min-height:317px;border-radius:21px;padding:27px 29px;display:flex;flex-direction:column;position:relative;overflow:hidden}.primary{background:#244a3d;color:#fffdf2}.secondary{background:#e9eddf;border:1px solid #dce1d1;color:#2b493b}.card-top{display:flex;align-items:center;justify-content:space-between}.card-title{font-size:12px;font-weight:550;letter-spacing:.2px;display:flex;gap:9px;align-items:center}.bus-id{font-size:10px;letter-spacing:.5px;padding:6px 8px;border-radius:5px;background:#ffffff12;color:#cddbcc}.secondary .bus-id{background:#dce3d2;color:#607353}.distance{display:flex;align-items:baseline;gap:14px;margin:20px 0 20px;min-height:85px}.number{font-size:83px;line-height:1;font-weight:500;letter-spacing:-5px;font-variant-numeric:tabular-nums}.primary .number{color:#e4efac}.unit{font-size:17px;line-height:1.4;max-width:130px}.unit small{font-size:12px;display:block;opacity:.65}.next-stop{border-top:1px solid #ffffff25;padding-top:18px;margin-top:auto}.secondary .next-stop{border-color:#cfd8c4}.next-label{font-size:10px;letter-spacing:1.6px;text-transform:uppercase;opacity:.62;margin:0 0 8px}.next-name{font-size:17px;font-weight:550;letter-spacing:-.4px;line-height:1.4;margin:0}.seen{font-size:11px;opacity:.6;margin:9px 0 0}.empty-title{font-size:28px;line-height:1.2;letter-spacing:-.8px;font-weight:500;margin:32px 0 16px;max-width:260px}.empty-text{font-size:13px;line-height:1.6;opacity:.75;max-width:300px;margin:0}.at-stop .number{font-size:50px;letter-spacing:-2px}.at-stop .distance{display:block;margin:30px 0}.at-stop .unit{margin-top:9px;font-size:13px;max-width:none}.updates{min-height:59px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;color:#7b8377}.refresh{display:flex;align-items:center;gap:7px;border:none;background:none;color:#45634e;font-size:12px;font-weight:600;padding:10px 0 10px 12px}.refresh:disabled{opacity:.5;cursor:wait}.warning{background:#f3ead4;color:#766036;border:1px solid #e5d9bb;padding:13px 17px;font-size:12px;line-height:1.6;border-radius:12px;margin:0 0 16px}.journey{padding:25px 27px 29px;background:#fffefa;border:1px solid #e1e3d9;border-radius:17px;margin-top:8px}.journey-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.journey h2{font-size:14px;font-weight:650;margin:0}.journey-head span{font-size:11px;color:#7c8578}.line{display:flex;list-style:none;margin:0;padding:26px 8px 8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#c3cbb7 transparent;scrollbar-width:thin}.station{flex:1 0 30px;position:relative;text-align:center;font-size:11px;color:#72806d;line-height:1.4;padding-top:8px}.station:before{content:"";height:2px;background:#dce1ce;position:absolute;left:-50%;right:50%;top:5px}.station:first-child:before{display:none}.station:after{content:"";width:9px;height:9px;background:#fbfcf3;border:2px solid #c3cbb7;border-radius:50%;position:absolute;left:calc(50% - 5px);top:1px}.station.home{color:#36513d;font-weight:700}.station.home:after{width:13px;height:13px;top:-1px;left:calc(50% - 7px);border:4px solid #315a42;background:#e7eebd;box-shadow:0 0 0 4px #ecf0df}.station.active{color:#365b44;font-weight:650}.station.active:after{background:#92a858;border-color:#92a858;box-shadow:0 0 0 4px #ecf0df}.station-tag{display:block;min-height:42px;margin:12px 3px 0;font-size:8px;line-height:1.5;letter-spacing:.3px}.station-name{display:block;writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap;margin:12px auto 8px;text-align:left;min-height:90px}.route-hint{margin:12px 0 0;font-size:11px;color:#7c8578}.route-empty{flex:1;font-size:12px;color:#7c8578;line-height:1.7;padding:0 0 8px}.line:focus-visible{outline:2px solid #327b62;outline-offset:5px;border-radius:5px}.journey-head{flex-wrap:wrap}.journey-head span{line-height:1.5}.helper{margin:22px 0 27px;color:#788173;font-size:11px;line-height:1.7;display:flex;gap:9px}.helper svg{flex-shrink:0;margin-top:1px}.helper p{margin:0}details{border-top:1px solid #dedfd5;padding:17px 0;color:#73806e;font-size:12px}summary{cursor:pointer;width:fit-content;font-weight:500}details p{max-width:740px;line-height:1.8;font-size:12px;margin:12px 0}footer{display:flex;justify-content:space-between;gap:20px;margin:13px 0 28px;font-size:10px;letter-spacing:.2px;color:#87907e}.footer-love{display:flex;gap:6px}.hidden{display:none!important}@media(min-width:1400px){.wrap{width:1040px}}@media(max-width:680px){.wrap{width:calc(100% - 36px)}.stopbar{padding:17px 15px;gap:12px}.stop-title{font-size:16px}.stop-sub{font-size:11px}.east{font-size:0;padding:9px}.east b{font-size:16px}.cards{grid-template-columns:1fr;gap:12px}.card{padding:23px;min-height:282px}.secondary{min-height:230px}.secondary .distance{margin:15px 0;min-height:62px}.secondary .number{font-size:60px}.secondary .unit{font-size:15px}.secondary .empty-title{margin:22px 0 12px}.section-label{margin-top:26px}.journey{padding:22px 17px}.journey-head span{font-size:10px}.station{flex-basis:30px;font-size:10px}.updates{font-size:10px}.number{font-size:80px}footer{font-size:9px}.helper{font-size:10px}.status{font-size:10px}.empty-title{font-size:26px}}@media(prefers-reduced-motion:no-preference){.live .dot{animation:breathe 3s ease-in-out infinite}@keyframes breathe{50%{box-shadow:0 0 0 5px #367d5910}}}
.stop-info{flex:1;min-width:0}.app-title{font-size:20px;font-weight:750;letter-spacing:-.6px;margin:0 0 6px;line-height:1.2}
.direction-switch{display:flex;align-items:center;justify-content:center;gap:20px;padding:18px 0;margin:0 0 4px;min-height:80px}
.direction-label{border:0;background:transparent;padding:10px 0;font-size:13px;line-height:1.4;color:#87907e;min-height:44px;flex:1;max-width:230px;transition:color .18s}
.west-label{text-align:right}.east-label{text-align:left}.direction-label[aria-pressed="true"]{color:#244a3d;font-weight:700}
.slider-control{position:relative;width:90px;height:44px;flex-shrink:0;border-radius:24px}.slider-rail{position:absolute;inset:7px 0;background:#e3e8d5;border:1px solid #cdd7bc;border-radius:24px}
.bus-thumb{position:absolute;left:4px;top:4px;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;color:#e8f2b0;background:#254c3f;box-shadow:0 2px 5px #203e3520;pointer-events:none;transform:translateX(46px);transition:transform .2s ease}
.bus-thumb.west{transform:translateX(0)}.slider-control:focus-within{outline:3px solid #327b62;outline-offset:4px}
#direction-slider{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.auto-direction{border:0;background:transparent;color:#365b44;text-decoration:underline;font:inherit;padding:10px 0;min-height:40px}
@media(max-width:680px){.direction-switch{gap:12px;min-height:72px;padding:14px 0}.direction-label{font-size:12px}.east{font-size:11px;white-space:nowrap}.stop-sub{line-height:1.5}.stopbar{flex-wrap:wrap}.east{margin-left:61px}}
@media(prefers-reduced-motion:reduce){.bus-thumb,.direction-label{transition:none}}
/* Shared static-page navigation and route panels. */
.page-controls{display:flex;align-items:center;gap:16px}.page-controls .direction-switch{flex:1;min-width:0}.site-menu{position:relative;flex-shrink:0;border:0;padding:0;color:#254c3f}.site-menu summary{width:40px;height:40px;display:grid;place-items:center;list-style:none;background:#e9eddf;border:1px solid #dce1d1;border-radius:11px}.site-menu summary::-webkit-details-marker{display:none}.site-menu nav{position:absolute;left:0;top:49px;width:280px;max-width:calc(100vw - 36px);padding:7px;background:#fffefa;border:1px solid #dce1d1;border-radius:14px;box-shadow:0 10px 30px #203e3520;z-index:20}.site-menu a{display:block;text-decoration:none;padding:13px 15px;border-radius:9px;font-size:14px;font-weight:650}.site-menu a small{display:block;font-size:11px;font-weight:400;margin-top:5px;color:#728074}.site-menu a:hover,.site-menu a[aria-current=page]{background:#e9eddf}.page-header{margin-top:22px}.page-header .site-menu{margin-left:auto}.page-header .site-menu nav{left:auto;right:0}.page-header .stop-sub{line-height:1.6;margin-bottom:0}.page-note{font-size:12px;line-height:1.7;color:#75806e;margin:17px 4px 25px}.tracker-panel{margin:28px 0 35px}.tracker-heading{display:flex;gap:13px;align-items:center}.tracker-heading h2{font-size:17px;margin:0;letter-spacing:-.3px}.tracker-heading p{font-size:12px;line-height:1.6;color:#75806e;margin:5px 0 0}.tracker-direction{margin-left:auto;font-size:11px;white-space:nowrap;color:#75806e}.tracker-panel .section-label{margin-top:22px}.section-label h3{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:750;margin:0;color:#67776b}.journey h3{font-size:14px;font-weight:650;margin:0}.departure-time{font-size:49px;line-height:1.2;letter-spacing:-2px;margin:30px 0 6px;font-weight:500;font-variant-numeric:tabular-nums}.primary .departure-time{color:#e4efac}.departure-note{font-size:12px;opacity:.7;margin-bottom:26px}.page-help p{max-width:740px}.tracker-panel+.tracker-panel{border-top:1px solid #dedfd5;padding-top:28px}@media(max-width:680px){.page-controls{gap:10px}.page-controls .direction-switch{gap:8px}.page-controls .direction-label{font-size:11px}.page-controls .slider-control{width:80px}.page-controls .bus-thumb{transform:translateX(36px)}.page-controls .bus-thumb.west{transform:translateX(0)}.tracker-heading h2{font-size:15px}.tracker-heading p{font-size:11px}.tracker-direction{display:none}.page-header{flex-wrap:nowrap}.page-header .app-title{font-size:18px}.page-header .stop-title{font-size:15px}.page-header .route-badge{min-width:43px;height:43px;font-size:20px}.page-header .site-menu summary{width:35px;height:35px}}
@media(max-width:680px){.stopbar:not(.page-header){display:grid;grid-template-columns:49px minmax(0,1fr);gap:8px 12px}.stopbar:not(.page-header) .route-badge{grid-column:1;grid-row:1 / span 2}.stopbar:not(.page-header) .stop-info{grid-column:2;grid-row:1}.stopbar:not(.page-header) .east{grid-column:2;grid-row:2;justify-self:start;margin-left:0}}
/* Fixed-stop sticker landing page. */
.stop-page-title{margin:0;line-height:1.4;overflow-wrap:anywhere}.stop-link-error{margin-top:24px}.stop-link-error p{margin:0 0 12px}
/* Nearby stop discovery and destination controls. */
[hidden]{display:none!important}.nearby-discovery{margin:28px 0}.nearby-intro{margin-bottom: 12px;padding:30px;border:1px solid #dce1d1;border-radius:21px;background:#e9eddf}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.6px;color:#67776b;font-weight:700;margin:0 0 12px}.nearby-intro h2{font-size:30px;letter-spacing:-.8px;font-weight:600;margin:0 0 13px}.nearby-intro>p:not(.eyebrow){font-size:14px;line-height:1.7;max-width:520px}.location-button{background:#244a3d;color:#fffdf2;border:0;border-radius:12px;padding:15px 22px;font-weight:650;min-height:48px;margin:10px 0 4px}.location-button:disabled{opacity:.65;cursor:wait}.nearby-status{font-size:14px;line-height:1.7;margin:24px 4px 16px}.nearby-status:empty{display:none}.nearby-routes{display:grid;gap:12px}.nearby-route{display:flex;align-items:center;gap:16px;text-align:left;width:100%;border:1px solid #dce1d1;border-radius:16px;padding:20px;background:#fffefa;color:#203e35}.nearby-route:hover{background:#f0f3e7;border-color:#9baa8d}.nearby-route-info{display:grid;gap:6px;flex:1;min-width:0}.nearby-route-info strong{font-size:17px}.nearby-route-info span{font-size:13px}.nearby-route-info small{font-size:11px;color:#728074;line-height:1.6}.nearby-distance{font-size:12px;white-space:nowrap;color:#506c5a}.nearby-text-button{border:0;background:transparent;color:#365b44;text-decoration:underline;min-height:44px;padding:12px 4px;font-size:13px;margin:15px 0}.destination-switch{display:flex;gap:8px;border-radius:16px;padding:6px;background:#e9eddf}.destination-switch button{flex:1;border:1px solid transparent;border-radius:11px;background:transparent;color:#506c5a;padding:14px 16px;min-height:50px;font-size:14px;line-height:1.4;overflow-wrap:anywhere}.destination-switch button[aria-pressed=true]{background:#244a3d;color:#fffdf2}.nearby-selected-heading{margin:0 0 18px}.nearby-selected-heading .route-badge{flex-shrink:0}#nearby-detail .tracker-panel{margin-top:20px}@media(max-width:680px){.nearby-intro{padding:24px 20px}.nearby-intro h2{font-size:26px}.nearby-route{padding:16px 13px;gap:11px}.nearby-route .route-badge{font-size:19px;min-width:44px;height:44px}.nearby-route-info strong{font-size:15px}.nearby-route-info span{font-size:12px}.nearby-distance{font-size:11px}.destination-switch button{font-size:12px;padding:12px 9px}}

.vehicle-destination{font-size:12px;line-height:1.5;margin:0 0 16px;opacity:.85}
