:root{--brand-gold: #d4a13a;--brand-gold-soft: rgba(212, 161, 58, .15);--brand-orange: var(--brand-gold);--brand-orange-dark: #b5822a;--brand-orange-light: #e0b262;--brand-navy: var(--brand-gold);--brand-navy-2: #b5822a;--indigo: var(--brand-gold);--cream: #ebebd3;--yellow: #f4d35e;--orange-soda: var(--brand-gold);--orange-yellow: var(--brand-gold);--bg: #f8f9fb;--panel: #ffffff;--panel-2: #f3f4f6;--border: #e5e7eb;--text: #0f172a;--muted: #64748b;--accent: var(--brand-gold);--accent-contrast: #1a1400;--accent-2: var(--brand-gold);--accent-3: var(--brand-orange-light);--accent-soft: rgba(212, 161, 58, .12);--good: #16803c;--bad: #dc2626;--control-active: #111827;--control-active-text: #ffffff;--itt-accent-surface: #fff8e9;--itt-accent-surface-hover: #f7e7c4;--itt-accent-text: #7a5105;--itt-selected-surface: #172033;--itt-selected-text: #ffffff;--itt-selected-muted: #aab6cb;--itt-map-bg-top: #fbfcfd;--itt-map-bg-bottom: #f4f7f8;--itt-map-route-base: rgba(15, 23, 42, .13);--itt-map-marker: #172033;--itt-map-marker-halo: rgba(255, 255, 255, .88);--series-1: #2a78d6;--series-2: #1baf7a;--series-3: #eda100;--series-4: #008300;--series-5: #4a3aa7;--series-6: #e34948;--series-7: #e87ba4;--series-8: #eb6834}[data-theme=dark]{--bg: #070a0f;--panel: #0d1219;--panel-2: #121925;--border: #1f2937;--text: #f8fafc;--muted: #94a3b8;--indigo: var(--brand-gold);--accent: var(--brand-gold);--accent-contrast: #1a1400;--accent-2: var(--brand-gold);--accent-soft: rgba(212, 161, 58, .15);--good: #22c55e;--bad: #f87171;--control-active: #f8fafc;--control-active-text: #111827;--itt-accent-surface: #2b2213;--itt-accent-surface-hover: #382b13;--itt-accent-text: #f0c66b;--itt-selected-surface: #182238;--itt-selected-text: #f8fafc;--itt-selected-muted: #b2bfd3;--itt-map-bg-top: #111925;--itt-map-bg-bottom: #0b1119;--itt-map-route-base: rgba(148, 163, 184, .22);--itt-map-marker: #e2e8f0;--itt-map-marker-halo: rgba(7, 10, 15, .9);--series-1: #3987e5;--series-2: #199e70;--series-3: #c98500;--series-4: #008300;--series-5: #9085e9;--series-6: #e66767;--series-7: #d55181;--series-8: #d95926}.data-table-shell,.ui-table-shell{width:100%;padding:0!important;overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:0 1px 2px #0f172a06;scroll-margin-top:78px;-webkit-overflow-scrolling:touch}.data-table,.ui-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--panel);font-size:12px}.data-table th,.data-table td,.ui-table th,.ui-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left}.data-table thead,.ui-table thead{background:color-mix(in srgb,var(--panel-2) 72%,var(--panel))}.data-table th,.ui-table th{padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.data-table th:first-child,.data-table td:first-child,.ui-table th:first-child,.ui-table td:first-child{padding-left:14px}.data-table th:last-child,.data-table td:last-child,.ui-table th:last-child,.ui-table td:last-child{padding-right:14px}.data-table td,.ui-table td{height:44px;color:var(--text)}.data-table td.muted,.ui-table td.muted{color:var(--muted)}.data-table a,.ui-table a{font-weight:600}.data-table td.muted a,.ui-table td.muted a{color:var(--muted);font-weight:500}.data-table:not(.pred-table) tbody>tr:not(.race-row):nth-child(2n)>td,.ui-table tbody>tr:nth-child(2n)>td{background:color-mix(in srgb,var(--panel-2) 34%,var(--panel))}.data-table tbody>tr:hover>td,.ui-table tbody>tr:hover>td{background:color-mix(in srgb,var(--accent-soft) 50%,var(--panel))!important}.data-table tbody>tr:last-child>td,.ui-table tbody>tr:last-child>td{border-bottom:0}.ui-table [data-align=end]{text-align:right}.ui-table-sort{display:inline-flex;align-items:center;justify-content:inherit;gap:5px;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.ui-table-sort:hover,.ui-table-sort:focus-visible{color:var(--text)}.ui-table-sort:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.ui-table-sort span{color:var(--accent);font-size:10px;letter-spacing:0}.ui-table th[aria-sort=none] .ui-table-sort span{color:var(--muted)}.ui-table tbody tr[data-clickable]{cursor:pointer}.ui-table-status{margin:0;padding:14px 0;color:var(--muted);font-size:14px}@media (max-width: 640px){.mobile-card-table,.mobile-card-table tbody{display:block;width:100%;min-width:0!important}.mobile-card-table thead{display:none}.mobile-card-table tr{display:grid;width:100%;padding:9px 8px;border-bottom:1px solid var(--border)}.mobile-card-table tbody tr:last-child{border-bottom:0}.mobile-card-table td,.mobile-card-table td:first-child,.mobile-card-table td:last-child{display:block;width:auto;min-width:0;height:auto;padding:5px 7px;border-bottom:0!important;text-align:left}.mobile-card-table.data-table:not(.pred-table) tbody>tr:not(.race-row):nth-child(2n),.mobile-card-table.ui-table tbody>tr:nth-child(2n){background:color-mix(in srgb,var(--panel-2) 34%,var(--panel))}.mobile-card-table.data-table tbody>tr:hover,.mobile-card-table.ui-table tbody>tr:hover{background:color-mix(in srgb,var(--accent-soft) 50%,var(--panel))}.mobile-card-table.data-table tbody>tr>td,.mobile-card-table.data-table tbody>tr:hover>td,.mobile-card-table.ui-table tbody>tr>td,.mobile-card-table.ui-table tbody>tr:hover>td{background:transparent!important}.ui-table [data-secondary]{display:none}.ui-table.mobile-card-table tr{grid-template-columns:minmax(0,1fr) auto;padding:10px 4px}.ui-table.mobile-card-table td:first-child{grid-column:1 / 3;text-align:left}.ui-table.mobile-card-table td:empty{display:none}.ui-table.mobile-card-table td:not(:first-child):before{display:block;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;content:attr(data-label)}.ui-table.mobile-card-table td[data-align=end]{text-align:left}}.app-sidebar,.admin-sidebar{flex:none;width:224px;display:flex;flex-direction:column;gap:0;padding:22px 14px 20px;background:var(--panel);border-right:1px solid var(--border);position:sticky;top:0;align-self:stretch;height:100vh;overflow-y:auto}.app-sidebar .brand,.admin-brand{display:flex;align-items:center;gap:9px;margin:0 0 26px;padding:0 2px;min-width:0}.app-sidebar-group-label,.admin-nav-heading{margin:0 0 6px;padding:0 10px;color:var(--muted);font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-nav-section+.admin-nav-section .admin-nav-heading{margin-top:18px}.app-sidebar-nav,.admin-nav,.admin-nav-section{display:flex;flex-direction:column;gap:2px}.admin-nav{gap:0}.app-sidebar-link,.admin-nav a{position:relative;display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 12px;border-radius:8px;border-left:3px solid transparent;color:var(--text);font-size:14px;font-weight:600;text-decoration:none;transition:background .15s ease,color .15s ease}.app-sidebar-link:hover,.admin-nav a:hover{background:var(--panel-2);text-decoration:none}.app-sidebar-link.active,.admin-nav a[aria-current=page]{background:var(--accent-soft);border-left-color:var(--accent);color:var(--accent)}.app-nav-icon,.admin-nav-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--muted)}.app-nav-icon svg,.admin-nav-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.app-sidebar-link.active .app-nav-icon,.admin-nav a[aria-current=page] .admin-nav-icon{color:inherit}@media (max-width: 900px){.app-sidebar,.admin-sidebar{display:none}}.nav-drawer .admin-nav-section,.nav-drawer .app-sidebar-nav{display:flex;flex-direction:column;gap:2px}.nav-drawer .admin-nav-heading,.nav-drawer .app-sidebar-group-label{margin:14px 0 4px;padding:0 12px}.nav-drawer .admin-nav-section:first-child .admin-nav-heading{margin-top:0}.tt-timing-stack{display:grid;gap:20px}.tt-timing-heading{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:14px}.tt-timing-heading h2{margin:0 0 5px}.tt-timing-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.tt-timing-controls>*{flex:1 1 220px;min-width:0;max-width:420px}.tt-timing-sticky{position:sticky;left:0;z-index:2;background:var(--panel)}.tt-timing-table{--tt-rider-width: 180px;--tt-clock-width: 150px;width:max(100%,calc(var(--tt-rider-width) + var(--tt-clock-width) * var(--tt-timing-columns)));table-layout:fixed;font-variant-numeric:tabular-nums}.tt-timing-table td{white-space:nowrap}.tt-timing-table th{white-space:normal;overflow-wrap:anywhere}.tt-timing-table .tt-timing-sticky{width:var(--tt-rider-width);min-width:0;max-width:none;white-space:normal;overflow-wrap:anywhere}.tt-timing-table small{display:block;color:var(--muted);font-size:12px;line-height:1.7}.tt-timing-table thead .tt-timing-sticky{z-index:3}.tt-timing-table.tt-timing-startorder-table{width:100%}.tt-timing-startorder-table .tt-timing-sticky{position:static;width:auto}.tt-timing-startorder-table th:last-child,.tt-timing-startorder-table td:last-child{width:132px;text-align:right}@media (max-width: 640px){.tt-timing-heading{gap:10px}.tt-timing-table{--tt-rider-width: 120px;--tt-clock-width: 126px}}.tt-timing-stack,.tt-timing-stack>.card,.tt-timing-stack .horizontal-scroll-affordance{min-width:0;max-width:100%}.tt-timing-times-scroll{width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}.tt-timing-table .ui-table-sort{width:100%;justify-content:space-between;text-align:inherit;white-space:normal}.tt-timing-table .ui-table-sort>span:first-child{color:inherit;font-size:inherit;letter-spacing:inherit}.analysis-page{display:grid;gap:24px;min-width:0;max-width:1600px;margin:0 auto;--comparison-soft: color-mix(in srgb, var(--panel-2) 55%, var(--panel))}.analysis-page .card{margin:0;border-radius:14px;box-shadow:0 2px 5px #00000003}.analysis-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:4px 0}.analysis-heading h1{font-size:clamp(27px,2.5vw,36px);letter-spacing:-.04em;margin:4px 0 6px;line-height:1.2}.analysis-heading p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.analysis-heading .analysis-kicker{font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:750;margin-bottom:8px}.analysis-page h2{margin:0;font-size:18px;color:var(--text);text-transform:none;letter-spacing:-.025em;line-height:1.35}.analysis-page button{font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:7px;padding:8px 12px;cursor:pointer;transition:background .15s,border-color .15s}.analysis-page button:hover{background:var(--panel-2);border-color:color-mix(in srgb,var(--muted) 40%,var(--border))}.analysis-page button:disabled{cursor:not-allowed;opacity:.5}.analysis-page :is(button,svg,summary):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.analysis-page i{display:inline-block;width:7px;height:7px;flex:0 0 7px;border-radius:50%}.comparison-unit-help{position:relative;flex:0 0 auto}.comparison-unit-help summary{display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer;color:var(--muted);border:1px solid var(--border);background:var(--panel);padding:9px 13px;border-radius:24px;font-size:12px;font-weight:650}.comparison-unit-help summary::-webkit-details-marker{display:none}.comparison-unit-help p{position:absolute;z-index:15;right:0;width:min(330px,75vw);padding:16px;margin-top:8px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 30px #0002;font-size:12px}.analysis-page .comparison-controls{padding:0}.comparison-picker{display:grid;grid-template-columns:1fr minmax(230px,340px);align-items:center;gap:12px;position:relative;padding:20px 24px 0}.comparison-picker>label{display:flex;gap:10px;align-items:center;font-weight:700;font-size:14px}.comparison-picker>label .muted{background:var(--panel-2);padding:3px 8px;border-radius:5px;font-size:11px;font-weight:550;font-variant-numeric:tabular-nums}.comparison-search-field{display:flex;align-items:center;position:relative}.comparison-search-field>span{font-size:0;position:absolute;left:14px;width:12px;height:12px;border:1.5px solid var(--muted);border-radius:50%;pointer-events:none}.comparison-search-field>span:after{content:"";width:5px;height:1.5px;background:var(--muted);transform:rotate(45deg);position:absolute;right:-4px;bottom:-2px}.comparison-controls input{width:100%;min-width:0}.comparison-controls input[type=search]{padding-left:38px}.comparison-picker>small{grid-column:1 / -1;color:var(--muted);font-size:11px}.comparison-suggestions{position:absolute;z-index:10;top:66px;right:24px;width:min(340px,calc(100% - 48px));border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 25px #0002;background:var(--panel);max-height:280px;overflow-y:auto}.comparison-suggestions button{display:flex;justify-content:space-between;gap:12px;width:100%;text-align:left;border:0;border-radius:0;padding:12px 14px;font-size:13px}.comparison-suggestions p{padding:14px;font-size:13px}.comparison-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;padding:18px 24px 22px}.comparison-chip{display:flex;align-items:center;gap:10px;min-width:0;position:relative;border:1px solid var(--border);border-top:2px solid var(--rider-color);border-radius:9px;padding:13px 9px 13px 12px;background:var(--comparison-soft)}.comparison-avatar{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;color:color-mix(in srgb,var(--rider-color) 70%,var(--text));background:color-mix(in srgb,var(--rider-color) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--rider-color) 20%,transparent);font-size:11px;font-weight:750}.comparison-rider-identity{min-width:0;flex:1;display:grid;gap:5px}.comparison-rider-identity strong{font-size:12px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comparison-rider-identity small{color:var(--muted);font-size:10px;display:flex;align-items:center;gap:5px;white-space:nowrap}.comparison-rider-identity i{background:var(--rider-color);width:5px;height:5px}.analysis-page .comparison-chip button{border:0;color:var(--muted);padding:4px;min-width:26px;height:28px;background:transparent;font-size:18px;line-height:1}.analysis-page .comparison-chip button:hover{background:var(--panel-2);color:var(--text)}.analysis-page .comparison-add-rider{display:flex;align-items:center;justify-content:center;gap:10px;min-height:64px;border-style:dashed;background:transparent;color:var(--muted);font-size:12px}.comparison-add-rider>span{font-size:20px;font-weight:400}.comparison-dates{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:16px 24px;border-top:1px solid var(--border);background:var(--comparison-soft);border-radius:0 0 14px 14px}.comparison-presets{display:grid;gap:8px}.comparison-presets>span{font-size:10px;font-weight:700;color:var(--muted);letter-spacing:.045em}.comparison-segmented{display:flex;flex-wrap:wrap;gap:2px;padding:3px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px}:is(.analysis-page,.rider-page,.rider-explorer) .comparison-segmented button{border:1px solid transparent;border-radius:7px;background:transparent;font-size:11px;font-weight:600;padding:7px 11px;color:var(--muted);white-space:nowrap}:is(.analysis-page,.rider-page,.rider-explorer) .comparison-segmented button[aria-pressed=true]{color:var(--text);border-color:var(--border);background:var(--panel);box-shadow:0 1px 3px #00000009}.comparison-date-fields{display:flex;align-items:end;gap:9px}.comparison-date-fields label{display:grid;gap:8px;font-size:10px;font-weight:650;color:var(--muted);min-width:0}.comparison-date-fields input{width:100%;min-width:0}:is(.analysis-page,.rider-page,.rider-explorer) .comparison-date-fields>button{height:36px;padding:0 14px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);color:var(--text);font:inherit;font-size:11px;font-weight:700;white-space:nowrap}.analysis-page .comparison-empty{text-align:center;padding:56px 24px;background:linear-gradient(180deg,var(--panel),var(--comparison-soft))}.comparison-empty-mark{display:grid;place-items:center;font-size:30px;width:64px;height:64px;margin:0 auto 22px;border:1px solid var(--border);border-radius:18px;color:var(--accent);background:var(--panel)}.comparison-empty p{max-width:390px;margin:10px auto 24px;font-size:13px;color:var(--muted);line-height:1.65}.analysis-page .comparison-primary{background:var(--text);color:var(--panel);border-color:var(--text);font-size:12px;font-weight:650;padding:11px 18px}.comparison-notice{padding:12px 16px;border-left:2px solid var(--accent);background:var(--accent-soft);color:var(--muted);font-size:12px;line-height:1.6;margin:0}.analysis-page .comparison-curve{padding:26px 26px 0;min-width:0}.comparison-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.comparison-section-heading p{font-size:12px;color:var(--muted);margin:7px 0 0;line-height:1.55}.comparison-data-badge{display:flex;align-items:center;gap:7px;padding:6px 9px;background:var(--comparison-soft);border:1px solid var(--border);border-radius:6px;font-size:10px;color:var(--muted);white-space:nowrap}.comparison-data-badge i{background:var(--muted);width:4px;height:4px}.comparison-legend{display:flex;flex-wrap:wrap;gap:10px 20px;margin:24px 0 16px;font-size:11px;font-weight:650}.comparison-legend span{display:flex;align-items:center;gap:7px}.comparison-legend i{width:15px;height:3px;border-radius:2px}.comparison-chart{width:100%;min-width:0}.comparison-chart svg{display:block;width:100%;touch-action:pan-y;overflow:visible;border-radius:8px}.comparison-grid line{stroke:var(--border);stroke-width:1}.comparison-grid.vertical line{stroke-dasharray:3 6;opacity:.4}.comparison-grid text,.comparison-axis-unit{fill:var(--muted);font-size:11px}.comparison-axis-unit{font-weight:650;font-size:10px}.comparison-note{color:var(--muted);font-size:11px;line-height:1.6;margin:8px 0 0}.comparison-source-panel{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.comparison-inspector-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.comparison-inspector-heading>div:first-child{display:flex;align-items:baseline;gap:12px}.comparison-inspector-heading span{color:var(--muted);font-size:11px}.comparison-inspector-heading h3{margin:0;font-size:18px;letter-spacing:-.02em}.comparison-duration-buttons{display:flex;flex-wrap:wrap;gap:5px}.analysis-page .comparison-duration-buttons button{font-size:10px;padding:6px 9px;border-color:transparent;background:var(--panel-2);color:var(--muted)}.analysis-page .comparison-duration-buttons button[aria-pressed=true]{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}.comparison-sources{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.comparison-sources article{display:grid;align-content:start;gap:6px;min-width:0;padding:14px;background:var(--comparison-soft);border-radius:8px;border:1px solid var(--border);font-size:11px}.comparison-sources article>strong{display:flex;gap:6px;align-items:center;font-size:11px;min-height:18px}.comparison-sources i{background:var(--rider-color)}.comparison-sources b{font-size:clamp(19px,1.65vw,25px);font-weight:700;letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin-bottom:4px}.comparison-sources a{color:var(--muted);line-height:1.5;text-decoration:none}.comparison-sources a:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.comparison-sources small{color:var(--muted);font-size:10px;line-height:1.5;overflow-wrap:anywhere}.comparison-data-help{margin-top:18px;padding:13px 0;border-top:1px solid var(--border);font-size:11px;color:var(--muted)}.comparison-data-help summary{cursor:pointer}.comparison-data-help p{line-height:1.6;margin:10px 0 0}.analysis-page .comparison-breakdown{padding:24px 0 0;min-width:0;overflow:hidden}.comparison-breakdown>.comparison-section-heading{padding:0 24px}.comparison-estimate-note{display:flex;gap:7px;align-items:baseline;padding:0 24px;margin:14px 0 10px;font-size:11px;color:var(--muted);line-height:1.6}.comparison-method{margin:0 24px 18px;font-size:11px;color:var(--muted)}.comparison-method summary{display:inline list-item;cursor:pointer;font-weight:600}.comparison-method p{margin:10px 0 0;max-width:950px;line-height:1.75}.comparison-table-frame{max-height:650px;overflow-y:auto;scrollbar-width:thin;border-top:1px solid var(--border)}.comparison-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.comparison-table :is(th,td){text-align:left;padding:13px 14px;border-bottom:1px solid var(--border);vertical-align:middle;overflow-wrap:anywhere}.comparison-table th{position:sticky;top:0;z-index:1;font-size:11px;font-weight:650;background:var(--panel-2);color:var(--text);text-transform:none;letter-spacing:0}.comparison-table th:first-child{width:90px}.comparison-table th:nth-child(2){width:145px}.comparison-table-rider{display:flex;align-items:center;gap:6px}.comparison-table th small{display:block;font-size:9px;color:var(--muted);font-weight:400;margin-top:5px;padding-left:13px}.comparison-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--panel-2) 30%,var(--panel))}.comparison-table .comparison-cell-power{font-size:13px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.comparison-table .comparison-leader-name{font-size:11px;font-weight:600;line-height:1.5;display:block}.comparison-table td small{display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.35;font-variant-numeric:tabular-nums}.comparison-table td small.comparison-best{display:inline-block;color:var(--good);background:color-mix(in srgb,var(--good) 9%,transparent);padding:3px 6px;border-radius:4px;font-size:9px;font-weight:650}.comparison-table td small.comparison-gap{color:var(--muted)}.analysis-page .comparison-table td button{padding:5px 0;border:0;background:transparent;font-weight:650;font-size:11px}.comparison-table tr.is-selected td{background:var(--accent-soft)}.comparison-table tr.is-selected td:first-child{box-shadow:inset 3px 0 var(--accent)}.comparison-mobile-unit{display:none}.comparison-unit{text-transform:none}@media (min-width: 1440px){.comparison-chips{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (max-width: 1100px){.comparison-dates{align-items:end}.comparison-date-fields,.comparison-date-fields label{flex:1}.comparison-table th:nth-child(2){width:110px}.comparison-table :is(th,td){padding:12px 9px}}@media (max-width: 760px){.analysis-page{gap:18px}.analysis-heading{align-items:flex-start;gap:12px}.analysis-heading h1{font-size:26px}.analysis-heading p{font-size:12px}.comparison-unit-help summary{font-size:10px;padding:7px 9px}.comparison-picker{padding:16px 16px 0;grid-template-columns:1fr}.comparison-picker>label{justify-content:space-between}.comparison-suggestions{top:100%;left:16px;right:16px;width:auto}.comparison-chips{padding:14px 16px 16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.comparison-chip{padding:11px 7px;gap:7px}.comparison-avatar{display:none}.comparison-rider-identity strong{font-size:11px}.comparison-rider-identity small{font-size:9px}.comparison-dates{padding:14px 16px;gap:14px}.comparison-presets,.comparison-date-fields{width:100%}.comparison-presets .comparison-segmented>button{flex:1}.comparison-date-fields{flex-wrap:wrap}.comparison-date-fields label{flex:1;min-width:110px}.comparison-date-fields>button{width:100%}.analysis-page .comparison-curve{padding:18px 16px 0}.comparison-data-badge{font-size:9px;padding:5px 7px}.comparison-section-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.comparison-section-heading h2{font-size:16px}.comparison-legend{margin:18px 0 12px;gap:9px 14px;font-size:10px}.comparison-inspector-heading{align-items:start;flex-direction:column;gap:12px}.comparison-duration-buttons{width:100%}.comparison-duration-buttons button{flex:1}.comparison-sources{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.comparison-sources article{padding:11px}.comparison-sources b{font-size:19px}.comparison-sources article>strong{align-items:baseline}.comparison-sources a{font-size:10px}.comparison-breakdown>.comparison-section-heading{padding:0 16px}.comparison-breakdown .comparison-segmented{width:100%}.comparison-breakdown .comparison-segmented button{flex:1}.comparison-estimate-note{padding:0 16px}.comparison-method{margin-left:16px;margin-right:16px}.comparison-table-frame{max-height:none;overflow:visible;padding:0 12px 12px;border-top:0}.comparison-table,.comparison-table tbody,.comparison-table tr,.comparison-table td{display:block;width:100%}.comparison-table thead{display:none}.comparison-table tr{border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:12px}.comparison-table td{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,1fr);gap:3px 14px;padding:11px 12px}.comparison-table td:before{content:attr(data-label);grid-row:1 / span 2;color:var(--muted);font-size:11px;line-height:1.45;font-weight:500}.comparison-table td>small{margin:0;grid-column:2;justify-self:start}.comparison-table td>button{justify-self:start}.comparison-table td:first-child{background:var(--panel-2)}.comparison-table td:first-child>button{font-size:14px}.comparison-table td:last-child{border-bottom:0}.comparison-table tr.is-selected td{background:transparent}.comparison-table tr.is-selected td:first-child{background:var(--accent-soft)}.comparison-mobile-unit{display:inline;color:var(--muted);font-size:9px;font-weight:400}}@media (prefers-reduced-motion: reduce){.analysis-page button{transition:none}}.endurance-analysis>.app-tabs{margin-top:-4px}.analysis-page .endurance-card{padding:24px;overflow:hidden}.endurance-card>.comparison-section-heading{align-items:flex-start;flex-wrap:wrap}.endurance-card>.comparison-section-heading>div:first-child{flex:1 1 340px;min-width:0}.endurance-card>.comparison-section-heading p{max-width:76ch}.endurance-card .app-tabs{flex:0 0 auto;max-width:100%}.endurance-analysis .comparison-chips{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}.endurance-analysis .comparison-rider-identity strong{white-space:normal;overflow-wrap:anywhere;font-size:13px}.endurance-analysis .comparison-chip button{flex:0 0 36px;min-height:44px}.endurance-analysis .comparison-legend{font-size:12px}.endurance-chart-wrap{width:100%;overflow:hidden;margin-top:8px}.endurance-chart{display:block;width:100%;min-width:0;height:auto;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.endurance-chart text{fill:currentColor}.analysis-page .endurance-chart:focus-visible{outline-offset:-2px}.endurance-grid{stroke:var(--border);stroke-width:1}.endurance-inspector{display:flex;flex-wrap:wrap;gap:10px 20px;padding:12px 0;border-top:1px solid var(--border);font-size:13px}.endurance-inspector>strong{flex-basis:100%}.endurance-inspector>span{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;max-width:100%}.endurance-inspector>span>span{overflow-wrap:anywhere}.endurance-inspector b{white-space:nowrap}.endurance-inspector i{width:8px;height:8px;border-radius:50%}.endurance-grid-vertical{stroke-dasharray:3 6}.endurance-axis-label{margin:0 0 12px;color:var(--muted);text-align:center;font-size:12px;line-height:1.5;font-weight:600}.endurance-empty-chart{display:grid;place-items:center;min-height:260px;margin:12px 0 0;border:1px dashed var(--border);border-radius:10px;color:var(--muted);font-size:13px}.repeatability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px;margin-top:22px}.repeatability-grid article{display:grid;grid-template-rows:auto auto 1fr auto;gap:8px;min-width:0;padding:18px;border:1px solid var(--border);border-top:3px solid var(--rider-color);border-radius:10px;background:var(--comparison-soft)}.endurance-card-label,.endurance-table td .endurance-rider{display:flex;align-items:center;gap:8px;min-width:0;line-height:1.5;font-size:14px;font-weight:650}.endurance-card-label{min-height:3em;align-items:flex-start}.endurance-card-label i{margin-top:.5em}.endurance-card-label i,.endurance-rider i{background:var(--rider-color)}.repeatability-grid article>strong{margin-top:3px;font-size:clamp(26px,3vw,36px);letter-spacing:-.04em;font-variant-numeric:tabular-nums}.repeatability-grid article>small{min-height:32px;color:var(--muted);font-size:12px;line-height:1.45}.repeatability-grid dl{display:grid;gap:9px;margin:8px 0 0;padding-top:12px;border-top:1px solid var(--border)}.repeatability-grid dl div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.repeatability-grid dt{color:var(--muted);font-size:12px;line-height:1.5}.repeatability-grid dd{margin:0;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.analysis-page .endurance-breakdown{padding:24px 0 0}.endurance-breakdown>.comparison-section-heading{padding:0 24px 18px}.endurance-table th:first-child{width:23%}.endurance-table th:nth-child(2){width:145px}.endurance-table :is(th,td){overflow-wrap:normal;font-size:13px}.endurance-table th,.endurance-table td:first-child{overflow-wrap:anywhere}.endurance-table td strong{display:block;font-variant-numeric:tabular-nums}.endurance-table td:not(:first-child) strong{white-space:nowrap}.endurance-table td small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.analysis-page .endurance-method{padding:0}.endurance-method summary{cursor:pointer;padding:16px 20px;font-size:14px;font-weight:700}.endurance-method p{margin:0;padding:0 20px 18px;max-width:105ch;color:var(--muted);font-size:12px;line-height:1.65}@media (max-width: 760px){.analysis-page .endurance-card{padding:18px 16px}.endurance-card .app-tabs{width:100%}.endurance-inspector>span{width:100%}.analysis-page .endurance-breakdown{padding:18px 0 0}.endurance-breakdown>.comparison-section-heading{padding:0 16px 16px}.endurance-table td:first-child{background:var(--panel-2);grid-template-columns:minmax(0,1fr)}.endurance-table td:first-child:before{content:none}.endurance-table td:before{font-size:12px}.endurance-table td small{margin-top:0}}.analytics-workspace,.rider-directory-page{display:grid;gap:24px;width:100%;min-width:0;max-width:1600px;margin:0 auto}.analytics-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.analytics-header h1{margin:0;font-size:clamp(27px,2.5vw,36px);letter-spacing:-.04em;line-height:1.2}.analytics-header p{color:var(--muted);font-size:14px;margin:8px 0 0;line-height:1.5}.analytics-header .analytics-kicker{margin:0 0 8px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:750}.analytics-browse-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex-shrink:0;border:1px solid var(--border);border-radius:8px;padding:9px 13px;background:var(--panel);color:var(--text);font-size:13px;font-weight:600;text-decoration:none}.analytics-workspace a:focus-visible,.rider-directory-page a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.analytics-workspace>.analysis-page{width:100%}.rider-explorer .explorer-description{margin:0;font-size:13px;line-height:1.6;max-width:100ch}.rider-explorer{display:grid;gap:14px;min-width:0}.rider-explorer>.card{margin:0}.rider-explorer .riders-filter-panel{margin-bottom:0;padding:18px;border:1px solid var(--border);background:var(--panel);border-radius:12px}.rider-explorer .riders-filter-panel .form-controls:last-child{margin-bottom:0!important}@media (max-width: 640px){.analytics-workspace,.rider-directory-page{gap:18px}.analytics-header{align-items:flex-start;flex-wrap:wrap;gap:14px}.analytics-browse-link{font-size:12px}.rider-explorer .riders-filter-panel{padding:12px}.rider-explorer .rider-analytics-table.mobile-card-table.traits-table td:nth-child(2n+3){grid-column:2}.rider-explorer .rider-analytics-table.mobile-card-table.traits-table td:nth-child(2n+4){grid-column:3}.rider-explorer .cperf-table.mobile-card-table tr{grid-template-columns:42px repeat(3,minmax(0,1fr))}.rider-explorer .cperf-table.mobile-card-table td:nth-child(2){grid-column:2 / 5}.rider-explorer .cperf-table.mobile-card-table td:nth-child(3){grid-column:1 / 5;grid-row:2}.rider-explorer .cperf-table.mobile-card-table td:nth-child(5){grid-column:1;grid-row:3}.rider-explorer .cperf-table.mobile-card-table td:nth-child(6){grid-column:2;grid-row:3}.rider-explorer .cperf-table.mobile-card-table td:nth-child(7){grid-column:3;grid-row:3}.rider-explorer .cperf-table.mobile-card-table td:nth-child(8){grid-column:4;grid-row:3}.rider-explorer .mobile-card-table{font-size:12px}.rider-explorer .mobile-card-table td:nth-child(n+3):before{font-size:8.5px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.top-10{top:2.5rem}.top-8{top:2rem}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.border{border-width:1px}.uppercase{text-transform:uppercase}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.line-through{text-decoration-line:line-through}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.etalon-unit{text-transform:none}.road-stage-effort-card{position:relative;padding:clamp(14px,1.6vw,20px);overflow:hidden;background:linear-gradient(135deg,rgba(212,161,58,.055),transparent 28%),var(--panel)}.road-stage-effort-card:before{position:absolute;top:0;right:0;left:0;height:3px;background:linear-gradient(90deg,var(--brand-gold),rgba(212,161,58,.08) 58%,transparent);content:""}.road-effort-header,.road-power-profile-heading,.road-effort-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.road-effort-header p{max-width:720px;margin:0;color:var(--muted);font-size:12px}.road-effort-provenance{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;color:var(--muted);font-size:10px;font-weight:700}.road-effort-provenance>span{padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2)}.road-effort-source.meter{border-color:#16803c47;color:var(--good);background:#16803c14}.road-effort-source.inferred{border-color:#d4a13a59;color:#a06f10;background:var(--accent-soft)}.road-effort-overview{display:grid;grid-template-columns:minmax(145px,.55fr) minmax(0,3.45fr);gap:8px;margin-top:12px}.road-difficulty-card{display:flex;min-height:84px;flex-direction:column;justify-content:center;padding:8px 12px;border:1px solid rgba(212,161,58,.35);border-radius:12px;background:linear-gradient(145deg,var(--accent-soft),rgba(255,255,255,.02) 72%);box-shadow:inset 0 1px #ffffff59}.road-difficulty-card>span,.road-effort-metric>span,.road-power-profile-heading>div>span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.road-difficulty-card>span,.road-effort-metric>span{font-size:8px}.road-difficulty-card strong{margin:1px 0;color:var(--text);font-size:30px;line-height:1;letter-spacing:-.055em}.road-difficulty-card strong small{margin-left:3px;color:var(--muted);font-size:11px;letter-spacing:0}.road-difficulty-card b{font-size:10px}.road-difficulty-card p{margin:3px 0 0;color:var(--muted);font-size:8.5px}.road-effort-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--panel-2) 78%,var(--panel))}.road-effort-metric{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:9px 12px;border-left:1px solid var(--border);transition:background .14s ease}.road-effort-metric:hover{background:#d4a13a0b}.road-effort-metric:first-child{border-left:0}.road-effort-metric strong{margin:2px 0 1px;overflow:hidden;color:var(--text);font-size:clamp(18px,1.45vw,21px);line-height:1.1;letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap}.road-effort-metric.primary strong{color:var(--accent)}.road-effort-metric small{color:var(--muted);font-size:8.5px;line-height:1.35}.road-power-profile-panel{margin-top:10px;padding:12px 12px 9px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--panel-2) 76%,var(--panel))}.road-power-profile-heading{align-items:flex-end;padding:0 2px 8px}.road-power-profile-heading h3,.road-effort-detail-heading h3{margin:2px 0 0;font-size:14px}.road-power-profile-heading p{max-width:680px;margin:3px 0 0;color:var(--muted);font-size:10px}.road-power-profile-readout{display:flex;min-width:210px;min-height:50px;flex-direction:column;align-items:flex-end;justify-content:flex-end;color:var(--muted);font-size:10px;text-align:right}.road-power-profile-readout strong{color:var(--text);font-size:20px;line-height:1.05}.road-power-profile-readout small{margin-top:2px;color:var(--accent);font-size:9px;font-weight:800;text-transform:uppercase}.road-power-profile-scroll{overflow:hidden;border:1px solid var(--border);border-radius:12px;background:linear-gradient(180deg,rgba(212,161,58,.025),transparent 58%),var(--panel)}.road-power-profile{display:block;width:100%;min-width:720px;height:auto;touch-action:pan-y}.road-power-profile:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.road-power-profile-grid line{stroke:var(--border);stroke-dasharray:3 5;stroke-width:1}.road-power-profile-grid text,.road-power-profile-distance text{fill:var(--muted);font-size:10px}.road-power-profile-grid text{text-anchor:end}.road-power-profile-distance line{stroke:var(--border)}.road-power-profile-distance text{text-anchor:middle}.road-power-profile-area{fill:url(#road-effort-area)}.road-power-profile-base{fill:none;stroke:color-mix(in srgb,var(--border) 82%,var(--text));stroke-linecap:round;stroke-linejoin:round;stroke-width:8}.road-power-profile-sector{cursor:pointer;outline:none}.road-power-profile-sector-line,.road-power-profile-hit{fill:none;stroke-linecap:round;stroke-linejoin:round}.road-power-profile-hit{stroke:transparent;stroke-width:22}.road-power-profile-sector-line{opacity:.9;stroke-width:5;transition:opacity .12s ease,stroke-width .12s ease}.road-power-profile-sector:hover .road-power-profile-sector-line,.road-power-profile-sector:focus .road-power-profile-sector-line,.road-power-profile-sector.active .road-power-profile-sector-line{opacity:1;stroke-width:10}.road-power-profile-active line{stroke:var(--text);stroke-dasharray:3 4;stroke-width:1}.road-power-profile-active circle{fill:var(--panel);stroke:var(--text);stroke-width:3}.road-power-profile-end{fill:var(--text);font-size:11px;font-weight:800;paint-order:stroke;stroke:var(--panel);stroke-width:4px;text-anchor:start}.road-power-profile-end.finish{fill:var(--accent);text-anchor:end}.road-power-profile-end.start{text-anchor:middle}.road-power-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;padding-top:7px;color:var(--muted);font-size:9px}.road-power-legend span,.road-zone-list span{display:inline-flex;align-items:center;gap:5px}.road-power-legend i,.road-zone-list i{width:8px;height:8px;flex:none;border-radius:50%}.road-power-legend b{color:var(--text)}.road-effort-details{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.75fr);gap:10px;margin-top:10px}.road-power-zones,.road-power-curve{padding:12px;border:1px solid var(--border);border-radius:14px}.road-effort-detail-heading{align-items:baseline}.road-effort-detail-heading>span{color:var(--muted);font-size:9px}.road-zone-bar{display:flex;height:9px;margin:10px 0 8px;overflow:hidden;border-radius:999px;background:var(--panel-2)}.road-zone-bar i{min-width:1px}.road-zone-list{display:flex;flex-wrap:wrap;gap:6px 14px}.road-zone-list span{font-size:9px}.road-zone-list small{margin-left:2px;color:color-mix(in srgb,var(--text) 72%,var(--muted));font-size:11px;font-variant-numeric:tabular-nums;font-weight:700}.road-power-curve>div:last-child{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}.road-power-curve>div:last-child>span{display:flex;flex-direction:column;padding:8px;border-radius:9px;background:var(--panel-2)}.road-power-curve small{color:var(--muted);font-size:9px}.road-power-curve strong{font-size:15px}.road-effort-method-note{margin:9px 2px 0;color:var(--muted);font-size:9.5px;line-height:1.5}.road-effort-method-note a{font-weight:750}.card.rider-power-card{position:relative;padding:0;overflow:hidden;border-radius:14px;box-shadow:0 12px 34px #0f172a0d}.rider-power-card:before{position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--accent),#a03a84 55%,transparent 92%);content:""}.rider-power-card-head{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:clamp(18px,2vw,26px);border-bottom:1px solid var(--border);background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--accent) 10%,transparent),transparent 38%),var(--panel)}.rider-power-title-group{min-width:0;display:flex;align-items:center;gap:14px}.rider-power-title-icon{width:44px;height:44px;flex:none;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-radius:12px;background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 1px #ffffff4d}.rider-power-title-icon svg,.power-curve-open svg,.rider-power-modal-kicker svg{stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.rider-power-card-head h2{margin:2px 0 0;font-size:22px;font-weight:780;letter-spacing:-.025em;line-height:1.1;text-transform:none}.rider-power-card-head p{max-width:650px;margin:6px 0 0;color:var(--muted);font-size:11.5px;line-height:1.45}.rider-power-source-summary{flex:none;display:flex;align-items:flex-end;flex-direction:column;gap:7px}.rider-power-source-summary>strong{color:var(--text);font-size:11px}.rider-power-source-summary>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px}.rider-power-error-open{width:calc(100% - (2*clamp(18px,2vw,26px)));display:flex;align-items:center;gap:11px;min-height:53px;margin:13px clamp(18px,2vw,26px);padding:7px 12px;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border));border-radius:10px;background:linear-gradient(90deg,var(--accent-soft),var(--panel));color:var(--text);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.rider-power-error-open:hover,.rider-power-error-open:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--panel))}.rider-power-error-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rider-power-error-open-icon{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:8px;background:var(--panel);color:var(--accent);font-size:23px}.rider-power-error-open-copy{display:grid;gap:2px}.rider-power-error-open-copy>span,.rider-power-error-kicker{color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.rider-power-error-open-copy strong{font-size:12px;font-variant-numeric:tabular-nums}.rider-power-error-open-copy small{color:var(--muted);font-size:10px}.rider-power-error-open-arrow{margin-left:auto;color:var(--muted);font-size:24px}.rider-power-table-shell{margin:0;overflow-x:auto;border-width:0 0 1px;border-radius:0}.rider-power-table{min-width:925px;table-layout:fixed}.rider-power-table th:first-child{width:44px}.rider-power-table thead th{height:42px;padding-top:8px;padding-bottom:8px;background:color-mix(in srgb,var(--panel-2) 74%,var(--panel))}.rider-power-table tbody tr{transition:background .12s ease,box-shadow .12s ease}.rider-power-table tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--panel));box-shadow:inset 3px 0 var(--accent)}.rider-power-table th:nth-child(2){width:240px}.rider-power-table th:nth-child(3){width:170px}.rider-power-table td:nth-child(3) .power-source-tag{max-width:100%;box-sizing:border-box;line-height:1.15;text-align:center;white-space:normal}.rider-power-table th:nth-child(n+4):nth-child(-n+8){width:72px}.rider-power-table th:last-child{width:105px}.rider-power-table th:nth-child(n+4):nth-child(-n+8),.rider-power-table td:nth-child(n+4):nth-child(-n+8){text-align:center}.rider-power-table td{height:60px;vertical-align:middle}.rider-power-rank{width:25px;height:25px;display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--panel-2);color:var(--muted);font-size:10px;font-weight:750;font-variant-numeric:tabular-nums}.rider-power-duration-head{--duration-color: var(--muted);display:inline-flex;align-items:center;gap:5px;color:var(--text)}.rider-power-duration-head:before{width:6px;height:6px;border-radius:50%;background:var(--duration-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--duration-color) 12%,transparent);content:""}.rider-power-duration-head.three,.rider-power-benchmark.three{--duration-color: #8b5cf6}.rider-power-duration-head.five,.rider-power-benchmark.five{--duration-color: #db2777}.rider-power-duration-head.ten,.rider-power-benchmark.ten{--duration-color: #2563eb}.rider-power-duration-head.twenty,.rider-power-benchmark.twenty{--duration-color: #16a34a}.rider-power-duration-head.sixty,.rider-power-benchmark.sixty{--duration-color: #c58b19}.power-duration-tag,.power-source-tag{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;font-variant-numeric:tabular-nums;font-weight:750;white-space:nowrap}.power-duration-tag{min-width:60px;padding:5px 8px;border-color:transparent!important;border-radius:7px;font-size:10.5px}.power-duration-tag.three{border-color:#9333ea38;color:#7e22ce;background:#9333ea17}.power-duration-tag.five{border-color:#db277738;color:#be185d;background:#db277717}.power-duration-tag.ten{border-color:#2563eb3b;color:#1d4ed8;background:#2563eb17}.power-duration-tag.twenty{border-color:#16a34a3b;color:#15803d;background:#16a34a17}.power-duration-tag.sixty{border-color:#d4a13a59;color:#9a6808;background:var(--accent-soft)}.power-duration-tag.missing{color:color-mix(in srgb,var(--muted) 60%,transparent);background:transparent}.power-source-tag{gap:5px;padding:4px 8px;font-size:9px}.power-source-tag:before{width:5px;height:5px;flex:none;border-radius:50%;background:currentColor;content:""}.power-source-tag.power-meter{border-color:#16803c47;color:var(--good);background:#16803c14}.power-source-tag.power-meter-stream{border-color:#0d94884d;color:#0f766e;background:#0d948814}.power-source-tag.strava-stream{border-color:#ea580c40;color:#c2410c;background:#ea580c14}.power-source-tag.live-coverage{border-color:#2563eb40;color:#2563eb;background:#2563eb14}.power-curve-open{min-height:31px;padding:5px 7px 5px 9px;display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:8px;color:var(--text);background:color-mix(in srgb,var(--accent-soft) 48%,var(--panel));cursor:pointer;font-size:9.5px;font-weight:750;white-space:nowrap;transition:border-color .12s ease,color .12s ease,transform .12s ease}.power-curve-open>span{color:var(--muted);font-size:15px;line-height:.8}.power-curve-open:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.rider-power-note{margin:10px clamp(16px,2vw,26px) 16px;color:var(--muted);font-size:9.5px;line-height:1.5}.rider-power-modal-backdrop{background:#080c14ad;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-card.rider-power-modal{width:min(980px,95vw);max-width:980px;max-height:92vh;padding:0;overflow:auto;border-radius:18px;box-shadow:0 28px 90px #00000059}.modal-card.rider-power-error-modal{width:min(1120px,96vw);max-width:1120px;max-height:92vh;padding:0;border-radius:16px;overflow:auto;box-shadow:0 28px 90px #00000059}.rider-power-error-head{margin:0;padding:20px 24px;background:var(--accent-soft)}.rider-power-error-head h3{margin-top:4px;font-size:21px}.rider-power-error-lead{display:grid;gap:3px;padding:20px 24px 0}.rider-power-error-lead strong{font-size:32px;line-height:1.1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.rider-power-error-lead small{color:var(--muted);font-size:14px;letter-spacing:0}.rider-power-error-lead>span,.rider-power-error-intro,.rider-power-error-section>p,.rider-power-error-note{color:var(--muted);font-size:12px;line-height:1.5}.rider-power-error-intro{margin:0;padding:16px 24px 8px}.rider-power-error-section{padding:14px 24px 0}.rider-power-error-section h4{margin:0;font-size:15px}.rider-power-error-section>p{margin:4px 0 10px}.rider-power-error-table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:9px}.rider-power-error-table{width:100%;min-width:960px;border-collapse:collapse;font-size:10.5px;font-variant-numeric:tabular-nums}.rider-power-error-table th,.rider-power-error-table td{padding:9px 8px;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}.rider-power-error-table tr:last-child th,.rider-power-error-table tr:last-child td{border-bottom:0}.rider-power-error-table thead th{background:var(--panel-2);color:var(--muted);font-size:9.5px;font-weight:750}.rider-power-error-table th:first-child{text-align:left}.rider-power-error-table tbody th{font-weight:600}.rider-power-error-table tbody th strong{display:inline-block;min-width:29px;margin-right:5px}.rider-power-error-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--panel-2) 44%,var(--panel))}.rider-power-error-table tbody tr.no-data{color:var(--muted)}.rider-power-error-table .key-metric{color:var(--text);font-weight:800}.rider-power-error-note{margin:20px 0 0;padding:15px 24px 20px;border-top:1px solid var(--border);background:var(--panel-2)}@media (max-width: 700px){.rider-power-error-head,.rider-power-error-intro,.rider-power-error-section,.rider-power-error-note,.rider-power-error-lead{padding-left:16px;padding-right:16px}}.rider-power-modal-head{align-items:center;margin:0;padding:20px 22px 18px;background:radial-gradient(circle at 0 0,color-mix(in srgb,#a03a84 10%,transparent),transparent 42%),var(--panel)}.rider-power-modal-head h3{margin-top:3px;font-size:20px;font-weight:780;letter-spacing:-.025em}.rider-power-modal-rider{min-width:0;display:flex;align-items:center;gap:13px}.rider-power-modal-rider>img,.rider-power-modal-avatar-placeholder{width:50px;height:50px;flex:none;border:2px solid var(--panel);border-radius:50%;background:var(--panel-2);box-shadow:0 0 0 1px var(--border),0 6px 16px #0f172a1f;-o-object-fit:cover;object-fit:cover}.rider-power-modal-rider>img{display:block;-o-object-position:center top;object-position:center top}.rider-power-modal-avatar-placeholder{display:grid;place-items:center;color:var(--muted);font-size:18px;font-weight:750}.rider-power-modal-kicker{display:flex;align-items:center;gap:5px;color:#a03a84;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.rider-power-modal-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;margin-top:6px;color:var(--muted);font-size:9.5px}.rider-power-modal-reference{flex-basis:100%;color:var(--muted)}.rider-power-modal-team{color:var(--text);font-weight:650}.rider-power-modal-team:after{margin-left:8px;color:var(--border);content:"•"}.rider-power-modal-head .close{width:32px;height:32px;padding:0;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--panel-2);font-size:20px}.rider-power-unit-toolbar{padding:10px 22px 0;display:flex;align-items:center;justify-content:flex-end;gap:10px;background:color-mix(in srgb,var(--panel-2) 40%,var(--panel));color:var(--muted);font-size:9.5px}.rider-power-unit-toolbar>div{padding:2px;display:inline-flex;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.rider-power-unit-toolbar button{min-width:54px;padding:5px 9px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-weight:750}.rider-power-unit-toolbar button:hover{color:var(--text)}.rider-power-unit-toolbar button.active{color:var(--text);background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 28%,var(--border))}.rider-power-modal-benchmarks{padding:12px 22px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--panel-2) 40%,var(--panel))}.rider-power-benchmark{--duration-color: var(--accent);position:relative;min-width:0;padding:8px 11px 9px;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--panel)}.rider-power-benchmark:before{position:absolute;inset:0 auto 0 0;width:3px;background:var(--duration-color);content:""}.rider-power-benchmark span,.rider-power-benchmark strong{display:block}.rider-power-benchmark span{color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase}.rider-power-benchmark strong{margin-top:2px;font-size:16px;font-variant-numeric:tabular-nums}.rider-power-chart-wrap{position:relative;padding:18px 22px 22px}.rider-power-chart-heading{margin-bottom:12px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.rider-power-chart-heading h4{margin:0;font-size:14px}.rider-power-chart-heading p{max-width:620px;margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.45}.rider-power-chart-readout{min-width:150px;display:grid;grid-template-columns:auto auto;align-items:baseline;justify-content:end;gap:0 8px;color:var(--muted);font-size:10px;text-align:right}.rider-power-chart-readout strong{color:var(--text);font-size:21px;font-variant-numeric:tabular-nums}.rider-power-chart-readout>span{padding:3px 7px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--text);font-size:12px;font-weight:750;line-height:1.2;white-space:nowrap}.rider-power-chart-readout small{grid-column:1 / -1;color:var(--muted);font-size:8.5px}.rider-power-chart-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--panel-2) 28%,var(--panel));box-shadow:inset 0 1px #ffffff40}.rider-power-chart{display:block;width:100%;min-width:700px;height:auto;touch-action:pan-y}.rider-power-chart:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.rider-power-chart-grid line{stroke:var(--border);stroke-width:1;stroke-dasharray:2 5}.rider-power-chart-grid text,.rider-power-chart-duration text{fill:var(--muted);font-size:10px}.rider-power-chart-grid text{text-anchor:end}.rider-power-chart-duration line{stroke:var(--border)}.rider-power-chart-duration text{text-anchor:middle}.rider-power-chart-duration.finish text{text-anchor:end}.rider-power-chart-line{fill:none;stroke:#a03a84;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.5}.rider-power-chart-area{fill:url(#rider-power-area)}.rider-power-chart-vertical{stroke:color-mix(in srgb,var(--border) 60%,transparent);stroke-width:1}.rider-power-chart-checkpoint{fill:var(--panel);stroke:#a03a84;stroke-width:2}.rider-power-chart-active line{stroke:var(--muted);stroke-dasharray:3 4}.rider-power-chart-active circle{fill:var(--panel);stroke:#a03a84;stroke-width:3}@media (max-width: 900px){.road-effort-overview{grid-template-columns:1fr}.road-difficulty-card{min-height:0}.road-effort-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.road-effort-metric:nth-child(3){border-left:0;border-top:1px solid var(--border)}.road-effort-metric:nth-child(4){border-top:1px solid var(--border)}}@media (max-width: 640px){.road-stage-effort-card{padding:12px}.road-effort-header,.road-power-profile-heading,.road-effort-detail-heading{flex-direction:column;gap:8px}.road-power-profile-heading{width:100%;align-items:stretch}.road-effort-provenance{justify-content:flex-start}.road-effort-metric{padding:11px}.road-effort-metric strong{font-size:20px}.road-power-profile-readout{min-width:0;align-items:flex-start;text-align:left}.road-power-profile-scroll{overflow:hidden}.road-power-profile{width:100%;min-width:0;max-width:none}.road-power-legend{justify-content:flex-start}.road-effort-details{grid-template-columns:1fr}.road-zone-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.card.rider-power-card{padding:0}.rider-power-card-head{align-items:stretch;flex-direction:column;gap:14px;padding:18px 14px}.rider-power-title-group,.rider-power-source-summary{align-items:flex-start}.rider-power-source-summary>div{justify-content:flex-start}.modal-card.rider-power-modal{width:100%;padding:0;border-radius:14px}.rider-power-modal-head{padding:15px}.rider-power-modal-rider>img,.rider-power-modal-avatar-placeholder{width:42px;height:42px}.rider-power-modal-head h3{font-size:16px}.rider-power-modal-meta{gap:4px 6px}.rider-power-modal-benchmarks{padding:10px 15px;display:flex;overflow-x:auto}.rider-power-benchmark{min-width:105px}.rider-power-unit-toolbar{padding:9px 15px 0;justify-content:space-between}.rider-power-chart-wrap{padding:15px}.rider-power-chart-heading{align-items:flex-start;flex-direction:column;gap:8px}.rider-power-chart-readout{min-width:0;justify-content:start;text-align:left}.rider-power-chart{min-width:640px}.mobile-card-table.tt-segment-effort-table tr{grid-template-columns:34px minmax(0,1fr) auto}.mobile-card-table.tt-segment-effort-table td:first-child{grid-column:1;grid-row:1}.mobile-card-table.tt-segment-effort-table td:nth-child(2){grid-column:2;grid-row:1}.mobile-card-table.tt-segment-effort-table td:nth-child(3){grid-column:3;grid-row:1;text-align:right}.mobile-card-table.tt-segment-effort-table td:nth-child(4){grid-column:2;grid-row:2;text-align:left}.mobile-card-table.tt-segment-effort-table td:nth-child(5){grid-column:3;grid-row:2;text-align:right}}[data-theme=dark] .power-duration-tag.three{color:#c084fc}[data-theme=dark] .power-duration-tag.five{color:#f472b6}[data-theme=dark] .power-duration-tag.ten,[data-theme=dark] .power-source-tag.live-coverage{color:#60a5fa}[data-theme=dark] .power-source-tag.power-meter-stream{color:#2dd4bf}[data-theme=dark] .power-duration-tag.twenty{color:#4ade80}[data-theme=dark] .power-duration-tag.sixty{color:#e0b262}[data-theme=dark] .power-source-tag.strava-stream{color:#fb923c}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}html,body{overflow-x:clip}img{max-width:100%}body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,system-ui,sans-serif;font-size:14px;line-height:1.5}a{color:var(--text);text-decoration:none}a:hover{color:var(--accent);text-decoration:underline}.app-shell{display:flex;align-items:stretch;min-height:100vh}.brand{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-size:17px;font-weight:800;letter-spacing:.01em;padding:0 8px}.brand:hover{text-decoration:none}.brand-logo{display:block;width:26px;height:26px;border-radius:6px;flex:none}.brand-name{color:var(--text)}.app-main{flex:1;min-width:0;display:flex;flex-direction:column}.app-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:12px;min-height:70px;padding:0 28px;background:color-mix(in srgb,var(--panel) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}@media (max-width: 640px){.app-topbar{padding:10px 14px;gap:10px}}@media (max-width: 1120px){.app-topbar{gap:12px;padding-inline:20px}}.theme-toggle{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:5px 10px;font:inherit;cursor:pointer}.theme-toggle:hover{border-color:var(--accent)}.header-language-controls{display:flex;flex:none;gap:8px}.header-lang-select{min-height:38px}.theme-select{min-width:116px;min-height:38px}.theme-select-mobile,.header-lang-select-mobile{display:none}@media (max-width: 640px){.theme-select-desktop{display:none}.theme-select-mobile{display:block;width:44px;min-width:44px;min-height:44px;padding:5px 20px 5px 8px;background-position:right 6px center}.header-lang-select-desktop{display:none}.header-lang-select-mobile{display:block;width:72px;min-height:44px;padding:5px 25px 5px 8px;background-position:right 8px center}}main{max-width:1320px;width:100%;margin:0 auto;padding:28px 32px 48px}@media (max-width: 640px){main{padding:14px}}.page-stack{width:100%}.page-header{margin-bottom:24px}.page-header h1{margin-bottom:0}.page-hero{position:relative;padding:20px 22px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:6px;background:var(--panel);box-shadow:0 1px 2px #0f172a06}.page-hero-compact{padding-block:18px}.page-kicker{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.page-meta{display:flex;align-items:center;gap:7px 12px;flex-wrap:wrap;margin:8px 0 0;color:var(--muted);font-size:12px}.data-panel{border-radius:6px;box-shadow:0 1px 2px #0f172a06}@media (max-width: 640px){.page-header{margin-bottom:18px}.page-hero{padding:16px}}h1{font-size:26px;margin:0 0 16px;color:var(--text);font-weight:700;letter-spacing:-.01em}h2{font-size:12px;margin:24px 0 12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600}h3{font-size:14px;margin:16px 0 8px}.card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:12px}.itt-model-card{display:grid;gap:24px;padding:20px;overflow:hidden}.itt-model-heading{display:flex;justify-content:space-between;gap:24px;align-items:start}.itt-model-heading h2{margin:3px 0 5px;color:var(--text);font-size:21px;text-transform:none;letter-spacing:-.015em}.itt-model-heading p,.itt-section-heading p{margin:0;color:var(--muted);line-height:1.5}.itt-weather-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.itt-weather-summary span{display:grid;gap:1px;min-width:76px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg);white-space:nowrap}.itt-weather-summary small{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.itt-weather-summary strong{font-size:13px}.itt-scenario-section,.itt-pacing-section{display:grid;gap:14px;padding-top:21px;border-top:1px solid var(--border)}.itt-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.itt-section-heading h3,.itt-blocks-heading h3{margin:3px 0 4px;font-size:16px;letter-spacing:-.01em}.itt-section-heading .itt-reference-mass-note{margin-top:4px;color:var(--text);font-size:10px;font-weight:650}.itt-custom-scenario{display:grid;grid-template-columns:104px 104px auto;gap:7px;align-items:end;min-width:350px}.itt-custom-scenario label{display:grid;gap:4px}.itt-custom-scenario label span{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.itt-custom-scenario input{width:100%;min-width:0;font-variant-numeric:tabular-nums}.itt-custom-scenario button{height:36px;padding:0 13px;border:1px solid #d99b26;border-radius:7px;background:var(--itt-accent-surface);color:var(--itt-accent-text);cursor:pointer;font:inherit;font-size:11px;font-weight:700}.itt-custom-scenario small{grid-column:1 / -1;color:var(--muted);font-size:9px;line-height:1.35}.itt-custom-scenario small.error{color:#c2413b}.itt-scenario-layout{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:12px;align-items:stretch}.itt-matrix-shell{border:1px solid var(--border);border-radius:9px;background:var(--panel)}.itt-matrix-table{width:100%;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums}.itt-matrix-table th,.itt-matrix-table td{min-width:91px;padding:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center;white-space:nowrap}.itt-matrix-table tr:last-child>*{border-bottom:0}.itt-matrix-table tr>*:last-child{border-right:0}.itt-matrix-table th{height:38px;padding:0 10px;background:var(--bg);color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.itt-matrix-table tbody th{position:sticky;left:0;z-index:2;min-width:58px}.itt-matrix-table th.selected-axis{color:var(--itt-accent-text);background:var(--itt-accent-surface)}.itt-matrix-table button{width:100%;min-height:45px;border:0;border-radius:0;background:var(--matrix-color, rgba(217, 149, 24, .06));color:var(--text);cursor:pointer;font:inherit;font-size:12px;font-weight:600;transition:background .15s ease,box-shadow .15s ease,color .15s ease}.itt-matrix-table button:hover{background:color-mix(in srgb,#d79518 17%,transparent)}.itt-matrix-table td.selected button{position:relative;z-index:1;background:var(--itt-selected-surface);color:var(--itt-selected-text);box-shadow:inset 0 0 0 2px #d99b26}.itt-matrix-table button:focus-visible{outline:2px solid #d99b26;outline-offset:-3px}.itt-selected-scenario{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:16px;border-radius:9px;background:var(--itt-selected-surface);color:var(--itt-selected-text)}.itt-selected-scenario>span{color:var(--itt-selected-muted);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.itt-selected-scenario>strong{font-size:28px;line-height:1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.itt-selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:3px}.itt-selected-grid div{display:grid;gap:1px;padding-top:7px;border-top:1px solid rgba(255,255,255,.13)}.itt-selected-grid small{color:var(--itt-selected-muted);font-size:9px;text-transform:uppercase}.itt-selected-grid b{font-size:12px}.itt-power-map-wrap{display:grid;gap:12px}.itt-map-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px 12px;color:var(--muted);font-size:10px}.itt-map-controls{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.itt-download-menu{position:relative}.itt-download-menu summary{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #d99b26;border-radius:7px;background:var(--itt-accent-surface);color:var(--itt-accent-text);cursor:pointer;font-size:11px;font-weight:700;list-style:none;white-space:nowrap}.itt-download-menu summary::-webkit-details-marker{display:none}.itt-download-menu summary:before{content:"↓";font-size:14px;line-height:1}.itt-download-menu[open] summary{background:var(--itt-accent-surface-hover)}.itt-download-menu>div{position:absolute;z-index:10;top:calc(100% + 6px);right:0;width:278px;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--panel);box-shadow:0 16px 34px #0f172a29}.itt-download-menu a{display:grid;gap:2px;padding:11px 12px;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none}.itt-download-menu a:hover{background:var(--bg)}.itt-download-menu a strong{font-size:12px}.itt-download-menu a span,.itt-download-menu>div>small{color:var(--muted);font-size:10px;line-height:1.35}.itt-download-menu>div>small{display:block;padding:9px 12px}.itt-map-legend span{display:inline-flex;align-items:center;gap:5px}.itt-map-legend i,.itt-power-dot{display:inline-block;width:8px;height:8px;border-radius:999px;flex:none}.itt-power-map{position:relative;min-height:260px;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:linear-gradient(180deg,var(--itt-map-bg-top),var(--itt-map-bg-bottom))}.itt-power-map svg{position:relative;display:block;width:100%;height:280px}.itt-elevation-grid line{stroke:#64748b29;stroke-width:1}.itt-elevation-grid text{fill:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.itt-elevation-area{fill:#d99b2614;stroke:none}.itt-map-route-base{fill:none;stroke:var(--itt-map-route-base);stroke-width:10;stroke-linecap:round;stroke-linejoin:round}.itt-map-sector{cursor:crosshair;outline:none}.itt-map-sector-hit,.itt-map-sector-line{fill:none;stroke-linecap:round}.itt-map-sector-hit{stroke:transparent;stroke-width:28;pointer-events:stroke}.itt-map-sector-line{stroke-width:5;pointer-events:none;transition:stroke-width .12s ease,opacity .12s ease}.itt-map-sector:hover .itt-map-sector-line,.itt-map-sector.active .itt-map-sector-line,.itt-map-sector:focus .itt-map-sector-line{stroke-width:9;opacity:1}.itt-map-marker circle{fill:var(--panel);stroke:var(--itt-map-marker);stroke-width:4}.itt-map-marker text{fill:var(--itt-map-marker);font-size:14px;font-weight:750;paint-order:stroke;stroke:var(--itt-map-marker-halo);stroke-width:4px;stroke-linejoin:round}.itt-map-marker.finish-marker circle{stroke:#d99b26}.itt-map-tooltip{position:absolute;right:12px;bottom:12px;display:grid;min-width:170px;gap:2px;padding:10px 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#172033f0;color:#fff;box-shadow:0 10px 30px #0f172a2e;pointer-events:none}.itt-map-tooltip span{color:#bac5d6;font-size:10px;text-transform:uppercase}.itt-map-tooltip strong{font-size:18px}.itt-map-tooltip small{color:#d5dbe5}.itt-map-empty{padding:32px;border:1px dashed var(--border);border-radius:9px;color:var(--muted);text-align:center}.itt-pacing-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.itt-pacing-summary>div{display:grid;gap:3px;padding:12px 13px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.itt-pacing-summary small{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.itt-pacing-summary strong{font-size:19px;font-variant-numeric:tabular-nums}.itt-pacing-summary span{color:var(--muted);font-size:10px}.itt-blocks-panel{display:grid;gap:10px}.itt-blocks-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.itt-blocks-heading h3{margin-bottom:0}.itt-blocks-heading span{color:var(--muted);font-size:11px}.itt-pacing-table td:first-child{white-space:nowrap}.itt-power-dot{margin-right:7px}.itt-show-blocks{justify-self:center;padding:7px 13px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--text);cursor:pointer;font:inherit;font-size:11px;font-weight:650}.itt-show-blocks:hover{border-color:#d99b26}@media (max-width: 900px){.itt-scenario-layout{grid-template-columns:1fr}.itt-selected-scenario{min-height:112px}.itt-selected-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.itt-pacing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.itt-section-heading{align-items:start;flex-direction:column}.itt-custom-scenario{width:100%}.itt-map-controls{width:100%;align-items:flex-start}.itt-map-legend{justify-content:flex-start}}@media (max-width: 700px){.itt-model-card{gap:18px;padding:14px}.itt-model-heading{display:grid;gap:12px}.itt-weather-summary{justify-content:flex-start}.itt-weather-summary span{min-width:68px;flex:1}.itt-scenario-section,.itt-pacing-section{padding-top:16px}.itt-matrix-table th,.itt-matrix-table td{min-width:82px}.itt-matrix-table tbody th{min-width:54px}.itt-custom-scenario{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.itt-custom-scenario button{grid-column:1 / -1}.itt-selected-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.itt-power-map{min-height:220px}.itt-power-map svg{height:230px}.itt-map-marker text{font-size:18px}.itt-map-tooltip{left:9px;right:9px;bottom:9px;min-width:0}.itt-download-menu,.itt-download-menu summary{width:100%}.itt-download-menu summary{justify-content:center;box-sizing:border-box}.itt-download-menu>div{left:0;right:auto;width:min(100%,310px)}.itt-blocks-heading{display:grid}}.tt-segments-stack{display:grid;gap:12px}.tt-segments-intro{margin:0 0 2px;color:var(--muted);font-size:12px;line-height:1.5}.tt-segment-card{padding:0;overflow:hidden}.tt-segment-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--panel) 88%,var(--bg))}.tt-segment-title{min-width:0;display:flex;align-items:center;gap:11px}.tt-segment-title h3{margin:0 0 2px;font-size:14px}.tt-segment-title h3 a{color:var(--text);text-decoration:none}.tt-segment-title h3 a:hover{color:var(--accent)}.tt-segment-title>div>span{color:var(--muted);font-size:10px}.tt-terrain-badge{min-width:74px;padding:6px 9px;border-radius:7px;color:#fff;font-size:10px;font-weight:750;letter-spacing:.045em;text-align:center;text-transform:uppercase}.tt-terrain-badge.terrain-flat{background:#27845b}.tt-terrain-badge.terrain-climb{background:#d65a31}.tt-terrain-badge.terrain-rolling{background:#c98b18}.tt-terrain-badge.terrain-descent{background:#287bbd}.tt-terrain-badge.terrain-full-course{background:#172033}.tt-terrain-badge:not(.terrain-flat):not(.terrain-climb):not(.terrain-rolling):not(.terrain-descent):not(.terrain-full-course){background:#64748b}.tt-segment-metrics{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.tt-segment-metrics span{padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--muted);font-size:10px;white-space:nowrap}.tt-segment-metrics strong{color:var(--text);font-variant-numeric:tabular-nums}.tt-segment-table-shell{border:0;border-radius:0}.tt-segment-effort-table th:first-child,.tt-segment-effort-table td:first-child{width:48px}.tt-segment-effort-table th:nth-child(n+3),.tt-segment-effort-table td:nth-child(n+3){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tt-segment-empty{margin:0;padding:16px}@media (max-width: 700px){.tt-segment-header{align-items:stretch;flex-direction:column;padding:12px}.tt-segment-title{align-items:flex-start}.tt-terrain-badge{min-width:66px}.tt-segment-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tt-segment-metrics span{text-align:center}.tt-segment-effort-table td:nth-child(n+3){text-align:right}}.page-stack .card{box-shadow:0 1px 2px #0f172a06}.home-page .card{position:relative;border-radius:6px;border-left:3px solid var(--accent);box-shadow:0 1px 2px #0f172a06}.home-page .card.home-rest-day-card{border-left-color:var(--muted);background:linear-gradient(135deg,color-mix(in srgb,var(--muted) 6%,transparent),transparent 42%),var(--panel)}.home-rest-day-pill{border:1px solid var(--border);background:var(--panel-2);color:var(--text);font-weight:700}.home-active-card-header{flex:0 0 100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px 16px}.home-active-card-header.is-clickable{cursor:pointer;transition:background .15s ease,box-shadow .15s ease}@media (hover: hover){.home-active-card-header.is-clickable:hover{background:color-mix(in srgb,var(--accent) 5%,transparent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 5%,transparent)}}.home-heading{display:flex;align-items:baseline;gap:18px;margin-bottom:24px}.home-heading h1{margin:0}.home-heading span{color:var(--muted);font-size:13px}.home-dashboard-grid{display:grid;grid-template-columns:minmax(320px,.96fr) minmax(380px,1.04fr);gap:30px;align-items:start}.home-dashboard-column{min-width:0}.home-dashboard-column>h2:first-child{margin-top:0}.home-section{margin-top:28px}@media (max-width: 1080px){.home-dashboard-grid{grid-template-columns:1fr;gap:4px}}@media (max-width: 640px){.home-heading{display:block;margin-bottom:20px}.home-heading span{display:block;margin-top:4px}.home-active-card-header{align-items:flex-start;flex-direction:column;gap:6px}}.card-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 16px}.home-mini-profile{position:relative;flex:0 0 100%;height:38px;margin:1px 0 -5px;color:var(--accent);overflow:visible}.home-mini-profile svg{display:block;width:100%;height:100%;overflow:visible}.home-mini-profile-line{fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.home-mini-profile.is-live .home-mini-profile-line{opacity:.58}.home-mini-profile-completed-line{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.home-mini-profile-marker-stem{position:absolute;bottom:0;width:1px;transform:translate(-50%);border-left:1px dashed currentColor;opacity:.42;pointer-events:none}.home-mini-profile-marker{position:absolute;width:12px;height:12px;transform:translate(-50%,-50%);border:1px solid var(--panel);border-radius:50%;background:currentColor;box-shadow:0 0 0 2px color-mix(in srgb,currentColor 52%,transparent),0 2px 5px #0f172a3d;pointer-events:none}@media (prefers-reduced-motion: no-preference){.home-mini-profile-marker{animation:home-mini-profile-pulse 2.2s ease-out infinite}}@keyframes home-mini-profile-pulse{0%,65%{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 52%,transparent),0 2px 5px #0f172a3d}to{box-shadow:0 0 0 7px color-mix(in srgb,currentColor 0%,transparent),0 2px 5px #0f172a2e}}@media (max-width: 640px){.home-mini-profile{height:34px}}.home-live-situation-shell{flex:0 0 100%;min-width:0}.home-live-situation{display:flex;align-items:center;gap:7px 10px;margin-top:-5px;padding-top:7px;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);color:var(--muted);font-size:10.5px}.home-live-distance{flex:none;color:var(--text);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.home-live-groups{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:5px;padding-bottom:1px;overflow-x:auto;scrollbar-width:none}.home-live-groups::-webkit-scrollbar{display:none}.home-live-group{flex:none;display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:999px;background:color-mix(in srgb,var(--panel) 80%,var(--bg));line-height:1.25;white-space:nowrap}.home-live-group:before{width:6px;height:6px;flex:none;border-radius:50%;background:var(--live-group-color, #94a3b8);content:""}.home-live-group-leader{--live-group-color: #10b981}.home-live-group-chase{--live-group-color: #f59e0b}.home-live-group-peloton{--live-group-color: #6366f1}.home-live-group-dropped{--live-group-color: #94a3b8}.home-live-group-name{max-width:105px;overflow:hidden;color:var(--text);font-weight:600;text-overflow:ellipsis}.home-live-gap,.home-live-riders{font-variant-numeric:tabular-nums}.home-live-gap{color:var(--text);font-weight:600}.home-live-riders:before{margin-right:4px;color:var(--border);content:"·"}.home-live-more{flex:none;font-weight:600}.home-live-toggle{width:34px;min-height:26px;flex:none;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:6px;background:color-mix(in srgb,var(--accent) 7%,var(--panel));color:var(--text);cursor:pointer;font:inherit;font-size:18px;font-weight:650;line-height:1;margin-left:auto;white-space:nowrap}.home-live-toggle:hover{border-color:color-mix(in srgb,var(--accent) 58%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--panel))}.home-live-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:2px}.home-live-detail{margin-top:9px;padding:11px 12px 12px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:7px;background:color-mix(in srgb,var(--bg) 58%,var(--panel));cursor:pointer}.home-live-detail-chart{display:flex;flex-direction:column;gap:7px}.home-live-detail-row{--home-live-detail-color: #94a3b8;display:grid;grid-template-columns:minmax(115px,.9fr) minmax(90px,1.35fr) minmax(76px,auto);align-items:center;gap:10px;min-width:0;padding:6px 8px;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:6px;background:color-mix(in srgb,var(--panel) 90%,var(--bg))}.home-live-detail-row-leader{--home-live-detail-color: #10b981}.home-live-detail-row-chase{--home-live-detail-color: #f59e0b}.home-live-detail-row-peloton{--home-live-detail-color: #6366f1}.home-live-detail-row-dropped{--home-live-detail-color: #94a3b8}.home-live-detail-group{min-width:0;display:flex;align-items:center;gap:7px}.home-live-detail-group>span:last-child{min-width:0}.home-live-detail-group strong,.home-live-detail-group small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-live-detail-group strong{color:var(--text);font-size:11px}.home-live-detail-group small{margin-top:1px;color:var(--muted);font-size:9.5px}.home-live-detail-dot{width:9px;height:9px;flex:none;border:2px solid color-mix(in srgb,var(--home-live-detail-color) 24%,var(--panel));border-radius:50%;background:var(--home-live-detail-color);box-shadow:0 0 0 1px color-mix(in srgb,var(--home-live-detail-color) 48%,transparent)}.home-live-detail-track{position:relative;height:12px}.home-live-detail-track:before,.home-live-detail-track-progress{position:absolute;top:50%;left:0;height:2px;border-radius:999px;transform:translateY(-50%);content:""}.home-live-detail-track:before{width:100%;background:color-mix(in srgb,var(--border) 62%,transparent)}.home-live-detail-track-progress{width:var(--home-live-gap-position);background:color-mix(in srgb,var(--home-live-detail-color) 58%,var(--border))}.home-live-detail-track-marker{position:absolute;top:50%;left:var(--home-live-gap-position);width:8px;height:8px;border:2px solid var(--panel);border-radius:50%;background:var(--home-live-detail-color);box-shadow:0 0 0 1px color-mix(in srgb,var(--home-live-detail-color) 60%,transparent);transform:translate(-50%,-50%)}.home-live-detail-metrics{display:flex;align-items:baseline;justify-content:flex-end;gap:6px;white-space:nowrap}.home-live-detail-metrics strong{color:var(--text);font-size:11px;font-variant-numeric:tabular-nums}.home-live-detail-metrics span{color:var(--muted);font-size:9.5px}.home-live-detail-riders{grid-column:1 / -1;display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;padding:1px 0 0 16px}.home-live-detail-riders a{display:inline-flex;align-items:center;gap:4px;max-width:155px;padding:2px 6px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:999px;background:color-mix(in srgb,var(--panel) 84%,var(--bg));color:var(--text);font-size:9.5px;text-decoration:none}.home-live-detail-riders a:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));color:var(--accent)}.home-live-detail-riders a>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-live-detail-riders .flag{flex:none}.home-live-detail-more-riders{color:var(--muted);font-size:9.5px;font-weight:650;white-space:nowrap}@media (max-width: 640px){.home-live-situation{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px}.home-live-distance{grid-column:1}.home-live-groups{grid-column:1 / -1;grid-row:2;width:100%}.home-live-toggle{grid-column:2;grid-row:1}.home-live-detail{padding:10px}.home-live-detail-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px}.home-live-detail-track{grid-column:1 / -1;grid-row:2;margin:0 4px}}.muted{color:var(--muted)}.home-podium{flex-basis:100%;list-style:none;margin:10px 0 0;padding:8px 0 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:2px}.home-podium-row{display:flex;align-items:center;gap:7px;font-size:12.5px;padding:2px 4px;border-radius:4px}.home-podium-row.pod-gold{background:#c98a1617}.home-podium-row.pod-silver{background:#8a8f9617}.home-podium-row.pod-bronze{background:#a26a3d17}.home-podium-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-podium-gap{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.race-labels{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap;vertical-align:middle}.race-category-pill{font-size:11px}.pill{display:inline-block;padding:2px 8px;border-radius:4px;background:var(--panel-2);font-size:12px;color:var(--text);border:1px solid var(--border)}.pill.accent{background:var(--accent-soft);color:var(--indigo);border-color:transparent}.pill.warn{background:#f4d35e33;color:#8a6b00;border-color:transparent}.pill.soda{background:var(--accent-soft);color:var(--orange-soda);border-color:transparent}[data-theme=dark] .pill.warn{color:var(--yellow)}.slq-inline{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:4px;background:var(--panel-2);border:1px solid var(--border);font-size:12px;line-height:1.4;vertical-align:middle}.slq-label{color:var(--muted)}.slq-label strong{color:var(--text);margin-left:2px}.slq-bar{display:inline-block;width:48px;height:4px;border-radius:2px;background:var(--border);overflow:hidden}.slq-fill{display:block;height:100%;border-radius:2px;transition:width .2s ease}.slq-low .slq-fill{background:#b0b6bf}.slq-modest .slq-fill{background:var(--yellow, #f4d35e)}.slq-good .slq-fill{background:#6fbf73}.slq-strong .slq-fill{background:#2f9e44}.slq-elite .slq-fill{background:var(--indigo, #121822)}.diff-inline{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:4px;background:var(--panel-2);border:1px solid var(--border);font-size:12px;line-height:1.4;vertical-align:middle}.diff-bar{display:inline-block;width:48px;height:4px;border-radius:2px;background:var(--border);overflow:hidden}.diff-fill{display:block;height:100%;border-radius:2px}.prediction-outlook-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:10px;margin-bottom:10px;scroll-margin-top:78px}.prediction-summary-card{min-width:0;margin:0;padding:16px 18px}.prediction-card-kicker{margin-bottom:8px;color:var(--muted);font-size:9.5px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.prediction-summary-card h2,.prediction-card-head h2{margin:0;color:var(--text);font-size:15px;font-weight:750;letter-spacing:-.01em;text-transform:none}.prediction-breakaway-card{border-top:3px solid var(--series-2, #65c22d)}.prediction-breakaway-content{display:flex;align-items:center;gap:18px}.prediction-breakaway-content p{margin:4px 0 0;color:var(--muted);font-size:11.5px}.prediction-finish-card{border-top:3px solid var(--accent)}.finish-probability-list{display:grid;gap:7px;margin-top:12px}.finish-probability-row{display:grid;grid-template-columns:104px minmax(80px,1fr) 38px;align-items:center;gap:9px}.finish-probability-label{display:flex;flex-direction:column;font-size:11px;line-height:1.2}.finish-probability-label small{margin-top:2px;color:var(--accent);font-size:8px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.finish-probability-track{height:7px;overflow:hidden;border-radius:5px;background:var(--panel-2)}.finish-probability-fill{display:block;height:100%;border-radius:inherit}.finish-probability-row strong{text-align:right;font-size:11.5px;font-variant-numeric:tabular-nums}.finish-probability-row:not(.is-leading){color:var(--muted)}.prediction-favourites-card{overflow:hidden;margin-bottom:10px;padding:0}.prediction-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px 12px;border-bottom:1px solid var(--border)}.prediction-card-head .prediction-card-kicker{margin-bottom:4px}.prediction-card-description{margin:4px 0 0;font-size:12px}.prediction-favourites-card>.data-table-shell{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.prediction-model-status{margin-left:5px;font-size:10px;font-weight:500}.prediction-view-more{flex:none;padding:6px 10px;border:1px solid var(--border);border-radius:5px;color:var(--text);background:var(--panel-2);font-size:10.5px;font-weight:650;cursor:pointer}.prediction-view-more:hover{border-color:var(--accent);color:var(--accent)}.pred-table td{vertical-align:middle}.pred-table tbody tr:hover{background:var(--panel-2)}.stage-predictions-table th:first-child,.stage-predictions-table td:first-child{width:54px;text-align:center}.stage-predictions-table th:nth-child(2){width:34%}.stage-predictions-table th:nth-child(3){width:27%}.gc-predictions-table th:first-child,.gc-predictions-table td:first-child{width:54px;text-align:center}.gc-predictions-table th:nth-child(2){width:43%}.gc-predictions-table th:nth-child(n+3){width:19%}.gc-predictions-table td,.stage-predictions-table td{padding-top:9px;padding-bottom:9px}.pred-rank{display:inline-block;min-width:22px;font-variant-numeric:tabular-nums;font-size:13px;color:var(--muted);text-align:right;padding-right:4px}.pred-rank-gold,.pred-rank-silver,.pred-rank-bronze{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;border-radius:6px;font-weight:700;text-align:center}.pred-rank-gold{background:#c98a162e;color:#c98a16}.pred-rank-silver{background:#8e949b2e;color:#8a8f96}.pred-rank-bronze{background:#a26a3d2e;color:#a26a3d}.home-podium-row .pred-rank-gold,.home-podium-row .pred-rank-silver,.home-podium-row .pred-rank-bronze{min-width:18px;height:18px;font-size:11.5px}.climb-flag{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:600;color:#b45309;background:#f59e0b24;border:1px solid rgba(245,158,11,.35);border-radius:4px;padding:0 5px;vertical-align:middle;cursor:help;white-space:nowrap}[data-theme=dark] .climb-flag{color:#fbbf24}.climb-strava-tag{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:600;color:#fff;background:#fc4c02;border:1px solid #fc4c02;border-radius:4px;padding:0 5px;vertical-align:middle;cursor:help;white-space:nowrap}.climb-strava-seg{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:600;color:#fc4c02;background:#fc4c021a;border:1px solid rgba(252,76,2,.4);border-radius:4px;padding:0 5px;vertical-align:middle;text-decoration:none;white-space:nowrap}.climb-strava-seg:hover{background:#fc4c0233}.climb-power-section{padding:0;margin-top:0;background:transparent}.climb-power-section>.incidents-head{margin-bottom:10px}.climb-power-section>.incidents-head .incidents-title{font-size:15px}.climb-power-card{margin-bottom:14px;scroll-margin-top:78px;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:0 1px 2px #0f172a06}.climb-power-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px 12px}.climb-power-heading{display:flex;align-items:center;gap:11px;min-width:0}.climb-category-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border-radius:7px;color:#fff;font-size:12px;font-weight:800;box-shadow:inset 0 0 0 1px #ffffff3d}.climb-power-heading h3{margin:0 0 5px;overflow:hidden;font-size:14px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.climb-power-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--muted);font-size:10.5px}.climb-power-meta span{padding:3px 7px;border:1px solid var(--border);border-radius:5px;background:var(--panel-2);white-space:nowrap}.climb-power-meta strong{color:var(--text);font-weight:700}.climb-power-badges{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px}.climb-error-tag{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:5px 9px;color:var(--text);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border));border-radius:8px;cursor:pointer;text-align:left;line-height:1.15;font-variant-numeric:tabular-nums;transition:border-color .15s,background .15s,transform .15s}.climb-error-tag:hover,.climb-error-tag:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--panel));transform:translateY(-1px)}.climb-error-tag:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.climb-error-tag-icon{display:grid;place-items:center;width:27px;height:27px;flex:none;border-radius:7px;background:var(--panel);color:var(--accent);font-size:20px}.climb-error-tag-copy{display:grid;gap:1px}.climb-error-tag-label{color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.065em;text-transform:uppercase}.climb-error-tag strong{font-size:11px;font-weight:750}.climb-error-tag small,.climb-error-tag-arrow{color:var(--muted);font-size:10px}.climb-error-tag-arrow{margin-left:2px;font-size:22px;line-height:1}.climb-error-tag-none{background:var(--panel-2);border-color:var(--border)}.climb-error-backdrop{background:#080c14a3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card.climb-error-modal{max-width:550px;padding:0;border-radius:14px;overflow:auto}.climb-error-modal-head{margin:0;padding:21px 24px 17px;background:var(--accent-soft)}.climb-error-modal-head h3{margin-top:4px;font-size:20px}.climb-error-modal-kicker{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.climb-error-lead{display:grid;gap:2px;padding:20px 24px 0}.climb-error-lead strong{font-size:36px;line-height:1.1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.climb-error-lead strong span{color:var(--muted);font-size:15px;letter-spacing:0}.climb-error-lead>span{color:var(--muted);font-size:12px}.climb-error-intro,.climb-error-note{margin:0;padding:17px 24px;color:var(--muted);font-size:13px;line-height:1.5}.climb-error-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0 24px 8px}.climb-error-metrics>div{padding:12px 13px;border:1px solid var(--border);border-radius:9px;background:var(--panel-2)}.climb-error-metrics dt{color:var(--muted);font-size:11px}.climb-error-metrics dd{margin:5px 0 0;font-size:20px;font-weight:750;font-variant-numeric:tabular-nums}.climb-error-metrics dd small{color:var(--muted);font-size:11px;font-weight:500}.climb-error-note{border-top:1px solid var(--border);margin-top:8px;font-size:11px}@media (max-width: 520px){.climb-error-metrics{grid-template-columns:1fr}.climb-error-modal-head,.climb-error-intro,.climb-error-note,.climb-error-lead,.climb-error-metrics{padding-left:18px;padding-right:18px}}.climb-power-badges .climb-flag,.climb-power-badges .climb-error-tag,.climb-power-badges .climb-strava-tag,.climb-power-badges .climb-strava-seg{margin-left:0}.climb-weather{display:flex;flex-wrap:wrap;gap:5px;padding:8px 16px;border-top:1px solid var(--border);color:var(--muted);background:color-mix(in srgb,var(--panel-2) 58%,var(--panel));font-size:10.5px}.climb-weather span{padding:2px 6px;border-radius:4px;background:var(--panel);white-space:nowrap}.climb-power-card>.table-scroll{border-top:1px solid var(--border)}.climb-power-table{table-layout:fixed}.climb-power-table th:first-child,.climb-power-table td:first-child{width:34%;text-align:left}.climb-power-table th:not(:first-child),.climb-power-table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.climb-power-table th,.climb-power-table td{padding:9px 12px}.climb-group-row{background:color-mix(in srgb,var(--accent-soft) 54%,var(--panel))}.climb-group-row.is-open td{background:color-mix(in srgb,var(--accent-soft) 76%,var(--panel))}.climb-toggle-all{display:inline-flex;align-items:center;gap:5px;margin-left:0;padding:3px 8px;border:1px solid var(--border);border-radius:4px;background:var(--panel-2);color:var(--text);font:inherit;font-size:10.5px;font-weight:600;cursor:pointer;white-space:nowrap}.climb-toggle-all:hover{background:color-mix(in srgb,var(--accent-soft) 40%,var(--panel-2))}.climb-group-row.is-low-confidence{opacity:.62}.climb-group-title{display:flex;align-items:baseline;gap:8px;min-width:0}.climb-group-title small{color:var(--muted);font-size:9.5px;white-space:nowrap}.climb-group-chevron{width:10px;color:var(--muted);font-size:10px}.climb-rider-row{background:var(--panel);font-size:11px}.climb-rider-row:hover td{background:var(--panel-2)}.climb-rider-row .climb-primary-cell{padding-left:28px}.climb-rider-identity{display:flex;align-items:center;gap:7px;min-width:0}.climb-rider-identity>div{min-width:0}.climb-rider-identity a{display:block;overflow:hidden;color:var(--text);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.climb-rider-identity small{display:block;overflow:hidden;margin-top:1px;color:var(--muted);font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.climb-wkg{color:var(--text);font-weight:750}@media (max-width: 700px){.climb-power-header{flex-direction:column;gap:10px;padding:12px}.climb-power-heading{align-items:flex-start;width:100%}.climb-category-badge{width:32px;height:32px}.climb-power-heading h3{font-size:13px;white-space:normal}.climb-power-badges{justify-content:flex-start}.climb-weather{padding:7px 12px}.climb-power-card>.table-scroll{overflow:visible}.climb-power-table,.climb-power-table tbody{display:block;width:100%}.climb-power-table thead{display:none}.climb-power-table tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;border-bottom:1px solid var(--border)}.climb-power-table tbody tr:last-child{border-bottom:0}.climb-power-table td,.climb-power-table td:first-child,.climb-power-table td:not(:first-child){display:block;width:auto;padding:7px 10px 9px;border-bottom:0;text-align:right}.climb-power-table .climb-primary-cell{grid-column:1 / -1;padding:9px 10px 7px;text-align:left}.climb-power-table td:not(.climb-primary-cell):before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:8px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.climb-power-table td.climb-metric-empty{display:none!important}.climb-group-row{grid-template-columns:1fr}.climb-group-row .climb-primary-cell{padding:10px}.climb-group-title{justify-content:space-between}.climb-rider-identity a{white-space:normal}}.pred-rider{display:flex;align-items:center;gap:9px;min-width:0}.pred-avatar,.pred-avatar-ph{width:36px;height:36px;flex:none;border-radius:50%;border:1px solid var(--border);background:var(--panel-2)}.pred-avatar{-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center}.pred-avatar-ph{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px;font-weight:600}.pred-rider-name{display:flex;flex-direction:column;line-height:1.2;min-width:0}.pred-rider-name>a:first-child{color:var(--text);font-weight:650}.pred-rider-team{display:block;overflow:hidden;margin-top:2px;color:var(--muted);font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.pred-rank-gc{display:inline-flex;align-self:flex-start;align-items:center;justify-content:center;margin-top:2px;padding:1px 5px;border-radius:5px;background:#2e7dd629;color:#2e7dd6;font-size:9.5px;font-weight:700;letter-spacing:.02em}.pred-rider-team a{color:inherit}.pred-rider-signals{display:flex;gap:4px;margin-top:2px}.pred-speciality-cell{white-space:nowrap;font-size:11px}.pred-table tr.pred-row-gold{background:#c98a1617}.pred-table tr.pred-row-silver{background:#8a8f9617}.pred-table tr.pred-row-bronze{background:#a26a3d17}.pred-table tr.pred-row-gold:hover td,.pred-table tr.pred-row-silver:hover td,.pred-table tr.pred-row-bronze:hover td{background:transparent}.stage-predictions-table tr.pred-row-gold td:first-child{border-left:3px solid var(--accent)}.flag{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",Twemoji Mozilla,sans-serif;font-style:normal;line-height:1}.pred-bar-cell{min-width:76px;padding:6px 10px}.pred-num{font-size:13px;line-height:1.2;font-variant-numeric:tabular-nums}.pred-num strong{color:var(--text)}.pred-bar{margin-top:4px;height:3px;border-radius:2px;background:var(--panel-2);overflow:hidden}.pred-fill{height:100%;border-radius:2px;transition:width .25s ease}.pred-bar-win .pred-fill{background:var(--orange-yellow)}.pred-bar-t10 .pred-fill{background:var(--indigo);opacity:.45}[data-theme=dark] .pred-bar-t10 .pred-fill{background:var(--indigo);opacity:.55}.diff-flat .diff-fill{background:#b0b6bf}.diff-easy .diff-fill{background:var(--yellow, #f4d35e)}.diff-moderate .diff-fill{background:#6fbf73}.diff-hard .diff-fill{background:#d9480f}.diff-brutal .diff-fill{background:#b02a1e}.diff-tier{font-size:11px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em}tr:hover td{background:var(--panel-2)}thead{background:color-mix(in srgb,var(--panel-2) 72%,var(--panel))}tbody tr:last-child td{border-bottom:0}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 640px){.pred-bar-cell{min-width:64px;padding:6px 8px}.pred-table th,.pred-table td{padding-left:8px;padding-right:8px}.pred-avatar,.pred-avatar-ph{width:30px;height:30px}.prediction-outlook-grid{grid-template-columns:1fr}.prediction-summary-card{padding:14px}.prediction-breakaway-content{gap:13px}.finish-probability-row{grid-template-columns:94px minmax(60px,1fr) 34px;gap:7px}.prediction-card-head{align-items:flex-start;padding:12px}.prediction-view-more{margin-top:1px}.stage-predictions-scroll{overflow:visible}.stage-predictions-table,.stage-predictions-table tbody{display:block;width:100%}.stage-predictions-table thead{display:none}.stage-predictions-table tr{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(0,1fr);width:100%;padding:10px 8px;border-bottom:1px solid var(--border)}.stage-predictions-table tbody tr:last-child{border-bottom:0}.stage-predictions-table td,.stage-predictions-table td:first-child{display:block;width:auto;padding:4px 7px;border-bottom:0}.stage-predictions-table .pred-rank-cell{grid-column:1;grid-row:1 / span 2;padding-top:9px;text-align:center}.stage-predictions-table .pred-rider-cell{grid-column:2 / 4;grid-row:1}.stage-predictions-table .pred-speciality-cell{grid-column:2 / 4;grid-row:2;padding-top:0;white-space:normal}.stage-predictions-table .pred-bar-cell{position:relative;min-width:0;margin-top:5px;padding-top:14px}.stage-predictions-table .pred-bar-cell:nth-child(4){grid-column:2}.stage-predictions-table .pred-bar-cell:nth-child(5){grid-column:3}.stage-predictions-table .pred-bar-cell:before{position:absolute;top:1px;left:7px;color:var(--muted);content:attr(data-label);font-size:7.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 700px){.grid-2{grid-template-columns:1fr}}.stage-top-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start;margin-top:8px}.stage-top-grid>.stage-top-col{display:flex;flex-direction:column;gap:8px;min-width:0}.stage-top-grid>.stage-top-col>h2:first-child{margin-top:0}@media (max-width: 900px){.stage-top-grid{grid-template-columns:1fr}}.stage-info-card{padding:12px 14px}.stage-info-title{font-weight:600;font-size:14px;margin-bottom:6px}.stage-info-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:12px}.stage-info-meta>*{display:inline-flex;align-items:center}.wx-card{padding:14px 16px}.wx-head{display:flex;align-items:flex-start;gap:13px}.wx-emoji{font-size:40px;line-height:1;filter:saturate(1.05);flex:none;margin-top:1px}.wx-headmain{flex:1;min-width:0}.wx-topline{display:flex;align-items:center;gap:8px}.wx-temp{font-size:30px;font-weight:800;letter-spacing:-.5px;line-height:1.05;display:inline-flex;align-items:center}.wx-cond{font-size:13px;font-weight:600;color:var(--text);margin-top:3px}.wx-when{font-size:11px;color:var(--muted);margin-top:3px;line-height:1.4}.wx-nowrap{white-space:nowrap}.wx-badge{margin-left:auto;flex:none;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:3px 9px;border-radius:6px;white-space:nowrap}.wx-badge.forecast{background:var(--accent-soft);color:var(--orange-soda)}.wx-badge.archive{background:var(--panel-2);color:var(--muted)}.wx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:8px;margin-top:14px}.wx-tile{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.wx-tile .top{display:flex;align-items:center;gap:5px;line-height:1}.wx-tile .ic{font-size:15px;flex:none}.wx-tile .val{font-size:15px;font-weight:700;color:var(--text);display:inline-flex;align-items:baseline;gap:2px;white-space:nowrap}.wx-tile .val .wx-unit{font-size:10px;font-weight:600;color:var(--muted)}.wx-tile .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);margin-top:5px}.wx-tile .sub{font-size:10px;color:var(--muted);margin-top:1px}.wx-windsub{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.wx-windsub .wx-compass{width:11px;height:11px}.wx-compass{color:var(--muted);transition:transform .4s ease;flex:none}.wx-wind{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:9px}.wx-row{display:flex;align-items:center;gap:10px;font-size:12px}.wx-row .nm{width:104px;flex:none;color:var(--muted);display:inline-flex;align-items:center;gap:5px}.wx-meter{flex:1;height:8px;border-radius:4px;background:var(--border);overflow:hidden}.wx-meter>div{height:100%;border-radius:4px;transition:width .5s ease}.wx-row .amt{font-weight:700;font-size:12px;text-align:right;white-space:nowrap;min-width:96px;flex:none}.bgap-card{padding:14px 16px;margin-bottom:12px}.bgap-head{display:flex;align-items:center;gap:10px}.bgap-title{font-weight:700;font-size:14px;color:var(--text)}.bgap-badge{margin-left:auto;flex:none;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:3px 9px;border-radius:6px;white-space:nowrap}.bgap-badge.won{background:#16a34a26;color:#16a34a}.bgap-badge.caught{background:var(--panel-2);color:var(--muted)}.bgap-sub{font-size:11px;margin-top:2px}.live-badge{display:inline-flex;align-items:center;gap:5px;flex:none;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:6px;background:#dc262624;color:#dc2626;white-space:nowrap}.live-dot{width:7px;height:7px;border-radius:50%;background:#dc2626;box-shadow:0 0 #dc262699;animation:live-pulse 1.4s ease-out infinite}@keyframes live-pulse{0%{box-shadow:0 0 #dc26268c}70%{box-shadow:0 0 0 6px #dc262600}to{box-shadow:0 0 #dc262600}}@media (prefers-reduced-motion: reduce){.live-dot{animation:none}}.bgap-svg{width:100%;height:clamp(200px,28vw,280px);margin-top:10px;display:block;overflow:visible}.elevation-profile-card{padding:18px 20px 14px;overflow:hidden}.elevation-profile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.elevation-profile-heading{min-width:180px}.elevation-profile-kicker,.elevation-profile-legend-label{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.elevation-profile-title{margin-top:3px;font-size:16px}.elevation-profile-stats{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.elevation-profile-stats>span{padding:5px 8px;border:1px solid var(--border);border-radius:5px;background:color-mix(in srgb,var(--panel-2) 65%,var(--panel));color:var(--muted);font-size:10px;white-space:nowrap}.elevation-profile-stats strong{color:var(--text);font-variant-numeric:tabular-nums}.elevation-profile-legend{display:flex;align-items:center;flex-wrap:wrap;gap:7px 12px;margin:13px 0 0;padding-top:10px;border-top:1px solid var(--border);font-size:9.5px}.elevation-profile-legend-label{margin-right:2px}.elevation-profile-legend-item{display:inline-flex;align-items:center;gap:4px}.elevation-profile-legend-swatch{display:inline-block;width:16px;height:3px;border-radius:999px}.elevation-profile-scroll{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--border) transparent;-webkit-overflow-scrolling:touch}.elevation-profile-svg{width:100%;height:auto;aspect-ratio:3.2 / 1;margin-top:4px;overflow:visible}.elevation-profile-mobile-hint{display:none}@media (max-width: 640px){.elevation-profile-card{padding:14px 12px 10px}.elevation-profile-header{display:block}.elevation-profile-title{font-size:15px}.elevation-profile-stats{justify-content:flex-start;gap:5px;margin-top:10px}.elevation-profile-stats>span{padding:4px 7px;font-size:9px}.elevation-profile-stats>span:last-child{display:none}.elevation-profile-legend{flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:2px}.elevation-profile-legend-label{display:none}.elevation-profile-legend-item{flex:none}.elevation-profile-svg{width:720px;max-width:none;height:225px}.elevation-profile-mobile-hint{display:block;margin-top:3px;color:var(--muted);font-size:9px;text-align:right}}.bgap-grid{stroke:var(--border);stroke-width:1}.bgap-ylabel{fill:var(--muted);font-size:10px;text-anchor:end}.bgap-xlabel{fill:var(--muted);font-size:10px;text-anchor:middle}.bgap-xfinish{fill:var(--accent-2);font-size:10px;font-weight:700;text-anchor:middle}.bgap-area{fill:var(--accent-2);opacity:.16}.bgap-line{fill:none;stroke:var(--accent-2);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.bgap-peak{fill:var(--accent-2);stroke:var(--panel);stroke-width:1.5}.bgap-dataend{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3;opacity:.7}.bgap-note{font-size:10px;margin-top:4px}.bgap-legend{margin-top:4px;display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;color:var(--muted);font-size:10.5px}.bgap-legend>span{display:inline-flex;align-items:center;gap:6px}.bgap-legend-line{display:inline-block;width:22px;height:0;border-top:2px solid var(--accent-2)}.bgap-legend-line.survival{border-top:2px dashed #2563eb}.bgap-legend-hint{margin-left:auto}.gcprog-card{padding:14px 16px;margin:12px 0}.gcprog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px 14px;flex-wrap:wrap}.gcprog-title{font-weight:700;font-size:14px;color:var(--text)}.gcprog-desc{font-size:11px;margin-top:2px}.gcprog-tabs{flex:none}.gcprog-svg{width:100%;height:auto;margin-top:10px;display:block;overflow:visible}.gcprog-grid{stroke:var(--border);stroke-width:1}.gcprog-ylabel{fill:var(--muted);font-size:10px;text-anchor:end}.gcprog-xlabel{fill:var(--muted);font-size:9px;text-anchor:middle}.gcprog-endlabel{font-size:10px;font-weight:700}.gcprog-legend{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px}.gcprog-legend-item{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid transparent;border-radius:999px;background:transparent;font-size:11px;font-family:inherit;color:var(--muted);cursor:pointer}.gcprog-legend-item:hover{color:var(--text);background:var(--panel-2)}.gcprog-legend-item.active{color:var(--text);border-color:var(--border);background:var(--panel-2)}.gcprog-legend-dot{width:8px;height:8px;border-radius:50%;flex:none}.mass-chart-overview{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;padding:2px 2px 14px;border-bottom:1px solid var(--border)}.mass-chart-overview-summary-only{padding-bottom:2px;border-bottom:0}.mass-chart-current-card{min-width:150px}.mass-chart-kicker{display:block;margin-bottom:3px;color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.075em;line-height:1.2;text-transform:uppercase}.mass-chart-current{display:flex;align-items:baseline;gap:8px}.mass-chart-current-value{font-size:28px;font-weight:780;letter-spacing:-.035em;line-height:1.05;color:var(--text);font-variant-numeric:tabular-nums}.mass-chart-current-value small{font-size:15px;font-weight:650;letter-spacing:0}.mass-chart-current-unc{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.mass-chart-asof{display:block;margin-top:4px;color:var(--muted);font-size:10px}.mass-chart-evidence{display:block;margin-top:4px;color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.mass-chart-context{display:flex;align-items:center;flex-wrap:wrap;gap:18px;min-width:0}.mass-chart-pcs-comparison{min-width:128px;padding-left:18px;border-left:1px solid var(--border)}.mass-chart-pcs-comparison strong{display:inline-block;margin-right:7px;color:var(--text);font-size:14px;font-variant-numeric:tabular-nums}.mass-chart-difference{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.mass-chart-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin-left:auto;color:var(--muted);font-size:10px}.mass-chart-legend span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.mass-chart-legend i{display:inline-block;width:18px;flex:none}.mass-legend-line{height:2px;border-radius:999px;background:var(--accent)}.mass-legend-band{height:8px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:2px;background:color-mix(in srgb,var(--accent) 12%,transparent)}.mass-legend-pcs{height:0;border-top:1px dashed var(--muted)}.mass-confidence-tag{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid transparent;border-radius:999px;font-size:10px;font-weight:750;white-space:nowrap;cursor:help}.mass-source-tag{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent);font-size:10px;font-weight:750;white-space:nowrap;cursor:help}.mass-source-tag:before{width:5px;height:5px;flex:none;border-radius:50%;background:currentColor;content:""}.mass-source-tag.mass-source-prior_only{border-color:color-mix(in srgb,var(--muted) 40%,transparent);color:var(--muted);background:color-mix(in srgb,var(--muted) 8%,transparent)}.mass-confidence-tag:before{width:5px;height:5px;flex:none;border-radius:50%;background:currentColor;content:""}.mass-confidence-tag.confidence-high{border-color:#16803c47;color:var(--good);background:#16803c14}.mass-confidence-tag.confidence-medium{border-color:#b4530947;color:#b45309;background:#b4530914}.mass-confidence-tag.confidence-low{border-color:#dc262640;color:var(--bad);background:#dc262614}.mass-chart-visual{max-width:1600px;margin:16px auto 0;padding:8px 10px 2px;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:9px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-2) 60%,transparent),transparent 42%)}.mass-chart-svg{width:100%;height:auto;display:block;overflow:visible}.mass-chart-plot-bg{fill:color-mix(in srgb,var(--panel-2) 45%,transparent);stroke:color-mix(in srgb,var(--border) 62%,transparent);stroke-width:.75}.mass-chart-grid{stroke:var(--border);stroke-width:.7;stroke-opacity:.7}.mass-chart-ylabel{fill:var(--muted);font-size:9.5px;font-variant-numeric:tabular-nums;text-anchor:end}.mass-chart-axis-tick{stroke:var(--muted);stroke-width:.75;stroke-opacity:.65}.mass-chart-xlabel{fill:var(--muted);font-size:9px;text-anchor:middle}.mass-chart-band{fill:url(#mass-confidence-gradient);stroke:none}.mass-chart-line{stroke:var(--accent);stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 1px 1px color-mix(in srgb,var(--accent) 22%,transparent))}.mass-chart-pcs-line{stroke:var(--muted);stroke-width:1.1;stroke-dasharray:6 5;stroke-opacity:.82}.mass-chart-pcs-label{fill:var(--muted);font-size:9px;font-weight:700;text-anchor:end;paint-order:stroke;stroke:var(--panel);stroke-width:4px;stroke-linejoin:round}.mass-chart-latest-dot{fill:var(--panel);stroke:var(--accent);stroke-width:2.5}.mass-chart-hover-line{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3;stroke-opacity:.75}.mass-chart-hover-dot{fill:var(--accent);stroke:var(--panel);stroke-width:2}.mass-chart-tip-box{fill:var(--panel);stroke:var(--border);filter:drop-shadow(0 3px 5px rgba(15,23,42,.14))}.mass-chart-tip-label{font-size:9.5px;font-weight:650;fill:var(--muted)}.mass-chart-tip-value{font-size:12px;font-weight:750;fill:var(--text)}.mass-chart-tip-unc{font-size:10px;font-weight:500;fill:var(--muted)}.mass-chart-tip-evidence{font-size:9.5px;font-weight:550;fill:var(--muted)}@media (max-width: 760px){.mass-chart-overview{display:grid;grid-template-columns:minmax(0,1fr);align-items:flex-start;gap:12px}.mass-chart-current-card{min-width:0}.mass-chart-context{width:100%;gap:10px 12px}.mass-chart-pcs-comparison{flex:1 1 100%;min-width:0;padding-top:10px;padding-left:0;border-top:1px solid var(--border);border-left:0}.mass-chart-legend{width:100%;margin-left:0}.mass-chart-visual{margin-top:12px;padding-inline:2px}.mass-chart-svg{width:100%;height:260px}}.cperf-chart-card{padding:14px 16px;margin-bottom:4px}.cperf-chart-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;justify-content:space-between}.cperf-chart-title{font-weight:700;font-size:14px;color:var(--text)}.cperf-legend{display:flex;flex-wrap:wrap;gap:4px 12px}.cperf-legend-item{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.cperf-legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.cperf-svg{width:100%;height:auto;margin-top:10px;display:block;overflow:visible}.cperf-grid{stroke:var(--border);stroke-width:1}.cperf-ylabel{fill:var(--muted);font-size:10px;text-anchor:end}.cperf-xlabel{fill:var(--muted);font-size:10px;text-anchor:middle}.cperf-axis-cap{fill:var(--muted);font-size:10px;text-anchor:middle;opacity:.85}.cperf-dot{cursor:pointer}.cperf-hover-line{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3;opacity:.6}.cperf-tip-box{fill:var(--panel);stroke:var(--border);stroke-width:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.18))}.cperf-selection-panel{margin-top:8px;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--panel)}.cperf-selection{padding:9px 10px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:9px 14px;border-bottom:1px solid var(--border);background:var(--panel-2);color:var(--muted);font-size:11px}.cperf-selection-dot{width:10px;height:10px;border-radius:50%}.cperf-selection>div{min-width:0;display:flex;flex-direction:column}.cperf-selection strong,.cperf-selection>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cperf-selection strong{color:var(--text);font-size:12px}.cperf-selection button{padding:5px 8px;border:1px solid var(--border);border-radius:5px;background:var(--panel);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.cperf-selection button:hover{color:var(--accent);border-color:var(--accent)}.cperf-selection-riders{padding:9px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:5px}.cperf-selection-riders>.loading,.cperf-selection-riders>.error{grid-column:1 / -1;margin:0}.cperf-selection-rider{min-width:0;padding:7px 8px;display:grid;grid-template-columns:22px minmax(0,1fr) auto auto;align-items:center;gap:7px;border:1px solid var(--border);border-radius:5px;color:var(--text);font-size:10px}.cperf-selection-rider:hover{border-color:var(--accent);background:var(--accent-soft);text-decoration:none}.cperf-selection-rider strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.cperf-selection-rider>span:nth-last-child(-n+2){color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}@media (max-width: 600px){.bgap-head{align-items:flex-start;flex-wrap:wrap}.bgap-title{flex:1 1 140px;min-width:0}.bgap-badge{margin-left:0}.bgap-legend-hint{width:100%;margin-left:0}.cperf-selection{grid-template-columns:auto minmax(0,1fr) auto;gap:6px 9px}.cperf-selection button{grid-column:2 / -1}.cperf-selection-riders{grid-template-columns:1fr}}.cperf-table th,.cperf-table td{vertical-align:middle}.cperf-climb{display:flex;align-items:center;gap:7px;min-width:0}.cperf-cat{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:18px;padding:0 5px;border-radius:4px;font-size:11px;font-weight:700;color:#fff}.cperf-climb-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cperf-strava{flex:none;font-size:12px;line-height:1}.cperf-riders{display:flex;flex-direction:column;gap:3px;min-width:0}.cperf-rider{display:flex;align-items:center;gap:6px;min-width:0;color:var(--text);text-decoration:none}.cperf-rider:hover .cperf-rider-name{text-decoration:underline}.cperf-rider-avatar{flex:none;width:24px;height:24px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;border:1px solid var(--border);background:var(--panel-2, var(--border))}.cperf-rider-ph{display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--muted)}.cperf-rider-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cperf-more{font-size:12px;padding-left:30px}.cperf-more-btn{background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:12px;padding:2px 6px;border-radius:4px}.cperf-more-btn:hover{background:var(--panel-2);text-decoration:underline}.cperf-modal-list li{gap:8px}.cperf-modal-list .cperf-rider-avatar{flex:none}.incidents-card{padding:14px 16px 4px;margin-top:4px}.incidents-head{display:flex;align-items:baseline;gap:10px}.incidents-title{font-weight:700;font-size:14px;color:var(--text)}.incidents-sub{font-size:11px;margin-left:auto;flex:none;white-space:nowrap}.help-mark{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:6px;font-size:10px;font-weight:700;line-height:1;color:var(--muted, #888);background:#7f7f7f24;border:1px solid rgba(127,127,127,.3);border-radius:50%;vertical-align:middle;cursor:help;-webkit-user-select:none;-moz-user-select:none;user-select:none}.help-mark:hover{color:var(--text);border-color:#7f7f7f8c}.incidents-section{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:14px 0 2px}.incident-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 8px;border-radius:6px;white-space:nowrap;background:#e5393524;color:#e53935}.stage-live-shape-card{padding:16px}.stage-live-shape-card>h2{margin-top:0}.situation-chart{width:100%}.situation-course-context{margin:12px 0 4px;padding-top:10px;border-top:1px solid var(--border)}.situation-course-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.situation-course-head>div:first-child{min-width:130px;display:flex;flex-direction:column;gap:2px}.situation-course-head>div:first-child span,.situation-course-gradient>span:first-child{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.situation-course-head>div:first-child strong{color:var(--text);font-size:14px}.situation-course-stats{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.situation-course-stats>span{padding:4px 7px;border:1px solid var(--border);border-radius:5px;background:var(--panel-2);color:var(--muted);font-size:9px;white-space:nowrap}.situation-course-stats strong{color:var(--text);font-variant-numeric:tabular-nums}.situation-course-gradient{margin-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;color:var(--muted);font-size:9px}.situation-course-gradient>span{display:inline-flex;align-items:center;gap:4px}.situation-course-gradient i{width:14px;height:3px;display:inline-block;border-radius:999px}.situation-plot-wrap{position:relative}.situation-svg{display:block;width:100%;height:auto;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.situation-reset{position:absolute;top:4px;right:4px;z-index:2;padding:4px 9px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--muted);font:inherit;font-size:11px;cursor:pointer}.situation-reset:hover{color:var(--text);border-color:var(--accent)}.situation-legend{display:flex;align-items:center;flex-wrap:wrap;gap:7px 16px;margin-top:6px;color:var(--muted);font-size:11px}.situation-legend-item{display:inline-flex;align-items:center;gap:5px}.situation-legend-dot,.situation-role-dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}.situation-legend-hint{margin-left:auto}.situation-snapshot-control{margin-top:12px;padding:8px;display:grid;grid-template-columns:auto minmax(140px,1fr) auto auto auto;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.situation-snapshot-control input[type=range]{width:100%;min-width:80px;accent-color:var(--accent);cursor:pointer}.situation-snapshot-control strong{min-width:92px;color:var(--text);font-size:12px;font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap}.situation-snapshot-control button,.situation-inspector-actions button{min-height:34px;padding:6px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--text);font:inherit;font-size:11px;font-weight:650;cursor:pointer}.situation-snapshot-control button:hover:not(:disabled),.situation-inspector-actions button:hover{border-color:var(--accent);color:var(--accent)}.situation-snapshot-control button:disabled{cursor:default;opacity:.42}.situation-snapshot-control .situation-latest{background:var(--panel);color:var(--accent)}.situation-inspector{margin-top:14px;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--panel)}.situation-inspector-head{min-height:54px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);background:var(--panel-2)}.situation-inspector-head>div{display:flex;align-items:baseline;gap:10px}.situation-inspector-head strong{font-size:15px;color:var(--text)}.situation-inspector-eyebrow{font-size:10px;font-weight:700;color:var(--muted);letter-spacing:.07em;text-transform:uppercase}.situation-inspector-count{padding:3px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap}.situation-inspector-actions{display:flex;align-items:center;gap:8px}.situation-inspector-actions button{min-height:28px;padding:4px 8px;background:transparent}.situation-group-grid{padding:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));align-items:start;gap:10px;background:var(--bg)}.situation-group-card{min-width:0;overflow:hidden;border:1px solid var(--border);border-left:4px solid;border-radius:8px;background:var(--panel)}.situation-group-card-head{width:100%;min-width:0;min-height:46px;padding:9px 11px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.situation-group-card-head:hover{background:var(--accent-soft)}.situation-group-card-title{min-width:0;display:flex;align-items:center;gap:7px}.situation-group-card-title strong{overflow:hidden;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.situation-group-card-meta{flex:none;display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;white-space:nowrap}.situation-group-gap{flex:none;color:var(--muted);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.situation-group-chevron{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--panel-2);color:var(--text);font-size:15px;line-height:1}.situation-group-roster{padding:10px 11px 11px;border-top:1px solid var(--border)}.situation-rider-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:5px}.situation-rider-card{min-width:0;min-height:43px;padding:6px 8px;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:7px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--text)}.situation-rider-card:hover{border-color:var(--accent);background:var(--accent-soft);text-decoration:none}.situation-rider-flag{text-align:center;font-size:14px}.situation-rider-copy{min-width:0;display:flex;flex-direction:column}.situation-rider-name{overflow:hidden;font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.situation-rider-team{overflow:hidden;color:var(--muted);font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.situation-rider-gc{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.situation-jersey-dot{display:inline-block;width:7px;height:7px;margin-right:4px;border:1px solid rgba(100,116,139,.55);border-radius:50%;vertical-align:1px}.situation-roster-empty{margin:20px auto;max-width:420px;color:var(--muted);font-size:12px;text-align:center}.situation-show-all{width:100%;margin-top:8px;padding:7px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--text);font:inherit;font-size:11px;font-weight:600;cursor:pointer}.situation-show-all:hover{border-color:var(--accent);color:var(--accent)}@media (max-width: 700px){.stage-live-shape-card{padding:12px}.situation-legend{gap:6px 12px}.situation-course-head{display:block}.situation-course-stats{justify-content:flex-start;margin-top:8px}.situation-course-stats>span{padding:3px 6px;font-size:8.5px}.situation-course-stats>span:last-child{display:none}.situation-course-gradient{flex-wrap:wrap;gap:8px;padding-bottom:2px}.situation-course-gradient>span:first-child{display:none}.situation-legend-hint{width:100%;margin-left:0;white-space:normal;overflow-wrap:anywhere;line-height:1.4}.situation-snapshot-control{grid-template-columns:1fr 1fr}.situation-snapshot-control input[type=range]{grid-row:1;grid-column:1 / -1}.situation-snapshot-control strong{grid-row:2;grid-column:1 / -1}.situation-snapshot-control button:nth-of-type(1){grid-row:3;grid-column:1}.situation-snapshot-control button:nth-of-type(2){grid-row:3;grid-column:2}.situation-snapshot-control .situation-latest{grid-row:4;grid-column:1 / -1}.situation-inspector-head{align-items:flex-start;flex-direction:column}.situation-inspector-head>div{align-items:flex-start;flex-direction:column;gap:1px}.situation-inspector-actions{width:100%;justify-content:space-between}.situation-group-grid{padding:8px;grid-template-columns:1fr;gap:8px}.situation-group-card-head{min-height:52px;padding:10px}.situation-group-card-title{align-items:flex-start;flex-wrap:wrap;gap:4px 7px}.situation-group-card-title strong{max-width:calc(100vw - 190px)}.situation-group-gap{width:100%;padding-left:16px}.situation-group-card-meta{align-self:center}.situation-group-roster{padding:10px}.situation-rider-grid{grid-template-columns:1fr}}.situ-km{white-space:nowrap;font-variant-numeric:tabular-nums}.situ-count{display:inline-block;min-width:18px;padding:1px 6px;border-radius:6px;background:var(--accent-2);color:#fff;font-size:11px;font-weight:700;text-align:center}.situ-gap{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text)}.situ-rider .flag{margin-right:3px}.situ-chase{line-height:1.5}.situ-chase+.situ-chase{margin-top:2px}.situ-behind{line-height:1.5;opacity:.75}.situ-behind+.situ-behind{margin-top:2px}.situ-behind .situ-gap{color:var(--muted)}.situ-pelcount{font-size:11px;color:var(--muted)}.cal-controls{display:flex;gap:10px;align-items:center;margin-bottom:16px;padding:10px;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.cal-controls button{background:transparent;border:1px solid var(--border);color:var(--text);min-height:34px;padding:6px 12px;border-radius:6px;cursor:pointer}.cal-controls button:hover{border-color:var(--accent);background:var(--accent-soft)}.cal-body{position:relative}.calendar-page .cal-body{padding:12px;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.cal-body.is-loading>.cal-grid,.cal-body.is-loading>.cal-agenda{opacity:.4;pointer-events:none;transition:opacity .15s ease}.cal-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;justify-content:center;padding-top:56px;pointer-events:none}.cal-loading-overlay .loading{margin:0;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:8px 16px;box-shadow:0 4px 14px #0000001a}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;border-top:1px solid var(--border);border-left:1px solid var(--border)}.cal-day{background:var(--panel);border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;min-height:104px;padding:8px;font-size:12px;min-width:0;overflow:hidden}.cal-day.dim{opacity:.45}.cal-day.today{box-shadow:inset 0 0 0 2px var(--accent)}.cal-day.today .dn{color:var(--accent)}.cal-day .dn{font-weight:600;color:var(--muted)}.cal-day .ev{background:color-mix(in srgb,var(--panel-2) 74%,var(--panel));border-left:3px solid var(--accent-2);border-radius:3px;padding:2px 6px;margin-top:3px;font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-day .ev a{color:var(--text)}.cal-day .ev a:hover{color:var(--accent);text-decoration:none}.cal-day .ev.tour-wt{border-left-color:#f4d03f}.cal-day .ev.tour-wc{border-left-color:#b39ddb}.cal-day .ev.tour-pro{border-left-color:var(--orange-soda)}.cal-day .ev.tour-1{border-left-color:var(--indigo)}.cal-day .ev.tour-2{border-left-color:#6c757d}.cal-day .ev.tour-other{border-left-color:var(--border)}.cal-day .ev.tour-wt a{color:#b8860b;font-weight:600}[data-theme=dark] .cal-day .ev.tour-wt a{color:#f4d03f}.cal-day .ev.tour-pro a{color:var(--orange-soda)}.cal-day .ev.tour-1 a{color:var(--accent)}.cal-agenda{display:none}@media (max-width: 640px){.cal-grid{display:none}.cal-agenda{display:flex;flex-direction:column;gap:10px}.cal-controls{gap:8px;flex-wrap:wrap;padding:8px}.cal-monthyear{min-width:120px;font-size:14px}}.cal-agenda-day{border:1px solid var(--border);border-radius:8px;background:var(--panel);padding:2px 14px 6px;scroll-margin-top:64px}.cal-agenda-day.today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cal-agenda-date{font-weight:600;font-size:13px;padding:8px 0 2px;text-transform:capitalize}.cal-agenda-day.today .cal-agenda-date{color:var(--accent)}.cal-agenda-empty{color:var(--muted);padding:24px 8px;text-align:center}.cal-agenda-more{display:block;width:100%;margin-top:4px;padding:6px;background:none;border:none;border-top:1px solid var(--border);color:var(--accent);cursor:pointer;font:inherit;font-size:13px;text-align:center}.cal-agenda-more:hover{color:var(--accent-2)}.cal-day .dn{background:none;border:none;padding:0;font:inherit;text-align:left;cursor:pointer;display:block;width:100%;border-radius:4px}.cal-day .dn:disabled{cursor:default}.cal-day .dn:not(:disabled):hover{color:var(--accent)}.cal-day .more{background:none;border:none;padding:2px 0 0;margin:2px 0 0;font:inherit;font-size:10px;color:var(--muted);cursor:pointer;text-align:left}.cal-day .more:hover{color:var(--accent)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px;animation:modalFade .16s ease-out}.modal-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 40px #00000040;max-width:560px;width:100%;max-height:82vh;overflow:auto;padding:16px 20px;animation:modalRise .18s ease-out}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--border)}.modal-head h3{margin:0;font-size:16px}.modal-head .close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:22px;line-height:1;padding:0 4px;border-radius:4px}.modal-head .close:hover{color:var(--accent);background:var(--panel-2)}.day-list{list-style:none;padding:0;margin:0}.day-list li{padding:10px 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.day-list li:last-child{border-bottom:none}.day-list .race-name{font-weight:500;color:var(--text);text-decoration:none}.day-list .race-name:hover{color:var(--accent)}.day-list .stage-tag{font-size:12px;color:var(--muted)}.day-list .cat-pill{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--panel-2);border:1px solid var(--border);color:var(--muted);margin-left:auto;letter-spacing:.3px}.day-list .cat-pill.wt{background:var(--accent-soft);color:var(--orange-soda);border-color:transparent}.day-list .cat-pill.pro{background:var(--accent-soft);color:var(--indigo);border-color:transparent}.day-list .cat-pill.tour-wt{background:#f4d03f33;color:#b8860b;border-color:transparent}[data-theme=dark] .day-list .cat-pill.tour-wt{color:#f4d03f}.day-list .cat-pill.tour-wc{background:#b39ddb33;color:#7e57c2;border-color:transparent}.day-list .cat-pill.tour-pro{background:var(--accent-soft);color:var(--orange-soda);border-color:transparent}.day-list .cat-pill.tour-1{background:var(--accent-soft);color:var(--accent);border-color:transparent}.day-list .cat-pill.tour-2{background:#6c757d26;color:var(--muted);border-color:transparent}@keyframes modalRise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.cal-controls select{width:auto}.cal-monthyear{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:15px;min-width:180px;justify-content:center}.year-pick{display:inline-flex;min-width:0}.year-pick select{width:auto;min-width:88px}.horizontal-scroll-affordance{position:relative;min-width:0}.horizontal-scroll-control{position:absolute;z-index:5;top:4px;display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--border) 82%,var(--muted));border-radius:999px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 2px 8px #0f172a1f;color:var(--text);cursor:pointer;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.horizontal-scroll-chevron{display:block;width:16px;height:16px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.horizontal-scroll-control:hover{border-color:var(--accent);background:var(--panel);color:var(--accent)}.horizontal-scroll-control.is-back{left:0}.horizontal-scroll-control.is-forward{right:0}.spec-bars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.spec-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;padding:9px 10px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);font-size:11px}.spec-row>div:first-child{overflow:hidden;color:var(--text);font-weight:650;text-overflow:ellipsis;white-space:nowrap}.spec-row>div:last-child{font-size:10px;font-variant-numeric:tabular-nums}.spec-bar-bg{grid-column:1 / -1;grid-row:2;background:var(--border);border-radius:3px;height:6px;overflow:hidden}.spec-bar-fg{height:100%;background:linear-gradient(90deg,var(--yellow),var(--orange-soda),var(--orange-yellow))}.rider-header{display:grid;grid-template-columns:minmax(390px,.88fr) minmax(430px,1.12fr);gap:26px;align-items:stretch;margin-bottom:24px}.rider-header-solo{grid-template-columns:minmax(0,1fr)}.rider-identity{min-width:0;display:flex;align-items:center;gap:20px}.rider-header .rider-bio{min-width:0}.rider-profile-kicker{margin-bottom:6px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.rider-header .rider-bio h1{margin:0 0 12px;display:flex;align-items:center;gap:8px;line-height:1.08}.rider-header .rider-bio p{margin:0;font-size:13px}.rider-vitals{display:flex;align-items:stretch;flex-wrap:wrap;gap:6px}.rider-vitals>span{min-width:66px;padding:6px 9px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:5px;background:var(--panel-2)}.rider-vitals small{color:var(--muted);font-size:8.5px;font-weight:700;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.rider-vitals strong{color:var(--text);font-size:12px;font-variant-numeric:tabular-nums}.rider-birthplace{margin-top:8px!important}.rider-current-team{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:13px;font-weight:600}.rider-current-team span{padding:2px 6px;border-radius:4px;background:var(--accent-soft);color:var(--accent);font-size:10px;font-variant-numeric:tabular-nums}.rider-socials{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.rider-social{font-size:11px;font-weight:600;line-height:1;padding:4px 9px;border-radius:6px;text-decoration:none;color:var(--muted, #666);border:1px solid var(--border, rgba(127, 127, 127, .28));background:var(--card, rgba(127, 127, 127, .06));transition:color .12s,border-color .12s,background .12s}.rider-social:hover{color:#fff;border-color:transparent}.rider-social-strava:hover{background:#fc4c02}.rider-social-instagram:hover{background:#d6249f}.rider-social-twitter:hover{background:#000}.rider-social-facebook:hover{background:#1877f2}.rider-social-youtube:hover{background:red}.rider-social-tiktok:hover{background:#010101}.rider-spec{padding:14px;align-self:stretch;align-content:center;margin:0;box-shadow:none;background:var(--bg)}.rider-spec-title{grid-column:1 / -1;margin-bottom:2px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}@media (max-width: 900px){.rider-header{grid-template-columns:1fr;gap:16px}.rider-identity{justify-content:center}}@media (max-width: 720px){.rider-header{text-align:center;gap:12px}.rider-identity{flex-direction:column;gap:12px}.rider-photo{width:120px;height:120px}.rider-header .rider-bio{text-align:center}.rider-header .rider-bio h1{font-size:22px;justify-content:center}.rider-vitals,.rider-header .rider-bio p,.rider-header .rider-bio .rider-socials{justify-content:center}.rider-header .rider-spec{width:100%;justify-self:stretch;text-align:left}.spec-bars{grid-template-columns:repeat(2,minmax(0,1fr))}}.rider-photo{width:156px;height:156px;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;border-radius:6px;border:1px solid var(--border);background:var(--panel-2)}.rider-section-nav{display:flex;align-items:center;gap:4px;margin:-10px 0 18px;padding-bottom:8px;overflow-x:auto;border-bottom:1px solid var(--border)}.rider-section-nav a{flex:none;padding:6px 10px;border-radius:5px;color:var(--muted);font-size:11px;font-weight:600}.rider-section-nav a:hover{background:var(--panel);color:var(--text);text-decoration:none}#rider-form,#rider-highlights,#rider-results{scroll-margin-top:84px}.rider-source{margin:20px 0 0;padding-top:12px;border-top:1px solid var(--border);font-size:10px}.roster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-top:8px}.roster-card{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center;text-align:left;text-decoration:none;color:inherit;padding:12px;border:1px solid var(--border);border-radius:6px;background:var(--panel);transition:border-color .16s ease,transform .16s ease}.roster-card:hover{border-color:var(--accent);transform:translateY(-1px)}.roster-photo{width:56px;height:56px;border-radius:50%;overflow:hidden;background:var(--panel-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:0}.roster-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center}.roster-photo-placeholder{font-size:32px;font-weight:600;color:var(--muted)}.roster-name{min-width:0;font-size:13px;font-weight:600;line-height:1.25}.roster-meta{font-size:11px;margin-top:2px}.error{padding:12px;color:var(--bad)}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;font:inherit;text-decoration:underline}.link-btn:hover{color:var(--accent-2)}.show-more-btn{display:block;width:100%;margin-top:8px;padding:8px;background:none;border:1px solid var(--border);border-radius:8px;color:var(--accent);cursor:pointer;font:inherit;text-align:center}.show-more-btn:hover{color:var(--accent-2);border-color:var(--accent)}.rider-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:32px;align-items:start}@media (max-width: 900px){.rider-layout{grid-template-columns:1fr}}.rider-main{min-width:0}.rider-side h2{font-size:12px;letter-spacing:.06em}.team-list{list-style:none;padding:0;margin:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--panel)}.team-list li{display:flex;align-items:center;gap:10px;padding:6px 10px;font-size:13px;border-bottom:1px solid var(--border)}.team-list li:last-child{border-bottom:none}.team-list .team-season{font-variant-numeric:tabular-nums;font-size:11px;min-width:32px}.season-results-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table.season-results{width:100%;min-width:560px;border-collapse:collapse;font-size:13px}table.season-results th{text-align:left;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px 10px;border-bottom:1px solid var(--border);background:transparent}table.season-results td{padding:8px 10px;vertical-align:middle;border-bottom:1px solid var(--border)}table.season-results td:nth-child(2){font-variant-numeric:tabular-nums}table.season-results tr.race-row td{background:var(--accent-soft);font-weight:500}table.season-results tr.race-row td:nth-child(2){color:var(--accent)}table.season-results tr.sub-row td{font-size:12px;color:var(--muted);padding-top:4px;padding-bottom:4px}table.season-results tr.sub-row td:nth-child(3){padding-left:24px}table.season-results tr.sub-row a{color:var(--text)}table.season-results tr.sub-row a:hover{color:var(--accent)}table.season-results tr:hover td{background:#ffffff05}table.season-results .cls-rank{display:inline-block;min-width:22px;padding:1px 6px;border-radius:4px;text-align:center;font-weight:600;color:#1a1a1a}table.season-results .cls-gc .cls-rank{background:#f4d03f}table.season-results .cls-points .cls-rank{background:#58c172;color:#fff}table.season-results .cls-kom .cls-rank{background:#e74c3c;color:#fff}table.season-results .cls-youth .cls-rank{background:#fff;color:#1a1a1a;border:1px solid var(--border)}@media (max-width: 640px){table.responsive-season-table,.responsive-season-table tbody{display:block;width:100%;min-width:0}.responsive-season-table thead{display:none}.responsive-season-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding:9px 10px;border-bottom:1px solid var(--border)}.responsive-season-table tbody tr:last-child{border-bottom:0}.responsive-season-table td,.responsive-season-table td:first-child,.responsive-season-table td:last-child,table.responsive-season-table tr.sub-row td{display:block;width:auto;min-width:0;height:auto;padding:5px 7px;border:0;overflow-wrap:anywhere;text-align:left!important}.responsive-season-table td:empty{display:none}.responsive-season-table td:nth-child(4){display:block;grid-column:1 / 4;grid-row:1;font-size:12px}.responsive-season-table td:nth-child(1){grid-column:1}.responsive-season-table td:nth-child(2){grid-column:2}.responsive-season-table td:nth-child(3){grid-column:3}.responsive-season-table td:nth-child(5){grid-column:1}.responsive-season-table td:nth-child(6){grid-column:2}.responsive-season-table td:nth-child(7){grid-column:3}.responsive-season-table td:not(:nth-child(4)):before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:7.5px;font-weight:750;letter-spacing:.055em;text-transform:uppercase}table.responsive-season-table tr.race-row td{background:transparent}table.responsive-season-table tr.race-row{background:var(--accent-soft)}}.gc-pill{display:inline-block;min-width:18px;padding:0 5px;border-radius:3px;background:#f4d03f;color:#1a1a1a;font-size:11px;font-weight:600;line-height:16px;text-align:center;text-decoration:none;vertical-align:middle}.gc-pill:hover{filter:brightness(.95);text-decoration:none}.global-search-slot{flex:1;display:flex;justify-content:center;max-width:760px;margin:0}.global-search{position:relative;width:100%}.global-search-input-wrap{position:relative;display:flex;align-items:center;min-width:0}.global-search-icon{position:absolute;left:12px;z-index:1;color:var(--muted);font-size:14px;pointer-events:none}.global-search-input.ui-input{flex:1;min-width:0;padding-inline:34px 48px}.global-search-kbd{position:absolute;right:10px;pointer-events:none;font-size:11px;color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:1px 5px;background:var(--panel-2)}.global-search-panel{position:absolute;top:calc(100% + 6px);left:0;right:0;min-width:520px;z-index:100;max-height:70vh;overflow-y:auto;border-radius:8px;border:1px solid var(--border);background:var(--panel);color:var(--text);box-shadow:0 12px 32px #00000059;padding:6px 0}.global-search-empty{padding:14px 16px;color:var(--muted);font-size:13px}.global-search-section+.global-search-section{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}.global-search-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:6px 14px 4px}.global-search-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 14px;background:transparent;border:0;cursor:pointer;text-align:left;color:inherit;font:inherit}.global-search-item.is-active,.global-search-item:hover{background:#5b8cff1a}.global-search-avatar{width:32px;height:32px;border-radius:50%;background:var(--panel-2);display:flex;align-items:center;justify-content:center;font-size:16px;overflow:hidden;flex-shrink:0}.global-search-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.global-search-text{flex:1;min-width:0}.global-search-title{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-sub{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-muted{color:var(--muted);font-weight:400}@media (max-width: 640px){.global-search-slot{display:flex;min-width:0}.global-search-input-wrap{min-height:44px}.global-search-kbd{display:none}.global-search-panel{position:fixed;top:70px;right:20px;left:20px;width:auto;min-width:0;max-height:calc(100dvh - 82px)}.cal-controls button,.cal-controls select,.form-input,.show-more-btn,.rider-section-nav a{min-height:42px}}.best-results{margin:20px 0 24px;padding:16px 18px}.best-results .best-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.best-results .best-head h2{margin:0;font-size:16px}.best-results .small{font-size:12px}.best-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.best-row{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:10px;padding:6px 8px;border-radius:4px;border-left:3px solid var(--border);font-size:13px;min-width:0}.best-row:hover{background:#7f7f7f0f}.best-rank-pos{font-size:11px;text-align:right}.best-result-pill{display:inline-block;min-width:38px;text-align:center;font-weight:700;padding:2px 6px;border-radius:4px;background:var(--panel-2);color:var(--text)}.best-result-pill.rank-1{background:#f4d03f;color:#1a1a1a}.best-result-pill.rank-2{background:silver;color:#1a1a1a}.best-result-pill.rank-3{background:#cd7f32;color:#fff}.best-row.tier-worlds .best-result-pill.rank-1{background:linear-gradient(90deg,#1e88e5,#ef5350,#111,#ffeb3b,#43a047);color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.7)}.best-row.tier-continental .best-result-pill.rank-1{background:#039;color:#fc0}.best-row.tier-olympics .best-result-pill.rank-1{background:linear-gradient(135deg,gold,#f4c430,#d4a017);color:#1a1a1a;box-shadow:inset 0 0 0 1px #00000026}.best-row.tier-olympics .best-result-pill.rank-2{background:linear-gradient(135deg,#e8e8e8,silver);color:#1a1a1a}.best-row.tier-olympics .best-result-pill.rank-3{background:linear-gradient(135deg,#d99058,#cd7f32);color:#fff}.best-main{display:flex;flex-direction:column;min-width:0}.best-race-name{font-weight:500;color:var(--text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.best-race-name:hover{color:var(--accent)}.best-sub{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.best-sub .best-stage-label{color:var(--muted)}.best-sub .best-years{color:var(--muted);font-variant-numeric:tabular-nums}.best-sub .cls-chip{display:inline-block;padding:0 5px;border-radius:3px;font-weight:600;font-size:10px;letter-spacing:.3px;text-transform:uppercase;color:#1a1a1a;background:var(--panel-2)}.best-sub .cls-gc{background:#f4d03f;color:#1a1a1a}.best-sub .cls-points{background:#58c172;color:#fff}.best-sub .cls-kom{background:#e74c3c;color:#fff}.best-sub .cls-youth{background:#fff;color:#1a1a1a;border:1px solid var(--border)}.best-sub .cls-teams{background:var(--panel-2);color:var(--muted)}.best-year{font-variant-numeric:tabular-nums;font-size:12px}.best-sl{font-size:11px;font-variant-numeric:tabular-nums}.best-tier-pill{font-size:11px;padding:2px 6px;border-radius:3px;border:1px solid transparent;white-space:nowrap}.best-row.tier-grand_tour{border-left-color:#f4d03f}.best-row.tier-olympics{border-left-color:#d4a017}.best-row.tier-worlds{border-left:3px solid transparent;-o-border-image:linear-gradient(180deg,#1e88e5 0%,#ef5350 25%,#111 50%,#ffeb3b 75%,#43a047 100%) 1;border-image:linear-gradient(180deg,#1e88e5,#ef5350,#111,#ffeb3b,#43a047) 1}.best-row.tier-continental{border-left-color:#039}.best-row.tier-monument{border-left-color:#b91c1c}.best-row.tier-wt{border-left-color:var(--accent)}.best-row.tier-pro{border-left-color:var(--orange-soda)}.best-row.tier-1{border-left-color:#6c757d}.best-row.tier-2{border-left-color:#adb5bd}.best-row.tier-nc{border-left-color:#2e8b57}.best-row.tier-other{border-left-color:var(--border)}.best-tier-pill.tier-grand_tour{background:#f4d03f33;color:#b8860b}[data-theme=dark] .best-tier-pill.tier-grand_tour{color:#f4d03f}.best-tier-pill.tier-olympics{background:linear-gradient(90deg,gold,#f4c430,#d4a017);color:#1a1a1a;font-weight:700}.best-tier-pill.tier-worlds{background:linear-gradient(90deg,#1e88e5,#ef5350,#111,#ffeb3b,#43a047);color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.6);font-weight:700}.best-tier-pill.tier-continental{background:#039;color:#fc0;font-weight:700}.best-tier-pill.tier-monument{background:#b91c1c2e;color:#b91c1c}[data-theme=dark] .best-tier-pill.tier-monument{color:#f87171}.best-tier-pill.tier-wt{background:var(--accent-soft);color:var(--accent)}.best-tier-pill.tier-pro{background:var(--accent-soft);color:var(--orange-soda)}.best-tier-pill.tier-1{background:#6c757d2e;color:var(--muted)}.best-tier-pill.tier-2{background:#6c757d1f;color:var(--muted)}.best-tier-pill.tier-nc{background:#2e8b572e;color:#2e8b57;font-weight:700}.best-tier-pill.tier-other{background:var(--panel-2);color:var(--muted)}@media (max-width: 640px){.best-list{grid-template-columns:1fr}.best-row{grid-template-columns:46px 1fr auto;font-size:12px}}.riders-filter-panel{margin-bottom:18px;padding:14px;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.riders-filter-panel .form-controls:last-child{margin-bottom:0!important}.riders-page>.card{border-radius:6px;box-shadow:0 1px 2px #0f172a06}@media (max-width: 640px){.hide-mobile{display:none}}.rider-tab-panel{min-width:0}.rider-analysis-header{margin:0 0 14px}.rider-analysis-header h2{margin:0 0 4px;color:var(--text);font-size:20px;letter-spacing:-.015em;text-transform:none}.rider-analysis-header p{max-width:680px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}.rider-analysis-date-card{--comparison-soft: color-mix(in srgb, var(--panel-2) 55%, var(--panel));padding:0;margin-bottom:14px;overflow:hidden}.rider-analysis-date-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px 24px;padding:15px 18px 13px}.rider-analysis-date-copy strong{color:var(--text);font-size:12px}.rider-analysis-date-copy p{max-width:760px;margin:0;color:var(--muted);font-size:11px;line-height:1.45;text-align:right}.rider-analysis-date-card .comparison-dates{padding:13px 18px;border-radius:0}.rider-performance-dashboard{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-bottom:24px}.rider-dashboard-panel{min-width:0;padding:19px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:0 1px 2px #0f172a06}.rider-dashboard-panel:empty{display:none}.rider-dashboard-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px 24px;margin-bottom:14px}.rider-dashboard-heading h2{margin:0;color:var(--text);font-size:12px}.rider-dashboard-heading p{margin:0;color:var(--muted);font-size:11px;line-height:1.45;text-align:right}.form-ranking-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.form-ranking-card{--rank-color: var(--text);position:relative;display:flex;flex-direction:column;align-items:stretch;gap:10px;min-height:116px;padding:14px!important;min-width:0;overflow:hidden;text-decoration:none;color:var(--text);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.form-ranking-card:before{position:absolute;inset:0 0 auto;height:3px;background:var(--rank-color);content:"";opacity:.8}.form-ranking-card:hover{border-color:var(--rank-color);transform:translateY(-2px);box-shadow:0 4px 14px #0f172a14}.form-ranking-track{font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.form-ranking-metrics{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}.form-ranking-rank{color:var(--rank-color);font-size:27px;font-weight:750;font-variant-numeric:tabular-nums;line-height:1.1}.form-ranking-card.rank-gold{--rank-color: #d69216}.form-ranking-card.rank-good{--rank-color: #16a34a}.form-ranking-card.rank-ok{--rank-color: var(--accent)}.form-ranking-rating{display:flex;flex-direction:column;align-items:flex-end;gap:1px;font-variant-numeric:tabular-nums;line-height:1.1}.form-ranking-rating span{color:var(--muted);font-size:8px;font-weight:650;letter-spacing:.05em;text-transform:uppercase}.form-ranking-rating strong{color:var(--text);font-size:12px}.form-ranking-context{margin-top:auto;color:var(--muted);font-size:10px}.form-ranking-na{opacity:.45}.form-ranking-na:hover{opacity:.7}.rider-traits-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.rider-trait-card{--tc: var(--accent);position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 14px 14px 17px!important;min-width:0;min-height:126px;flex:1 1 0;overflow:hidden;text-decoration:none;color:var(--text);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.rider-trait-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--tc)}.rider-trait-card:hover{border-color:var(--tc);transform:translateY(-2px);box-shadow:0 4px 14px #0f172a14}.rider-dashboard-panel .card{margin-bottom:0}.rider-power-curve-heading{align-items:flex-start}.rider-power-curve-heading>div:first-child{min-width:0}.rider-power-curve-heading>div:first-child>p{max-width:760px;margin-top:4px;text-align:left}.rider-power-curve-summary{display:flex;flex:none;align-items:flex-start;gap:12px}.rider-power-curve-ftp{display:flex;flex-direction:column;align-items:flex-end;gap:1px;padding-right:12px;border-right:1px solid var(--border);color:var(--muted);font-size:9px;line-height:1.25;white-space:nowrap;cursor:help}.rider-power-curve-ftp strong{color:var(--accent);font-size:20px;font-variant-numeric:tabular-nums;line-height:1.05}.rider-power-curve-ftp strong small{font-size:10px;font-weight:700}.rider-power-curve-window{display:flex;flex:none;flex-direction:column;align-items:flex-end;gap:2px;color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.rider-power-curve-window strong{color:var(--text);font-size:11px}.rider-power-curve-shell{width:100%;min-width:0}.rider-power-curve-svg{display:block;width:100%;height:320px;overflow:visible;touch-action:pan-y}.rider-power-curve-frame{fill:color-mix(in srgb,var(--panel) 70%,transparent);stroke:var(--border);stroke-width:1}.rider-power-curve-grid{stroke:var(--border);stroke-width:1}.rider-power-curve-grid-vertical{opacity:.55}.rider-power-curve-area-start{stop-color:var(--accent);stop-opacity:.18}.rider-power-curve-area-end{stop-color:var(--accent);stop-opacity:.015}.rider-power-curve-area{pointer-events:none}.rider-power-curve-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2;pointer-events:none}.rider-power-curve-point,.rider-power-curve-active-point{fill:var(--accent);stroke:var(--panel);stroke-width:1.5;pointer-events:none}.rider-power-curve-y-label,.rider-power-curve-x-label,.rider-power-curve-axis-title,.rider-power-curve-tooltip text{fill:var(--muted);font-family:inherit;font-size:10px}.rider-power-curve-y-label{text-anchor:end;font-variant-numeric:tabular-nums}.rider-power-curve-x-label{text-anchor:middle}.rider-power-curve-axis-title{font-size:10.5px;font-weight:600}.rider-power-curve-y-title{text-anchor:middle}.rider-power-curve-guide{stroke:color-mix(in srgb,var(--accent) 52%,var(--border));stroke-width:1}.rider-power-curve-tooltip-box{fill:var(--panel);stroke:var(--border);stroke-width:1}.rider-power-curve-tooltip .rider-power-curve-tooltip-title{fill:var(--text);font-size:11px;font-weight:700}.rider-power-curve-tooltip .rider-power-curve-tooltip-value{fill:var(--accent);font-size:11px;font-weight:700}.rider-power-curve-tooltip .rider-power-curve-tooltip-muted{fill:var(--muted);font-size:9.5px}.rider-power-curve-selection{display:flex;min-height:34px;flex-wrap:wrap;align-items:baseline;gap:3px 12px;padding-top:9px;border-top:1px solid var(--border);color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.rider-power-curve-selection strong{color:var(--accent);font-size:11px}.rider-power-curve-selection a{font-weight:650}.rider-power-curve-empty{margin:18px 0 4px;text-align:center}.rider-form-history-heading{align-items:flex-start}.rider-form-history-heading>div,.rider-form-history-heading p{max-width:780px;text-align:left}.rider-form-track-tabs{margin:-2px 0 12px}.rider-form-changes-heading{display:flex;justify-content:space-between;gap:8px;margin:4px 0 8px;color:var(--muted);font-size:11px}.rider-form-changes-heading span:first-child{color:var(--text);font-weight:700}.rider-form-changes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.rider-form-change{display:grid;gap:5px;min-width:0;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.rider-form-change-period{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.rider-form-change-value{color:var(--text);font-size:clamp(20px,2vw,26px);font-variant-numeric:tabular-nums;line-height:1.15}.rider-form-change-metrics{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.rider-form-change-rank{font-size:13px;font-variant-numeric:tabular-nums;font-weight:750;white-space:nowrap}.rider-form-change-rank--up{color:var(--good)}.rider-form-change-rank--down{color:var(--bad)}.rider-form-change-rank--flat,.rider-form-change-rank--unavailable{color:var(--muted)}.rider-form-change--up .rider-form-change-value{color:var(--good)}.rider-form-change--down .rider-form-change-value{color:var(--bad)}.rider-form-change-detail,.rider-form-history-sampling{color:var(--muted);font-size:11px;line-height:1.45}.rider-form-history-sampling{margin:6px 0 0}@media (max-width: 900px){.rider-form-changes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 420px){.rider-form-changes{gap:8px}.rider-form-change{padding:10px}.rider-form-change-detail{overflow-wrap:anywhere}}.rider-deferred-panel{min-height:320px}.rider-form-history-shell{width:100%;min-width:0}.rider-form-history-svg{display:block;width:100%;height:310px;overflow:visible;touch-action:pan-y}.rider-form-history-frame{fill:color-mix(in srgb,var(--panel) 70%,transparent);stroke:var(--border);stroke-width:1}.rider-form-history-grid{stroke:var(--border);stroke-width:1}.rider-form-history-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25;pointer-events:none}.rider-form-history-point,.rider-form-history-active-point{fill:var(--accent);stroke:var(--panel);stroke-width:1.5;pointer-events:none}.rider-form-history-y-label,.rider-form-history-x-label,.rider-form-history-axis-title,.rider-form-history-tooltip text{fill:var(--muted);font-family:inherit;font-size:10px}.rider-form-history-y-label{text-anchor:end;font-variant-numeric:tabular-nums}.rider-form-history-x-label{text-anchor:middle}.rider-form-history-axis-title{font-size:10.5px;font-weight:600}.rider-form-history-y-title{text-anchor:middle}.rider-form-history-guide{stroke:color-mix(in srgb,var(--accent) 52%,var(--border));stroke-width:1}.rider-form-history-tooltip-box{fill:var(--panel);stroke:var(--border);stroke-width:1}.rider-form-history-tooltip-title{fill:var(--text)!important;font-size:11px!important;font-weight:700}.rider-form-history-tooltip-value{fill:var(--accent)!important;font-size:11px!important;font-weight:700}.rider-form-history-tooltip-muted{font-size:9.5px!important}.rider-form-history-empty{margin:24px 0 8px;text-align:center}.rider-dashboard-climbs{overflow:hidden}.rider-climbs-heading{align-items:flex-start}.rider-climbs-heading>div{min-width:0}.rider-climbs-heading>div>p{max-width:760px;margin-top:4px;text-align:left}.rider-climb-count{flex:none;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.rider-climb-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:9px}.rider-climb-search{min-width:210px;max-width:340px;flex:1 1 240px;cursor:text}.rider-climb-filters>select{width:auto;max-width:100%}.rider-climb-filter-label select{width:auto}.rider-climb-race-filter{max-width:240px}.rider-climb-metric-filters{margin-bottom:14px;padding-top:9px;border-top:1px solid var(--border)}.rider-climb-filter-label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.rider-climb-number-filter input{width:78px}.rider-climb-empty{margin:18px 0 4px;text-align:center}.rider-climb-chart{margin:2px 0 16px;padding:12px 0 4px;border-top:1px solid var(--border)}.rider-climb-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}.rider-climb-chart-head strong{color:var(--text);font-size:12px;font-weight:700}.rider-climb-chart-head span{color:var(--muted);font-size:10px}.rider-climb-chart-shell{width:100%;min-width:0}.rider-climb-chart-svg{display:block;width:100%;height:270px;overflow:visible;touch-action:pan-y}.rider-climb-chart-frame{fill:color-mix(in srgb,var(--panel) 70%,transparent);stroke:var(--border);stroke-width:1}.rider-climb-chart-grid{stroke:var(--border);stroke-width:1}.rider-climb-chart-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;opacity:.62}.rider-climb-chart-point,.rider-climb-chart-active-point{fill:var(--accent);stroke:var(--panel);stroke-width:1.5;pointer-events:none}.rider-climb-chart-hit{fill:transparent;cursor:pointer}.rider-climb-chart-hit:focus-visible+.rider-climb-chart-point{stroke:var(--text);stroke-width:2.5}.rider-climb-chart-y-label,.rider-climb-chart-x-label,.rider-climb-chart-axis-title,.rider-climb-chart-tooltip text{fill:var(--muted);font-family:inherit;font-size:10px}.rider-climb-chart-y-label{text-anchor:end;font-variant-numeric:tabular-nums}.rider-climb-chart-x-label{text-anchor:middle}.rider-climb-chart-axis-title{font-size:10.5px;font-weight:600}.rider-climb-chart-y-title{text-anchor:middle}.rider-climb-chart-guide{stroke:color-mix(in srgb,var(--accent) 52%,var(--border));stroke-width:1}.rider-climb-chart-tooltip-box{fill:var(--panel);stroke:var(--border);stroke-width:1}.rider-climb-chart-tooltip .rider-climb-chart-tooltip-title{fill:var(--text);font-size:11px;font-weight:700}.rider-climb-chart-tooltip .rider-climb-chart-tooltip-value{fill:var(--accent);font-size:10.5px;font-weight:700}.rider-climb-chart-tooltip .rider-climb-chart-tooltip-muted{fill:var(--muted);font-size:9.5px}.rider-climb-chart-empty{color:var(--muted);font-size:11px;text-align:center}.rider-climb-table-shell{max-height:680px}.rider-climb-table{min-width:1050px}.rider-climb-table thead{position:sticky;top:0;z-index:1}.rider-climb-sort-header .trait-sort-btn{width:auto}.rider-climb-sort-header:first-child .trait-sort-btn{display:inline-flex;padding-right:3px}.rider-climb-date-sort{display:inline-flex;align-items:center;gap:4px;padding:10px 12px 10px 3px;border:0;background:none;color:var(--muted);font:inherit;font-weight:600;cursor:pointer;white-space:nowrap}.rider-climb-date-sort:hover,.rider-climb-date-sort[aria-pressed=true]{color:var(--text)}.rider-climb-sort-header.trait-th-active .trait-sort-btn[aria-pressed=false]{color:var(--muted)}.rider-climb-table td{vertical-align:middle;font-variant-numeric:tabular-nums}.rider-climb-table td:first-child{min-width:155px}.rider-climb-table td:nth-child(2){min-width:150px}.rider-climb-table td:nth-child(3){min-width:150px}.rider-climb-race,.rider-climb-date,.rider-climb-stage-name,.rider-climb-submetric,.rider-climb-wkg>span,.rider-climb-source-detail{display:block}.rider-climb-date,.rider-climb-stage-name,.rider-climb-submetric,.rider-climb-wkg>span,.rider-climb-source-detail{margin-top:2px;color:var(--muted);font-size:9.5px;font-weight:450;line-height:1.25}.rider-climb-name{display:flex;align-items:center;gap:7px;font-weight:650}.rider-climb-category{display:inline-flex;flex:none;align-items:center;justify-content:center;min-width:24px;height:19px;padding:0 5px;border-radius:5px;color:#fff;font-size:9px;font-weight:800}.rider-climb-wkg,.rider-climb-index{color:var(--accent)!important;font-weight:750}.rider-climb-source{display:inline-flex;padding:2px 6px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:9px;font-weight:700;white-space:nowrap}@media (max-width: 1180px){.rider-dashboard-form .form-ranking-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.rider-dashboard-traits .rider-traits-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 640px){.rider-analysis-header h2{font-size:18px}.rider-analysis-date-copy{display:block;padding:13px}.rider-analysis-date-copy p{margin-top:4px;text-align:left}.rider-analysis-date-card .comparison-dates{padding:12px 13px}.rider-analysis-date-card .comparison-date-fields{width:100%;align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.rider-analysis-date-card .comparison-date-fields>button{grid-column:1 / -1}.rider-performance-dashboard{gap:10px}.rider-dashboard-panel{padding:13px}.rider-dashboard-heading{display:block}.rider-dashboard-heading p{margin-top:4px;text-align:left}.rider-power-curve-heading{display:block}.rider-power-curve-summary{width:100%;justify-content:space-between;margin-top:10px}.rider-power-curve-ftp{align-items:flex-start}.rider-power-curve-window{align-items:flex-start;margin-top:0;white-space:normal;text-align:right}.rider-power-curve-svg{height:300px}.rider-form-history-svg{height:290px}.rider-power-curve-selection{align-items:flex-start;flex-direction:column;gap:3px}.rider-dashboard-form .form-ranking-grid,.rider-dashboard-traits .rider-traits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rider-trait-category{grid-column:1 / -1}.rider-dashboard-form .form-ranking-card:last-child{grid-column:1 / -1}.rider-climbs-heading{display:flex}.rider-climb-count{white-space:normal;text-align:right}.rider-climb-filter-label{align-items:flex-start;flex-direction:column}.rider-climb-number-filter{display:grid;grid-template-columns:78px 12px 78px}.rider-climb-number-filter>span:first-child{grid-column:1 / -1}.rider-climb-chart-head{align-items:flex-start;flex-direction:column;gap:2px}.form-ranking-card{min-height:108px;padding:12px!important}}@media (max-width: 360px){.rider-analysis-date-card .comparison-date-fields{grid-template-columns:minmax(0,1fr)}.rider-analysis-date-card .comparison-date-fields>label,.rider-analysis-date-card .comparison-date-fields input{width:100%;min-width:0}.rider-analysis-date-card .comparison-date-fields>button{grid-column:1}.rider-dashboard-form .form-ranking-grid{grid-template-columns:minmax(0,1fr)}.rider-dashboard-form .form-ranking-card:last-child{grid-column:auto}}.rider-trait-label{display:flex;align-items:center;gap:6px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.rider-trait-label:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--tc);flex:none}.rider-trait-pct{font-size:27px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;color:var(--tc)}.rider-trait-suffix{font-size:11px;font-weight:600;color:var(--muted);margin-left:3px}.rider-trait-card .trait-bar{width:100%;height:7px;border-radius:4px;flex:none}.rider-trait-card .trait-fill{border-radius:4px}.rider-trait-sub{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.rider-trait-na{opacity:.55}.rider-trait-na .rider-trait-pct{color:var(--muted)}.rider-trait-na:hover{opacity:.8}.rider-trait-card.trait-lrace{--tc: #0ca678}.rider-trait-card.trait-ltour{--tc: #7048e8}.rider-trait-card.trait-heat{--tc: #d9480f}.rider-trait-card.trait-cold{--tc: #1c7ed6}.rider-trait-card.cat-worldtour{--tc: #c98a16}.rider-trait-card.cat-proteam{--tc: #1c7ed6}.rider-trait-card.cat-continental{--tc: #0ca678}.rider-trait-card .trait-fill{background:var(--tc)}.race-stage-timeline{display:flex;flex-direction:column}.race-timeline-item{display:grid;grid-template-columns:44px minmax(0,1fr);color:inherit;min-width:0}.race-timeline-item:hover{text-decoration:none}.race-timeline-rail{position:relative;display:flex;justify-content:flex-start;padding-top:16px}.race-timeline-item:not(:last-child) .race-timeline-rail:after{content:"";position:absolute;top:48px;bottom:-16px;left:15px;width:1px;background:var(--border)}.race-timeline-marker{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border:1px solid var(--border);border-radius:50%;background:var(--panel);color:var(--muted);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.race-timeline-item.is-complete .race-timeline-marker{border-color:var(--control-active);background:var(--control-active);color:var(--control-active-text)}.race-timeline-item.is-current .race-timeline-marker{border-color:var(--accent);background:var(--accent);color:#111827;box-shadow:0 0 0 4px var(--accent-soft)}.race-timeline-item.is-cancelled .race-timeline-marker{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 12%,var(--panel));color:var(--bad)}.race-stage-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:0 0 10px;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.race-stage-content{min-width:0}.race-timeline-item:hover .race-stage-card{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));transform:translateY(-1px);box-shadow:0 5px 16px #0f172a12}.race-timeline-item.is-current .race-stage-card{border-color:var(--accent)}.race-timeline-item.is-cancelled .race-stage-card{border-color:color-mix(in srgb,var(--bad) 48%,var(--border))}.race-stage-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.race-stage-route{margin-top:6px;font-size:15px;font-weight:600}.race-stage-info{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:7px;font-size:12px}.race-stage-outcome{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:9px;padding-top:8px;border-top:1px solid var(--border);color:var(--muted);font-size:11px}.race-stage-outcome span:first-child{color:var(--text);font-weight:600}.race-stage-outcome.is-cancelled,.race-stage-outcome.is-cancelled span:first-child{color:var(--bad)}.stage-cancelled-pill{border-color:color-mix(in srgb,var(--bad) 45%,var(--border));color:var(--bad)}.race-stage-profile-thumb{width:190px;height:78px;-o-object-fit:contain;object-fit:contain;border-left:1px solid var(--border);padding-left:16px}@media (max-width: 700px){.race-timeline-item{grid-template-columns:35px minmax(0,1fr)}.race-timeline-marker{width:28px;height:28px}.race-timeline-item:not(:last-child) .race-timeline-rail:after{top:44px;left:13px}.race-stage-card{grid-template-columns:1fr;gap:10px}.race-stage-profile-thumb{width:100%;height:68px;border-left:0;border-top:1px solid var(--border);padding:10px 0 0}}.stage-edition-nav{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;margin-bottom:16px}.stage-edition-nav-label{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.stage-page-header{padding:18px 20px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:6px;background:var(--panel)}.stage-cancellation-notice{display:grid;gap:3px;margin:-4px 0 12px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--bad) 42%,var(--border));border-left:3px solid var(--bad);border-radius:6px;background:color-mix(in srgb,var(--bad) 7%,var(--panel));color:var(--text);font-size:13px}.stage-cancellation-notice strong{color:var(--bad)}.stage-header-grid{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(360px,1.28fr);align-items:center;gap:24px}.stage-header-identity{min-width:0}.stage-race-link{display:inline-flex;align-items:center;margin-bottom:6px;color:var(--muted);font-size:12px;font-weight:600}.stage-race-link:hover{text-decoration:none}.stage-title-line{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap}.stage-title-line h1{margin:0}.stage-date{color:var(--muted);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.stage-header-labels{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:8px}.stage-header-summary{min-width:0;padding-left:22px;border-left:1px solid var(--border)}.stage-header-route{display:grid;grid-template-columns:minmax(0,auto) auto minmax(0,1fr);align-items:baseline;gap:7px;color:var(--text);font-size:16px;font-weight:700}.stage-route-place{min-width:0;overflow-wrap:anywhere}.stage-route-arrow{color:var(--accent);font-weight:800}.stage-header-stats{display:flex;align-items:center;gap:7px 12px;flex-wrap:wrap;margin-top:9px;color:var(--muted);font-size:12px}.stage-page>.bgap-card,#stage-view-panel>.bgap-card{margin-bottom:14px}.stage-support-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;align-items:start;margin-bottom:20px}.stage-support-grid>.card{min-width:0;margin:0}.stage-support-grid>:only-child{grid-column:1 / -1}.finish-panel-card{height:100%}.stage-page>.table-scroll,#stage-view-panel>.table-scroll,#stage-results-panel>.table-scroll,.stage-page .stage-top-col>.table-scroll{border:1px solid var(--border);border-radius:6px;background:var(--panel)}.stage-page>h2,#stage-view-panel>h2,.race-page>h2,.team-page>h2,.rider-main>h2,.rider-side>h2{display:flex;align-items:center;gap:8px}.stage-page>h2:before,#stage-view-panel>h2:before,.race-page>h2:before,.team-page>h2:before,.rider-main>h2:before,.rider-side>h2:before{content:"";width:18px;height:2px;border-radius:2px;background:var(--accent);flex:none}.classification-page .data-panel tbody tr:first-child td:first-child{color:var(--accent);font-weight:700}.rider-page .best-results,.rider-page .team-list,.rider-page .season-results-wrap{border-radius:6px}@media (max-width: 640px){.stage-page-header{padding:15px}.stage-edition-nav{grid-template-columns:1fr;gap:7px}.stage-edition-nav-label{padding-left:2px}.stage-header-route{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:5px 8px}.stage-route-place{grid-column:2}.stage-route-departure{grid-row:1}.stage-route-arrow{grid-column:1;grid-row:1 / 3;align-self:center;transform:rotate(90deg);transform-origin:center;text-align:center}.stage-route-arrival{grid-row:2}.roster-grid{grid-template-columns:1fr}}@media (max-width: 980px){.stage-header-grid{grid-template-columns:1fr;gap:16px}.stage-header-summary{padding:14px 0 0;border-left:0;border-top:1px solid var(--border)}.stage-support-grid{grid-template-columns:1fr}}.heat-up{color:#d9480f}.heat-down{color:#1c7ed6}.heat-mark{margin-left:6px;font-size:.82em;font-weight:700;white-space:nowrap;cursor:help}.heat-badge{display:inline-block;margin-top:2px;padding:1px 8px;border-radius:6px;font-size:11px;font-weight:600;background:#d9480f14;cursor:help}.heat-badge.heat-down{background:#1c7ed614}.cold-strong{color:#1c7ed6}.cold-fades{color:#d9480f}.cold-mark{margin-left:6px;font-size:.82em;font-weight:700;white-space:nowrap;cursor:help}.cold-badge{display:inline-block;margin-top:2px;padding:1px 8px;border-radius:6px;font-size:11px;font-weight:600;background:#1c7ed614;cursor:help}.cold-badge.cold-fades{background:#d9480f14}.traits-table td{vertical-align:middle}.traits-table tbody tr:hover{background:var(--panel-2)}.trait-cell{display:flex;align-items:center;gap:7px;cursor:help}.trait-bar{position:relative;flex:1;min-width:36px;height:6px;border-radius:3px;background:var(--panel-2);overflow:hidden}.trait-fill{display:block;height:100%;border-radius:3px}.trait-pct{font-size:12px;font-variant-numeric:tabular-nums;color:var(--text);min-width:20px;text-align:right}.trait-na{font-size:13px}.trait-lrace .trait-fill{background:#0ca678}.trait-ltour .trait-fill{background:#7048e8}.trait-heat .trait-fill{background:#d9480f}.trait-cold .trait-fill{background:#1c7ed6}.cat-worldtour .trait-fill{background:#c98a16}.cat-proteam .trait-fill{background:#1c7ed6}.cat-continental .trait-fill{background:#0ca678}.trait-th{padding:0}.trait-sort-btn{display:flex;align-items:center;gap:4px;width:100%;padding:10px 12px;background:none;border:none;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.trait-sort-btn:hover,.trait-th-active .trait-sort-btn{color:var(--text)}.trait-sort-arrow{font-size:9px;line-height:1;width:9px;color:var(--accent)}.climbs-table-shell{margin-top:10px}.ranked-table tbody>tr>td:first-child{color:var(--muted);text-align:center;font-weight:650;font-variant-numeric:tabular-nums}.podium-table tbody>tr:nth-child(1)>td:first-child{color:#c98a16;font-weight:800}.podium-table tbody>tr:nth-child(2)>td:first-child{color:#858b94;font-weight:750}.podium-table tbody>tr:nth-child(3)>td:first-child{color:#a26a3d;font-weight:750}.rider-analytics-table td:nth-child(2){min-width:190px}.rider-analytics-table td:last-child{white-space:nowrap}.rider-analytics-table .trait-cell{min-width:82px}.form-rankings-table--expanded{min-width:1260px}.form-rankings-table .form-delta-heading,.form-rankings-table .form-delta-cell{width:116px;text-align:right;font-variant-numeric:tabular-nums}.form-rankings-table .form-sort-heading .trait-sort-btn,.form-rankings-table .form-delta-heading .trait-sort-btn{justify-content:flex-end}.form-rankings-table .form-delta-cell{font-weight:650;white-space:nowrap}.form-rankings-table .form-delta-cell--up{color:var(--good)}.form-rankings-table .form-delta-cell--down{color:var(--bad)}.form-rankings-table .form-delta-cell--flat,.form-rankings-table .form-delta-cell--unavailable{color:var(--muted)}.form-rankings-table .form-rank-movement{margin-inline-start:7px;font-size:.82em;font-weight:700}.form-rankings-table .form-rank-movement--up{color:var(--good)}.form-rankings-table .form-rank-movement--down{color:var(--bad)}.form-rankings-table .form-rank-movement--flat,.form-rankings-table .form-rank-movement--unavailable{color:var(--muted)}.cperf-table td:nth-child(2){min-width:210px}.classification-table td:nth-child(2),.stage-results-table td:nth-child(2),.stage-breakaway-table td:nth-child(2){min-width:190px}.situations-table{min-width:880px}.situations-table td{vertical-align:top;line-height:1.45}.incidents-card:not(.climb-power-section) .data-table-shell{margin-top:5px}.incidents-table td:first-child{min-width:190px}.secondary-predictions-table td:first-child{min-width:220px}.secondary-predictions-table.ranked-table td:first-child{min-width:0}.gc-predictions-table td:nth-child(2){min-width:185px}.ttt-results-table td:last-child{min-width:300px}.climbs-table td:first-child{min-width:180px}@media (max-width: 640px){.data-table-shell{border-radius:7px}.data-table th,.data-table td{padding-left:9px;padding-right:9px}.rider-analytics-table{font-size:11px}.rider-analytics-table td:nth-child(2){min-width:160px}.season-results-wrap:not(.data-panel){border-radius:7px}.mobile-card-table tr{grid-template-columns:42px minmax(0,1fr) minmax(0,1fr)}.mobile-card-table td:first-child{grid-column:1;grid-row:1;padding-top:7px;text-align:center}.mobile-card-table td:nth-child(2){grid-column:2 / 4;grid-row:1;min-width:0}.mobile-card-table td:nth-child(3){grid-column:1 / 4}.mobile-card-table td:nth-child(n+3):before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:7.5px;font-weight:750;letter-spacing:.055em;text-transform:uppercase}.mobile-card-table .pred-bar-cell{min-width:0}.mobile-card-table .pred-bar{max-width:none}.rider-analytics-table.mobile-card-table tr{grid-template-columns:42px repeat(2,minmax(0,1fr))}.rider-analytics-table.mobile-card-table td:nth-child(n+3){grid-column:auto}.rider-analytics-table.mobile-card-table:not(.traits-table) td:nth-child(4),.rider-analytics-table.mobile-card-table.traits-table td:nth-child(3){grid-column:2}.rider-analytics-table.mobile-card-table:not(.traits-table) td:nth-child(5),.rider-analytics-table.mobile-card-table.traits-table td:nth-child(4){grid-column:3}.rider-analytics-table.mobile-card-table .trait-cell{min-width:0}.form-rankings-table.mobile-card-table thead{display:block;overflow-x:auto;scrollbar-width:thin}.form-rankings-table.mobile-card-table thead tr{display:flex;width:-moz-max-content;width:max-content;min-width:100%;padding:0 6px}.form-rankings-table.mobile-card-table thead th:not(.form-sortable-heading){display:none}.form-rankings-table.mobile-card-table thead .form-sortable-heading{display:block;flex:0 0 auto;width:auto!important}.form-rankings-table.mobile-card-table thead .trait-sort-btn{padding:10px 8px}.form-rankings-table--expanded.mobile-card-table td:nth-child(4),.form-rankings-table--expanded.mobile-card-table td:nth-child(5){grid-row:2}.form-rankings-table--expanded.mobile-card-table td:nth-child(3){grid-column:1;grid-row:2}.form-rankings-table--expanded.mobile-card-table td:nth-child(6){grid-column:2;grid-row:3}.form-rankings-table--expanded.mobile-card-table td:nth-child(7){grid-column:3;grid-row:3}.form-rankings-table--expanded.mobile-card-table td:nth-child(8){grid-column:2;grid-row:4}.form-rankings-table--expanded.mobile-card-table td:nth-child(9){grid-column:3;grid-row:4}.form-rankings-table--expanded.mobile-card-table td:nth-child(10){grid-column:1;grid-row:3}.form-rankings-table--expanded.mobile-card-table td:nth-child(11){grid-column:1 / 4;grid-row:5}.form-rankings-table--expanded.mobile-card-table .form-delta-cell{width:auto;text-align:left}.cperf-table.mobile-card-table td:nth-child(5){grid-column:1}.cperf-table.mobile-card-table td:nth-child(7){grid-column:2}.cperf-table.mobile-card-table td:nth-child(8){grid-column:3}.cperf-table.mobile-card-table td:nth-child(4){grid-column:1 / 3}.cperf-table.mobile-card-table td:nth-child(6){grid-column:3}.rider-power-table.mobile-card-table tr{grid-template-columns:42px repeat(2,minmax(0,1fr))}.rider-power-table.mobile-card-table td:nth-child(3),.rider-power-table.mobile-card-table td:last-child{grid-column:1 / 4}.rider-power-table.mobile-card-table td:nth-child(4),.rider-power-table.mobile-card-table td:nth-child(6){grid-column:2}.rider-power-table.mobile-card-table td:nth-child(5),.rider-power-table.mobile-card-table td:nth-child(7){grid-column:3}.rider-power-table.mobile-card-table td:nth-child(8){grid-column:2 / 4}.rider-power-table.mobile-card-table td:nth-child(n+4):nth-child(-n+8){text-align:left}.rider-power-table.mobile-card-table .power-duration-tag{justify-content:flex-start}.rider-climb-table.mobile-card-table{min-width:0}.rider-climb-table.mobile-card-table thead{display:block;overflow-x:auto;scrollbar-width:thin}.rider-climb-table.mobile-card-table thead tr{display:flex;width:-moz-max-content;width:max-content;min-width:100%;padding:0 6px}.rider-climb-table.mobile-card-table thead th{display:block;width:auto;flex:0 0 auto}.rider-climb-table.mobile-card-table thead .trait-sort-btn{padding:10px 8px}.rider-climb-table.mobile-card-table thead .rider-climb-date-sort{padding:10px 8px 10px 0}.rider-climb-table.mobile-card-table tr{grid-template-columns:repeat(2,minmax(0,1fr))}.rider-climb-table.mobile-card-table td:first-child,.rider-climb-table.mobile-card-table td:nth-child(2),.rider-climb-table.mobile-card-table td:nth-child(3){grid-column:1 / 3;grid-row:auto;min-width:0;text-align:left}.rider-climb-table.mobile-card-table td:nth-child(n+4){grid-column:auto}.rider-climb-table.mobile-card-table td:nth-child(9){grid-column:1 / 3}.rider-climb-table.mobile-card-table td:first-child:before,.rider-climb-table.mobile-card-table td:nth-child(2):before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:7.5px;font-weight:750;letter-spacing:.055em;text-transform:uppercase}.incidents-table tr,.secondary-predictions-table:not(.ranked-table) tr{grid-template-columns:repeat(2,minmax(0,1fr))}.incidents-table td:first-child,.incidents-table td:nth-child(2),.secondary-predictions-table:not(.ranked-table) td:first-child{grid-column:1 / 3;grid-row:auto;text-align:left}.incidents-table td:nth-child(3),.secondary-predictions-table:not(.ranked-table) td:nth-child(2){grid-column:1;grid-row:auto}.incidents-table td:nth-child(4),.secondary-predictions-table:not(.ranked-table) td:nth-child(3){grid-column:2}.incidents-table td:empty{display:none}.classification-table td:nth-child(3),.stage-results-table td:nth-child(3){grid-column:2}.classification-table td:last-child,.stage-results-table td:last-child{grid-column:3}.classification-table tr,.stage-results-table tr{grid-template-columns:42px minmax(0,1.45fr) minmax(64px,.55fr)}.stage-breakaway-table tr{grid-template-columns:42px repeat(2,minmax(0,1fr))}.stage-breakaway-table td:nth-child(3){grid-column:2 / 4}.stage-breakaway-table td:nth-child(4){grid-column:2}.stage-breakaway-table td:nth-child(5){grid-column:3}.secondary-predictions-table.ranked-table tr{grid-template-columns:42px minmax(0,1fr) minmax(84px,.55fr)}.secondary-predictions-table.ranked-table td:nth-child(3){grid-column:3;grid-row:1}.ttt-results-table tr{grid-template-columns:42px minmax(0,1fr) auto}.ttt-results-table td:nth-child(3){grid-column:3;grid-row:1;text-align:right}.ttt-results-table td:last-child{grid-column:1 / 4;min-width:0}.gc-predictions-table tr{grid-template-columns:42px repeat(3,minmax(0,1fr))}.gc-predictions-table td:nth-child(2){grid-column:2 / 5}.gc-predictions-table td:nth-child(3){grid-column:2}.gc-predictions-table td:nth-child(4){grid-column:3}.gc-predictions-table td:nth-child(5){grid-column:4}.climbs-table tr{grid-template-columns:repeat(4,minmax(0,1fr))}.climbs-table td:first-child{grid-column:1 / 4;grid-row:1;min-width:0;text-align:left}.climbs-table td:nth-child(2){grid-column:4;grid-row:1}.climbs-table td:first-child:before,.climbs-table td:nth-child(2):before{display:none}.climbs-table td:nth-child(3){grid-column:1}.climbs-table td:nth-child(4){grid-column:2}.climbs-table td:nth-child(5){grid-column:3}.climbs-table td:nth-child(6){grid-column:4}.situations-table,.situations-table tbody{display:block;width:100%;min-width:0}.situations-table thead{display:none}.situations-table tr{display:block;padding:9px 12px 10px;border-bottom:1px solid var(--border)}.situations-table tbody tr:last-child{border-bottom:0}.situations-table td,.situations-table td:first-child,.situations-table td:last-child{display:block;width:100%;min-width:0;height:auto;padding:5px 0;border:0}.situations-table .situ-km{color:var(--text);font-size:12px;font-weight:750}.situations-table td:not(.situ-km):before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:7.5px;font-weight:750;letter-spacing:.055em;text-transform:uppercase}}.power-adjusted-tag{display:inline-flex;align-items:center;margin-left:6px;padding:2px 7px;border:1px dashed var(--border);border-radius:999px;color:var(--muted);font-size:10.5px;font-weight:650;white-space:nowrap;cursor:help}.rider-power-curve-note{margin:8px 0 0;color:var(--muted);font-size:12px}.situation-captured-badge{padding:2px 6px;border:1px solid var(--border);border-radius:4px;color:var(--muted);font-size:10px;white-space:nowrap}.situation-rider-name-row{min-width:0;display:flex;align-items:center;gap:4px}.situation-rider-ambiguity{flex:none;color:var(--muted);font-size:10px}.password-strength{display:grid;gap:4px;font-size:14px}.password-strength meter{width:100%;height:12px}.password-strength p{margin:0}.nav-hamburger{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:7px 9px;cursor:pointer;display:none;flex-direction:column;gap:4px}@media (max-width: 900px){.nav-hamburger{display:inline-flex}}.nav-hamburger span{display:block;width:18px;height:2px;background:var(--text)}.nav-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000073;animation:modalFade .16s ease-out}.nav-drawer{position:fixed;top:0;left:0;height:100%;width:260px;max-width:80vw;display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:var(--panel);border-right:1px solid var(--border);overflow-y:auto;animation:drawerSlideIn .2s ease-out}@keyframes drawerSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (prefers-reduced-motion: reduce){.nav-drawer,.nav-drawer-backdrop{animation:none}}.nav-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.nav-drawer-head .brand{margin:0}.nav-drawer-head .close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:22px;line-height:1;padding:0 4px;border-radius:4px}.nav-drawer-head .close:hover{color:var(--accent);background:var(--panel-2)}.nav-drawer a{color:var(--text);font-weight:500;padding:8px 10px;border-radius:8px}.nav-drawer .nav-drawer-link{display:flex;align-items:center;gap:11px}.nav-drawer a:hover{background:var(--panel-2);text-decoration:none}.nav-drawer a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-drawer .lang-select{align-self:flex-start;margin-top:10px}@media (min-width: 901px){.nav-drawer-backdrop,.nav-drawer{display:none}}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@media (max-width: 640px){.nav-hamburger{width:44px;min-width:44px;min-height:44px;align-items:center;justify-content:center}}:root{--topbar-height: 70px}main{max-width:1440px}:where(a,button,input,select,summary):focus-visible{outline:2px solid var(--accent);outline-offset:3px}main:focus{outline:none}.skip-link{position:fixed;top:10px;left:12px;z-index:150;padding:10px 18px;border-radius:8px;background:var(--text);color:var(--panel);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.nav-drawer{width:300px;max-width:88vw;padding:20px}.nav-drawer .nav-drawer-link{min-height:48px}.nav-drawer-head .close{width:44px;height:44px}.nav-drawer-preferences{display:grid;gap:18px;border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.nav-drawer-preferences label{display:grid;gap:7px;font-size:12px;color:var(--muted)}.nav-drawer-preferences .lang-select{width:100%;margin:0;min-height:44px;font-size:16px}.page-hero,.home-page .card,.roster-card{border-radius:12px}.home-page .card{padding:18px}.home-page .card-row>:last-child{flex-shrink:0}.home-podium{gap:4px}.home-podium-row{min-height:28px;padding:3px 5px}.home-podium-name{min-width:0}.home-podium-gap{white-space:nowrap}.pred-avatar-ph{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.rider-photo-placeholder{display:grid;place-items:center;background:var(--panel-2);color:var(--muted);font-size:32px;font-weight:750}.roster-card:hover{text-decoration:none}.rider-explorer .explorer-primary-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.explorer-primary-filters>input[type=search]{min-width:180px;max-width:320px;flex:1 1 180px;margin-left:auto}.explorer-advanced-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.explorer-advanced-filters>select{width:auto;min-width:120px}.explorer-advanced-filters .explorer-search-select{width:185px;min-width:0}.explorer-advanced-filters .explorer-team-filter{width:240px}.explorer-search-select .ui-field-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.explorer-search-select .ui-input{width:100%}.explorer-search-select .ui-combobox-selected-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explorer-search-select .ui-combobox-selected .ui-combobox-hint{display:none}.explorer-age-filter{display:flex;align-items:center;gap:6px;font-size:13px}.explorer-age-filter input{width:72px;min-width:0}.explorer-filter-toggle{display:none}.rider-dashboard-full{grid-column:1 / -1;min-width:0}.profile-jump-nav{display:flex;gap:6px;overflow-x:auto;white-space:nowrap;padding:0 0 16px}.profile-jump-nav a{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid var(--border);border-radius:8px;background:var(--panel);font-size:12px;font-weight:600;flex:0 0 auto}.profile-jump-nav a:hover{text-decoration:none;border-color:var(--accent)}#rider-form,#rider-power,#rider-climbs{scroll-margin-top:calc(var(--topbar-height) + 16px)}.cal-controls button,.cal-monthyear{min-height:42px}.cal-monthyear{align-items:center}.race-stage-title{gap:8px 12px}.race-stage-card{border-radius:12px}.race-stage-outcome.is-cancelled{flex-wrap:wrap}.classification-page h1{line-height:1.3}.classification-page h1>.muted{display:block;margin:6px 0 0!important;font-weight:500}.rider-power-chart{min-width:0}.rider-power-modal-head .close,.modal-head .close{min-width:44px;min-height:44px}.rider-power-modal .rider-power-modal-benchmarks{display:grid}.rider-power-modal .rider-power-benchmark{min-width:0}@media (min-width: 641px){.rider-explorer .data-table{font-size:13px}.rider-explorer .data-table thead th{font-size:10.5px}}@media (max-width: 900px){.nav-hamburger{min-width:44px;min-height:44px;justify-content:center;align-items:center}}@media (min-width: 901px){.nav-hamburger{display:none}}@media (max-width: 640px){:root{--topbar-height: 64px}.app-topbar{min-height:var(--topbar-height);padding:10px 14px;gap:10px}.app-topbar .header-language-controls{display:none}.app-topbar .global-search-slot{max-width:none}.global-search-input{font-size:16px}.global-search-panel{top:var(--topbar-height);left:14px;right:14px;max-height:calc(100dvh - 78px)}.global-search-title{white-space:normal;line-height:1.4}main{padding:18px 14px 32px}.page-hero{padding:16px}.analytics-workspace,.rider-directory-page{gap:16px}.analytics-header{gap:10px}.analytics-browse-link{padding:7px 10px;min-height:36px}.analysis-date-controls .comparison-segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:100%}.analysis-date-controls .comparison-segmented>button{min-width:0;min-height:44px;white-space:normal}.analysis-date-controls .comparison-date-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%}.analysis-date-controls .comparison-date-fields>label,.analysis-date-controls .comparison-date-fields input{min-width:0;width:100%}.analysis-date-controls .comparison-date-fields input{box-sizing:border-box}.analysis-date-controls .comparison-date-fields>button{min-height:44px;width:100%}.rider-explorer .riders-filter-panel{padding:12px}.rider-explorer .explorer-primary-filters{gap:10px;margin-bottom:0}.explorer-primary-filters>input[type=search]{min-width:0;flex:1 1 140px;max-width:none;margin:0}.explorer-filter-toggle{display:inline-flex;gap:6px;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;font:inherit;font-size:12px;font-weight:600;border:1px solid var(--border);border-radius:7px;color:var(--text);background:var(--panel)}.explorer-filter-toggle[aria-expanded=true]{background:var(--accent-soft);border-color:var(--accent)}.explorer-filter-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}.explorer-filter-toggle>span{color:var(--text);background:var(--accent-soft);border-radius:4px;padding:0 4px}.explorer-advanced-filters{display:none}.explorer-advanced-filters.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-top:12px;margin-top:12px;border-top:1px solid var(--border)}.explorer-advanced-filters>select{min-width:0;width:100%;max-width:none}.explorer-advanced-filters .explorer-search-select,.explorer-advanced-filters .explorer-team-filter{width:100%}.explorer-search-select .ui-input,.explorer-search-select .ui-combobox-selected{min-height:44px;font-size:16px}.explorer-age-filter{grid-column:1 / -1}.explorer-age-filter input{flex:1;width:0}.explorer-advanced-filters>label{grid-column:1 / -1;justify-content:space-between}.rider-explorer .form-input{min-height:44px;font-size:16px}.rider-explorer .mobile-card-table{font-size:13px}.mobile-card-table td:nth-child(n+3):before{font-size:9px;letter-spacing:.025em}.mobile-card-table .pred-rider-name>a{font-size:13px;line-height:1.4}.mobile-card-table .pred-rider-team{font-size:11px}.rider-header.rider-header-solo{padding:16px;text-align:left}.rider-header-solo .rider-identity{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:start}.rider-header-solo .rider-photo{width:72px;height:90px;border-radius:8px}.rider-header-solo .rider-bio{text-align:left}.rider-header-solo .rider-bio:only-child{grid-column:1 / -1}.rider-header-solo .rider-bio h1{justify-content:flex-start;font-size:21px;line-height:1.2;flex-wrap:wrap;gap:5px}.rider-header-solo .rider-vitals{justify-content:flex-start;gap:5px}.rider-header-solo .rider-vitals>span{min-width:0;padding:5px 7px;flex:1}.rider-header-solo .rider-current-team{align-items:flex-start;line-height:1.4}.rider-header-solo .rider-socials{justify-content:flex-start!important}.rider-social{padding:8px 9px;min-height:30px}.best-race-name{white-space:normal;line-height:1.4}.profile-jump-nav a{min-height:42px}.calendar-page .cal-controls{position:sticky;top:var(--topbar-height);z-index:20;display:grid;grid-template-columns:1fr auto 1fr;gap:6px;padding:8px;background:var(--panel);border-radius:10px;box-shadow:0 3px 8px #00000008}.calendar-page .cal-monthyear{grid-column:1 / -1;grid-row:1;min-width:0;min-height:30px}.calendar-page .cal-controls>button:first-child{grid-column:1;grid-row:2}.calendar-page .cal-controls>button:nth-child(3){grid-column:3;grid-row:2}.calendar-page .cal-controls>button:last-child{grid-column:2;grid-row:2}.calendar-page .cal-agenda-day{scroll-margin-top:176px}.cal-agenda-more{min-height:42px}.cal-agenda-day .day-list a{line-height:1.4}.home-page .card{padding:16px}.home-page .home-active-card-header{gap:6px}.home-page .home-podium-row{min-height:32px}.rider-power-table.mobile-card-table tr{grid-template-columns:repeat(6,minmax(0,1fr));padding:12px 8px}.rider-power-table.mobile-card-table td:nth-child(2){grid-column:2 / 7}.rider-power-table.mobile-card-table td:nth-child(3){grid-column:1 / 7}.rider-power-table.mobile-card-table td:nth-child(4),.rider-power-table.mobile-card-table td:nth-child(7){grid-column:1 / 3}.rider-power-table.mobile-card-table td:nth-child(5),.rider-power-table.mobile-card-table td:nth-child(8){grid-column:3 / 5}.rider-power-table.mobile-card-table td:nth-child(6),.rider-power-table.mobile-card-table td:last-child{grid-column:5 / 7}.rider-power-table.mobile-card-table td:nth-child(4),.rider-power-table.mobile-card-table td:nth-child(5),.rider-power-table.mobile-card-table td:nth-child(6){grid-row:3}.rider-power-table.mobile-card-table td:nth-child(7),.rider-power-table.mobile-card-table td:nth-child(8),.rider-power-table.mobile-card-table td:last-child{grid-row:4}.rider-power-table.mobile-card-table .power-duration-tag{font-size:12px;padding:5px 7px;min-width:0;white-space:nowrap}.rider-power-table.mobile-card-table .power-curve-open{min-height:38px}.rider-power-card-head h2{font-size:20px}.rider-power-card-head{gap:12px;padding:16px}.rider-power-modal .rider-power-modal-benchmarks{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.rider-power-modal .rider-power-benchmark{padding:7px 8px}.rider-power-modal .rider-power-benchmark strong{font-size:13px}.rider-power-modal-rider{align-items:flex-start}.comparison-rider-identity strong{white-space:normal}.mobile-card-table tr,.responsive-season-table tr,.stage-predictions-table tr{-moz-column-gap:7px;column-gap:7px;row-gap:2px;padding:8px 7px}.mobile-card-table td,.mobile-card-table td:first-child,.mobile-card-table td:last-child,.responsive-season-table td,.responsive-season-table td:first-child,.responsive-season-table td:last-child,.stage-predictions-table td,.stage-predictions-table td:first-child{padding:3px 5px;line-height:1.28}.mobile-card-table td:nth-child(n+3):before,.responsive-season-table td:not(:nth-child(4)):before,.stage-predictions-table .pred-bar-cell:before{margin-bottom:1px;font-size:8px;letter-spacing:.035em;line-height:1.2}.mobile-card-table td:first-child{padding-top:4px}.comparison-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-bottom:8px}.comparison-table td{display:block;width:auto;min-width:0;padding:7px 9px;line-height:1.28}.comparison-table td:first-child{grid-column:1 / -1}.comparison-table td:before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:8px;font-weight:750;letter-spacing:.035em;line-height:1.2;text-transform:uppercase}.comparison-table td>small{display:block;margin-top:2px}.climb-power-card>.table-scroll{overflow:visible}.climb-power-table tr,.climb-power-table .climb-group-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));-moz-column-gap:6px;column-gap:6px;row-gap:2px;padding:8px 10px}.climb-power-table td,.climb-power-table td:first-child,.climb-power-table td:not(:first-child){min-width:0;padding:3px 2px;line-height:1.25;text-align:center}.climb-power-table .climb-primary-cell,.climb-power-table .climb-group-row .climb-primary-cell,.climb-power-table .climb-rider-row .climb-primary-cell{grid-column:1 / -1;padding:1px 0 6px;text-align:left}.climb-power-table td:not(.climb-primary-cell):before{margin-bottom:1px;font-size:8px;letter-spacing:.035em;line-height:1.2}.climb-power-table tr>td:nth-child(n+2):nth-child(-n+5){grid-column:auto}.climb-power-table tr>td:nth-child(6){display:flex;grid-column:1 / -1;align-items:baseline;justify-content:flex-start;gap:7px;padding-top:4px;text-align:left}.climb-power-table tr>td:nth-child(6):before{display:inline;flex:none;margin:0}.climb-group-title{justify-content:flex-start;gap:7px}.climb-group-title strong{font-size:14px}.climb-rider-identity{align-items:flex-start;flex-wrap:wrap;row-gap:3px}.climb-rider-identity a{font-size:13px;line-height:1.25}.climb-rider-identity small{margin-top:1px;font-size:10.5px;line-height:1.25}.climb-rider-identity .pill{margin-left:0!important}.itt-pacing-table.mobile-card-table tr{grid-template-columns:34px repeat(3,minmax(0,1fr))}.itt-pacing-table.mobile-card-table td:nth-child(2){grid-column:2 / 5}.itt-pacing-table.mobile-card-table td:nth-child(3),.itt-pacing-table.mobile-card-table td:nth-child(5){grid-column:1 / 3}.itt-pacing-table.mobile-card-table td:nth-child(4),.itt-pacing-table.mobile-card-table td:nth-child(6){grid-column:3 / 5}.itt-pacing-table.mobile-card-table td:nth-child(n+3){grid-row:auto}.situations-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;padding:9px 11px}.situations-table td,.situations-table td:first-child,.situations-table td:last-child{width:auto;padding:3px 0;line-height:1.35}.situations-table .situ-km{display:flex;grid-column:1 / -1;align-items:baseline;gap:7px}.situations-table .situ-km:before,.situations-table td:not(.situ-km):before{display:block;margin-bottom:1px;color:var(--muted);content:attr(data-label);font-size:8px;font-weight:750;letter-spacing:.035em;line-height:1.2;text-transform:uppercase}.situations-table .situ-km:before{display:inline;margin:0}.itt-matrix-shell{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.itt-matrix-table th,.itt-matrix-table td{min-width:72px}.itt-matrix-table tbody th{min-width:52px}}@media (max-width: 360px){.comparison-chips,.comparison-sources{grid-template-columns:1fr}.comparison-rider-identity strong{font-size:12px}.analysis-page .comparison-chip button{min-width:36px;height:36px}}.quiet-button{min-height:44px;padding:8px 12px;border:0;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}.quiet-button:hover:not(:disabled){color:var(--text);background:var(--accent-soft)}.quiet-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.quiet-button:disabled{opacity:.4;cursor:not-allowed}svg[data-chart-interactive]{touch-action:pan-y pinch-zoom;-moz-user-select:none;user-select:none;-webkit-user-select:none}svg[data-chart-interactive=scroll]{touch-action:pan-x pan-y pinch-zoom}svg[data-chart-interactive]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}.auth-page{display:flex;justify-content:center;padding:32px 16px 64px}.auth-shell{min-height:100vh;padding-top:32px}.auth-brand{display:flex;justify-content:center;gap:10px}.auth-page>.ui-card{width:100%;max-width:440px}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px}.auth-actions .ui-button{flex:0 0 auto}.auth-link,.ui-card-foot a{color:var(--accent);text-decoration:none;font-weight:600}.auth-link:hover,.ui-card-foot a:hover{text-decoration:underline}.header-account-link{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.header-account-link:hover{border-color:var(--accent)}.auth-page-wide{flex-direction:column;align-items:center;gap:18px}.auth-page-wide>.ui-card{max-width:680px}.team-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.team-list-item{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;padding:12px 0;border-bottom:1px solid var(--border)}.team-list-item:last-child{border-bottom:none}.team-list-name{color:var(--text);font-weight:700;text-decoration:none}.team-list-name:hover{color:var(--accent)}.team-list-meta{color:var(--muted);font-size:12px}.member-table{width:100%;border-collapse:collapse;font-size:14px}.member-table th{padding:0 0 8px;border-bottom:1px solid var(--border);color:var(--muted);font-size:12px;text-align:left}.member-table td{padding:12px 8px 12px 0;border-bottom:1px solid var(--border);vertical-align:middle}.member-table tr:last-child td{border-bottom:none}.member-table-actions{text-align:right}.member-name{display:block;font-weight:600}.member-email{display:block;color:var(--muted);font-size:12px}.role-select .ui-field-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.role-select{position:relative;gap:0}.role-select .ui-input{min-height:36px;font-size:14px}@media (max-width: 640px){.member-table.mobile-card-table tr{grid-template-columns:minmax(0,1fr) auto;padding:10px 4px}.member-table.mobile-card-table td:first-child{grid-column:1 / 3;grid-row:1;text-align:left}.member-table.mobile-card-table td:nth-child(2){grid-column:1;grid-row:2}.member-table.mobile-card-table td:nth-child(3){grid-column:2;grid-row:2;align-self:center;text-align:right}.member-table.mobile-card-table td:nth-child(2)[data-label]:before{display:block;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.025em;text-transform:uppercase;content:attr(data-label)}}.impersonation-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding:8px 14px;background:var(--bad);color:#fff;font-size:13px;font-weight:700;text-align:center}.impersonation-banner button{padding:3px 10px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:transparent;color:inherit;font:inherit;cursor:pointer}.impersonation-banner button:hover{background:#ffffff26}.header-account-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;text-decoration:none;border:2px solid transparent;transition:border-color .12s ease}.header-account-avatar:hover,.header-account-avatar:focus-visible{border-color:var(--accent);outline:none}.account-page{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:start;gap:18px;width:min(100%,920px);margin:0 auto;padding-top:42px}.account-page>.ui-card{width:auto;max-width:none}.account-summary-card,.account-billing-card,.account-invitations-card,.account-session-card{grid-column:1 / -1}.account-profile-card{grid-column:1;grid-row:2}.account-teams-card{grid-column:2;grid-row:2}.account-summary-card{position:relative;border-color:color-mix(in srgb,var(--accent) 26%,var(--border));background:linear-gradient(120deg,var(--accent-soft),transparent 42%),var(--panel)}.account-summary-card:before{position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent);content:""}.account-summary-card .ui-card-body{padding:22px 24px}.account-identity{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.account-summary-card .ui-avatar{width:46px;height:46px;font-size:.9rem;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-soft) 72%,transparent)}.account-identity-text{min-width:0;flex:1 1 auto}.account-name{margin:0;font-size:1.25rem;line-height:1.2;overflow-wrap:anywhere}.account-email{margin:2px 0 0;color:var(--muted);font-size:.875rem;overflow-wrap:anywhere}.account-plan-badge{flex:none;border:1px solid color-mix(in srgb,var(--accent) 44%,var(--border));border-radius:999px;padding:5px 11px;background:color-mix(in srgb,var(--accent-soft) 64%,var(--panel));font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:color-mix(in srgb,var(--accent) 72%,var(--text))}.account-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin:20px 0 0;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--border) 82%,transparent)}.account-details>div{min-width:0;padding:9px 11px;border-radius:8px;background:color-mix(in srgb,var(--panel-2) 52%,transparent)}.account-details dt{margin-bottom:3px;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.account-details dd{margin:0;font-size:.875rem;font-weight:600;overflow-wrap:anywhere}.account-profile-card .ui-card-body,.account-teams-card .ui-card-body{min-height:100%}.account-session-card .ui-card-body{padding-top:12px;padding-bottom:14px}.account-team-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}.account-team-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:color-mix(in srgb,var(--panel-2) 32%,var(--panel))}.account-team-name{font-weight:650}.account-team-role{color:var(--muted);font-size:.8125rem}@media (max-width: 760px){.account-page{grid-template-columns:minmax(0,1fr);padding-top:24px}.account-summary-card,.account-profile-card,.account-billing-card,.account-invitations-card,.account-teams-card,.account-session-card{grid-column:1;grid-row:auto}}@media (max-width: 480px){.account-page{gap:14px;padding-top:18px}.account-summary-card .ui-card-body{padding:18px}.account-details{grid-template-columns:1fr}.account-plan-badge{margin-left:60px}}@media (max-width: 640px){.rider-power-error-table-scroll{overflow-x:visible}.rider-power-error-table.mobile-card-table tr{grid-template-columns:repeat(3,minmax(0,1fr));padding:8px 6px}.rider-power-error-table.mobile-card-table tbody th{display:block;grid-column:1 / -1;padding:2px 5px 4px;border-bottom:0;text-align:left}.rider-power-error-table.mobile-card-table td,.rider-power-error-table.mobile-card-table td:nth-child(2),.rider-power-error-table.mobile-card-table td:nth-child(3){grid-column:auto;grid-row:auto;padding:3px 5px;text-align:left;white-space:normal}.rider-power-error-table.mobile-card-table td:before{display:block;margin-bottom:1px;color:var(--muted);content:attr(data-label);font-size:8px;font-weight:750;letter-spacing:.035em;text-transform:uppercase}}.rider-heading-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:12px}.rider-header .rider-heading-row h1{margin-bottom:0;min-width:0}.profile-follow-control{flex:0 0 auto}.profile-follow-action .ui-button-label{display:inline-flex;align-items:center;justify-content:center;gap:6px}.profile-follow-action svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.profile-follow-star{width:15px;height:15px}.profile-follow-chevron{width:12px;height:12px;margin-left:1px}.profile-follow-action.is-following{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.profile-follow-action.is-following .profile-follow-star{fill:currentColor}.profile-follow-dialog{max-width:400px;max-height:calc(100dvh - 32px)}.profile-follow-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.profile-follow-dialog-header h2{margin:0;color:var(--text);font-size:17px;font-weight:700;letter-spacing:normal;text-transform:none;line-height:1.3}.profile-follow-dialog .profile-follow-hint{margin:12px 0;color:var(--muted);font-size:13px;line-height:1.5}.profile-follow-dialog-footer{display:flex;justify-content:flex-end;margin-top:16px}@media (max-width: 640px){.rider-heading-row{gap:10px}.profile-follow-dialog{padding:16px}}.team-rankings .team-rankings-as-of{display:flex;align-items:center;gap:6px;font-size:13px;white-space:nowrap}.team-roster-table .flag{margin-right:5px}.team-rankings-meta{flex-wrap:wrap;align-items:center;gap:6px 16px;margin:18px 0 14px;line-height:1.5;font-size:12px}.team-rankings-empty{margin:24px 0;text-align:center}.team-rank-cell,.team-number-cell{text-align:right;font-variant-numeric:tabular-nums}.team-value-cell{font-weight:600;white-space:nowrap}.team-identity-cell{display:grid;gap:2px;min-width:0}.team-identity-name{display:inline-flex;align-items:center;gap:6px;min-width:0;color:var(--text);font-weight:650}a.team-identity-name:hover{color:var(--accent)}.team-rankings-table .team-identity-heading{min-width:220px}.team-pager{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:16px}.team-pager-position{min-width:70px;font-size:13px;font-variant-numeric:tabular-nums;text-align:center}@media (min-width: 641px){.team-rankings-table{min-width:830px}}.team-page{display:grid;gap:14px;min-width:0}.team-page .rider-header.team-hero{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);margin-bottom:10px}.team-page .rider-header.team-hero.rider-header-solo{grid-template-columns:minmax(0,1fr)}.team-name-history{min-width:0}.team-name-timeline{display:grid;gap:0;margin:0;padding:0;list-style:none;border-left:2px solid var(--border)}.team-name-timeline li{position:relative;display:grid;grid-template-columns:82px minmax(0,1fr);gap:10px;padding:4px 0 4px 14px;color:var(--muted);font-size:12px;line-height:1.4}.team-name-timeline li:before{content:"";position:absolute;top:10px;left:-5px;width:8px;height:8px;border-radius:50%;background:var(--border)}.team-name-timeline li.is-current{color:var(--text);font-weight:650}.team-name-timeline li.is-current:before{background:var(--accent)}.team-name-years{font-variant-numeric:tabular-nums;white-space:nowrap}.team-name-label{overflow-wrap:anywhere}.team-page .comparison-segmented button{border:1px solid transparent;border-radius:7px;background:transparent;font-size:11px;font-weight:600;padding:7px 11px;color:var(--muted);white-space:nowrap}.team-page .comparison-segmented button[aria-pressed=true]{color:var(--text);border-color:var(--border);background:var(--panel);box-shadow:0 1px 3px #00000009}.team-page .comparison-date-fields>button{height:36px;padding:0 14px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);color:var(--text);font:inherit;font-size:11px;font-weight:700;white-space:nowrap}.team-analysis{display:grid;gap:14px;min-width:0}.team-analysis .rider-analysis-date-card{margin-bottom:0}.team-roster-heading{align-items:flex-start}.team-roster-heading p{text-align:left}.team-season-tabs{margin:0 0 8px}.team-roster-future-description{margin:8px 0 14px;font-size:12px;line-height:1.5}.team-future-form-rank{display:block;font-size:11px}.team-future-roster-table .team-future-origin{min-width:0;max-width:240px;white-space:normal;overflow-wrap:anywhere}.team-roster-empty{margin:20px 0 8px;text-align:center}.team-roster-table .team-number-heading,.team-roster-table .team-number-cell{text-align:right}.team-roster-table td:first-child{min-width:220px}.team-roster-table .team-roster-action{text-align:right;white-space:nowrap}.modal-card.team-roster-points-modal{max-width:940px}.team-roster-points-rider{margin:4px 0 0;color:var(--muted)}.team-roster-points-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.team-roster-points-summary dt{color:var(--muted);font-size:12px}.team-roster-points-summary dd{margin:4px 0 0;font-size:22px;font-weight:750;font-variant-numeric:tabular-nums}.team-roster-points-help{margin:0 0 16px;font-size:13px}.team-roster-points-table td,.team-roster-points-table th{white-space:normal}.team-roster-points-table .team-roster-points-race{min-width:0;overflow-wrap:anywhere}.team-roster-points-race .team-result-national{display:inline-block;margin:4px 0 0 6px}.team-roster-points-table .team-number-heading,.team-roster-points-table .team-number-cell{text-align:right}.team-roster-points-table .team-points-negative{color:var(--bad)}.team-roster-points-table .team-points-positive{color:var(--good)}@media (max-width: 640px){.team-roster-table.mobile-card-table .team-roster-action{grid-column:1 / -1;grid-row:3;text-align:right}.team-roster-table.mobile-card-table .team-roster-action:before{display:none}.modal-card.team-roster-points-modal{padding:14px}.team-roster-points-table.mobile-card-table tr{grid-template-columns:repeat(2,minmax(0,1fr))}.team-roster-points-table.mobile-card-table td:first-child{grid-column:1 / -1;grid-row:1;padding-top:0;text-align:left}.team-roster-points-table.mobile-card-table td:nth-child(n+2){grid-column:auto;grid-row:auto;text-align:left}.team-roster-points-table.mobile-card-table td:before{display:block;content:attr(data-label);color:var(--muted);font-size:10px;font-weight:700;margin-bottom:2px}.team-roster-points-table.mobile-card-table td:first-child:before{display:none}}@media (max-width: 380px){.team-roster-points-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.team-roster-points-summary>div:last-child{grid-column:1 / -1}}@media (max-width: 900px){.team-page .rider-header.team-hero{grid-template-columns:minmax(0,1fr)}}@media (max-width: 720px){.team-name-timeline{text-align:left}.team-roster-heading{flex-direction:column}}@media (max-width: 640px){.team-results .team-pager{flex-wrap:wrap;gap:6px}.team-results .team-pager-position{min-width:60px}.team-results .team-pager [data-boundary]{display:none}.team-rankings-meta{flex-direction:column;align-items:flex-start;gap:8px}.team-rankings .explorer-country-filter{grid-column:1 / -1}.team-rankings-table.mobile-card-table tr{grid-template-columns:42px repeat(2,minmax(0,1fr))}.team-rankings-table.mobile-card-table .team-value-cell{grid-column:2 / -1;grid-row:2}.team-rankings-table.mobile-card-table .team-change-cell--90d{grid-column:2;grid-row:3}.team-rankings-table.mobile-card-table .team-change-cell--6m{grid-column:3;grid-row:3}.team-rankings-table.mobile-card-table .team-change-cell--1y{grid-column:2;grid-row:4}.team-rankings-table.mobile-card-table .team-change-cell--2y{grid-column:3;grid-row:4}.team-rankings-table.mobile-card-table td:nth-child(n+3){text-align:left}.team-rankings-table.mobile-card-table .form-delta-cell{width:auto}.team-rankings-table.mobile-card-table .team-identity-heading{min-width:0}.team-roster-table.mobile-card-table thead{display:none}.team-roster-table.mobile-card-table tr{grid-template-columns:repeat(3,minmax(0,1fr))}.team-roster-table.mobile-card-table td:first-child{grid-column:1 / 4;grid-row:1;min-width:0;padding-top:0;text-align:left}.team-roster-table.mobile-card-table td:nth-child(2){grid-column:1;grid-row:2}.team-roster-table.mobile-card-table td:nth-child(3){grid-column:2;grid-row:2}.team-roster-table.mobile-card-table td:nth-child(4){grid-column:3;grid-row:2}.team-roster-table.mobile-card-table td:nth-child(n+2){text-align:left}.team-roster-table.mobile-card-table td:nth-child(2):before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:7.5px;font-weight:750;letter-spacing:.055em;text-transform:uppercase}.team-roster-table.mobile-card-table .form-delta-cell{width:auto}.team-roster-table td:first-child{min-width:0}.team-page .rider-dashboard-panel{padding:14px}}@media (max-width: 640px){.team-future-roster-table.mobile-card-table tr{grid-template-columns:repeat(2,minmax(0,1fr))}.team-future-roster-table.mobile-card-table td:first-child{grid-column:1 / -1}.team-future-roster-table.mobile-card-table td:nth-child(n+2){grid-column:auto;grid-row:auto;text-align:left}.team-future-roster-table.mobile-card-table td:nth-child(n+2):before{display:block;margin-bottom:2px;color:var(--muted);content:attr(data-label);font-size:10px;font-weight:700;letter-spacing:normal;text-transform:none}}.team-tab-panel,.team-results>.ui-table-pending-content{display:grid;gap:14px;min-width:0}.team-results-panel .rider-analysis-date-card{margin-bottom:0}.team-results-span{margin:12px 0;text-align:center}.team-results-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.team-results-stat{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.team-results-stat-label{color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.team-results-stat-value{color:var(--text);font-size:22px;font-weight:750;font-variant-numeric:tabular-nums;line-height:1.1}.team-results-stat-detail{color:var(--muted);font-size:11px;line-height:1.35;overflow-wrap:anywhere}.team-results-empty{margin:16px 0 6px;text-align:center}.team-results-note{margin:10px 0 0;font-size:11px;line-height:1.45}.team-results-table .team-number-heading{text-align:right}.team-results-date{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.team-results-race{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0}.team-results-race-name{color:var(--text);font-weight:650;overflow-wrap:anywhere}.team-results-race-name:hover{color:var(--accent)}.team-results-race-name .flag{margin-right:5px}.team-results-race-detail{color:var(--muted);font-size:12px;white-space:nowrap}.team-results-rider-cell,.team-results-best{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 7px;max-width:100%;min-width:0}.team-results-rank{color:var(--muted);font-size:.86em;font-weight:650;font-variant-numeric:tabular-nums}.team-result-kinds{display:inline-flex;flex-wrap:wrap;gap:4px;max-width:100%}.team-result-kind{--kind-color: var(--muted);display:inline-flex;align-items:center;gap:5px;padding:1px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--text);font-size:11px;font-weight:650;line-height:1.6;white-space:nowrap;max-width:100%}.team-result-kind:before{width:7px;height:7px;flex:none;border-radius:50%;background:var(--kind-color);content:""}.team-result-kind--one_day{--kind-color: var(--series-1)}.team-result-kind--stage{--kind-color: var(--series-2)}.team-result-kind--ttt{--kind-color: var(--series-5)}.team-result-kind--gc{--kind-color: var(--series-3)}.team-result-kind--points{--kind-color: var(--series-4)}.team-result-kind--kom{--kind-color: var(--series-6)}.team-result-kind--youth:before{background:var(--panel);box-shadow:inset 0 0 0 1.5px var(--muted)}.team-result-kind--teams{--kind-color: var(--text)}.team-result-national,.team-result-status{display:inline-block;padding:0 6px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.03em;line-height:1.7;text-transform:uppercase;white-space:nowrap;max-width:100%}.team-result-national{background:var(--accent-soft);color:var(--text)}.team-result-status{border:1px dashed var(--border);color:var(--muted)}.team-results-team-name{color:var(--text);font-weight:600}@media (min-width: 641px){.team-results-table .team-results-identity{min-width:220px}.team-stage-races-table{min-width:980px}}.team-uci-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.team-uci-block{min-width:0}.team-uci-block h3{margin:0 0 10px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.team-uci-bars{display:grid;gap:8px;margin:0;padding:0;list-style:none}.team-uci-bar-row{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(0,1fr) auto;align-items:center;gap:10px;font-size:12px}.team-uci-bar-label{min-width:0;overflow-wrap:anywhere}.team-uci-bar-track{position:relative;display:block;height:8px;overflow:hidden;border-radius:999px;background:var(--panel-2)}.team-uci-bar-fill{display:block;height:100%;border-radius:inherit;background:var(--accent)}.team-uci-bar-row.is-negative .team-uci-bar-fill,.team-uci-bar-track.is-negative .team-uci-bar-fill{background:var(--bad)}.team-uci-bar-value{font-variant-numeric:tabular-nums;font-weight:650;text-align:right;white-space:nowrap}.team-uci-rider-points{display:flex;align-items:center;justify-content:flex-end;gap:10px}.team-uci-rider-points .team-uci-bar-track{flex:1 1 auto;max-width:160px}.team-uci-rider-points .team-uci-bar-value{min-width:48px}@media (max-width: 900px){.team-results-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.team-uci-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 640px){.team-results-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.team-results-stat-value{font-size:19px}.team-results-table.mobile-card-table tr{grid-template-columns:repeat(3,minmax(0,1fr))}.team-results-table.mobile-card-table td,.team-results-table.mobile-card-table td:first-child,.team-results-table.mobile-card-table td:nth-child(2),.team-results-table.mobile-card-table td:nth-child(3){grid-column:auto;grid-row:auto;min-width:0;padding-top:3px;text-align:left}.team-results-table.mobile-card-table td.team-results-identity{grid-column:1 / -1;order:-1}.team-results-table.mobile-card-table td:not(.team-results-identity):before{display:block;margin-bottom:1px;color:var(--muted);content:attr(data-label);font-size:8px;font-weight:750;letter-spacing:.035em;line-height:1.2;text-transform:uppercase}.team-results-table.mobile-card-table td.team-results-identity:before{display:none}.team-results-table.mobile-card-table .team-results-date{white-space:normal}.team-results-table.mobile-card-table td.team-results-wide{grid-column:span 2}.team-results-table.mobile-card-table .team-result-national,.team-results-table.mobile-card-table .team-result-status,.team-results-table.mobile-card-table .team-result-kind{white-space:normal;overflow-wrap:anywhere}.team-uci-rider-table.mobile-card-table tr{grid-template-columns:70px minmax(0,1fr)}.team-uci-rider-points{justify-content:flex-start}.team-uci-rider-points .team-uci-bar-track{max-width:none}.team-uci-bar-row{grid-template-columns:minmax(0,1fr) auto}.team-uci-bar-row .team-uci-bar-track{grid-column:1 / -1;grid-row:2}}.following-actions{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.following-actions .ui-field{min-width:180px}.following-search-results{list-style:none;padding:0;border:1px solid var(--border);border-radius:12px}.following-search-results li{display:flex;gap:10px;align-items:center;padding:10px}.following-search-results li>span:not(.pred-avatar-ph){flex:1;min-width:0;overflow-wrap:anywhere}.notification-bell{display:inline-flex;gap:3px;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--text);flex-shrink:0}.notification-bell svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.7;fill:none}.notification-bell-count{background:var(--accent);color:var(--accent-contrast);padding:2px 5px;border-radius:20px;font-size:.72rem}.notification-preferences{border:1px solid var(--border);border-radius:12px;padding:16px;min-width:0}.notification-preference{display:flex;align-items:center;gap:10px;min-height:44px}.notification-preference small{color:var(--muted)}.page-stack.following-overview{display:grid;gap:18px;min-width:0}.following-page-header,.following-page-header>div{display:flex;align-items:center;gap:12px}.following-page-header{justify-content:space-between}.following-page-header h1{margin:0;font-size:1.4rem;line-height:1.3}.following-count{color:var(--muted);font-size:.78rem;white-space:nowrap}.following-overview-toolbar{display:grid;grid-template-columns:minmax(160px,220px) minmax(200px,420px);align-items:end;gap:16px}.following-overview-toolbar .ui-field,.following-add-search{min-width:0}.following-add-search{position:relative}.following-search-popover{position:absolute;inset:calc(100% + 6px) 0 auto;z-index:15;max-height:340px;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 28px #0002}.following-search-popover>p{margin:12px;color:var(--muted);font-size:.8rem}.following-search-popover .following-search-results{margin:0;border:0}.following-search-popover .following-search-results li{font-size:.85rem;padding:8px 10px}.following-list-meta{display:flex;align-items:center;margin-bottom:10px;color:var(--muted);font-size:.75rem}.following-riders-shell{overflow:visible}.following-riders-table{table-layout:fixed}.following-riders-table th:first-child{width:33%}.following-riders-table th:nth-child(2){width:14%}.following-riders-table th:nth-child(3){width:10%}.following-riders-table th:nth-child(4){width:16%}.following-riders-table th:nth-child(5){width:18%}.following-riders-table th:last-child{width:76px}.following-riders-table th:not(:first-child),.following-riders-table td:not(:first-child){text-align:right}.following-riders-table th{white-space:normal;font-size:10px;letter-spacing:.025em}.following-riders-table td{height:74px;font-size:.85rem}.following-rider-identity{display:flex;align-items:center;min-width:0;gap:10px}.following-rider-identity>div{min-width:0;display:grid;gap:4px}.following-rider-identity .pred-avatar,.following-rider-identity .pred-avatar-ph{flex-shrink:0;width:34px;height:34px;border-radius:50%}.following-rider-name{font-size:.85rem;color:var(--text);font-weight:600;line-height:1.3;overflow-wrap:anywhere}.following-rider-team{display:block;font-size:.72rem;font-weight:400;line-height:1.35;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.following-metric-value,.following-change{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.following-change.is-positive{color:var(--good)}.following-change.is-negative{color:var(--bad)}.following-change.is-neutral{color:var(--muted)}.following-rider-action .ui-button{min-height:36px}.following-empty-state{padding:40px 20px;text-align:center;border:1px dashed var(--border);border-radius:12px;background:var(--panel)}.following-empty-state>span{font-size:32px;color:var(--accent)}.following-empty-state h2{margin:10px 0;font-size:1rem;text-transform:none;letter-spacing:normal}.following-empty-state p{max-width:360px;margin:auto;font-size:.85rem;color:var(--muted);line-height:1.6}.following-dialog-backdrop{z-index:100;padding:24px}.modal-card.following-rider-dialog,.modal-card.following-settings-dialog{width:100%;max-width:860px;height:min(720px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);padding:0;display:flex;flex-direction:column;overflow:hidden;border-radius:14px}.modal-card.following-settings-dialog{max-width:540px;height:auto}.following-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 16px;flex-shrink:0}.following-dialog-header h2{margin:0;font-size:1.05rem;line-height:1.35;text-transform:none;letter-spacing:normal;color:var(--text);overflow-wrap:anywhere}.following-dialog-header .close{flex-shrink:0;min-width:40px;min-height:40px;font-size:22px;font-weight:400}.following-rider-dialog>.app-tabs{padding-inline:18px;flex-shrink:0;border-bottom:1px solid var(--border)}.following-dialog-body{flex:1;min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;padding:20px 22px}.following-dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;border-top:1px solid var(--border);flex-shrink:0;background:var(--panel)}.following-analysis-link{display:inline-flex;align-items:center;min-height:36px;color:var(--text);font-size:.8rem;font-weight:600}.following-analysis-link:hover{color:var(--accent)}.following-detail-section{min-width:0}.following-detail-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:16px}.following-detail-heading h3{margin:0;font-size:.9rem;color:var(--text)}.following-detail-heading>span{color:var(--muted);font-size:.72rem}.following-detail-form-stats{display:flex;gap:34px;margin-bottom:12px}.following-detail-form-stats>div{display:grid;gap:4px}.following-detail-form-stats span{color:var(--muted);font-size:.75rem}.following-detail-form-stats strong{color:var(--text);font-size:1.3rem;font-variant-numeric:tabular-nums}.following-form-chart{min-width:0}.following-form-chart svg{display:block;width:100%;outline-offset:3px;touch-action:pan-y}.following-form-chart svg text{fill:var(--muted);font-size:11px}.following-chart-grid{stroke:var(--border);stroke-width:1}.following-chart-guide{stroke:var(--accent);stroke-opacity:.5;stroke-dasharray:3 3}.following-chart-dot{fill:var(--accent);opacity:.65}.following-chart-dot.is-active{opacity:1;stroke:var(--panel);stroke-width:2}.following-chart-selection{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;border-radius:8px;background:var(--panel-2);font-size:.75rem}.following-chart-selection>span,.following-chart-selection small{color:var(--muted);font-size:.72rem;font-weight:400}.following-detail-note{color:var(--muted);font-size:.72rem;line-height:1.55;margin:14px 0 0}.following-detail-empty{color:var(--muted);text-align:center;padding:48px 12px;font-size:.85rem}.following-detail-identity{display:grid;gap:3px}.following-detail-identity small{color:var(--muted);font-size:.7rem}.following-detail-table td:first-child{width:40%}.following-rider-dialog .rider-dashboard-power-curve{padding:0;margin:0;border:0;box-shadow:none;background:transparent}.following-rider-dialog .rider-dashboard-heading h2{display:none}.following-rider-dialog .rider-dashboard-heading p{font-size:.75rem}.following-rider-dialog .rider-power-curve-window{display:none}.following-rider-dialog .notification-preferences,.following-settings-dialog .notification-preferences{border:0;padding:0;margin:0}@media (max-width: 760px){.following-page-header{align-items:flex-start;gap:8px}.following-page-header>div{display:grid;gap:4px}.following-page-header h1{font-size:1.2rem}.following-page-header>.ui-button{flex-shrink:0;font-size:.72rem}.following-overview-toolbar{grid-template-columns:minmax(0,1fr);gap:12px}.following-riders-shell{border-radius:10px}.following-riders-table,.following-riders-table tbody{display:block;width:100%}.following-riders-table thead{display:none}.following-riders-table tbody>tr.following-rider-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;position:relative;padding:14px;border-bottom:1px solid var(--border);background:var(--panel)}.following-riders-table tbody>tr.following-rider-row:last-child{border-bottom:0}.following-riders-table tbody>tr.following-rider-row>td{display:block;grid-column:auto;grid-row:auto;width:auto;min-width:0;height:auto;padding:0;border:0;background:transparent!important;text-align:left}.following-riders-table tbody>tr.following-rider-row>td.following-rider-cell{grid-column:1 / -1;padding-right:62px;padding-bottom:2px}.following-riders-table tbody>tr.following-rider-row>td:not(:first-child):not(:last-child):before{content:attr(data-label);display:block;color:var(--muted);text-transform:none;font-size:.67rem;line-height:1.35;font-weight:400;margin-bottom:4px}.following-riders-table tbody>tr.following-rider-row>td:first-child:before,.following-riders-table tbody>tr.following-rider-row>td:last-child:before{display:none}.following-riders-table tbody>tr.following-rider-row>td.following-rider-action{position:absolute;top:13px;right:12px}.following-rider-action .ui-button{min-height:44px;min-width:52px}.following-rider-name{font-size:.82rem}.following-rider-team{font-size:.68rem}.following-dialog-backdrop{padding:10px}.modal-card.following-rider-dialog,.modal-card.following-settings-dialog{max-height:calc(100dvh - 20px);border-radius:12px}.modal-card.following-rider-dialog{height:calc(100dvh - 20px)}.following-dialog-header{padding:14px 14px 10px;gap:8px}.following-dialog-header h2{font-size:.95rem}.following-rider-dialog>.app-tabs{padding-inline:8px}.following-dialog-body{padding:16px 12px}.following-dialog-footer{padding:10px 14px}.following-detail-table tbody>tr{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 0}.following-detail-table tbody>tr>td{grid-column:auto;grid-row:auto;text-align:left}.following-detail-table tbody>tr>td:first-child{grid-column:1 / -1;width:auto}.following-detail-table tbody>tr>td:before{display:block;content:attr(data-label);color:var(--muted);font-size:.65rem;margin-bottom:3px}.following-detail-table tbody>tr>td:first-child:before{display:none}.following-rider-dialog .rider-power-curve-summary{margin-left:0}}@media (prefers-reduced-motion: reduce){.following-dialog-backdrop,.following-rider-dialog{animation:none}}.page-stack.notifications-page{display:grid;width:100%;min-width:0;gap:24px}.notifications-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.notifications-header h1{margin:0;font-size:1.5rem;line-height:1.3;letter-spacing:-.025em}.notifications-header p{margin:6px 0 0;color:var(--muted);font-size:.875rem}.notifications-header-actions,.notifications-pagination{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.notifications-header-actions>a{display:inline-flex;align-items:center;min-height:44px;font-size:.8125rem;font-weight:600}.notifications-header .ui-button{min-height:44px}.notification-groups{display:grid;gap:24px}.notification-day>h2{margin:0 0 10px;color:var(--muted);font-size:.75rem;font-weight:600;text-transform:none;letter-spacing:0}.notification-list{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden}.notification-entry.notification-row{display:flex;align-items:flex-start;gap:14px;padding:18px;border:0;border-radius:0;background:transparent;min-width:0}.notification-entry.notification-row+.notification-entry.notification-row{border-top:1px solid var(--border)}.notification-entry.notification-row.is-unread{background:color-mix(in srgb,var(--accent-soft) 38%,var(--panel));border-inline-start:0}.notification-type-icon,.notifications-empty-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--panel-2);color:var(--muted)}.notification-type-icon.is-positive{background:color-mix(in srgb,var(--good) 10%,var(--panel))}.notification-type-icon.is-negative{background:color-mix(in srgb,var(--bad) 8%,var(--panel))}.notification-type-icon svg,.notification-icon-button svg,.notifications-empty-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;fill:none}.notification-row-copy{flex:1;min-width:0;font-size:.8125rem}.notification-row-title{display:flex;align-items:center;gap:8px;margin-bottom:3px;min-height:20px}.notification-row-title a{font-weight:650;font-size:.875rem;overflow-wrap:anywhere;color:var(--text)}.notification-unread-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--accent)}.notification-row .notification-row-headline{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 3px;line-height:1.5}.notification-inline-metric,.notification-detail-metric{font-variant-numeric:tabular-nums}.notification-row-summary{margin:0;color:var(--muted);line-height:1.5;overflow-wrap:anywhere}.notification-row-copy time{display:block;margin-top:6px;color:var(--muted);font-size:.6875rem}.notification-row .notification-corrected{margin:0 0 5px;font-size:.75rem;color:var(--muted);line-height:1.5}.notification-row-actions{display:flex;align-items:center;flex-shrink:0;gap:2px}.notification-row-actions .ui-button,.notification-icon-button.ui-button{min-width:44px;min-height:44px}.notification-icon-button.ui-button{padding:8px}.notification-icon-button .ui-button-label{display:inline-flex;align-items:center;justify-content:center}.notification-icon-button span[aria-hidden]{font-size:1.5rem}.notifications-page .is-positive,.notification-modal .is-positive{color:var(--good)}.notifications-page .is-negative,.notification-modal .is-negative{color:var(--bad)}.notifications-empty{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:48px 24px}.notifications-empty-icon{width:48px;height:48px;color:var(--accent);background:var(--accent-soft)}.notifications-empty h2{margin:16px 0 6px;font-size:1rem;color:var(--text);text-transform:none;letter-spacing:0}.notifications-empty p{max-width:360px;margin:0 0 16px;line-height:1.6;font-size:.875rem;color:var(--muted)}.notification-analysis-link{display:inline-flex;align-items:center;min-height:44px;font-size:.8125rem;font-weight:600}.notification-modal.modal-card{max-width:540px;max-height:min(82vh,620px);display:flex;flex-direction:column;overflow:hidden;padding:0;border-radius:14px}.notification-modal-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid var(--border)}.notification-modal-header>div{min-width:0}.notification-modal-header h2{margin:3px 0 0;font-size:1rem;text-transform:none;letter-spacing:0;overflow-wrap:anywhere}.notification-eyebrow{margin:0;color:var(--muted);font-size:.75rem}.notification-modal-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:20px;font-size:.875rem;line-height:1.6}.notification-modal-body>p:first-child{margin-top:0}.notification-provenance{display:grid;gap:12px;border-top:1px solid var(--border);padding-top:16px;margin:20px 0 0}.notification-provenance>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;font-size:.8125rem}.notification-provenance dt{color:var(--muted)}.notification-provenance dd{margin:0;overflow-wrap:anywhere}.notification-modal-footer{padding:8px 20px;border-top:1px solid var(--border)}@media (max-width: 640px){.notifications-page{gap:20px}.notifications-header{gap:10px}.notifications-header-actions{width:100%;justify-content:space-between;gap:6px}.notification-entry.notification-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px 10px;padding:14px 12px 10px}.notification-type-icon{width:28px;height:28px}.notification-type-icon svg{width:17px;height:17px}.notification-row-actions{grid-column:2;justify-self:end}.notifications-empty{padding:32px 18px}.notification-modal-backdrop{padding:12px}.notification-modal.modal-card{max-height:88dvh}.notification-modal-header{padding:14px 16px}.notification-modal-body{padding:16px}.notification-provenance>div{grid-template-columns:1fr;gap:2px}.notification-modal-footer{padding:8px 16px}}.app-tabs{min-width:0;max-width:100%}.app-tab-list{display:flex;align-items:stretch;gap:8px;overflow-x:auto;white-space:nowrap;border-bottom:1px solid var(--border);scrollbar-width:none;scroll-padding-inline:44px}.app-tab-list::-webkit-scrollbar{display:none}.app-tab-list>.app-tab{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:10px 12px 12px;border:0;border-radius:6px 6px 0 0;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:650;line-height:1.4;text-decoration:none;cursor:pointer}.app-tab:after{content:"";position:absolute;bottom:0;left:12px;right:12px;height:3px;border-radius:3px 3px 0 0;background:transparent}.app-tab-list>.app-tab:is([aria-selected=true],[aria-current=page],[aria-pressed=true]){color:var(--text)}.app-tab:is([aria-selected=true],[aria-current=page],[aria-pressed=true]):after{background:var(--accent)}.app-tab-list>.app-tab:hover:not(:disabled){color:var(--text);background:var(--accent-soft)}.app-tab-list>.app-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.app-tab-list>.app-tab:disabled{opacity:.4;cursor:not-allowed}.app-tabs .horizontal-scroll-control{top:0;width:44px;height:44px}.app-tabs-equal .app-tab-list{gap:0}.app-tabs-equal .app-tab-list>.app-tab{flex:1 1 0;padding-inline:8px}.stage-view-tabs,.stage-result-tabs,.classification-stage-tabs,.season-year-tabs{margin-bottom:16px}.rider-profile-tabs{margin:-8px 0 16px}.explorer-track-tabs{flex:1 1 auto}.explorer-gender-tabs{flex:0 0 auto}.rider-explorer{grid-template-columns:minmax(0,1fr)}@media (max-width: 640px){.app-tab-list{gap:4px}.explorer-gender-tabs,.explorer-track-tabs{width:100%;flex-basis:100%}}.loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:32px 12px;color:var(--muted);font-size:13px}.loading:before,.ui-spinner{content:"";width:16px;height:16px;flex:none;border-radius:50%;border:2px solid var(--loading-border, var(--border));border-top-color:var(--loading-color, var(--accent));animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ui-app-error{box-sizing:border-box;max-width:560px;margin:min(16vh,120px) auto;padding:32px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text)}.ui-app-error h1{margin:0 0 12px;font-size:24px}.ui-app-error p{margin:0 0 24px;color:var(--muted)}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--text);font:inherit;font-size:13px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 1px 2px #0f172a0b;transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease,transform .12s ease}.ui-button-sm{min-height:32px;padding:0 11px;font-size:12px}.ui-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 64%,var(--border));background:color-mix(in srgb,var(--panel-2) 56%,var(--panel));box-shadow:0 2px 5px #0f172a14}.ui-button:active:not(:disabled){transform:translateY(1px);box-shadow:none}.ui-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ui-button:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.ui-button-primary{border-color:color-mix(in srgb,var(--accent) 82%,#000);background:var(--accent);color:var(--accent-contrast);box-shadow:0 1px 2px #563b082e}.ui-button-primary:hover:not(:disabled){border-color:var(--brand-orange-dark);background:var(--brand-orange-dark);color:var(--accent-contrast);box-shadow:0 3px 8px #563b0833}.ui-button-ghost{border-color:transparent;background:transparent}.ui-button-ghost:hover:not(:disabled){background:var(--panel-2);border-color:transparent}.ui-button-danger{border-color:var(--bad);color:var(--bad);background:transparent}.ui-button-danger:hover:not(:disabled){background:var(--bad);color:#fff}.ui-button[data-loading]{cursor:progress}.ui-spinner{width:14px;height:14px}.ui-button .ui-spinner{--loading-border: currentColor;--loading-color: transparent}@media (prefers-reduced-motion: reduce){.ui-spinner,.loading:before{animation:none;opacity:.6}}.ui-loading-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.ui-field{min-width:0;display:flex;flex-direction:column;gap:5px}.ui-field-label{color:color-mix(in srgb,var(--muted) 86%,var(--text));font-size:11.5px;font-weight:650;letter-spacing:.015em}.ui-input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:40px;min-height:40px;padding:0 11px;border:1px solid var(--border);border-radius:7px;background:color-mix(in srgb,var(--panel-2) 36%,var(--panel));color:var(--text);font:inherit;font-size:14px;font-weight:400;line-height:normal;letter-spacing:normal;text-transform:none;color-scheme:light;box-shadow:inset 0 1px #0f172a05,0 1px 2px #0f172a06;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.ui-input::-moz-placeholder{color:var(--muted);opacity:.68}.ui-input::placeholder{color:var(--muted);opacity:.68}.ui-input:hover:not(:disabled){border-color:color-mix(in srgb,var(--muted) 56%,var(--border))}.ui-input:focus-visible{outline:none;border-color:var(--accent);background:var(--panel);box-shadow:0 0 0 3px var(--accent-soft)}.ui-input:disabled{background:var(--panel-2);color:var(--muted);cursor:not-allowed}.ui-field.is-invalid .ui-input{border-color:var(--bad)}.ui-field-hint{margin:0;color:var(--muted);font-size:11.5px;line-height:1.35}.ui-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ui-field-row>*{min-width:0}@media (max-width: 520px){.ui-field-row{grid-template-columns:1fr}}.ui-field-error{margin:0;color:var(--bad);font-size:12px;font-weight:600}.ui-alert{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--border);border-left-width:3px;border-radius:8px;background:var(--panel-2);font-size:14px}.ui-alert-title{font-weight:700}.ui-alert-body{color:var(--muted)}.ui-alert-info{border-left-color:var(--accent)}.ui-alert-success{border-left-color:var(--good)}.ui-alert-warning{border-left-color:var(--warn, #d08b2c)}.ui-alert-error{border-left-color:var(--bad)}.ui-alert-error .ui-alert-title{color:var(--bad)}.ui-toast-viewport{position:fixed;top:76px;right:20px;z-index:1200;display:grid;gap:10px;width:min(370px,calc(100vw - 28px));pointer-events:none}.ui-toast{--toast-tone: var(--accent);display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:10px;padding:13px 12px 13px 13px;border:1px solid color-mix(in srgb,var(--toast-tone) 34%,var(--border));border-left:4px solid var(--toast-tone);border-radius:12px;background:color-mix(in srgb,var(--panel) 94%,var(--toast-tone));color:var(--text);box-shadow:0 14px 36px #0f172a29,0 3px 10px #0f172a14;pointer-events:auto;animation:ui-toast-in .18s ease-out both}.ui-toast-success{--toast-tone: var(--good)}.ui-toast-warning{--toast-tone: var(--warn, #c17b17)}.ui-toast-error{--toast-tone: var(--bad)}.ui-toast-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:color-mix(in srgb,var(--toast-tone) 14%,var(--panel));color:var(--toast-tone);font-size:13px;font-weight:800}.ui-toast-content{min-width:0;padding-top:2px}.ui-toast-title{display:block;margin-bottom:2px;font-size:13px;line-height:1.35}.ui-toast-message{color:color-mix(in srgb,var(--text) 84%,var(--muted));font-size:13px;line-height:1.45}.ui-toast-dismiss{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:20px;line-height:1;cursor:pointer}.ui-toast-dismiss:hover{background:var(--panel-2);color:var(--text)}.ui-toast-dismiss:focus-visible{outline:2px solid var(--toast-tone);outline-offset:1px}@keyframes ui-toast-in{0%{opacity:0;transform:translate3d(12px,-4px,0) scale(.98)}to{opacity:1;transform:translateZ(0) scale(1)}}@media (max-width: 640px){.ui-toast-viewport{top:auto;right:14px;bottom:max(14px,env(safe-area-inset-bottom));left:14px;width:auto}.ui-toast-dismiss{width:36px;height:36px;margin:-5px -4px 0 0}}@media (prefers-reduced-motion: reduce){.ui-toast{animation:none}}.ui-card{border:1px solid var(--border);border-radius:14px;background:var(--panel);overflow:hidden;box-shadow:0 1px 2px #0f172a06,0 8px 24px #0f172a06}.ui-card-head{padding:18px 20px 0}.ui-card-title{margin:0;font-size:18px;font-weight:700}.ui-card-description{margin:6px 0 0;color:var(--muted);font-size:13px}.ui-card-body{display:flex;flex-direction:column;gap:14px;padding:18px 20px}.ui-card-foot{padding:14px 20px;border-top:1px solid var(--border);background:var(--panel-2);color:var(--muted);font-size:13px}.ui-billing-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ui-billing-field-legal-name,.ui-billing-field-email,.ui-billing-field-address-1,.ui-billing-field-address-2{grid-column:1 / -1}@media (max-width: 640px){.ui-billing-profile-fields{grid-template-columns:minmax(0,1fr)}.ui-billing-field-legal-name,.ui-billing-field-email,.ui-billing-field-address-1,.ui-billing-field-address-2{grid-column:auto}}.ui-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2364748b' stroke-width='1.6'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px 16px;cursor:pointer}@media (max-width: 640px),(pointer: coarse){.ui-button,.ui-button-sm,.ui-input{min-height:44px}.ui-input{height:44px;font-size:16px}}.ui-confirm{display:inline-flex;gap:.5rem;align-items:center;flex-wrap:wrap}.ui-toolbar-select{max-width:min(200px,100%);width:auto;flex:0 1 auto}.ui-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--accent);color:var(--accent-contrast);font-weight:700;letter-spacing:.02em;flex:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ui-avatar-md{width:34px;height:34px;font-size:.8125rem}.ui-avatar-sm{width:26px;height:26px;font-size:.6875rem}.ui-combobox{display:flex;flex-direction:column;gap:6px;position:relative}.ui-combobox-list{position:fixed;z-index:1000;margin:0;padding:4px;list-style:none;max-height:260px;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 28px #0000002e}.ui-combobox-option{display:flex;flex-direction:column;gap:1px;padding:7px 10px;border-radius:7px;cursor:pointer}.ui-combobox-option.is-active{background:var(--accent-soft)}.ui-combobox-empty{padding:10px;color:var(--muted);font-size:13px}.ui-combobox-hint{color:var(--muted);font-size:12px;font-family:ui-monospace,monospace}.ui-combobox-selected{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;padding:6px 8px 6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.ui-combobox-selected-text{display:flex;flex-direction:column;gap:1px;min-width:0}.ui-combobox-clear{flex:none;background:none;border:1px solid var(--border);border-radius:6px;color:var(--muted);font:inherit;font-size:12px;padding:3px 9px;cursor:pointer}.ui-combobox-clear:hover{border-color:var(--accent);color:var(--text)}.ui-input:is([type=date],[type=datetime-local],[type=time]){-webkit-appearance:none;-moz-appearance:none;appearance:none}.ui-input::-webkit-date-and-time-value{text-align:start;min-height:1em}.ui-textarea,.ui-select-list{height:auto;min-height:80px;padding:10px 11px}.ui-textarea{resize:vertical;line-height:1.5}.ui-choice{accent-color:var(--accent);max-width:100%}.ui-choice:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.ui-input[aria-invalid=true]{border-color:var(--bad)}@media (forced-colors: active){.ui-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;background-image:none}.ui-input:focus-visible{outline:2px solid Highlight}}[data-theme=dark] .ui-input{color-scheme:dark}.nav-drawer-preferences .ui-toolbar-select{max-width:100%}.ui-table-pending,.ui-table-pending-content{min-width:0;max-width:100%}.ui-table-update-status{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:13px;font-weight:600;line-height:1.4}.ui-table-update-status:empty{display:none}.ui-table-update-status:not(:empty){padding:10px 12px;border-bottom:1px solid var(--border);background:var(--accent-soft)}.ui-table-pending[data-pending]>.ui-table-pending-content{opacity:.55}.ui-pagination{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px}.ui-pagination-page{color:var(--muted);font-variant-numeric:tabular-nums}
