@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,600&family=JetBrains+Mono:wght@500;700;800&display=swap");:root{--bg:#f8fafc;--bg-gradient:radial-gradient(at 0% 0%,rgba(16,185,129,0.08) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(14,165,233,0.06) 0px,transparent 50%),#f8fafc;--surface:#ffffff;--surface-raised:#ffffff;--surface-glass:rgba(255,255,255,0.88);--surface-glass-border:rgba(226,232,240,0.85);--surface-sunken:#f1f5f9;--surface-card:#ffffff;--border:#e2e8f0;--border-strong:#cbd5e1;--border-focus:#059669;--font-sans:"Plus Jakarta Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--text:#0f172a;--text-secondary:#334155;--muted:#64748b;--dim:#94a3b8;--live:#059669;--live-mark:#10b981;--live-glow:rgba(16,185,129,0.35);--live-wash:#ecfdf5;--live-border:#a7f3d0;--warm:#d97706;--warm-mark:#f59e0b;--warm-glow:rgba(245,158,11,0.3);--warm-wash:#fffbeb;--warm-border:#fde68a;--issue:#dc2626;--issue-mark:#ef4444;--issue-wash:#fef2f2;--issue-border:#fecaca;--quiet:#475569;--quiet-mark:#94a3b8;--quiet-wash:#f8fafc;--quiet-border:#e2e8f0;--brand-primary:#059669;--brand-primary-hover:#047857;--brand-dark:#0f172a;--accent:#0284c7;--accent-wash:#f0f9ff;--accent-border:#bae6fd;--private:#7c3aed;--private-wash:#f5f3ff;--private-border:#ddd6fe;--private-glow:rgba(124,58,237,0.25);--radius-xs:6px;--radius-sm:10px;--radius:16px;--radius-lg:24px;--radius-xl:32px;--radius-pill:9999px;--shadow-subtle:0 1px 3px rgba(15,23,42,0.04),0 1px 2px rgba(15,23,42,0.02);--shadow-sm:0 2px 6px -1px rgba(15,23,42,0.06),0 1px 4px -1px rgba(15,23,42,0.04);--shadow:0 10px 25px -5px rgba(15,23,42,0.06),0 8px 10px -6px rgba(15,23,42,0.04);--shadow-lg:0 20px 35px -10px rgba(15,23,42,0.1),0 10px 15px -5px rgba(15,23,42,0.04);--shadow-glow:0 0 25px -5px var(--live-glow);--gap-xs:6px;--gap-sm:10px;--gap:16px;--gap-md:24px;--gap-lg:36px;--gap-xl:48px;--tap:48px;--page-max:840px;--page-wide:1080px}*{box-sizing:border-box}html{scroll-padding-top:80px;scroll-behavior:smooth}body{margin:0;background:var(--bg-gradient);background-attachment:fixed;color:var(--text);font-family:var(--font-sans);font-feature-settings:"cv02","cv03","cv04","cv11";line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}.topBar{position:-webkit-sticky;position:sticky;top:0;z-index:50;padding:10px 20px;background:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--surface-glass-border);box-shadow:var(--shadow-subtle);transition:all .2s ease}.topBarInner{width:100%;max-width:var(--page-wide);margin:0 auto;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;min-height:var(--tap);color:var(--text);font-weight:800;font-size:1.15rem;letter-spacing:-.03em;text-decoration:none;transition:transform .2s ease}.brand:hover{transform:translateY(-1px)}.brandLogoWrap{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#059669,#10b981);color:#ffffff;box-shadow:0 4px 12px rgba(16,185,129,.3);position:relative}.brandLogoWrap .liveBeacon{position:absolute;top:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:#10b981;border:1.5px solid #ffffff;box-shadow:0 0 8px #10b981}.brandText{display:flex;flex-direction:column;line-height:1.15}.brandName{font-weight:800;font-size:1.15rem;color:var(--text)}.brandTagline{font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--live)}.topLinks{display:flex;align-items:center;gap:var(--gap-xs)}.topLinks a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:var(--radius-sm);color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:600;transition:all .15s ease}.topLinks a:hover{color:var(--text);background:var(--surface-sunken)}.topLinks a.topCta{color:#ffffff;background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 2px 8px rgba(16,185,129,.25);font-weight:700;padding:0 16px;border:1px solid rgba(255,255,255,.2)}.topLinks a.topCta:hover{background:linear-gradient(135deg,#047857,#059669);box-shadow:0 4px 12px rgba(16,185,129,.35);transform:translateY(-1px)}@media (max-width:600px){.topLinks a:not(.topCta){display:none}}.page{width:100%;max-width:var(--page-max);margin:0 auto;padding:24px 20px 60px;display:flex;flex-direction:column;gap:var(--gap);flex:1 1}.pageWide{max-width:var(--page-wide)}.card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,border-color .2s ease;position:relative}.card:hover{border-color:#cbd5e1;box-shadow:var(--shadow)}.card h1,.card h2{margin:0 0 8px;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.cardHead{display:flex;align-items:center;justify-content:space-between;gap:var(--gap);margin-bottom:12px}.cardHead h2{margin:0}.muted{color:var(--muted);margin:4px 0;font-size:.95rem}.small{font-size:.85rem;line-height:1.5}.hero{padding:16px 4px 8px;text-align:left;display:flex;flex-direction:column;gap:12px}.heroPill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--radius-pill);background:#ecfdf5;border:1px solid #a7f3d0;color:var(--live);font-size:.82rem;font-weight:700;letter-spacing:.03em;width:-moz-fit-content;width:fit-content;box-shadow:0 1px 3px rgba(16,185,129,.1)}.hero h1{margin:4px 0 8px;font-size:2.75rem;font-weight:800;line-height:1.12;letter-spacing:-.035em;color:var(--text)}.hero h1 .accent{background:linear-gradient(135deg,#059669,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline}.heroLead{margin:0 0 6px;font-size:1.2rem;font-weight:500;color:var(--text-secondary);line-height:1.5}.heroNotice{gap:12px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:var(--radius-sm);padding:14px 16px}.heroNotice svg{flex:none;color:var(--muted);margin-top:2px}.heroShowcase{background:linear-gradient(145deg,#ffffff,#f8fafc);border:1px solid #cbd5e1;border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px;margin-top:4px;overflow:hidden;position:relative}.heroShowcase:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#10b981,#0284c7 50%,#10b981);background-size:200% 100%;animation:shimmerBorder 4s linear infinite}@keyframes shimmerBorder{0%{background-position:100% 0}to{background-position:-100% 0}}.showcaseTop{justify-content:space-between;flex-wrap:wrap;gap:10px}.showcaseBus,.showcaseTop{display:flex;align-items:center}.showcaseBus{gap:12px}.busNumberBadge{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:38px;padding:0 12px;background:#0f172a;color:#ffffff;font-family:var(--font-mono);font-weight:800;font-size:1.05rem;border-radius:var(--radius-sm);box-shadow:0 2px 6px rgba(15,23,42,.2)}.showcaseRouteInfo h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--text)}.showcaseRouteInfo p{margin:0;font-size:.85rem;color:var(--muted)}.routeVisualTrack{position:relative;display:flex;flex-direction:column;gap:10px;background:#f1f5f9;border-radius:var(--radius-sm);padding:16px;border:1px solid #e2e8f0}.routeLineWrap{position:relative;height:6px;background:#cbd5e1;border-radius:var(--radius-pill);margin:20px 10px 10px}.routeLineProgress{position:absolute;top:0;left:0;height:100%;width:65%;background:linear-gradient(90deg,#10b981,#059669);border-radius:var(--radius-pill)}.routeBusMovingPin{position:absolute;top:50%;left:65%;transform:translate(-50%,-50%);width:32px;height:32px;background:#059669;color:#ffffff;border:2px solid #ffffff;border-radius:50%;display:grid;place-items:center;box-shadow:0 4px 12px rgba(5,150,105,.4)}.routeBusMovingPin:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid #10b981;animation:livePulse 2s ease-out infinite}.routeStopsLabels{display:flex;justify-content:space-between;font-size:.78rem;font-weight:600;color:var(--text-secondary)}.routeHeader{display:flex;align-items:center;gap:16px;padding:8px 0 4px}.routeHeader h1{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:-.025em}.busNumber{display:inline-flex;align-items:center;justify-content:center;min-width:68px;min-height:var(--tap);padding:8px 16px;border:2.5px solid var(--border-strong);border-radius:var(--radius-sm);background:#0f172a;color:#ffffff;font-family:var(--font-mono);font-weight:800;font-size:1.2rem;box-shadow:var(--shadow-sm);flex:none}.status{position:relative;border-left:6px solid var(--quiet-mark);background:var(--surface);transition:all .2s ease;overflow:hidden}.status h2{display:flex;align-items:center;gap:10px;font-size:1.15rem;font-weight:800;letter-spacing:-.01em;margin-bottom:6px}.status.active{border-left-color:var(--live-mark);background:linear-gradient(135deg,#f0fdf4,#ffffff);border-color:var(--live-border);box-shadow:0 4px 20px rgba(16,185,129,.12)}.status.warm{border-left-color:var(--warm-mark);background:linear-gradient(135deg,#fffbeb,#ffffff);border-color:var(--warm-border);box-shadow:0 4px 20px rgba(245,158,11,.1)}.status.issue{border-left-color:var(--issue-mark);background:linear-gradient(135deg,#fef2f2,#ffffff);border-color:var(--issue-border)}.status.quiet{border-left-color:var(--quiet-mark);background:var(--surface)}.evidence{margin:6px 0 2px;color:var(--text);font-size:.95rem;display:flex;gap:6px}.evidence,.liveBadge{font-weight:700;align-items:center}.liveBadge{display:inline-flex;gap:8px;padding:4px 12px 4px 10px;border-radius:var(--radius-pill);background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;font-size:.8rem;white-space:nowrap;flex:none;box-shadow:0 1px 2px rgba(16,185,129,.1)}.liveBadge.warm{background:#fffbeb;color:#b45309;border-color:#fde68a}.liveDot{position:relative;width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}.liveBadge:not(.warm) .liveDot:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid;animation:livePulse 2s cubic-bezier(.24,0,.38,1) infinite}@keyframes livePulse{0%{transform:scale(.6);opacity:.9}to{transform:scale(2.2);opacity:0}}@media (prefers-reduced-motion:reduce){.liveBadge .liveDot:after,.routeBusMovingPin:after{animation:none;opacity:.4}}.searchWrap{position:relative;margin:8px 0 14px}.searchIcon,.searchWrap{display:flex;align-items:center}.searchIcon{position:absolute;left:16px;color:var(--muted);pointer-events:none}.search{width:100%;min-height:52px;padding:12px 48px;border:1.5px solid var(--border-strong);border-radius:var(--radius);background:#ffffff;color:var(--text);font-family:inherit;font-size:1.05rem;font-weight:500;box-shadow:var(--shadow-sm);transition:all .2s ease}.search::placeholder{color:var(--dim);font-weight:400}.search:focus{border-color:var(--live-mark);box-shadow:0 0 0 4px var(--live-glow),var(--shadow-sm);outline:none}.searchClear{position:absolute;right:14px;background:#e2e8f0;border:none;border-radius:50%;width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;padding:0;transition:background .15s ease}.searchClear:hover{background:#cbd5e1}.quickFilters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.filterLabel{font-size:.8rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.chipButton{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:var(--radius-pill);padding:5px 12px;font-size:.82rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.chipButton:hover{background:#0f172a;color:#ffffff;border-color:#0f172a}.results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.results a{display:flex;align-items:center;gap:14px;min-height:56px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff;color:var(--text);text-decoration:none;transition:all .15s ease}.results a:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateX(2px)}.resultNumber{min-width:64px;padding:6px 10px;border-radius:var(--radius-xs);background:#0f172a;color:#ffffff;font-family:var(--font-mono);font-weight:800;font-size:.95rem;text-align:center;flex:none}.resultBody{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.resultTitle{color:var(--text);font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stepsVisualGrid{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;margin-top:16px}@media (min-width:720px){.stepsVisualGrid{grid-template-columns:repeat(3,1fr)}}.stepVisualCard{background:#ffffff;border:1px solid #e2e8f0;border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:12px;position:relative;box-shadow:var(--shadow-sm)}.stepIconWrap{width:44px;height:44px;border-radius:var(--radius-sm);background:#ecfdf5;color:#059669;display:grid;place-items:center;box-shadow:0 2px 6px rgba(16,185,129,.15)}.stepBadge{position:absolute;top:16px;right:16px;font-family:var(--font-mono);font-size:.8rem;font-weight:800;color:#94a3b8}.stepVisualCard h3{margin:0;font-size:1.05rem;font-weight:700}.stepVisualCard p{margin:0;font-size:.88rem;color:var(--muted);line-height:1.5}.pillarsGrid{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;margin-top:16px}@media (min-width:640px){.pillarsGrid{grid-template-columns:repeat(2,1fr)}}.pillarCard{background:#ffffff;border:1px solid #e2e8f0;border-radius:var(--radius);padding:20px;display:flex;gap:14px}.pillarIcon{width:40px;height:40px;border-radius:var(--radius-sm);background:#f1f5f9;color:#0f172a;display:grid;place-items:center;flex:none}.pillarBody h3{margin:0 0 6px;font-size:1rem;font-weight:700;color:var(--text)}.pillarBody p{margin:0;font-size:.88rem;color:var(--muted);line-height:1.5}.installCard{background:linear-gradient(135deg,#0f172a,#1e293b);color:#ffffff;border:1px solid #334155;border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.installCard:after{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.2) 0,transparent 70%);pointer-events:none}.installCard h2{color:#ffffff;font-size:1.4rem;font-weight:800;margin:0 0 8px}.installCard p{color:#cbd5e1;font-size:.95rem}.installCard .muted{color:#94a3b8}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:10px 20px;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:#ffffff;color:var(--text);font-family:inherit;font-weight:700;font-size:.95rem;text-decoration:none;cursor:pointer;transition:all .15s ease}.button:hover{background:#f8fafc;border-color:#94a3b8;transform:translateY(-1px)}.button.primary{background:linear-gradient(135deg,#059669,#10b981);border-color:transparent;color:#ffffff;box-shadow:0 4px 14px rgba(16,185,129,.3)}.button.primary:hover{background:linear-gradient(135deg,#047857,#059669);box-shadow:0 6px 20px rgba(16,185,129,.4)}.button.secondary{background:#0f172a;border-color:#0f172a;color:#ffffff}.button.secondary:hover{background:#1e293b}.button:disabled{opacity:.6;cursor:not-allowed;transform:none}.quietLink{display:inline-flex;align-items:center;gap:4px;color:var(--brand-primary);text-decoration:none;font-size:.9rem;font-weight:700;transition:gap .2s ease}.quietLink:hover{gap:8px;text-decoration:underline}.feed{list-style:none;margin:12px 0 0;padding:0;gap:12px}.feed,.feed li{display:flex;flex-direction:column}.feed li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius-sm);padding:14px 16px;gap:6px;transition:border-color .15s ease}.feed li:hover{border-color:#cbd5e1}.reportLine{margin:0;font-size:.95rem;font-weight:500;color:var(--text)}.reportLine strong{color:#0f172a;font-weight:700}.note{margin:2px 0 4px;color:var(--text-secondary);font-style:italic;font-size:.9rem;background:#ffffff;padding:6px 12px;border-radius:var(--radius-xs);border-left:3px solid #cbd5e1}.mapCard{padding:0;border:1px solid var(--border)}.map{height:360px}@media (min-width:640px){.map{height:440px}}.followBus{position:absolute;left:50%;transform:translateX(-50%);bottom:16px;min-height:42px;padding:0 20px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:#ffffff;color:var(--text);font-family:inherit;font-weight:700;font-size:.88rem;box-shadow:var(--shadow-lg);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s ease;z-index:10}.followBus:hover{background:#f8fafc;transform:translateX(-50%) translateY(-2px)}.busMarker{place-items:center;width:40px;height:40px}.busBadge,.busMarker{position:relative;display:grid}.busBadge{place-items:center;width:34px;height:34px;border-radius:50%;border:2.5px solid #ffffff;box-shadow:0 3px 10px rgba(15,23,42,.35);color:#ffffff}.busPulse{position:absolute;inset:-4px;border-radius:50%;opacity:0}.busMarker[data-live=true] .busPulse{animation:busPulse 2s ease-out infinite}.busMarker[data-live=false] .busBadge{filter:saturate(.35);opacity:.85}@keyframes busPulse{0%{transform:scale(.75);opacity:.6}to{transform:scale(2.2);opacity:0}}.stopListWrap{margin-top:10px;max-height:320px;padding-right:8px}.stopTimeline{padding:0 0 0 20px}.stopTimeline:before{top:10px;bottom:10px;left:6px;background:#cbd5e1}.stopTimeline li{position:relative;padding:8px 0 8px 16px;font-size:.92rem;color:var(--text-secondary);font-weight:500}.stopTimeline li:before{content:"";position:absolute;top:14px;left:-17px;width:8px;height:8px;border-radius:50%;background:#ffffff;border:2px solid #059669}.privateNotice{border-left-color:var(--private-border);border-left-width:1px;border:1px solid var(--private-border);border-left:6px solid var(--private);border-radius:var(--radius);background:var(--private-wash);padding:16px 20px;box-shadow:0 2px 8px rgba(124,58,237,.08)}.privateNotice strong{display:block;color:var(--private);font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:4px}.privateNotice p{margin:0;color:var(--text-secondary);font-size:.92rem}.passcode{font-family:var(--font-mono);font-size:1.6rem;font-weight:800;letter-spacing:.35em;text-align:center;text-transform:uppercase}.roomError{margin:12px 0 0;color:var(--issue);font-size:.9rem;font-weight:600}.prose{line-height:1.7}.prose h1{font-size:2.2rem;font-weight:800;letter-spacing:-.03em;margin:16px 0 8px}.prose h2{margin:32px 0 12px;font-size:1.35rem;font-weight:700;letter-spacing:-.02em}.prose h3{margin:20px 0 6px;font-size:1.1rem;font-weight:700}.prose li,.prose p{color:var(--text-secondary);font-size:.98rem}.prose strong{color:var(--text);font-weight:700}.prose ol,.prose ul{padding-left:24px;margin:12px 0}.prose li{margin-bottom:10px}.prose table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.92rem;background:#ffffff;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm)}.prose td,.prose th{border:1px solid var(--border);padding:12px 16px;text-align:left;vertical-align:top}.prose th{background:#f1f5f9;color:var(--text);font-weight:700}.tw{overflow-x:auto}.footer{width:100%;margin-top:auto;background:#0f172a;color:#94a3b8;border-top:1px solid #1e293b;padding:48px 20px 40px}.footerInner{max-width:var(--page-wide);margin:0 auto;display:flex;flex-direction:column;gap:32px}.footerTop{display:grid;grid-template-columns:1fr;grid-gap:32px;gap:32px}@media (min-width:720px){.footerTop{grid-template-columns:1.5fr 1fr 1fr}}.footerBrand h3{color:#ffffff;font-size:1.15rem;font-weight:800;margin:0 0 8px;display:flex;align-items:center;gap:8px}.footerBrand p{color:#94a3b8;font-size:.88rem;margin:0 0 16px;line-height:1.6}.footerStatusBadge{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:var(--radius-pill);background:rgba(16,185,129,.15);border:1px solid rgba(16,185,129,.3);color:#10b981;font-size:.75rem;font-weight:700}.footerLinksCol h4{color:#ffffff;font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}.footerLinksCol ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.footerLinksCol a{color:#94a3b8;text-decoration:none;font-size:.88rem;transition:color .15s ease}.footerLinksCol a:hover{color:#ffffff}.footerBottom{border-top:1px solid #1e293b;padding-top:24px;display:flex;flex-direction:column;gap:8px;font-size:.8rem;color:#64748b}.footerBottom p{margin:0}.visuallyHidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--live-mark);outline-offset:2px}.showcaseActions{margin-top:12px}.showcaseActions,.showcaseDots{display:flex;justify-content:center}.showcaseDots{gap:8px;margin-top:14px}.showcaseDot{width:24px;height:24px;padding:0;border:0;background:none;cursor:pointer;position:relative}.showcaseDot:after{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--border-strong);transition:background .16s ease,transform .16s ease}.showcaseDot.active:after{background:var(--live);transform:scale(1.15)}.showcaseDot:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:50%}.journeyFields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px;margin:16px 0}.journeyFields label{display:grid;grid-gap:6px;gap:6px;font-weight:600}.journeyFields input{width:100%;min-width:0;font:inherit;padding:12px;border:1px solid var(--border,#ccc);border-radius:8px;background:var(--surface,white);color:inherit}.actions>*,.busResult>*,.cardHead>*,.routeHeader>div{min-width:0}.routeHeader{flex-wrap:wrap}.busNumber,.card p,.routeHeader h1,.stopTimeline li{overflow-wrap:break-word}.busNumber{max-width:100%;white-space:normal}@media (max-width:420px){.routeHeader{align-items:flex-start}.routeHeader>div{flex-basis:100%}.cardHead{flex-wrap:wrap}}.sectionSuperTitle{font-size:.72rem;font-weight:800;letter-spacing:.08em;color:var(--live);text-transform:uppercase;margin-bottom:2px;display:block}.heroNotice{display:flex;align-items:flex-start;gap:14px;background:#ffffff;border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;font-size:.92rem;color:var(--text-secondary);box-shadow:var(--shadow-sm);margin-top:4px}.heroNoticeIcon{width:36px;height:36px;border-radius:10px;background:var(--live-wash);color:var(--live);display:grid;place-items:center;flex:none}.heroNoticeText{line-height:1.55;color:var(--text-secondary)}.heroNoticeText strong{color:var(--text)}.telemetryCockpit{background:linear-gradient(145deg,#ffffff,#f8fafc);border:1px solid #cbd5e1;border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:20px;margin-top:8px;position:relative;overflow:hidden}.telemetryCockpit:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#10b981,#0284c7 50%,#10b981);background-size:200% 100%;animation:shimmerBorder 5s linear infinite}.telemetryCockpitHeader{justify-content:space-between;flex-wrap:wrap}.cockpitRouteIdentity,.telemetryCockpitHeader{display:flex;align-items:center;gap:14px}.cockpitBusBadge{min-width:58px;height:40px;padding:0 12px;background:#0f172a;color:#ffffff;font-family:var(--font-mono);font-weight:800;font-size:1.1rem;border-radius:var(--radius-sm);display:grid;place-items:center;box-shadow:0 2px 8px rgba(15,23,42,.25);border:1px solid #334155}.cockpitRouteDetails{display:flex;flex-direction:column;gap:2px}.cockpitRouteTitle{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cockpitRouteTitle strong{font-size:1.1rem;color:var(--text)}.roadBadge{font-size:.72rem;font-weight:700;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-pill);background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;letter-spacing:.04em}.cockpitRouteSubtitle{margin:0;font-size:.85rem;color:var(--muted)}.cockpitControls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cockpitPillBtn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-pill);background:#f1f5f9;border:1px solid #cbd5e1;font-size:.82rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.cockpitPillBtn:hover{background:#e2e8f0;color:var(--text)}.cockpitPillBtn.active{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.corridorCanvas{background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius);padding:44px 24px 34px;position:relative;overflow:visible}.corridorTrackLine{position:relative;height:8px;background:#cbd5e1;border-radius:var(--radius-pill)}.corridorActiveFill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:var(--radius-pill);transition:width .3s ease-out}.corridorStopNode{position:absolute;top:50%;transform:translate(-50%,-50%);background:none;border:none;padding:0;cursor:pointer;z-index:5}.corridorStopPin{display:block;width:14px;height:14px;border-radius:50%;background:#ffffff;border:3px solid #64748b;transition:all .2s ease;box-shadow:0 1px 4px rgba(15,23,42,.15)}.corridorStopNode.selected .corridorStopPin,.corridorStopNode:hover .corridorStopPin{border-color:#0284c7;transform:scale(1.35);box-shadow:0 0 10px rgba(2,132,199,.4)}.corridorStopNode.selected .corridorStopPin{background:#0284c7;border-color:#ffffff}.corridorStopTooltip{position:absolute;top:20px;left:50%;transform:translateX(-50%);white-space:nowrap;display:flex;flex-direction:column;align-items:center;pointer-events:none}.corridorStopTooltip strong{font-size:.78rem;color:var(--text);font-weight:700}.corridorStopTooltip small{font-size:.68rem;color:var(--muted);display:none}@media (min-width:600px){.corridorStopTooltip small{display:block}}.corridorBusBeacon{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10;pointer-events:none;transition:left .3s ease-out}.beaconRadarPulse{position:absolute;inset:-10px;border-radius:50%;border:2px solid #10b981;animation:livePulse 2s cubic-bezier(.24,0,.38,1) infinite}.beaconBusIcon{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#059669,#10b981);color:#ffffff;display:grid;place-items:center;border:2.5px solid #ffffff;box-shadow:0 4px 14px rgba(16,185,129,.45)}.beaconFloatingTag{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);background:#0f172a;color:#ffffff;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:var(--radius-pill);white-space:nowrap;box-shadow:0 4px 12px rgba(15,23,42,.25);display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.15)}.telemetryHudGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px}.hudMetricCard{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-subtle)}.hudIconWrap{width:36px;height:36px;border-radius:8px;background:#f1f5f9;display:grid;place-items:center;flex:none}.hudMetricInfo{display:flex;flex-direction:column;min-width:0}.hudLabel{font-size:.75rem;color:var(--muted);font-weight:600}.hudValue{font-size:.95rem;color:var(--text);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.textEmerald{color:#059669}.verdictCard.live{background:#ecfdf5;border-color:#a7f3d0}.verdictCard.live .hudValue{color:#047857}.verdictCard.approaching{background:#f0f9ff;border-color:#bae6fd}.verdictCard.approaching .hudValue{color:#0369a1}.verdictCard.passed{background:#f8fafc;border-color:#e2e8f0}.verdictCard.passed .hudValue{color:#64748b}.telemetryCockpitFooter{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted);background:#f1f5f9;padding:8px 12px;border-radius:var(--radius-xs)}.discoveryCockpit{display:flex;flex-direction:column;gap:12px}.discoveryTabs,.discoveryTabsContainer{display:flex;align-items:center}.discoveryTabs{padding:6px;background:#ffffff;border:1px solid var(--border);box-shadow:var(--shadow-sm);width:100%;overflow-x:auto}.discoveryTab,.discoveryTabs{gap:8px;border-radius:var(--radius-pill)}.discoveryTab{display:inline-flex;align-items:center;padding:10px 18px;border:none;background:transparent;color:var(--text-secondary);font-size:.9rem;font-weight:700;cursor:pointer;transition:all .15s ease;white-space:nowrap;text-decoration:none}.discoveryTab:hover{color:var(--text);background:#f1f5f9}.discoveryTab.active{background:#0f172a;color:#ffffff;box-shadow:0 2px 8px rgba(15,23,42,.2)}.discoveryTab.linkTab{color:var(--muted)}.discoveryTab.linkTab:hover{color:var(--text)}.stepTopRow{display:flex;align-items:center;justify-content:space-between}.stepFeatureTag{margin-top:auto;padding:3px 8px;background:#f1f5f9;color:var(--text-secondary);font-size:.72rem;font-weight:700;border-radius:var(--radius-xs);width:-moz-fit-content;width:fit-content;letter-spacing:.03em;text-transform:uppercase}.stepVisualCard:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#cbd5e1;transition:all .2s ease}.capabilitiesGrid{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;margin-top:16px}@media (min-width:640px){.capabilitiesGrid{grid-template-columns:repeat(2,1fr)}}.capabilityItem{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:8px;transition:all .2s ease}.capabilityItem:hover{border-color:#cbd5e1;box-shadow:var(--shadow-sm);transform:translateY(-2px)}.capabilityHeader{display:flex;align-items:center;gap:12px}.capabilityIcon{width:38px;height:38px;border-radius:var(--radius-sm);background:#f0f9ff;color:#0284c7;display:grid;place-items:center;flex:none}.capabilityHeader h4{margin:0;font-size:1.02rem;font-weight:700;color:var(--text)}.capabilityItem p{margin:0;font-size:.88rem;color:var(--muted);line-height:1.5}.faqAccordion{display:flex;flex-direction:column;gap:10px;margin-top:16px}.faqItem{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:all .2s ease}.faqItem.open{border-color:#cbd5e1;box-shadow:var(--shadow-sm)}.faqTrigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:transparent;border:none;font:inherit;cursor:pointer;text-align:left}.faqQuestion{font-size:.98rem;font-weight:700;color:var(--text)}.faqIconWrap{color:var(--muted);display:flex;align-items:center;transition:transform .2s ease}.faqChevron.rotated{transform:rotate(180deg)}.faqContent{padding:0 20px 18px;color:var(--text-secondary);font-size:.92rem;line-height:1.6}.faqContent p{margin:0}.installCard{display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px;align-items:center}@media (min-width:720px){.installCard{grid-template-columns:1.3fr 1fr;padding:36px}}.installCardBadge{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:var(--radius-pill);background:rgba(16,185,129,.15);border:1px solid rgba(16,185,129,.3);color:#10b981;font-size:.72rem;font-weight:800;letter-spacing:.06em;margin-bottom:12px}.installActions{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px}.installPrimaryBtn{background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 4px 14px rgba(16,185,129,.35)}.installPrimaryBtn,.installSecondaryBtn{color:#ffffff;border:1px solid rgba(255,255,255,.2)}.installSecondaryBtn{background:rgba(255,255,255,.1)}.installSecondaryBtn:hover{background:rgba(255,255,255,.18);color:#ffffff}.installClosedNotice{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#94a3b8;margin-top:14px;line-height:1.5}.installCardVisual{display:flex;justify-content:center}.phoneMockupFrame{width:240px;background:#020617;border:3px solid #334155;border-radius:28px;padding:12px;box-shadow:0 20px 40px rgba(0,0,0,.5);position:relative}.phoneMockupScreen{background:#0f172a;border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:12px;border:1px solid #1e293b}.phoneMockupHeader{display:flex;align-items:center;justify-content:space-between}.phoneMockupPill{font-family:var(--font-mono);font-weight:800;font-size:.78rem;background:#1e293b;color:#10b981;padding:3px 8px;border-radius:6px;border:1px solid rgba(16,185,129,.3)}.phoneMockupRoute{display:flex;flex-direction:column}.phoneMockupRoute strong{color:#ffffff;font-size:.95rem}.phoneMockupRoute small{color:#38bdf8;font-size:.78rem;font-weight:600}.phoneMockupStats{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:4px}.phoneStat{background:#1e293b;border-radius:8px;padding:8px;display:flex;flex-direction:column;text-align:center}.phoneStat span{font-size:.65rem;color:#94a3b8;text-transform:uppercase}.phoneStat strong{font-size:.9rem;color:#ffffff;font-family:var(--font-mono)}.routeNavBreadcrumb{margin-bottom:2px}.routeHeroHeader{display:flex;flex-direction:column;gap:16px;padding:16px 20px;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.routeHeroTop{display:flex;align-items:flex-start;gap:18px}.routeHeroNumber{min-width:72px;min-height:52px;padding:8px 16px;border:2.5px solid var(--border-strong);border-radius:var(--radius-sm);background:#0f172a;color:#ffffff;font-family:var(--font-mono);font-weight:800;font-size:1.35rem;display:grid;place-items:center;flex:none;text-align:center}.routeHeroTitles{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1}.routeSuperTitleWrap{display:inline-flex;align-items:center;gap:6px}.routeSuperTitle{font-size:.72rem;font-weight:800;letter-spacing:.08em;color:var(--live);text-transform:uppercase}.routeHeroTitles h1{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:-.025em;color:var(--text);line-height:1.25}.routeSubtitle{margin:0;font-size:.92rem;color:var(--muted);line-height:1.45}.routeMetaChips{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border-top:1px solid var(--surface-sunken);padding-top:12px}.metaChip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:.78rem;font-weight:600;color:var(--text-secondary)}.metaChip svg{color:var(--muted)}.telemetryCockpitCard{border-radius:var(--radius);padding:20px 24px;display:flex;flex-direction:column;gap:12px}.telemetryLiveHeader{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.telemetryStatusBadgeWrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.telemetryLiveBadge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--radius-pill);font-size:.88rem;font-weight:800;letter-spacing:-.01em;box-shadow:0 1px 3px rgba(15,23,42,.06)}.telemetryLiveBadge.active{background:#ecfdf5;color:#047857;border:1.5px solid #a7f3d0}.telemetryLiveBadge.warm{background:#fffbeb;color:#b45309;border:1.5px solid #fde68a}.telemetryLiveBadge.quiet{background:#f1f5f9;color:#475569;border:1.5px solid #e2e8f0}.telemetryWatchPill{display:inline-flex;align-items:center;padding:4px 10px;background:var(--surface-sunken);border-radius:var(--radius-pill);border:1px solid var(--border)}.telemetryWatchPill p{margin:0;font-size:.82rem;font-weight:600;color:var(--text-secondary)}.telemetryAgePill{font-size:.8rem;font-weight:600;color:var(--muted);background:var(--surface-sunken);padding:4px 10px;border-radius:var(--radius-pill);border:1px solid var(--border)}.telemetryDetailText{margin:0;font-size:.95rem;color:var(--text-secondary);line-height:1.5}.telemetryMetricsGrid{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:4px;padding-top:10px;border-top:1px solid rgba(0,0,0,.06)}.telemetryMetricItem{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#ffffff;border:1px solid var(--border);border-radius:var(--radius-pill);font-size:.82rem;font-weight:700;color:var(--text);box-shadow:0 1px 2px rgba(15,23,42,.03)}.telemetryMetricItem svg{color:var(--brand-primary)}.mapCard{border-radius:var(--radius);overflow:hidden;border:1.5px solid var(--border-strong);box-shadow:var(--shadow);position:relative}.mapFrame{position:relative;width:100%}.map{width:100%;height:520px;transition:height .3s cubic-bezier(.16,1,.3,1)}@media (min-width:640px){.map{height:620px}}.mapLargeExpanded{height:720px!important}@media (min-width:768px){.mapLargeExpanded{height:78vh!important}}.mapFloatingToolbar{position:absolute;top:14px;left:14px;z-index:10;display:flex;align-items:center;gap:8px}.mapToolBtn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-pill);background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(203,213,225,.8);color:var(--text);font-size:.82rem;font-weight:700;cursor:pointer;box-shadow:0 4px 12px rgba(15,23,42,.12);transition:all .15s ease}.mapToolBtn:hover{background:#ffffff;color:var(--brand-primary);transform:translateY(-1px);box-shadow:0 6px 16px rgba(15,23,42,.16)}.mapToolBtn.active{background:#0f172a;color:#ffffff;border-color:#0f172a}.mapLegendPill{position:absolute;bottom:24px;left:14px;z-index:10;gap:12px;padding:6px 14px;border-radius:var(--radius-pill);background:rgba(15,23,42,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#ffffff;font-size:.75rem;font-weight:700;border:1px solid rgba(255,255,255,.15);box-shadow:0 4px 12px rgba(0,0,0,.2)}.legendItem,.mapLegendPill{display:flex;align-items:center}.legendItem{gap:5px}.legendLine{width:14px;height:4px;border-radius:2px}.legendDot{width:7px;height:7px;border-radius:50%}.legendDot.stop{background:#64748b;border:1.5px solid #ffffff}.legendDot.bus{background:#10b981}.mapCardFooter{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:10px 16px;background:#f8fafc;border-top:1px solid var(--border);font-size:.78rem;color:var(--muted)}.mapDataLink,.mapLicenceText a{color:var(--muted);text-decoration:none;font-weight:600}.mapDataLink:hover,.mapLicenceText a:hover{color:var(--text);text-decoration:underline}.stopsCard{display:flex;flex-direction:column;gap:16px}.stopsBadge{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-sunken);padding:4px 10px;border-radius:var(--radius-pill);border:1px solid var(--border)}.stopSearchWrap{position:relative;display:flex;align-items:center}.stopSearchIcon{position:absolute;left:14px;color:var(--muted);pointer-events:none;display:flex}.stopSearchInput{width:100%;min-height:44px;padding:10px 40px 10px 42px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:#ffffff;color:var(--text);font-size:.92rem;font-family:inherit;transition:all .15s ease}.stopSearchInput:focus{border-color:var(--brand-primary);outline:none;box-shadow:0 0 0 3px rgba(16,185,129,.2)}.stopSearchClear{position:absolute;right:12px;background:#e2e8f0;border:none;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;font-size:14px;color:var(--text-secondary);cursor:pointer}.stopListWrap{max-height:480px;overflow-y:auto;padding-right:6px}.stopTimeline{list-style:none;margin:0;padding:0 0 0 10px;display:flex;flex-direction:column;position:relative}.stopTimeline:before{content:"";position:absolute;top:14px;bottom:14px;left:20px;width:2px;background:var(--border-strong)}.stopItem{position:relative;display:flex;align-items:center;gap:16px;padding:10px 0}.stopNodeBadge{width:22px;height:22px;border-radius:50%;background:#ffffff;border:2px solid #64748b;color:#64748b;font-family:var(--font-mono);font-size:.65rem;font-weight:800;display:grid;place-items:center;z-index:2;flex:none;transition:all .15s ease}.stopItem:hover .stopNodeBadge{border-color:var(--brand-primary);color:var(--brand-primary);transform:scale(1.15)}.stopItem.terminalStart .stopNodeBadge{border-color:#059669;background:#059669;color:#ffffff}.stopItem.terminalEnd .stopNodeBadge{border-color:#0284c7;background:#0284c7;color:#ffffff}.stopItemBody{display:flex;flex-direction:column;min-width:0}.stopItemName{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stopLink{color:var(--text);font-weight:600;font-size:.94rem;text-decoration:none;transition:color .15s ease}.stopLink:hover{color:var(--brand-primary);text-decoration:underline}.stopPill{font-size:.65rem;font-weight:800;text-transform:uppercase;padding:2px 6px;border-radius:var(--radius-xs);letter-spacing:.04em}.startPill{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.endPill{background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd}.stopsFooterNote{display:flex;align-items:flex-start;gap:8px;font-size:.8rem;color:var(--muted);background:#f8fafc;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);line-height:1.5}.stopsFooterNote svg{flex:none;margin-top:2px}.serviceIntelCard{gap:16px}.schedulesWrap,.serviceIntelCard{display:flex;flex-direction:column}.schedulesGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.schedulePill{background:#f8fafc;border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;display:flex;flex-direction:column;gap:4px}.schedulePillHeader{display:flex;align-items:center;justify-content:space-between;gap:8px}.scheduleKindTag{font-size:.72rem;font-weight:800;text-transform:uppercase;color:#7c3aed;background:#f5f3ff;border:1px solid #ddd6fe;padding:2px 6px;border-radius:var(--radius-xs)}.serviceDays{font-size:.75rem;color:var(--muted);font-weight:600}.schedulePill strong{font-size:1.05rem;color:var(--text);margin-top:2px}.scheduleSourceLink{font-size:.78rem;color:var(--brand-primary);text-decoration:none;font-weight:600;margin-top:4px}.scheduleSourceLink:hover{text-decoration:underline}.serviceIntelNotes{display:flex;flex-direction:column;gap:8px;padding:14px;background:#f8fafc;border-radius:var(--radius-sm);border:1px solid var(--border);font-size:.88rem;color:var(--text-secondary);line-height:1.55}.intelNote strong{color:var(--text)}.cardActions{padding-top:6px}.stopsHeroHeader{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.stopsSuperTitleWrap{display:inline-flex;align-items:center;gap:8px}.stopsSuperTitle{font-size:.75rem;font-weight:800;letter-spacing:.08em;color:var(--brand-primary);text-transform:uppercase}.stopsHeroTitle{font-size:clamp(1.8rem,4vw,2.35rem);font-weight:800;letter-spacing:-.03em;color:var(--text);margin:0;line-height:1.15}.stopsHeroLead{font-size:1.05rem;color:var(--text-secondary);line-height:1.55;max-width:680px;margin:0}.stopsMetricsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;margin-top:14px}.stopsMetricCard{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 18px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.stopsMetricCard:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.stopsMetricValue{font-size:1.35rem;font-weight:800;color:var(--brand-primary);line-height:1.1;letter-spacing:-.02em}.stopsMetricLabel{font-size:.78rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}.stopsExplorerWrap{display:flex;flex-direction:column;gap:20px;margin:12px 0 28px}.stopsFilterCard{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:16px}.stopsSearchRow{display:flex;gap:12px;flex-wrap:wrap}.stopsInputContainer{flex:1 1;min-width:260px;position:relative;display:flex;align-items:center}.stopsInputIcon{position:absolute;left:16px;color:var(--muted);pointer-events:none}.stopsSearchInput{width:100%;height:48px;padding:0 42px 0 46px;border-radius:var(--radius-md);border:1.5px solid var(--border);font-size:.95rem;font-family:inherit;color:var(--text);background:#f8fafc;transition:all .18s ease}.stopsSearchInput:focus{outline:none;background:#ffffff;border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(16,185,129,.15)}.stopsInputClear{position:absolute;right:14px;background:none;border:none;font-size:.95rem;color:var(--muted);cursor:pointer;padding:4px;border-radius:50%;line-height:1}.stopsInputClear:hover,.stopsNearMeBtn{color:var(--text)}.stopsNearMeBtn{height:48px;padding:0 18px;border-radius:var(--radius-md);border:1.5px solid var(--border);background:#f8fafc;font-weight:600;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s ease;white-space:nowrap}.stopsNearMeBtn:hover{background:#f1f5f9;border-color:#cbd5e1}.stopsNearMeBtn.active{background:#ecfdf5;border-color:#10b981;color:#047857;box-shadow:0 0 0 2px rgba(16,185,129,.2)}.stopsSpinner{width:16px;height:16px;border:2px solid rgba(0,0,0,.1);border-top-color:currentcolor;border-radius:50%;animation:stopsSpin .7s linear infinite}@keyframes stopsSpin{to{transform:rotate(1turn)}}.stopsNotice{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;line-height:1.45}.stopsNotice.warning{background:#fffbeb;color:#b45309;border:1px solid #fef3c7}.stopsNotice.success{background:#ecfdf5;color:#047857;border:1px solid #d1fae5}.stopsFilterRow{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--border-subtle)}.stopsDistrictSelectWrap{position:relative;display:flex;align-items:center;min-width:210px}.stopsSelectIcon{position:absolute;left:12px;color:var(--muted);pointer-events:none}.stopsDistrictSelect{width:100%;height:38px;padding:0 28px 0 34px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:#ffffff;font-size:.85rem;font-weight:600;color:var(--text);cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.stopsDistrictSelect:focus{outline:none;border-color:var(--brand-primary)}.stopsFilterChips{display:flex;gap:8px;flex-wrap:wrap}.stopsChipBtn{height:38px;padding:0 14px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:#ffffff;color:var(--text-secondary);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.stopsChipBtn:hover{background:#f8fafc;color:var(--text);border-color:#cbd5e1}.stopsChipBtn.active{background:#0f172a;color:#ffffff;border-color:#0f172a}.stopsResetBtn{height:38px;padding:0 10px;border:none;background:none;color:var(--muted);font-size:.82rem;font-weight:600;cursor:pointer;text-decoration:underline;margin-left:auto}.stopsResetBtn:hover{color:var(--text)}.stopsResultsHeader{display:flex;align-items:center;justify-content:space-between;font-size:.88rem;color:var(--text-secondary);margin:4px 0 8px;flex-wrap:wrap;gap:8px}.stopsResultsCount strong{color:var(--text)}.stopsTotalPill{margin-left:6px;color:var(--muted);font-size:.8rem}.stopsDistancePill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#ecfdf5;color:#047857;font-size:.78rem;font-weight:700;border-radius:9999px;border:1px solid #a7f3d0}.stopsCardsGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));grid-gap:16px;gap:16px}.stopDirectoryCard{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius-md);padding:18px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .2s ease;box-shadow:var(--shadow-sm)}.stopDirectoryCard:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:rgba(16,185,129,.4)}.stopCardHeader{display:flex;flex-direction:column}.stopTypeRow{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:10px}.stopTypeBadge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:var(--radius-xs);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.stopTypeBadge.terminal{background:#f5f3ff;color:#6d28d9;border:1px solid #ddd6fe}.stopTypeBadge.regular{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.stopDistrictBadge{gap:4px;border-radius:var(--radius-xs);background:#f8fafc;color:var(--text-secondary);border:1px solid var(--border);font-weight:600}.stopDistanceBadge,.stopDistrictBadge{display:inline-flex;align-items:center;padding:3px 8px;font-size:.75rem}.stopDistanceBadge{border-radius:var(--radius-xs);background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;font-weight:700;margin-left:auto}.stopCardName{font-size:1.15rem;font-weight:700;color:var(--text);margin:0 0 8px;line-height:1.35}.stopCardLink{color:inherit;text-decoration:none}.stopCardLink:hover{color:var(--brand-primary)}.stopAliasesList{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:14px}.stopAliasTag{font-size:.72rem;color:var(--muted);background:#f1f5f9;padding:2px 7px;border-radius:var(--radius-xs);border:1px solid #e2e8f0}.stopCardFooter{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid var(--border-subtle);margin-top:auto}.stopRoutesBadge{font-size:.78rem;color:var(--text-secondary);background:#f8fafc;border:1px solid var(--border);padding:4px 8px;border-radius:var(--radius-xs)}.stopRoutesBadge strong{color:var(--text);font-weight:700}.stopUnmappedBadge{font-size:.75rem;color:var(--muted)}.stopExploreBtn{display:inline-flex;align-items:center;gap:5px;font-size:.84rem;font-weight:700;color:var(--brand-primary);text-decoration:none;padding:6px 10px;border-radius:var(--radius-sm);transition:all .15s ease}.stopExploreBtn:hover{background:rgba(16,185,129,.08);transform:translateX(2px)}.stopsEmptyState{text-align:center;padding:48px 24px;background:#ffffff;border-radius:var(--radius-lg);border:1.5px dashed var(--border);margin:20px 0}.stopsEmptyIcon{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:#f1f5f9;color:var(--muted);display:grid;place-items:center}.stopsEmptyState h3{font-size:1.2rem;font-weight:700;margin:0 0 8px;color:var(--text)}.stopsEmptyState p{font-size:.9rem;color:var(--text-secondary);max-width:440px;margin:0 auto 20px;line-height:1.5}.stopsLoadMoreWrap{text-align:center;margin:32px 0 16px;display:flex;flex-direction:column;align-items:center;gap:8px}.stopsLoadMoreBtn{padding:12px 28px;font-size:.95rem;font-weight:700;background:#ffffff;border:1.5px solid var(--border);color:var(--text);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;transition:all .2s ease}.stopsLoadMoreBtn:hover{border-color:var(--brand-primary);color:var(--brand-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.stopsLoadMoreNote{font-size:.8rem;color:var(--muted);margin:0}.stopsTransparencyCard{margin-top:36px;border-left:4px solid var(--brand-primary)}