@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-400-normal-qiz4-Cze.woff2)format("woff2"),url(/assets/barlow-latin-400-normal-fsAxiSwU.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BPAOfeC8.woff2)format("woff2"),url(/assets/barlow-latin-500-normal-C1h8hMer.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-600-normal-DILqtrty.woff2)format("woff2"),url(/assets/barlow-latin-600-normal-CNwfPWQD.woff)format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-700-normal-A9pxMQ4z.woff2)format("woff2"),url(/assets/barlow-latin-700-normal-__SGTsZ1.woff)format("woff")}@font-face{font-family:Saira Extra Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/saira-extra-condensed-latin-800-normal-CKchDMnX.woff2)format("woff2"),url(/assets/saira-extra-condensed-latin-800-normal-8_tzNIYp.woff)format("woff")}:root{--bg:#131114;--surface:#1e1b20;--surface-2:#2a262c;--line:#38343b;--text:#f5f2ee;--soft:#d8d3d6;--muted:#b4aeb2;--dim:#928d94;--outline:#6e6a72;--red:#b8324a;--c-f:#4a9cdc;--c-q:#d94a6a;--c-l:#b98b0a;--amber:#f0b429;--display:"Saira Extra Condensed", "Arial Narrow", sans-serif;--body:"Barlow", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);margin:0;padding:0}body{color:var(--text);font-family:var(--body);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-size:16px;line-height:1.4}a{color:inherit}button,input,select{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,p,ul,ol{margin:0}:focus-visible{outline:2px solid var(--text);outline-offset:2px}.app{background:var(--bg);flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex}.screen{padding-bottom:calc(84px + env(safe-area-inset-bottom));padding-top:env(safe-area-inset-top);flex-direction:column;flex:auto;display:flex}.screen.no-tabs{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.tabbar{background:var(--bg);border-top:1px solid var(--line);width:100%;max-width:480px;padding-bottom:env(safe-area-inset-bottom);z-index:20;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar a{min-height:64px;color:var(--muted);border-top:2px solid #0000;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:var(--text);border-top-color:var(--c-q)}.day-header{justify-content:space-between;align-items:center;gap:12px;padding:14px 8px 12px 20px;display:flex}.day-title{font-size:20px;font-weight:700;line-height:1.25}.subtle{color:var(--muted);font-size:15px}.icon-btn{width:44px;height:44px;color:var(--text);background:0 0;border:0;flex:none;justify-content:center;align-items:center;text-decoration:none;display:flex}.back-link{align-items:center;gap:4px;min-height:52px;padding:0 20px 0 8px;font-weight:600;text-decoration:none;display:flex}.back-link span{justify-content:center;align-items:center;width:44px;height:44px;display:flex}.screen-title{font-family:var(--display);font-size:44px;font-weight:800;line-height:1}.screen-head{flex-direction:column;gap:4px;padding:14px 20px 12px;display:flex}.hero{flex-direction:column;gap:12px;padding:20px;display:flex;position:relative;overflow:hidden}.hero-arcs{pointer-events:none;position:absolute;top:0;right:0}.hero-tag{letter-spacing:.08em;text-transform:uppercase;font-size:15px;font-weight:700}.hero-big{font-family:var(--display);letter-spacing:-.01em;font-weight:800;line-height:.86}.hero-sub{text-wrap:pretty;font-size:17px;line-height:1.3}.hero-stats{font-size:16px;font-weight:600}.hero-bars{align-items:flex-end;gap:2px;height:44px;display:flex}.hero-bars span{border-radius:2px 2px 0 0;min-width:2px}.hero-labels{justify-content:space-between;gap:8px;margin-top:6px;font-size:13px;font-weight:500;display:flex}.hero-cta{border:0;justify-content:center;align-items:center;gap:10px;width:100%;height:52px;margin-top:2px;font-size:17px;font-weight:700;text-decoration:none;display:flex}.hero-cta[disabled]{opacity:.7}.hero-note{text-wrap:pretty;font-size:14px}.section{flex-direction:column;gap:10px;padding:18px 20px 0;display:flex}.section-title{font-size:17px;font-weight:700}.section-label{color:var(--muted);font-size:15px;font-weight:600}.card{background:var(--surface);flex-direction:column;gap:8px;margin:18px 20px 0;padding:16px;display:flex}.card p{text-wrap:pretty}.card-link{align-items:center;gap:6px;min-height:44px;font-weight:600;text-decoration:none;display:flex}.btn{border:1px solid var(--outline);background:0 0;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 14px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.btn.primary{background:var(--text);color:var(--bg);border:0;font-weight:700}.btn[disabled]{opacity:.55;cursor:default}.btn.full{width:100%}.btn.small{min-height:44px;font-size:15px;font-weight:500}.mood-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mood-grid button{border:1px solid var(--outline);background:0 0;height:48px;padding:0 4px;font-size:16px;font-weight:600}.mood-grid button[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}.week-link{flex-direction:column;gap:8px;margin:20px 20px 0;text-decoration:none;display:flex}.row-between{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.week-cell{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100px;display:flex}.week-km{color:var(--muted);font-size:13px}.bar{border-radius:4px 4px 0 0;width:24px;display:block}.run-card{background:var(--surface);align-items:center;gap:14px;min-height:88px;margin:18px 20px 0;padding:12px;text-decoration:none;display:flex}.run-card-text{flex-direction:column;flex:auto;min-width:0;display:flex}.run-card-text strong{font-size:17px;font-weight:700}.run-thumb{background:var(--bg);flex:none}.cal-weekdays,.cal-row{grid-template-columns:repeat(7,minmax(0,1fr)) 38px;gap:3px;display:grid}.cal-weekdays{color:var(--muted);text-align:center;padding:0 12px 4px;font-size:13px;font-weight:600}.cal-grid{flex-direction:column;gap:3px;padding:0 12px;display:flex}.cal-cell{background:#1a171b;border:0;flex-direction:column;align-items:center;gap:2px;min-width:0;height:96px;padding:4px 0;display:flex}.cal-cell[aria-pressed=true]{background:var(--surface-2);box-shadow:inset 0 0 0 2px var(--text)}.cal-day{text-align:center;min-width:22px;height:20px;font-size:14px;font-weight:500;line-height:20px}.cal-day.today{background:var(--text);color:var(--bg);font-weight:700}.cal-day.other{color:var(--dim)}.cal-bar-wrap{flex:auto;justify-content:center;align-items:flex-end;width:100%;display:flex}.cal-label{height:17px;color:var(--muted);white-space:nowrap;font-size:12px;line-height:17px}.cal-total{font-variant-numeric:tabular-nums;justify-content:center;align-items:flex-end;padding-bottom:6px;font-size:13px;font-weight:700;display:flex}.legend{color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:flex}.swatch{flex:none;width:12px;height:12px}.map-box{background:#1c1b1f;flex:none;width:100%;height:320px;position:relative;overflow:hidden}.map-box .map-gl{position:absolute;inset:0}.map-legend{z-index:2;background:var(--bg);pointer-events:none;gap:10px;padding:6px 8px;font-size:12px;display:flex;position:absolute;top:10px;left:10px}.map-legend span{align-items:center;gap:4px;display:flex}.map-legend i{width:12px;height:8px;display:block}.km-marker{background:var(--bg);border:1.5px solid var(--text);width:22px;height:22px;color:var(--text);font:700 11px/19px var(--body);text-align:center;border-radius:50%}.big-number{font-family:var(--display);font-size:76px;font-weight:800;line-height:.9}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.stat{flex-direction:column;display:flex}.stat b{font-size:20px;font-weight:700}.stat small{color:var(--muted);font-size:13px}.table-rows{font-variant-numeric:tabular-nums;font-size:15px}.table-row{border-bottom:1px solid var(--line);grid-template-columns:54px minmax(0,1fr) 116px;align-items:center;min-height:30px;display:grid}.table-row>:last-child{text-align:right;color:var(--muted)}.seg-bar{gap:2px;height:8px;display:flex}.seg-bar span:first-child{border-radius:4px 0 0 4px}.seg-bar span:last-child{border-radius:0 4px 4px 0}.link-btn{text-underline-offset:3px;background:0 0;border:0;min-height:44px;padding:0 4px;font-size:15px;font-weight:600;text-decoration:underline}.danger-link{min-height:44px;color:var(--muted);text-underline-offset:3px;background:0 0;border:0;font-size:15px;text-decoration:underline}.chat{flex-direction:column;gap:14px;padding:4px 20px 0;display:flex}.bubble-user{background:var(--surface-2);text-wrap:pretty;white-space:pre-wrap;margin-left:44px;padding:12px 14px}.bubble-coach{white-space:pre-wrap;text-wrap:pretty;flex-direction:column;gap:10px;display:flex}.sources{color:var(--soft);white-space:normal;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.sources b{background:var(--surface);padding:3px 8px;font-weight:400}.proposal{background:var(--surface);white-space:normal;flex-direction:column;gap:12px;padding:16px;display:flex}.proposal-row{border-top:1px solid var(--line);grid-template-columns:84px minmax(0,1fr);align-items:center;gap:8px;min-height:52px;padding:6px 0;font-size:15px;display:grid}.proposal-row:last-child{border-bottom:1px solid var(--line)}.strike{color:var(--muted);text-decoration:line-through}.chips{flex-wrap:wrap;gap:8px;display:flex}.handoff{flex-direction:column;gap:10px;display:flex}.handoff p{font-size:15px}.field textarea{border:1px solid var(--outline);background:var(--surface-2);resize:vertical;border-radius:0;width:100%;padding:10px 12px}.composer{bottom:calc(66px + env(safe-area-inset-bottom));background:var(--bg);align-items:center;gap:8px;margin-top:auto;padding:14px 20px 12px;display:flex;position:sticky}.composer input{border:1px solid var(--outline);background:var(--surface);flex:auto;min-width:0;height:48px;padding:0 12px}.composer button{background:var(--text);width:48px;height:48px;color:var(--bg);border:0;flex:none;justify-content:center;align-items:center;display:flex}.composer button[disabled]{opacity:.5}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.thinking{color:var(--muted);font-size:15px}.error-text{color:#ff9db0;font-size:15px}.ok-text{color:var(--soft);font-size:15px}.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:16px 20px 0;display:grid}.tile{background:var(--surface);flex-direction:column;gap:2px;padding:10px;display:flex}.tile b{font-size:32px;font-weight:700;line-height:1.1}.tile strong{font-size:14px;font-weight:600}.tile small{color:var(--muted);font-size:13px;line-height:1.25}.chart-box{width:100%;position:relative}.chart-hit{display:grid;position:absolute;top:0}.chart-hit button{background:0 0;border:0;padding:0}.meter{background:var(--line);border-radius:4px;height:8px;overflow:hidden}.meter div{border-radius:4px;height:8px}.week-bars{border-bottom:1px solid var(--outline);align-items:flex-end;gap:3px;height:112px;display:flex}.week-bars span{border-radius:2px 2px 0 0;flex:1 1 0}.phases{gap:2px;margin-top:4px;font-size:13px;font-weight:600;display:flex}.phases span{background:var(--surface-2);white-space:nowrap;min-width:58px;padding:4px 0 4px 4px}.pace-row{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:12px;min-height:38px;display:flex}.pace-row:last-child{border-bottom:1px solid var(--line)}.rules{flex-direction:column;gap:6px;padding-left:18px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field>label,.field>span{font-size:15px;font-weight:600}.field input,.field select{border:1px solid var(--outline);background:var(--surface-2);border-radius:0;width:100%;height:48px;padding:0 12px}.field small{color:var(--muted);font-size:14px}.time-parts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.time-parts .field>label{color:var(--soft);font-size:14px;font-weight:500}.time-parts input{text-align:center;font-size:18px;font-weight:600}.day-toggles{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.day-toggles button{border:1px solid var(--outline);background:0 0;height:48px;font-weight:600}.day-toggles button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.segmented{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;display:grid}.segmented button{border:1px solid var(--outline);background:0 0;min-height:48px;font-weight:600}.segmented button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.drop{border:2px dashed var(--dim);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:88px;padding:12px;font-weight:600;display:flex;position:relative}.drop input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.steps{text-wrap:pretty;flex-direction:column;gap:6px;padding-left:20px;font-size:15px;display:flex}.progress{background:var(--line);height:8px}.progress div{background:var(--c-f);height:8px;transition:width .2s}.toast{left:50%;bottom:calc(80px + env(safe-area-inset-bottom));background:var(--text);width:calc(100% - 32px);max-width:448px;color:var(--bg);z-index:30;text-wrap:pretty;padding:12px 14px;font-weight:600;position:fixed;transform:translate(-50%)}.run-list-month{color:var(--muted);text-transform:capitalize;padding:18px 20px 6px;font-size:15px;font-weight:600}.run-row{border-top:1px solid var(--line);align-items:center;gap:12px;min-height:64px;padding:8px 20px;text-decoration:none;display:flex}.run-row-main{flex-direction:column;flex:auto;min-width:0;display:flex}.run-row-main b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
