body.app{--ink:#0b1510;--ink-2:#13221a;--ink-3:#1b2e24;--line:#2a4134;--text:#eaf2ec;--muted:#a9bdb0;--lime:#c8f04a;--lime-hover:#d6f76a;background:var(--ink);height:auto;min-height:100%;color:var(--text);-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:16px}body.app,body.app button,body.app input{font-family:Plus Jakarta Sans,system-ui,sans-serif}body.app [hidden]{display:none!important}body.app a{color:var(--lime)}body.app :focus-visible{outline:3px solid var(--lime);outline-offset:3px}.btn-lime{background:var(--lime);color:var(--ink);cursor:pointer;border:0;border-radius:14px;height:52px;padding:0 22px;font-size:16px;font-weight:700}.btn-lime:hover{background:var(--lime-hover);border:0}.app-logo{align-items:center;gap:10px;text-decoration:none;display:inline-flex;color:inherit!important}.app-logo-tile{background:var(--lime);border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.app-logo-tile svg{width:22px;height:22px}.app-logo-word{letter-spacing:-.02em;font-size:24px;font-weight:800}.signin{flex-wrap:wrap;min-height:100vh;display:flex}.signin-art{flex-direction:column;flex:0 560px;justify-content:space-between;min-height:320px;padding:48px;display:flex;position:relative;overflow:hidden}.signin-art img{object-fit:cover;object-position:45% 50%;width:100%;height:100%;position:absolute;inset:0}.signin-art:before{content:"";background:linear-gradient(#0b15108c 0%,#0b151000 30% 50%,#0b1510d9 100%);position:absolute;inset:0}.signin-art>*{position:relative}.signin-art .app-logo{color:#fff!important}.signin-art-title{letter-spacing:-.03em;color:#fff;margin:0;font-size:clamp(36px,4vw,52px);font-weight:800;line-height:1.02}.signin-panel{flex-direction:column;flex:420px;justify-content:center;gap:22px;max-width:640px;padding:48px clamp(24px,6vw,96px);display:flex}.signin-head h1{letter-spacing:-.025em;margin:0 0 8px;font-size:44px;font-weight:700}.signin-head p{color:var(--muted);margin:0;line-height:1.55}.google-slot{min-height:44px}.google-slot:empty{display:none}.dev-form{flex-direction:column;gap:8px;display:flex}.dev-form label{color:#cfddd3;font-size:14px;font-weight:500}.dev-form small{color:var(--muted)}.dev-row{gap:10px;display:flex}.dev-row input{border:1.5px solid var(--line);background:var(--ink-2);height:52px;color:var(--text);border-radius:12px;flex:1;padding:0 16px;font-size:16px}.dev-row input::placeholder{color:#7f978a}.signin-note{color:#ffd9a0;margin:0}.signin-fine{color:var(--muted);margin:0;font-size:14px}.signin-back{font-size:14px;font-weight:600;text-decoration:none}.home{flex-direction:column;gap:28px;min-height:100vh;padding:28px clamp(16px,4vw,56px) 40px;display:flex}.app-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.app-account{align-items:center;gap:12px;min-width:0;display:flex}.app-account img,.app-avatar-fallback{object-fit:cover;border-radius:999px;flex:none;width:44px;height:44px}.app-avatar-fallback{color:var(--ink);background:linear-gradient(135deg,#ffb38a,#f2668b);justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.app-account>span:not(.app-avatar-fallback){text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.app-link{color:var(--muted);text-underline-offset:.3em;cursor:pointer;padding:8px 4px;font-size:15px;text-decoration:underline;background:0 0!important;border:0!important}.app-link:hover{color:var(--text)}.home-grid{flex-wrap:wrap;flex:1;align-items:stretch;gap:28px;display:flex}.run-hero{max-width:580px;min-height:520px;color:var(--ink);background:url(/marketing/scenic.webp) 50% 40%/cover;border-radius:32px;flex-direction:column;flex:420px;justify-content:space-between;padding:40px;display:flex;position:relative;overflow:hidden}.run-hero:before{content:"";background:linear-gradient(#f4f7f2d9 0%,#f4f7f226 45%,#0b15101a 70%,#0b15108c 100%);position:absolute;inset:0}.run-hero>*{position:relative}.run-hero h1{letter-spacing:-.035em;margin:0;font-size:clamp(40px,4.4vw,60px);font-weight:800;line-height:.98}.run-hero p{margin:10px 0 0;font-size:18px;font-weight:600}.run-hero-actions{flex-direction:column;align-self:center;align-items:center;gap:18px;width:min(100%,340px);display:flex}.run-hero-actions>.run-btn{margin:22px 0 10px}.run-hero-actions>:not(.run-btn){align-self:stretch}.run-btn{cursor:pointer;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:168px;height:168px;transition:transform .15s;display:flex;box-shadow:0 0 0 10px #0b151038,0 0 0 22px #0b15101a;background:var(--ink)!important;color:var(--lime)!important;border:0!important}.run-btn span{letter-spacing:.02em;font-size:30px;font-weight:800}.run-btn:hover{transform:scale(1.04)}.run-hero-quick{color:#fff;text-align:center;flex-direction:column;align-items:stretch;gap:8px;display:flex}.run-hero-quick>span{text-shadow:0 1px 6px #00000080;font-size:14px;font-weight:600}.run-hero-quick a{color:#f4f7f2;background:#0b1510d9;border-radius:18px;padding:14px 16px;font-weight:600;text-decoration:none}.run-hero-quick a:hover{background:var(--ink)}.home-side{flex-direction:column;flex:999 560px;gap:24px;min-width:0;display:flex}.tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;display:grid}.tile{background:var(--ink-2);border:1px solid var(--line);border-radius:20px;flex-direction:column;gap:8px;padding:20px;display:flex}.tile-label{color:var(--muted);font-size:13px;font-weight:500}.tile-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:36px;font-weight:700}.tile-value small{color:var(--muted);font-size:17px;font-weight:600}.tile-sub{color:var(--lime);font-size:13px;font-weight:600}.panels{flex-wrap:wrap;gap:24px;display:flex}.panel-card{background:var(--ink-2);border:1px solid var(--line);border-radius:24px;padding:24px}.panel-card h2{margin:0;font-size:18px;font-weight:600}.panels>.panel-card{flex-direction:column;flex:320px;gap:16px;min-width:0;display:flex}.panel-note{color:var(--muted);margin:0;font-size:14px}.week-chart{flex:1;align-items:flex-end;gap:12px;min-height:200px;display:flex}.week-day{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.week-day b{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.week-bar{background:#3e6b52;border-radius:10px;width:100%;max-width:44px;min-height:4px}.week-bar.empty{background:#22362b}.week-bar.today{background:var(--lime)}.week-day span{color:#cfddd3;font-size:13px;font-weight:500}.recent-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.recent-item{background:#0f1c15;border-radius:14px;align-items:center;gap:14px;padding:12px;display:flex}.recent-thumb{background:url(/marketing/scenic.webp) 50% 40%/cover;border-radius:12px;flex:none;width:48px;height:48px}.recent-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.recent-text strong{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.recent-text span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.panel-card.phone{align-items:flex-start;gap:18px;display:flex}.panel-card.phone svg{flex:none;margin-top:2px}.panel-card.phone p{color:var(--muted);margin:6px 0 0;font-size:15px;line-height:1.55}.panel-card.phone em{color:var(--text);font-style:normal;font-weight:600}@media (width<=700px){.run-hero{min-height:420px;padding:28px}.run-btn{width:132px;height:132px}.signin-art{flex-basis:100%;padding:28px}}.map-dialog{border:1px solid var(--line);background:var(--ink);width:min(960px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--text);border-radius:28px;padding:32px}.map-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050a07bf}.map-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.map-head h2{letter-spacing:-.025em;margin:0;font-size:36px;font-weight:700}.map-head p{color:var(--muted);margin:4px 0 0}.map-close{cursor:pointer;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:flex;background:var(--ink-2)!important;border:1px solid var(--line)!important;color:var(--text)!important;border-radius:999px!important;padding:0!important}.maps{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}@media (width<=700px){.maps{grid-template-columns:1fr}}.map-card{background:var(--ink-2);border:1px solid var(--line);border-radius:24px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden;color:var(--text)!important}.map-card.live{border:3px solid var(--lime);transition:transform .15s}.map-card.live:hover{transform:translateY(-3px)}.map-art{flex-direction:column;height:280px;padding:16px;display:flex;position:relative}.map-meadow{background:url(/marketing/scenic.webp) 50% 45%/cover}.map-cameron{background:url(/marketing/cameron.webp) 50% 55%/cover}.map-art.has-route:after{content:"";background:#0b151080;position:absolute;inset:0}.map-route{z-index:1;width:100%;height:100%;position:absolute;inset:0}.map-art.has-route .map-badge{z-index:2;position:relative}.map-credit{color:var(--muted,#a9bdb0);margin-top:4px;font-size:11px}.map-badge{color:#33463b;background:#f4f7f2;border-radius:999px;align-self:flex-start;padding:6px 10px;font-size:12px;font-weight:700}.map-card.live .map-badge{background:var(--ink);color:var(--lime)}.map-body{flex-direction:column;gap:6px;padding:18px 22px 22px;display:flex}.map-body strong{letter-spacing:-.02em;font-size:24px;font-weight:700}.map-body span{color:var(--muted);font-size:15px;line-height:1.45}.map-body .map-facts{color:var(--lime);font-variant-numeric:tabular-nums;font-size:16px;font-weight:800}body.app .continue-run{border:1px solid var(--lime);background:#c8f04a1f;border-radius:18px;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex;color:var(--text)!important}body.app .continue-run[hidden]{display:none}body.app .continue-run svg{box-sizing:border-box;background:var(--lime);width:34px;height:34px;color:var(--ink);border-radius:50%;flex:none;padding:8px}body.app .continue-run span{flex-direction:column;gap:2px;min-width:0;display:flex}body.app .continue-run small{color:var(--muted);font-size:12px;font-weight:600}body.app .continue-run b{font-size:16px;font-weight:800}body.app .continue-run em{color:var(--lime);font-variant-numeric:tabular-nums;font-size:13px;font-style:normal}body.app .continue-run:hover{background:#c8f04a33}.panel-card.runner-card{flex-wrap:wrap;align-items:stretch;gap:24px;display:flex}.runner-stage{background:radial-gradient(90% 70% at 50% 85%, #c8f04a29, #c8f04a00 70%), var(--ink);cursor:grab;border-radius:18px;flex:220px;max-width:320px;min-height:320px;position:relative;overflow:hidden}.runner-stage:active{cursor:grabbing}.runner-stage canvas{display:block;position:absolute;inset:0}.runner-stage:not(.ready):after{content:"Loading your runner…";color:var(--muted);place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.runner-stage.failed:after{content:"Preview unavailable"}.runner-edit{flex-direction:column;flex:999 300px;gap:14px;min-width:0;display:flex}.runner-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.runner-status{color:var(--lime);font-size:13px;font-weight:600}.runner-body{background:var(--ink);border:1px solid var(--line);border-radius:14px;align-self:flex-start;gap:4px;padding:4px;display:inline-flex}.runner-body button{cursor:pointer;border-radius:10px;padding:8px 18px;font-weight:700;color:var(--text)!important;background:0 0!important;border:0!important}.runner-body button.on{background:var(--lime)!important;color:var(--ink)!important}.runner-parts{flex-direction:column;gap:12px;display:flex}.runner-row{align-items:center;gap:14px;display:flex}.runner-row-label{width:56px;color:var(--muted);flex:none;font-size:13px;font-weight:600}.runner-swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{cursor:pointer;border-radius:50%;width:28px;height:28px;box-shadow:inset 0 0 0 2px #0b151040;background:var(--swatch)!important;border:2px solid #eaf2ec2e!important;padding:0!important}.swatch.on{box-shadow:0 0 0 2px var(--lime), inset 0 0 0 2px #0b151099;border-color:var(--lime)!important}.swatch:focus-visible,.runner-body button:focus-visible{outline-offset:2px;outline:3px solid #fff}
