:root{--tm-red:#ed001c;--tm-red-dark:#b90016;--tm-red-soft:#fff1f3;--tm-ink:#20242b;--tm-text:#454d58;--tm-muted:#69717c;--tm-line:#e6e8ec;--tm-soft:#f2f3f6;--tm-page:#f7f8fa;--tm-radius:16px;--tm-nav-h:68px}.app.public-app:not(.driver){--red:var(--tm-red);--ink:var(--tm-ink);--muted:var(--tm-muted);--line:var(--tm-line);color:var(--tm-ink);background:var(--tm-page);min-width:0;overflow-x:hidden;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app.public-app:not(.driver),.app.public-app:not(.driver) *{box-sizing:border-box}.app.public-app:not(.driver) :is(button,input,select,textarea){font-family:inherit}.app.public-app:not(.driver) :is(h1,h2,h3,p){overflow-wrap:anywhere}.app.public-app:not(.driver) :is(button,input,select,textarea,summary,a):focus-visible{outline:3px solid rgba(237,0,28,.25);outline-offset:2px;box-shadow:none}.app.public-app:not(.driver)>.shell{width:100%;max-width:1040px;min-width:0;margin:0 auto;padding:24px 20px calc(var(--tm-nav-h) + 32px + env(safe-area-inset-bottom))}.app.public-app:not(.driver)>.shell>*{min-width:0}.app.public-app:not(.driver)>.appbar{min-height:64px;padding:calc(8px + env(safe-area-inset-top)) max(16px,calc((100vw - 1040px)/2 + 20px)) 8px;color:var(--tm-ink);background:#fffffff5;border:0;border-bottom:1px solid var(--tm-line);box-shadow:0 2px 14px #171b2309}.app.public-app:not(.driver)>.appbar .apptitle{min-width:0}.app.public-app:not(.driver)>.appbar .apptitle small{color:var(--tm-muted);font-size:9px;font-weight:600;letter-spacing:.1em}.app.public-app:not(.driver)>.appbar .apptitle strong{color:var(--tm-ink);font-size:16px;font-weight:650}.app.public-app:not(.driver)>.appbar :is(.appback,.linequick){width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:12px;color:var(--tm-ink);background:transparent;box-shadow:none}.app.public-app:not(.driver)>.tm-reference-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;width:100%;min-height:52px;padding:env(safe-area-inset-top) max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));color:var(--tm-ink);background:#fffffff7;border:0;border-bottom:1px solid var(--tm-line)}.app.public-app:not(.driver)>.tm-reference-header>:is(h1,strong){min-width:0;margin:0;padding:0 6px;overflow:hidden;color:var(--tm-ink);font-size:15px;font-weight:650;line-height:1.25;text-align:center;text-overflow:ellipsis;white-space:nowrap}.app.public-app:not(.driver)>.tm-reference-header .appback{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:12px;color:var(--tm-ink);background:transparent}.app.public-app:not(.driver)>.tm-reference-header .tm-header-spacer{width:44px;height:44px}.app.public-app:not(.driver).view-home>:is(.appbar,.tm-reference-header){display:none}.app.public-app:not(.driver).view-home>.shell{padding-top:20px}.app.public-app:not(.driver)>.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:80;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;max-width:none;height:calc(var(--tm-nav-h) + env(safe-area-inset-bottom));padding:4px max(5px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(5px,env(safe-area-inset-left));gap:0;color:var(--tm-muted);background:#fffffff7;border:0;border-top:1px solid var(--tm-line);border-radius:0;box-shadow:0 -5px 22px #171b230e;-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);transform:none}.app.public-app:not(.driver)>.bottomnav .navitem{display:flex;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:58px;padding:4px 1px;color:#747b86;background:transparent;border:0;border-radius:12px;box-shadow:none}.app.public-app:not(.driver)>.bottomnav .navicon{display:grid;place-items:center;width:38px;height:27px;padding:0;color:inherit;background:transparent;border-radius:10px}.app.public-app:not(.driver)>.bottomnav .navicon .uiicon{width:21px;height:21px;stroke-width:1.9}.app.public-app:not(.driver)>.bottomnav .navitem small{display:block;max-width:100%;overflow:hidden;color:inherit;font-size:9.5px;font-weight:500;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.app.public-app:not(.driver)>.bottomnav .navitem.active{color:var(--tm-red)}.app.public-app:not(.driver)>.bottomnav .navitem.active .navicon{color:var(--tm-red);background:var(--tm-red-soft)}.app.public-app:not(.driver)>.bottomnav .navitem.active small{font-weight:650}.app.public-app:not(.driver) :is(.schoolpanel,.schoollist,.ux-stop,.infolink,.passagecard,.tripstops,.public-map,.jr-school-entry,.aboutcard,.tm-school-row,.tm-result,.tm-favorite-card,.tm-itinerary-card,.tm-itinerary-map,.infogrid>a,.infogrid>button){border-color:var(--tm-line);border-radius:var(--tm-radius);box-shadow:none}.app.public-app:not(.driver) :is(input,select,textarea){max-width:100%;color:var(--tm-ink);background:#fff;border-color:var(--tm-line)}.app.public-app:not(.driver) :is(.tm-search-field,.ux-search .searchwrap,.schoolsearch){display:flex;align-items:center;width:100%;min-height:52px;gap:10px;padding:10px 13px;color:var(--tm-muted);background:var(--tm-soft);border:1px solid transparent;border-radius:14px}.app.public-app:not(.driver) :is(.tm-search-field,.ux-search .searchwrap,.schoolsearch):focus-within{color:var(--tm-red);background:#fff;border-color:#f0c4ca;outline:3px solid rgba(237,0,28,.08)}.app.public-app:not(.driver) :is(.tm-search-field,.ux-search .searchwrap,.schoolsearch) .uiicon{flex:0 0 auto;width:20px;height:20px}.app.public-app:not(.driver) :is(.tm-search-field input,.ux-search .search){width:100%;min-width:0;padding:0;color:var(--tm-ink);background:transparent;border:0;outline:0;font-size:16px}.app.public-app:not(.driver) .tm-public-home{width:100%;max-width:660px;margin:0 auto;padding:0}.app.public-app:not(.driver) .tm-home-logo{display:block;width:min(190px,62vw);height:auto;margin:2px auto 24px}.app.public-app:not(.driver) .tm-home-heading{margin:0 -20px;padding:0 20px 18px;background:linear-gradient(165deg,#fff 5%,#f1f3f7)}.app.public-app:not(.driver) .tm-home-heading h1{max-width:340px;margin:0;font-size:clamp(27px,7vw,32px);font-weight:650;line-height:1.12;letter-spacing:-.045em}.app.public-app:not(.driver) .tm-home-heading p{margin:9px 0 0;color:var(--tm-muted);font-size:13px;line-height:1.5}.app.public-app:not(.driver) .tm-home-search-card{margin:0 0 20px;padding:15px;background:#fff;border:1px solid var(--tm-line);border-radius:18px;box-shadow:0 4px 16px #171b230b}.app.public-app:not(.driver) .tm-home-search-card>p{margin:0 0 10px;color:var(--tm-text);font-size:13px;line-height:1.4}.app.public-app:not(.driver) .tm-search-form{display:grid;gap:10px;margin:0}.app.public-app:not(.driver) .tm-quick-label{margin:0 0 9px;color:var(--tm-muted);font-size:12px}.app.public-app:not(.driver) .tm-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 20px}.app.public-app:not(.driver) .tm-quick button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:92px;gap:9px;padding:12px 5px;color:var(--tm-ink);background:#fff;border:1px solid var(--tm-line);border-radius:15px;box-shadow:0 3px 12px #171b2306}.app.public-app:not(.driver) .tm-quick .uiicon{width:27px;height:27px;color:var(--tm-red)}.app.public-app:not(.driver) .tm-quick span{max-width:100%;overflow:hidden;font-size:11px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.app.public-app:not(.driver) .tm-public-home .ux-section{margin:20px 0}.app.public-app:not(.driver) .public-nav-page{width:100%;max-width:760px;margin:0 auto}.app.public-app:not(.driver) .tm-discovery>h1,.app.public-app:not(.driver) .tm-favorites>h1,.app.public-app:not(.driver) .infohero{display:none}.app.public-app:not(.driver) .tm-discovery .tm-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:12px 0 10px}.app.public-app:not(.driver) .tm-filters button{min-width:0;min-height:44px;padding:7px 3px;overflow:hidden;color:var(--tm-muted);background:var(--tm-soft);border:0;border-radius:11px;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.app.public-app:not(.driver) .tm-filters button.active{color:#fff;background:var(--tm-red)}.app.public-app:not(.driver) .tm-result-group{margin:18px 0}.app.public-app:not(.driver) .tm-result-grid{display:grid;gap:8px}.app.public-app:not(.driver) .tm-result{display:flex;align-items:center;width:100%;min-width:0;min-height:72px;gap:11px;padding:11px 12px;color:var(--tm-ink);background:#fff;border:1px solid var(--tm-line);text-align:left}.app.public-app:not(.driver) .tm-result-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;color:var(--tm-red);background:var(--tm-red-soft);border-radius:10px}.app.public-app:not(.driver) .tm-result-copy{flex:1;min-width:0}.app.public-app:not(.driver) .tm-result-copy strong{display:block;color:var(--tm-ink);font-size:13px;font-weight:650;line-height:1.35}.app.public-app:not(.driver) .tm-result-copy small{display:block;margin-top:2px;color:var(--tm-muted);font-size:10px;line-height:1.4}.app.public-app:not(.driver) .tm-more{display:block;min-height:46px;margin:20px auto;padding:10px 16px;color:var(--tm-text);background:#fff;border:1px solid var(--tm-line);border-radius:13px;font-size:12px}.app.public-app:not(.driver) :is(.schoolpanel,.schoollist,.ux-stop,.public-map,.tripstops){min-width:0;overflow:hidden}.app.public-app:not(.driver) .tm-school-row>span:not(.tm-school-clock),.app.public-app:not(.driver) .tm-result-copy,.app.public-app:not(.driver) .tm-favorite-open>span:last-child{min-width:0;flex:1}@media(max-width:380px){.app.public-app:not(.driver)>.shell{padding-left:12px;padding-right:12px}.app.public-app:not(.driver) .tm-home-heading{margin-left:-12px;margin-right:-12px;padding-left:16px;padding-right:16px}.app.public-app:not(.driver) .tm-home-heading h1{font-size:27px;max-width:300px}.app.public-app:not(.driver) .tm-home-logo{width:172px;margin-bottom:21px}.app.public-app:not(.driver) .tm-quick{gap:6px}.app.public-app:not(.driver) .tm-quick span{font-size:10px}.app.public-app:not(.driver) .tm-discovery .tm-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.app.public-app:not(.driver) .tm-school-controls{grid-template-columns:1fr}.app.public-app:not(.driver) .tm-school-row{padding:11px;gap:8px}.app.public-app:not(.driver) .tm-school-row>.tm-school-clock{flex-basis:56px;padding-right:7px}.app.public-app:not(.driver) .tm-itinerary-list button{grid-template-columns:20px 50px minmax(0,1fr);gap:7px;padding:9px}.app.public-app:not(.driver) .tm-itinerary-list button>.uiicon{display:none}}@media(min-width:760px){.app.public-app:not(.driver)>.shell{padding:28px 24px calc(var(--tm-nav-h) + 42px)}.app.public-app:not(.driver) .tm-public-home{max-width:720px}.app.public-app:not(.driver) .tm-home-logo{width:220px;margin:0 0 24px}.app.public-app:not(.driver) .tm-home-heading{margin:0;padding:0 0 20px;background:none}.app.public-app:not(.driver) .tm-home-heading h1{max-width:600px;font-size:40px}.app.public-app:not(.driver) .tm-home-search-card{padding:20px}.app.public-app:not(.driver) .tm-public-home .tm-search-form{grid-template-columns:minmax(0,1fr) 150px}.app.public-app:not(.driver) .tm-quick{gap:14px}.app.public-app:not(.driver) .tm-quick button{min-height:104px}.app.public-app:not(.driver) .tm-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app.public-app:not(.driver) .tm-itinerary-layout{grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:start}.app.public-app:not(.driver) .tm-itinerary-card{grid-column:2;grid-row:1}.app.public-app:not(.driver) .tm-itinerary-map,.app.public-app:not(.driver) .tm-itinerary-list{grid-column:1;grid-row:1}.app.public-app:not(.driver) .tm-itinerary-map .mapwrap{height:560px}.app.public-app:not(.driver)>.bottomnav{left:50%;right:auto;bottom:14px;width:min(650px,calc(100% - 32px));height:70px;padding:5px 10px;border:1px solid var(--tm-line);border-radius:18px;box-shadow:0 8px 28px #171b2314;transform:translate(-50%)}.app.public-app:not(.driver)>.bottomnav .navitem small{font-size:10.5px}}@media(hover:hover){.app.public-app:not(.driver) .tm-result:hover,.app.public-app:not(.driver) .tm-school-row:hover,.app.public-app:not(.driver) .tm-favorite-card:hover{border-color:#cbd0d8}}.app.public-app:not(.driver) .tm-favorite-symbol{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;background:var(--tm-red-soft);color:var(--tm-red)}.app.public-app:not(.driver) .tm-favorite-symbol svg{width:22px;height:22px}.app.public-app:not(.driver) .tm-quick .uiicon{width:22px;height:22px;padding:11px;box-sizing:content-box;border-radius:13px;background:var(--tm-red-soft);color:var(--tm-red)}.app.public-app:not(.driver) .tm-quick button{gap:7px}.app.public-app:not(.driver) .tm-quick span{font-size:12px;font-weight:550;letter-spacing:-.01em}.tm-favorite-types{display:flex;grid-template-columns:none;flex-wrap:wrap;gap:7px}.tm-favorite-types span{padding:8px 15px;border-radius:999px;background:var(--tm-soft);color:var(--tm-muted);font-size:12px;font-weight:550;text-align:center;white-space:nowrap}.tm-favorite-types span.active{background:var(--tm-red);color:#fff}
