@import url("https://api.fontshare.com/v2/css?f[]=satoshi@500,700,900&display=swap");@import url("/dashboard-refinements.css");:root{--bg:#fbfaf6;--panel:#fff;--panel-border:#e9e5da;--text:#323231;--muted:#6b6b6b;--accent:#01b1ff;--blue-deep:#0077b3;--orange:#faa00c;--yellow:#fec718;--green:#1f8a4c;--red:#d64545}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Satoshi,-apple-system,BlinkMacSystemFont,Segoe UI,Tahoma,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:var(--blue-deep);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1160px;margin:0 auto;padding:24px 20px 60px}header.masthead{position:relative;min-height:238px;padding:28px 300px 28px 0;overflow:hidden}header.masthead>*{position:relative;z-index:1}header.masthead .brand{display:inline-block;margin-bottom:22px;line-height:0}header.masthead .brand img{display:block;width:auto;height:86px;max-width:230px;object-fit:contain;object-position:left center}header.masthead h1{margin:0;font-size:clamp(48px,5.3vw,64px);font-weight:900;letter-spacing:-.035em;line-height:.98}header.masthead p{margin:14px 0 0;color:var(--muted);font-size:15px;line-height:1.55;max-width:720px}header.masthead .seal{position:absolute;z-index:0;right:18px;top:14px;width:252px;max-width:28vw;opacity:.075;filter:grayscale(1);transform:rotate(-4deg);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}nav.sectionnav{position:-webkit-sticky;position:sticky;top:0;z-index:1100;display:flex;align-items:center;gap:2px;flex-wrap:wrap;margin:0 -20px;padding:8px 20px;background:hsla(48,38%,97%,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--panel-border);border-bottom:1px solid var(--panel-border)}nav.sectionnav a{font-size:12.5px;font-weight:700;color:var(--text);padding:5px 11px;border-radius:999px;white-space:nowrap}nav.sectionnav a:hover{background:var(--panel);color:var(--blue-deep);text-decoration:none;box-shadow:0 1px 2px rgba(50,50,49,.06)}nav.sectionnav a.active{background:var(--blue-deep);color:#fff}nav.sectionnav a.active:hover{color:#fff}section.panel-group{scroll-margin-top:56px}.headlines{background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:16px 18px 8px;margin-top:20px;box-shadow:0 1px 2px rgba(50,50,49,.04)}.headlines h2{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:var(--blue-deep);margin:0 0 8px;font-weight:900}.headlines ul{list-style:none;margin:0;padding:0}.headlines li{display:flex;align-items:baseline;gap:10px;font-size:14.5px;line-height:1.5;padding:7px 0;border-bottom:1px solid #f1eee6}.headlines li:last-child{border-bottom:none}.headlines .hl-dot{flex:none;width:8px;height:8px;border-radius:50%;position:relative;top:-1px;background:var(--muted)}.headlines .hl-dot.good{background:var(--green)}.headlines .hl-dot.bad{background:var(--red)}.headlines .hl-dot.neutral{background:var(--accent)}.map-el{flex:1 1 auto;min-height:360px;border-radius:10px;margin-bottom:12px;background:var(--bg);z-index:0}.card:has(.map-el) .map-wrap{flex:1 1 auto;display:flex;flex-direction:column}.card.wide .map-el{min-height:560px}.map-status{font-size:11.5px;color:var(--muted);margin:-4px 0 10px}.leaflet-container{font-family:inherit}.leaflet-tooltip{font-size:12px}.choro-legend{display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--muted);margin:-4px 0 10px}.choro-legend i{flex:1 1;height:8px;border-radius:4px;background:linear-gradient(90deg,#e3f4fb,#a8ddf3,#5fc0e8,#019dde,#0077b3)}.train-bullet-wrap{background:none;border:none}.train-bullet{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:10.5px;font-weight:900;line-height:1;border:1.5px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.35)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));grid-gap:12px;gap:12px;margin:24px 0 8px}.kpi{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:14px 16px;box-shadow:0 1px 2px rgba(50,50,49,.04)}.kpi .label{min-height:32px;font-size:12px;color:var(--muted);margin-bottom:6px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1.35}.kpi .value{min-height:58px;display:flex;align-content:flex-start;align-items:baseline;flex-wrap:wrap;font-size:24px;font-weight:900;letter-spacing:-.01em;line-height:1.05}.kpi .value .delta{flex-basis:100%;margin:6px 0 0;line-height:1.1}.kpi .sub{min-height:34px;font-size:11.5px;line-height:1.4;color:var(--muted);margin-top:4px}.kpi svg.spark{display:block;margin-top:auto;padding-top:8px}section.panel-group{margin-top:72px}.section-head{max-width:760px;margin:0 0 18px}.section-head .kicker{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--blue-deep);font-weight:900}.section-head h2{margin:6px 0 0;font-size:31px;font-weight:900;letter-spacing:-.02em;line-height:1.1}.section-head p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.section-brief{display:grid;grid-template-columns:116px minmax(0,1fr);width:100%;margin:0 0 24px;padding:0;overflow:hidden;background:linear-gradient(90deg,rgba(1,177,255,.09),hsla(0,0%,100%,.82) 62%);border:1px solid #d9ebf3;border-radius:14px;box-shadow:0 2px 10px rgba(0,119,179,.045)}.section-brief .brief-kicker{display:flex;align-items:center;gap:8px;padding:17px 18px;border-right:1px solid #d9ebf3;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--blue-deep);white-space:nowrap}.section-brief .brief-kicker:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(1,177,255,.12)}.section-brief p{margin:0;padding:16px 20px;font-size:15px;line-height:1.62;font-weight:500}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.card.wide{grid-column:1/-1}#transportation .grid-2>.card:first-child,#transportation .grid-2>.card:nth-child(2){order:1}.card{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:16px 16px 8px;box-shadow:0 1px 2px rgba(50,50,49,.04)}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.card h3{margin:0 0 4px;font-size:16px;font-weight:700;text-transform:capitalize}.card .asof{flex:none;font-size:10.5px;font-weight:800;letter-spacing:.03em;color:var(--blue-deep);background:#e8f6fd;border-radius:999px;padding:3px 9px;white-space:nowrap;position:relative;top:-1px}.takeaway{font-size:12.5px;font-weight:700;margin:2px 0}.takeaway .delta{margin-left:0}.takeaway .tk-note{color:var(--muted);font-weight:500}.card .meta{font-size:12px;color:var(--muted);margin:2px 0 14px}.card .unavailable{color:var(--muted);font-size:13px;padding:30px 0 38px;text-align:center}.chart-wrap{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.chart-wrap .recharts-responsive-container{flex:1 1 auto}.range-toggle{display:flex;justify-content:flex-end;gap:4px;margin:0 0 4px}.range-toggle button{font-family:inherit;font-size:10.5px;font-weight:800;padding:2px 9px;border-radius:999px;cursor:pointer;border:1px solid var(--panel-border);background:var(--bg);color:var(--muted)}.range-toggle button.on{background:var(--blue-deep);border-color:var(--blue-deep);color:#fff}.chart-note{font-size:10.5px;color:var(--muted);margin:2px 0 6px}.status-row{display:flex;gap:10px;flex-wrap:wrap;padding:6px 0 14px}.chip{display:inline-flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--panel-border);border-radius:999px;padding:6px 14px;font-size:13px}.dot{width:8px;height:8px;border-radius:50%}.dot.ok{background:var(--green)}.dot.delay{background:var(--orange)}.bike-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;padding:4px 0 12px}.bike-stats .stat{text-align:center;padding:10px 4px;background:var(--bg);border:1px solid var(--panel-border);border-radius:10px}.bike-stats .stat b{display:block;font-size:20px;font-weight:900}.bike-stats .stat span{font-size:11.5px;color:var(--muted)}.delta{display:inline-block;font-size:12px;font-weight:700;margin-left:8px}.delta.up{color:var(--green)}.delta.down{color:var(--red)}.delta.neutral{color:var(--muted)}table.mini{width:100%;border-collapse:collapse;font-size:12.5px;margin-bottom:10px}table.mini th{text-align:left;color:var(--muted);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:4px 8px 6px 0;border-bottom:1px solid var(--panel-border)}table.mini td.num,table.mini th.num{text-align:right}table.mini td{padding:5px 8px 5px 0;border-bottom:1px solid #f1eee6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.card.wide table.mini td{max-width:none}table.mini tr:last-child td{border-bottom:none}footer.sources{margin-top:72px;padding-top:24px;border-top:1px solid var(--panel-border);font-size:12.5px;color:var(--muted);line-height:1.9}footer.sources h2{font-size:13px;color:var(--text);margin:0 0 6px;font-weight:700}.footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.footer-brand a{flex:none;line-height:0}.footer-brand img{display:block;width:auto;height:54px;max-width:150px;object-fit:contain;object-position:left center}.footer-brand span{font-size:13px;color:var(--muted)}footer.sources:after{content:"Disclaimer: All data presented on this dashboard is compiled from third-party and public sources. Summaries, comparisons, and narrative insights are generated programmatically and may contain errors or reflect limitations in the underlying source data. Verify important figures with the original source.";display:block;margin-top:20px;padding:14px 16px;color:#5e5e5c;line-height:1.55;background:rgba(250,160,12,.08);border:1px solid rgba(250,160,12,.24);border-radius:10px}@media (max-width:800px){.grid-2{grid-template-columns:1fr}header.masthead{min-height:0;padding:24px 0 26px}header.masthead .brand img{height:72px;max-width:195px}header.masthead h1{font-size:clamp(42px,12vw,54px)}header.masthead .seal{right:-22px;top:20px;width:190px;max-width:46vw;opacity:.05}.section-brief{grid-template-columns:1fr}.section-brief .brief-kicker{border-right:0;border-bottom:1px solid #d9ebf3;padding:12px 16px}.section-brief p{padding:14px 16px 16px}.bike-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.container,nav.sectionnav{padding-left:16px;padding-right:16px}nav.sectionnav{margin-left:-16px;margin-right:-16px}header.masthead .seal{display:none}.card-head{align-items:flex-start;flex-direction:column;gap:4px}.card .asof{position:static}.kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.kpi{padding:13px 14px}.kpi .value{font-size:22px}.footer-brand{align-items:flex-start;flex-direction:column}}