@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&family=Space+Grotesk:wght@500;600;700&display=swap";:root{color-scheme:dark;--bmx-bg-canvas: #0f131d;--bmx-bg-lowest: #090e17;--bmx-bg-surface: #0f131d;--bmx-bg-card: #171c25;--bmx-bg-card-hover: #252a34;--bmx-bg-raised: #30353f;--bmx-border: #25354f;--bmx-outline: #a98a7d;--bmx-outline-variant: #5a4136;--bmx-border-subtle: rgba(255, 255, 255, .08);--bmx-orange: #ff6b00;--bmx-primary: #ffb693;--bmx-on-primary: #572000;--bmx-orange-glow: rgba(255, 107, 0, .25);--bmx-lime: #c3f400;--bmx-lime-dim: #abd600;--bmx-lime-glow: rgba(195, 244, 0, .3);--bmx-green: #4edea3;--bmx-green-container: #00ae78;--bmx-red: #ffb4ab;--bmx-red-container: #93000a;--bmx-text-primary: #dee2f0;--bmx-text-strong: #ffffff;--bmx-text-secondary: #e2bfb0;--bmx-text-muted: #a98a7d;--bmx-radius-sm: 8px;--bmx-radius-md: 12px;--bmx-radius-lg: 16px;--bmx-radius-xl: 24px;--bmx-radius-full: 9999px;--bmx-min-touch: 48px;--bg: var(--bmx-bg-canvas);--panel: var(--bmx-bg-card);--panel-soft: #252a34;--line: var(--bmx-border);--line-soft: rgba(255, 255, 255, .06);--text: var(--bmx-text-primary);--muted: var(--bmx-text-secondary);--dim: var(--bmx-text-muted);--accent: var(--bmx-orange);--gold: var(--bmx-lime);--gutter: clamp(14px, 4vw, 44px);--font-body: "Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif;--font-display: "Space Grotesk", "Plus Jakarta Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--font: var(--font-body)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 16% -10%,rgba(255,107,0,.18),transparent 27rem),radial-gradient(circle at 86% 12%,rgba(195,244,0,.075),transparent 22rem),linear-gradient(180deg,var(--bmx-bg-surface) 0%,var(--bg) 44%,var(--bmx-bg-lowest) 100%);color:var(--text);font-family:var(--font-body);-webkit-text-size-adjust:100%}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 75%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 75%);content:""}html{overflow-y:scroll;scrollbar-gutter:stable}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--bmx-lime);outline-offset:3px}.time{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:0}h1,h2,.brand,.club-primary-name,.club-logo-fallback,.weather-badge,.club-menu-eyebrow,.club-menu h2,.loop-chips button,.period-select select,.search-submit,.rank,.run-rider,.split strong,.leaderboard-time,.session-date,.session-best strong,.best-tiles span,.best-tiles strong,.tabbar a,.about-kicker,.about-moment-list,.about-timing-head span,.about-timing-main span,.about-timing-main strong,.about-splits span,.about-splits strong,.about-pb-gain span,.about-pb-gain strong,.club-access-heading .eyebrow,.club-access-form-head span,.club-access-form-head strong,.club-access-form label span,.club-access-form button{font-family:var(--font-display)}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:5;padding:22px var(--gutter) 16px;background:#0f131deb;border-bottom:1px solid var(--line);box-shadow:0 18px 60px #00000042;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-row{display:flex;align-items:center;gap:14px}.club-switcher{position:relative;flex:none}.club-logo-button{width:52px;height:52px;display:grid;place-items:center;position:relative;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:linear-gradient(145deg,var(--bmx-bg-raised),var(--bmx-bg-card));color:var(--text);padding:3px;cursor:pointer}.club-menu-indicator{position:absolute;right:-4px;bottom:-4px;display:grid;width:19px;height:19px;place-items:center;border:2px solid var(--bmx-bg-lowest);border-radius:50%;background:var(--accent);color:var(--bmx-on-primary)}.club-logo-button:hover,.club-logo-button[aria-expanded=true]{border-color:var(--accent)}.club-logo-button img,.club-menu-options img{width:100%;height:100%;border-radius:7px;object-fit:contain;background:#fff}.club-logo-fallback{display:grid;width:100%;height:100%;place-items:center;border-radius:7px;background:var(--accent);color:var(--bmx-on-primary);font-size:18px;font-weight:900}.brand-title{min-width:0;display:grid;gap:3px}.club-primary-name{overflow:hidden;color:var(--text);font-size:25px;font-weight:700;line-height:1;text-overflow:ellipsis;white-space:nowrap}.brand{color:var(--accent);font-family:var(--font-mono);font-size:12px;font-weight:800;letter-spacing:.12em;line-height:1;text-transform:uppercase}.weather-badge{min-height:38px;display:inline-flex;align-items:center;gap:7px;margin-left:auto;border:1px solid var(--line);border-radius:999px;background:#171c25eb;color:#eef2f6;padding:6px 10px;font-size:14px;font-weight:900;white-space:nowrap}.weather-badge img{width:26px;height:26px;object-fit:contain}.weather-badge strong{font-size:18px;line-height:1}.weather-badge span{display:inline-flex;align-items:center;gap:3px;color:var(--muted)}.club-menu{position:absolute;top:calc(100% + 12px);left:0;width:min(350px,calc(100vw - 28px));max-height:calc(100vh - 110px);overflow-y:auto;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:var(--bmx-bg-surface);padding:18px;box-shadow:0 20px 60px #0000008c}.club-menu h2{margin:2px 0 14px;font-size:23px;line-height:1.1}.club-menu-eyebrow{margin:0;color:var(--bmx-lime);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.club-menu-options{display:grid;gap:7px}.club-menu-options button{display:flex;min-height:56px;align-items:center;gap:11px;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:var(--panel);color:var(--text);padding:9px 11px;cursor:pointer;text-align:left}.club-menu-options button:hover,.club-menu-options button.selected{border-color:var(--accent);background:var(--bmx-bg-card-hover)}.club-menu-options button>span:not(.club-logo-fallback){display:grid;min-width:0;gap:2px}.club-menu-options strong{font-size:16px}.club-menu-options small{color:var(--muted);font-size:12px;font-weight:700}.club-menu-options svg{margin-left:auto;color:var(--muted)}.club-menu-options img,.club-menu-options .club-logo-fallback{width:38px;height:38px;flex:none}.club-menu-back{display:inline-flex;align-items:center;gap:6px;margin:-5px 0 14px;border:0;background:transparent;color:var(--muted);padding:5px 0;cursor:pointer;font-weight:800}.page-controls{display:grid;gap:10px;margin-bottom:18px}.loop-chips{display:flex;flex-wrap:wrap;gap:10px}.search-wrap{min-height:var(--bmx-min-touch);display:flex;align-items:center;gap:10px;max-width:520px;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:var(--panel-soft);color:var(--muted);padding:0 14px}.search-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--bmx-orange-glow)}.search-wrap svg{flex:none}.search-wrap input{width:100%;min-width:0;height:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:18px}.loop-chips button{min-height:var(--bmx-min-touch);min-width:4.25rem;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:var(--panel-soft);color:var(--muted);font-weight:800;padding:0 16px;white-space:nowrap;cursor:pointer}.loop-chips button.active{background:var(--accent);border-color:var(--accent);color:var(--bmx-on-primary);box-shadow:0 0 24px var(--bmx-orange-glow)}.page-controls.inline{display:flex;align-items:center;gap:10px}.page-controls.inline .loop-chips{flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.page-controls.inline .loop-chips::-webkit-scrollbar{display:none}.page-controls.inline .loop-chips button{flex:none}.period-select{position:relative;flex:none;display:inline-flex;align-items:center;color:var(--text)}.period-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:var(--bmx-min-touch);padding:0 36px 0 14px;border:1px solid var(--accent);border-radius:var(--bmx-radius-md);background:var(--panel-soft);color:var(--text);font-weight:900;cursor:pointer}.period-select svg{position:absolute;right:10px;pointer-events:none}.search-form{display:flex;gap:8px;max-width:620px}.search-form .search-wrap{flex:1;max-width:none}.search-submit{flex:none;min-height:var(--bmx-min-touch);padding:0 18px;border:0;border-radius:var(--bmx-radius-md);background:var(--accent);color:var(--bmx-on-primary);font-weight:900;cursor:pointer;box-shadow:0 0 24px var(--bmx-orange-glow)}.search-submit:disabled{opacity:.45;cursor:default}main{padding:28px var(--gutter) calc(96px + env(safe-area-inset-bottom))}.summary{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:26px}h1{margin:0 0 8px;font:700 clamp(36px,7vw,58px)/.94 var(--font-display);letter-spacing:0}p{margin:0;color:var(--muted);font-size:20px}.best-rider-card{margin-bottom:18px}.message{border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:#171c25db;color:var(--muted);padding:22px;font-size:18px}.message.error{color:var(--bmx-red);border-color:#ffb4ab7a}.message.notice{margin-bottom:16px;padding-block:14px}.message.paused{color:var(--bmx-lime);border-color:#c3f40059}.observed-transponders{display:grid;gap:14px;padding:20px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:#171c25db}.observed-transponders-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.observed-transponders-head strong{color:var(--text);font-size:22px}.observed-transponders-head span{color:var(--bmx-lime);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.observed-transponders p{font-size:17px;line-height:1.4}.observed-transponder-pills{display:flex;flex-wrap:wrap;gap:8px}.observed-transponder-pill{display:inline-grid;gap:2px;min-width:120px;padding:9px 12px;border:1px solid rgba(195,244,0,.28);border-radius:999px;background:#c3f40014}.observed-transponder-pill strong{color:var(--text);font-family:var(--font-mono);font-size:14px;line-height:1}.observed-transponder-pill small{overflow:hidden;color:var(--muted);font-size:11px;font-weight:800;line-height:1;text-overflow:ellipsis;white-space:nowrap}.retry{display:block;min-height:var(--bmx-min-touch);margin-top:14px;padding:0 18px;border:1px solid currentColor;border-radius:var(--bmx-radius-md);background:transparent;color:inherit;cursor:pointer}.section-title{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:18px 0 10px}.section-title div{display:grid;gap:3px;min-width:0}.section-title span,.section-title small{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.section-title strong{overflow:hidden;color:var(--text);font-family:var(--font-display);font-size:24px;font-weight:700;line-height:1;text-overflow:ellipsis;white-space:nowrap}.section-title small{flex:none}.status-pill{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-family:var(--font-mono);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.status-pill:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dim)}.status-pill.active{color:var(--bmx-green);border-color:#4edea366}.status-pill.active:before{background:var(--bmx-green)}.status-pill.paused{color:var(--gold);border-color:#c3f4006b}.status-pill.paused:before{background:var(--gold)}.status-pill.demo{color:var(--accent);border-color:#ff6b0085}.status-pill.demo:before{background:var(--accent)}.runs{border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:#0f131de6;position:relative;overflow:hidden}.runs ul{margin:0;padding:0;list-style:none}.run{display:grid;grid-template-columns:minmax(9rem,1fr) minmax(0,4fr);grid-template-areas:"rider splits";align-items:center;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line-soft)}.run:hover{background:#1e243085}.start-group:last-child .run:last-child{border-bottom:0}.run-rider{border:0;background:none;color:inherit;grid-area:rider;display:grid;gap:2px;min-width:0;padding:0;position:relative;text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:21px;font-weight:700}.run-rider-button{cursor:pointer}.run-rider-button:hover,.run-rider-button:hover .run-rider-name{color:var(--accent)}.run-rider-button:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--bmx-radius-sm)}.run-rider-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-splits{grid-area:splits;display:grid;grid-template-columns:repeat(var(--loop-count),minmax(0,1fr));gap:12px}.runs.single .run{grid-template-columns:minmax(0,1fr) minmax(7rem,2fr)}.runs.single .split strong{font-size:26px}.split{display:grid;gap:2px;min-width:0;text-align:right}.split strong{color:var(--text);font-size:21px;line-height:1.1}.split-label{display:none;position:relative;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.split-elapsed{color:var(--muted);font-family:var(--font-mono);font-size:13px;font-weight:600}.split-elapsed.pb-good{color:var(--bmx-lime);font-weight:800}.split-elapsed.pb-gap{color:var(--bmx-primary);font-weight:750}.best,.split.best strong{color:var(--gold);text-shadow:0 0 18px var(--bmx-lime-glow)}.empty,.split.empty strong{color:var(--dim)}.run-head{padding-block:14px;color:var(--muted);font-family:var(--font-mono);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.run-head .run-rider{font-size:inherit;font-weight:inherit}.run-head .run-splits span{overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.start-separator{margin:0;display:flex;align-items:baseline;gap:12px;padding:10px 24px;background:#ff6b001a;border-top:1px solid rgba(255,107,0,.3);border-bottom:1px solid rgba(255,107,0,.22);color:var(--gold);font-size:18px;font-weight:700}.start-separator .start-label{color:var(--muted);font-size:15px;letter-spacing:.18em;text-transform:uppercase}.leaderboard-hero{display:grid;gap:16px;margin-bottom:14px;padding:18px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:linear-gradient(145deg,#252a34eb,#171c25f0);overflow:hidden}.leaderboard-hero-head,.leaderboard-list-head{display:flex;align-items:end;justify-content:space-between;gap:14px}.leaderboard-hero-head div{display:grid;gap:4px;min-width:0}.leaderboard-hero-head span,.leaderboard-hero-head small,.leaderboard-list-head span{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.leaderboard-hero-head strong{overflow:hidden;color:var(--text);font-family:var(--font-display);font-size:26px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.podium-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.12fr) minmax(0,.92fr);gap:10px;align-items:end}.podium-card{display:grid;justify-items:center;gap:6px;min-width:0;padding:14px 10px 12px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg) var(--bmx-radius-lg) var(--bmx-radius-sm) var(--bmx-radius-sm);background:var(--bmx-bg-card);text-align:center;box-shadow:inset 0 -4px #ff6b0080}.podium-card-1{min-height:176px;padding-top:20px;background:linear-gradient(180deg,#30353ffa,#171c25fa);box-shadow:inset 0 -6px 0 var(--gold),0 0 28px #c3f4001a;transform:translateY(-10px)}.podium-card-2{min-height:142px}.podium-card-3{min-height:128px;box-shadow:inset 0 -4px #a98a7da6}.podium-card.viewer{border-color:var(--accent);box-shadow:inset 0 -5px 0 var(--accent),0 0 24px var(--bmx-orange-glow)}.podium-medal{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--panel-soft);color:var(--muted);font-family:var(--font-mono);font-size:17px;font-weight:900}.podium-card-1 .podium-medal{width:58px;height:58px;background:var(--gold);color:#161e00;box-shadow:0 0 22px var(--bmx-lime-glow)}.podium-card-2 .podium-medal{background:#dee2f0;color:#2c303b}.podium-card-3 .podium-medal{background:var(--bmx-outline);color:#351000}.podium-name{display:grid;justify-items:center;gap:2px;width:100%;max-width:100%;overflow:hidden;color:var(--text);font-family:var(--font-display);font-size:18px;line-height:1.05}.podium-card-1 .podium-name{color:var(--bmx-text-strong);font-size:20px}.podium-name-icon{font-size:20px;line-height:1}.podium-name-text{display:-webkit-box;max-width:100%;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}.podium-transponder,.podium-when{max-width:100%;overflow:hidden;color:var(--muted);font-family:var(--font-mono);font-size:10px;font-weight:800;letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.podium-time{color:var(--text);font-size:23px;line-height:1}.podium-card-1 .podium-time{color:var(--gold);font-size:30px;text-shadow:0 0 18px var(--bmx-lime-glow)}.podium-card.viewer .podium-when{color:var(--accent)}.viewer-standing{display:grid;gap:5px;margin-bottom:18px;padding:14px 16px;border:1px solid rgba(255,107,0,.38);border-radius:var(--bmx-radius-lg);background:linear-gradient(135deg,#ff6b0029,#171c25eb)}.viewer-standing.muted{border-color:var(--line);background:#171c25db}.viewer-standing span{color:var(--accent);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.viewer-standing.muted span{color:var(--muted)}.viewer-standing strong{color:var(--text);font-family:var(--font-display);font-size:22px;line-height:1.05}.viewer-standing p{color:var(--text);font-size:15px;line-height:1.35}.viewer-standing b{color:var(--gold)}.leaderboard-list-head{margin:0 0 10px}.leaderboard-list-head h2{margin:0;color:var(--text);font-family:var(--font-display);font-size:22px;line-height:1.05}.leaderboard{margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:#0f131de6;position:relative;overflow:hidden}.leaderboard li{display:grid;grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 24px;border-bottom:1px solid var(--line-soft)}.leaderboard li.viewer-row{background:#ff6b0021}.leaderboard li.viewer-row .leaderboard-rank{background:var(--accent);color:var(--bmx-on-primary)}.leaderboard li:last-child{border-bottom:0}.leaderboard-rank{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--panel-soft);color:var(--muted);font-family:var(--font-mono);font-weight:800;font-variant-numeric:tabular-nums}.podium-1 .leaderboard-rank{background:var(--gold);color:#161e00;box-shadow:0 0 20px var(--bmx-lime-glow)}.podium-2 .leaderboard-rank{background:#c9d1da;color:#11161c}.podium-3 .leaderboard-rank{background:#d08a4e;color:#1a0f06}.leaderboard-rider{min-width:0;display:grid;position:relative;font-family:var(--font-display);font-size:20px;font-weight:700;white-space:nowrap;text-overflow:ellipsis}.leaderboard-when{color:var(--muted);font-size:14px;font-weight:500}.leaderboard-time{font-size:26px}.podium-1 .leaderboard-time{color:var(--gold)}.me-status-hero{display:flex;gap:16px;align-items:center;margin-bottom:12px;padding:18px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:linear-gradient(135deg,#252a34f0,#2c1c1ad1)}.profile-avatar{width:84px;height:84px;flex:none;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:linear-gradient(145deg,#c3f4002e,#ff6b002e),var(--panel-soft);box-shadow:inset 0 0 0 1px #ffffff0a}.profile-avatar span{color:var(--text);font-family:var(--font-display);font-size:36px;font-weight:900}.me-status-title{display:grid;gap:6px;min-width:0}.me-status-title span{overflow:hidden;color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.me-status-title>strong{overflow:hidden;color:var(--text);font-family:var(--font-display);font-size:30px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.profile-status-row{display:flex;flex-wrap:wrap;gap:8px}.profile-status-badge{min-width:0;display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:6px 9px;border-radius:999px;background:#090d16b8;color:var(--muted);font-family:var(--font-mono);font-size:14px;font-weight:900;letter-spacing:.04em}.profile-status-badge b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-status-badge.ok{color:var(--bmx-green)}.profile-status-badge.warn{color:var(--gold)}.profile-status-badge.bad{color:var(--bmx-red)}.transponder-health-head span,.health-facts dt{color:var(--muted);font-family:var(--font-mono);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.transponder-health{display:grid;gap:12px;margin:-2px 0 16px;padding:16px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:linear-gradient(145deg,#171c25f5,#1f252fe0)}.transponder-health-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.transponder-health-head div{display:grid;gap:2px;min-width:0}.transponder-health-head strong{color:var(--text);font-family:var(--font-display);font-size:22px;line-height:1.05}.transponder-health-head small{flex:none;padding:5px 9px;border-radius:999px;background:#4edea329;color:var(--bmx-green);font-family:var(--font-mono);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.transponder-health.warn .transponder-health-head small{background:#c3f40024;color:var(--gold)}.transponder-health.bad .transponder-health-head small{background:#ff5a5a24;color:var(--bmx-red)}.transponder-health.muted .transponder-health-head small{background:#ffffff14;color:var(--muted)}.health-metrics{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px 10px;align-items:end;padding:12px;border-radius:var(--bmx-radius-md);background:#0f131dbf}.health-metrics strong{color:var(--gold);font-family:var(--font-mono);font-size:42px;line-height:.9}.health-metrics span{color:var(--text);font-size:17px;font-weight:800}.health-metrics span:last-child{color:var(--muted);font-family:var(--font-mono);font-size:12px;text-align:right}.health-bar{height:8px;overflow:hidden;border-radius:999px;background:#ffffff1f}.health-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--bmx-green),var(--gold))}.health-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.health-facts div{display:grid;gap:2px;min-width:0}.health-facts dd{margin:0;overflow:hidden;color:var(--text);font-family:var(--font-mono);font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.transponder-health p{color:var(--muted);font-size:15px;line-height:1.35}.subscription{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:14px;line-height:1.25}.subscription strong{margin-right:4px;color:var(--muted)}.subscription-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--dim)}.subscription.ok{color:var(--bmx-green)}.subscription.ok .subscription-dot{background:var(--bmx-green)}.subscription.warn{color:var(--gold)}.subscription.warn .subscription-dot{background:var(--gold)}.subscription.bad{color:var(--bmx-red)}.subscription.bad .subscription-dot{background:var(--bmx-red)}.rider-identity{display:grid;gap:5px;margin-bottom:16px}.rider-identity>strong{min-width:0;overflow:hidden;color:var(--text);font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.rider-action-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:14px;padding:16px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:linear-gradient(145deg,#171c25f0,#0f131deb)}.rider-action-card div{display:grid;gap:4px;min-width:0}.rider-action-card span{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.rider-action-card strong{color:var(--text);font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1}.rider-action-card p{color:var(--muted);font-size:16px}.rider-action-card .search-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px}.claim-form{grid-column:1 / -1;display:grid;gap:12px}.session-list{margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:#0f131de6;position:relative;overflow:hidden}.session-list li{border-bottom:1px solid var(--line-soft)}.session-list li:last-child{border-bottom:0}.session-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head chevron" "best chevron";align-items:center;gap:10px 12px;padding:14px 24px;color:inherit;text-decoration:none}.session-head{grid-area:head;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.session-date{font-size:19px;font-weight:700}.session-meta{width:100%;color:var(--muted);font-size:15px}.session-live{color:var(--bmx-green);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.session-live.paused{color:var(--gold)}.session-best{grid-area:best;display:grid;grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:8px}.session-best>span{display:grid;gap:2px;min-width:0}.session-best .split-label{display:block}.session-best strong{font-size:19px}.session-chevron{grid-area:chevron;color:var(--muted)}.back-link{min-height:var(--bmx-min-touch);display:inline-flex;align-items:center;gap:2px;margin:-8px 0 8px -6px;color:var(--accent);font-weight:800;text-decoration:none}.session-title{display:grid;gap:4px;margin-bottom:14px}.session-title strong{font-size:24px}.session-title span{color:var(--muted);font-size:16px}.best-tiles{display:grid;gap:10px;margin-bottom:18px}.best-tiles div{display:grid;gap:4px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:#171c25e6}.best-tiles span{overflow:hidden;color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.best-tiles strong{font-size:22px}.best-tile-loop{color:var(--text)!important}.best-tile-label{color:var(--bmx-lime)!important}.best-tile-pb{display:flex;align-items:baseline;gap:6px;overflow:visible;white-space:normal}.best-tile-pb .time{overflow:visible;color:var(--text);font-size:13px;font-weight:700;letter-spacing:0;text-transform:none}.best-tile-delta{overflow:visible;color:var(--text);font-size:12px;font-weight:800;letter-spacing:0;text-transform:none}.best-tile-delta.tied{color:var(--bmx-lime)}.about{width:100%}.about section,.about .about-hero{margin-top:22px}.about>section:first-child{margin-top:0}.about em{color:var(--text)}.about h2{margin:0 0 10px;font-size:clamp(24px,6vw,38px);line-height:1.05}.about p{font-size:18px;line-height:1.45}.about-hero{padding:clamp(22px,6vw,34px);border:1px solid rgba(255,107,0,.45);border-radius:var(--bmx-radius-lg);background:linear-gradient(145deg,#ff6b0029,#171c25d1)}.about-hero h1{max-width:760px;margin-bottom:16px;font-size:clamp(36px,10vw,64px);line-height:.98}.about-hero strong{display:block;color:var(--text);font-size:clamp(22px,6vw,32px);line-height:1.1}.about section p+p,.about-hero p{margin-top:12px}.about strong{color:var(--text)}.about-kicker{margin:0 0 10px!important;color:var(--accent);font-family:var(--font-mono);font-size:11px!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.about-story-section{padding:clamp(20px,5vw,30px);border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:#171c25b8}.about-story-section p{max-width:none}.about-moment-list{display:grid;gap:8px;margin:18px 0;color:var(--text);font-size:clamp(20px,5vw,30px);font-weight:900;line-height:1.08}.about-performance{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:clamp(18px,4vw,34px);align-items:center;padding:clamp(20px,5vw,30px);border:1px solid rgba(255,107,0,.32);border-radius:var(--bmx-radius-lg);background:#ff6b0014}.about-performance p{max-width:none}.about-timing-card{display:grid;gap:16px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:linear-gradient(145deg,#171c25,#0f131d);box-shadow:0 18px 46px #00000038}.about-timing-head,.about-timing-main{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.about-timing-head span,.about-timing-main span,.about-splits span{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.about-timing-head strong{color:var(--bmx-lime);font-size:15px}.about-timing-main strong{color:var(--bmx-lime);font-family:var(--font-mono);font-size:clamp(42px,13vw,64px);line-height:.9;font-variant-numeric:tabular-nums;text-shadow:0 0 20px var(--bmx-lime-glow)}.about-pb-gain{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid rgba(195,244,0,.34);border-radius:var(--bmx-radius-md);background:#c3f4001a}.about-pb-gain span{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.about-pb-gain strong{color:var(--bmx-lime);font-family:var(--font-mono);font-size:24px;font-variant-numeric:tabular-nums}.about-splits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.about-splits div{display:grid;gap:5px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:#090e1794}.about-splits strong{font-family:var(--font-mono);font-size:20px;font-variant-numeric:tabular-nums}.about-community{border-color:#4edea347;background:linear-gradient(145deg,#4edea324,#171c25b8)}.about-closing{border-color:#ffffff29;background:linear-gradient(145deg,#ffffff0f,#111820c7)}.about-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.about-sections>div{display:grid;align-content:start;gap:10px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:#171c25b8}.about-sections h2{margin-bottom:0}.about-sections p{font-size:17px}.about-footer{margin-top:36px;padding-top:16px;border-top:1px solid var(--line)}.about-footer p{font-size:15px}.register,.register-form{max-width:520px;display:grid;gap:16px}.field{display:grid;gap:6px;margin:0;padding:0;border:0;min-width:0}.field>span,.field legend{padding:0;color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.field input{min-height:52px;padding:0 14px;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:var(--panel-soft);color:var(--text);font-size:19px}.field input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--bmx-orange-glow)}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice-row button{min-height:52px;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:var(--panel-soft);color:var(--muted);font-size:18px;cursor:pointer}.choice-row button.active{background:var(--accent);border-color:var(--accent);color:var(--bmx-on-primary);font-weight:900;box-shadow:0 0 20px var(--bmx-orange-glow)}.consent{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;color:var(--muted);font-size:16px;line-height:1.4}.consent input{width:24px;height:24px;margin:0;accent-color:var(--accent)}.consent-panel{display:grid;gap:14px;padding:16px;border-radius:var(--bmx-radius-md);background:#171c25db}.consent-panel h3{margin:0;color:var(--text);font-family:var(--font-display);font-size:20px;line-height:1.1}.privacy-note{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border-radius:var(--bmx-radius-md);background:#050910b3}.privacy-note>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#1dd89d24}.privacy-note p{color:var(--muted);font-size:14px;line-height:1.35}.privacy-note strong{display:block;color:var(--text);font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.register-form .search-submit{min-height:52px}.register-done{max-width:520px;display:grid;gap:12px;padding:20px;border:1px solid rgba(195,244,0,.36);border-radius:var(--bmx-radius-lg);background:#171c25db}.register-done strong{color:var(--bmx-lime);font-size:22px}.register-done p{font-size:17px;line-height:1.4}.delete-request{margin-top:8px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:12px}.delete-request summary{min-height:44px;display:flex;align-items:center;color:var(--muted);font-weight:700;cursor:pointer}.delete-request p{font-size:16px;line-height:1.4}.search-submit.secondary{background:var(--panel);border:1px solid var(--line);color:var(--text);box-shadow:none}.search-submit.secondary:hover{border-color:var(--accent);color:var(--accent)}.rider-heading{margin-bottom:10px;font-size:24px;font-weight:900}.run-transponder{overflow:hidden;color:var(--muted);font-size:.6em;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.tabbar{position:fixed;inset:auto 0 0;z-index:10;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:6px max(8px,env(safe-area-inset-right),calc((100% - 640px)/2)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left),calc((100% - 640px)/2));background:#090e17f7;border-top:1px solid var(--line);box-shadow:0 -18px 50px #0000005c;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.tabbar a{min-height:56px;display:grid;place-items:center;align-content:center;gap:4px;border-radius:var(--bmx-radius-md);color:var(--muted);font-family:var(--font-mono);font-size:12px;font-weight:800;letter-spacing:.04em;text-decoration:none;white-space:nowrap}@media (max-width: 400px){.tabbar{padding-inline:2px}.tabbar a{font-size:11px;letter-spacing:0}}.tabbar a.active{color:var(--accent);background:#ff6b0021}.tabbar a.active svg{stroke-width:2.5;filter:drop-shadow(0 0 10px var(--bmx-orange-glow))}@media (max-width: 760px){.topbar{padding-top:12px;padding-bottom:12px}.brand-row{gap:12px}.club-logo-button{width:42px;height:42px}.club-primary-name{font-size:21px}.weather-badge{display:none}.loop-chips{flex-wrap:nowrap;gap:8px}.loop-chips button{flex:1 1 auto;min-width:0;padding:0 10px;overflow:hidden;text-align:center;text-overflow:ellipsis}.search-wrap{height:44px;padding:0 12px;gap:8px}.search-submit{min-height:44px;padding:0 14px}.page-controls.inline .loop-chips{margin:0 calc(-1 * var(--gutter)) 0 0;padding:0 var(--gutter) 0 0}.session-list{margin:0 calc(-1 * var(--gutter));border-radius:0;border-inline:0}.session-list a{padding:14px var(--gutter)}.session-date{font-size:18px}.best-tiles strong{font-size:20px}.search-wrap input{font-size:17px}.brand-title{gap:2px}.club-menu{top:calc(100% + 9px)}.leaderboard{margin:0 calc(-1 * var(--gutter));border-radius:0;border-inline:0}.leaderboard li{grid-template-columns:2.25rem minmax(0,1fr) auto;gap:12px;padding:12px var(--gutter)}.leaderboard-rider{font-size:18px}.leaderboard-time{font-size:24px}.about p{font-size:16px}.about h1{font-size:26px;line-height:1.1}main{padding-top:14px}.summary{display:block;margin-bottom:16px}h1{font-size:28px;margin-bottom:4px}p{font-size:16px}.best-rider-card{margin-top:14px}.message{padding:18px;font-size:16px}.runs{margin:0 calc(-1 * var(--gutter));border-radius:0;border-inline:0}.run-head{display:none}.run{grid-template-columns:minmax(0,1fr);grid-template-areas:"rider" "splits";gap:10px 12px;padding:14px var(--gutter)}.run-rider{font-size:20px}.runs.single .run{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"rider splits"}.runs.single .split{text-align:right}.runs.single .split-label{display:none}.runs.single .split strong{font-size:28px}.run-splits{gap:8px}.split-label{display:block}.split strong{font-size:19px}.split-elapsed{font-size:13px}.start-separator{padding:9px var(--gutter);font-size:17px}.rider-action-card{grid-template-columns:1fr}.rider-action-card .search-submit{width:100%}}.club-access-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:clamp(18px,4vw,34px);align-items:center;padding:26px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:linear-gradient(145deg,#171c25,#0f131d);box-shadow:0 18px 46px #00000038}.club-access-card:before{position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--accent),var(--bmx-lime));content:""}.club-access-copy-wrap{min-width:0}.club-access-heading{display:flex;align-items:center;gap:14px}.club-access-heading h2{margin:2px 0 0}.club-access-heading .eyebrow{margin:0;color:var(--accent);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.club-access-icon{width:46px;height:46px;flex:none;display:grid;place-items:center;border:1px solid rgba(255,107,0,.42);border-radius:var(--bmx-radius-md);background:#ff6b0021;color:var(--accent)}.club-access-copy{display:grid;gap:9px;margin-top:18px}.club-access-copy p{color:var(--text);font-size:17px}.club-access-action-card{display:grid;gap:14px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:var(--bmx-radius-lg);background:linear-gradient(145deg,#171c25,#0f131d);box-shadow:0 18px 46px #00000038}.club-access-form{display:grid;gap:12px;margin:0}.club-access-form>p{margin:0;color:var(--muted);font-size:16px}.club-access-form-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.club-access-form-head span,.club-access-form label span{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.club-access-form-head strong{color:var(--bmx-lime);font-size:15px}.club-access-form label{display:grid;gap:8px;font-weight:800}.club-access-email-row{padding:12px;border:1px solid rgba(195,244,0,.32);border-radius:var(--bmx-radius-md);background:#c3f4001a}.club-access-form input,.club-access-form select{width:100%;box-sizing:border-box;padding:14px 15px;border:1px solid var(--line);border-radius:var(--bmx-radius-md);background:var(--bmx-bg-lowest);color:var(--text);font:inherit;font-size:18px}.club-access-form input::placeholder{color:var(--dim)}.club-access-form input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--bmx-orange-glow)}.club-access-form select{color-scheme:dark;cursor:pointer}.club-access-form select option{background:var(--bmx-bg-card);color:var(--text)}.club-access-form input:disabled{border-color:var(--bmx-bg-raised);background:var(--bmx-bg-card);color:var(--muted);-webkit-text-fill-color:var(--muted);opacity:1;cursor:not-allowed}.club-access-form button{min-height:56px;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:var(--bmx-radius-md);background:var(--accent);color:var(--bmx-on-primary);font:inherit;font-weight:900;cursor:pointer;box-shadow:0 0 24px var(--bmx-orange-glow);transition:transform .15s ease,filter .15s ease}.club-access-form button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.club-access-form button:disabled{opacity:.65;cursor:wait}.application-success{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:0;padding:20px;border:1px solid rgba(78,222,163,.32);border-radius:12px;background:linear-gradient(135deg,#00ae7838,#00382466)}.application-success .success-icon{width:42px;height:42px;grid-row:1 / span 2;display:grid;place-items:center;border-radius:50%;background:var(--bmx-green);color:#003824}.application-success strong{display:block;font-size:22px}.application-success p{margin:5px 0 0;color:var(--text);font-size:16px}.application-success b{color:var(--bmx-text-strong);overflow-wrap:anywhere}.application-success .success-note{display:flex;align-items:center;gap:7px;color:var(--bmx-green);font-size:14px}.application-success .retry{grid-column:2;justify-self:start;margin-top:12px;padding:0;border:0;background:transparent;color:var(--text);font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.login-link{margin:0;font-size:15px!important}.login-link a{color:var(--accent);font-weight:800}.form-error{margin:0;padding:10px 12px;border:1px solid rgba(255,180,171,.38);border-radius:var(--bmx-radius-sm);background:#93000a2e;color:var(--bmx-red);font-size:15px!important}@media (max-width: 520px){.club-access-card{grid-template-columns:1fr;padding:20px}.about-performance,.about-sections{grid-template-columns:1fr}.about-hero{padding:20px}.application-success{grid-template-columns:1fr}.application-success .success-icon{grid-row:auto}.application-success .retry{grid-column:1}}
