:root{--accent:#ec3013;--accent-soft:#fdeae6;--ink:#201e1d;--ink-raised:#34312f;--ink-muted:#66615d;--ink-faint:#9c9792;--line:#e8e5e2;--line-strong:#d6d2ce;--surface:#fff;--canvas:#f6f5f3;--danger:#c62828;--radius:12px;--shadow:0 1px 2px #201e1d0f, 0 8px 24px #201e1d14;--font:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-brand:"Archivo", var(--font)}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/archivo-800-pepsquad.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}body{background:var(--canvas);color:var(--ink);font:14px/1.45 var(--font);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}h1,h2,p{margin:0}button{font:inherit;color:inherit;cursor:pointer}.app{grid-template-columns:380px 1fr;height:100%;display:grid}.panel{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:20px;padding:24px;display:flex;overflow-y:auto}.view{flex-direction:column;gap:20px;display:flex}.map{background:var(--canvas);height:100%}@media (width<=760px){.app{grid-template-rows:55vh auto;grid-template-columns:1fr;height:auto}.map{grid-row:1}.panel{border-right:0;border-top:1px solid var(--line);padding:20px 16px}}.brand{align-items:center;gap:12px;display:flex}.brand__text{flex:1;min-width:0}.pill-button{border:1px solid var(--line);background:var(--surface);border-radius:999px;height:32px;padding:0 14px;font-size:13px;font-weight:600}.pill-button:hover{border-color:var(--line-strong);background:var(--canvas)}.icon-button{border:1px solid var(--line);width:32px;height:32px;color:var(--ink-muted);border-radius:50%;flex:none;place-items:center;font-weight:700;text-decoration:none;display:grid}.icon-button:hover{border-color:var(--line-strong);background:var(--canvas);color:var(--ink)}.section-header{justify-content:space-between;align-items:center;display:flex}.brand__mark{flex:none;width:40px;height:40px;display:block}.wordmark{font:800 21px/1.1 var(--font-brand);letter-spacing:-.01em}.brand--page{color:var(--ink);align-self:flex-start;text-decoration:none}.race-picker{max-width:100%;color:var(--ink-muted);font:13px var(--font);appearance:none;cursor:pointer;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"6\"><path d=\"M1 1l4 4 4-4\" fill=\"none\" stroke=\"%2366615d\" stroke-width=\"1.5\"/></svg>") right 10px center no-repeat;border:0;border-radius:4px;margin-left:-2px;padding:0 26px 0 2px}.race-picker:hover{color:var(--ink)}.race-picker:focus-visible{outline:2px solid var(--accent)}.section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);font-size:12px;font-weight:600}.fields{grid-template-columns:repeat(6,1fr);gap:12px;margin-top:10px;display:grid}.fields>.field{grid-column:span 3;min-width:0}.fields>.field--third{grid-column:span 2}.fields>.field--two-thirds{grid-column:span 4}.field{color:var(--ink-muted);flex-direction:column;gap:6px;font-size:12px;font-weight:500;display:flex}.fields>.field--wide{grid-column:1/-1}.field__label{align-items:baseline;gap:4px;display:flex}.field__hint{color:var(--ink-faint);font-weight:400}.field__hint:empty{display:none}.link-button{color:var(--accent);font:inherit;background:0 0;border:0;padding:0}.link-button:hover{text-decoration:underline}.field select{border:1px solid var(--line);background:var(--canvas) url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"6\"><path d=\"M1 1l4 4 4-4\" fill=\"none\" stroke=\"%2366615d\" stroke-width=\"1.5\"/></svg>") no-repeat right 10px center;width:100%;height:40px;color:var(--ink);font:500 15px var(--font);appearance:none;cursor:pointer;border-radius:8px;padding:0 24px 0 12px}.field select.has-swatch{background-image:radial-gradient(circle, var(--swatch) 5px, transparent 5.5px), url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"6\"><path d=\"M1 1l4 4 4-4\" fill=\"none\" stroke=\"%2366615d\" stroke-width=\"1.5\"/></svg>");background-position:-2px,right 10px center;background-repeat:no-repeat;background-size:32px 32px,auto;padding-left:26px}.field select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field input:disabled,.field select:disabled{color:var(--ink-muted);cursor:not-allowed;opacity:.7}.field input{border:1px solid var(--line);background:var(--canvas);width:100%;height:40px;color:var(--ink);font:500 15px var(--font);font-variant-numeric:tabular-nums;border-radius:8px;padding:0 12px;transition:border-color .12s,box-shadow .12s,background .12s}.field input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field input[aria-invalid=true]{border-color:var(--danger)}.summary{color:var(--ink-muted);margin-top:10px;font-size:13px}.summary--error{color:var(--danger)}.secondary-button{border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;width:100%;height:40px;margin-top:12px;padding:0 14px;font-weight:600;transition:border-color .12s,background .12s;display:flex}.secondary-button__value{color:var(--ink-muted);font-weight:500}.secondary-button__value:after{content:" ›"}.secondary-button:hover{border-color:var(--line-strong);background:var(--canvas)}.pins__header{justify-content:space-between;align-items:baseline;display:flex}.pins__actions{gap:16px;display:flex}.text-button{color:var(--ink-muted);background:0 0;border:0;padding:0;font-size:13px}.text-button:hover{color:var(--ink)}.pin-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.pin{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:12px;transition:border-color .12s,box-shadow .12s;display:grid}.pin:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.pin:hover{border-color:var(--line-strong);box-shadow:var(--shadow)}.pin__place{font-weight:600}.pin__mile{color:var(--ink-faint);font-size:12px}.pin__time{margin-top:4px;font-size:15px;font-weight:600}.pin__elapsed{color:var(--ink-muted);font-size:13px;font-weight:400;display:block}.pin__hint{color:var(--ink-muted);margin-top:6px;font-size:12px}.pin__side{border:1px solid var(--line);background:var(--canvas) url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"6\"><path d=\"M1 1l4 4 4-4\" fill=\"none\" stroke=\"%2366615d\" stroke-width=\"1.5\"/></svg>") no-repeat right 10px center;height:28px;color:var(--ink);font:600 12px var(--font);appearance:none;cursor:pointer;border-radius:999px;margin-top:8px;padding:0 28px 0 10px}.pin__side--unset{color:var(--ink-muted);font-weight:500}.pin__side:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.pin__remove{width:28px;height:28px;color:var(--ink-faint);background:0 0;border:0;border-radius:8px;font-size:18px;line-height:1}.pin__remove:hover{background:var(--canvas);color:var(--ink)}.empty{border:1px dashed var(--line);border-radius:var(--radius);color:var(--ink-muted);text-align:center;margin-top:10px;padding:16px;font-size:13px}.segmented{background:var(--canvas);border-radius:10px;grid-template-columns:repeat(3,1fr);padding:3px;display:grid}.segmented__option{height:34px;color:var(--ink-muted);cursor:pointer;border-radius:8px;place-items:center;font-size:13px;font-weight:600;transition:background .12s,color .12s;display:grid}.segmented__option input{opacity:0;pointer-events:none;position:absolute}.segmented__option:has(input:checked){background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #201e1d1f}.segmented__option:has(input:focus-visible){outline:2px solid var(--accent)}#strategy-blurb{margin-top:-10px}.field--inline{flex-direction:row;justify-content:space-between;align-items:center;font-size:13px}.field--inline input{width:88px;height:36px}.view__header{grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.view__header .text-button{justify-self:end}.view__title{font-size:15px;font-weight:700}.back-button{background:var(--accent);color:#fff;border:0;border-radius:8px;justify-self:start;height:32px;padding:0 12px;font-weight:600}.back-button:hover{filter:brightness(.95)}.splits-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.splits-grid .field input{height:36px;padding:0 10px}#splits-status{margin-top:-8px}.footnote{color:var(--ink-faint);font-size:11px}.footnote a{color:inherit}.badge{background:var(--ink);color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:grid;box-shadow:0 1px 4px #0000004d}.maplibregl-canvas-container.maplibregl-interactive{cursor:crosshair}.maplibregl-canvas-container.maplibregl-interactive:active{cursor:grabbing}.maplibregl-ctrl-group:not(:empty){box-shadow:var(--shadow);border-radius:10px;overflow:hidden}.maplibregl-ctrl-group button{width:36px;height:36px}.maplibregl-ctrl-attrib{font:10px var(--font)}.hover-dot{border:3px solid var(--accent);pointer-events:none;background:#fff;border-radius:50%;width:14px;height:14px}.hover-tip .maplibregl-popup-content{pointer-events:none;background:var(--ink);color:#fff;box-shadow:var(--shadow);font:13px/1.45 var(--font);font-variant-numeric:tabular-nums;border-radius:10px;padding:10px 12px}.hover-tip.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:var(--ink)}.hover-tip__place{font-weight:600}.hover-tip__mile{color:#a9aeb7}.hover-tip__time{margin-top:4px;font-size:15px;font-weight:600}.hover-tip__elapsed{color:#a9aeb7;font-size:12px;font-weight:400}.print-sheet{box-sizing:border-box;color:#000;font:8.5pt/1.25 var(--font);background:#fff;display:none;overflow:hidden}.print-sheet--measuring{visibility:hidden;display:block;position:fixed;top:0;left:-10000px}.print-sheet[data-layout=quarter]{border-bottom:.5pt dashed #bbb;border-right:.5pt dashed #bbb;width:4.25in;height:5.5in;padding:.3in}.print-sheet[data-layout=half]{column-count:2;border-bottom:.5pt dashed #bbb;column-gap:.4in;width:8.5in;height:5.5in;padding:.35in .4in}.print-sheet[data-layout=full],.print-sheet[data-layout=long]{column-count:2;column-gap:.5in;width:8.5in;height:11in;padding:.5in}.print-sheet[data-layout=long]{height:auto;overflow:visible}.print__header{column-span:all;margin-bottom:10pt}.print__title-row{justify-content:space-between;align-items:baseline;gap:8pt;display:flex}.print__wordmark{font-size:13pt}.print__url{color:#555;font-size:8pt}.print__details{color:#555}.print__list{margin:0;padding:0;list-style:none}.print__item{break-inside:avoid;border-top:.5pt solid #ddd;gap:6pt;padding:4pt 0;display:flex}.print__badge{color:#fff;background:#000;border-radius:50%;flex:none;place-items:center;width:14pt;height:14pt;font-size:7.5pt;font-weight:700;display:grid}.print__place,.print__time{font-weight:600}.print__mile,.print__elapsed{color:#555;font-weight:400}@media print{@page{size:letter portrait;margin:0}body{background:#fff}.app,.consent{display:none}.print-sheet{display:block}}.dialog{width:min(420px,100vw - 32px);color:var(--ink);border:0;border-radius:16px;padding:0;box-shadow:0 24px 64px #201e1d3d}.dialog>form{padding:24px}.dialog::backdrop{background:#201e1d66}.dialog p,.dialog ol{margin:0 0 12px;line-height:1.5}.dialog__title{margin-bottom:8px;font-size:18px;font-weight:700}.dialog__steps{padding-left:20px}.dialog__links{grid-template-columns:1fr 1fr;gap:8px;margin:16px 0 8px;display:grid}.store-link{background:var(--ink);color:#fff;border-radius:8px;place-items:center;height:40px;font-weight:600;text-decoration:none;display:grid}.store-link:hover{background:var(--ink-raised)}.store-link--web{border:1px solid var(--line);background:var(--surface);color:var(--ink);grid-column:1/-1}.store-link--web:hover{border-color:var(--line-strong);background:var(--canvas)}.dialog__more{text-align:center;font-size:13px}.store-link--wide{grid-column:1/-1}.dialog .dialog__label{margin:20px 0 8px;font-size:13px;font-weight:600}.calendar-spots{flex-direction:column;gap:6px;margin:0 0 16px;padding:0;list-style:none;display:flex}.calendar-spot{border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;text-decoration:none;display:flex}.calendar-spot:hover{border-color:var(--line-strong);background:var(--canvas)}.calendar-spot__text{flex-direction:column;flex:1;min-width:0;display:flex}.calendar-spot__place{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.calendar-spot__time{color:var(--ink-muted)}.calendar-spot__add{color:var(--accent);font-weight:600}.dialog__more a{color:var(--ink-muted)}.primary-button{background:var(--accent);color:#fff;border:0;border-radius:8px;width:100%;height:40px;margin-top:8px;font-weight:600}.primary-button:hover{filter:brightness(.95)}.banner{background:var(--accent-soft);color:var(--ink);border-radius:8px;margin-top:10px;padding:10px 12px;font-size:13px}.banner__link{color:var(--accent);margin-top:2px;font-weight:600;display:block}.consent{z-index:1500;background:var(--surface);width:min(340px,100vw - 32px);box-shadow:var(--shadow);border-radius:14px;padding:16px;font-size:13px;position:fixed;bottom:16px;left:396px}.page .consent{left:16px}@media (width<=760px){.consent{width:auto;bottom:12px;left:12px;right:12px}}.consent__title{margin-bottom:4px;font-size:14px;font-weight:700}.consent__text{color:var(--ink-muted);line-height:1.45}.consent__text a{color:var(--ink)}.consent__actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.consent__button{border:1px solid var(--line);background:var(--surface);border-radius:8px;height:36px;font-weight:600}.consent__button:hover{border-color:var(--line-strong);background:var(--canvas)}.consent__button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}.consent-settings{border-radius:var(--radius);background:var(--canvas);padding:14px}.consent-settings .consent__actions{margin-top:8px}.toast{z-index:2000;background:var(--ink);color:#fff;max-width:calc(100vw - 32px);box-shadow:var(--shadow);border-radius:10px;padding:10px 16px;font-size:13px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.page{background:var(--surface);height:auto}.page__content{flex-direction:column;gap:28px;max-width:560px;margin:0 auto;padding:32px 20px 64px;display:flex}.back-link{color:var(--ink-muted);font-size:13px;text-decoration:none}.back-link:hover{color:var(--ink)}.page__title{letter-spacing:-.01em;margin-top:-12px;font-size:26px;font-weight:700}.page__section{flex-direction:column;gap:10px;display:flex}.privacy__summary{cursor:pointer;align-items:center;gap:8px;width:fit-content;list-style:none;display:flex}.privacy__summary::-webkit-details-marker{display:none}.privacy__summary:after{content:"";border-right:1.5px solid var(--ink-muted);border-bottom:1.5px solid var(--ink-muted);width:6px;height:6px;margin-top:-3px;transition:transform .15s;transform:rotate(45deg)}.privacy[open]>.privacy__summary:after{margin-top:3px;transform:rotate(-135deg)}.privacy__summary:hover .section-title{color:var(--ink)}.privacy__body{flex-direction:column;gap:10px;margin-top:10px;display:flex}.page__list{flex-direction:column;gap:8px;margin:0;padding-left:20px;line-height:1.5;display:flex}.page__text{line-height:1.5}.feedback__trap{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}.feedback{flex-direction:column;gap:4px;display:flex}.feedback textarea{border:1px solid var(--line);background:var(--canvas);width:100%;color:var(--ink);font:15px/1.45 var(--font);resize:vertical;border-radius:8px;padding:10px 12px}.feedback textarea:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.page__text code{font-size:.9em}.page__text a,.page__list a{color:var(--accent)}.page__updated{color:var(--ink-faint);font-size:13px}.page__coffee{color:#000;background:#fd0;border-color:#fd0;justify-content:center;margin-top:0;text-decoration:none}.page__coffee:hover{background:#f2d100;border-color:#f2d100}
