:root{--primary: #ff3b30;--primary-glow: rgba(255, 59, 48, .5);--secondary: #1c1c1e;--accent: #007aff;--background: #050505;--surface: #121212;--surface-highlight: #1c1c1e;--text: #ffffff;--text-secondary: #a1a1aa;--white: #ffffff;--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--glass-highlight: rgba(255, 255, 255, .05);--glass-shadow: 0 4px 30px rgba(0, 0, 0, .1);--glass-backdrop: blur(10px);--card-shadow: 0 8px 32px rgba(0, 0, 0, .4);--glow-primary: 0 0 20px rgba(255, 59, 48, .3);--font-main: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--gradient-main: linear-gradient(135deg, #ff3b30 0%, #ff9500 100%);--gradient-dark: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .8) 100%);--gradient-surface: linear-gradient(145deg, rgba(255, 255, 255, .05) 0%, rgba(255, 255, 255, .01) 100%);scroll-behavior:smooth}body{margin:0;font-family:var(--font-main);background-color:var(--background);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}*{box-sizing:border-box}a{text-decoration:none;color:inherit;transition:all .3s ease}button{cursor:pointer;border:none;font-family:inherit}.container{max-width:1280px;margin:0 auto;padding:0 24px;position:relative}.btn{padding:16px 32px;border-radius:100px;font-weight:600;font-size:1.1rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;gap:10px;text-align:center;color:var(--white);border:1px solid transparent}.btn-primary{background:var(--primary);color:var(--white);box-shadow:0 8px 20px #ff3b304d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px #ff3b3080;background:#ff453a}.btn-glass{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.btn-glass:hover{background:#ffffff26;transform:translateY(-2px)}.card{background:var(--glass-bg);border-radius:24px;padding:40px;border:1px solid var(--glass-border);backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);box-shadow:0 8px 32px #0000005e;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);transition:.5s}.card:hover:before{left:100%}.card:hover{transform:translateY(-8px);border-color:#fff3;box-shadow:0 20px 50px #00000080,0 0 20px #ff3b301a}.grid{display:grid;gap:30px}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@media(max-width:968px){.grid-cols-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.grid-cols-3{grid-template-columns:1fr}}h1,h2,h3,h4{margin-top:0;font-weight:800;letter-spacing:-.03em;color:var(--white)}h1{font-size:clamp(3.5rem,8vw,6rem);line-height:1.05;margin-bottom:24px}h2{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:1.5rem}p{color:var(--text-secondary);font-size:1.125rem;line-height:1.7}.text-gradient{background:linear-gradient(to right,#fff,#888);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-primary-gradient{background:linear-gradient(135deg,#ff3b30,#ff9500);-webkit-background-clip:text;-webkit-text-fill-color:transparent}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0) translate(-50%)}40%{transform:translateY(-10px) translate(-50%)}60%{transform:translateY(-5px) translate(-50%)}}.animate-fade-in{animation:fadeInUp .8s cubic-bezier(.2,.8,.2,1) forwards;opacity:0}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.btn-primary .btn-glow{transition:all .5s ease}.btn-primary:hover .btn-glow{opacity:1;transform:scale(1)}.step-card:hover .step-number{transform:translateY(-10px) scale(1.1);opacity:.2!important;color:var(--primary)}.instruction-item{transition:transform .3s ease}.instruction-item:hover{transform:translate(10px)}.icon-glow{transition:text-shadow .3s ease}.card:hover .icon-glow{text-shadow:0 0 20px rgba(255,255,255,.5)}@media(max-width:768px){.motivation-row{flex-direction:column!important;gap:40px!important;text-align:center}.motivation-row h2{font-size:2.5rem!important}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:#333;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#555}.section-padding{padding:140px 0}.bg-grid{background-size:40px 40px;background-image:linear-gradient(to right,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.03) 1px,transparent 1px)}.shoe-detail-page{min-height:100vh;background:var(--background);padding:24px}.shoe-back-btn{position:absolute;top:0;left:0;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:12px 24px;border-radius:12px;font-size:1rem;cursor:pointer;transition:all .2s ease;z-index:10;margin-bottom:16px}.shoe-back-btn:hover{background:#ffffff26;transform:translate(-4px)}.shoe-detail-loading,.shoe-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:var(--text-secondary)}.loading-spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.shoe-detail-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.shoe-image-section{position:sticky;top:24px;padding-top:60px}.shoe-carousel{position:relative;display:flex;align-items:center;gap:10px}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:none;background:#0009;color:#fff;font-size:18px;cursor:pointer;transition:all .2s ease;z-index:10;display:flex;align-items:center;justify-content:center}.carousel-btn:hover{background:#000c;transform:translateY(-50%) scale(1.1)}.carousel-btn.prev{left:10px}.carousel-btn.next{right:10px}.shoe-image-wrapper{background:#fff;border-radius:24px;padding:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 20px 60px #0000004d;overflow:hidden;width:100%;min-height:400px}.shoe-image-wrapper img{max-width:100%;max-height:400px;object-fit:contain;transition:all .4s ease}.image-carousel-transform{transition:transform .4s ease,filter .4s ease}.shoe-zoomable{cursor:crosshair}.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}.carousel-dot{width:10px;height:10px;border-radius:50%;border:none;background:#ffffff4d;cursor:pointer;transition:all .2s ease}.carousel-dot:hover{background:#ffffff80}.carousel-dot.active{background:var(--primary);transform:scale(1.2)}.carousel-label{text-align:center;color:var(--text-secondary);font-size:.85rem;margin-top:8px}.shoe-info-section{padding:24px 0}.shoe-brand{font-size:1rem;text-transform:uppercase;letter-spacing:2px;color:var(--primary);margin-bottom:8px;font-weight:600}.shoe-name{font-size:2.5rem;font-weight:700;color:#fff;line-height:1.2;margin:0 0 24px}.shoe-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.shoe-type-badge{padding:8px 16px;border-radius:20px;font-size:.9rem;font-weight:600}.shoe-cushioning,.shoe-weight{padding:8px 16px;border-radius:20px;font-size:.9rem;background:#ffffff1a;color:var(--text-secondary)}.shoe-description{font-size:1.1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:32px}.shoe-price-section{margin-bottom:32px}.shoe-price{font-size:3rem;font-weight:700;background:linear-gradient(135deg,var(--primary),#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.shoe-buy-section{margin-bottom:32px}.amazon-buy-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f90,#ff6b00);color:#000;padding:16px 32px;border-radius:12px;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .2s ease;box-shadow:0 4px 15px #ff99004d}.amazon-buy-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f906}.amazon-country-selector{background:var(--surface);border-radius:16px;padding:20px;border:1px solid rgba(255,255,255,.1)}.country-prompt{font-size:1rem;color:var(--text-secondary);margin:0 0 16px}.country-buttons{display:flex;flex-wrap:wrap;gap:10px}.country-buy-btn{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#f90,#ff6b00);color:#000;padding:10px 16px;border-radius:8px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s ease}.country-buy-btn:hover{transform:translateY(-2px);box-shadow:0 4px 10px #ff99004d}.shoe-intended-use{background:var(--surface);border-radius:16px;padding:24px;margin-bottom:24px;border:1px solid rgba(255,255,255,.1)}.shoe-intended-use h3{font-size:1rem;color:var(--text-secondary);margin:0 0 16px;text-transform:uppercase;letter-spacing:1px}.intended-use-tags{display:flex;flex-wrap:wrap;gap:10px}.use-tag{background:#6366f126;color:#818cf8;padding:10px 18px;border-radius:12px;font-size:.95rem;font-weight:500}.shoe-ai-info{background:linear-gradient(135deg,#6366f11a,#a855f71a);border-radius:16px;padding:24px;border:1px solid rgba(99,102,241,.2)}.shoe-ai-info h3{font-size:1.1rem;color:#fff;margin:0 0 12px}.shoe-ai-info p{color:var(--text-secondary);line-height:1.6;margin:0 0 16px}.ai-confidence{font-size:.85rem;color:var(--primary);font-weight:500}@media(max-width:900px){.shoe-detail-container{grid-template-columns:1fr;gap:24px}.shoe-image-section{position:relative;top:0}.shoe-image-wrapper{padding:32px}.shoe-name{font-size:1.8rem}.shoe-price{font-size:2.2rem}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#000;padding:20px}.login-container{width:100%;max-width:500px}.login-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;overflow:hidden;animation:slideUp .5s ease-out}.login-header{background:linear-gradient(135deg,#ff3b30,#ff9500);color:#fff;padding:40px 30px;text-align:center}.login-header h1{font-size:32px;font-weight:700;margin:0 0 10px}.login-header p{font-size:16px;opacity:.9;margin:0}.login-content{padding:40px 30px}.login-content h2{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 10px;text-align:center}.login-subtitle{font-size:14px;color:#666;text-align:center;margin:0 0 30px}.google-login-button{width:100%;padding:14px;background:#fff;border:2px solid #ddd;border-radius:12px;font-size:16px;font-weight:600;color:#1a1a1a;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.google-login-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff3b304d;border-color:#ff3b30}.google-icon{width:24px;height:24px}.login-features{margin-top:40px;display:flex;flex-direction:column;gap:20px}.feature-item{display:flex;align-items:center;gap:15px;padding:15px;background:#f8f9fa;border-radius:12px;transition:all .3s ease}.feature-item:hover{background:#f0f1f3;transform:translate(5px)}.feature-icon{font-size:28px;flex-shrink:0}.feature-item p{margin:0;font-size:14px;color:#444;line-height:1.5}.profile-fullscreen{min-height:100vh;background:#000}.profile-hero{min-height:60vh;background:linear-gradient(135deg,#ff3b30,#ff9500);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding-bottom:100px}.profile-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(0,0,0,.1) 0%,transparent 50%);animation:pulse 8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.profile-hero-content{position:relative;z-index:10;text-align:center;padding:0 20px;animation:slideDown .6s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.profile-back-btn,.profile-logout-btn{position:absolute;top:20px;padding:12px 24px;background:#0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:50px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.profile-back-btn{left:20px;font-size:24px;width:50px;height:50px;padding:0;display:flex;align-items:center;justify-content:center}.profile-logout-btn{right:20px}.profile-back-btn:hover,.profile-logout-btn:hover{background:#0006;transform:translateY(-2px)}.profile-avatar-large{width:150px;height:150px;margin:0 auto 20px;border-radius:50%;border:6px solid white;box-shadow:0 10px 40px #0000004d;overflow:hidden;animation:scaleIn .5s ease-out .2s both}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.profile-avatar-placeholder-large{width:100%;height:100%;background:#0003;display:flex;align-items:center;justify-content:center;font-size:60px;font-weight:700;color:#fff}.profile-name-large{font-size:48px;font-weight:800;color:#fff;margin:0 0 10px;text-shadow:0 4px 12px rgba(0,0,0,.2);animation:slideDown .5s ease-out .3s both}.profile-email-large{font-size:18px;color:#ffffffe6;margin:0 0 40px;animation:slideDown .5s ease-out .4s both}.profile-stats-hero{display:flex;align-items:center;justify-content:center;gap:40px;animation:slideDown .5s ease-out .5s both}.stat-hero{text-align:center}.stat-hero-value{font-size:42px;font-weight:800;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.2)}.stat-hero-label{font-size:14px;color:#fffc;text-transform:uppercase;letter-spacing:1px;margin-top:5px}.stat-hero-divider{width:2px;height:60px;background:#ffffff4d}.profile-content{max-width:1200px;margin:-80px auto 0;padding:0 20px 60px;position:relative;z-index:10}.runner-profile-section{background:#1c1c1e;border-radius:20px;padding:40px;margin-bottom:40px;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1);animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.recommended-shoes-section{background:#1c1c1e;border-radius:20px;padding:40px;margin-bottom:40px;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1);animation:slideUp .6s ease-out .1s both}.recommended-shoes-section h2{font-size:28px;font-weight:700;color:#fff;margin:0 0 10px}.section-subtitle{font-size:14px;color:#fff9;margin:0 0 30px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid rgba(255,255,255,.1)}.section-header h2{font-size:28px;font-weight:700;color:#fff;margin:0}.btn-edit{padding:12px 24px;background:linear-gradient(135deg,#ff3b30,#ff9500);border:none;border-radius:50px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff3b3066}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff3b3099}.runner-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:30px}.profile-field{display:flex;flex-direction:column;gap:10px}.profile-field-full{grid-column:1 / -1}.profile-field label{font-size:14px;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px}.profile-field input,.profile-field select,.profile-field textarea{padding:14px;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:16px;font-family:inherit;transition:all .3s ease}.profile-field input:focus,.profile-field select:focus,.profile-field textarea:focus{outline:none;border-color:#ff3b30;background:#ffffff14}.profile-shoe-image{width:180px;height:120px;object-fit:contain;border-radius:12px;margin-top:0;display:block}.recent-analyses-section{background:#1c1c1e;border-radius:20px;padding:40px;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1);animation:slideUp .6s ease-out .2s both}.recent-analyses-section h2{font-size:28px;font-weight:700;color:#fff;margin:0 0 30px}.analyses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.analysis-card{background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;cursor:pointer;transition:all .3s ease}.analysis-card:hover{background:#ffffff14;border-color:#ff3b30;transform:translateY(-4px);box-shadow:0 8px 24px #ff3b304d}.analysis-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.analysis-card-id{font-weight:700;color:#fff;font-size:18px}.analysis-card-status{padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-completed{background:#34c75933;color:#34c759}.status-pending{background:#ff950033;color:#ff9500}.status-failed{background:#ff3b3033;color:#ff3b30}.analysis-card-date{font-size:14px;color:#fff9}.no-analyses-section{background:#1c1c1e;border-radius:20px;padding:80px 40px;text-align:center;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1);animation:slideUp .6s ease-out .2s both}.no-analyses-icon{font-size:80px;margin-bottom:20px;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.no-analyses-section h3{font-size:28px;font-weight:700;color:#fff;margin:0 0 15px}.no-analyses-section p{font-size:16px;color:#fff9;margin:0 0 30px}.btn-cta{padding:16px 40px;background:linear-gradient(135deg,#ff3b30,#ff9500);border:none;border-radius:50px;color:#fff;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #ff3b3066}.btn-cta:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 32px #ff3b3099}.profile-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;color:#fff}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.1);border-top-color:#ff3b30;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:20px}.profile-loading p{font-size:16px;color:#fff9}@media(max-width:768px){.profile-name-large{font-size:36px}.stat-hero-value{font-size:32px}.profile-stats-hero{gap:30px}.runner-profile-section,.recent-analyses-section{padding:30px 20px}.analyses-grid{grid-template-columns:1fr}}.strava-card-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid rgba(255,255,255,.1)}.strava-connected-card{background:linear-gradient(135deg,#fc4c0226,#fc4c020d);border:1px solid rgba(252,76,2,.3);border-radius:16px;padding:20px}.strava-header-card{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.strava-brand{display:flex;align-items:center;gap:12px}.strava-title{font-size:16px;font-weight:600;color:#fc4c02}.strava-disconnect-card-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff9;padding:8px 16px;border-radius:8px;font-size:13px;cursor:pointer;transition:all .2s ease}.strava-disconnect-card-btn:hover{background:#ff3b3033;border-color:#ff3b3066;color:#ff3b30}.strava-stats-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:15px}.strava-stat-card{text-align:center;padding:15px;background:#ffffff0d;border-radius:12px}.strava-stat-card-value{font-size:28px;font-weight:700;color:#fc4c02;display:block}.strava-stat-card-unit{font-size:14px;font-weight:500;color:#ffffffb3;margin-left:2px}.strava-stat-card-label{font-size:11px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;display:block;margin-top:4px}.strava-connect-card-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 24px;background:linear-gradient(135deg,#fc4c02,#ff6b2b);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #fc4c024d}.strava-connect-card-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #fc4c0280}.strava-connect-card-btn:disabled{opacity:.7;cursor:not-allowed}.strava-view-all-btn{display:block;width:100%;margin-top:15px;padding:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#ffffffb3;font-size:14px;cursor:pointer;transition:all .2s ease}.strava-view-all-btn:hover{background:#ffffff1a;color:#fff}.strava-buttons-row{display:flex;gap:10px;margin-top:15px}.strava-sync-btn{flex:1;padding:12px;background:linear-gradient(135deg,#fc4c02,#ff6b35);border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.strava-sync-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #fc4c0266}.strava-sync-btn:disabled{opacity:.7;cursor:not-allowed}.strava-view-all-btn{flex:1;margin-top:0}@media(max-width:768px){.strava-stats-card{grid-template-columns:repeat(2,1fr)}.strava-stat-card-value{font-size:24px}.strava-buttons-row{flex-direction:column}}.strava-stats-page{min-height:100vh;background:#000;padding:20px 20px 60px}.strava-stats-loading,.strava-stats-error{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;color:#fff;gap:20px}.strava-stats-loading .loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.1);border-top-color:#fc4c02;border-radius:50%;animation:spin .8s linear infinite}.strava-stats-header{max-width:1200px;margin:0 auto 30px;display:flex;align-items:center;gap:20px}.btn-back-arrow{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:10px 20px;border-radius:10px;cursor:pointer;font-size:16px;transition:all .2s ease}.btn-back-arrow:hover{background:#fff3}.btn-back{background:linear-gradient(135deg,#fc4c02,#ff6b2b);border:none;color:#fff;padding:14px 28px;border-radius:10px;cursor:pointer;font-size:16px;font-weight:600}.strava-stats-title{display:flex;align-items:center;gap:12px}.strava-stats-title h1{font-size:28px;font-weight:700;color:#fff;margin:0}.stats-summary-grid{max-width:1200px;margin:0 auto 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.stats-summary-card{background:#1c1c1e;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;text-align:center;display:flex;flex-direction:column;align-items:center}.stats-summary-card.highlight{background:linear-gradient(135deg,#fc4c0233,#fc4c020d);border-color:#fc4c024d}.stats-card-value{font-size:32px;font-weight:700;color:#fff}.stats-summary-card.highlight .stats-card-value{color:#fc4c02}.stats-card-unit{font-size:16px;color:#fff9;margin-left:4px}.stats-card-label{font-size:12px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-top:8px}.stats-chart-card{max-width:1200px;margin:0 auto 30px;background:#1c1c1e;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:25px}.stats-chart-card h3{font-size:18px;font-weight:600;color:#fff;margin:0 0 20px}.stats-activities-card{max-width:1200px;margin:0 auto 30px;background:#1c1c1e;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:25px}.stats-activities-card h3{font-size:18px;font-weight:600;color:#fff;margin:0 0 20px}.activities-list{display:flex;flex-direction:column;gap:12px}.activity-item{background:#ffffff0d;border-radius:12px;padding:15px 20px;display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:15px}.activity-date{font-size:13px;color:#ffffff80}.activity-name{font-size:15px;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-stats{display:flex;gap:20px}.activity-stats span{font-size:14px;color:#fc4c02;font-weight:600}@media(max-width:768px){.strava-stats-page{padding:15px}.stats-summary-grid{grid-template-columns:repeat(2,1fr)}.stats-card-value{font-size:24px}.activity-item{grid-template-columns:1fr;gap:8px}.activity-stats{justify-content:flex-start}.strava-stats-title h1{font-size:22px}}.load-more-btn{display:block;width:100%;padding:14px;margin-top:20px;background:linear-gradient(135deg,#fc4c02,#ff6b2b);border:none;border-radius:10px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.load-more-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #fc4c0266}.load-more-btn:disabled{opacity:.7;cursor:not-allowed}.period-filter{max-width:1200px;margin:0 auto 25px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.period-label{color:#ffffffb3;font-size:14px;font-weight:500}.period-buttons{display:flex;gap:8px;flex-wrap:wrap}.period-btn{padding:8px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:20px;color:#ffffffb3;font-size:13px;cursor:pointer;transition:all .2s ease}.period-btn:hover{background:#ffffff26;color:#fff}.period-btn.active{background:#fc4c02;border-color:#fc4c02;color:#fff}.custom-date-range{max-width:1200px;margin:0 auto 25px;display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:15px 20px;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.date-range-label{color:#ffffffb3;font-size:14px;font-weight:500}.date-inputs{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.date-input{padding:10px 14px;background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:14px;cursor:pointer;transition:all .2s ease}.date-input:focus{outline:none;border-color:#fc4c02}.date-input.active{border-color:#fc4c02;background:#fc4c021a}.date-input::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}.date-separator{color:#ffffff80;font-size:18px}.btn-apply-date{padding:10px 20px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-apply-date:hover:not(:disabled){background:#fc4c02;border-color:#fc4c02}.btn-apply-date.active{background:#fc4c02;border-color:#fc4c02}.btn-apply-date:disabled{opacity:.5;cursor:not-allowed}.pagination{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.pagination-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:16px;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#fc4c02;border-color:#fc4c02}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}.pagination-info{color:#ffffffb3;font-size:14px;padding:0 15px}.loading-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}@media(max-width:768px){.period-filter{flex-direction:column;align-items:flex-start}.pagination-btn{width:36px;height:36px;font-size:14px}}.activity-item-expandable{background:#ffffff0d;border-radius:12px;overflow:hidden;transition:all .3s ease;border:1px solid transparent}.activity-item-expandable:hover{background:#ffffff14;border-color:#fc4c024d}.activity-item-expandable.expanded{background:#ffffff14;border-color:#fc4c02}.activity-header{padding:15px 20px;display:grid;grid-template-columns:1fr auto 30px;align-items:center;gap:15px;cursor:pointer;-webkit-user-select:none;user-select:none}.activity-main-info{display:flex;flex-direction:column;gap:5px}.expand-icon{color:#fc4c02;font-size:14px;transition:transform .3s ease;display:flex;align-items:center;justify-content:center}.activity-item-expandable.expanded .expand-icon{transform:rotate(0)}.activity-details{padding:0 20px 20px;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.heartrate-chart{background:#0000004d;border-radius:12px;padding:20px;border:1px solid rgba(255,255,255,.1)}.heartrate-chart h4{font-size:16px;font-weight:600;color:#fff;margin:0 0 15px}.loading-streams{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:15px}.loading-spinner-small{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#fc4c02;border-radius:50%;animation:spin .8s linear infinite}.loading-streams p{color:#fff9;font-size:14px;margin:0}.no-heartrate-data{padding:40px 20px;text-align:center}.no-heartrate-data p{color:#ffffff80;font-size:14px;margin:0}@media(max-width:768px){.activity-header{grid-template-columns:1fr 30px;gap:10px}.activity-stats{grid-column:1 / -1;margin-top:10px}.heartrate-chart{padding:15px}.heartrate-chart h4{font-size:14px}}.auth-callback{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#000;color:#fff}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{to{transform:rotate(360deg)}}.auth-callback p{font-size:18px;font-weight:500}
