@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(../media/3dbe685087e51055-s.1061.lg1~d_4b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6bd983bd58a87a3d-s.p.0h108oidc_0fm.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}@font-face{font-family:Sora;font-style:normal;font-weight:800;font-display:swap;src:url(../media/3dbe685087e51055-s.1061.lg1~d_4b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:800;font-display:swap;src:url(../media/6bd983bd58a87a3d-s.p.0h108oidc_0fm.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}@font-face{font-family:Sora Fallback;src:local(Arial);ascent-override:85.29%;descent-override:25.5%;line-gap-override:0.0%;size-adjust:113.73%}.sora_34a09749-module__BbkrTW__className{font-family:Sora,Sora Fallback;font-style:normal}.sora_34a09749-module__BbkrTW__variable{--font-sora:"Sora", "Sora Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.0gspg~~t9nou8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.0rx81dn62y51_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.0rd3rjvnnhw7n.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}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_154b09cb-module__lmdqzG__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_154b09cb-module__lmdqzG__variable{--font-space-grotesk:"Space Grotesk", "Space Grotesk Fallback"}
:root{--bg:#f8fafc;--bg-elevated:#ffffffd1;--card:#fff;--card-strong:#fdfefe;--border:#e5e7eb;--border-strong:#2563eb2e;--text:#111827;--muted:#6b7280;--primary:#2563eb;--primary-strong:#1d4ed8;--primary-soft:#2563eb1f;--success:#16a34a;--success-soft:#16a34a1f;--trail:#15803d;--gold:#c89b2b;--gold-soft:#c89b2b24;--danger:#dc2626;--danger-soft:#dc26261f;--shadow-lg:0 24px 70px #0f172a1f;--shadow-md:0 18px 40px #0f172a14;--radius-xl:28px;--radius-lg:22px;--radius-md:18px;--radius-sm:14px}:root[data-theme=dark]{--bg:#0b0f17;--bg-elevated:#11161feb;--card:#131923;--card-strong:#161d28;--border:#94a3b824;--border-strong:#60a5fa2e;--text:#f8fafcf0;--muted:#cbd5e1ad;--primary:#6ea4f7;--primary-strong:#4d8cf0;--primary-soft:#6ea4f71c;--success:#61c98b;--success-soft:#61c98b1f;--trail:#4bb878;--gold:#d2b067;--gold-soft:#d2b06724;--danger:#f08a8a;--danger-soft:#f08a8a1f;--shadow-lg:0 20px 54px #02061742;--shadow-md:0 12px 30px #02061733}*{box-sizing:border-box}html{background:radial-gradient(circle at top left, #2563eb24, transparent 28%), radial-gradient(circle at top right, #15803d1f, transparent 24%), linear-gradient(180deg, #ffffff8c, transparent 32%), var(--bg);min-height:100%}:root[data-theme=dark] html,:root[data-theme=dark] body{background:var(--bg)}body{min-height:100vh;color:var(--text);background:0 0;margin:0;font-family:Inter,SF Pro Display,Segoe UI,system-ui,sans-serif;line-height:1.5}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}.app-body{min-height:100vh}.app-frame{flex-direction:column;min-height:100vh;display:flex}.page-shell{flex:1;padding:20px}.page-container{width:min(1200px,100%);margin:0 auto}.site-footer{margin-top:18px;padding:0 20px 10px}.site-footer-inner{border-top:1px solid var(--border);text-align:center;gap:3px;width:min(1200px,100%);margin:0 auto;padding-top:10px;display:grid}.site-footer-inner p{color:var(--muted);margin:0}.site-footer-primary{letter-spacing:.01em;opacity:.88;font-size:.72rem;font-weight:600;line-height:1.35}.site-footer-secondary{opacity:.78;font-size:.68rem;line-height:1.35}.site-footer-secondary a{color:inherit;text-underline-offset:3px;text-decoration:underline}.legal-surface{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:32px;padding:28px}.legal-kicker{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:800}.legal-surface h1{letter-spacing:-.05em;margin:12px 0 0;font-size:clamp(2rem,5vw,3.4rem);line-height:.95}.legal-copy{gap:14px;margin-top:24px;display:grid}.legal-copy p{max-width:72ch;color:var(--muted);margin:0;font-size:1rem}.legal-actions{margin-top:28px}.legal-return-button{border:1px solid var(--border);background:var(--card);min-height:46px;color:var(--text);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;padding:0 20px;font-size:.96rem;font-weight:700;text-decoration:none;transition:border-color .16s,color .16s,transform .16s,box-shadow .16s;display:inline-flex}.legal-return-button:hover{border-color:var(--primary);color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.landing-surface,.hero-surface{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:32px;position:relative;overflow:hidden}.landing-surface:before,.hero-surface:before{content:"";pointer-events:none;background:radial-gradient(circle at 12% 18%,#2563eb29,#0000 22%),radial-gradient(circle at 88% 0,#16a34a1f,#0000 24%);position:absolute;inset:0}.landing-surface{padding:24px}.landing-bare{place-items:center;min-height:calc(100vh - 250px);padding:54px 0 64px;display:grid;position:relative}.landing-bare-inner{text-align:center;justify-items:center;width:min(510px,100%);display:grid;transform:translateY(-18px)}.landing-copy{justify-items:center;width:100%;display:grid}.brand-mark,.hero-kicker{align-items:center;gap:12px;display:flex}.brand-mark{flex-wrap:wrap}.brand-mark-badge,.hero-kicker{border:1px solid var(--border);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:#ffffff8c;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:700}:root[data-theme=dark] .brand-mark-badge,:root[data-theme=dark] .hero-kicker{background:#0f141db8}.brand-mark strong{font-size:1.1rem}.landing-minimal{place-items:center;min-height:calc(100vh - 280px);padding:16px 0 20px;display:grid}.landing-stack{text-align:center;width:min(420px,100%);padding:10px 8px}.landing-minimal .landing-copy{text-align:center;width:100%}.landing-title-centered{letter-spacing:-.045em;width:100%;font-size:clamp(2.8rem,8.8vw,4.8rem);line-height:.86;font-family:var(--font-space-grotesk), var(--font-sora), sans-serif;font-kerning:none;text-wrap:balance;flex-direction:column;align-items:center;gap:.08em;margin:0;font-weight:700;display:flex}.landing-title-centered span{text-align:center;width:100%;display:block}.landing-title-centered span:last-child{font-size:1.08em;font-weight:800}.theme-toggle{cursor:pointer;background:0 0;border:0;padding:0}.theme-toggle-track{border:1px solid var(--border);background:var(--card);min-height:42px;box-shadow:var(--shadow-md);border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;display:inline-flex}:root[data-theme=dark] .theme-toggle-track{color:#f8fafcf5;background:#151b26;border-color:#94a3b829}.theme-toggle-icon{background:var(--card);width:28px;height:28px;color:var(--text);box-shadow:inset 0 0 0 1px var(--border);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}:root[data-theme=dark] .theme-toggle-icon{color:#f8fafcf5;background:#ffffff06;box-shadow:inset 0 0 0 1px #94a3b824}.theme-toggle-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.theme-toggle-label{font-size:.88rem;font-weight:700}:root[data-theme=dark] .theme-toggle-label{color:#f8fafcf0}.landing-grid{z-index:1;gap:28px;margin-top:34px;display:grid;position:relative}.landing-copy h1{letter-spacing:-.06em;max-width:10ch;margin:10px 0 0;font-size:clamp(3rem,8vw,6.2rem);line-height:.95}.landing-kicker,.hero-season,.section-kicker,.preview-eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:800}.leaderboard-card .section-kicker{letter-spacing:.1em;font-size:.96rem}.landing-description,.hero-description,.profile-copy,.rivalry-copy,.landing-note{max-width:62ch;color:var(--muted);margin-top:18px;font-size:1.04rem}.landing-actions{margin-top:46px}.landing-cta{background:linear-gradient(#2f6bfb 0%,#2457db 100%);border:1px solid #2563eb29;border-radius:20px;max-width:430px;min-height:68px;margin:0 auto;padding-inline:34px;box-shadow:0 12px 28px #2563eb1f}.landing-actions .landing-note{margin-top:34px}.landing-cta:hover{box-shadow:0 14px 30px #2563eb29}.landing-cta svg{flex:none;width:19px;height:19px;transform:translateY(1px)}.landing-cta span:last-child{letter-spacing:-.01em}.landing-note{white-space:nowrap;color:#111827c7;max-width:none;margin-inline:auto;font-size:1.06rem;line-height:1.55}:root[data-theme=dark] .landing-note{color:#e2e8f0c7}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-strong));color:#fff;cursor:pointer;border:0;border-radius:20px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:58px;padding:14px 20px;font-size:1rem;font-weight:800;text-decoration:none;transition:transform .18s,box-shadow .18s,opacity .18s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 16px 40px #2563eb47}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 44px #2563eb57}.btn-primary:disabled{opacity:.72;cursor:wait}.btn-primary-glow{border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff3d,#0000 50%);position:absolute;inset:1px}.btn-primary svg{z-index:1;fill:currentColor;width:22px;height:22px;position:relative}.btn-primary span:last-child{z-index:1;position:relative}.landing-note{text-align:center;margin-top:22px;font-size:.88rem}.landing-pill-row{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.landing-pill{border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:999px;padding:10px 14px;font-size:.92rem;font-weight:700}.landing-preview{gap:16px;display:grid}.preview-card,.panel-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-md)}.preview-card{padding:20px}.preview-hero{background:radial-gradient(circle at top right, #2563eb29, transparent 34%), linear-gradient(180deg, var(--card), var(--card-strong))}.preview-hero strong,.preview-rank-row strong{font-size:1.2rem}.preview-hero p,.preview-feed li{color:var(--muted)}.preview-leaderboard{gap:14px;display:grid}.preview-rank-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.preview-feed ul{margin:14px 0 0;padding-left:18px}.preview-feed li+li{margin-top:10px}.league-shell{gap:20px;display:grid}.league-header{gap:16px;padding:18px 0 0;display:grid}.league-header-main{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.header-actions{align-items:center;gap:10px;display:flex}.account-menu{position:relative}.header-user-chip{border:1px solid var(--border);background:var(--card);min-height:42px;color:var(--text);box-shadow:var(--shadow-md);cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:6px 12px 6px 6px;transition:border-color .16s,background .16s,box-shadow .16s;display:inline-flex}.header-user-chip.is-open,.header-user-chip:hover{background:var(--card);border-color:var(--border-strong)}.account-menu-caret{color:var(--muted);font-size:.78rem}.account-menu-popover{border:1px solid var(--border);background:var(--card);z-index:20;border-radius:16px;min-width:176px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 40px #0f172a1f}.account-menu-item{width:100%;min-height:38px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:0 12px;font-size:.9rem;font-weight:700;transition:background .16s,color .16s}.account-menu-item:hover{background:#2563eb14}.header-user-chip img{object-fit:cover;border-radius:50%;width:28px;height:28px}.header-user-chip span{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.9rem;font-weight:700;overflow:hidden}.header-ghost-button{border:1px solid var(--border);min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:0 14px;font-size:.9rem;font-weight:700;transition:color .16s,border-color .16s,background .16s}.header-ghost-button:hover{color:var(--text);background:var(--card);border-color:var(--border-strong)}.header-ghost-button:disabled{opacity:.6;cursor:wait}.league-brand h1{letter-spacing:-.06em;font-size:clamp(2rem,5vw,3.4rem);line-height:.95;font-family:var(--font-space-grotesk), var(--font-sora), sans-serif;margin:8px 0 0;font-weight:700}.league-primary-nav{gap:10px;margin-top:16px;padding-bottom:0;display:flex;overflow-x:auto}.hero-surface{padding:20px 24px 24px}.hero-copy{z-index:1;gap:22px;display:grid;position:relative}.hero-copy-main h1{letter-spacing:-.06em;margin:10px 0 0;font-size:clamp(2.8rem,7vw,5.4rem);line-height:.95}.hero-copy-main h2{letter-spacing:-.05em;margin:0;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1}.hero-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.hero-summary-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:18px 18px 16px}.hero-summary-card span,.leaderboard-metric span,.leaderboard-gap span,.stat-card span{color:var(--muted);font-size:.84rem;display:block}.hero-summary-card strong,.stat-card strong{margin-top:8px;font-size:1.12rem;display:block}.hero-summary-card strong{letter-spacing:-.03em}.hero-summary-card.tone-red strong{color:var(--danger)}.hero-summary-card.tone-gold strong{color:var(--gold)}.hero-summary-card.tone-green strong{color:var(--trail)}.hero-summary-card.tone-blue strong{color:var(--text)}.hero-summary-note{color:var(--muted);margin:2px 4px 0;font-size:.86rem;line-height:1.5}.hero-sync-status{border:1px solid var(--border);background:var(--card);min-height:54px;box-shadow:var(--shadow-md);border-radius:18px;align-items:center;gap:10px;margin:2px 4px 0;padding:12px 18px;display:inline-flex}.hero-sync-status:not(.is-error):not(.is-success){background:#2563eb0f;border-color:#2563eb2e}.hero-sync-status.is-error{background:#dc26260a;border-color:#dc26262e}.hero-sync-status.is-success{background:#16a34a0d;border-color:#16a34a2e}.hero-sync-status-message{color:var(--primary-strong);margin:0;font-size:1rem;font-weight:700}.hero-sync-status.is-error .hero-sync-status-message{color:var(--danger)}.hero-sync-status.is-success .hero-sync-status-message{color:var(--trail)}.hero-sync-retry{border:1px solid var(--border);min-height:34px;color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:0 12px;font-size:.84rem;font-weight:700}:root[data-theme=dark] .hero-sync-status:not(.is-error):not(.is-success){background:#6ea4f714;border-color:#6ea4f72e}:root[data-theme=dark] .hero-sync-status-message{color:#f8fafcf0}.league-tabs{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.season-tabs{justify-content:center;gap:10px;width:max-content;max-width:100%;margin:0 auto;padding-bottom:4px;display:flex;overflow-x:auto}.season-tab{border:1px solid var(--border);min-width:max-content;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:10px 16px;font-size:.9rem;font-weight:800;transition:transform .16s,border-color .16s,color .16s,background .16s}.season-tab.is-active{background:var(--card);color:var(--text);border-color:var(--border-strong)}.league-tab{border:1px solid var(--border);background:var(--card);min-width:max-content;color:var(--muted);cursor:pointer;border-radius:999px;flex:none;padding:12px 18px;font-size:.95rem;font-weight:800;transition:transform .16s,border-color .16s,color .16s,background .16s}.league-tab.is-active{color:#fff;background:linear-gradient(135deg, var(--primary), var(--primary-strong));border-color:#0000}.league-tab:hover{color:var(--primary);background:var(--primary-soft);border-color:#2563eb2e}.league-grid{gap:14px;display:grid}.league-secondary{display:grid}.league-secondary-grid{gap:20px;display:grid}.league-main-column,.league-side-column,.stats-stack,.feed-list,.badges-list,.leaderboard-list{gap:16px;display:grid}.section-heading,.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.section-heading h2,.panel-header h3{letter-spacing:-.04em;margin:6px 0 0;font-size:clamp(1.36rem,3vw,1.86rem)}.sync-panel{width:min(320px,100%)}.sync-message{color:var(--muted);margin:10px 4px 0;font-size:.92rem;font-weight:600}.sync-message.is-success{color:var(--success)}.sync-message.is-error{color:var(--danger)}.profile-sync-slot{margin-top:18px}.mini-podium-grid{justify-content:center;gap:10px;margin-top:0;margin-bottom:0;padding:0 0 14px;display:grid;position:relative}.mini-podium-grid:after{content:"";pointer-events:none;background:linear-gradient(#ffffff8f,#e2e8f0bd);border:1px solid #94a3b81a;border-radius:999px;width:min(700px,84%);height:10px;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #fff6}:root[data-theme=dark] .mini-podium-grid:after{background:linear-gradient(#19202ce0,#0f141df0);border-color:#94a3b80f;box-shadow:inset 0 1px #ffffff08}.mini-podium-card{z-index:1;border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--card), var(--card-strong));box-shadow:var(--shadow-md);padding:14px 16px 13px;position:relative;overflow:hidden}.podium-rank-1{background:radial-gradient(circle at top right, #c89b2b3d, transparent 32%), radial-gradient(circle at top left, #c89b2b1a, transparent 24%), linear-gradient(180deg, var(--card), var(--card-strong));border-color:#c89b2b6b;transform:none;box-shadow:0 16px 34px #c89b2b14}.podium-rank-2{background:radial-gradient(circle at top right, #94a3b829, transparent 30%), linear-gradient(180deg, var(--card), var(--card-strong));border-color:#94a3b842;box-shadow:0 10px 22px #0f172a14}.podium-rank-3{background:radial-gradient(circle at top right, #b4530924, transparent 30%), linear-gradient(180deg, var(--card), var(--card-strong));border-color:#b4530933;box-shadow:0 10px 22px #0f172a14}.mini-podium-topline{justify-content:flex-start;align-items:flex-start;gap:8px;min-height:46px;display:flex}.mini-podium-topline .trend-pill{margin-left:auto}.podium-medal{margin-top:6px;font-size:1.18rem;line-height:1}.mini-podium-avatar{object-fit:cover;border:3px solid #fffc;border-radius:50%;width:50px;height:50px;box-shadow:0 14px 30px #0f172a24}.mini-podium-name{letter-spacing:-.03em;margin:8px 0 3px;font-size:1.1rem;line-height:1.08}.podium-rank-1 .mini-podium-name{font-size:1.34rem}.podium-rank-2 .mini-podium-name,.podium-rank-3 .mini-podium-name{font-size:1rem}.mini-podium-km{margin:0;font-size:.96rem;font-weight:800}.podium-rank-1 .mini-podium-km{font-size:1.08rem}.mini-podium-elevation{color:var(--muted);font-size:.9rem}.trend-pill{border-radius:999px;justify-content:center;align-items:center;min-width:58px;padding:8px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.tone-blue{background:var(--primary-soft);color:var(--primary)}.tone-green{background:var(--success-soft);color:var(--trail)}.tone-gold{background:var(--gold-soft);color:var(--gold)}.tone-red{background:var(--danger-soft);color:var(--danger)}:root[data-theme=dark] .trend-pill.tone-blue{color:#ffffffeb;background:#6ea4f724;box-shadow:inset 0 0 0 1px #6ea4f71f}:root[data-theme=dark] .trend-pill.tone-green{color:#e8faeeeb;background:#61c98b24}:root[data-theme=dark] .trend-pill.tone-gold{color:#fcf4e0eb;background:#d2b06729}:root[data-theme=dark] .trend-pill.tone-red{color:#ffeaeae6;background:#f08a8a24}.leaderboard-card,.journey-card,.feed-card,.profile-panel,.rivalry-card,.error-banner{padding:22px}.journey-card{background:radial-gradient(circle at top right, #2563eb1a, transparent 34%), linear-gradient(180deg, #fffc, #ffffff9e), var(--card);gap:14px;display:grid;box-shadow:0 24px 52px #0f172a14}.journey-card .panel-header{align-items:flex-start;margin-bottom:0}.journey-card .panel-header h3{text-wrap:balance;max-width:18ch}.journey-card .panel-header>div:first-child,.feed-card .panel-header>div:first-child{padding-top:0}.journey-total{text-align:right;justify-items:end;gap:4px;display:grid}.journey-total span{color:var(--muted);letter-spacing:.02em;font-size:.8rem;font-weight:700}.journey-total strong{letter-spacing:-.04em;font-size:1.26rem}.journey-detail{color:var(--muted);margin:0;font-size:.96rem;line-height:1.55}.journey-progress{gap:10px;display:grid}.journey-progress-bar{background:#94a3b829;border-radius:999px;height:10px;position:relative;overflow:hidden}.journey-progress-bar span{border-radius:inherit;background:linear-gradient(90deg,#2563ebe6,#3b82f6c2);height:100%;display:block;box-shadow:0 8px 22px #2563eb2e}.journey-progress p{color:var(--muted);margin:0;font-size:.84rem}.leaderboard-card .panel-header{margin-bottom:8px}.leaderboard-row{border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(180deg, #ffffffb3, transparent), var(--card);gap:6px;padding:8px 13px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.leaderboard-row.is-revealed{animation:.28s both leaderboard-row-reveal}.leaderboard-row:hover,.badge-card:hover,.feed-item:hover,.stat-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.leaderboard-row.is-current-user,.mini-podium-card.is-current-user{border-color:#2563eb4d;box-shadow:0 18px 38px #2563eb24}.leaderboard-more-button{border:1px solid var(--border);width:max-content;min-width:248px;max-width:100%;min-height:42px;color:var(--text);white-space:nowrap;cursor:pointer;background:linear-gradient(#ffffffdb,#ffffff9e);border-radius:999px;justify-self:center;padding:0 22px;font-size:.9rem;font-weight:700;transition:border-color .16s,color .16s,transform .16s,background .16s,box-shadow .16s;box-shadow:0 10px 20px #0f172a0a}.leaderboard-more-button:hover{color:var(--text);border-color:var(--border-strong);background:var(--card);transform:translateY(-1px);box-shadow:0 12px 26px #0f172a12}@keyframes leaderboard-row-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.leaderboard-rank{justify-content:space-between;align-items:center;gap:5px;display:flex}.leaderboard-rank-number{font-size:1.02rem;font-weight:900}.leaderboard-athlete{align-items:center;gap:8px;display:flex}.leaderboard-athlete img{object-fit:cover;border-radius:50%;width:34px;height:34px}.leaderboard-athlete strong{font-size:.92rem;line-height:1.08;display:block}.leaderboard-athlete span{color:var(--muted);margin-top:0;font-size:.68rem;line-height:1.08}.leaderboard-metric span,.leaderboard-gap span{color:#111827a3;font-size:.7rem;font-weight:700}:root[data-theme=dark] .leaderboard-metric span,:root[data-theme=dark] .leaderboard-gap span{color:#cbd5e18f}.leaderboard-metric strong,.leaderboard-gap strong{letter-spacing:-.02em;margin-top:2px;font-size:.9rem;display:block}.leaderboard-gap strong{font-size:.86rem}.rivalry-copy strong{color:var(--primary)}.rivalry-list,.stats-grid{gap:10px;display:grid}.rivalry-card{padding-top:17px;padding-bottom:17px}.rivalry-card .panel-header{margin-bottom:4px}.rivalry-item{border-radius:var(--radius-md);background:linear-gradient(180deg, #ffffffd6, #ffffff8f), var(--card);border:1px solid #2563eb17;min-height:104px;padding:13px 15px 12px;position:relative;box-shadow:0 12px 24px #0f172a0b}.rivalry-item:first-child{background:linear-gradient(180deg, #ffffffeb, #eff6ffc7), var(--card);border-color:#2563eb24;box-shadow:0 14px 30px #2563eb14}.rivalry-item:not(:first-child){background:linear-gradient(180deg, #ffffffb8, #ffffff7a), var(--card);box-shadow:0 8px 18px #0f172a06}.rivalry-item:before{content:"";opacity:.9;background:currentColor;border-radius:999px;width:6px;height:6px;position:absolute;top:12px;left:16px}.rivalry-item strong{color:var(--text);letter-spacing:-.03em;padding-left:16px;font-size:1.04rem;line-height:1.16;display:block}.rivalry-item:first-child strong{font-size:1.06rem;font-weight:800}.league-secondary{gap:22px}.rivalry-item p{color:var(--muted);opacity:.82;margin:3px 0 0;padding-left:16px;font-size:.82rem;line-height:1.38}.rivalry-item.tone-red{color:#dc2626}.rivalry-item.tone-red:before{box-shadow:0 0 0 6px #dc262614}.rivalry-item.tone-gold{color:#c89b2b}.rivalry-item.tone-gold:before{box-shadow:0 0 0 6px #c89b2b1a}.rivalry-item.tone-blue{color:#2563eb}.rivalry-item.tone-blue:before{box-shadow:0 0 0 6px #2563eb14}.rivalry-item.tone-green{color:#15803d}.rivalry-item.tone-green:before{box-shadow:0 0 0 6px #15803d14}:root[data-theme=dark] .rivalry-item{background:linear-gradient(180deg, #ffffff04, transparent), var(--card);border-color:#94a3b814;box-shadow:0 10px 22px #02061724}:root[data-theme=dark] .rivalry-item:first-child{background:linear-gradient(180deg, #6ea4f70f, #ffffff03), var(--card);border-color:#6ea4f724;box-shadow:0 12px 24px #02061729}:root[data-theme=dark] .rivalry-item:not(:first-child){background:linear-gradient(180deg, #ffffff03, transparent), var(--card);box-shadow:0 8px 18px #0206171a}:root[data-theme=dark] .rivalry-item strong{color:#fffffff0}.rivalry-empty-note{color:var(--muted);margin:2px 0 0;font-size:.95rem;line-height:1.5}:root[data-theme=dark] .journey-card{background:var(--card-strong);border-color:#94a3b824}:root[data-theme=dark] .journey-progress-bar{background:#94a3b81f}:root[data-theme=dark] .journey-card .panel-header h3{color:#f8fafcf5}:root[data-theme=dark] .journey-detail,:root[data-theme=dark] .journey-progress p,:root[data-theme=dark] .journey-total span{color:#cbd5e1c2}:root[data-theme=dark] .journey-total strong{color:#f8fafcf5}:root[data-theme=dark] .journey-progress-bar span{background:linear-gradient(90deg,#6ea4f7f5,#4d8cf0e6);box-shadow:0 6px 16px #4d8cf02e}:root[data-theme=dark] .leaderboard-row,:root[data-theme=dark] .feed-item,:root[data-theme=dark] .feed-card,:root[data-theme=dark] .journey-card,:root[data-theme=dark] .rivalry-card,:root[data-theme=dark] .legal-surface,:root[data-theme=dark] .landing-surface,:root[data-theme=dark] .hero-surface,:root[data-theme=dark] .header-user-chip,:root[data-theme=dark] .account-menu-popover,:root[data-theme=dark] .theme-toggle-icon,:root[data-theme=dark] .theme-toggle-track,:root[data-theme=dark] .header-ghost-button,:root[data-theme=dark] .season-tab.is-active,:root[data-theme=dark] .league-tab{box-shadow:none}:root[data-theme=dark] .leaderboard-row{background:linear-gradient(180deg, #ffffff04, transparent), var(--card)}:root[data-theme=dark] .leaderboard-more-button{color:#f8fafceb;box-shadow:none;background:linear-gradient(#ffffff04,#ffffff03);border-color:#94a3b824}:root[data-theme=dark] .leaderboard-more-button:hover{background:#6ea4f714;border-color:#6ea4f72e;box-shadow:0 0 0 1px #6ea4f714}:root[data-theme=dark] .feed-item,:root[data-theme=dark] .feed-card{background:linear-gradient(180deg, #ffffff03, transparent), var(--card)}:root[data-theme=dark] .season-tab,:root[data-theme=dark] .header-user-chip,:root[data-theme=dark] .theme-toggle-track,:root[data-theme=dark] .account-menu-popover{background:var(--card)}:root[data-theme=dark] .landing-surface:before,:root[data-theme=dark] .hero-surface:before{background:0 0}:root[data-theme=dark] .site-footer-inner{border-top-color:#94a3b81a}:root[data-theme=dark] .site-footer-primary,:root[data-theme=dark] .site-footer-secondary{color:#cbd5e1a3}.feed-item,.feed-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:18px;transition:transform .16s,border-color .16s,box-shadow .16s}.feed-item strong{font-size:1rem;display:block}.feed-card{box-shadow:0 22px 48px #0f172a14}.feed-item p{color:var(--muted);margin:8px 0 0}.empty-state{border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--muted);text-align:center;padding:26px}.error-banner strong{color:var(--danger);margin-bottom:6px;display:block}@media (max-width:759px){.page-shell{padding:16px;overflow-x:clip}.page-container{width:100%;overflow-x:clip}.league-shell{gap:13px}.league-header{gap:7px;padding-top:6px}.league-header-main{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.league-brand{min-width:0}.league-brand h1{text-wrap:balance;max-width:5.45ch;margin-top:3px;font-size:clamp(1.72rem,8.8vw,3rem);line-height:.86}.header-actions{gap:6px}.header-actions .header-ghost-button{display:none}.header-user-chip{min-height:36px;padding:4px 8px 4px 4px}.header-user-chip img{width:24px;height:24px}.header-user-chip span,.theme-toggle-label{font-size:.8rem}.header-user-chip span{max-width:62px}.account-menu-caret{font-size:.68rem}.header-ghost-button{min-height:38px;padding:0 12px}.theme-toggle-track{justify-content:center;gap:0;min-width:36px;min-height:36px;padding:4px}.theme-toggle-icon{width:26px;height:26px}.theme-toggle-label{display:none}.league-primary-nav,.season-tabs{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;justify-content:flex-start;gap:8px;width:100%;max-width:none;margin:0;padding:0 8px 4px;scroll-padding-inline:18px;overflow-x:auto}.league-primary-nav::-webkit-scrollbar{display:none}.season-tabs::-webkit-scrollbar{display:none}.season-tabs{-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 10px calc(100% - 16px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 10px calc(100% - 16px),#0000 100%)}.league-tab,.season-tab{white-space:nowrap;scroll-snap-align:start;padding-inline:14px}.league-tab{padding-top:10px;padding-bottom:10px;font-size:.9rem}.season-tab{padding-top:9px;padding-bottom:9px;font-size:.84rem}.hero-surface{padding:14px 15px 13px;overflow:hidden}.hero-copy{gap:12px}.hero-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.hero-summary-card{padding:12px 13px 11px}.hero-summary-card span{font-size:.78rem}.hero-summary-card strong{margin-top:6px;font-size:1rem}.league-grid,.league-secondary{gap:12px}.mini-podium-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"first first""second third";align-items:stretch;gap:8px;padding-bottom:0}.mini-podium-grid:after{display:none}.mini-podium-grid .podium-rank-1{grid-area:first;min-height:132px}.mini-podium-grid .podium-rank-2{grid-area:second;min-height:116px}.mini-podium-grid .podium-rank-3{grid-area:third;min-height:116px}.mini-podium-card{border-radius:20px;padding:10px 10px 9px;overflow:hidden}.mini-podium-card:after{width:70px;height:70px;inset:auto -18px -46px auto}.mini-podium-topline{justify-content:flex-start;gap:6px;min-height:24px}.mini-podium-avatar{border-width:2px;width:32px;height:32px}.podium-medal{margin-top:2px;font-size:.92rem}.mini-podium-name{margin:6px 0 2px;font-size:.84rem;line-height:1.05}.podium-rank-1 .mini-podium-name{font-size:.94rem}.mini-podium-km{font-size:.82rem}.podium-rank-1 .mini-podium-km{font-size:.88rem}.mini-podium-elevation{display:none}.trend-pill{min-width:44px;padding:6px 8px;font-size:.7rem}.panel-card{border-radius:24px}.leaderboard-card,.journey-card,.feed-card,.rivalry-card,.error-banner{padding:13px;overflow:hidden}.leaderboard-card .panel-header,.rivalry-card .panel-header,.journey-card .panel-header,.feed-card .panel-header{margin-bottom:4px}.section-kicker,.leaderboard-card .section-kicker{font-size:.74rem}.panel-header h3{font-size:1.22rem}.leaderboard-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"rank athlete km""rank athlete gap";gap:2px 7px;padding:8px 10px}.leaderboard-rank{flex-direction:column;grid-area:rank;justify-content:center;align-items:flex-start;gap:4px;min-width:26px}.leaderboard-rank-number{font-size:.9rem}.leaderboard-athlete{grid-area:athlete;gap:7px;min-width:0}.leaderboard-athlete img{width:28px;height:28px}.leaderboard-athlete strong{font-size:.8rem;line-height:1.03}.leaderboard-athlete span,.leaderboard-row>:nth-child(4){display:none}.leaderboard-row>:nth-child(3){text-align:right;grid-area:km}.leaderboard-row>:nth-child(5){text-align:right;grid-area:gap}.leaderboard-metric span,.leaderboard-gap span{display:none}.leaderboard-metric strong,.leaderboard-gap strong{margin-top:0;font-size:.77rem;line-height:1.04}.leaderboard-more-button{min-width:236px;min-height:40px;padding:0 18px;font-size:.84rem}.rivalry-list{gap:6px}.rivalry-card{padding-top:13px;padding-bottom:13px}.rivalry-item{min-height:auto;padding:7px 9px 6px}.rivalry-item strong{font-size:.92rem}.rivalry-item:first-child strong{font-size:.98rem}.rivalry-item p{margin-top:2px;font-size:.76rem;line-height:1.3}.journey-card .panel-header{align-items:flex-start}.journey-total{text-align:left;justify-items:start}.journey-card .panel-header{gap:7px;display:grid}.journey-card{gap:10px}.journey-card .panel-header h3{font-size:1.18rem}.journey-total strong{font-size:1.12rem}.journey-detail{font-size:.86rem;line-height:1.42}.journey-progress{gap:7px}.journey-progress p{font-size:.76rem}.feed-list{gap:6px}.feed-list .feed-item:nth-child(n+3){display:none}.feed-item{padding:14px 11px}.feed-item strong{font-size:.88rem}.feed-item p{margin-top:4px;font-size:.76rem;line-height:1.34}.site-footer{margin-top:12px;padding-bottom:8px}.site-footer-inner{gap:2px;padding-top:8px}.site-footer-primary{font-size:.68rem;line-height:1.22}.site-footer-secondary{opacity:.82;font-size:.64rem;line-height:1.22}.site-footer-primary span,.site-footer-secondary span,.site-footer-secondary a,.site-footer-secondary span:nth-child(2){display:inline}}@media (min-width:520px) and (max-width:759px){.league-brand h1{max-width:none;font-size:clamp(1.88rem,6.2vw,2.7rem);line-height:.9}}@media (max-width:759px){:root[data-theme=dark] .feed-item p,:root[data-theme=dark] .journey-detail,:root[data-theme=dark] .journey-progress p,:root[data-theme=dark] .site-footer-primary,:root[data-theme=dark] .site-footer-secondary{color:#cbd5e1cc}:root[data-theme=dark] .season-tabs{-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 12px calc(100% - 18px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 12px calc(100% - 18px),#0000 100%)}:root[data-theme=dark] .rivalry-item{background:#ffffff04;border-color:#94a3b81a}:root[data-theme=dark] .rivalry-item:first-child{background:#6ea4f70f;border-color:#6ea4f724}:root[data-theme=dark] .feed-item,:root[data-theme=dark] .feed-card,:root[data-theme=dark] .journey-card,:root[data-theme=dark] .rivalry-card{background:var(--card)}}@media (min-width:760px){:root:not([data-theme=dark]) .leaderboard-row,:root:not([data-theme=dark]) .feed-item,:root:not([data-theme=dark]) .feed-card,:root:not([data-theme=dark]) .journey-card,:root:not([data-theme=dark]) .rivalry-card,:root:not([data-theme=dark]) .hero-surface,:root:not([data-theme=dark]) .landing-surface,:root:not([data-theme=dark]) .legal-surface,:root:not([data-theme=dark]) .header-user-chip,:root:not([data-theme=dark]) .theme-toggle-track,:root:not([data-theme=dark]) .account-menu-popover,:root:not([data-theme=dark]) .season-tab,:root:not([data-theme=dark]) .league-tab,:root:not([data-theme=dark]) .leaderboard-more-button{border-color:#cbd5e1eb}:root:not([data-theme=dark]) .site-footer-inner{border-top-color:#cbd5e1e0}.page-shell{padding:28px}.site-footer{margin-top:22px;padding-bottom:8px}.site-footer-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:0;padding-top:10px;display:flex}.site-footer-primary{color:#111827c2;opacity:1;font-size:.845rem;font-weight:500;line-height:1.2}.site-footer-secondary{color:#111827c2;opacity:1;font-size:.845rem;line-height:1.2}.site-footer-secondary:before{content:" ·";margin:0 .25rem}.site-footer-primary span,.site-footer-secondary span,.site-footer-secondary a{display:inline}:root[data-theme=dark] .site-footer-primary,:root[data-theme=dark] .site-footer-secondary{color:#e2e8f0cc}.landing-surface,.hero-surface{padding:30px}.landing-grid,.hero-copy{grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr);align-items:start}.hero-copy,.hero-summary-grid{grid-template-columns:1fr}.hero-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.mini-podium-grid{grid-template-columns:176px 14px 214px 14px 176px;grid-template-areas:". .first. .""second.first.third";align-items:end;gap:0}.mini-podium-grid .podium-rank-1{grid-area:first;align-self:end;min-height:236px;margin-bottom:0}.mini-podium-grid .podium-rank-2{grid-area:second;align-self:end;min-height:194px;margin-bottom:0;transform:none}.mini-podium-grid .podium-rank-3{grid-area:third;align-self:end;min-height:194px;margin-bottom:0;transform:none}.leaderboard-row{grid-template-columns:140px minmax(0,1.35fr) minmax(0,.8fr) minmax(0,.8fr) minmax(0,.7fr);align-items:center;gap:6px;padding:6px 11px}.leaderboard-rank{gap:4px}.leaderboard-rank-number{font-size:.98rem}.leaderboard-athlete{gap:8px}.leaderboard-athlete img{width:30px;height:30px}.leaderboard-athlete strong{font-size:.88rem;line-height:1.06}.leaderboard-more-button{border-color:#94a3b82e;min-width:260px;min-height:43px;padding:0 24px;font-size:.88rem}.leaderboard-more-button:hover{box-shadow:0 10px 22px #0f172a0f}.league-secondary-grid,.league-secondary{gap:22px}.journey-card,.feed-card{padding:20px}.journey-card .panel-header,.feed-card .panel-header{margin-bottom:8px}.journey-card .panel-header h3,.feed-card .panel-header h3{font-size:1.26rem;line-height:1.05}.section-kicker,.leaderboard-card .section-kicker{letter-spacing:.1em;font-size:.76rem}:root[data-theme=dark] .leaderboard-more-button{color:#f8fafcf5;background:#ffffff05;border-color:#94a3b82e}:root[data-theme=dark] .leaderboard-more-button:hover{background:#6ea4f71a;border-color:#6ea4f73d;box-shadow:0 0 0 1px #6ea4f71a}:root[data-theme=dark] .feed-item p,:root[data-theme=dark] .journey-detail,:root[data-theme=dark] .journey-progress p{color:#cbd5e1cc}.leaderboard-athlete span{font-size:.66rem;line-height:1.06}.leaderboard-metric span,.leaderboard-gap span{font-size:.68rem}.leaderboard-metric strong,.leaderboard-gap strong{margin-top:1px;font-size:.88rem}.leaderboard-gap strong{font-size:.84rem}.league-secondary-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.league-secondary{gap:20px}.rivalry-card{grid-column:1/-1}.rivalry-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.journey-card,.feed-card{min-height:100%}}@media (min-width:1080px){.landing-surface{padding:34px}.landing-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.72fr);gap:36px}.hero-copy,.league-grid{grid-template-columns:1fr}}
