:root{--bg-color: rgb(5, 5, 5);--card-bg: rgba(10, 10, 15, .4);--text-primary: rgb(255, 255, 255);--text-secondary: rgb(176, 176, 186);--accent: rgb(109, 40, 217);--accent-glow: rgb(139, 92, 246);--success: rgb(16, 185, 129);--error: rgb(239, 68, 68);--warning: rgb(245, 158, 11);--font-main: "Outfit", sans-serif;--touch-min: 40px;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-accent: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-success: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-glow: linear-gradient(135deg, #6d28d9 0%, #8b5cf6 50%, #0ea5e9 100%);--gradient-rainbow: linear-gradient(135deg, #667eea 0%, #764ba2 25%, #f093fb 50%, #f5576c 75%, #4facfe 100%);--gradient-gold: linear-gradient(135deg, #FFD700, #FDB931, #FFD700);--gradient-gold-trans: linear-gradient(135deg, rgba(255, 215, 0, .25), rgba(251, 191, 36, .15));--glow-primary: 0 0 20px rgba(102, 126, 234, .5);--glow-success: 0 0 30px rgba(16, 185, 129, .4);--glow-accent: 0 0 25px rgba(109, 40, 217, .6);--glow-gold: 0 0 15px rgba(255, 215, 0, .3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 24px;--radius-full: 9999px;--overlay-bg: rgba(5, 5, 5, .97);--overlay-bg-heavy: rgba(0, 0, 0, .88);--overlay-backdrop: rgba(0, 0, 0, .7);--surface-elevated: linear-gradient(135deg, rgba(15, 15, 20, .6), rgba(25, 25, 35, .6));--surface-section: linear-gradient(135deg, rgba(15, 15, 20, .8), rgba(25, 25, 35, .8));--surface-subtle: rgba(255, 255, 255, .03);--surface-muted: rgba(255, 255, 255, .05);--surface-dim: rgba(255, 255, 255, .08);--surface-hover: rgba(255, 255, 255, .1);--border-subtle: rgba(255, 255, 255, .05);--border-muted: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .15);--text-on-surface: #ffffff;--select-option-bg: #1a1a2e;--sheet-bg: rgba(10, 10, 15, .97);--sheet-handle: rgba(255, 255, 255, .15);--progress-track: rgba(255, 255, 255, .15);--progress-track-thin: rgba(255, 255, 255, .1);--shimmer-color: rgba(255, 255, 255, .1);--ripple-color: rgba(255, 255, 255, .3);--divider: rgba(255, 255, 255, .04);--body-bg: linear-gradient(180deg, #050505 0%, #0a0a0f 100%);--body-glow-1: rgba(109, 40, 217, .1);--body-glow-2: rgba(139, 92, 246, .08);--tooltip-bg: rgba(18, 18, 20, .95);color-scheme:dark}[data-theme=ocean]{--body-bg: linear-gradient(180deg, rgb(4, 5, 7) 0%, rgb(2, 3, 4) 100%);--bg-color: rgb(2, 3, 4);--surface-muted: rgba(6, 182, 212, .05);--surface-subtle: rgba(6, 182, 212, .03);--surface-dim: rgba(6, 182, 212, .08);--card-bg: rgba(10, 16, 22, .4);--surface-section: linear-gradient(135deg, rgba(15, 22, 30, .8), rgba(20, 32, 45, .8));--surface-elevated: linear-gradient(135deg, rgba(15, 22, 30, .6), rgba(20, 32, 45, .6));--sheet-bg: rgba(10, 16, 22, .97);--overlay-bg: rgba(5, 8, 12, .97);--border-subtle: rgba(6, 182, 212, .05);--border-muted: rgba(6, 182, 212, .06);--border-default: rgba(6, 182, 212, .1);--border-strong: rgba(6, 182, 212, .15);--surface-hover: rgba(6, 182, 212, .1);--accent: rgb(6, 182, 212);--accent-glow: rgb(34, 211, 238);--body-glow-1: rgba(6, 182, 212, .1);--body-glow-2: rgba(14, 116, 144, .05);--gradient-primary: linear-gradient(135deg, rgb(14, 165, 233) 0%, rgb(6, 182, 212) 100%);--gradient-accent: linear-gradient(135deg, rgb(56, 189, 248) 0%, rgb(34, 211, 238) 100%);--gradient-glow: linear-gradient(135deg, rgb(2, 132, 199) 0%, rgb(6, 182, 212) 50%, rgb(34, 211, 238) 100%);--glow-primary: 0 0 20px rgba(14, 165, 233, .4);--glow-accent: 0 0 25px rgba(6, 182, 212, .5)}[data-theme=sunset]{--body-bg: linear-gradient(180deg, rgb(8, 5, 4) 0%, rgb(4, 3, 2) 100%);--bg-color: rgb(4, 3, 2);--surface-muted: rgba(249, 115, 22, .05);--surface-subtle: rgba(249, 115, 22, .03);--surface-dim: rgba(249, 115, 22, .08);--card-bg: rgba(22, 14, 10, .4);--surface-section: linear-gradient(135deg, rgba(30, 18, 15, .8), rgba(45, 24, 20, .8));--surface-elevated: linear-gradient(135deg, rgba(30, 18, 15, .6), rgba(45, 24, 20, .6));--sheet-bg: rgba(22, 14, 10, .97);--overlay-bg: rgba(12, 8, 5, .97);--border-subtle: rgba(249, 115, 22, .05);--border-muted: rgba(249, 115, 22, .06);--border-default: rgba(249, 115, 22, .1);--border-strong: rgba(249, 115, 22, .15);--surface-hover: rgba(249, 115, 22, .1);--accent: rgb(249, 115, 22);--accent-glow: rgb(251, 146, 60);--body-glow-1: rgba(249, 115, 22, .1);--body-glow-2: rgba(220, 38, 38, .05);--gradient-primary: linear-gradient(135deg, rgb(239, 68, 68) 0%, rgb(249, 115, 22) 100%);--gradient-accent: linear-gradient(135deg, rgb(248, 113, 113) 0%, rgb(251, 146, 60) 100%);--gradient-glow: linear-gradient(135deg, rgb(220, 38, 38) 0%, rgb(249, 115, 22) 50%, rgb(251, 146, 60) 100%);--glow-primary: 0 0 20px rgba(239, 68, 68, .4);--glow-accent: 0 0 25px rgba(249, 115, 22, .5)}[data-theme=forest]{--body-bg: linear-gradient(180deg, rgb(4, 6, 5) 0%, rgb(2, 3, 2) 100%);--bg-color: rgb(2, 3, 2);--surface-muted: rgba(34, 197, 94, .05);--surface-subtle: rgba(34, 197, 94, .03);--surface-dim: rgba(34, 197, 94, .08);--card-bg: rgba(10, 18, 12, .4);--surface-section: linear-gradient(135deg, rgba(15, 25, 18, .8), rgba(22, 38, 25, .8));--surface-elevated: linear-gradient(135deg, rgba(15, 25, 18, .6), rgba(22, 38, 25, .6));--sheet-bg: rgba(10, 18, 12, .97);--overlay-bg: rgba(5, 10, 6, .97);--border-subtle: rgba(34, 197, 94, .05);--border-muted: rgba(34, 197, 94, .06);--border-default: rgba(34, 197, 94, .1);--border-strong: rgba(34, 197, 94, .15);--surface-hover: rgba(34, 197, 94, .1);--accent: rgb(34, 197, 94);--accent-glow: rgb(74, 222, 128);--body-glow-1: rgba(34, 197, 94, .1);--body-glow-2: rgba(20, 83, 45, .05);--gradient-primary: linear-gradient(135deg, rgb(16, 185, 129) 0%, rgb(34, 197, 94) 100%);--gradient-accent: linear-gradient(135deg, rgb(52, 211, 153) 0%, rgb(74, 222, 128) 100%);--gradient-glow: linear-gradient(135deg, rgb(5, 150, 105) 0%, rgb(34, 197, 94) 50%, rgb(74, 222, 128) 100%);--glow-primary: 0 0 20px rgba(16, 185, 129, .4);--glow-accent: 0 0 25px rgba(34, 197, 94, .5)}[data-theme=purple]{--body-bg: linear-gradient(180deg, rgb(6, 4, 8) 0%, rgb(3, 2, 4) 100%);--bg-color: rgb(3, 2, 4);--surface-muted: rgba(168, 85, 247, .05);--surface-subtle: rgba(168, 85, 247, .03);--surface-dim: rgba(168, 85, 247, .08);--card-bg: rgba(16, 10, 22, .4);--surface-section: linear-gradient(135deg, rgba(22, 15, 30, .8), rgba(35, 22, 45, .8));--surface-elevated: linear-gradient(135deg, rgba(22, 15, 30, .6), rgba(35, 22, 45, .6));--sheet-bg: rgba(16, 10, 22, .97);--overlay-bg: rgba(8, 5, 12, .97);--border-subtle: rgba(168, 85, 247, .05);--border-muted: rgba(168, 85, 247, .06);--border-default: rgba(168, 85, 247, .1);--border-strong: rgba(168, 85, 247, .15);--surface-hover: rgba(168, 85, 247, .1);--accent: rgb(168, 85, 247);--accent-glow: rgb(192, 132, 252);--body-glow-1: rgba(168, 85, 247, .1);--body-glow-2: rgba(126, 34, 206, .08);--gradient-primary: linear-gradient(135deg, rgb(139, 92, 246) 0%, rgb(168, 85, 247) 100%);--gradient-accent: linear-gradient(135deg, rgb(167, 139, 250) 0%, rgb(192, 132, 252) 100%);--gradient-glow: linear-gradient(135deg, rgb(124, 58, 237) 0%, rgb(168, 85, 247) 50%, rgb(192, 132, 252) 100%);--glow-primary: 0 0 20px rgba(139, 92, 246, .4);--glow-accent: 0 0 25px rgba(168, 85, 247, .5)}.no-scrollbar::-webkit-scrollbar{display:none}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:transparent;border-radius:10px}.custom-scrollbar:hover::-webkit-scrollbar-thumb{background:#ffffff26}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#ffffff40!important}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;appearance:textfield}html{overscroll-behavior:none;background:var(--bg-color)}body{font-family:var(--font-main);background:var(--body-bg);color:var(--text-primary);line-height:1.5;overflow-x:hidden;overscroll-behavior:none;height:100vh;width:100vw;display:flex;flex-direction:column;position:relative;transition:background .5s ease;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,var(--body-glow-1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,var(--body-glow-2) 0%,transparent 50%);pointer-events:none;z-index:0;animation:backgroundPulse 10s ease-in-out infinite}@keyframes backgroundPulse{0%,to{opacity:.5}50%{opacity:1}}#root{width:100%;height:100%;padding:8px;display:flex;flex-direction:column;position:relative;z-index:1}button{font-family:inherit;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}button:active{transform:scale(.96)}.glass{background:var(--surface-muted);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-default);box-shadow:var(--shadow-md)}.glass-premium{background:var(--surface-dim);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg),inset 0 1px 0 var(--border-default)}.title-gradient{background:linear-gradient(135deg,#fff,#a1a1aa);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.rainbow-gradient{background:var(--gradient-rainbow);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rainbowFlow 6s ease infinite}.gold-text{background:var(--gradient-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% 200%;animation:gradientShift 4s ease infinite}@keyframes rainbowFlow{0%,to{filter:hue-rotate(0deg)}50%{filter:hue-rotate(45deg)}}@keyframes numberRoll{0%{transform:translateY(-20%) scale(.8);opacity:0}60%{transform:translateY(5%) scale(1.05)}to{transform:translateY(0) scale(1);opacity:1}}@keyframes sparkle{0%,to{opacity:0;transform:scale(0) rotate(0)}50%{opacity:.8;transform:scale(1) rotate(180deg)}}@keyframes goldShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes topRankPulse1{0%,to{box-shadow:0 0 10px #ffd7001a;border-color:#ffd7004d}50%{box-shadow:0 0 25px #ffd70066;border-color:#ffd700b3}}@keyframes topRankPulse2{0%,to{box-shadow:0 0 8px #c0c0c01a;border-color:#c0c0c033}50%{box-shadow:0 0 18px #c0c0c04d;border-color:#c0c0c080}}@keyframes topRankPulse3{0%,to{box-shadow:0 0 8px #cd7f321a;border-color:#cd7f3233}50%{box-shadow:0 0 15px #cd7f324d;border-color:#cd7f3280}}.top-rank-1{animation:topRankPulse1 3s infinite ease-in-out;border-width:1.5px!important}.top-rank-2{animation:topRankPulse2 4s infinite ease-in-out}.top-rank-3{animation:topRankPulse3 4s infinite ease-in-out}.perfect-day-row{position:relative;overflow:hidden}.perfect-day-row:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,215,0,.03),rgba(255,215,0,.05),rgba(255,215,0,.03),transparent);background-size:200% 100%;animation:goldShimmer 10s infinite linear;pointer-events:none;z-index:0}.dashboard-gold-bg{background:radial-gradient(circle at center,rgba(255,215,0,.08) 0%,transparent 70%);transition:background .6s ease-in-out}.dashboard-gold-border{border:1px solid rgba(255,215,0,.15);box-shadow:inset 0 0 20px #ffd7000d;transition:all .6s ease-in-out}.sparkle-icon{position:absolute;color:gold;animation:sparkle 5s infinite ease-in-out;pointer-events:none;z-index:1}@keyframes counterSlideUp{0%{transform:translateY(150%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes counterSlideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(-150%);opacity:0}}.fade-in{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .4s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scale-in{animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--shimmer-color),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.pulse-glow{animation:badgeHighlight 1.5s ease-in-out infinite}@keyframes badgeHighlight{0%,to{box-shadow:0 0 15px var(--badge-color, rgba(251, 191, 36, .5))}50%{box-shadow:0 0 30px var(--badge-color, rgba(251, 191, 36, .8))}}.pulse-ring{animation:pulseGlow 2s ease-in-out infinite;border-radius:50%}@keyframes pulseGlow{0%,to{filter:drop-shadow(0 0 8px rgba(139,92,246,.6))}50%{filter:drop-shadow(0 0 16px rgba(139,92,246,1))}}@keyframes pulseGlowExercise{0%,to{box-shadow:0 0 20px var(--exercise-glow-color, rgba(129, 140, 248, .3))}50%{box-shadow:0 0 35px var(--exercise-glow-color, rgba(129, 140, 248, .5))}}.bounce-on-hover{transition:transform .3s cubic-bezier(.34,1.56,.64,1);will-change:transform}.bounce-on-hover:hover{transform:translateY(-4px)}.flip-enter{animation:flipIn .6s cubic-bezier(.4,0,.2,1)}@keyframes flipIn{0%{opacity:0;transform:rotateY(-90deg)}to{opacity:1;transform:rotateY(0)}}.slide-down{animation:slideDown .4s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.slide-exit{animation:slideExit .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes slideExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:var(--ripple-color);transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple:active:after{width:300px;height:300px}.progress-ring{transform:rotate(-90deg)}.progress-ring-circle{transition:stroke-dashoffset .5s cubic-bezier(.4,0,.2,1)}.hover-lift{transition:transform .3s ease,box-shadow .3s ease;will-change:transform}@media(hover:hover){.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}}.gradient-button{background:var(--gradient-primary);background-size:200% 200%;animation:gradientShift 3s ease infinite;position:relative;overflow:hidden}@keyframes gradientShift{0%,to{opacity:.9}50%{opacity:1}}@keyframes completeFlash{0%{transform:scale(1);box-shadow:none}25%{transform:scale(1.08)}50%{transform:scale(.96)}75%{transform:scale(1.03)}to{transform:scale(1)}}.complete-flash{animation:completeFlash .5s cubic-bezier(.34,1.56,.64,1)}@keyframes successGlow{0%{box-shadow:0 0 #10b98180}70%{box-shadow:0 0 0 12px #10b98100}to{box-shadow:0 0 #10b98100}}.success-glow{animation:successGlow .8s ease-out}@keyframes doneGlow{0%,to{box-shadow:0 0 6px var(--done-color, rgba(16, 185, 129, .3)),inset 0 0 8px var(--done-color-dim, rgba(16, 185, 129, .06))}50%{box-shadow:0 0 14px var(--done-color, rgba(16, 185, 129, .5)),inset 0 0 12px var(--done-color-dim, rgba(16, 185, 129, .1))}}@keyframes donePulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@keyframes bump{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.bump{animation:bump .3s cubic-bezier(.34,1.56,.64,1)}@keyframes checkPop{0%{transform:scale(0) rotate(-45deg);opacity:0}50%{transform:scale(1.3) rotate(0);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.gradient-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.gradient-button:hover:before{left:100%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cal-slide-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-40px)}}@keyframes cal-slide-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}@media(min-width:500px){.exercise-grid>button{flex:1 1 calc(25% - 10px)!important}}[data-perf=low] body:before{animation:none!important;opacity:.5}[data-perf=low] *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}[data-perf=low] .glass,[data-perf=low] .glass-premium,[data-perf=low] .pulse-glow{background-color:var(--card-bg)!important}[data-perf=low] .rainbow-gradient{animation:none!important;filter:none!important}[data-perf=low] .shimmer:after{animation:none!important;display:none!important}[data-perf=low] .gradient-button{animation:none!important}[data-perf=low] .gradient-button:before{display:none!important}[data-perf=low] .pulse-glow{animation:none!important}[data-perf=low] .progress-ring-circle,[data-perf=low] .hover-lift{transition:none!important}[data-perf=low] .hover-lift:hover{transform:none!important}[data-perf=low] button{transition:none!important}[data-perf=low] .ripple:after{display:none!important}@media(min-width:600px){#root{padding:12px;max-width:720px;margin:0 auto}}@media(min-width:900px){#root{padding:16px;max-width:960px}}@media(min-width:1200px){#root{max-width:1100px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid var(--accent-glow);outline-offset:2px}button:focus:not(:focus-visible){outline:none}.panel-title{font-size:clamp(1.4rem,4vw,1.8rem);font-weight:800;color:var(--text-primary);margin:0 0 16px;text-align:center}.modal-overlay{position:fixed;inset:0;background:var(--overlay-bg);z-index:100;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:none;touch-action:auto}.modal-overlay .modal-content{flex:1;display:flex;flex-direction:column;padding:var(--spacing-md);padding-top:calc(var(--spacing-md) + env(safe-area-inset-top));padding-bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom))}@media(min-width:600px){.modal-overlay{align-items:center;justify-content:flex-start;padding:var(--spacing-lg)}.modal-overlay .modal-content{max-width:600px;width:100%;padding:var(--spacing-lg)}}.bottom-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--sheet-bg);border-radius:var(--radius-xl) var(--radius-xl) 0 0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-default);z-index:200;max-height:85vh;overflow-y:auto;padding-bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom))}.bottom-sheet .sheet-handle{width:40px;height:4px;background:var(--sheet-handle);border-radius:var(--radius-full);margin:var(--spacing-sm) auto}@media(min-width:600px){.bottom-sheet{left:50%;transform:translate(-50%);max-width:560px;border-radius:var(--radius-xl);bottom:var(--spacing-lg);border:1px solid var(--border-default)}}.chart-card{padding:var(--spacing-md);border-radius:var(--radius-xl);display:flex;flex-direction:column;align-items:center;margin-bottom:var(--spacing-md)}.chart-title{margin-bottom:var(--spacing-sm);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);text-align:center;width:100%}.chart-empty-state{height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-secondary)}.chart-empty-icon{font-size:1.5rem}.chart-empty-title{font-size:.8rem;font-weight:600}.chart-empty-hint{font-size:.7rem;opacity:.7;text-align:center;max-width:240px}.chart-wrapper{width:100%;height:200px;min-height:200px}.chart-wrapper-overflow{width:calc(100% + 16px);margin-left:-16px;height:200px;min-height:200px}.premium-slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:4px;outline:none;cursor:pointer;touch-action:pan-y}.premium-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--slider-color, var(--accent));cursor:pointer;box-shadow:0 0 10px var(--slider-color, var(--accent));border:2px solid var(--bg-color);transition:transform .15s ease}.premium-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.premium-slider::-moz-range-thumb{width:18px;height:18px;border:2px solid var(--bg-color);border-radius:50%;background:var(--slider-color, var(--accent));cursor:pointer;box-shadow:0 0 10px var(--slider-color, var(--accent));transition:transform .15s ease}.premium-slider::-moz-range-thumb:hover{transform:scale(1.2)}@keyframes streak-float{0%{transform:translate(-50%,-50%) scale(.5) rotate(0);opacity:1;filter:drop-shadow(0 0 5px rgba(249,115,22,.8))}50%{opacity:1;filter:drop-shadow(0 0 15px rgba(249,115,22,1))}to{transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) scale(1.8) rotate(var(--rot));opacity:0;filter:drop-shadow(0 0 5px rgba(249,115,22,0))}}.streak-particle{position:absolute;pointer-events:none;opacity:0;animation:streak-float 1s cubic-bezier(.25,1,.5,1) forwards;z-index:9999}.cardio-module{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:28px}.cardio-tabs button:active{transform:scale(.95)}.cardio-progress-fill{position:relative;overflow:hidden}.cardio-progress-fill:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:cardioShimmer 2.5s ease-in-out infinite}@keyframes cardioShimmer{0%{left:-100%}to{left:200%}}.cardio-map-container{box-shadow:inset 0 0 20px #0006,0 2px 8px #0000004d}
