:root{--bg: #f0f4f8;--surface: #ffffff;--text: #1a2332;--text-muted: #5a6b7d;--accent: #0d9488;--accent-hover: #0f766e;--border: #e2e8f0;--shadow: rgba(13, 148, 136, .08);--slider-track: #cbd5e1;--slider-thumb: #0d9488;--error: #dc2626;--font-sans: "Outfit", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--ease-insights: cubic-bezier(.22, 1, .32, 1);--ease-insights-soft: cubic-bezier(.25, .85, .35, 1);--duration-insights: .62s;--duration-insights-tile: .4s}[data-theme=dark]{--bg: #0f172a;--surface: #1e293b;--text: #f1f5f9;--text-muted: #94a3b8;--accent: #2dd4bf;--accent-hover: #5eead4;--border: #334155;--shadow: rgba(0, 0, 0, .3);--slider-track: #475569;--slider-thumb: #2dd4bf;--error: #f87171}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;overflow-x:hidden}.app-shell{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:0;width:100%;min-height:100vh;box-sizing:border-box;padding:0 1rem;transition:gap var(--duration-insights) var(--ease-insights)}.app-shell.is-extended{gap:1.5rem;max-width:1580px;margin:0 auto}.app{flex:0 1 720px;max-width:720px;width:100%;margin:0 auto;padding:1.5rem 0;min-height:100vh;display:flex;flex-direction:column}.app-insights{flex:1 1 0;max-width:0;min-width:0;min-height:0;max-height:0;overflow:hidden;opacity:0;padding:0;pointer-events:none;transition:max-width var(--duration-insights) var(--ease-insights),min-width var(--duration-insights) var(--ease-insights),flex-basis var(--duration-insights) var(--ease-insights),max-height var(--duration-insights) var(--ease-insights),padding var(--duration-insights) var(--ease-insights),opacity calc(var(--duration-insights) * .88) var(--ease-insights)}.app-shell.is-extended .app-insights{flex:1 1 460px;max-width:640px;min-width:300px;max-height:2500px;padding:1.5rem 0;opacity:1;overflow:visible;pointer-events:auto;display:flex;flex-direction:column;gap:0;transition:max-width var(--duration-insights) var(--ease-insights),min-width var(--duration-insights) var(--ease-insights),flex-basis var(--duration-insights) var(--ease-insights),max-height var(--duration-insights) var(--ease-insights),opacity calc(var(--duration-insights) * .88) var(--ease-insights)}@media (max-width: 1100px){.app-shell.is-extended{flex-direction:column;flex-wrap:nowrap;align-items:stretch;align-content:flex-start;justify-content:flex-start;gap:.3rem}.app-shell.is-extended .app{flex:0 0 auto;width:100%;max-width:720px;min-width:0;min-height:unset}.app-shell.is-extended .app-insights{flex:0 0 auto;max-width:none;width:100%;min-width:0;padding:0 0 1.25rem}.app-shell.is-extended .running-splits-wrap{margin-top:0}.insight-panels-reset-layout{display:none!important}}@media (min-width: 1420px){.app-shell.is-extended .app-insights{max-width:min(1020px,calc(100vw - 720px - 3.5rem))}}.insight-panels-stack{display:flex;flex-direction:column;gap:0;min-width:0;flex:1 1 auto}.insight-panels-layout{display:flex;flex-direction:column;gap:1.25rem;min-width:0;transition:gap var(--duration-insights-tile) var(--ease-insights-soft)}.insight-panels-col{display:flex;flex-direction:column;gap:1.25rem;min-width:0;border-radius:14px;transition:box-shadow var(--duration-insights-tile) var(--ease-insights-soft),background-color var(--duration-insights-tile) ease}.insight-panels-col>.card{margin-bottom:0}.insight-panel-is-hidden{display:none!important}.insight-panels-toolbar{flex-shrink:0;margin-bottom:1.75rem}.insight-panels-toolbar-label{margin:0 0 .35rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.insight-panels-reset-layout{display:block;margin:.65rem 0 0;padding:0;border:none;background:none;font-family:var(--font-sans);font-size:.8rem;font-weight:600;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color var(--duration-insights-tile) var(--ease-insights-soft),opacity .2s ease}.insight-panels-reset-layout:hover{color:var(--accent-hover)}.insight-panels-reset-layout:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.insight-panel-chips{display:flex;flex-wrap:wrap;gap:.5rem}.insight-panel-chip{margin:0;padding:.4rem .7rem;border-radius:999px;border:1px solid var(--border);background:var(--bg);color:var(--text-muted);font-family:var(--font-sans);font-size:.82rem;font-weight:600;line-height:1.2;cursor:pointer;transition:background var(--duration-insights-tile) var(--ease-insights-soft),color var(--duration-insights-tile) var(--ease-insights-soft),border-color var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft),transform .2s var(--ease-insights-soft)}.insight-panel-chip:hover{border-color:var(--accent);color:var(--text);transform:translateY(-1px)}.insight-panel-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.insight-panel-chip--selected{background:var(--accent);border-color:var(--accent);color:var(--surface);box-shadow:0 1px 2px var(--shadow)}.insight-panel-chip--selected:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--surface);transform:translateY(-1px)}.insight-panel-chip--selected[data-insight-panel=level]{box-shadow:0 2px 14px #0d948861}[data-theme=dark] .insight-panel-chip--selected[data-insight-panel=level]{box-shadow:0 2px 16px #2dd4bf38}[data-theme=dark] .insight-panel-chip--selected,[data-theme=dark] .insight-panel-chip--selected:hover{color:#0f172a}@media (max-width: 1100px) and (min-width: 680px),(min-width: 1420px){.app-shell.is-extended .insight-panels-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.85rem;align-content:start;transition:gap var(--duration-insights-tile) var(--ease-insights-soft)}.app-shell.is-extended .insight-panels-col{gap:1.85rem;transition:gap var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft),background-color var(--duration-insights-tile) ease}.app-shell.is-extended .app-insights .card{padding:1.7rem 1.95rem}.app-shell.is-extended .insight-panels-layout:has(>.insight-panels-col--right>.insight-objective-card:not(.insight-panel-is-hidden)){grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)}.app-shell.is-extended .insight-panels-layout:has(>.insight-panels-col--left>.insight-objective-card:not(.insight-panel-is-hidden)){grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr)}.app-shell.is-extended .insight-panels-col--left:has(.running-splits-wrap:not(.insight-panel-is-hidden)){min-width:min(100%,19rem)}.app-shell.is-extended .insight-panels-layout:has(>.insight-panels-col:only-child){grid-template-columns:1fr}.app-shell.is-extended .insight-panels-col:not(:has(>.card:not(.insight-panel-is-hidden))){display:none}}@media (prefers-reduced-motion: reduce){.app-shell,.app-insights,.go-further-chevron,.go-further-btn,.insight-panels-layout,.insight-panels-col,.insight-panels-col>section.card[data-insight-panel],.insight-panel-drag-handle,.insight-panel--dragging,.insight-panels-col--drop-hover,.insight-panel-chip{transition:none!important}.go-further-btn:hover,.insight-panel-chip:hover{transform:none}}.main{min-width:0}.header{margin-bottom:2rem}.header h1.site-title{position:relative;margin:0 0 .25rem;font-size:1.75rem;font-weight:700;letter-spacing:-.02em}.site-title-mark{display:inline-block;line-height:0;vertical-align:bottom}.site-title-img{display:block;height:2rem;width:auto;max-width:min(100%,20rem)}[data-theme=light] .site-title-img-for-dark-ui,[data-theme=dark] .site-title-img-for-light-ui{display:none}.site-title-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tagline{margin:0 0 1rem;color:var(--text-muted);font-size:.95rem;white-space:pre-line}.header-controls-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem}.header-actions{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:0}.header-controls-row .go-further-wrap{flex:0 0 auto;margin-top:0}.main>.go-further-wrap{margin-top:.75rem}.lang-toggle select,.unit-toggle select{font-family:var(--font-sans);font-size:.9rem;height:2.5rem;padding:0 .75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer;box-sizing:border-box}.lang-toggle select{min-width:8rem}.lang-toggle,.unit-toggle{position:relative;display:inline-flex}.lang-toggle[data-lang-menu=true] select,.unit-toggle[data-unit-menu=true] select{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.lang-menu-button,.unit-menu-button{font:inherit;display:inline-flex;align-items:center;justify-content:space-between;gap:.6rem;min-width:10.5rem;height:2.5rem;padding:0 .75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer;box-sizing:border-box}.lang-menu-button:hover,.lang-menu-button:focus-visible,.unit-menu-button:hover,.unit-menu-button:focus-visible,.unit-menu-button.athletics-run-dist-unit-wrap:focus-within{border-color:var(--accent);outline:none}body:not(.sport-running) .athletics-run-dist-unit-wrap,body.sport-running:not(.running-discipline-athletics) .athletics-run-dist-unit-wrap{display:none!important}.athletics-run-dist-unit-wrap[hidden]{display:none!important}.unit-menu-button.athletics-run-dist-unit-wrap{min-width:0;width:auto;max-width:7.5rem;flex-shrink:0;margin-left:.35rem;cursor:pointer}.unit-menu-button.athletics-run-dist-unit-wrap .athletics-run-dist-unit-select{font:inherit;flex:1 1 auto;min-width:0;max-width:5rem;margin:0;padding:0;border:none;border-radius:0;background:transparent;color:inherit;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none}.unit-menu-button.athletics-run-dist-unit-wrap .athletics-run-dist-unit-select:focus{outline:none}.unit-menu-button.athletics-run-dist-unit-wrap .unit-menu-button-chevron{pointer-events:none;flex-shrink:0}.lang-menu-button-label,.unit-menu-button-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lang-menu-button-chevron,.unit-menu-button-chevron{width:1rem;height:1rem;flex:0 0 auto;transition:transform .15s ease}.lang-toggle.is-open .lang-menu-button-chevron,.unit-toggle.is-open .unit-menu-button-chevron{transform:rotate(180deg)}.lang-menu-list,.unit-menu-list{position:absolute;top:calc(100% + .4rem);left:0;z-index:20;min-width:100%;padding:.35rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 12px 28px var(--shadow)}.lang-menu-option{font:inherit;width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .7rem;border:0;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;text-align:left}.lang-menu-option:hover,.lang-menu-option:focus-visible,.lang-menu-option.is-active{background:var(--bg);outline:none}.lang-menu-option-main{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.lang-menu-option-label{min-width:0}.lang-menu-ai-badge{flex:0 0 auto;padding:.14rem .42rem;border:1px solid color-mix(in srgb,var(--accent) 50%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-size:.7rem;font-weight:700;line-height:1.2;letter-spacing:.04em}.sport-menu{margin-bottom:1.75rem}.sport-menu-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;max-width:100%;padding:.45rem;background:var(--bg);border-radius:14px;border:1px solid var(--border);box-shadow:inset 0 1px 2px #0f172a0d}[data-theme=dark] .sport-menu-inner{box-shadow:inset 0 1px 2px #00000047}@media (max-width: 480px){.sport-menu-inner{grid-template-columns:repeat(2,1fr)}}.sport-btn{position:relative;font-family:var(--font-sans);font-size:.95rem;font-weight:600;letter-spacing:-.015em;padding:.72rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer;transition:background var(--duration-insights-tile) var(--ease-insights-soft),border-color var(--duration-insights-tile) var(--ease-insights-soft),color var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft);box-shadow:0 1px 3px var(--shadow),inset 0 1px #ffffff7a;min-height:2.7rem}[data-theme=dark] .sport-btn{box-shadow:0 2px 8px #00000038,inset 0 1px #ffffff12}.sport-btn:hover:not(.active){background:color-mix(in srgb,var(--surface) 82%,var(--accent));border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:0 4px 14px var(--shadow),inset 0 1px #ffffff6b}[data-theme=dark] .sport-btn:hover:not(.active){box-shadow:0 4px 18px #00000059,inset 0 1px #ffffff0f}.sport-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;z-index:1}.sport-btn.active{background:var(--accent);border-color:color-mix(in srgb,var(--accent) 78%,#0f172a);color:#fff;box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 38%,transparent),inset 0 1px #ffffff38}.sport-btn.active:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff;box-shadow:0 4px 16px color-mix(in srgb,var(--accent-hover) 36%,transparent),inset 0 1px #ffffff47}[data-theme=dark] .sport-btn.active,[data-theme=dark] .sport-btn.active:hover{color:#0f172a}.sport-running-wrap{position:relative;min-width:0}.sport-running-menu-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:.4rem;width:100%;text-align:left}.sport-running-menu-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sport-running-menu-chevron{width:1rem;height:1rem;flex-shrink:0;transition:transform .15s ease}.sport-running-wrap.is-open .sport-running-menu-chevron{transform:rotate(180deg)}.sport-running-menu-list{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:25;min-width:min(100%,12.5rem)}.field.trail-elevation-field,.result-row.trail-vap-row,.trail-famous-races-wrap{display:none!important}.sport-running.running-discipline-trail .trail-famous-races-wrap{display:block!important;margin-bottom:1.1rem}.sport-running.running-discipline-trail .field.trail-elevation-field,.sport-running.running-discipline-trail .result-row.trail-vap-row{display:flex!important}.field.trail-famous-races-field{flex-direction:column;align-items:stretch;gap:.35rem;margin:0}.trail-famous-races-field-heading{display:flex;align-items:center;width:100%;position:relative;overflow:visible}.trail-famous-races-field-title-cluster{display:flex;align-items:center;gap:.3rem;min-width:0}.trail-famous-races-field-label{font-size:.8rem;font-weight:600;color:var(--text-muted);margin:0;flex:0 1 auto;min-width:0}.trail-famous-race-info-wrap{position:static;flex-shrink:0;align-self:center;margin-top:0}.trail-famous-race-combobox{position:relative;width:100%;max-width:100%}.trail-famous-race-input-shell{display:flex;align-items:stretch;width:100%;min-height:2.5rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.trail-famous-race-input-shell:focus-within{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0d94881f}[data-theme=dark] .trail-famous-race-input-shell:focus-within{box-shadow:0 0 0 3px #2dd4bf29}.field.trail-famous-races-field .trail-famous-race-search-input{flex:1;min-width:0;width:auto;font-family:var(--font-sans);font-size:.9rem;padding:.45rem .5rem .45rem .65rem;border:none;border-radius:0;background:transparent;color:var(--text);box-sizing:border-box;box-shadow:none!important}.field.trail-famous-races-field .trail-famous-race-search-input:focus{outline:none}.trail-famous-race-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;margin:0;padding:0;border:none;border-left:1px solid var(--border);border-radius:0 7px 7px 0;background:var(--surface);color:var(--text-muted);cursor:pointer;transition:background .12s ease,color .12s ease}.trail-famous-race-toggle:hover{background:#0d94880f;color:var(--text)}[data-theme=dark] .trail-famous-race-toggle:hover{background:#2dd4bf14}.trail-famous-race-toggle:focus{outline:none}.trail-famous-race-input-shell:focus-within .trail-famous-race-toggle{border-left-color:#0d948859}.trail-famous-race-toggle-icon{width:1.1rem;height:1.1rem}.trail-famous-race-dropdown{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);box-shadow:0 8px 24px #0000001f;overflow:hidden}[data-theme=dark] .trail-famous-race-dropdown{box-shadow:0 8px 28px #00000059}.trail-famous-race-listbox{margin:0;padding:.25rem 0;list-style:none;max-height:min(14rem,45vh);overflow-y:auto}.trail-famous-race-empty{padding:.65rem .75rem;border-top:1px solid var(--border)}.trail-famous-race-empty[hidden]{display:none!important}.trail-famous-race-empty-msg{margin:0 0 .5rem;font-size:.82rem;line-height:1.4;color:var(--text-muted)}.trail-famous-race-request-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;padding:.45rem .65rem;font-family:var(--font-sans);font-size:.85rem;font-weight:600;text-align:center;text-decoration:none;color:var(--surface);background:var(--accent);border-radius:6px;border:none;cursor:pointer;transition:opacity .15s ease,filter .15s ease}.trail-famous-race-request-btn:hover{filter:brightness(1.06)}.trail-famous-race-request-btn:focus{outline:none;box-shadow:0 0 0 3px #0d948859}[data-theme=dark] .trail-famous-race-request-btn:focus{box-shadow:0 0 0 3px #2dd4bf59}.trail-famous-race-option{margin:0;padding:.5rem .75rem;font-size:.88rem;line-height:1.35;cursor:pointer}.trail-famous-race-option:hover,.trail-famous-race-option:focus{background:#0d948814}[data-theme=dark] .trail-famous-race-option:hover,[data-theme=dark] .trail-famous-race-option:focus{background:#2dd4bf1a}.trail-famous-race-option[hidden]{display:none!important}.distance-inputs .field.trail-elevation-field{flex-direction:column;align-items:stretch;align-self:start;min-width:0}.trail-elevation-row{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.35rem;width:100%;min-width:0}.trail-elevation-field-title-cluster{display:flex;align-items:center;gap:.3rem;flex:0 0 auto;min-width:0}.trail-elevation-field-title-cluster .trail-elevation-field-label{font-size:.8rem;font-weight:600;color:var(--text-muted);flex:0 1 auto;margin:0;max-width:none;white-space:nowrap}.trail-elevation-row input{flex:1;min-width:0;font-family:var(--font-mono);font-size:1rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text)}.trail-elevation-row .unit-label{font-size:.8rem;color:var(--text-muted);flex:0 0 auto;min-width:1.8rem}.sport-triathlon .field[data-sport]:not([data-sport~=triathlon]),.sport-triathlon .pace-block[data-sport]:not([data-sport~=triathlon]),.sport-triathlon .pace-run-target-group[data-sport]:not([data-sport~=triathlon]),.sport-triathlon .pace-run-race-time-toggle-wrap[data-sport]:not([data-sport~=triathlon]),.sport-triathlon .result-row[data-sport]:not([data-sport~=triathlon]){display:none!important}.sport-running .field[data-sport]:not([data-sport~=running]),.sport-running .pace-block[data-sport]:not([data-sport~=running]),.sport-running .pace-run-target-group[data-sport]:not([data-sport~=running]),.sport-running .pace-run-race-time-toggle-wrap[data-sport]:not([data-sport~=running]),.sport-running .result-row[data-sport]:not([data-sport~=running]){display:none!important}.sport-duathlon .field[data-sport]:not([data-sport~=duathlon]),.sport-duathlon .pace-block[data-sport]:not([data-sport~=duathlon]),.sport-duathlon .pace-run-target-group[data-sport]:not([data-sport~=duathlon]),.sport-duathlon .pace-run-race-time-toggle-wrap[data-sport]:not([data-sport~=duathlon]),.sport-duathlon .result-row[data-sport]:not([data-sport~=duathlon]){display:none!important}.sport-swimrun .field[data-sport]:not([data-sport~=swimrun]),.sport-swimrun .pace-block[data-sport]:not([data-sport~=swimrun]),.sport-swimrun .pace-run-target-group[data-sport]:not([data-sport~=swimrun]),.sport-swimrun .pace-run-race-time-toggle-wrap[data-sport]:not([data-sport~=swimrun]),.sport-swimrun .result-row[data-sport]:not([data-sport~=swimrun]){display:none!important}.sport-triathlon .running-splits-wrap[data-sport]:not([data-sport~=triathlon]),.sport-duathlon .running-splits-wrap[data-sport]:not([data-sport~=duathlon]),.sport-swimrun .running-splits-wrap[data-sport]:not([data-sport~=swimrun]){display:none!important}.info-btn,.theme-btn{width:2.5rem;height:2.5rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;text-decoration:none;font-size:1.1rem;font-weight:600}.info-btn:hover,.theme-btn:hover{background:var(--bg);border-color:var(--accent)}.info-btn svg.info-icon{width:1.15rem;height:1.15rem}.theme-btn .theme-icon{position:absolute;display:flex;align-items:center;justify-content:center}.theme-btn .theme-icon svg{width:1.15rem;height:1.15rem}.theme-btn .sun{opacity:0}.theme-btn .moon,[data-theme=dark] .theme-btn .sun{opacity:1}[data-theme=dark] .theme-btn .moon{opacity:0}@media (max-width: 640px){.header-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;gap:.5rem .45rem;align-items:center;flex:1 1 auto;min-width:0}.lang-toggle,.unit-toggle{min-width:0}.lang-toggle select{min-width:0;width:100%;max-width:100%;padding-left:.5rem;padding-right:1.75rem;font-size:.82rem}.lang-menu-button,.unit-menu-button:not(.athletics-run-dist-unit-wrap){display:flex;flex-wrap:nowrap;align-items:center;min-width:0;width:100%;max-width:100%;padding-left:.5rem;padding-right:.55rem;gap:.35rem;font-size:.82rem;overflow:hidden}.unit-menu-button.athletics-run-dist-unit-wrap{display:inline-flex;width:auto;max-width:7rem;min-width:0;flex-shrink:0;padding-left:.5rem;padding-right:.55rem;gap:.35rem;font-size:.82rem;overflow:hidden}.lang-menu-button-label,.unit-menu-button-label{flex:1 1 0%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lang-menu-button-chevron,.unit-menu-button-chevron{width:.85rem;height:.85rem;flex-shrink:0}.lang-menu-option-main{min-width:0}.lang-menu-option-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-btn,.theme-btn{width:2.65rem;height:2.65rem;flex-shrink:0}.info-btn svg.info-icon,.theme-btn .theme-icon svg{width:1.28rem;height:1.28rem}}.card{background:var(--surface);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.25rem;border:1px solid var(--border);box-shadow:0 1px 3px var(--shadow)}.main>.card{position:relative;border-radius:14px;border:1px solid rgba(13,148,136,.16);box-shadow:0 6px 28px var(--shadow),inset 0 1px #ffffff6b}[data-theme=dark] .main>.card{border-color:#2dd4bf33;box-shadow:0 8px 32px var(--shadow),inset 0 1px #ffffff0f}.card h2{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.go-further-btn{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;margin:0;padding:.65rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-family:var(--font-sans);font-size:.95rem;font-weight:600;color:var(--accent);cursor:pointer;text-align:left;box-shadow:0 1px 2px var(--shadow);transition:color var(--duration-insights-tile) var(--ease-insights-soft),background var(--duration-insights-tile) var(--ease-insights-soft),border-color var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft),transform .25s var(--ease-insights-soft)}@media (min-width: 1101px){.header-controls-row .go-further-btn{width:auto;min-width:9.25rem;max-width:16rem}}.go-further-btn:hover{color:var(--accent-hover);background:var(--bg);border-color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 14px var(--shadow)}.go-further-chevron{flex-shrink:0;transition:transform var(--duration-insights) var(--ease-insights)}.go-further-btn[aria-expanded=true] .go-further-chevron{transform:rotate(180deg)}@media (max-width: 1100px){.go-further-chevron{transform:rotate(180deg)}.go-further-btn[aria-expanded=true] .go-further-chevron{transform:rotate(0)}}.app-insights .card{padding:1.45rem 1.65rem}.insight-panels-col>section.card[data-insight-panel]{transform-origin:center top;transition:opacity var(--duration-insights-tile) var(--ease-insights-soft),transform var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft)}.insight-card-title{margin:0 0 1rem}.insight-card-title--draggable{display:flex;align-items:center;gap:.35rem}.insight-section-heading-cluster{display:flex;align-items:center;gap:.35rem;flex:1 1 auto;min-width:0}.insight-card-title--draggable .insight-section-heading-cluster{flex:1 1 auto;min-width:0;width:auto}.insight-section-heading-cluster:hover .insight-section-toggle{color:var(--accent)}.insight-panel-drag-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:.15rem;margin:0;border-radius:6px;color:var(--text-muted);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;line-height:0;transition:color var(--duration-insights-tile) var(--ease-insights-soft),background-color var(--duration-insights-tile) var(--ease-insights-soft),transform .2s var(--ease-insights-soft)}.insight-panel-drag-handle:hover{color:var(--accent);background:var(--bg);transform:scale(1.06)}.insight-panel-drag-handle:active{cursor:grabbing;transform:scale(.96)}.insight-panel-drag-handle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.insight-panel--dragging{opacity:.72;transform:scale(.988);box-shadow:0 14px 36px var(--shadow)}.insight-panels-col--drop-hover{box-shadow:0 0 0 2px var(--accent),0 10px 32px #0d948824;background:#0d94880f}[data-theme=dark] .insight-panels-col--drop-hover{box-shadow:0 0 0 2px var(--accent),0 12px 40px #00000059;background:#2dd4bf14}.insight-card-title .insight-section-toggle{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;margin:0;padding:.1rem 0;border:none;background:transparent;font-family:var(--font-sans);font-size:1rem;font-weight:600;line-height:1.25;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-align:left;border-radius:8px;transition:color var(--duration-insights-tile) var(--ease-insights-soft)}.insight-card-title .insight-section-heading-cluster .insight-section-toggle{width:auto}.insight-section-toggle--title{flex:1 1 auto;min-width:0;justify-content:flex-start;gap:.5rem}.insight-section-toggle--chevron{flex-shrink:0;justify-content:center;padding:.1rem 0;min-width:1.75rem}.insight-card-title--draggable .insight-section-toggle:not(.insight-section-toggle--title):not(.insight-section-toggle--chevron){flex:1 1 auto;min-width:0;width:auto}.insight-section-title-text{flex:1 1 auto;min-width:0;text-align:left}.insight-section-toggle:hover{color:var(--accent)}.insight-section-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.insight-section-chevron{flex-shrink:0;color:var(--accent);transition:transform var(--duration-insights-tile) var(--ease-insights-soft)}.insight-section-toggle[aria-expanded=false] .insight-section-chevron{transform:rotate(-90deg)}@media (prefers-reduced-motion: reduce){.insight-section-chevron{transition:none}}.insight-section-body[hidden]{display:none!important}.insight-card .insight-card-body{margin:0}.insight-level-assess{padding:.1rem 0 0;border-radius:8px}.insight-level-assess[data-level-state=idle] .insight-level-assess-panel{display:none}.insight-level-assess-panel{position:relative;margin-top:.15rem;padding:1rem 1.1rem 1.1rem;border-radius:14px;border:1px solid rgba(13,148,136,.22);background:var(--surface);box-shadow:0 6px 28px var(--shadow),inset 0 1px #ffffff73}[data-theme=dark] .insight-level-assess-panel{border-color:#2dd4bf47;background:var(--surface);box-shadow:0 8px 32px var(--shadow),inset 0 1px #ffffff0f}.insight-level-assess[data-level-state=incomplete] .insight-level-assess-panel{border-color:var(--border);background:linear-gradient(145deg,rgba(90,107,125,.07) 0%,var(--surface) 55%);box-shadow:0 4px 20px var(--shadow)}[data-theme=dark] .insight-level-assess[data-level-state=incomplete] .insight-level-assess-panel{background:linear-gradient(145deg,rgba(148,163,184,.08) 0%,var(--surface) 55%)}.insight-level-assess-meter-wrap{margin:0 0 .85rem}.insight-level-assess:not([data-level-state=ready]):not([data-level-state=incomplete]) .insight-level-assess-meter-wrap{display:none}.insight-level-assess-meter{display:flex;align-items:flex-end;gap:.28rem;height:1.05rem}.insight-level-assess-step{flex:1;min-width:0;height:.34rem;border-radius:999px;background:var(--border);opacity:.85;transform-origin:center bottom;transition:height .35s var(--ease-insights-soft),background .35s var(--ease-insights-soft),box-shadow .35s var(--ease-insights-soft),opacity .35s ease}.insight-level-assess[data-level-state=incomplete] .insight-level-assess-step{background:var(--slider-track);opacity:.55;height:.28rem}.insight-level-assess-step.is-lit{opacity:1;background:linear-gradient(180deg,var(--accent-hover) 0%,var(--accent) 100%);box-shadow:0 0 0 1px #0d948840}[data-theme=dark] .insight-level-assess-step.is-lit{box-shadow:0 0 0 1px #2dd4bf4d}.insight-level-assess-step.is-peak{height:.78rem;box-shadow:0 0 0 1px #0d948859,0 3px 10px #0d94884d}[data-theme=dark] .insight-level-assess-step.is-peak{box-shadow:0 0 0 1px #2dd4bf66,0 3px 12px #2dd4bf38}.insight-level-assess[data-level-tier="5"] .insight-level-assess-step.is-peak{background:linear-gradient(180deg,#fbbf24 0%,var(--accent) 55%,var(--accent-hover) 100%)}[data-theme=dark] .insight-level-assess[data-level-tier="5"] .insight-level-assess-step.is-peak{background:linear-gradient(180deg,#fcd34d 0%,var(--accent) 50%,var(--accent-hover) 100%)}@media (prefers-reduced-motion: reduce){.insight-level-assess-step{transition:none}}@media (prefers-reduced-motion: no-preference){.insight-level-assess[data-level-state=ready] .insight-level-assess-step.is-peak{animation:insight-level-peak-pulse 2.4s var(--ease-insights-soft) infinite}}@keyframes insight-level-peak-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.08)}}.insight-level-assess-headline{margin:0 0 .55rem;font-size:1.22rem;font-weight:700;line-height:1.28;letter-spacing:-.03em;color:var(--text)}.insight-level-assess[data-level-state=incomplete] .insight-level-assess-headline{font-size:1.08rem;letter-spacing:-.02em}.insight-level-assess-detail{margin:0;font-size:.95rem;line-height:1.6;color:var(--text-muted)}.insight-level-info-wrap,.insight-ranking-info-wrap{position:relative;flex-shrink:0;align-self:flex-start;margin-top:.12rem}.insight-ranking-info-wrap{margin-top:0}.insight-section-heading-cluster .insight-level-info-wrap,.insight-section-heading-cluster .insight-ranking-info-wrap{margin-top:0;align-self:center}.insight-level-info-btn,.insight-ranking-info-btn,.trail-famous-race-info-btn{display:flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--bg);color:var(--text-muted);cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.insight-level-info-btn:hover,.insight-ranking-info-btn:hover,.trail-famous-race-info-btn:hover,.insight-level-info-wrap:is(:hover,:focus-within,.is-open) .insight-level-info-btn,.insight-ranking-info-wrap:is(:hover,:focus-within,.is-open) .insight-ranking-info-btn,.trail-famous-race-info-wrap:is(:hover,:focus-within,.is-open) .trail-famous-race-info-btn{color:var(--accent);border-color:var(--accent)}.insight-level-info-btn:focus-visible,.insight-ranking-info-btn:focus-visible,.trail-famous-race-info-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.insight-level-info-bubble,.insight-ranking-info-bubble,.trail-famous-race-info-bubble{position:absolute;right:0;top:calc(100% + .35rem);z-index:30;min-width:min(18rem,calc(100vw - 2.5rem));max-width:min(22rem,calc(100vw - 2rem));padding:.65rem .75rem;border-radius:10px;border:1px solid var(--border);background:var(--bg);box-shadow:0 8px 28px #0000001f;opacity:0;visibility:hidden;transform:translateY(-4px);pointer-events:none;text-transform:none;letter-spacing:normal;transition:opacity .18s ease,visibility .18s ease,transform .18s ease}[data-theme=dark] .insight-level-info-bubble,[data-theme=dark] .insight-ranking-info-bubble,[data-theme=dark] .trail-famous-race-info-bubble{box-shadow:0 10px 32px #00000073}.insight-level-info-wrap:hover .insight-level-info-bubble,.insight-level-info-wrap:focus-within .insight-level-info-bubble,.insight-level-info-wrap.is-open .insight-level-info-bubble,.insight-ranking-info-wrap:hover .insight-ranking-info-bubble,.insight-ranking-info-wrap:focus-within .insight-ranking-info-bubble,.insight-ranking-info-wrap.is-open .insight-ranking-info-bubble,.trail-famous-race-info-wrap:hover .trail-famous-race-info-bubble,.trail-famous-race-info-wrap:focus-within .trail-famous-race-info-bubble,.trail-famous-race-info-wrap.is-open .trail-famous-race-info-bubble{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}@media (prefers-reduced-motion: reduce){.insight-level-info-bubble,.insight-ranking-info-bubble,.trail-famous-race-info-bubble{transition:none;transform:none}}.insight-level-assess-meta{margin:0 0 .5rem;font-size:.78rem;line-height:1.45;color:var(--text-muted)}.insight-level-assess-disclaimer{margin:0;font-size:.72rem;line-height:1.4;color:var(--text-muted);opacity:.92}.insight-level-info-bubble .insight-level-assess-meta,.insight-ranking-info-bubble .insight-level-assess-meta{font-size:.8rem;line-height:1.45;text-transform:none;letter-spacing:normal}.insight-level-info-bubble .insight-level-assess-disclaimer,.insight-ranking-info-bubble .insight-level-assess-disclaimer,.trail-famous-race-info-bubble .trail-famous-race-info-bubble-text{font-size:.74rem;line-height:1.42;text-transform:none;letter-spacing:normal}.trail-famous-race-info-bubble .trail-famous-race-info-bubble-text{margin:0;color:var(--text-muted);opacity:.92;overflow-wrap:break-word;word-break:break-word}.trail-famous-race-info-bubble{left:0;right:auto;width:min(100%,22rem);max-width:100%;min-width:0;box-sizing:border-box}.trail-famous-race-info-wrap .trail-famous-race-info-btn{width:1.45rem;height:1.45rem;border:none;border-radius:999px;background:transparent;color:var(--text-muted);opacity:.78}.trail-famous-race-info-wrap .trail-famous-race-info-btn:hover,.trail-famous-race-info-wrap:is(:hover,:focus-within,.is-open) .trail-famous-race-info-btn{opacity:1;color:var(--accent);border:none;background:#0d948817}[data-theme=dark] .trail-famous-race-info-wrap .trail-famous-race-info-btn:hover,[data-theme=dark] .trail-famous-race-info-wrap:is(:hover,:focus-within,.is-open) .trail-famous-race-info-btn{background:#2dd4bf1c}.trail-famous-race-info-wrap .trail-famous-race-info-icon{width:.72rem;height:.72rem}.insight-ranking-estimate{padding:.1rem 0 0}.insight-ranking-incomplete{margin:0;font-size:.9rem;line-height:1.5;color:var(--text-muted)}.insight-ranking-visual-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1rem}@media (max-width: 520px){.insight-ranking-visual-grid{grid-template-columns:1fr}}.insight-ranking-visual-card{padding:.65rem .7rem .55rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:0 2px 12px var(--shadow)}.insight-ranking-visual-card--inactive{opacity:.72;background:var(--bg);box-shadow:none}.insight-ranking-visual-card--inactive .insight-ranking-visual-bar-fill{opacity:.35}.insight-ranking-visual-label{display:block;margin:0 0 .45rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.insight-ranking-visual-bar{margin:0 0 .4rem}.insight-ranking-visual-bar-track{height:.45rem;border-radius:999px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--border);overflow:hidden}.insight-ranking-visual-bar-fill{height:100%;width:0%;min-width:0;border-radius:999px;transition:width .55s cubic-bezier(.22,1,.36,1);background:linear-gradient(90deg,var(--accent-hover),var(--accent))}.insight-ranking-visual-bar-fill--category{background:linear-gradient(90deg,var(--text-muted),var(--accent))}.insight-ranking-visual-big{margin:0;font-size:1.45rem;font-weight:800;letter-spacing:-.03em;line-height:1.15;color:var(--text)}.insight-ranking-visual-topword{font-weight:650;font-size:.72em;letter-spacing:.02em;color:var(--text-muted);text-transform:uppercase;margin-right:.12em}.insight-ranking-visual-nums{color:var(--accent);font-variant-numeric:tabular-nums}.insight-ranking-visual-pctsym{font-size:.75em;font-weight:750;color:var(--accent);margin-left:.02em}.insight-ranking-visual-sub{margin:.28rem 0 0;font-size:.68rem;line-height:1.35;color:var(--text-muted)}.insight-ranking-foot-short{margin:.65rem 0 0;font-size:.65rem;line-height:1.35;color:var(--text-muted);opacity:.88}@media (prefers-reduced-motion: reduce){.insight-ranking-visual-bar-fill{transition:none}}.insight-placeholder{min-height:6rem;border-radius:8px;border:1px dashed var(--border);background:var(--bg)}.sport-running-only{display:none!important}.sport-running .sport-running-only,.sport-not-running{display:block!important}.sport-running .sport-not-running{display:none!important}.insight-objective-intro{margin:0 0 .85rem;font-size:.88rem;color:var(--text-muted);line-height:1.45}.objective-target-banner{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;padding:.65rem .85rem;margin-bottom:1rem;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.objective-target-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.objective-target-value{font-family:var(--font-mono);font-size:1rem;font-weight:600;color:var(--accent)}.objective-feature{position:relative;margin-top:.15rem;padding:.95rem 1rem 1.1rem;border-radius:14px;border:1px solid rgba(13,148,136,.16);background:var(--surface);box-shadow:0 6px 28px var(--shadow),inset 0 1px #ffffff6b}[data-theme=dark] .objective-feature{border-color:#2dd4bf33;background:var(--surface);box-shadow:0 8px 32px var(--shadow),inset 0 1px #ffffff0f}.objective-fieldset{margin:0 0 1rem;padding:0;border:none}.objective-fieldset--card{margin-bottom:.9rem;padding:.9rem .95rem .95rem;border:1px solid var(--border);border-radius:12px;background:var(--bg);box-shadow:inset 0 1px #ffffff47}[data-theme=dark] .objective-fieldset--card{box-shadow:inset 0 1px #ffffff0a}.objective-legend{padding:0;margin:0 0 .5rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.objective-hint{margin:0 0 .65rem;font-size:.81rem;color:var(--text-muted);line-height:1.45}.objective-pb-rows{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem;container-type:inline-size;container-name:objective-pb}.objective-pb-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem;min-width:0;padding:.6rem .7rem;border-radius:11px;border:1px solid var(--border);background:var(--surface);box-shadow:0 2px 10px var(--shadow)}.objective-pb-fields{flex:1 1 16rem;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.75fr) minmax(0,1.15fr);gap:.5rem;min-width:0}@container objective-pb (max-width: 34rem){.objective-pb-fields{grid-template-columns:1fr 1fr}.objective-pb-field--elev{grid-column:1 / -1}}@container objective-pb (max-width: 22rem){.objective-pb-fields{grid-template-columns:1fr}.objective-pb-field--elev{grid-column:auto}}@media (max-width: 520px){.objective-pb-fields{grid-template-columns:1fr 1fr}.objective-pb-field--elev{grid-column:1 / -1}}@media (max-width: 360px){.objective-pb-fields{grid-template-columns:1fr}.objective-pb-field--elev{grid-column:auto}}body.sport-running.running-discipline-road .objective-pb-fields,body.sport-running.running-discipline-athletics .objective-pb-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body.sport-running.running-discipline-road .objective-pb-field--elev,body.sport-running.running-discipline-athletics .objective-pb-field--elev{display:none!important}body.sport-running.running-discipline-road .objective-pb-row,body.sport-running.running-discipline-athletics .objective-pb-row{flex-wrap:nowrap}body.sport-running.running-discipline-road .objective-pb-fields,body.sport-running.running-discipline-athletics .objective-pb-fields{flex:1 1 0;min-width:0}body.sport-running.running-discipline-trail .objective-pb-fields{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto}body.sport-running.running-discipline-trail .objective-pb-fields>.objective-pb-field:nth-child(1){grid-column:1;grid-row:1}body.sport-running.running-discipline-trail .objective-pb-fields>.objective-pb-field--elev{grid-column:2;grid-row:1}body.sport-running.running-discipline-trail .objective-pb-fields>.objective-pb-field:nth-child(3){grid-column:1 / -1;grid-row:2}body.sport-running.running-discipline-trail .objective-pb-row input[type=text]{min-height:2.35rem}body.sport-running.running-discipline-trail .objective-pb-dist-wrap{min-width:0}body.sport-running.running-discipline-trail .objective-pb-dist-unit{display:none}.objective-pb-field{display:flex;flex-direction:column;gap:.2rem;min-width:0}.objective-pb-field span:first-child{font-size:.72rem;color:var(--text-muted)}.objective-pb-dist-wrap{display:flex;align-items:center;gap:.35rem}.objective-pb-row input[type=text]{font-family:var(--font-mono);font-size:.85rem;padding:.4rem .5rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);width:100%;min-width:0;box-sizing:border-box}.objective-pb-dist-unit{font-size:.75rem;color:var(--text-muted);white-space:nowrap}.objective-pb-remove{flex-shrink:0;align-self:flex-end;margin-left:auto;position:relative;z-index:1;width:2rem;height:2rem;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);cursor:pointer;font-size:1.1rem;line-height:1;transition:border-color var(--duration-insights-tile) var(--ease-insights-soft),color var(--duration-insights-tile) var(--ease-insights-soft),background var(--duration-insights-tile) var(--ease-insights-soft)}.objective-pb-remove:hover{border-color:var(--error);color:var(--error)}.objective-add-pb{display:inline-flex;align-items:center;gap:.35rem;margin-top:.25rem;padding:.45rem .75rem;font-family:var(--font-sans);font-size:.85rem;font-weight:600;border:1px dashed rgba(13,148,136,.34);border-radius:8px;background:#0d94880a;color:var(--accent);cursor:pointer;transition:border-color var(--duration-insights-tile) var(--ease-insights-soft),background var(--duration-insights-tile) var(--ease-insights-soft),color var(--duration-insights-tile) var(--ease-insights-soft),transform .2s var(--ease-insights-soft)}.objective-add-pb:hover{border-color:var(--accent);background:#0d948814;transform:translateY(-1px)}[data-theme=dark] .objective-add-pb{border-color:#2dd4bf4d;background:#2dd4bf0f}[data-theme=dark] .objective-add-pb:hover{background:#2dd4bf1a}.objective-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem .75rem}@media (max-width: 480px){.objective-profile-grid{grid-template-columns:1fr}}.objective-field{display:flex;flex-direction:column;gap:.25rem;min-width:0}.objective-field--span{grid-column:1 / -1}.objective-field span{font-size:.72rem;color:var(--text-muted)}.objective-field input,.objective-field select{font-family:var(--font-sans);font-size:.88rem;padding:.45rem .5rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);width:100%;box-sizing:border-box;transition:border-color var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft),background var(--duration-insights-tile) var(--ease-insights-soft)}.objective-field input:focus,.objective-field select:focus,.objective-pb-row input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0d94881f}[data-theme=dark] .objective-field input:focus,[data-theme=dark] .objective-field select:focus,[data-theme=dark] .objective-pb-row input[type=text]:focus{box-shadow:0 0 0 3px #2dd4bf29}.objective-volume-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.objective-volume-row input{flex:1 1 5rem;min-width:0}.objective-volume-row select{flex:2 1 10rem;min-width:0}.objective-gauge-block{margin-top:.5rem}.objective-gauge-card{padding:.95rem 1rem .9rem;border-radius:14px;border:1px solid rgba(13,148,136,.18);background:linear-gradient(145deg,rgba(13,148,136,.06) 0%,var(--surface) 60%);box-shadow:0 4px 20px var(--shadow)}[data-theme=dark] .objective-gauge-card{border-color:#2dd4bf33;background:linear-gradient(145deg,rgba(45,212,191,.06) 0%,var(--surface) 60%)}.objective-gauge-svg-wrap{position:relative;display:flex;justify-content:center;margin-bottom:.55rem}.objective-gauge-svg{display:block}.objective-gauge-bg{stroke:var(--border);opacity:.85}.objective-gauge-fill{stroke:var(--border);stroke-dasharray:245;stroke-dashoffset:245;transition:stroke-dashoffset .45s var(--ease-insights),stroke .25s ease}@media (prefers-reduced-motion: reduce){.objective-gauge-fill{transition:none}}.objective-gauge-center{position:absolute;left:50%;bottom:.35rem;transform:translate(-50%);text-align:center;pointer-events:none}.objective-chance-pct{display:block;font-family:var(--font-mono);font-size:1.65rem;font-weight:700;color:var(--accent);line-height:1.1}.objective-chance-label{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}@media (prefers-reduced-motion: reduce){.objective-add-pb,.objective-field input,.objective-field select,.objective-pb-row input[type=text],.objective-pb-remove{transition:none}.objective-add-pb:hover{transform:none}}.paces-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:1rem}.paces-card-head h2{margin:0;flex:1;min-width:0;line-height:1.25}.info-page{max-width:720px;margin:0 auto;padding:2rem 1.5rem}.info-page h1{margin:0 0 .5rem;font-size:1.5rem}.info-page h2{margin:0 0 .75rem;font-size:1.15rem}.info-page .card h2{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.info-page .back-link{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:2rem;color:var(--accent);text-decoration:none;font-weight:500}.info-page .back-link:hover{color:var(--accent-hover)}.info-page .card{margin-bottom:1.25rem}.info-page p{margin:0 0 1rem;line-height:1.6}.info-page p:last-child{margin-bottom:0}.info-page a{color:var(--accent);text-decoration:none}.info-page a:hover{text-decoration:underline}.info-page hr{border:none;border-top:1px solid var(--border);margin:1.5rem 0}.info-footer-meta{margin-top:2.5rem;padding-top:1.5rem;text-align:center;font-size:.9rem;color:var(--text-muted)}.info-footer-meta p{margin:0 0 .35rem}.info-footer-meta p:last-child{margin-bottom:0}.buy-me-coffee-link{display:inline-block;line-height:0}.buy-me-coffee-link img{max-width:100%;height:auto;vertical-align:middle}.info-page .error-code{font-family:var(--font-mono);font-size:2.5rem;font-weight:500;color:var(--accent);line-height:1;margin:0 0 .75rem;letter-spacing:-.04em}.info-page .error-intro{color:var(--text-muted)}.info-page .error-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.info-page .error-actions .error-btn{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.25rem;border-radius:8px;font-weight:600;font-size:.95rem;text-decoration:none;border:1px solid var(--border);background:var(--surface);color:var(--text)}.info-page .error-actions .error-btn:hover{text-decoration:none}.info-page .error-actions .error-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.info-page .error-actions .error-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.info-page .error-actions .error-btn:not(.error-btn-primary):hover{border-color:var(--accent);color:var(--accent)}.presets{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.preset-btn{font-family:var(--font-sans);font-size:.85rem;padding:.5rem .85rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer;transition:background .15s,border-color .15s,color .15s;touch-action:manipulation}.preset-btn:hover{background:var(--bg);border-color:var(--accent)}.preset-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.distance-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (min-width: 521px){.sport-running.running-discipline-trail .distance-inputs{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sport-running.running-discipline-trail .distance-inputs>.field[data-sport~=running]{min-width:0}}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.field input{font-family:var(--font-mono);font-size:1rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);width:100%}.field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--shadow)}.field input.error{border-color:var(--border);border-bottom:2px solid var(--error);color:var(--text)}.field input.error:focus{border-color:var(--border);border-bottom:2px solid var(--error)}.field .unit-label{font-size:.8rem;color:var(--text-muted);margin-left:.25rem}.distance-inputs .field{flex-direction:row;align-items:baseline}.distance-inputs .field input{flex:1;min-width:0}.distance-inputs .field .unit-label{margin-left:.35rem;min-width:1.8rem}.distance-inputs .field.dist-run-field .unit-menu-button.athletics-run-dist-unit-wrap{align-self:center}.distance-inputs .field.dist-run-field .dist-run-field-label-cluster{display:flex;align-items:center;gap:.3rem;flex:0 0 auto;min-width:0}.distance-inputs .field.dist-run-field .dist-run-field-label-cluster label{margin:0;white-space:nowrap}.pace-alt-run-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:0;min-width:0}.pace-alt-run-row .pace-alt-track:not([hidden]):before{content:"\b7";margin:0 .45rem;color:var(--text-muted);opacity:.88;font-size:1em}.pace-alt-run-row .pace-alt-track{margin:0;font-size:.72rem;line-height:1.35}.pace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.25rem;min-width:0}.pace-block{display:flex;flex-direction:column;gap:.4rem;min-width:0}.pace-block label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.pace-input-row{display:flex;align-items:center;gap:.25rem}.step-btn{width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:1.1rem;font-weight:600;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;touch-action:manipulation}.step-btn:hover{background:var(--bg);border-color:var(--accent);color:var(--accent)}.step-btn:active{background:var(--accent);border-color:var(--accent);color:#fff}.pace-input-row input{font-family:var(--font-mono);font-size:1rem;padding:.45rem .5rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);width:5.5rem;min-width:0}.pace-input-row input:focus{outline:none;border-color:var(--accent)}.pace-input-row input.error{border-color:var(--border);border-bottom:2px solid var(--error);color:var(--text)}.pace-input-row input.error:focus{border-color:var(--border);border-bottom:2px solid var(--error)}.pace-block .unit-label{font-size:.8rem;color:var(--text-muted)}.pace-run-race-time-toggle-wrap{flex-shrink:0;margin:0}.pace-run-option-toggle{display:inline-flex;align-items:center;justify-content:flex-end;gap:.5rem;cursor:pointer;font-size:.85rem;font-weight:500;line-height:1.3;color:var(--text-muted);user-select:none;text-align:right}.pace-run-option-toggle span{line-height:1.3}.pace-run-option-toggle input[type=checkbox]{appearance:none;-webkit-appearance:none;width:1.125rem;height:1.125rem;margin:0;flex-shrink:0;align-self:center;cursor:pointer;border:2px solid var(--border);border-radius:6px;background:var(--surface);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.pace-run-option-toggle input[type=checkbox]:hover{border-color:var(--accent)}.pace-run-option-toggle input[type=checkbox]:focus{outline:none}.pace-run-option-toggle input[type=checkbox]:focus-visible{box-shadow:0 0 0 2px var(--shadow),0 0 0 3px var(--accent);border-color:var(--accent)}.pace-run-option-toggle input[type=checkbox]:checked{background-color:var(--accent);border-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-size:.7rem .7rem;background-position:center;background-repeat:no-repeat}[data-theme=dark] .pace-run-option-toggle input[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E")}.pace-run-two-col{display:flex;flex-wrap:wrap;align-items:flex-start;column-gap:2rem;row-gap:.75rem}.pace-run-col{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.sport-running .pace-run-target-group{display:none}.sport-running.running-race-time-target .pace-run-target-group{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding-left:1.25rem;margin-left:.15rem;border-left:1px solid var(--border)}.pace-run-slider{width:100%}.pace-input-row input.pace-run-target-input{width:auto;min-width:7.75ch;max-width:min(7.35rem,100%);box-sizing:border-box;font-size:.9rem;padding:.38rem .42rem}.pace-alt{margin:0;font-size:.75rem;color:var(--text-muted);font-family:var(--font-mono)}.slider{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:0 11px;height:6px;-webkit-appearance:none;appearance:none;background:var(--slider-track);border-radius:3px}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--slider-thumb);cursor:pointer;border:2px solid var(--surface);box-shadow:0 1px 3px #0003}.slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--slider-thumb);cursor:pointer;border:2px solid var(--surface)}.results-grid{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.result-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.95rem}.result-row span{color:var(--text-muted);font-weight:500}.result-row output{font-family:var(--font-mono);font-weight:500}.total-row{display:flex;justify-content:space-between;align-items:baseline;padding-top:1rem;border-top:1px solid var(--border);font-size:1.1rem}.total-row span{font-weight:600;color:var(--text)}.total-time{font-family:var(--font-mono);font-size:1.35rem;font-weight:700;color:var(--accent)}.running-splits-wrap{margin-top:.25rem}.running-splits-panel{padding-top:.1rem}.running-splits-feature{position:relative;margin-top:.15rem;padding:.95rem 1rem 1.1rem;border-radius:14px;border:1px solid rgba(13,148,136,.16);background:var(--surface);box-shadow:0 6px 28px var(--shadow),inset 0 1px #ffffff6b}[data-theme=dark] .running-splits-feature{border-color:#2dd4bf33;background:var(--surface);box-shadow:0 8px 32px var(--shadow),inset 0 1px #ffffff0f}.running-splits-visual-strip{position:relative;height:.42rem;margin:0 0 .9rem;border-radius:999px;background:var(--accent);box-shadow:inset 0 0 0 1px var(--border);overflow:hidden}[data-theme=dark] .running-splits-visual-strip{background:var(--accent);box-shadow:inset 0 0 0 1px var(--border)}.running-splits-feature[data-split-mode=positive] .running-splits-visual-strip{background:linear-gradient(90deg,var(--accent) 0%,rgba(13,148,136,.36) 58%,transparent 100%)}[data-theme=dark] .running-splits-feature[data-split-mode=positive] .running-splits-visual-strip{background:linear-gradient(90deg,var(--accent) 0%,rgba(45,212,191,.38) 58%,transparent 100%)}.running-splits-feature[data-split-mode=negative] .running-splits-visual-strip{background:linear-gradient(90deg,transparent 0%,rgba(13,148,136,.36) 42%,var(--accent) 100%)}[data-theme=dark] .running-splits-feature[data-split-mode=negative] .running-splits-visual-strip{background:linear-gradient(90deg,transparent 0%,rgba(45,212,191,.38) 42%,var(--accent) 100%)}.running-splits-visual-strip__glow{position:absolute;inset:-20%;background:radial-gradient(ellipse 70% 120% at 88% 50%,rgba(148,163,184,.18),transparent 55%);pointer-events:none}[data-theme=dark] .running-splits-visual-strip__glow{background:radial-gradient(ellipse 70% 120% at 88% 50%,rgba(71,85,105,.24),transparent 55%)}.running-splits-visual-strip__ticks{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 7px,rgba(255,255,255,.22) 7px,rgba(255,255,255,.22) 8px);opacity:.85;pointer-events:none}[data-theme=dark] .running-splits-visual-strip__ticks{background:repeating-linear-gradient(90deg,transparent,transparent 7px,rgba(15,23,42,.35) 7px,rgba(15,23,42,.35) 8px)}.running-splits-incomplete{margin:0 0 .65rem;font-size:.9rem;line-height:1.5;color:var(--text-muted)}.running-splits-hint{margin:0 0 .75rem;font-size:.82rem;line-height:1.5;min-height:2.46rem;color:var(--text-muted);letter-spacing:.01em}.split-mode-bar{display:flex;flex-direction:column;flex-wrap:nowrap;gap:.35rem;margin-bottom:.85rem;padding:.35rem;border-radius:12px;background:#0d94880d;box-shadow:inset 0 0 0 1px #0d948817}[data-theme=dark] .split-mode-bar{background:#2dd4bf0f;box-shadow:inset 0 0 0 1px #2dd4bf1f}.split-mode-btn{font-family:var(--font-sans);font-size:.74rem;font-weight:600;width:100%;padding:.3rem .55rem;border:none;border-radius:9px;background:transparent;color:var(--text-muted);cursor:pointer;text-align:center;transition:background var(--duration-insights-tile) var(--ease-insights-soft),color var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft)}@media (min-width: 768px){.split-mode-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:.35rem}.split-mode-bar .split-mode-btn{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:2rem;padding:.32rem .4rem;font-size:.78rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.split-mode-btn:hover{color:var(--accent);background:#0d94880d}[data-theme=dark] .split-mode-btn:hover{background:#2dd4bf12}.split-mode-btn.active{background:var(--surface);color:var(--accent);box-shadow:0 2px 12px #0d94881f,0 0 0 1px #0d948829}[data-theme=dark] .split-mode-btn.active{box-shadow:0 4px 18px #00000059,0 0 0 1px #2dd4bf3d;color:var(--accent)}.split-mode-btn.active:hover{background:var(--surface);color:var(--accent-hover)}.running-splits-rows{display:flex;flex-direction:column;gap:.45rem}.running-splits-rows .split-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.58rem .75rem;font-size:.92rem;border-radius:11px;border:1px solid rgba(13,148,136,.1);background:var(--surface);box-shadow:0 2px 10px var(--shadow);transition:border-color var(--duration-insights-tile) var(--ease-insights-soft),box-shadow var(--duration-insights-tile) var(--ease-insights-soft)}[data-theme=dark] .running-splits-rows .split-row{border-color:#2dd4bf1f}.running-splits-rows .split-row:hover{border-color:#0d948833;box-shadow:0 4px 16px var(--shadow)}[data-theme=dark] .running-splits-rows .split-row:hover{border-color:#2dd4bf33}.running-splits-rows--with-pace .split-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.5rem .85rem;align-items:center;justify-content:stretch}.running-splits-rows .split-row-dist{color:var(--text);font-weight:600;font-size:.9rem;letter-spacing:-.02em}.running-splits-rows .split-row-pace{font-family:var(--font-mono);font-size:.8rem;font-weight:500;color:var(--text-muted);text-align:right}.running-splits-rows .split-row-time{font-family:var(--font-mono);font-weight:700;font-size:1.02rem;margin:0;text-align:right;color:var(--accent);letter-spacing:-.02em}.running-splits-rows:not(.running-splits-rows--with-pace) .split-row-time{min-width:5.75rem}@media (prefers-reduced-motion: reduce){.split-mode-btn,.running-splits-rows .split-row{transition:none}}.results-card .error-msg{color:var(--error);font-size:.9rem}.is-hidden{display:none!important}.finish-estimate{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border);font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.estimate-grid{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.estimate-row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.95rem}.estimate-row .estimate-label{color:var(--text-muted);font-weight:500;min-width:4rem}.estimate-row .estimate-time{font-family:var(--font-mono);font-weight:500}.estimate-row .estimate-pct{font-size:.85rem;color:var(--accent);font-weight:600}.footer{margin-top:auto;padding-top:2rem;font-size:.8rem;color:var(--text-muted)}.footer p{margin:0}@media (max-width: 520px){.distance-inputs{grid-template-columns:max-content 1fr auto;column-gap:.65rem;row-gap:1rem}.distance-inputs>.field{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:baseline}.pace-grid{grid-template-columns:1fr}.sport-running.running-race-time-target .pace-run-target-group{border-left:none;padding-left:0;margin-left:0}}@supports not (grid-template-columns: subgrid){@media (max-width: 520px){.distance-inputs{grid-template-columns:1fr}.distance-inputs>.field{display:flex;flex-direction:row;align-items:baseline;grid-column:auto;grid-template-columns:unset}.distance-inputs .field label{flex:0 0 min(9.5rem,40vw);max-width:11rem;min-width:0}}}
