﻿.cycles-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:1.25rem;margin-top:1.5rem}.cycle-card{position:relative;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0) 45%),var(--color-surface-1, #111113);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-lg, 20px);box-shadow:var(--shadow-card);padding:1.5rem;transition:transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;overflow:hidden}.cycle-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg, var(--color-mid, #FFD424), transparent)}.cycle-card:hover{transform:translateY(-3px);border-color:rgba(255,212,36,0.55);box-shadow:0 0 0 1px rgba(255,212,36,0.25),0 22px 50px -20px rgba(255,212,36,0.35)}.cycle-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.cycle-header h3{margin:0;font-family:var(--font-display, "Archivo", sans-serif);font-size:1.05rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--color-text, #FAFAFA)}.score-state{padding:4px 10px;border-radius:999px;font-family:var(--font-mono, monospace);font-size:0.7rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;border:1px solid var(--color-line, #2A2A2E);color:var(--color-text-muted, #A1A1A6)}.score-state.scored{background:rgba(22,236,6,0.12);color:var(--color-hi, #16EC06);border-color:rgba(22,236,6,0.4)}.cycle-dates{margin-bottom:1rem}.cycle-dates p{margin:4px 0;font-family:var(--font-mono, monospace);font-size:0.82rem;color:var(--color-text-muted, #A1A1A6)}.cycle-scores{display:grid;grid-template-columns:repeat(2, 1fr);gap:0.75rem}.score-item{display:flex;flex-direction:column;align-items:flex-start;padding:1rem;background:var(--color-surface-2, #18181B);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-md, 14px)}.score-item .label{font-size:0.68rem;color:var(--color-text-dim, #6B6B72);text-transform:uppercase;letter-spacing:0.18em;font-weight:600}.score-item .value{font-family:var(--font-mono, monospace);font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:600;margin-top:0.35rem;color:var(--color-text, #FAFAFA)}.no-data{text-align:center;padding:3rem 1.5rem;border:1px dashed var(--color-line, #2A2A2E);border-radius:var(--radius-lg, 20px);background:var(--color-surface-1, #111113);color:var(--color-text-muted, #A1A1A6);margin-top:1.25rem;font-family:var(--font-mono, monospace);letter-spacing:0.1em;text-transform:uppercase;font-size:0.82rem}.charts-container{display:flex;flex-direction:column;align-items:stretch;gap:2rem;margin:1.5rem 0 2rem}.charts-row{display:flex;justify-content:center;gap:1.5rem;width:100%}.charts-container .chart-container{display:flex;justify-content:center;background:var(--color-surface-0, #0A0A0A);border:1px solid var(--color-line-soft);border-radius:var(--radius-md, 14px);padding:0.85rem}.strain-chart-container{max-width:1200px;width:100%}.small-chart-container{max-width:450px;width:100%}.cycle-details{max-width:900px;margin:0 auto;padding:1.25rem}@media (max-width: 800px){.charts-row{flex-direction:column;align-items:stretch}.small-chart-container{max-width:100%}.cycles-grid{grid-template-columns:1fr}}:root{--color-bg:          #000000;--color-surface-0:   #0A0A0A;--color-surface-1:   #111113;--color-surface-2:   #18181B;--color-surface-3:   #222226;--color-line:        #2A2A2E;--color-line-soft:   rgba(255,255,255,0.06);--color-line-hair:   rgba(255,255,255,0.09);--color-text:        #FAFAFA;--color-text-muted:  #A1A1A6;--color-text-dim:    #6B6B72;--color-text-label:  #8A8A93;--color-whoop:       #FFD424;--color-strain:      #0093E7;--color-strain-soft: rgba(0, 147, 231, 0.16);--color-hi:          #16EC06;--color-hi-soft:     rgba(22, 236, 6, 0.18);--color-mid:         #FFD424;--color-lo:          #FF0026;--color-sleep:       #7C72E8;--color-bg-light:            var(--color-surface-1);--color-white:               var(--color-surface-1);--color-blue:                var(--color-strain);--color-blue-light:          #34ADFF;--color-green:               var(--color-hi);--color-yellow:              var(--color-mid);--color-red:                 var(--color-lo);--color-text-main:           var(--color-text);--color-text-secondary:      var(--color-text-muted);--color-border-light:        var(--color-line);--color-insight-gradient-start: rgba(22,236,6,0.08);--color-insight-gradient-end:   rgba(0,147,231,0.10);--color-blue-chart:          var(--color-strain);--color-green-chart:         var(--color-hi);--color-yellow-chart:        var(--color-mid);--color-red-chart:           var(--color-lo);--color-hr-rest-line:        var(--color-strain);--font-display: 'Archivo', 'Barlow Condensed', 'Helvetica Neue', Arial, sans-serif;--font-body:    'DM Sans', 'Helvetica Neue', Arial, sans-serif;--font-mono:    'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--glow-hi:     0 0 0 1px rgba(22,236,6,0.35), 0 10px 40px -10px rgba(22,236,6,0.45);--glow-strain: 0 0 0 1px rgba(0,147,231,0.35), 0 10px 40px -10px rgba(0,147,231,0.40);--shadow-card: 0 1px 0 rgba(255,255,255,0.04) inset, 0 20px 40px -20px rgba(0,0,0,0.8)}*,*::before,*::after{box-sizing:border-box}html{background:var(--color-bg)}body{font-family:var(--font-body);font-size:15px;line-height:1.5;color:var(--color-text);background:radial-gradient(1200px 600px at 80% -10%, rgba(0,147,231,0.08), transparent 60%),radial-gradient(900px 500px at 0% 0%, rgba(22,236,6,0.05), transparent 55%),var(--color-bg);background-attachment:fixed;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5{font-family:var(--font-display);color:var(--color-text);letter-spacing:-0.01em;margin:0 0 0.6rem}h1{font-size:clamp(2rem, 3.6vw, 3.25rem);font-weight:800;letter-spacing:-0.02em;line-height:1}h2{font-size:1.75rem;font-weight:700;letter-spacing:-0.015em}h3{font-size:1.15rem;font-weight:700;letter-spacing:0}h4{font-size:0.78rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--color-text-muted)}p,span{font-size:1rem;line-height:1.55}a{color:var(--color-hi);text-decoration:none}a:hover{color:#8CFC4B}.label{font-family:var(--font-body);font-size:0.68rem;font-weight:600;color:var(--color-text-label);text-transform:uppercase;letter-spacing:0.16em}.status{display:inline-flex;align-items:center;gap:0.35rem;font-family:var(--font-mono);font-size:0.68rem;font-weight:600;border-radius:999px;padding:4px 10px;text-transform:uppercase;letter-spacing:0.14em;border:1px solid var(--color-line);color:var(--color-text-muted);background:var(--color-surface-2)}.status-good{background:var(--color-hi-soft);color:var(--color-hi);border-color:rgba(22,236,6,0.35)}.status-improve{background:rgba(255,212,36,0.14);color:var(--color-mid);border-color:rgba(255,212,36,0.4)}.status-attention{background:rgba(255,0,38,0.14);color:#FF5A72;border-color:rgba(255,0,38,0.4)}.container{padding:2rem 2rem 4rem;max-width:1440px;margin:0 auto}.section{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:1.25rem}.card{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0) 40%),var(--color-surface-1);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden;transition:border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease}.card::before{content:'';position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);opacity:0.6}.card-hover-effect{transition:all 220ms ease}.card-hover-effect:hover{border-color:rgba(22,236,6,0.35);transform:translateY(-3px);box-shadow:var(--glow-hi)}.card-link{text-decoration:none;color:inherit;display:block}.card-header{display:flex;align-items:center;gap:0.9rem;padding-bottom:0.9rem;border-bottom:1px solid var(--color-line-soft)}.card-header h3{font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:0.02em;text-transform:uppercase;margin:0}.card-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-surface-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-hi) !important;font-size:1rem}.card-content{display:flex;flex-direction:column;gap:1.25rem}.metric-section{display:flex;flex-direction:column}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:0.7rem 0;border-bottom:1px solid var(--color-line-soft);font-size:0.9rem}.metric-row:last-child{border-bottom:none}.metric-row .label{font-size:0.68rem;color:var(--color-text-dim)}.metric-row>span:last-child{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:0.92rem;color:var(--color-text);font-weight:500}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(130px, 1fr));gap:0.75rem;margin-top:0.75rem}.metric-bubble{background:var(--color-surface-2);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:1rem 0.9rem;display:flex;flex-direction:column;align-items:flex-start;gap:0.35rem;position:relative;overflow:hidden;transition:border-color 180ms ease, transform 180ms ease, background 180ms ease}.metric-bubble::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--bubble-accent, var(--color-line));opacity:0.95}.metric-bubble:hover{transform:translateY(-1px);background:var(--color-surface-3);border-color:var(--bubble-accent, var(--color-line))}.metric-label{font-family:var(--font-body);font-size:0.62rem;color:var(--color-text-dim);text-transform:uppercase;letter-spacing:0.16em;font-weight:600}.metric-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:600;color:var(--color-text);line-height:1.05;letter-spacing:-0.01em}.metric-duration{--bubble-accent: var(--color-strain)}.metric-strain{--bubble-accent: var(--color-strain)}.metric-avg-hr{--bubble-accent: var(--color-mid)}.metric-max-hr{--bubble-accent: var(--color-lo)}.metric-calories{--bubble-accent: var(--color-hi)}.metric-score{--bubble-accent: var(--color-hi)}.metric-hr{--bubble-accent: var(--color-lo)}.metric-hrv{--bubble-accent: var(--color-hi)}.metric-spo2{--bubble-accent: var(--color-strain)}.metric-temp{--bubble-accent: var(--color-mid)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.65rem 1.2rem;border-radius:999px;font-family:var(--font-body);font-weight:600;font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform 180ms ease, background 180ms ease, box-shadow 180ms ease, color 180ms ease}.btn-primary,.button-primary{background:var(--color-hi);color:#041000;border-color:var(--color-hi)}.btn-primary:hover,.button-primary:hover{background:#8CFC4B;color:#041000;box-shadow:0 10px 30px -10px rgba(22,236,6,0.6);transform:translateY(-1px)}.button-secondary{background:transparent;color:var(--color-text);border:1px solid var(--color-line)}.button-secondary:hover{border-color:var(--color-hi);color:var(--color-hi)}.insights{background:linear-gradient(135deg, var(--color-insight-gradient-start), var(--color-insight-gradient-end)),var(--color-surface-1);border:1px solid var(--color-line);border-radius:var(--radius-xl);padding:2rem;display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:1.25rem}.insight-card{background:var(--color-surface-2);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:1.1rem 1.25rem}.insight-card h3{font-size:0.85rem;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;margin-bottom:0.4rem;color:var(--color-text-muted)}.chart-bar{border-radius:8px;width:100%;height:300px}.bar-aerobic{background-color:var(--color-strain)}.bar-strength{background-color:var(--color-hi)}.bar-other{background-color:var(--color-mid)}.line-hrhigh{stroke:var(--color-lo);stroke-width:2}.line-hrrest{stroke:var(--color-strain);stroke-width:2}.avatar{border-radius:50%;width:44px;height:44px;border:1px solid var(--color-line)}.search-bar{border-radius:var(--radius-sm);padding:0.55rem 1rem;border:1px solid var(--color-line);background:var(--color-surface-2);color:var(--color-text);font-size:0.95rem}.recovery-card-link{text-decoration:none;color:inherit}.recovery-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem}.recovery-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-surface-3);border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-hi) !important}.recovery-status{margin-top:0.75rem;padding-top:0.9rem;border-top:1px solid var(--color-line-soft);display:flex;justify-content:flex-end}.chart-section{margin-top:0.5rem}.card .chart-container,.workout-card .chart-container,.recovery-card .chart-container,.cycle-card .chart-container,.chart-section .chart-container{width:100%;margin-top:0.75rem;background:var(--color-surface-0);border:1px solid var(--color-line-soft);border-radius:var(--radius-md);padding:0.75rem}.alert{padding:1rem 1.25rem;margin-bottom:1rem;border-radius:var(--radius-md);border:1px solid var(--color-line);background:var(--color-surface-1);color:var(--color-text)}.alert-danger{background:rgba(255,0,38,0.12);border-color:rgba(255,0,38,0.4);color:#FF7B8F}@media (max-width: 768px){.container{padding:1rem 1rem 3rem}h1{font-size:1.85rem}.section{grid-template-columns:1fr}.card{border-radius:var(--radius-md)}}.page-header{width:100%;background:linear-gradient(180deg, rgba(0,0,0,0.7), rgba(0,0,0,0.3)),var(--color-surface-0, #0A0A0A);border-bottom:1px solid var(--color-line, #2A2A2E);padding:0.95rem 1.5rem;box-sizing:border-box;position:sticky;top:0;z-index:50;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.header-content{max-width:1440px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;position:relative;gap:1rem}.header-left{flex:0 0 auto}.header-center{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:0.5rem}.header-center h1{margin:0;font-family:var(--font-display, "Archivo", sans-serif);font-size:0.85rem;font-weight:700;color:var(--color-text, #FAFAFA);text-transform:uppercase;letter-spacing:0.24em}.header-center h1::before{content:'';display:inline-block;width:8px;height:8px;margin-right:0.75rem;background:var(--color-hi, #16EC06);border-radius:999px;box-shadow:0 0 10px rgba(22,236,6,0.8);vertical-align:middle}.header-right{flex:0 0 auto}.header-left .btn-primary{background:transparent;color:var(--color-text-muted, #A1A1A6);border:1px solid var(--color-line, #2A2A2E);padding:0.5rem 0.95rem;font-size:0.68rem;letter-spacing:0.18em;text-transform:uppercase;border-radius:999px}.header-left .btn-primary:hover{color:var(--color-hi, #16EC06);border-color:var(--color-hi, #16EC06);background:rgba(22,236,6,0.06)}.header-left .btn-primary::before{content:'←';margin-right:0.4rem;font-weight:700}.user-menu{position:relative;display:inline-block}.user-menu-button{background:var(--color-surface-2, #18181B);border:1px solid var(--color-line, #2A2A2E);color:var(--color-text, #FAFAFA);cursor:pointer;font-family:var(--font-mono, monospace);font-size:0.72rem;padding:0.5rem 0.85rem;border-radius:999px;display:flex;align-items:center;gap:0.6rem;transition:border-color 180ms ease, color 180ms ease, background 180ms ease}.user-menu-button:hover{color:var(--color-hi, #16EC06);border-color:rgba(22,236,6,0.45);background:rgba(22,236,6,0.04)}.user-menu-button .fa-chevron-down{font-size:0.7rem;color:var(--color-text-dim, #6B6B72)}.user-menu-button .fa-bars{display:none}.user-menu-dropdown{position:absolute;right:0;top:calc(100% + 8px);background:var(--color-surface-1, #111113);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-md, 14px);box-shadow:0 20px 40px -10px rgba(0,0,0,0.7);min-width:200px;z-index:1000;overflow:hidden;visibility:hidden;opacity:0;transform:translateY(-4px);transition:opacity 150ms ease 2s, transform 150ms ease 2s, visibility 0s linear 2s}.user-menu:hover .user-menu-dropdown,.user-menu-dropdown:hover{visibility:visible;opacity:1;transform:translateY(0);transition:opacity 150ms ease 0s, transform 150ms ease 0s, visibility 0s linear 0s}.user-menu-dropdown button,.user-menu-dropdown a,.btn-logout,.btn-admin{display:block;width:100%;text-align:left;padding:0.75rem 1rem;border:none;background:transparent;color:var(--color-text, #FAFAFA);cursor:pointer;font-family:var(--font-body, sans-serif);font-size:0.8rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;border-radius:0;transition:background 180ms ease, color 180ms ease}.user-menu-dropdown button:hover,.user-menu-dropdown a:hover,.btn-logout:hover,.btn-admin:hover{background:var(--color-surface-3, #222226);color:var(--color-lo, #FF0026)}.burger-menu{display:none;background:transparent;border:none;cursor:pointer;padding:0.5rem;z-index:1000}.burger-menu span{display:block;width:22px;height:2px;background:var(--color-text, #FAFAFA);margin:5px 0;transition:all 0.3s ease}@media (max-width: 768px){.page-header{padding:0.6rem 0.75rem}.header-center h1{font-size:0.7rem;letter-spacing:0.18em}.header-center h1::before{width:6px;height:6px;margin-right:0.5rem}.header-content .header-left .btn{padding:0.4rem 0.75rem;font-size:0.62rem}.burger-menu{display:block}.user-menu-button .fa-bars{display:block}.user-menu-button span,.user-menu-button .fa-chevron-down{display:none}.user-menu-button{padding:0.5rem 0.7rem}}.container{max-width:1240px;margin:0 auto;padding:2.5rem 2rem 5rem;text-align:left}h1{color:var(--color-text, #FAFAFA);margin-bottom:1.25rem}.user-info{padding:0;margin-top:2rem;position:relative}.user-info h2{font-family:var(--font-display, "Archivo", sans-serif);font-size:clamp(2.5rem, 7vw, 5.5rem);line-height:0.9;letter-spacing:-0.035em;margin:0 0 0.4rem;text-transform:uppercase;color:var(--color-text, #FAFAFA);font-weight:800;background:linear-gradient(180deg, #fff 0%, #A1A1A6 120%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.user-info::before{content:'PERFORMANCE OS';display:block;font-family:var(--font-mono, monospace);font-size:0.72rem;letter-spacing:0.4em;color:var(--color-hi, #16EC06);margin-bottom:1.5rem;padding-left:1.25rem;position:relative}.user-info::after{content:'';position:absolute;left:0;top:3px;width:14px;height:1px;background:var(--color-hi, #16EC06);box-shadow:0 0 8px rgba(22,236,6,0.7)}.action-buttons{margin-top:1.5rem}.login-section{margin-top:4rem;padding:3rem 2rem;text-align:center;border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-xl, 28px);background:radial-gradient(600px 400px at 50% 0%, rgba(22,236,6,0.07), transparent 70%),var(--color-surface-1, #111113)}.login-section h2{font-family:var(--font-display, "Archivo", sans-serif);font-size:1.5rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:1.5rem}.login-buttons{display:flex;gap:0.85rem;justify-content:center;flex-wrap:wrap}.login-button{display:inline-flex;align-items:center;padding:1rem 1.75rem;background:var(--color-hi, #16EC06);color:#041000;text-decoration:none;border-radius:999px;font-family:var(--font-body, sans-serif);font-weight:700;font-size:0.82rem;letter-spacing:0.14em;text-transform:uppercase;transition:transform 180ms ease, background 180ms ease, box-shadow 180ms ease;border:1px solid var(--color-hi, #16EC06)}.login-button:hover{background:#8CFC4B;color:#041000;transform:translateY(-2px);box-shadow:0 12px 30px -10px rgba(22,236,6,0.55)}.demo-login-button{background:transparent;color:var(--color-text, #FAFAFA);border-color:var(--color-line, #2A2A2E)}.demo-login-button:hover{background:transparent;color:var(--color-hi, #16EC06);border-color:var(--color-hi, #16EC06);box-shadow:none}.api-section{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0) 40%),var(--color-surface-1, #111113);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-xl, 28px);padding:1.5rem 2rem;margin:2.5rem 0;text-align:left;box-shadow:0 30px 60px -40px rgba(0,0,0,0.9);position:relative;overflow:hidden}.api-section::before{content:'';position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg, transparent, rgba(22,236,6,0.5), transparent)}.api-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:0.75rem 0;user-select:none}.api-header::before{content:'API';display:inline-block;font-family:var(--font-mono, monospace);font-size:0.6rem;letter-spacing:0.3em;color:var(--color-hi, #16EC06);padding:2px 8px;border:1px solid rgba(22,236,6,0.4);border-radius:4px;margin-right:0.75rem;align-self:center}.api-header>h3{flex:1}.api-header:hover{opacity:0.9}.api-section h3{color:var(--color-text, #FAFAFA);margin:0;font-family:var(--font-display, "Archivo", sans-serif);font-size:1.1rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}.toggle-btn{background:var(--color-surface-2, #18181B);border:1px solid var(--color-line, #2A2A2E);width:36px;height:36px;border-radius:50%;font-size:0.8rem;color:var(--color-text-muted, #A1A1A6);cursor:pointer;padding:0;transition:transform 300ms ease, color 200ms ease, border-color 200ms ease;display:inline-flex;align-items:center;justify-content:center}.toggle-btn:hover{color:var(--color-hi, #16EC06);border-color:var(--color-hi, #16EC06)}.toggle-btn.expanded{transform:rotate(180deg)}.api-content{overflow:hidden;transition:all 0.3s ease;padding-top:1rem;border-top:1px solid var(--color-line-soft)}.api-description{color:var(--color-text-muted, #A1A1A6);margin-bottom:1.25rem;font-size:0.9rem}.chatgpt-setup-guide{background:var(--color-surface-2, #18181B);border:1px solid var(--color-line, #2A2A2E);border-left:3px solid var(--color-hi, #16EC06);border-radius:var(--radius-md, 14px);padding:1.5rem;margin-bottom:1.75rem}.chatgpt-setup-guide h4{color:var(--color-hi, #16EC06);margin-top:0;margin-bottom:1rem;font-family:var(--font-display, "Archivo", sans-serif);font-size:0.9rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase}.setup-steps{margin:0;padding-left:1.25rem;color:var(--color-text, #FAFAFA);counter-reset:step;list-style:none}.setup-steps li{margin-bottom:1.1rem;line-height:1.5;position:relative;padding-left:2.25rem;counter-increment:step}.setup-steps li::before{content:counter(step, decimal-leading-zero);position:absolute;left:0;top:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono, monospace);font-size:0.7rem;color:var(--color-hi, #16EC06);border:1px solid rgba(22,236,6,0.35);border-radius:50%;background:rgba(22,236,6,0.06)}.setup-steps li:last-child{margin-bottom:0}.setup-steps strong{color:var(--color-text, #FAFAFA);display:block;margin-bottom:0.25rem;font-weight:600}.setup-steps p{margin:0;color:var(--color-text-muted, #A1A1A6);font-size:0.88rem}.setup-steps a{color:var(--color-hi, #16EC06);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.setup-steps a:hover{color:#8CFC4B}.integration-note{background:rgba(0,147,231,0.08);border:1px solid rgba(0,147,231,0.3);border-left:3px solid var(--color-strain, #0093E7);color:#7EC6F0;padding:0.9rem 1rem;margin-bottom:1.25rem;border-radius:var(--radius-sm, 8px);font-size:0.88rem;font-weight:500}.highlight-chatgpt{background:var(--color-surface-2, #18181B);border:1px solid rgba(22,236,6,0.35);border-radius:var(--radius-md, 14px);padding:1rem 1.1rem;margin-bottom:0.85rem;position:relative;overflow:hidden;transition:border-color 180ms ease, box-shadow 180ms ease}.highlight-chatgpt:hover{border-color:rgba(22,236,6,0.6);box-shadow:0 0 0 1px rgba(22,236,6,0.2),0 0 30px -10px rgba(22,236,6,0.25)}.highlight-chatgpt label{color:var(--color-hi, #16EC06);font-family:var(--font-mono, monospace);font-size:0.72rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase}.api-endpoints-details{margin-top:1.25rem;border-top:1px solid var(--color-line-soft);padding-top:1rem}.api-endpoints-details summary{cursor:pointer;font-family:var(--font-mono, monospace);font-size:0.72rem;font-weight:600;color:var(--color-text-muted, #A1A1A6);text-transform:uppercase;letter-spacing:0.16em;padding:0.5rem 0;user-select:none}.api-endpoints-details summary:hover{color:var(--color-hi, #16EC06)}.api-endpoints-details[open] summary{margin-bottom:1rem;color:var(--color-hi, #16EC06)}.api-endpoints-details .api-description{font-size:0.8rem;font-style:italic;margin-top:0.75rem}.api-urls{display:flex;flex-direction:column;gap:0.85rem}.api-url-item{display:flex;flex-direction:column;gap:0.5rem}.api-url-item label{font-family:var(--font-mono, monospace);font-weight:600;color:var(--color-text-muted, #A1A1A6);font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase}.url-input-group{display:flex;gap:0.5rem;align-items:stretch}.api-url-input{flex:1;padding:0.75rem 0.9rem;border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-sm, 8px);font-family:var(--font-mono, monospace);font-size:0.82rem;background:var(--color-surface-0, #0A0A0A);color:var(--color-text, #FAFAFA);cursor:text}.api-url-input:focus{outline:none;border-color:var(--color-hi, #16EC06);box-shadow:0 0 0 3px rgba(22,236,6,0.15)}.copy-btn{padding:0.75rem 1.25rem;background:var(--color-hi, #16EC06);color:#041000;border:none;border-radius:var(--radius-sm, 8px);font-family:var(--font-body, sans-serif);font-weight:700;font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;cursor:pointer;transition:all 0.2s ease;white-space:nowrap}.copy-btn:hover{background:#8CFC4B;transform:translateY(-1px);box-shadow:0 6px 18px -4px rgba(22,236,6,0.45)}.copy-btn:active{transform:translateY(0)}.copy-btn.copied{background:var(--color-strain, #0093E7);color:#fff}@media (max-width: 768px){.container{padding:1.25rem 1rem 3rem}.user-info{padding:0}.user-info h2{font-size:2.4rem;line-height:1}.api-section{padding:1rem;margin:1.5rem 0}.chatgpt-setup-guide{padding:1rem}.chatgpt-setup-guide h4{font-size:0.85rem}.setup-steps{padding-left:0;font-size:0.9rem}.setup-steps li{padding-left:2rem;margin-bottom:0.85rem}.highlight-chatgpt{padding:0.85rem}.highlight-chatgpt label{font-size:0.68rem}.api-url-input{font-size:0.72rem;padding:0.6rem}.copy-btn{padding:0.6rem 0.9rem;font-size:0.66rem;width:100%}.url-input-group{flex-direction:column}}.recoveries-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:1.25rem;margin:1.5rem 0 2rem}.recovery-card{position:relative;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0) 45%),var(--color-surface-1, #111113);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-lg, 20px);padding:1.35rem;box-shadow:var(--shadow-card);transition:all 220ms ease-in-out;width:100%;box-sizing:border-box;overflow:hidden}.recovery-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg, var(--color-hi, #16EC06), transparent)}.recovery-card:hover{transform:translateY(-3px);border-color:rgba(22,236,6,0.55);box-shadow:0 0 0 1px rgba(22,236,6,0.25),0 22px 50px -20px rgba(22,236,6,0.35)}.recovery-card:hover::after{opacity:1}.recovery-card::after{content:'';position:absolute;inset:0;background:radial-gradient(600px 200px at 50% 110%, rgba(22,236,6,0.12), transparent 60%);opacity:0;transition:opacity 0.3s ease-in-out;pointer-events:none}.recovery-card .recovery-header{display:flex;align-items:center;margin-bottom:1rem;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-line-soft)}.recovery-card .recovery-header .recovery-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--color-surface-3, #222226);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-sm, 8px);color:var(--color-hi, #16EC06);font-size:1.1rem}.recovery-card .recovery-header h3{margin:0;flex:1;font-family:var(--font-display, "Archivo", sans-serif);font-size:1.05rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--color-text, #FAFAFA)}.recovery-card .recovery-stats{flex:1;padding:0;border-radius:0;margin:0}.recovery-card .recovery-stats .metrics-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(110px, 1fr));gap:0.65rem}.recovery-card .recovery-status{margin-top:1rem;padding-top:0.9rem;border-top:1px solid var(--color-line-soft);display:flex;justify-content:flex-end}.recovery-card .status-indicator{padding:6px 14px;border-radius:999px;font-family:var(--font-mono, monospace);font-weight:600;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.14em;border:1px solid transparent}.recovery-card .status-indicator.good{background:rgba(22,236,6,0.12);color:var(--color-hi, #16EC06);border-color:rgba(22,236,6,0.4)}.recovery-card .status-indicator.fair{background:rgba(255,212,36,0.12);color:var(--color-mid, #FFD424);border-color:rgba(255,212,36,0.4)}.recovery-card .status-indicator.poor{background:rgba(255,0,38,0.12);color:#FF5A72;border-color:rgba(255,0,38,0.4)}.recovery-card .recovery-card-link{text-decoration:none;color:inherit;display:block}.recovery-detail{max-width:900px;margin:0 auto}.recovery-detail .recovery-info{background:var(--color-surface-1, #111113);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-lg, 20px);box-shadow:var(--shadow-card);padding:2rem;margin:1.25rem 0}.recovery-detail .recovery-metrics{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:1.25rem;margin-top:1.75rem}.recovery-detail .metric-card{background:var(--color-surface-2, #18181B);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-md, 14px);padding:1.25rem;text-align:center}.recovery-detail .metric-card h3{margin:0 0 0.6rem 0;font-family:var(--font-body, sans-serif);font-size:0.7rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--color-text-dim, #6B6B72)}.recovery-detail .metric-card .metric-value{font-family:var(--font-mono, monospace);font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:600;color:var(--color-text, #FAFAFA)}.recovery-detail .metric-card .metric-value.good{color:var(--color-hi, #16EC06)}.recovery-detail .metric-card .metric-value.fair{color:var(--color-mid, #FFD424)}.recovery-detail .metric-card .metric-value.poor{color:#FF5A72}.recovery-detail .back-link{margin-top:2rem;text-align:center}.no-records{text-align:center;padding:3rem 1.5rem;color:var(--color-text-muted, #A1A1A6);border:1px dashed var(--color-line, #2A2A2E);border-radius:var(--radius-lg, 20px);font-family:var(--font-mono, monospace);font-size:0.82rem;letter-spacing:0.1em;text-transform:uppercase}@media (max-width: 1400px){.recoveries-grid{grid-template-columns:repeat(3, 1fr)}}@media (max-width: 1200px){.recoveries-grid{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 768px){.recoveries-grid{grid-template-columns:1fr}}.workouts-grid{display:flex;flex-direction:column;gap:1.25rem;margin:1.5rem 0}.workout-card{position:relative;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0) 45%),var(--color-surface-1, #111113);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-lg, 20px);padding:1.5rem 1.5rem 1.75rem;box-shadow:var(--shadow-card);transition:transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;width:100%;box-sizing:border-box;overflow:hidden}.workout-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg, var(--color-strain, #0093E7), transparent)}.workout-card:hover{transform:translateY(-3px);border-color:rgba(0,147,231,0.55);box-shadow:0 0 0 1px rgba(0,147,231,0.25),0 22px 50px -20px rgba(0,147,231,0.35)}.workout-card h3{margin:0;font-family:var(--font-display, "Archivo", sans-serif);font-size:1.2rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--color-text, #FAFAFA);padding-bottom:0;border-bottom:none}.workout-card h4{color:var(--color-text-muted, #A1A1A6);margin:1.2rem 0 0.5rem;font-family:var(--font-mono, monospace);font-size:0.7rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase}.workout-header{display:flex;align-items:center;margin-bottom:1rem;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-line-soft)}.workout-header h3{flex:1}.workout-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-surface-3, #222226);border:1px solid var(--color-line, #2A2A2E);border-radius:var(--radius-sm, 8px);color:var(--color-strain, #0093E7);font-size:1.15rem}.workout-details{display:flex;flex-direction:column;gap:1.5rem;width:100%}.workout-stats{width:100%}.heart-rate-zones{width:100%}.workout-card .chart-container{width:100%;height:300px;margin-top:0.5rem;background:var(--color-surface-0, #0A0A0A);border:1px solid var(--color-line-soft);border-radius:var(--radius-md, 14px);padding:0.75rem}.workout-card-link{text-decoration:none;color:inherit;display:block}@media (max-width: 768px){.workouts-grid{gap:1rem}.workout-card{padding:1.15rem;border-radius:var(--radius-md, 14px)}.workout-details{flex-direction:column;padding:0}.workout-card h3{font-size:1.05rem}}h1{font-family:var(--font-display, "Archivo", sans-serif);text-transform:uppercase;letter-spacing:-0.015em}.no-records,.no-data{text-align:center;padding:3rem 1.5rem;border:1px dashed var(--color-line, #2A2A2E);border-radius:var(--radius-lg, 20px);color:var(--color-text-muted, #A1A1A6);background:var(--color-surface-1, #111113);font-family:var(--font-mono, monospace);font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase}body{font-family:var(--font-body, "DM Sans", sans-serif);color:var(--color-text, #FAFAFA);background:var(--color-bg, #000)}.button-grid{display:grid;grid-template-columns:repeat(2, 1fr);column-gap:18px;row-gap:18px;padding:24px 0 8px}@media (max-width: 800px){.button-grid{grid-template-columns:1fr;row-gap:14px}}.action-card{position:relative;display:block;height:260px;border-radius:var(--radius-lg, 20px);overflow:hidden;border:1px solid var(--color-line, #2A2A2E);background:var(--color-surface-1, #111113);transition:transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;isolation:isolate}.action-card::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.75) 100%)}.action-card::after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(140% 60% at 50% 120%, rgba(22,236,6,0.35), transparent 60%);opacity:0;transition:opacity 300ms ease}.action-card:hover{transform:translateY(-4px);border-color:rgba(22,236,6,0.55);box-shadow:0 30px 60px -25px rgba(0,0,0,0.9),0 0 0 1px rgba(22,236,6,0.25),0 0 40px -10px rgba(22,236,6,0.35)}.action-card:hover::after{opacity:1}.action-card.workouts{background:linear-gradient(0deg, rgba(0,0,0,0.25), rgba(0,0,0,0.25)),url(/assets/my-workout-f6fa6702a127f914a00b85f0ddcc80b762bba891fc2d792b1f51033140937e54.jpg) #111 50%/cover no-repeat}.action-card.sleep{background:linear-gradient(0deg, rgba(0,0,0,0.25), rgba(0,0,0,0.25)),url(/assets/my-sleep-492c0f43899eb52ca123c35aa975f446d21022ea2dbb43f8eb0ecc6b65f8a13c.jpg) #111 50%/cover no-repeat}.action-card.recoveries{background:linear-gradient(0deg, rgba(0,0,0,0.25), rgba(0,0,0,0.25)),url(/assets/my-recovery-53d6670b64349b855ac6c80cb6824799001b539904b42823437d2d72249018f7.jpg) #111 50%/cover no-repeat}.action-card.cycles{background:linear-gradient(0deg, rgba(0,0,0,0.25), rgba(0,0,0,0.25)),url(/assets/my-cycles-f6f0ea96d6b6b59fe58ee4a8e8722da1c9742f692d48753edfeea9a946c29945.jpg) #111 50%/cover no-repeat}.action-card.workouts{--card-accent: var(--color-strain, #0093E7)}.action-card.sleep{--card-accent: var(--color-sleep,  #7C72E8)}.action-card.recoveries{--card-accent: var(--color-hi,     #16EC06)}.action-card.cycles{--card-accent: var(--color-mid,    #FFD424)}.action-card .card-number{position:absolute;top:18px;right:20px;z-index:3;font-family:var(--font-mono, monospace);font-size:0.72rem;letter-spacing:0.2em;color:rgba(255,255,255,0.7);padding:4px 8px;border:1px solid rgba(255,255,255,0.2);border-radius:4px;background:rgba(0,0,0,0.35);backdrop-filter:blur(6px)}.action-card .card-kicker{position:absolute;top:22px;left:22px;z-index:3;font-family:var(--font-body, sans-serif);font-size:0.68rem;font-weight:600;letter-spacing:0.2em;color:var(--card-accent, #fff);text-transform:uppercase}.btn-card{position:absolute;left:22px;right:22px;bottom:22px;z-index:3;color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.btn-card .btn-card-title{font-family:var(--font-display, "Archivo", sans-serif);font-weight:800;font-size:clamp(1.9rem, 3.5vw, 2.75rem);line-height:0.92;letter-spacing:-0.02em;text-transform:uppercase;text-wrap:balance;max-width:80%}.btn-card .btn-card-arrow{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,0.35);color:#fff;font-size:1rem;background:rgba(0,0,0,0.35);backdrop-filter:blur(8px);transition:background 200ms ease, border-color 200ms ease, transform 200ms ease}.action-card:hover .btn-card-arrow{background:var(--card-accent);border-color:var(--card-accent);color:#000;transform:rotate(-45deg)}.action-card .btn-card::after{content:'';position:absolute;left:0;bottom:-22px;height:3px;width:0;background:var(--card-accent);transition:width 350ms ease}.action-card:hover .btn-card::after{width:100%}@media (max-width: 768px){.action-card{height:200px}.btn-card .btn-card-title{font-size:1.75rem}.btn-card .btn-card-arrow{width:38px;height:38px}}.header-logo-link{display:inline-flex;align-items:center;text-decoration:none;transition:opacity 120ms ease}.header-logo-link:hover{opacity:1}.header-logo{height:32px;width:auto;opacity:0.9;transition:opacity 120ms ease}.header-logo-link:hover .header-logo{opacity:1}
