:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#203e35;background:#f5f6ef;font-synthesis:none;--green:#154b3e;--muted:#63756b;--lime:#e4f2b4;--line:#dee5d9}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;min-height:46px;border:0}button:disabled{opacity:.55;cursor:default}a{color:var(--green)}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ba7930;outline-offset:4px}h1,h2,p{margin:0}h2{font-size:23px;line-height:1.25;letter-spacing:-.6px}p{line-height:1.6}.header{height:88px;max-width:1200px;margin:auto;display:flex;align-items:center;gap:14px;padding:0 32px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-size:25px;font-weight:760;letter-spacing:-1px;text-decoration:none;margin-right:auto}.brand-icon{display:grid;place-items:center;width:42px;height:42px;background:var(--green);border-radius:13px;color:var(--lime)}.brand-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5}.brand-dot{color:#96b841}.badge{font-size:11px;font-weight:700;background:#e9efe0;border-radius:20px;padding:8px 12px;white-space:nowrap}.badge.offline{background:#fff0d8;color:#81510c}.shell{max-width:1200px;margin:auto;padding:40px 32px 30px}.intro{position:relative;padding-bottom:30px}.eyebrow{font-size:10px;letter-spacing:1.65px;font-weight:760;color:var(--muted)}h1{font-size:clamp(38px,5.5vw,66px);line-height:1.04;letter-spacing:-2.7px;margin:16px 0}h1 span{color:#70934b}.intro>p:last-child{color:var(--muted);font-size:15px}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:28px;gap:26px}.tab{background:transparent;color:var(--muted);padding:14px 0;border-bottom:3px solid transparent;white-space:nowrap;font-size:14px;font-weight:650}.tab.active{color:var(--green);border-color:var(--green)}.layout{display:grid;grid-template-columns:310px 1fr;gap:34px;align-items:start}.panel{background:white;border:1px solid var(--line);border-radius:20px;padding:24px}.section-label{display:flex;gap:10px;align-items:center;margin-bottom:20px}.step{font-size:10px;background:var(--lime);border-radius:50%;padding:8px;font-weight:800}.section-label h2{font-size:19px}.panel label{display:block;font-size:12px;font-weight:650;margin:16px 0 7px}select,input,textarea{width:100%;border:1px solid #d2ddcf;border-radius:10px;padding:12px 13px;min-height:46px;background:#fbfcf8;color:var(--green);font-size:14px}textarea{resize:vertical}.primary,.secondary{display:flex;align-items:center;justify-content:center;border-radius:11px;padding:12px 16px;font-size:13px;font-weight:650;text-decoration:none;min-height:48px}.primary{background:var(--green);color:white}.secondary{background:#eaf0e3;color:var(--green)}.reference-actions{display:grid;gap:9px;margin-top:20px}.helper{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.6}.reference{font-size:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.text-button{padding:10px 0;background:transparent;color:var(--green);font-size:12px;font-weight:700;text-align:left}.install-card{background:var(--lime);border-radius:18px;padding:24px;margin-top:16px}.install-card h2{font-size:22px;margin:9px 0}.install-card p{font-size:13px;color:#476141}.android-link{display:block;font-size:12px;line-height:1.6;margin:18px 4px}.results-heading{display:flex;align-items:center;justify-content:space-between;padding:5px 0 18px}.results-heading h2{margin-top:6px;font-size:27px}.icon-button{width:44px;height:44px;min-height:44px;border-radius:50%;background:white;color:var(--green);font-size:24px;display:grid;place-items:center;border:1px solid var(--line)}.clock-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin:0 0 15px}.clock-row strong{font-weight:650}.cards{display:grid;gap:14px}.bus-card{background:white;border:1px solid var(--line);border-radius:20px;padding:24px;position:relative}.card-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}.line-label{font-size:12px;font-weight:750;letter-spacing:.1px;display:flex;gap:8px;align-items:center}.line-dot{height:8px;width:8px;background:#719747;border-radius:50%}.line-Umarizeiras .line-dot{background:#b57833}.line-Amanari .line-dot{background:#7b75a6}.vehicle{font-size:10px;color:var(--muted);background:#f1f4eb;border-radius:5px;padding:5px 8px}.destination{font-size:17px;font-weight:600;color:var(--green);margin:10px 0 18px}.time-line{display:flex;align-items:center;gap:20px}.estimate{font-size:43px;font-weight:760;line-height:1;letter-spacing:-1.7px;color:var(--green);font-variant-numeric:tabular-nums}.wait{font-size:13px;color:#577149;line-height:1.45}.variation{font-size:11px;color:var(--muted);margin-top:12px}.next-list{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:13px;margin-top:15px}.footnote{font-size:11px;color:var(--muted);margin:18px 5px}.warning{font-size:11px;color:#855519;margin-top:10px}.empty-title{font-size:23px;margin:15px 0 7px;font-weight:650}.card-details{margin-top:15px;border-top:1px solid var(--line);padding-top:8px}.card-details summary{font-size:12px;font-weight:650;padding:8px 0;cursor:pointer}.table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:7px;font-size:12px;max-height:250px;overflow:auto;padding:10px 0}.table-grid span{background:#f1f5ec;padding:7px;border-radius:7px}.source-note{font-size:11px;color:var(--muted);margin-top:9px}.notice{padding:12px 16px;background:#fff4de;border:1px solid #eed8b1;border-radius:10px;margin-bottom:18px;font-size:13px}.map-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.map-heading h2{margin:8px 0}.map-heading p:last-child{font-size:13px;color:var(--muted);max-width:650px}.map-frame{height:450px;border-radius:20px;overflow:hidden;border:1px solid var(--line);position:relative;background:#e6ecdf}#leaflet-map{height:100%;width:100%;z-index:1}.map-status{position:absolute;z-index:500;left:12px;right:12px;bottom:12px;pointer-events:none;background:#fffffff0;border-radius:10px;padding:9px 12px;font-size:11px}.leaflet-top{top:8px}.leaflet-touch .leaflet-bar a{width:44px;height:44px;line-height:44px}.map-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;background:white;border-radius:14px;padding:18px;margin-top:12px}.map-actions strong{font-size:13px}.map-actions p{font-size:11px;color:var(--muted);margin-top:4px}.map-legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:16px;font-size:11px;color:var(--muted)}.map-legend i{display:inline-block;height:7px;width:7px;margin-right:5px;border-radius:50%;background:var(--green)}.map-legend .blue-dot{background:#2469df}.suggestion-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:start;max-width:950px;margin:auto}.suggestion-layout>div h2{font-size:35px;letter-spacing:-1.2px;margin:14px 0}.suggestion-layout>div>p:last-of-type{color:var(--muted);font-size:14px}.suggestion-note{padding:20px;background:var(--lime);border-radius:14px;margin-top:24px;font-size:13px}.suggestion-note p{margin-top:5px}.optional{font-weight:400;color:var(--muted)}fieldset{border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:16px}legend{font-size:12px;font-weight:650}fieldset p{font-size:12px;color:var(--muted)}.button-pair{display:flex;gap:8px;margin-top:12px}.button-pair button{flex:1;font-size:11px}.panel form{margin:0}#submit-suggestion{width:100%}#suggestion-result,#suggestion-state{font-size:12px;line-height:1.6}#suggestion-result{margin-top:12px}.privacy{border-top:1px solid var(--line);margin-top:32px;padding-top:20px}.privacy summary{font-size:12px;font-weight:650;cursor:pointer;min-height:44px}.privacy p{font-size:12px;color:var(--muted);margin:8px 0;max-width:850px}footer{margin-top:22px;font-size:11px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:22px;padding:32px;max-width:450px;width:calc(100% - 32px);color:var(--green);background:#fbfcf7}dialog::backdrop{background:#102f2566}dialog h2{font-size:29px;margin:12px 30px 20px 0}dialog>p{font-size:14px;margin:15px 0}.dialog-close{position:absolute;right:14px;top:14px}.skip{position:absolute;top:-60px;left:12px;padding:12px;background:white;z-index:1000}.skip:focus{top:8px}[hidden]{display:none!important}.loading{color:var(--muted);min-height:170px}
@media(min-width:1000px){.intro{padding-bottom:34px}.intro h1 br{display:none}.intro h1 span{margin-left:12px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.bus-card:only-child{grid-column:1/-1}.time-line{gap:14px}.estimate{font-size:40px}.controls{position:sticky;top:20px}}
@media(max-width:760px){.header{height:74px;padding:0 20px}.brand{font-size:22px;gap:9px}.brand-icon{width:36px;height:36px}.badge{font-size:10px;padding:7px 9px}.shell{padding:28px 20px calc(28px + env(safe-area-inset-bottom))}.intro{padding-bottom:24px}h1{font-size:45px;letter-spacing:-2px;margin:13px 0}.intro>p:last-child{font-size:13px;max-width:310px}.tabs{gap:0;justify-content:space-between;margin-bottom:20px}.tab{font-size:12px}.layout{grid-template-columns:1fr;gap:24px}.panel{padding:20px;border-radius:17px}.controls .install-card,.android-link{display:none}.controls select{font-size:16px}.panel label{margin-top:12px}.reference-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.reference-actions button{font-size:11px;padding:10px}.section-label{margin-bottom:14px}.helper{font-size:11px}.results-heading{padding-bottom:13px}.results-heading h2{font-size:24px}.cards{gap:12px}.bus-card{padding:21px;border-radius:17px}.estimate{font-size:43px}.destination{margin:10px 0 17px}.map-heading{align-items:start;flex-direction:column;gap:12px}.map-heading button{width:100%}.map-frame{height:390px;border-radius:15px}.map-actions{flex-direction:column;align-items:stretch;gap:12px}.map-actions button{width:100%}.suggestion-layout{grid-template-columns:1fr;gap:22px}.suggestion-layout>div h2{font-size:29px}.suggestion-note{margin-top:15px;padding:16px}.clock-row{font-size:10px}.privacy{margin-top:25px}.footnote{line-height:1.7}.header>.icon-button{font-size:20px;width:36px;height:36px;min-height:36px}}
@media(prefers-reduced-motion:no-preference){button,a{transition:background-color .15s,color .15s}.bus-card{animation:arrive .2s ease}@keyframes arrive{from{opacity:.75;transform:translateY(3px)}to{opacity:1;transform:none}}}

.filter-details{margin-top:10px}.filter-details summary{font-size:12px;font-weight:650;padding:13px 0;min-height:44px;cursor:pointer}.filter-grid{display:grid;grid-template-columns:1fr;gap:8px}.filter-grid label{margin-top:4px}.filter-grid select{font-size:14px}@media(min-width:761px){.filter-details>.filter-grid{display:block}}@media(max-width:760px){.filter-grid{grid-template-columns:1fr 1fr;gap:8px}.panel input,.panel textarea,.panel select{font-size:16px}.intro h1{font-size:34px;letter-spacing:-1.7px}.intro{padding-bottom:14px}.controls .panel>.helper{display:none}.reference{margin-top:10px;padding-top:10px}}
