:root{--bg:#f2f5f3;--surface:#fff;--surface-2:#f6f9f7;--topbar-bg:#fff;--footer-bg:color-mix(in srgb, #000 4%, var(--bg));--footer-border:color-mix(in srgb, var(--ink) 8%, transparent);--ink:#0e1a16;--ink-2:#4a5a54;--ink-3:#5f6f68;--rule:#e2e9e5;--rule-2:#d3ddd8;--signal:#087a52;--signal-hover:#06603f;--on-signal:#fff;--signal-text:#087a52;--wash:#e1f3ea;--forest:#0e3b2e;--sel:#0e3b2e;--on-forest:#f1faf5;--on-forest-2:#a8cbbd;--mint:#3ddc97;--gold:#f2b33d;--sport-swim:#1f6fe0;--sport-run:#e8641e;--sport-bike:#7b52d9;--sport-trail:#a86b12;--cat-purple:var(--sport-bike);--cat-orange:var(--sport-run);--cat-blue:var(--sport-swim);--cat-amber:var(--sport-trail);--cat-green:var(--signal);--cat-crimson:var(--error);--cat-slate:var(--ink-2);--on-cat:#fff;--chip-b-bg:#e4ecfb;--chip-b-fg:#2556b8;--chip-r-bg:#fce7e3;--chip-r-fg:#b83a22;--chip-y-bg:#fdf1d8;--chip-y-fg:#7a5200;--shadow:color-mix(in srgb, var(--signal) 12%, transparent);--race-a:#ef6461;--race-b:#39a96b;--race-c:#8c96a3;--race-A:var(--race-a);--race-B:var(--race-b);--race-C:var(--race-c);--success:#168a58;--warning:#d99a24;--error:#b4235a;--error-wash:#fbe6ee;--on-error:#fff;--care:var(--error);--care-ink:#9b1c4c;--care-wash:var(--error-wash);--on-care:var(--on-error);--care-on-band:#f58aad;--heat-1:#f2c4d4;--heat-2:#e28aaa;--heat-3:#c9507f;--healed:#7fb8a1;--fig-base:#e6eeea;--fig:#d3e0d9;--fig-zone:#c3d5cc;--day-cell:#e4ece8;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-pill:999px;--topbar-row:64px;--topbar-links:0px;--topbar-height:calc(var(--topbar-row) + var(--topbar-links) + env(safe-area-inset-top,0px));--topbar-offset:var(--topbar-height);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--font-display:"Archivo", "Geist", system-ui, sans-serif;--font-sans:"Geist", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace}[data-theme=dark]{--bg:#07110e;--surface:#0f1e19;--surface-2:#132620;--topbar-bg:#0f1e19;--footer-bg:color-mix(in srgb, #000 18%, var(--bg));--footer-border:#ffffff14;--ink:#eaf3ef;--ink-2:#a9bbb4;--ink-3:#86978f;--rule:#1e312a;--rule-2:#2a4037;--signal:#3ddc97;--signal-hover:#5be3a8;--on-signal:#05140e;--signal-text:#5be3a8;--wash:#11291f;--forest:#0c2c22;--sel:#1a5c46;--sport-swim:#5a9bf5;--sport-run:#f2884a;--sport-bike:#a58bf5;--sport-trail:#b8822a;--cat-green:#1f9d6a;--cat-slate:#5c6e67;--chip-b-bg:#17223a;--chip-b-fg:#8fa6f5;--chip-r-bg:#2e1914;--chip-r-fg:#f08a70;--chip-y-bg:#2a2210;--chip-y-fg:#f5c04e;--shadow:#00000059;--race-a:#ff7774;--race-b:#45c77e;--race-c:#aab2bd;--race-A:var(--race-a);--race-B:var(--race-b);--race-C:var(--race-c);--success:#45c77e;--warning:#f2b94b;--error:#f0628f;--error-wash:#2a1420;--on-error:#1a0610;--care-ink:#f58aad;--heat-1:#4a2434;--heat-2:#7a3352;--heat-3:#a8446e;--healed:#3f7a64;--fig-base:#16271f;--fig:#1e352c;--fig-zone:#294339;--day-cell:#16271f}:root:lang(hi),:root:lang(zh),:root:lang(ja){--font-sans:"Inter", system-ui, sans-serif;--font-display:"Inter", system-ui, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;background-color:var(--topbar-bg);font-size:16px;overflow-x:clip}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--ink);min-height:100vh;margin:0;line-height:1.5;overflow-x:clip}@media (max-width:767px){:root{--topbar-row:56px;--topbar-links:58px}}@media (max-width:899px){:root[data-topbar=out]{--topbar-row:56px;--topbar-links:0px}}