.running-page{max-width:900px;margin:0 auto}.running-page .page-header{border-bottom:2px solid var(--accent);margin-bottom:2rem;padding-bottom:1.5rem}.running-page h1{color:var(--heading,var(--foreground));text-wrap:balance;margin-bottom:.5rem;font-size:2rem;font-weight:600}.running-page .section-title{color:var(--heading,var(--foreground));border-left:3px solid var(--accent);margin:2rem 0 1rem;padding-left:.75rem;font-size:1.25rem;font-weight:600}.running-page .running-section-title{margin:0 0 .5rem}.running-page .contribution-graph+.running-section-title{margin-top:1.25rem}.period-stats-section{margin-top:.25rem;margin-bottom:1rem}.period-stats-card{background:var(--background);border:1px solid var(--border);border-radius:8px;overflow:hidden}.period-tab-nav{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--muted) 40%,transparent);gap:0;padding:0 1rem;display:flex}.period-tab-btn{color:var(--heading-muted,var(--muted));cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;position:relative}.period-tab-btn:hover{color:var(--foreground)}.period-tab-btn.active,.period-tab-btn.border-\[var\(--accent\)\]{color:var(--accent);border-bottom-color:var(--accent)}.period-tab-content{padding:1rem}.period-panel{display:none}.period-panel.active,.period-panel:not(.hidden){animation:.3s running-fadeIn;display:block}.period-panel.hidden{display:none!important}.period-panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.period-panel-title{color:var(--heading,var(--foreground));font-size:.875rem;font-weight:600}.period-panel-count{color:var(--heading-muted,var(--muted));font-size:.75rem}.period-panel-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem .5rem;width:100%;display:grid}.period-panel-stat{text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.375rem;padding:.5rem;transition:background .2s;display:flex}.period-panel-stat:hover{background:color-mix(in srgb,var(--muted) 30%,transparent)}.period-panel-stat:hover .period-panel-value{color:var(--accent)}.period-panel-value{white-space:nowrap;color:var(--foreground);font-size:1.375rem;font-weight:700;line-height:1.2}.period-panel-label{color:var(--heading-muted,var(--muted));white-space:nowrap;font-size:.75rem}@keyframes running-fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.contribution-graph{background:color-mix(in srgb,var(--muted) 30%,transparent);border:1px solid var(--border);border-radius:8px;width:100%;margin:1.5rem 0;padding:.5rem}.contribution-graph .month-labels{height:1rem;margin-bottom:.25rem;position:relative}.contribution-graph .month-label{color:var(--heading-muted,var(--foreground));white-space:nowrap;font-size:.625rem;position:absolute}.contribution-graph .weeks{flex-wrap:nowrap;justify-content:space-between;gap:2px;display:flex}.contribution-graph .week{flex-direction:column;flex:1;gap:2px;display:flex}.contribution-graph .day{aspect-ratio:1;background:var(--border);border-radius:2px;width:100%;transition:transform .1s;position:relative}.contribution-graph .day:hover{outline:1px solid var(--muted);z-index:10;transform:scale(1.2)}.contribution-graph .day:after{content:attr(title);background:var(--background);border:1px solid var(--border);white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;pointer-events:none;color:var(--heading,var(--foreground));border-radius:4px;margin-bottom:4px;padding:4px 8px;font-size:.75rem;transition:opacity .1s,visibility .1s;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 4px 6px -1px #0000001a}.contribution-graph .day:hover:after{opacity:1;visibility:visible}.contribution-graph .day.out-of-range{background:0 0}.contribution-graph .day.intensity-1{background:#bfdbfe}.contribution-graph .day.intensity-2{background:#93c5fd}.contribution-graph .day.intensity-3{background:#60a5fa}.contribution-graph .day.intensity-4{background:#3b82f6}.contribution-graph .day.intensity-5{background:#1d4ed8}html[data-theme=dark] .contribution-graph .day{background:color-mix(in srgb,var(--muted) 50%,transparent)}html[data-theme=dark] .contribution-graph .day.intensity-1{background:#1e3a5f}html[data-theme=dark] .contribution-graph .day.intensity-2{background:#1e40af}html[data-theme=dark] .contribution-graph .day.intensity-3{background:#2563eb}html[data-theme=dark] .contribution-graph .day.intensity-4{background:#3b82f6}html[data-theme=dark] .contribution-graph .day.intensity-5{background:#60a5fa}.run-list{flex-direction:column;gap:.75rem;display:flex}.run-card{background:var(--background);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000000a}.run-card:hover,.run-card:focus-visible{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.run-card:hover .run-date,.run-card:focus-visible .run-date{color:var(--accent)}.run-main{flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.run-header{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.run-date{color:var(--foreground);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:500;transition:color .2s}.run-type{color:var(--heading-muted,var(--muted));align-items:center;gap:.375rem;font-size:.8125rem;display:flex}.workout-name{color:#3b82f6;font-weight:500}.run-stats{flex-shrink:0;gap:1.25rem;display:flex}.run-card .stat{flex-direction:column;align-items:flex-start;gap:.25rem;min-width:52px;display:flex}.run-card .stat-value{color:var(--foreground);text-align:left;font-variant-numeric:tabular-nums;font-size:1rem;font-weight:600;line-height:1.2}.run-card .stat-label{color:var(--heading-muted,var(--muted));text-transform:uppercase;letter-spacing:.025em;font-size:.6875rem;font-weight:500}.run-card .vdot-stat .stat-value{color:#8b5cf6;font-weight:700}.run-card .load-stat .stat-value{color:#3b82f6;font-weight:700}.hr-zone-badge{white-space:nowrap;border-radius:20px;align-items:center;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;line-height:1;display:inline-flex}.load-more-btn{background:color-mix(in srgb,var(--muted) 30%,transparent);border:1px solid var(--border);width:100%;color:var(--foreground);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.load-more-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--background)}.run-detail-modal{z-index:1000;justify-content:center;align-items:center;padding:1rem;display:none;position:fixed;inset:0}.run-detail-modal.flex{display:flex}.run-detail-modal .modal-overlay{backdrop-filter:blur(4px);background:#00000080;position:absolute;inset:0}.run-detail-modal .modal-content{background:var(--background);border:1px solid var(--border);border-radius:12px;width:100%;max-width:640px;max-height:90vh;animation:.3s running-modalSlideIn;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes running-modalSlideIn{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.run-detail-modal .modal-close{background:color-mix(in srgb,var(--muted) 30%,transparent);border:1px solid var(--border);width:36px;height:36px;color:var(--foreground);cursor:pointer;z-index:10;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.run-detail-modal .modal-close:hover{background:var(--border)}.run-detail-modal .modal-body{max-height:90vh;padding:1.5rem;overflow-y:auto}.detail-header{border-bottom:1px solid var(--border);margin-bottom:1.5rem;padding-bottom:1rem}.detail-title{color:var(--heading,var(--foreground));margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.detail-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.detail-date{color:var(--foreground);font-size:.875rem}.detail-type{background:color-mix(in srgb,var(--muted) 30%,transparent);border:1px solid var(--border);color:var(--heading-muted,var(--foreground));border-radius:4px;padding:.125rem .5rem;font-size:.75rem}.detail-hr-zone{border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.detail-stats-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.5rem;display:grid}.detail-stat-item{background:color-mix(in srgb,var(--muted) 30%,transparent);border:1px solid var(--border);border-radius:6px;align-items:center;gap:.5rem;padding:.625rem .75rem;font-size:.8125rem;display:flex}.detail-stat-icon{color:#3b82f6;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.detail-stat-icon svg{width:100%;height:100%}.detail-stat-label{color:var(--heading-muted,var(--muted));white-space:nowrap;font-size:.8125rem}.detail-stat-value{color:var(--foreground);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:600}.segments-table .segment-pace-tag,.segments-table .hr-zone-tag{border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:500;display:inline-block}.segment-pace-tag.pace-fast{color:#22c55e;background:#22c55e20}.segment-pace-tag.pace-medium{color:#3b82f6;background:#3b82f620}.segment-pace-tag.pace-slow{color:#f97316;background:#f9731620}.detail-section{margin-top:1.5rem}.section-subtitle{color:var(--heading,var(--foreground));margin:0 0 .75rem;font-size:.9375rem;font-weight:600}.detail-section .segments-table-wrapper,.detail-section .laps-table-wrapper,.detail-section table{border:1px solid var(--border);border-radius:8px;overflow-x:auto}.detail-section table{border-collapse:collapse;width:100%;font-size:.8125rem}.detail-section th,.detail-section td{text-align:left;border-bottom:1px solid var(--border);padding:.5rem .75rem}.detail-section th{background:color-mix(in srgb,var(--muted) 30%,transparent);color:var(--heading-muted,var(--foreground));text-transform:uppercase;letter-spacing:.025em;font-size:.75rem;font-weight:600}.detail-section tr:last-child td{border-bottom:none}.detail-section tbody tr:hover{background:color-mix(in srgb,var(--muted) 30%,transparent)}.pace-bar{background:color-mix(in srgb,var(--muted) 30%,transparent);border-radius:4px;align-items:center;height:22px;padding:0 .5rem;display:flex;position:relative;overflow:hidden}.pace-bar-fill{opacity:.35;border-radius:4px;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.pace-bar-fill.fast{background:linear-gradient(90deg,#22c55e,#16a34a)}.pace-bar-fill.medium{background:linear-gradient(90deg,#60a5fa,#3b82f6)}.pace-bar-fill.slow{background:linear-gradient(90deg,#fb923c,#f97316)}.pace-bar span{z-index:1;font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:600;position:relative}.hr-zone-tag{border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:500;display:inline-block}.hr-zone-tag.zone-1,.pace-tag.zone-1{color:#4ade80;background:#4ade8020;border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:500}.hr-zone-tag.zone-2,.pace-tag.zone-2{color:#60a5fa;background:#60a5fa20;border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:500}.hr-zone-tag.zone-3,.pace-tag.zone-3{color:#fbbf24;background:#fbbf2420;border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:500}.hr-zone-tag.zone-4,.pace-tag.zone-4{color:#fb923c;background:#fb923c20;border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:500}.hr-zone-tag.zone-5,.pace-tag.zone-5{color:#f87171;background:#f8717120;border-radius:4px;padding:.125rem .375rem;font-size:.75rem;font-weight:500}@media (width<=640px){.period-tab-nav{-webkit-overflow-scrolling:touch;padding:0 .75rem;overflow-x:auto}.period-tab-btn{padding:.75rem 1rem;font-size:.8125rem}.period-tab-content{padding:1rem}.period-panel-grid{gap:1rem .25rem}.period-panel-stat{padding:.375rem}.period-panel-value{font-size:1.125rem}.period-panel-label{font-size:.6875rem}}@media (width<=768px){.running-page h1{font-size:1.75rem}.run-card{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.run-stats{justify-content:flex-start;gap:1.5rem;width:100%}.run-card .stat{flex:none;min-width:auto}.run-detail-modal .modal-content{max-height:95vh;margin:.5rem}.run-detail-modal .modal-body{padding:1rem}.detail-stats-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.detail-stat-item{padding:.5rem;font-size:.75rem}.detail-stat-label,.detail-stat-value{font-size:.75rem}.detail-title{padding-right:2.5rem;font-size:1.125rem}}@media (width<=480px){.run-stats{gap:1.25rem}.run-card .stat-value{font-size:.9375rem}.run-card .stat-label{font-size:.625rem}.detail-stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.detail-stat-item{padding:.5rem}}