:root{color-scheme:light;--ink:#263d32;--muted:#58665d;--paper:#faf8f2}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:19px/1.65 Georgia,'Times New Roman',serif}main{max-width:820px;margin:64px auto;padding:0 30px 80px}header{margin-bottom:36px}h1{font-size:clamp(36px,5vw,54px);line-height:1.09;letter-spacing:-.035em;margin:15px 0 22px}h2{font-size:30px;line-height:1.25;margin:46px 0 18px}h3{font-size:23px;line-height:1.3;margin:32px 0 14px}p{margin:0 0 20px}.eyebrow{font:700 11px/1.6 system-ui;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.dek{font-size:24px;line-height:1.4;color:var(--muted)}a{color:#365e4a;text-underline-offset:3px}a:focus-visible{outline:3px solid #a65b7d;outline-offset:5px}figure{margin:30px -45px}figure.wide{margin-left:-110px;margin-right:-110px}figure img{display:block;width:100%;height:auto}figcaption{font:16px/1.5 system-ui;color:var(--muted);margin:12px 15px 0}.equation{padding:18px 22px;background:#edf0e5;border-left:3px solid #82947b;font-size:20px;margin:24px 0;overflow-x:auto}.equation span{display:block;margin:3px 0}var{font-family:Georgia,serif}pre{font:14px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;background:#edf0e5;border-radius:5px;padding:22px;overflow-x:auto}sup,sub{line-height:0}img{max-width:100%}
@media(max-width:1080px){figure.wide,figure{margin-left:0;margin-right:0}}
@media(max-width:600px){figure.three-quarter{width:auto}body{font-size:18px}main{padding:0 20px 45px;margin-top:32px}.dek{font-size:21px}h2{font-size:27px}figure{margin:26px -8px}figure.wide{margin-left:-8px;margin-right:-8px}.equation{font-size:17px;padding:15px}pre{font-size:12px}figcaption{font-size:15px;margin:10px 8px}}
@media print{@page{size:A4;margin:17mm}body{background:white;font-size:10.5pt;line-height:1.5}main{padding:0;margin:0;max-width:none}h1{font-size:29pt}.dek{font-size:14pt}h2{font-size:18pt;break-after:avoid;margin-top:24px}h3{font-size:14pt;break-after:avoid}p{orphans:3;widows:3;margin-bottom:12px}figure,figure.wide{margin:20px 0;break-inside:avoid}figcaption{font-size:8pt}.equation{font-size:11pt;break-inside:avoid}pre{font-size:8pt;white-space:pre-wrap;break-inside:avoid}a{color:inherit}}

.bike-chart{display:block;width:100%;height:760px;border:0;background:var(--paper)}.print-only{display:none}@media(max-width:600px){.bike-chart{height:700px}}@media print{.bike-chart{display:none}.print-only{display:block}}
.equation .equation-key{font:15px/1.55 system-ui;margin:14px 0 0;color:var(--muted)}
.chart-preview{display:block;position:relative;cursor:zoom-in}.chart-preview-label{display:block;background:#263d32;color:#fff;padding:10px 16px;text-align:center;font:600 15px/1.4 system-ui}.chart-preview:hover .chart-preview-label{background:#365e4a}
.chart-modal-open{overflow:hidden}.chart-dialog{padding:0;border:0;border-radius:12px;width:96vw;max-width:1500px;height:92vh;height:92dvh;max-height:96dvh;background:var(--paper);color:var(--ink);box-shadow:0 20px 90px #0006;overflow:hidden}.chart-dialog[open]{display:flex;flex-direction:column}.chart-dialog::backdrop{background:#17251ed9}.chart-dialog-heading{display:flex;align-items:center;gap:18px;padding:14px 18px;border-bottom:1px solid #cdd4c7;font:14px/1.4 system-ui;flex-shrink:0}.chart-dialog-heading h2{font:600 18px/1.3 system-ui;margin:0;flex:1}.chart-dialog-heading button{font:600 15px/1.3 system-ui;padding:10px 14px;border:1px solid #9ca997;border-radius:6px;background:#fff;color:var(--ink);cursor:pointer}.chart-dialog-heading button:focus-visible{outline:3px solid #a65b7d;outline-offset:2px}.chart-dialog iframe{display:block;width:100%;flex:1;min-height:0;border:0;background:var(--paper)}
@media(max-width:600px){.chart-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.chart-dialog-heading{gap:10px;padding:10px}.chart-dialog-heading h2{font-size:16px}.chart-new-tab{font-size:12px}}
@media print{.chart-dialog,.chart-preview-label{display:none!important}.equation .equation-key{font-size:9pt}}
.fleet-chart{display:none}.fleet-ready .fleet-chart{display:block;overflow-x:auto;padding:10px 12px 28px;--pebble-bg:var(--paper)}.fleet-ready .chart-preview{display:none}.fleet-chart .pebble-bar-wrapper{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.fleet-chart .pebble-bar-label{text-align:center;white-space:nowrap}.fleet-chart [role=button]:focus-visible{outline:3px solid #a65b7d;outline-offset:3px}
.report-preview-open{overflow:hidden}.report-preview{padding:14px;border:0;border-radius:12px;background:var(--paper);color:var(--ink);width:min(440px,92vw);max-height:82vh;max-height:82dvh;overflow:auto;box-shadow:0 15px 70px #0005}.report-preview::backdrop{background:#17251eaa}.report-preview-heading{display:flex;align-items:center;gap:10px}.report-preview h2{flex:1;font:600 17px/1.3 system-ui;margin:0}.report-preview button{font:600 14px/1.3 system-ui;padding:8px 12px;background:#fff;border:1px solid #9ca997;border-radius:5px;cursor:pointer}.report-context{font:14px/1.5 system-ui;color:var(--muted);margin:10px 0 16px}.report-photo-wrap{min-height:160px;display:grid;place-items:center;background:#e9ede4;border-radius:5px}.report-photo{max-width:100%;max-height:min(320px,45vh);object-fit:contain}.report-photo[hidden],.report-photo-status[hidden]{display:none}.report-photo-status{font:15px/1.5 system-ui;padding:25px;margin:0}.report-open{display:block;margin-top:16px;padding:12px 16px;background:#263d32;color:#fff;border-radius:5px;font:600 15px/1.4 system-ui;text-align:center;text-decoration:none}@media print{.fleet-chart,.report-preview{display:none!important}.fleet-ready .chart-preview{display:block}}
figure.three-quarter{width:56%;margin-left:auto;margin-right:auto}
@media(max-width:600px){figure.three-quarter{width:auto;margin-left:-8px;margin-right:-8px}}
h4{font-size:19px;line-height:1.3;margin:26px 0 10px}
