:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;max-width:100vw;background:linear-gradient(135deg,#0a0a0f,#1a1a2e,#0f0f1e);color:#fff}html{overflow-x:hidden;max-width:100vw;background:linear-gradient(135deg,#0a0a0f,#1a1a2e,#0f0f1e)}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.stats-card{background:#1e1e28e6;border:1px solid rgba(100,200,255,.2);border-radius:8px;padding:.5rem .625rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;position:relative;overflow:hidden;flex:0 0 auto;min-width:100px}@media(min-width:768px){.stats-card{flex:1 1 140px;min-width:140px}}.stats-card:hover{transform:translateY(-1px);border-color:#64c8ff66;box-shadow:0 4px 12px #0096ff26}.stats-card.highlight{border-color:#ffc80080;background:#282314e6}.stats-card.pace-on-pace{border-color:#0f89;background:#002814e6}.stats-card.pace-on-pace.highlight{border-color:#00ff88b3;background:#003219f2}.stats-card.pace-off-pace{border-color:#ff6b6b80;background:#281414e6}.stats-card.pace-off-pace.highlight{border-color:#ff6b6b99;background:#321919f2}.stats-card-header{display:flex;align-items:center;margin-bottom:.375rem}.stats-title{font-size:.55rem;text-transform:uppercase;letter-spacing:.05em;color:#ffffffa6;font-weight:600;white-space:nowrap}.stats-value-container{display:flex;align-items:baseline;gap:.375rem}.stats-value{font-size:1.125rem;font-weight:700;line-height:1.1;color:#fff;font-variant-numeric:tabular-nums}.stats-card.highlight .stats-value{color:gold}.stats-card.pace-on-pace .stats-value,.stats-card.pace-on-pace.highlight .stats-value{color:#0f8}.stats-card.pace-off-pace .stats-value,.stats-card.pace-off-pace.highlight .stats-value{color:#fff}.stats-unit{font-size:.625rem;color:#ffffff8c;font-weight:500}.stats-trend{position:absolute;top:.5rem;right:.5rem;font-size:.875rem;font-weight:700}.trend-up{color:#0f8}.trend-down{color:#f44}.trend-neutral{color:#fa0}.dashboard{min-height:100vh;background:linear-gradient(135deg,#0a0a0f,#1a1a2e,#0f0f1e);color:#fff;padding:clamp(1rem,2vw,2rem);width:100%;max-width:1200px;margin:0 auto;overflow-x:hidden;overflow-y:auto}.version-alert-banner{position:fixed;top:0;left:0;right:0;z-index:1000;background:linear-gradient(135deg,#1e1e32f2,#282846f2);border-bottom:2px solid rgba(100,200,255,.5);padding:1rem;box-shadow:0 4px 12px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.version-alert-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.version-alert-icon{font-size:1.5rem;animation:spin 2s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.version-alert-text{font-weight:600;font-size:1rem;color:#fff}.version-alert-button{background:linear-gradient(135deg,#00d4ff,#09f);color:#fff;border:none;padding:.5rem 1.5rem;border-radius:8px;font-weight:700;font-size:.875rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0003}.version-alert-button:hover{background:linear-gradient(135deg,#00e5ff,#0af);transform:translateY(-2px);box-shadow:0 4px 12px #00d4ff66}.version-alert-button:active{transform:translateY(0)}.version-alert-close{background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;opacity:.8;transition:opacity .2s ease;line-height:1;margin-left:auto}.version-alert-close:hover{opacity:1}.dashboard-header{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.5rem;padding:1.5rem;background:linear-gradient(135deg,#14141ecc,#1e1e3299);border-radius:16px;border:1px solid rgba(100,200,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;max-width:100%;box-sizing:border-box;position:relative;z-index:10}.header-top{display:flex;justify-content:space-between;align-items:center}.header-top-right{display:flex;align-items:center;gap:.75rem}.donation-text{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(100,200,255,.2)}.donation-inline-link{color:#00d4ff;text-decoration:underline;font-weight:600;transition:color .2s ease}.donation-inline-link:hover{color:#0f8}.donation-section{padding:1.25rem 1.5rem;background:linear-gradient(135deg,#14141ecc,#1e1e3299);border-radius:12px;border:1px solid rgba(100,200,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center}.donation-section-title{font-size:1.125rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,#00d4ff,#09f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.donation-section-text{color:#ffffffb3;font-size:.875rem;line-height:1.4;margin:0 0 1rem;max-width:600px;margin-left:auto;margin-right:auto}.donate-button-large{display:inline-block;padding:.75rem 1.5rem;background:#1a5490;border:1px solid rgba(100,200,255,.3);border-radius:8px;color:#fff;font-size:.875rem;font-weight:700;text-decoration:none;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #0064b44d}.donate-button-large:hover{background:#145080;box-shadow:0 4px 12px #0064b480;transform:translateY(-2px)}.unit-toggle-desktop{display:none}@media(min-width:768px){.unit-toggle-desktop{display:flex;gap:.25rem;background:#14141e99;border-radius:8px;padding:.25rem;border:1px solid rgba(100,200,255,.2)}.settings-container{display:none}}.header-content{display:flex;flex-direction:column;gap:.5rem}.athlete-name-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.start-time-display{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(135deg,#ffc80026,#ffb4001a);border-radius:10px;border:1px solid rgba(255,200,0,.3);margin-top:.5rem;animation:slideIn .3s ease-out;flex-wrap:wrap}.start-time-label{color:#ffffffb3;font-size:.875rem;font-weight:600;white-space:nowrap}.start-time-value{color:#fffffff2;font-size:.95rem;font-weight:700;letter-spacing:.02em;line-height:1.4}.start-time-mst{white-space:nowrap}@media(max-width:600px){.start-time-display{padding:.625rem .75rem;gap:.375rem}.start-time-label{font-size:.75rem}.start-time-value{font-size:.8125rem}.start-time-mst{display:block;margin-top:.25rem}}.message-banner{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:linear-gradient(135deg,#00d4ff26,#0099ff1a);border-radius:10px;border:1px solid rgba(0,212,255,.3);margin-top:.5rem;animation:slideIn .3s ease-out}.message-icon{font-size:1.25rem;flex-shrink:0}.message-text{color:#fffffff2;font-size:.9375rem;line-height:1.4;font-weight:500}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.unit-toggle{display:flex;gap:.25rem;background:#14141e99;border-radius:8px;padding:.25rem;border:1px solid rgba(100,200,255,.2)}.unit-button{padding:.5rem 1rem;background:transparent;border:none;color:#fff9;font-size:.875rem;font-weight:600;cursor:pointer;border-radius:6px;transition:all .2s ease}.unit-button:hover{background:#64c8ff1a;color:#fffc}.unit-button.active{background:linear-gradient(135deg,#00d4ff,#09f);color:#fff;box-shadow:0 2px 8px #0096ff4d}.event-title{font-size:2.5rem;font-weight:800;margin:0;background:linear-gradient(135deg,#00d4ff,#09f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.02em;font-family:Montserrat,sans-serif}.event-title-logo{background:linear-gradient(135deg,#00d4ff,#09f,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.athlete-name{font-size:1.25rem;color:#fffc;font-weight:600}.settings-container{position:relative}.settings-button{background:transparent;border:1px solid rgba(100,200,255,.3);border-radius:6px;padding:.5rem;font-size:1.25rem;cursor:pointer;color:#ffffffb3;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem}.settings-button:hover{background:#64c8ff1a;border-color:#64c8ff80;color:#ffffffe6}.settings-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:linear-gradient(135deg,#1e1e28f2,#14141efa);border:1px solid rgba(100,200,255,.3);border-radius:8px;padding:1rem;min-width:200px;max-width:calc(100vw - 2rem);box-shadow:0 4px 12px #0000004d;z-index:1000}.settings-label{font-size:.75rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.live-indicator{display:flex;align-items:center;gap:.4rem;padding:.375rem .75rem;background:#f003;border:2px solid #ff0000;border-radius:20px;font-weight:700;font-size:.75rem;letter-spacing:.1em;white-space:nowrap}.live-indicator.completed{background:#0f83;border:2px solid #00ff88;animation:celebration 3s ease-in-out infinite}.live-indicator.waiting{background:#ffc80033;border:2px solid #ffc800}.live-dot{width:10px;height:10px;background:red;border-radius:50%;animation:pulse 2s ease-in-out infinite}.live-indicator.completed .live-dot{background:#0f8;animation:pulse 2s ease-in-out infinite}.live-indicator.waiting .live-dot{background:#ffc800;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@keyframes celebration{0%,to{transform:scale(1);box-shadow:0 0 10px #00ff884d}50%{transform:scale(1.05);box-shadow:0 0 20px #0f89}}.explanation-toggle-section{width:100%;margin-bottom:1rem;background:linear-gradient(135deg,#1e1e28e6,#14141ef2);border:1px solid rgba(100,200,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.explanation-toggle-button{width:100%;max-width:100%;background:transparent;border:none;padding:1.25rem 1.5rem;color:#ffffffe6;font-size:1.25rem;font-weight:700;letter-spacing:.1em;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;box-sizing:border-box;outline:none}.explanation-toggle-button:hover{background:#23232d4d}.explanation-toggle-button:focus{outline:none;background:transparent}.explanation-content-wrapper{max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:0}.explanation-content-wrapper.open{max-height:500px;opacity:1}.explanation-content-wrapper.closed{max-height:0;opacity:0}.explanation-content{padding:1rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.explanation-content p{margin:0;font-size:1rem;line-height:1.6;color:#fffc}.explanation-content strong{color:#00d4ff;font-weight:600}@media(min-width:768px){.explanation-toggle-section{margin-bottom:.75rem;border-radius:8px}.explanation-toggle-button{padding:.75rem 1rem;font-size:.875rem;font-weight:600;letter-spacing:.05em}.explanation-content{padding:.75rem 1rem 1rem;gap:.5rem}.explanation-content p{font-size:.875rem;line-height:1.5}}@media(max-width:600px){.donation-section{padding:0;background:none;border:none;-webkit-backdrop-filter:none;backdrop-filter:none}.donation-section-title,.donation-section-text{display:none}.donate-button-large{width:100%;padding:.75rem 1rem;font-size:.875rem}.explanation-toggle-section{margin-bottom:.5rem}.explanation-toggle-button{padding:.5rem .75rem;font-size:.75rem}.explanation-content-wrapper.open{max-height:600px}.explanation-content{padding:.5rem .75rem .75rem}.explanation-content p{font-size:.8rem;line-height:1.4}}.dashboard-grid{display:flex;flex-direction:column;gap:.75rem}@media(min-width:1024px){.dashboard-grid{display:flex;flex-direction:row;gap:.5rem;align-items:flex-start}}.dashboard-column-left,.dashboard-column-right{display:flex;flex-direction:column;gap:.75rem;width:100%}@media(min-width:1024px){.dashboard-column-left,.dashboard-column-right{flex:1;width:50%}}@media(max-width:1023px){.dashboard-column-left,.dashboard-column-right{display:contents}}.stats-section{width:100%;order:1}@media(min-width:1024px){.stats-section{order:0}}.video-section-wrapper{width:100%;display:flex;flex-direction:column;order:3}.video-section{width:100%;transition:all .3s ease}@media(min-width:1024px){.video-section-wrapper{order:0}}@media(max-width:1023px){.video-section-wrapper{min-height:200px;min-height:auto}.video-section{position:sticky;top:0;z-index:100;padding-top:.5rem;padding-bottom:.5rem;margin-top:-.5rem;background:linear-gradient(135deg,#0a0a0f,#1a1a2e 50%)}.video-section.miniplayer{position:fixed!important;top:auto!important;bottom:1rem;right:1rem;width:60%;max-width:250px;z-index:1000;padding:0;margin:0;background:transparent;box-shadow:0 4px 20px #00000080;border-radius:12px}.video-section.miniplayer .video-embed-container,.video-section.miniplayer .video-placeholder{border-radius:12px;border:1px solid rgba(100,200,255,.4)}.video-section.miniplayer .play-icon{font-size:2rem;margin-bottom:.5rem}.video-section.miniplayer .video-overlay p{font-size:.875rem}.video-section.miniplayer+.chat-toggle-section{display:none}}.video-embed-container{width:100%;aspect-ratio:16 / 9;background:linear-gradient(135deg,#1a1a2e,#0f0f1e);border-radius:16px;border:2px solid rgba(100,200,255,.3);position:relative;overflow:hidden}.video-embed-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:14px}.chat-toggle-section{width:100%;margin-top:.75rem;background:linear-gradient(135deg,#1e1e28e6,#14141ef2);border:1px solid rgba(100,200,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.chat-toggle-button{width:100%;max-width:100%;background:transparent;border:none;padding:.75rem 1rem;color:#ffffffe6;font-size:.875rem;font-weight:700;letter-spacing:.1em;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;box-sizing:border-box;outline:none}.chat-toggle-button:hover{background:#23232d4d}.chat-toggle-button:focus{outline:none;background:transparent}.chat-content-wrapper{max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:0}.chat-content-wrapper.open{max-height:600px;opacity:1}.chat-content-wrapper.closed{max-height:0;opacity:0}.chat-content{padding:.75rem 1rem 1rem}.chat-embed-container{width:100%;height:500px;background:linear-gradient(135deg,#1a1a2e,#0f0f1e);border-radius:12px;border:2px solid rgba(100,200,255,.3);position:relative;overflow:hidden}.chat-embed-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:10px}.video-placeholder{width:100%;aspect-ratio:16 / 9;background:linear-gradient(135deg,#1a1a2e,#0f0f1e);border-radius:16px;border:2px solid rgba(100,200,255,.3);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.video-placeholder:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(100,200,255,.03) 2px,rgba(100,200,255,.03) 4px);animation:scan 8s linear infinite}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}.video-overlay{text-align:center;z-index:1;width:100%;max-width:100%;box-sizing:border-box;padding:0 1rem;position:relative}.miniplayer-toggle{display:none}@media(max-width:1023px){.miniplayer-toggle{position:absolute;top:.5rem;right:.5rem;background:#0009;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:4px;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.25rem;transition:background .2s;z-index:10}}.miniplayer-toggle:hover{background:#000c}.play-icon{font-size:4rem;margin-bottom:1rem;opacity:.6}.video-overlay p{font-size:1.5rem;font-weight:700;letter-spacing:.2em;color:#ffffff80}.sponsors-section{background:linear-gradient(135deg,#1e1e28e6,#14141ef2);border:1px solid rgba(100,200,255,.2);border-radius:12px;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;box-sizing:border-box;order:4}@media(min-width:1024px){.sponsors-section{order:0}}.sponsors-label{font-size:.75rem;font-weight:600;letter-spacing:.1em;color:#ffffff80;text-transform:uppercase;margin-bottom:.75rem;text-align:center}.sponsors-logos{display:flex;justify-content:center;align-items:center;gap:1.5rem;flex-wrap:wrap}.sponsors-logos a{display:inline-block;text-decoration:none;border:none}.sponsor-logo{max-height:3rem;max-width:120px;width:auto;opacity:.8;filter:brightness(0) invert(1);transition:opacity .3s ease}.sponsor-logo.no-filter{filter:none}.sponsor-logo:hover{opacity:1}.progress-section{background:linear-gradient(135deg,#1e1e28e6,#14141ef2);border:1px solid rgba(100,200,255,.2);border-radius:12px;padding:.5rem 1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;max-width:100%;box-sizing:border-box;order:2}.progress-section.waiting{opacity:.6;border:1px solid rgba(255,200,0,.3)}.progress-section.waiting .progress-bar{background:#0003;border:1px solid rgba(255,200,0,.3)}.progress-section.waiting .current-elevation{color:#ffffff80}@media(min-width:1024px){.progress-section{order:0}}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.375rem;font-weight:600;font-size:.75rem;letter-spacing:.05em;color:#ffffffb3}.progress-percentage{font-weight:700;color:#0f8;font-size:1rem;font-variant-numeric:tabular-nums}.progress-bar{height:8px;background:#0006;border-radius:8px;overflow:hidden;position:relative;border:1px solid rgba(100,200,255,.2)}.progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#09f,#0f8);border-radius:8px;position:relative;transition:width .5s ease;overflow:hidden}.progress-shimmer{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.progress-labels{display:flex;justify-content:space-between;margin-top:.25rem;font-size:.75rem;color:#fff9;font-variant-numeric:tabular-nums}.current-elevation{font-weight:700;color:#0f8;font-size:1rem;font-variant-numeric:tabular-nums}.landmarks-section{background:linear-gradient(135deg,#1e1e28e6,#14141ef2);border:1px solid rgba(100,200,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;max-width:100%;box-sizing:border-box;order:3;overflow:hidden}.landmarks-toggle-button{width:100%;max-width:100%;background:transparent;border:none;padding:.75rem 1rem;color:#ffffffe6;font-size:.875rem;font-weight:700;letter-spacing:.1em;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;box-sizing:border-box;outline:none}.landmarks-toggle-button:hover{background:#23232d4d}.landmarks-list-wrapper{max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:0}.landmarks-list-wrapper.open{max-height:400px;opacity:1}.landmarks-list{display:flex;flex-direction:column;gap:.375rem;max-height:200px;overflow-y:auto;padding:0 1rem .75rem;scrollbar-width:thin;scrollbar-color:rgba(100,200,255,.3) transparent}.landmarks-list::-webkit-scrollbar{width:4px}.landmarks-list::-webkit-scrollbar-track{background:transparent}.landmarks-list::-webkit-scrollbar-thumb{background:#64c8ff4d;border-radius:2px}.landmark-item{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:#ffffffb3;padding:.25rem 0;flex-shrink:0}.landmark-item-content{display:flex;align-items:center;gap:.5rem}.landmark-item.passed{color:#ffffff80}.landmark-emoji{font-size:1rem;line-height:1;flex-shrink:0}.landmark-name{flex:1;font-weight:500}.landmark-item.passed .landmark-name{text-decoration:line-through}.landmark-height{font-size:.7rem;color:#ffffff80;font-weight:600;flex-shrink:0;font-variant-numeric:tabular-nums}.landmark-item.passed .landmark-height{color:#0f8}.landmark-check{color:#0f8;font-weight:700;font-size:.875rem;flex-shrink:0}.landmark-progress-bar{height:2px;background:#0000004d;border-radius:1px;overflow:hidden;width:100%}.landmark-progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#09f);border-radius:1px;transition:width .5s ease}.landmark-item.passed .landmark-progress-fill{background:#0f8}.landmark-emoji-label{fill:#ffffffe6;text-shadow:0 2px 4px rgba(0,0,0,.5);pointer-events:none}.chart-landmark{transition:all .2s ease}.chart-landmark:hover circle{r:6;fill:#fff}.landmark-tooltip-content{background:#0a0a14f2;border:1px solid rgba(100,200,255,.3);border-radius:8px;padding:.5rem .75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #00000080;pointer-events:none;text-align:center}.landmark-tooltip-name{color:#fff;font-size:.75rem;font-weight:700;margin-bottom:.25rem;white-space:nowrap}.landmark-tooltip-elevation{color:#00d4ff;font-size:.7rem;font-weight:600}.stats-grid{display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem;width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(100,200,255,.2) transparent;scroll-snap-type:x proximity}.stats-card{scroll-snap-align:start}@media(min-width:768px){.stats-grid{flex-wrap:wrap;overflow:visible;padding-bottom:0}.stats-card{scroll-snap-align:unset}}@media(min-width:1024px){.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}}@media(prefers-reduced-motion:reduce){.stats-grid{scroll-snap-type:none}}.stats-grid::-webkit-scrollbar{height:4px}.stats-grid::-webkit-scrollbar-track{background:transparent}.stats-grid::-webkit-scrollbar-thumb{background:#64c8ff4d;border-radius:2px}.pace-indicator{font-size:.625rem;font-weight:500;margin-left:.25rem}.pace-indicator.on-pace{color:#0f8}.pace-indicator.off-pace{color:#ffffff80}.chart-toggle-section{width:100%;order:4;background:linear-gradient(135deg,#1e1e28e6,#14141ef2);border:1px solid rgba(100,200,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}@media(min-width:1024px){.chart-toggle-section{order:0}}.chart-toggle-button{width:100%;max-width:100%;background:transparent;border:none;padding:.75rem 1rem;color:#ffffffe6;font-size:.875rem;font-weight:700;letter-spacing:.1em;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;box-sizing:border-box;outline:none}.chart-toggle-button:hover{background:#23232d4d}.chart-toggle-button:focus{outline:none;background:transparent}.chart-content-wrapper{max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:0}.chart-content-wrapper.open{max-height:600px;opacity:1}.chart-content-wrapper.closed{max-height:0;opacity:0}.chart-content{padding:0}.line-chart-container{width:100%;max-width:100%;margin:0;background:#0003;border-radius:8px;padding:0;box-sizing:border-box;overflow:visible}.line-chart{width:100%;max-width:100%;height:auto;display:block}.section-title{font-size:1.25rem;font-weight:700;letter-spacing:.1em;margin-bottom:1rem;color:#ffffffe6;width:100%;max-width:100%;box-sizing:border-box;word-wrap:break-word}.splits-toggle-section{width:100%;order:5;background:linear-gradient(135deg,#1e1e28e6,#14141ef2);border:1px solid rgba(100,200,255,.2);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}@media(min-width:1024px){.splits-toggle-section{order:0}}.splits-toggle-button{width:100%;max-width:100%;background:transparent;border:none;padding:.75rem 1rem;color:#ffffffe6;font-size:.875rem;font-weight:700;letter-spacing:.1em;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;box-sizing:border-box;outline:none}.splits-toggle-button:hover{background:#23232d4d}.splits-toggle-button:focus{outline:none;background:transparent}.toggle-icon{font-size:1rem;transition:transform .3s ease}.toggle-icon.open{transform:rotate(180deg)}.splits-content-wrapper{max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease;opacity:0}.splits-content-wrapper.open{max-height:800px;opacity:1}.splits-content-wrapper.closed{max-height:0;opacity:0}.splits-content{padding:.75rem 1rem 1rem}.splits-table-container{overflow-x:auto;overflow-y:auto;width:100%;max-width:100%;max-height:500px;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(100,200,255,.3) transparent}.splits-table-container::-webkit-scrollbar{width:6px;height:6px}.splits-table-container::-webkit-scrollbar-track{background:transparent}.splits-table-container::-webkit-scrollbar-thumb{background:#64c8ff4d;border-radius:3px}.splits-table-container::-webkit-scrollbar-thumb:hover{background:#64c8ff80}.splits-table{width:100%;max-width:100%;border-collapse:collapse;table-layout:auto;box-sizing:border-box}.splits-table thead{border-bottom:2px solid rgba(100,200,255,.3);position:sticky;top:0;z-index:10;background:linear-gradient(135deg,#1e1e28fa,#14141efa);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.splits-table th{text-align:left;padding:1rem;font-size:.875rem;font-weight:600;letter-spacing:.05em;color:#ffffffb3;text-transform:uppercase}.splits-table td{padding:1rem;border-bottom:1px solid rgba(100,200,255,.1);font-size:.95rem;font-variant-numeric:tabular-nums}.splits-table tbody tr{transition:background .2s ease}.splits-table tbody tr:hover{background:#64c8ff0d}.mile-number{font-weight:700;color:#00d4ff;font-size:1.1rem;font-variant-numeric:tabular-nums}@media(max-width:600px){.dashboard{padding:.5rem}.event-title{font-size:1.125rem;line-height:1.2}.dashboard-header{gap:.5rem;padding:.75rem;margin-bottom:.25rem}.header-top{gap:.5rem}.header-content{gap:.25rem}.athlete-name-row{gap:.5rem}.athlete-name{font-size:.875rem}.settings-button{width:1.75rem;height:1.75rem;padding:.375rem;font-size:1rem}.settings-dropdown{right:0;left:auto;min-width:200px;max-width:min(200px,calc(100vw - 1.5rem));transform:translate(0)}.live-indicator{padding:.25rem .5rem;font-size:.625rem;gap:.25rem}.live-dot{width:6px;height:6px}.message-banner{padding:.625rem .75rem;gap:.5rem}.message-icon{font-size:1rem}.message-text{font-size:.8125rem;line-height:1.3}.progress-section{padding:.75rem}.splits-content-wrapper.open{max-height:1000px}.line-chart-container{padding:.5rem}.video-embed-container,.video-placeholder{border-radius:12px}.chat-toggle-section{margin-top:.5rem}.chat-toggle-button{padding:.5rem .75rem;font-size:.75rem}.chat-content{padding:.5rem .75rem .75rem}.chat-embed-container{height:400px}.stats-card{min-width:110px}}@media(min-width:768px){.dashboard{padding:clamp(1.5rem,3vw,3rem)}.dashboard-grid,.stats-grid{gap:.75rem}.line-chart-container{padding:1.25rem}.splits-table th,.splits-table td{padding:.75rem}}#root{width:100%;max-width:100vw;margin:0;padding:0;overflow-x:hidden}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}.logo.cloudflare:hover{filter:drop-shadow(0 0 2em #f6821faa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
