:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;accent-color:var(--accent);--background:#060a13;--background-2:#0a1220;--card:#111d30c7;--card-solid:#111d30;--muted:#9eacc1;--muted-strong:#cad4e3;--text:#f7f9fc;--accent:#fc4c02;--accent-strong:#ff7a3d;--accent-soft:#fc4c0229;--success:#34d399;--success-soft:#34d39929;--info:#60a5fa;--border:#ffffff1b;--border-strong:#fff3;--radius:18px;--radius-sm:12px;--shadow:0 1px 0 #ffffff06, 0 24px 70px #00000057;--shadow-soft:0 12px 34px #0000003d;--ring:0 0 0 3px #ff7a3db8;--font:var(--font-inter), "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:var(--font-sora), "Sora", var(--font)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--text);color:var(--background);z-index:10000;border-radius:9px;padding:11px 15px;font-weight:850;transition:transform .12s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{box-shadow:var(--ring);outline:none;transform:translateY(0)}.main-content-anchor{height:0;scroll-margin-top:16px;display:block}.not-found-page{align-items:center;min-height:100vh;padding:48px 0;display:flex}.not-found-inner{width:min(100% - 32px,760px)}.not-found-card{overflow:hidden}.not-found-card h1{max-width:10ch;font-size:clamp(2.4rem,8vw,4.8rem)}.not-found-card p{max-width:60ch}::selection{color:var(--text);background:#fc4c024d}::selection{color:var(--text);background:#fc4c024d}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 7% -8%, #fc4c022b, transparent 34rem), radial-gradient(circle at 94% 3%, #407ada21, transparent 38rem), linear-gradient(180deg, var(--background), var(--background-2));min-height:100vh;color:var(--text);font-family:var(--font);font-feature-settings:"cv02", "cv03", "cv04", "ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;letter-spacing:0;margin:0}main{min-height:100vh;padding:56px 22px 80px}.container{max-width:1120px;margin:0 auto}.brand{color:var(--text);flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:44px;text-decoration:none;transition:transform .18s,opacity .18s;display:inline-flex}.brand:hover{opacity:.94;transform:translateY(-1px)}.brand-lockup{align-items:center;gap:10px;min-width:0;display:inline-flex}.brand-icon{filter:drop-shadow(0 6px 14px #fc4c0247);flex:none;width:40px;height:40px;display:block}.brand-wordmark{color:var(--text);font-family:var(--font-display);letter-spacing:.02em;padding:2px 2px 4px;font-size:1.46rem;font-weight:800;line-height:1}.brand-wordmark span{color:var(--accent-strong);border-bottom:.13em solid var(--accent);padding-bottom:.1em}.brand-subtitle{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;padding-left:2px;font-size:.72rem;font-weight:700;line-height:1}.hero{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:center;gap:28px;animation:.6s cubic-bezier(.22,1,.36,1) both rise;display:grid}.badge{background:var(--accent-soft);color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;border:1px solid #fc4c0252;border-radius:999px;align-items:center;gap:8px;padding:6px 13px;font-size:.76rem;font-weight:800;display:inline-flex}h1{font-family:var(--font-display);letter-spacing:0;background:linear-gradient(#fff 30%,#b9c6dc);-webkit-text-fill-color:transparent;text-wrap:balance;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;-webkit-background-clip:text;background-clip:text;margin:18px 0 22px;font-size:4.8rem;font-weight:800;line-height:.98}h2,h3{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;text-wrap:balance}h2{font-family:var(--font-display);letter-spacing:0;font-weight:700}p{color:var(--muted);text-wrap:pretty;font-size:1.06rem;line-height:1.7}.actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{background:linear-gradient(135deg, var(--accent-strong), var(--accent));color:#07101c;cursor:pointer;font:inherit;letter-spacing:.005em;white-space:nowrap;border:1px solid #ffffff29;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:14px 24px;font-weight:800;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s,opacity .16s;display:inline-flex;box-shadow:0 12px 28px #fc4c0257,inset 0 1px #ffffff40}.button:active{transform:translateY(0)}.button.secondary{border:1px solid var(--border-strong);box-shadow:none;color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0d}.button.secondary:hover{box-shadow:var(--shadow-soft);background:#ffffff1a;border-color:#ffffff47}.button.compact{min-height:38px;padding:9px 15px;font-size:.9rem}.button:disabled{cursor:not-allowed;opacity:.4;box-shadow:none;transform:none}.button:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{box-shadow:var(--ring);outline:none}.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);background:linear-gradient(145deg,#162339e6,#0d1829d6);padding:30px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative}.card:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(140deg,#fff3,#0000 38%,#60a5fa0f);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.step{min-height:190px;transition:transform .2s,border-color .2s}.step:hover{border-color:var(--border-strong);box-shadow:var(--shadow), 0 0 0 1px #fc4c0224;transform:translateY(-4px)}.kpi{font-family:var(--font-display);letter-spacing:0;background:linear-gradient(135deg, var(--accent-strong), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:10px 0;font-size:2.4rem;font-weight:800}code{border:1px solid var(--border);background:#ffffff12;border-radius:8px;padding:2px 7px;font-size:.9em}.dashboard-panel{justify-content:space-between;align-items:center;gap:24px;margin-top:26px;display:flex}.sync-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:12px;display:flex}.dashboard-tabs{border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0a;border-radius:999px;flex-wrap:wrap;gap:8px;width:fit-content;max-width:100%;margin:28px 0 12px;padding:7px;display:flex}.dashboard-tabs a{color:var(--muted);border:1px solid #0000;border-radius:999px;padding:9px 16px;font-size:.9rem;font-weight:700;text-decoration:none;transition:color .16s,background .16s,box-shadow .16s}.dashboard-tabs a:hover{color:var(--text);background:#ffffff0f}.dashboard-tabs a.active{background:linear-gradient(135deg, var(--accent-strong), var(--accent));color:#07101c;border-color:#0000;box-shadow:0 8px 20px #fc4c0266}.load-panel{margin-top:26px}.load-bars{border-top:1px solid var(--border);grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;gap:12px;min-height:170px;margin-top:24px;padding-top:22px;display:grid}.load-bar{place-items:center;gap:8px;min-width:0;display:grid}.load-bar div{background:linear-gradient(180deg, var(--accent-strong), var(--accent));border-radius:999px 999px 5px 5px;width:100%;min-height:8px;max-height:120px;transition:filter .16s;box-shadow:0 0 20px #fc4c0266,inset 0 1px #ffffff47}.load-bar:hover div{filter:brightness(1.12)}.load-bar span,.load-bar strong{text-align:center;min-width:0;font-size:.78rem}.load-bar span{color:var(--muted)}.tsb-bars{border-top:1px dashed var(--border-strong)}.tsb-positive{background:linear-gradient(180deg, #6ee7b7, var(--success));border-radius:999px 999px 5px 5px;width:100%;min-height:8px;max-height:120px;box-shadow:0 0 20px #34d39957,inset 0 1px #ffffff4d}.tsb-negative{background:linear-gradient(180deg, var(--accent-strong), var(--accent));border-radius:999px 999px 5px 5px;width:100%;min-height:8px;max-height:120px;box-shadow:0 0 20px #fc4c0257,inset 0 1px #ffffff47}.profile-panel{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:26px;margin-top:26px;display:grid}.profile-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.profile-metrics div{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;padding:14px 16px}.profile-metrics span,.profile-form span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px;font-size:.72rem;font-weight:800;display:block}.profile-metrics strong{color:var(--text);font-family:var(--font-display);font-size:1.3rem;font-weight:700;display:block}.profile-form{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:16px;display:grid}.profile-form label{min-width:0}.profile-form input,.ai-form input,.ai-form select,.ai-form textarea,.race-form input,.race-form select,.race-form textarea,.today-coach-form textarea{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;background:#ffffff0d;width:100%;min-height:46px;padding:12px 14px;font-weight:600;transition:border-color .16s,box-shadow .16s,background .16s}.profile-form input{font-weight:700}.profile-form input:hover,.ai-form input:hover,.ai-form select:hover,.ai-form textarea:hover,.race-form input:hover,.race-form select:hover,.race-form textarea:hover,.today-coach-form textarea:hover{border-color:var(--border-strong);background:#ffffff12}.profile-form input:focus,.ai-form input:focus,.ai-form select:focus,.ai-form textarea:focus,.race-form input:focus,.race-form select:focus,.race-form textarea:focus,.today-coach-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:#ffffff12;outline:none}.profile-form .button{grid-column:1/-1}.section-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.section-heading h2{margin-top:0}.section-heading p{margin-bottom:0}.inline-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.ai-panel,.race-panel,.plan-edit-panel,.current-week-panel,.today-coach-panel,.microcycle-panel,.review-list,.summary-list{margin-top:24px}.ai-form,.race-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.race-form{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-form label,.race-form label{min-width:0}.ai-form span,.race-form span,.source-grid span,.microcycle-summary span,.plan-stamp span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px;font-size:.72rem;font-weight:800;display:block}.ai-form textarea,.race-form textarea{resize:vertical}.ai-form select,.race-form select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.ai-form select option,.race-form select option,.intake-form select option,.race-dates select option,.settings-form select option{background-color:var(--card-solid);color:var(--text)}.ai-form .wide,.race-form .wide,.ai-form .button,.race-form .button{grid-column:1/-1}.goal-checkboxes{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:16px 18px;display:grid}.goal-checkboxes legend{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:0 4px;font-size:.72rem;font-weight:800}.checkbox-option{cursor:pointer;align-items:center;gap:9px;min-width:0;font-weight:600;display:flex}.checkbox-option input{accent-color:var(--accent);cursor:pointer;width:18px;height:18px;min-height:0}.checkbox-option span{margin-bottom:0}.source-grid,.microcycle-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.source-grid div,.microcycle-summary div{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;padding:14px 16px}.source-grid strong,.microcycle-summary strong,.plan-stamp strong{color:var(--text);font-family:var(--font-display);font-size:1.1rem;font-weight:700;display:block}.race-list{gap:6px;margin-top:22px;display:grid}.race-row{border-top:1px solid var(--border);border-radius:10px;grid-template-columns:minmax(0,1.4fr) minmax(80px,.4fr) minmax(80px,.4fr) auto;align-items:center;gap:12px;padding:16px 8px;transition:background .15s;display:grid}.race-row:hover{background:#ffffff08}.race-row strong,.race-row span{overflow-wrap:anywhere;min-width:0;display:block}.race-row span{color:var(--muted)}.plan-stamp{text-align:right;min-width:130px}.workout-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.workout-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;gap:12px;padding:18px 20px;transition:border-color .16s,transform .16s;display:grid}.workout-item:hover{border-color:var(--border-strong);transform:translateY(-2px)}.workout-item h3{font-family:var(--font-display);margin:4px 0 0;font-size:1.08rem}.workout-item span{color:var(--accent-strong);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:800}.workout-item p{margin:0;font-size:.96rem;line-height:1.55}.workout-item dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.workout-item dl div{min-width:0}.workout-item dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:800}.workout-item dd{overflow-wrap:anywhere;margin:3px 0 0;font-weight:700}.today-coach-panel{gap:20px;display:grid}.today-coach-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;display:grid}.today-coach-form textarea{resize:vertical;min-height:96px}.today-chat-list{gap:16px;display:grid}.empty-note{color:var(--muted);margin:0;font-weight:700}.today-chat-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;gap:12px;padding:18px 20px;display:grid}.today-chat-question span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:5px;font-size:.76rem;font-weight:800;display:block}.today-chat-question strong,.today-chat-answer strong{color:var(--text);overflow-wrap:anywhere;display:block}.today-chat-answer{border-left:3px solid var(--accent);gap:10px;padding-left:16px;display:grid}.today-chat-answer p{margin:0;font-size:.96rem;line-height:1.55}.today-chat-notes span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:800;display:block}.today-chat-notes ul{margin:0;padding-left:18px}.today-chat-notes li{margin:4px 0;font-size:.94rem;line-height:1.45}.plan-overview{margin-top:24px}.cycle-list{align-content:start;gap:12px;display:grid}.cycle-item{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:#ffffff08;gap:5px;padding:14px 16px;display:grid}.cycle-item span{color:var(--accent-strong);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:800}.cycle-item p{margin:0;font-size:.95rem;line-height:1.5}.source-summary{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.source-summary span{border:1px solid var(--border);color:var(--muted-strong);background:#ffffff0a;border-radius:999px;padding:8px 13px;font-size:.84rem;font-weight:700}.microcycle-list{gap:8px;margin-top:20px;display:grid}.microcycle-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff06;padding:12px 16px;transition:border-color .16s,background .16s}.microcycle-item:hover{border-color:var(--border-strong);background:#ffffff0b}.microcycle-item summary{cursor:pointer;grid-template-columns:90px 170px minmax(0,1fr) 80px 70px;align-items:center;gap:10px;list-style:none;display:grid}.microcycle-item summary::-webkit-details-marker{display:none}.microcycle-item summary span{color:var(--muted);overflow-wrap:anywhere;min-width:0}.microcycle-detail{padding:10px 0 4px 90px}.microcycle-detail p{margin:8px 0;font-size:.96rem}.microcycle-detail ul{gap:8px;margin:10px 0 0;padding-left:18px;display:grid}.microcycle-detail li span{color:var(--muted);margin-top:2px;font-size:.92rem;display:block}.review-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;gap:9px;padding:18px 20px;display:grid}.review-item span{color:var(--muted);margin-top:3px;display:block}.review-item p{margin:0;font-size:.96rem;line-height:1.55}.review-notes{gap:6px;display:grid}.review-notes strong{font-size:.9rem}.review-notes ul{margin:0;padding-left:18px}.review-notes li{margin:4px 0;font-size:.94rem;line-height:1.45}.review-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.edit-history{gap:12px;margin-top:24px;display:grid}.edit-history-item{border-top:1px solid var(--border);gap:5px;padding-top:14px;display:grid}.edit-history-item span{color:var(--muted);font-size:.88rem;font-weight:700}.edit-history-item p{margin:0;font-size:.96rem;line-height:1.55}.summary-table{gap:6px;margin-top:20px;display:grid}.summary-row{border-top:1px solid var(--border);border-radius:10px;grid-template-columns:minmax(0,1fr) 110px;align-items:center;gap:12px;padding:15px 8px;transition:background .15s;display:grid}.summary-row:hover{background:#ffffff08}.summary-row span{color:var(--text);overflow-wrap:anywhere;min-width:0;font-weight:700}.summary-row strong{color:var(--muted);text-align:right;text-transform:capitalize}.notice{border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:20px;padding:15px 20px;font-weight:700}.notice.success{background:var(--success-soft);color:#a7f3d0;border-color:#34d39959}.notice.error{color:#fecaca;background:#ef444429;border-color:#ef444459}.activity-list{margin-top:24px}.table{gap:6px;margin-top:20px;display:grid}.row{border-top:1px solid var(--border);border-radius:10px;grid-template-columns:minmax(0,1.5fr) minmax(90px,.5fr) minmax(90px,.5fr) minmax(140px,.7fr);align-items:center;gap:12px;padding:15px 8px;transition:background .15s;display:grid}.row:hover{background:#ffffff08}.row span{color:var(--muted);overflow-wrap:anywhere;min-width:0}.row span:first-child{color:var(--text);font-weight:700}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}@media (max-width:820px){main{padding:40px 16px 64px}.hero,.grid,.grid.two,.profile-panel,.profile-metrics,.profile-form,.ai-form,.race-form,.source-grid,.microcycle-summary,.workout-grid,.today-coach-form,.race-row,.row{grid-template-columns:1fr}.dashboard-panel{flex-direction:column;align-items:flex-start}.section-heading{flex-direction:column}.inline-actions{flex-direction:column;align-items:stretch;width:100%}.inline-actions .button,.today-coach-form .button{width:100%}.plan-stamp{text-align:left}.sync-actions{flex-direction:column;align-items:stretch;width:100%}.sync-actions .button{width:100%}.summary-row{grid-template-columns:1fr}.summary-row strong{text-align:left}.microcycle-item summary{grid-template-columns:1fr}.microcycle-detail{padding-left:0}.load-bars{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-tabs{justify-content:flex-start;width:100%}}.site-nav{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;margin-bottom:44px;display:grid}.site-nav .brand{margin-bottom:0}.site-nav-links{flex-wrap:wrap;justify-content:center;gap:6px;min-width:0;display:flex}.site-nav-links a{color:var(--muted);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;min-height:44px;padding:8px 14px;font-size:.92rem;font-weight:700;text-decoration:none;transition:color .16s,background .16s;display:inline-flex}.site-nav-links a:hover{color:var(--text);border-color:var(--border);background:#ffffff0e}.site-nav-links a.active{background:var(--accent-soft);color:#ff9565;border-color:#fc4c0247}.site-nav-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:max-content;display:flex}.site-nav-actions form{margin:0}.hero-note{color:var(--muted);margin-top:18px;font-size:.9rem;font-weight:600}.hero-card{align-content:start;gap:18px;display:grid}.hero-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.hero-list li{color:var(--muted-strong);padding-left:30px;font-weight:600;position:relative}.hero-list li:before{content:"✓";color:var(--accent-strong);font-weight:900;position:absolute;top:-1px;left:0}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px;display:grid}.feature-card{min-height:220px;transition:transform .2s,border-color .2s,box-shadow .2s}.feature-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow), 0 0 0 1px #fc4c021a;transform:translateY(-4px)}.feature-card h2{margin:0 0 10px;font-size:1.25rem}.feature-card p{margin:0}.step-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px;display:grid}.step-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:linear-gradient(145deg,#ffffff0b,#ffffff05);padding:20px}.step-card h3{font-family:var(--font-display);margin:12px 0 8px;font-size:1.1rem}.step-card p{margin:0;font-size:.96rem}.step-number{background:linear-gradient(135deg, var(--accent-strong), var(--accent));color:#07101c;font-family:var(--font-display);border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.1rem;font-weight:800;display:inline-flex;box-shadow:0 8px 20px #fc4c0259}.cta-band{text-align:center;margin-top:40px}.cta-band h2{margin:0 0 10px;font-size:1.9rem}.cta-band p{max-width:520px;margin:0 auto 22px}.cta-band .actions{justify-content:center}.page-head>p{max-width:66ch}.page-head .notice{text-align:left}.health-note{color:var(--muted-strong);margin-top:12px;font-size:.92rem;font-weight:600}.how-steps{gap:18px;margin-top:36px;display:grid}.how-step{grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:20px;display:grid}.how-step h2{margin:0 0 8px;font-size:1.3rem}.how-step p{margin:0}.principles-panel,.comparison-panel{margin-top:24px}.comparison-panel h2{margin:10px 0 0}.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.comparison-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;padding:18px 20px}.comparison-item h3{font-family:var(--font-display);margin:0 0 6px;font-size:1.05rem}.comparison-item p{margin:0;font-size:.95rem}.principles-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.principle{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;padding:18px 20px}.principle h3{font-family:var(--font-display);margin:0 0 6px;font-size:1.05rem}.principle p{margin:0;font-size:.95rem}.auth-top{justify-content:center;margin-bottom:26px;display:flex}.auth-top .brand{margin-bottom:0}.auth-card{box-shadow:var(--shadow), 0 -10px 42px #fc4c020e;text-align:center;border-top-color:#fc4c0280}.auth-card h1{margin:16px 0 12px;font-size:2rem}.auth-card>p{max-width:420px;margin:0 auto 22px}.auth-buttons{gap:12px;max-width:360px;margin:0 auto;display:grid}.auth-divider{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;max-width:360px;margin:18px auto;font-size:.7rem;font-weight:800;display:grid}.auth-divider:before,.auth-divider:after{background:var(--border);content:"";height:1px}.auth-email-form{text-align:left;gap:12px;max-width:360px;margin:0 auto;display:grid}.auth-email-form label{gap:8px;display:grid}.auth-email-form label>span{color:var(--muted-strong);letter-spacing:.06em;text-transform:uppercase;font-size:.76rem;font-weight:800}.auth-email-form input{appearance:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;background:#ffffff0d;width:100%;min-height:50px;padding:12px 14px;font-weight:600;transition:border-color .16s,box-shadow .16s,background .16s}.auth-email-form input:hover{border-color:var(--border-strong);background:#ffffff12}.auth-email-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:#ffffff12;outline:none}.auth-email-form .field-hint{margin:-2px 0 2px;font-size:.8rem;font-weight:500;line-height:1.45}.auth-email-form .button{justify-content:center;width:100%}.google-signin-button{justify-content:center;align-items:center;width:100%;min-height:40px;display:flex}.google-signin-button img{width:180px;height:40px;display:block}.button.provider.apple{color:#fff;background:#000}.button.provider.apple:hover{background:#1a1a1a}.auth-alt{margin:22px 0 0}.auth-alt a{color:var(--accent-strong);font-weight:700;text-decoration:none}.auth-consent{color:var(--muted);margin:22px 0 0;font-size:.82rem}.auth-consent a{color:var(--muted-strong);font-weight:700;text-decoration:underline}.field-hint{color:var(--muted);letter-spacing:0;text-transform:none;font-size:.72rem;font-weight:600}.metrics-guidance{color:#fcd34d;background:#fbbf241c;border:1px solid #fbbf2447;border-radius:8px;margin-top:8px;padding:8px 10px;line-height:1.45;display:block}.auth-perks{text-align:left;gap:8px;max-width:320px;margin:22px auto 0;padding:0;list-style:none;display:grid}.auth-perks li{color:var(--muted-strong);padding-left:28px;font-weight:600;position:relative}.auth-perks li:before{content:"✓";color:var(--accent-strong);font-weight:900;position:absolute;left:0}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:36px;display:grid}.pricing-card{align-content:start;gap:14px;padding:24px;display:grid;position:relative}.pricing-card.highlight{box-shadow:var(--shadow), 0 0 0 1px #fc4c0233, 0 18px 48px #fc4c0217;background:linear-gradient(145deg,#2d2633eb,#141c2de0);border-color:#fc4c028f}.pricing-card h2{margin:0;font-size:1.3rem}.pricing-flag{background:linear-gradient(135deg, var(--accent-strong), var(--accent));color:#07101c;letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:800;position:absolute;top:-12px;right:18px}.pricing-price{align-items:baseline;gap:8px;display:flex}.pricing-price strong{font-family:var(--font-display);letter-spacing:0;font-size:2.2rem;font-weight:800}.pricing-price span{color:var(--muted);font-size:.9rem;font-weight:600}.pricing-tagline{min-height:44px;margin:0;font-size:.95rem}.pricing-features{gap:9px;margin:0;padding:0;list-style:none;display:grid}.pricing-features li{color:var(--muted-strong);padding-left:26px;font-size:.92rem;position:relative}.pricing-features li:before{content:"✓";color:var(--accent-strong);font-weight:900;position:absolute;left:0}.pricing-card form{gap:12px;margin:0;display:grid}.checkout-consent{color:var(--muted);align-items:flex-start;gap:8px;font-size:.76rem;font-weight:500;line-height:1.45;display:flex}.checkout-consent input[type=checkbox]{flex:none;width:16px;min-height:16px;margin:3px 0 0}.pricing-card .button{text-align:center;white-space:normal;width:100%;min-width:0;padding-left:14px;padding-right:14px;line-height:1.2}.pricing-note{color:var(--muted);text-align:center;margin-top:22px;font-size:.9rem}@media (min-width:901px){.pricing-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.pricing-card{grid-column:span 2}.pricing-card:nth-child(4){grid-column:2/span 2}}.gate-card,.empty-plan{text-align:center;margin-top:20px}.gate-card h1{margin:14px 0 12px;font-size:2rem}.gate-card .actions{justify-content:center}.intake-panel{margin-top:24px}.intake-panel h2{margin-top:0}.intake-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.intake-form>*{min-width:0}.intake-form label{gap:7px;min-width:0;display:grid}.intake-form label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.race-dates label,.race-route-upload label{gap:7px;min-width:0;display:grid}.race-dates label span,.race-route-upload label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.intake-form .wide,.intake-form .button{grid-column:1/-1}.plan-wizard{display:block}.plan-wizard-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:22px 0 26px;display:grid}.plan-wizard-progress button{border:1px solid var(--border);color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:#ffffff09;border-radius:12px;align-items:center;gap:9px;min-height:48px;padding:9px 12px;font-size:.82rem;font-weight:800;display:flex}.plan-wizard-progress button:hover{border-color:var(--border-strong);color:var(--text)}.plan-wizard-progress button.active{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.plan-wizard-progress button.complete{color:var(--muted-strong)}.plan-wizard-progress button>span{background:#ffffff14;border-radius:50%;flex:0 0 26px;justify-content:center;align-items:center;height:26px;display:inline-flex}.plan-wizard-progress button.active>span,.plan-wizard-progress button.complete>span{background:var(--accent);color:#07101c}.plan-wizard-step:focus{outline:none}.plan-wizard-heading{margin-bottom:20px}.plan-wizard-heading>span{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.plan-wizard-heading h3{margin:6px 0;font-size:clamp(1.25rem,2.5vw,1.65rem)}.plan-wizard-heading p{color:var(--muted);margin:0}.plan-wizard-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.plan-wizard-fields>*{min-width:0}.plan-wizard-fields label{gap:7px;min-width:0;display:grid}.plan-wizard-fields .wide{grid-column:1/-1}.plan-goal-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.plan-goal-grid>*,.plan-goal-background,.plan-goal-races{min-width:0}.plan-goal-background{align-content:start;gap:16px;display:grid}.plan-goal-races{align-self:start}.plan-goal-races .race-date-grid{grid-template-columns:minmax(0,1fr)}.plan-field-error{margin:0 0 18px}.plan-wizard-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:12px;margin-top:26px;padding-top:20px;display:flex}.plan-wizard-actions>.button{min-width:130px}.plan-wizard-actions-final{flex-direction:column;align-items:stretch}.plan-wizard-actions-final>.plan-wizard-back{align-self:flex-start;min-width:0}.plan-wizard-actions-final .plan-wizard-submit{width:100%}.plan-wizard-submit{flex:1;justify-content:flex-end;align-items:flex-end;gap:12px;display:flex}.plan-wizard-submit .notice{margin:0 auto 0 0}.plan-wizard-submit .actions{justify-content:flex-end;margin:0}.plan-strava-gate-wrap{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.plan-strava-gate-wrap .field-hint{text-align:right;margin:0}.plan-strava-gate{border:0;min-width:0;margin:0;padding:0}.plan-strava-gate[disabled]{opacity:.6}.plan-purchase-choice{gap:14px;width:100%;display:grid}.plan-purchase-choice h3{margin:0 0 5px;font-size:1.18rem}.plan-purchase-choice p{margin:0}.plan-purchase-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.plan-purchase-options .button{text-align:left;white-space:normal;grid-column:auto;justify-content:stretch;align-items:flex-start;gap:3px;width:100%;min-width:0;display:grid}.plan-purchase-options .button strong{overflow-wrap:anywhere;font-size:.92rem}.plan-purchase-options .button span{color:inherit;opacity:.82;overflow-wrap:anywhere;font-size:.76rem;font-weight:600}.plan-optional-data-step{gap:16px;display:grid}.plan-data-terms-link{color:var(--accent-strong);justify-self:start;font-size:.86rem;font-weight:750;text-decoration:none}.plan-data-terms-link:hover{text-decoration:underline}.plan-data-box{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff06;min-width:0;max-width:100%;padding:22px}.plan-data-box h4{font-family:var(--font-display);margin:0;font-size:1.2rem}.plan-data-box>p,.plan-source-panel>p{color:var(--muted);margin:7px 0 0}.plan-data-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}.plan-data-fields label,.plan-source-panel label{gap:7px;min-width:0;display:grid}.plan-data-fields label>span,.plan-source-panel label>span,.plan-source-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.plan-recent-weeks{border:0;gap:10px;min-width:0;margin:20px 0 0;padding:0;display:grid}.plan-recent-weeks legend{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:0;font-size:.72rem;font-weight:800}.plan-recent-week-grid,.plan-recent-training-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.plan-recent-week-grid label,.plan-recent-training-details label{gap:7px;min-width:0;display:grid}.plan-recent-training-details{margin-top:18px}.plan-recent-training-details label:last-child{grid-column:1/-1}.plan-source-label{margin:20px 0 0!important}.plan-source-choice{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:9px 0 0;display:grid}.plan-source-choice button{appearance:none;border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;background:#ffffff09;border-radius:12px;gap:5px;min-height:92px;padding:16px 44px 16px 17px;transition:background .16s,border-color .16s,transform .16s;display:grid;position:relative}.plan-source-choice button:hover{border-color:var(--border-strong);transform:translateY(-1px)}.plan-source-choice button:focus-visible{border-color:var(--accent);box-shadow:var(--ring);outline:0}.plan-source-choice button.active{border-color:var(--accent);background:linear-gradient(145deg,#ff572824,#ffffff09)}.plan-source-selected{background:var(--accent);color:#07101c;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.72rem;font-weight:900;display:none;position:absolute;top:14px;right:14px}.plan-source-choice button.active .plan-source-selected{display:flex}.plan-source-choice strong{font-size:.98rem}.plan-source-choice small{color:var(--muted);font-size:.8rem;line-height:1.45}.plan-source-panel{border-top:1px solid var(--border);gap:14px;margin-top:20px;padding:20px 2px 2px;display:grid}.plan-source-panel .section-heading{align-items:center;margin:0}.plan-source-panel .section-heading h4{margin:0}.plan-source-panel .button,.plan-source-panel .strava-connect-btn{justify-self:start}.day-picker,.race-dates{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.day-picker legend,.race-dates legend{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:0;font-size:.72rem;font-weight:800}.day-picker-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.day-picker-options label{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff0d;align-items:center;gap:8px;min-height:44px;padding:10px 12px;display:flex}.day-picker-options input[type=checkbox]{width:auto;min-height:auto;padding:0}.day-picker-options span{color:var(--text)!important;letter-spacing:0!important;text-transform:none!important;font-size:.86rem!important}.day-picker p,.race-dates p{color:var(--muted);margin:0;font-size:.82rem}.race-warning{color:#fcd9a2;border-radius:var(--radius-sm);background:#f59e0b1f;border:1px solid #f59e0b61;margin:4px 0;padding:10px 12px;font-size:.85rem;font-weight:600;line-height:1.5}.long-ride-picker{border-top:1px solid var(--border);margin-top:4px;padding-top:14px}.race-remove{border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0}.race-remove summary{color:var(--muted-strong);cursor:pointer;justify-content:space-between;align-items:center;min-height:44px;padding:10px 12px;font-size:.82rem;font-weight:700;list-style:none;display:flex}.race-remove summary::-webkit-details-marker{display:none}.race-remove summary:after{content:"▾";color:var(--muted);font-size:.8rem}.race-remove[open] summary{border-bottom:1px solid var(--border)}.race-remove[open] summary:after{content:"▴"}.race-remove-list{display:none}.race-remove[open] .race-remove-list{gap:6px;max-height:220px;padding:8px;display:grid;overflow-y:auto}.race-remove-item{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:#ffffff0d;align-items:center;gap:10px;min-height:40px;padding:8px 12px;display:flex}.race-remove-item input[type=checkbox]{width:auto;min-height:auto;padding:0}.race-remove-item span{color:var(--text);font-size:.86rem}.save-inline-note{margin:12px 0 0}.race-date-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.race-toggle{flex-wrap:wrap;gap:10px;display:flex}.race-toggle label{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff0d;align-items:center;gap:8px;min-height:44px;padding:10px 12px;display:flex}.race-toggle input[type=radio]{width:auto;min-height:auto;padding:0}.race-toggle span{color:var(--text)!important;letter-spacing:0!important;text-transform:none!important;font-size:.86rem!important}.race-add-toggle.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}.race-count{max-width:220px}.race-detail-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;gap:12px;padding:14px;display:grid}.race-route-upload{border-top:1px solid var(--border);gap:10px;min-width:0;padding-top:12px;display:grid}.race-route-upload input[type=file]{cursor:pointer;padding:9px 10px;font-size:.82rem}.race-route-upload input[type=file]::file-selector-button{background:var(--accent-soft);color:var(--accent-strong);cursor:pointer;font:inherit;border:1px solid #fc4c0259;border-radius:8px;margin-right:10px;padding:7px 10px;font-weight:800}.race-route-status{color:var(--muted-strong);margin:0;font-size:.84rem}.race-route-analysis{border-radius:var(--radius-sm);background:#fc4c0212;border:1px solid #fc4c024d;gap:12px;padding:12px;display:grid}.race-route-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.race-route-heading>div{gap:3px;min-width:0;display:grid}.race-route-heading strong{color:var(--text);font-family:var(--font-display)}.race-route-heading small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.race-route-heading .link-button{flex:none;padding:3px 0;font-size:.78rem}.race-route-profile{max-width:240px}.race-route-metrics{flex-wrap:wrap;gap:7px;display:flex}.race-route-metrics span{border:1px solid var(--border);background:#ffffff0e;border-radius:999px;padding:6px 9px;color:var(--muted-strong)!important;letter-spacing:0!important;text-transform:none!important;margin:0!important;font-size:.74rem!important}.race-route-analysis>p{color:var(--muted-strong);margin:0;font-size:.8rem;line-height:1.5}.fit-export-help{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff09;gap:10px;margin:14px 0 16px;padding:14px 16px;display:grid}.fit-export-help h3{font-family:var(--font-display);margin:0;font-size:.98rem}.fit-export-help ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.fit-export-help li{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.fit-export-help span{color:var(--muted-strong);font-size:.9rem;line-height:1.5}.fit-export-help a{color:var(--accent-strong);font-size:.9rem;font-weight:800;text-decoration:none}.fit-export-help a:hover{text-decoration:underline}.intake-form input,.intake-form select,.intake-form textarea,.race-dates input,.race-dates select,.race-route-upload input,.settings-form input,.settings-form select{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;background:#ffffff0d;width:100%;min-height:46px;padding:12px 14px;font-weight:600;transition:border-color .16s,box-shadow .16s,background .16s}.intake-form select,.race-dates select,.settings-form select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.intake-form textarea{resize:vertical;min-height:84px}.intake-form input:focus,.intake-form select:focus,.intake-form textarea:focus,.race-dates input:focus,.race-dates select:focus,.race-route-upload input:focus,.settings-form input:focus,.settings-form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:#ffffff12;outline:none}.plan-result{margin-top:24px}.plan-generation-panel{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;margin-top:24px;display:grid}.plan-generation-panel h2{margin:0 0 6px}.plan-generation-panel p{margin:0}.generation-hint{color:var(--muted);font-size:.9rem;margin-top:8px!important}.generation-spinner{border:3px solid #ffffff24;border-top-color:var(--accent-strong);border-radius:50%;width:42px;height:42px;animation:.9s linear infinite spin}.plan-meta{color:var(--muted);font-size:.9rem;font-weight:700}.plan-summary{color:var(--muted-strong);margin:18px 0 10px;font-size:1.02rem}.plan-focus{margin:0 0 8px;font-size:.96rem}.plan-focus strong{color:var(--text)}.plan-advisories{margin:4px 0 8px;font-size:.94rem}.plan-advisories>summary{cursor:pointer;color:var(--muted-strong);font-weight:700}.plan-advisories ul{gap:6px;margin:8px 0 0;padding-left:20px;display:grid}.plan-advisories li{color:var(--muted-strong)}.plan-weeks{gap:10px;margin-top:22px;display:grid}.plan-week{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff06;padding:4px 18px;transition:border-color .16s}.plan-week[open]{border-color:var(--border-strong)}.plan-week summary{cursor:pointer;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) auto;align-items:center;gap:12px;padding:14px 0;list-style:none;display:grid}.plan-week summary:has(.plan-week-progress){grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) auto auto}.plan-week summary::-webkit-details-marker{display:none}.plan-week summary strong{font-family:var(--font-display)}.plan-week summary span{color:var(--muted);min-width:0}.plan-week summary .badge{color:var(--accent-strong)}.plan-week summary .plan-week-title{color:inherit;align-items:center;gap:10px;min-width:0;display:flex}.plan-week-progress{white-space:nowrap;font-size:.85rem;font-weight:700}.plan-week summary em{color:var(--accent-strong);text-align:right;font-style:normal;font-weight:800}.plan-week summary em small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-style:normal}.plan-week.skeleton{opacity:.82;border-style:dashed}.plan-week.skeleton summary em{color:var(--muted);font-weight:700}.plan-week.skeleton summary .plan-week-title .badge:last-child{color:var(--muted)}.plan-skeleton-body{color:var(--muted);padding:4px 0 18px}.plan-skeleton-body p{margin:0 0 12px}.plan-adapt-hint{color:#bae6fd;border-radius:var(--radius-sm);background:#38bdf81a;border:1px solid #38bdf852;margin:0 0 10px;padding:10px 12px;font-size:.85rem;line-height:1.5}.plan-block-refill{justify-items:start;gap:8px;display:grid}.plan-block-refill.locked{color:var(--muted);font-weight:600}.plan-block-refill-status{color:var(--accent-strong);margin:0;font-weight:700}.plan-block-refill-error{color:var(--danger,#d66);margin:0}.plan-refill-summary{border-radius:var(--radius-sm);color:var(--text);background:#38bdf814;border:1px solid #38bdf847;margin:14px 0;padding:12px 14px}.plan-refill-summary strong{color:#bae6fd}.plan-refill-summary p{color:var(--muted);margin:4px 0 0;line-height:1.55}.plan-sessions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:8px 0 18px;display:grid}.plan-session{border:1px solid var(--border);background:#ffffff08;border-left:3px solid #0000;border-radius:12px;gap:10px;padding:16px;display:grid}.plan-session.logged.done{border-left-color:#34d399}.plan-session.logged.skipped{border-left-color:var(--muted)}.plan-session-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.plan-session-head strong{font-size:.9rem}.plan-session-when{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.plan-session-tags{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.plan-session .workout-log-form{border-top:1px solid var(--border);margin-top:2px;padding-top:12px}.plan-agenda{margin-top:0;padding:0}.agenda-section-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.agenda-section-heading h2{margin:8px 0 0}.agenda-section-heading>span{color:var(--muted);text-align:right;font-size:.9rem;font-weight:700}.plan-agenda .plan-weeks{margin-top:14px}.plan-agenda .plan-week{padding:4px 16px}.plan-agenda .plan-week>summary{grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) auto minmax(0,1.8fr)}.plan-agenda .plan-week>summary>.plan-week-title{flex-wrap:wrap}.plan-agenda .plan-week>summary>.plan-week-title strong,.plan-agenda .plan-week>summary>em{overflow-wrap:anywhere;min-width:0}.plan-agenda .plan-week>summary>em{line-height:1.4}.plan-agenda .plan-sessions{padding:4px 0 14px;display:block}.plan-agenda .plan-session{border:0;border-bottom:1px solid var(--border);background:0 0;border-left:3px solid #0000;border-radius:0;padding:0;display:block}.plan-agenda .plan-session:first-child{border-top:1px solid var(--border)}.plan-agenda .plan-session.logged.done{background:#34d39906}.plan-agenda .plan-session.logged.skipped{background:#ffffff05}.plan-agenda .plan-session-summary{cursor:pointer;grid-template-columns:minmax(104px,.7fr) minmax(220px,2fr) minmax(110px,auto) auto 20px;align-items:center;gap:10px 16px;min-height:72px;padding:12px 14px;list-style:none;display:grid}.plan-agenda .plan-session-summary::-webkit-details-marker{display:none}.plan-agenda .plan-session-summary:hover{background:#ffffff06}.plan-agenda .plan-session-summary:focus-visible{box-shadow:var(--ring);outline:0}.plan-session-primary{gap:4px;min-width:0;display:grid}.plan-session-primary>strong{font-family:var(--font-display);overflow-wrap:anywhere;font-size:.98rem;line-height:1.25}.plan-session-primary>span{color:var(--muted);overflow-wrap:anywhere;font-size:.78rem;line-height:1.35}.plan-session-summary .plan-session-when{align-items:flex-start;gap:3px;display:grid}.plan-session-summary .plan-session-when strong{font-size:.84rem}.plan-session-summary .session-date{color:var(--muted);white-space:nowrap;font-size:.72rem}.plan-session-summary .plan-session-tags{justify-content:flex-start}.plan-session-duration{color:var(--muted-strong);white-space:nowrap;font-size:.82rem;font-weight:800}.plan-session-chevron{color:var(--accent-strong);font-size:1.25rem;line-height:1;transition:transform .16s}.plan-session[open]>.plan-session-summary .plan-session-chevron{transform:rotate(180deg)}.plan-session-body{border-top:1px solid var(--border);background:#ffffff06;gap:12px;margin:0 14px 14px;padding:18px;display:grid}.plan-session-body>.future-log-hint{text-align:left;margin:0}.plan-session-rest-summary{cursor:default}.plan-session-rest-summary:hover{background:0 0}.plan-session-rest .plan-session-primary>span{display:none}.plan-session-rest .intensity-tag{opacity:.72}.plan-agenda .plan-session-rest:not(details){grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.plan-session-rest:not(details)>.plan-session-summary{grid-template-columns:minmax(104px,.7fr) minmax(180px,2fr) minmax(110px,auto) auto;width:100%}.full-plan-details{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;margin-top:18px;overflow:hidden}.full-plan-details[open]{border-color:var(--border-strong)}.full-plan-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:18px;list-style:none;display:flex}.full-plan-summary::-webkit-details-marker{display:none}.full-plan-summary>span:first-child{align-items:center;gap:12px;min-width:0;display:flex}.full-plan-summary>span:first-child>span:last-child{gap:3px;display:grid}.full-plan-summary>span:first-child>span:last-child small{color:var(--muted);font-size:.72rem;font-weight:700}.full-plan-summary strong{font-family:var(--font-display);font-size:1.02rem;line-height:1.35}.full-plan-summary-meta{color:var(--muted);flex:none;align-items:center;gap:12px;font-size:.8rem;font-weight:700;display:flex}.full-plan-chevron{color:var(--accent-strong);font-size:1.3rem;line-height:1;transition:transform .16s}.full-plan-details[open] .full-plan-chevron{transform:rotate(180deg)}.full-plan-body{border-top:1px solid var(--border);padding:18px}.full-plan-body .plan-result-actions{justify-content:flex-start}.full-plan-body .plan-summary{margin-top:18px}.full-plan-weeks{margin-top:20px!important}.session-imported-comparison{border-radius:var(--radius-sm);background:#34d3990f;border:1px solid #34d3993d;gap:10px;padding:12px 14px;display:grid}.session-imported-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;display:flex}.session-imported-heading strong{color:#6ee7b7;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.session-imported-heading span{color:var(--muted);font-size:.76rem}.session-imported-grouping{border-bottom:1px solid var(--border);border-top:1px solid var(--border);padding:8px 0}.session-imported-grouping summary{color:#a7f3d0;cursor:pointer;font-size:.8rem;font-weight:750;list-style-position:inside}.session-imported-grouping>p{color:var(--muted);margin:7px 0 0;font-size:.76rem}.session-imported-grouping ol{gap:6px;margin:9px 0 0;padding:0;list-style:none;display:grid}.session-imported-grouping li{border:1px solid var(--border);background:#ffffff06;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.session-imported-grouping li>span:first-child{gap:2px;display:grid}.session-imported-grouping li strong{color:var(--text);font-size:.8rem}.session-imported-grouping li small,.session-imported-grouping li>span:last-child{color:var(--muted);font-size:.74rem}.session-imported-comparison table{border-collapse:collapse;width:100%;font-size:.86rem}.session-imported-comparison th,.session-imported-comparison td{border-top:1px solid var(--border);text-align:right;padding:7px 8px}.session-imported-comparison thead th{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;border-top:0;font-size:.75rem}.session-imported-comparison th:first-child{color:var(--muted);text-align:left;padding-left:0}.session-imported-comparison td:last-child{color:#a7f3d0;padding-right:0;font-weight:800}.session-imported-workout th,.session-imported-workout td{vertical-align:top}.session-imported-workout td{overflow-wrap:anywhere;font-weight:700}.session-imported-breakdown th,.session-imported-breakdown td{color:var(--muted);font-size:.78rem}.session-imported-breakdown th:first-child{padding-left:10px}.session-imported-analysis{border-top:1px solid var(--border);margin-top:2px;padding-top:12px}.session-imported-analysis .workout-review.embedded{background:0 0;border:0;border-radius:0;margin:0;padding:0}.session-imported-comparison.unplanned{background:#fbbf240f;border-color:#fbbf2447}.session-imported-comparison.unplanned .session-imported-heading strong{color:#fcd34d}.session-unplanned-stats{color:#fde68a;margin:0;font-size:.95rem;font-weight:700}.session-unplanned-note{color:var(--muted);margin:0;font-size:.8rem}.session-activity.unplanned{color:#fcd34d;background:#fbbf2424}.session-activity.skipped{color:var(--muted-strong);background:#94a3b824}.session-review-list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.session-review-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;padding-top:8px;display:flex}.session-review-when{flex-direction:column;gap:2px;display:flex}.session-review-when span{color:var(--muted);font-size:.78rem}.session-review-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.session-review-actions select{padding:6px 8px}.plan-session h4{font-family:var(--font-display);margin:0;font-size:1.02rem}.plan-session dl{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:0;display:grid}.plan-session dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:800}.plan-session dd{margin:2px 0 0;font-weight:700}.plan-session p{margin:0;font-size:.92rem;line-height:1.5}.session-fueling{background:var(--accent-soft);border-radius:var(--radius-sm);border:1px solid #fc4c023d;gap:7px;padding:11px 13px;display:grid}.session-fueling p{color:var(--muted-strong)}.session-fueling strong{color:var(--text)}.session-fueling a{color:var(--accent-strong);width:fit-content;font-size:.82rem;font-weight:800;text-decoration:none}.session-fueling a:hover{color:var(--text)}.session-workout{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff06;gap:9px;margin:0;padding:12px 14px;display:grid}.session-workout h5{color:var(--accent-strong);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.76rem}.plan-session .session-workout>dl{grid-template-columns:1fr;gap:9px;display:grid}.session-workout-row{grid-template-columns:92px 1fr;align-items:start;gap:2px 12px;display:grid}.session-workout-row dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;padding-top:3px;font-size:.68rem;font-weight:800}.session-workout-row dd{margin:0;font-size:.9rem;line-height:1.5}@media (max-width:540px){.session-workout-row{grid-template-columns:1fr}.session-workout-row dt{padding-top:0}}.intensity-tag{letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border);color:var(--muted-strong);white-space:nowrap;background:#ffffff0d;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:800}.intensity-tag.recovery{color:#6ee7b7;background:#34d3991f;border-color:#34d39966}.intensity-tag.endurance{color:#7dd3fc;background:#60a5fa1f;border-color:#60a5fa66}.intensity-tag.tempo{color:#fcd34d;background:#fbbf241f;border-color:#fbbf2466}.intensity-tag.threshold{color:var(--accent-strong);background:var(--accent-soft);border-color:#fc4c0273}.intensity-tag.vomax,.intensity-tag.vo2max{color:#f9a8d4;background:#ec48991f;border-color:#ec489966}.intensity-tag.openers{color:#fde68a;background:#facc151a;border-color:#facc1566}.intensity-tag.fieldtest{color:#fdba74;background:#f973161f;border-color:#f9731673}.intensity-tag.anaerobic{color:#fda4af;background:#f43f5e1f;border-color:#f43f5e73}.intensity-tag.skills{color:#67e8f9;background:#22d3ee1a;border-color:#22d3ee66}.intensity-tag.intervals{color:var(--accent-strong);background:var(--accent-soft);border-color:#fc4c0273}.intensity-tag.race{color:#fca5a5;background:#ef444429;border-color:#ef44448c;font-weight:700}.intensity-tag.gym{color:#c4b5fd;background:#a78bfa1f;border-color:#a78bfa66}.intensity-tag.other{color:var(--muted-strong)}.panel-intro{color:var(--muted);margin:6px 0 0}.notice.warn{color:#fcd34d;background:#fbbf2424;border-color:#fbbf2459}.load-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.load-stat{border:1px solid var(--border);background:#ffffff08;border-radius:14px;padding:16px 18px}.load-stat span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:.72rem;font-weight:800;display:block}.load-stat strong{font-size:1.7rem;font-weight:800}.load-status{border-left:3px solid var(--accent);color:var(--muted-strong);margin:18px 0 0;padding:8px 0 8px 14px;font-weight:700}.load-status.warn{border-color:#fbbf24}.load-status.rest{border-color:#7dd3fc}.load-status.build{border-color:#6ee7b7}.week-bars{grid-auto-columns:1fr;grid-auto-flow:column;align-items:flex-end;gap:6px;min-height:130px;margin-top:24px;display:grid}.week-bar{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.week-bar-track{align-items:flex-end;width:100%;max-width:34px;height:90px;display:flex;position:relative}.week-bar-fill{background:linear-gradient(180deg, var(--accent-strong), var(--accent));border-radius:5px 5px 0 0;width:100%;min-height:2px}.week-bar-plan{border-top:2px dashed var(--muted-strong);position:absolute;left:-3px;right:-3px}.week-bar-value{color:var(--muted-strong);font-size:.74rem;font-weight:800}.week-bar-planned-value{color:var(--muted);font-weight:700}.week-bar-label{color:var(--muted);white-space:nowrap;font-size:.75rem}.week-bars-block{margin-top:18px}.week-bars-block .week-bars{margin-top:10px}.week-bars-title{color:var(--muted-strong);letter-spacing:.03em;font-size:.74rem;font-weight:800}.trend-key.bar-actual:before{background:var(--accent)}.trend-key.bar-planned:before{border-top:2px dashed var(--muted-strong);background:0 0;height:0}.snapshot-planning{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}@media (max-width:860px){.snapshot-planning{grid-template-columns:repeat(2,minmax(0,1fr))}}.snapshot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.snapshot-trend{color:var(--muted);margin-top:6px;font-size:.78rem;font-style:normal;font-weight:800;display:block}.snapshot-trend.build{color:#34d399}.snapshot-trend.warn{color:#f59e0b}.snapshot-trend.rest{color:#38bdf8}.trend-block{margin-top:22px}.trend-legend{gap:18px;margin-bottom:10px;display:flex}.trend-key{color:var(--muted);letter-spacing:.03em;padding-left:20px;font-size:.74rem;font-weight:800;position:relative}.trend-key:before{content:"";border-radius:2px;width:14px;height:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.trend-key.ctl:before{background:var(--accent)}.trend-key.atl:before{background:var(--muted)}.trend-chart{width:100%;height:130px;display:block}.trend-area{fill:var(--accent-soft);stroke:none}.trend-line{fill:none;stroke-linejoin:round;stroke-width:2px;vector-effect:non-scaling-stroke}.trend-line.ctl{stroke:var(--accent)}.trend-line.atl{stroke:var(--muted);stroke-dasharray:4 4}.trend-axis{justify-content:space-between;margin-top:6px;padding:0 2.5%;display:flex}.trend-axis span{color:var(--muted);letter-spacing:.02em;font-size:.7rem;font-weight:700}.trend-plot{touch-action:pan-y;border-radius:6px;position:relative}.trend-plot:focus-visible{box-shadow:var(--ring);outline:none}.trend-cursor{background:var(--muted);opacity:.45;pointer-events:none;width:1px;position:absolute;top:8px;bottom:8px;transform:translate(-50%)}.trend-dot{border:2px solid var(--card);pointer-events:none;border-radius:50%;width:9px;height:9px;position:absolute;transform:translate(-50%,-50%)}.trend-dot.ctl{background:var(--accent)}.trend-dot.atl{background:var(--muted)}.trend-readout{flex-wrap:wrap;align-items:center;gap:4px 14px;margin:10px 0 0;display:flex}.trend-readout strong{font-size:.78rem;font-weight:800}.trend-readout span{color:var(--muted-strong);align-items:center;gap:6px;font-size:.76rem;font-weight:700;display:inline-flex}.trend-swatch{border-radius:2px;width:12px;height:3px;display:inline-block}.trend-swatch.ctl{background:var(--accent)}.trend-swatch.atl{background:var(--muted)}.dashboard-overview .dashboard-snapshot .empty-note+.button{margin-top:14px}.progress-week{color:var(--muted-strong);margin:4px 0 14px;font-weight:700}.progress-bar{background:#ffffff0f;border-radius:999px;height:12px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--accent-strong), var(--accent));border-radius:999px;min-width:3px;height:100%}.progress-caption{margin:12px 0 0;font-weight:700}.progress-caption.muted{color:var(--muted);margin-top:4px;font-weight:600}.ride-list{flex-direction:column;gap:14px;margin:18px 0 0;padding:0;list-style:none;display:flex}.imported-rides-summary{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;list-style:none;display:flex}.imported-rides-summary::-webkit-details-marker{display:none}.imported-rides-title{color:var(--text);font-family:var(--font-display);overflow-wrap:anywhere;min-width:0;font-size:1.5em;font-weight:700}.imported-rides-summary-meta{flex:0 auto;align-items:center;gap:12px;min-width:0;display:inline-flex}.imported-rides-chevron{color:var(--accent-strong);font-size:1.35rem;line-height:1;transition:transform .16s;display:inline-block}.imported-rides-details[open] .imported-rides-chevron{transform:rotate(180deg)}.imported-rides-upload{border:1px solid var(--border);background:#ffffff06;border-radius:14px;margin-top:18px;padding:16px 18px}.imported-rides-upload h3{margin:0 0 6px;font-size:1rem}.imported-rides-upload>p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.5}.imported-rides-upload-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-top:14px}.imported-rides-upload-form .button{grid-column:auto;min-height:46px}.ride-item{border:1px solid var(--border);background:#ffffff08;border-radius:14px;padding:16px 18px;position:relative}.ride-main{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ride-main strong{overflow-wrap:anywhere;min-width:0;font-size:1.02rem}.ride-stats{flex-wrap:wrap;gap:10px 22px;margin:12px 0 0;display:flex}.ride-stats>div{min-width:0}.ride-stats dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:800}.ride-stats dd{margin:2px 0 0;font-weight:700}.workout-review{background:#60a5fa12;border:1px solid #60a5fa38;border-radius:12px;margin-top:14px;padding:14px}.workout-review.harder,.workout-review.rest_day{background:#fbbf2414;border-color:#fbbf2447}.workout-review.on_target{background:#34d39912;border-color:#34d3993d}.workout-review-heading{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.workout-review-heading strong{font-size:.95rem}.workout-review-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.workout-review-comparison>div{background:#ffffff09;border-radius:10px;padding:10px 12px}.workout-review-comparison span,.workout-review-comparison small{color:var(--muted);display:block}.workout-review-comparison span{letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:800}.workout-review-comparison strong{margin:3px 0;display:block}.workout-review-comparison small{font-size:.76rem}.workout-review-ratios{color:var(--muted-strong);margin:10px 0 0;font-size:.78rem;font-weight:700}.workout-review>p:not(.workout-review-ratios){color:var(--muted-strong);margin:10px 0 0;font-size:.88rem}.workout-assignment{border:1px solid var(--border);background:#ffffff09;border-radius:10px;margin-top:12px;padding:12px}.workout-assignment.assigned{background:#34d3990f;border-color:#34d3993d}.workout-assignment>strong{font-size:.88rem;display:block}.workout-assignment-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.workout-assignment-heading>strong{font-size:.88rem}@media (min-width:561px){.workout-assignment-heading .info-popover-popup{left:auto;right:0}.workout-assignment-heading .info-popover-popup:before{left:auto;right:8px}}.workout-assignment>p{color:var(--muted);margin:5px 0 10px;font-size:.8rem}.workout-assignment form{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.workout-assignment label{flex:280px}.workout-assignment label>span{color:var(--muted-strong);text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:800;display:block}.workout-assignment select{width:100%;min-height:38px}.workout-assignment .button{min-height:38px}.workout-review-coach{margin-top:12px;display:inline-block}.ride-delete{margin-top:12px}.link-button{color:var(--muted);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:0 0;border:none;align-items:center;min-height:32px;padding:6px 2px;font-size:.8rem;font-weight:800;display:inline-flex}.link-button:hover{color:var(--accent-strong)}.danger-link{color:#fca5a5}.ride-delete-confirm{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.ride-delete-prompt{color:var(--muted-strong);flex-basis:100%;font-size:.84rem}@media (max-width:860px){.dashboard-cols{grid-template-columns:1fr}}@media (max-width:640px){.load-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-review-comparison{grid-template-columns:1fr}}.settings-account,.settings-prefs,.danger-zone{margin-top:20px}.settings-account h2,.settings-prefs h2,.danger-zone h2{margin-top:0}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0;display:grid}.settings-grid div{border:1px solid var(--border);border-radius:var(--radius-sm);background:linear-gradient(145deg,#ffffff0b,#ffffff05);padding:14px 16px}.settings-grid span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:.72rem;font-weight:800;display:block}.settings-grid strong{color:var(--text);font-size:1.05rem;display:block}.settings-auth-enabled{border-radius:var(--radius-sm);background:#34d39912;border:1px solid #34d3993d;align-items:flex-start;gap:12px;margin-top:16px;padding:16px;display:flex}.settings-auth-enabled-icon{color:var(--success);background:#34d39926;border-radius:999px;flex:0 0 28px;justify-content:center;align-items:center;height:28px;font-weight:900;display:inline-flex}.settings-auth-enabled strong{color:var(--text);display:block}.settings-auth-enabled p{margin:4px 0 0;font-size:.9rem;line-height:1.55}.mono{overflow-wrap:anywhere;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.82rem!important}.settings-note{color:var(--muted);font-size:.9rem}.settings-form{gap:16px;max-width:420px;margin-top:16px;display:grid}.settings-form label{gap:7px;display:grid}.settings-form label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.checkbox-row{align-items:center;gap:10px;display:flex!important}.checkbox-row input{accent-color:var(--accent);width:18px;height:18px}.checkbox-row span{text-transform:none!important;color:var(--muted-strong)!important;letter-spacing:0!important;font-size:.95rem!important;font-weight:600!important}.danger-zone{border-color:#ef44444d}.danger-actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.danger-actions form{margin:0}.button.danger{box-shadow:none;color:#fecaca;background:#ef444429;border:1px solid #ef444473}.button.danger:hover{box-shadow:none;background:#ef444442;transform:translateY(-2px)}.site-footer{border-top:1px solid var(--border);margin-top:72px;padding:32px 0 8px}.site-footer-inner{grid-template-columns:minmax(0,1.25fr) minmax(140px,.55fr) minmax(0,1.45fr);align-items:start;gap:24px;display:grid}.site-footer-inner strong{font-family:var(--font-display);font-size:1.1rem}.site-footer-inner p{margin:8px 0 0;font-size:.92rem}.site-footer-inner>div:first-child p{margin-top:0}.site-footer-links{flex-direction:column;gap:8px;display:flex}.site-footer-links a{color:var(--muted);font-size:.92rem;font-weight:600;text-decoration:none}.site-footer-links a:hover{color:var(--text)}.site-footer-notes{gap:8px;display:grid}.site-footer-health{color:var(--muted-strong);font-size:.85rem}.site-footer-rights{color:var(--muted);opacity:.85;font-size:.8rem}.site-footer-contact{color:var(--muted-strong);font-size:.9rem;font-weight:700}.site-footer-contact a{color:var(--accent-strong);font-weight:700;text-decoration:none}.site-footer-contact a:hover{text-decoration:underline}.site-footer-legal{flex-wrap:wrap;gap:8px 18px;display:flex}.site-footer-legal a{color:var(--muted-strong);font-size:.85rem;font-weight:600;text-decoration:none}.site-footer-legal a:hover{color:var(--text);text-decoration:underline}.legal-updated{color:var(--muted);margin-top:10px;font-size:.85rem;font-weight:600}.legal-doc{gap:28px;max-width:760px;display:grid}.legal-section h2{margin:0 0 10px;font-size:1.15rem}.legal-section-number{color:var(--accent-strong)}.legal-section p{color:var(--muted-strong);margin:0 0 10px;font-size:.95rem;line-height:1.65}.legal-section p:last-child{margin-bottom:0}.sample-week .section-heading{display:block}.sample-week .section-heading p{color:var(--muted);max-width:640px;margin:12px 0 0}.lang-switcher{align-items:center;display:flex;position:relative}.lang-switcher-toggle,.lang-switcher-current{display:none}.lang-switcher-menu{border:1px solid var(--border);background:#ffffff08;border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.lang-switcher-menu a{color:var(--muted);letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:700;line-height:1;text-decoration:none}.lang-switcher-menu a:hover{color:var(--text);background:#ffffff0f}.lang-switcher-menu a.active{color:var(--text);background:var(--accent-soft)}.lang-switcher-name{display:none}.guide-grid{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:18px;display:grid}.guide-card{flex-direction:column;gap:12px;display:flex}.guide-card h2,.guide-card h3{margin:0;font-size:1.15rem;line-height:1.3}.guide-card h2 a,.guide-card h3 a{color:var(--text);text-decoration:none}.guide-card h2 a:hover,.guide-card h3 a:hover{color:var(--accent-strong)}.guide-card p{color:var(--muted-strong);flex:1;margin:0;font-size:.95rem}.guide-card-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.guide-readtime{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:.8rem;font-weight:700}.guide-article{width:100%;max-width:none;margin:0}.guide-article-head{gap:14px;margin-bottom:28px;display:grid}.guide-back{color:var(--muted);width:fit-content;font-size:.9rem;font-weight:600;text-decoration:none}.guide-back:hover{color:var(--text)}.guide-article-head h1{margin:0;font-size:2.6rem;line-height:1.12}.guide-lead{color:var(--muted-strong);font-size:1.1rem;line-height:1.6}.guide-body{gap:18px;display:grid}.guide-body h2{font-family:var(--font-display);margin:18px 0 0;font-size:1.4rem;line-height:1.25}.guide-body p{color:var(--muted-strong);margin:0;font-size:1.04rem;line-height:1.72}.guide-body ul{gap:10px;margin:0;padding-left:20px;display:grid}.guide-body li{color:var(--muted-strong);font-size:1.02rem;line-height:1.6}.training-glossary{margin-top:52px;scroll-margin-top:24px}.training-glossary-head{max-width:760px}.training-glossary-head h2{margin:12px 0 10px;font-size:clamp(1.8rem,4vw,2.45rem)}.training-glossary-head p{color:var(--muted);margin:0}.training-glossary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;margin:30px 0 0;display:grid}.training-glossary-term{border-top:1px solid var(--border);padding:19px 2px 21px}.training-glossary-term dt{color:var(--text);font-size:.98rem;font-weight:800;line-height:1.35}.training-glossary-term dd{color:var(--muted);margin:7px 0 0;font-size:.9rem;line-height:1.62}.related-guides{margin-top:8px}.related-guides h2,.faq-panel h2{margin-top:0}.faq-list{gap:12px;margin-top:16px;display:grid}.faq-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;padding:4px 18px}.faq-item summary{cursor:pointer;padding:14px 0;font-size:1.05rem;font-weight:700;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";float:right;color:var(--accent-strong);font-weight:800}.faq-item[open] summary:after{content:"−"}.faq-item p{color:var(--muted-strong);margin:0 0 16px;line-height:1.65}.pricing-name-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.flex-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--info);background:#60a5fa24;border:1px solid #60a5fa66;border-radius:999px;padding:3px 8px;font-size:.66rem;font-weight:800}.adjust-panel h2{margin-top:0}.adjust-remaining{color:var(--muted-strong);font-weight:700}.adjust-overage{color:var(--accent-strong);font-weight:600}.adjust-form{gap:14px;margin-top:6px;display:grid}.adjust-form textarea{width:100%}.adjust-panel.locked{text-align:center;justify-items:center;gap:12px;display:grid}.fuelling-page-head .guide-back{margin-bottom:2px}.fuelling-guide{gap:18px;display:grid}.fuelling-warning{color:#fcd9a2;border-radius:var(--radius-sm);background:#f59e0b1f;border:1px solid #f59e0b61;margin:0;padding:12px 14px;font-size:.92rem;font-weight:600;line-height:1.55}.fuelling-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;display:grid}.fuelling-block{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px}.fuelling-block h2,.fuelling-block h4{margin:0 0 8px;font-size:.98rem}.fuelling-block p{color:var(--muted-strong);margin:0;font-size:.9rem;line-height:1.55}.fuelling-block .fuelling-note{margin-bottom:10px}.fuelling-block ul{gap:7px;margin:0;padding-left:18px;display:grid}.fuelling-block li{color:var(--muted-strong);font-size:.9rem;line-height:1.5}.admin-wrap{max-width:1120px;margin:0 auto;padding:40px 20px}.admin-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.admin-stat{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);padding:16px}.admin-stat span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.admin-stat strong{margin-top:6px;font-size:1.5rem;display:block}.admin-table-scroll{width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:880px;font-size:.9rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.admin-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.admin-table td.num{text-align:right;font-variant-numeric:tabular-nums}.admin-banner{border-radius:8px;margin:0 0 16px;padding:10px 14px;font-size:.9rem}.admin-banner.ok{background:color-mix(in srgb, var(--success) 16%, transparent);color:var(--success)}.admin-banner.err{color:#f87171;background:#f8717129}.admin-account{gap:3px;min-width:200px;display:grid}.admin-account strong{font-size:.9rem}.admin-account small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:.7rem;overflow:hidden}.admin-plan{text-transform:capitalize}.admin-status{text-transform:capitalize;border-radius:999px;justify-self:start;padding:4px 8px;font-size:.72rem;font-weight:750;display:inline-flex}.admin-status.active{background:color-mix(in srgb, var(--success) 14%, transparent);color:var(--success)}.admin-status.inactive{background:color-mix(in srgb, var(--muted) 12%, transparent);color:var(--muted)}.admin-access{white-space:nowrap}.admin-access-form{align-items:center;gap:6px;display:inline-flex}.admin-access-form+.admin-access-form{margin-top:6px}.admin-access-form select,.admin-access-form button{border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:.8rem}.admin-access-form button{cursor:pointer;background:var(--surface,#1a1a1a);color:inherit}.admin-access-form button.danger{color:#f87171;border-color:#f87171}.admin-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.admin-header h1{margin:0;font-size:clamp(2rem,4vw,2.75rem)}.admin-header p{color:var(--muted);margin:6px 0 0;font-size:.9rem}.admin-login{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);max-width:380px;margin:60px auto;padding:28px}.admin-login h1{margin:0 0 8px;font-size:1.4rem}.admin-login p{color:var(--muted);margin:0 0 18px;font-size:.9rem}.admin-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.8rem;display:block}.admin-input{box-sizing:border-box;letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background-2);width:100%;color:inherit;margin-bottom:16px;padding:12px 14px;font-size:1.3rem}.admin-btn{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:none;width:100%;padding:12px 16px;font-size:.95rem;font-weight:700}.admin-btn:disabled{opacity:.55;cursor:not-allowed}.admin-link{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:10px 0 0;font-size:.85rem;text-decoration:underline;display:inline-block}.admin-notice{color:var(--muted);margin:0 0 16px;font-size:.85rem}.admin-error{color:#f87171;margin:14px 0 0;font-size:.88rem}.admin-enroll{margin-bottom:20px}.admin-key{word-break:break-all;-webkit-user-select:all;user-select:all;letter-spacing:.08em;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background-2);color:var(--text);margin-bottom:12px;padding:12px 14px;font-family:ui-monospace,monospace;font-size:.95rem;display:block}@media (max-width:640px){.admin-wrap{padding:24px 16px}.admin-totals{grid-template-columns:1fr}.admin-header{align-items:flex-start}.admin-table-scroll{overflow:visible}.admin-table{min-width:0}.admin-table thead{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-table tbody{gap:12px;display:grid}.admin-table tbody tr{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;display:grid}.admin-table tbody td{border:0;align-content:start;gap:5px;padding:7px 8px;display:grid}.admin-table tbody td:before{color:var(--muted);content:attr(data-label);letter-spacing:.05em;text-transform:uppercase;font-size:.65rem;font-weight:700}.admin-table tbody td:first-child{border-bottom:1px solid var(--border);grid-column:1/-1;margin-bottom:3px;padding-bottom:10px}.admin-table tbody td:first-child:before{display:none}.admin-table tbody td.num{text-align:left}.admin-table tbody .admin-access{white-space:normal;grid-column:1/-1}}@media (max-width:900px){.feature-grid,.step-row{grid-template-columns:1fr}.feature-card{min-height:0}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-grid,.principles-grid,.settings-grid,.plan-sessions{grid-template-columns:minmax(0,1fr)}}@media (max-width:820px){h1{font-size:3.15rem}.page-head h1{font-size:2.55rem}.guide-article-head h1{font-size:2.25rem}.site-nav{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions""links links";align-items:start;gap:14px 12px;margin-bottom:34px}.site-nav .brand{grid-area:brand;justify-self:start}.site-nav-links{flex-wrap:wrap;grid-area:links;justify-content:flex-start;width:100%;padding-bottom:2px;overflow-x:visible}.site-nav-actions{flex-wrap:wrap;grid-area:actions;justify-content:flex-end;align-items:center;gap:7px 8px;min-width:0}.site-nav-actions .button{white-space:normal;flex:none;min-width:0;padding-left:12px;padding-right:12px;line-height:1.12}.lang-switcher{flex:none}.lang-switcher-toggle{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;display:block;position:absolute}.lang-switcher-current{border:1px solid var(--border);color:var(--muted-strong);cursor:pointer;letter-spacing:.04em;-webkit-user-select:none;user-select:none;background:#ffffff08;border-radius:999px;align-items:center;gap:5px;min-height:44px;padding:8px 12px;font-size:.8rem;font-weight:700;transition:color .16s,background .16s,border-color .16s;display:inline-flex}.lang-switcher-current:after{content:"▾";opacity:.75;font-size:.72em}.lang-switcher-current:hover{color:var(--text);border-color:var(--border-strong)}.lang-switcher-toggle:checked~.lang-switcher-current{border-color:var(--border-strong);color:var(--text);background:#ffffff0f}.lang-switcher-toggle:focus-visible~.lang-switcher-current{border-color:var(--accent);box-shadow:var(--ring)}.lang-switcher-menu{display:none}.lang-switcher-toggle:checked~.lang-switcher-menu{box-sizing:border-box;z-index:30;border:1px solid var(--border-strong);background:var(--card-solid);min-width:156px;max-width:calc(100vw - 48px);box-shadow:var(--shadow-soft);border-radius:14px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);left:0;right:auto}.lang-switcher-menu a{border-radius:9px;align-items:center;gap:8px;min-height:44px;padding:9px 12px;display:flex}.lang-switcher-menu .lang-switcher-name{color:var(--muted);font-weight:600;display:inline}.lang-switcher-menu a.active .lang-switcher-name{color:var(--muted-strong)}.intake-form,.imported-rides-upload-form{grid-template-columns:minmax(0,1fr)}.imported-rides-upload-form .button{grid-column:1/-1}.plan-wizard-fields,.plan-goal-grid,.plan-data-fields,.plan-recent-week-grid,.plan-recent-training-details{grid-template-columns:minmax(0,1fr)}.plan-recent-training-details label:last-child{grid-column:auto}.plan-source-choice{grid-template-columns:minmax(0,1fr)}.plan-wizard-progress button{justify-content:center;padding:8px;font-size:0}.plan-wizard-progress button>span{flex-basis:28px;height:28px;font-size:.82rem}.plan-wizard-actions{align-items:stretch}.plan-wizard-submit{flex-direction:column;align-items:stretch}.plan-wizard-submit .actions{flex-direction:column;align-items:stretch;width:100%}.plan-wizard-actions>.button,.plan-wizard-submit .button{min-width:0}.plan-purchase-options,.next-workout-card{grid-template-columns:minmax(0,1fr)}.next-workout-actions{min-width:0}.how-step{grid-template-columns:1fr}:is(.plan-week summary,.plan-week summary:has(.plan-week-progress)){grid-template-columns:minmax(0,1fr);gap:6px}.plan-week summary em{text-align:left}.site-footer-inner{grid-template-columns:1fr}.danger-actions{flex-direction:column}.danger-actions form,.danger-actions .button{width:100%}}@media (max-width:560px){h1{font-size:2.75rem}.page-head h1{font-size:2.15rem}.guide-article-head h1{font-size:2rem}main{padding-left:16px;padding-right:16px}.site-nav-links{gap:4px}.site-nav-links a{padding:7px 8px;font-size:.82rem}.site-nav-actions{gap:6px 7px}.site-nav-actions .button{padding-left:10px;padding-right:10px;font-size:.86rem}.lang-switcher-current{padding:7px 10px;font-size:.78rem}.pricing-grid{grid-template-columns:1fr}.card{padding:22px}.intake-form .actions{flex-direction:column;align-items:stretch}.intake-form .actions .button,.plan-link-card .button{white-space:normal;width:100%}.site-footer{margin-top:52px;padding-top:26px}}@media (max-width:360px){h1{font-size:2.35rem}.card{padding:20px}.site-nav{column-gap:6px}.site-nav .brand-wordmark{font-size:1.25rem}.site-nav-actions{gap:4px}.site-nav-actions .button{padding:7px;font-size:.8rem}.lang-switcher-current{padding:6px 8px;font-size:.78rem}.site-nav-links{gap:3px}.site-nav-links a{padding:6px 5px;font-size:.78rem}}.adapt-panel{border:1px solid var(--border)}.adapt-panel.muted{opacity:.9}.adapt-panel .badge{margin-bottom:10px}.adapt-summary{color:var(--muted-strong);margin:0 0 6px;font-weight:700}.adapt-load{color:var(--muted);margin:0 0 16px}.adapt-locked-note{color:var(--muted);font-weight:600}.adapt-hint{color:var(--muted);margin:14px 0 0;font-size:.85rem}.adapt-hint a,.adapt-panel a:not(.button){color:var(--accent-strong);font-weight:700;text-decoration:none}.ftp-estimate{background:var(--accent-soft);border:1px solid #fc4c0259;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin:14px 0 4px;padding:12px 16px;display:flex}.ftp-estimate span{color:var(--muted-strong);font-weight:700}.button.small{padding:8px 16px;font-size:.82rem}.badge.small{padding:3px 8px;font-size:.75rem}.session-date{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:800}.workout-log-form{gap:10px;display:grid}.workout-log-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.workout-log-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff06;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px 12px;padding:12px;display:grid}.workout-log-panel.done{border-color:#34d39938}.workout-log-panel-label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;grid-column:1/-1;font-size:.75rem;font-weight:800}.workout-log-fields{gap:10px;min-width:0;display:grid}.workout-log-fields.done-fields{grid-template-columns:repeat(3,minmax(72px,1fr))}.workout-log-fields.skip-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-log-history{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:14px;display:flex}.workout-log-history-status{color:var(--muted);font-size:.82rem;font-weight:750}.workout-log-history-status.done{color:var(--success)}.workout-log-history-status.skipped{color:var(--muted-strong)}.workout-log-field{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;gap:5px;min-width:0;font-size:.75rem;font-weight:800;display:grid}.workout-log-field input,.workout-log-field select{background:var(--card-solid);border:1px solid var(--border);color:var(--muted-strong);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:8px;width:100%;min-width:0;padding:8px 9px;font-weight:700}.session-outcome{border:1px solid var(--border);border-radius:var(--radius-sm);gap:5px;margin-bottom:14px;padding:11px 13px;display:grid}.session-outcome-row{grid-template-columns:68px minmax(0,1fr) auto auto;align-items:baseline;gap:4px 10px;display:grid}.session-outcome-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:800}.session-outcome-what{color:var(--muted-strong);min-width:0;font-size:.84rem}.session-outcome-figure{color:var(--muted-strong);font-variant-numeric:tabular-nums;text-align:right;font-size:.84rem}.session-outcome-row.actual .session-outcome-what,.session-outcome-row.actual .session-outcome-figure{color:var(--text);font-weight:700}.session-outcome-note{border-top:1px solid var(--border);color:var(--muted);margin:4px 0 0;padding-top:8px;font-size:.78rem;line-height:1.5}.session-activity.done-as-planned{background:var(--success-soft);color:var(--success);border-color:#34d39966}@media (max-width:560px){.session-outcome-row{grid-template-columns:68px minmax(0,1fr) auto}.session-outcome-row .session-outcome-figure:last-child{text-align:left;grid-column:2/-1}}.log-button{border:1px solid var(--border);color:var(--muted-strong);cursor:pointer;background:#ffffff0d;border-radius:999px;min-height:44px;padding:7px 14px;font-size:.78rem;font-weight:800}.log-button:hover{border-color:var(--border-strong,#ffffff40)}.workout-log-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.workout-log-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.log-button:disabled{cursor:not-allowed;opacity:.45}.log-button.active{border-color:var(--muted);color:var(--muted-strong);background:#ffffff14}.log-button.done.active{color:#6ee7b7;background:#34d39929;border-color:#34d39980}.log-button.recovery-rested.active{color:#93c5fd;background:#60a5fa24;border-color:#60a5fa7a}.log-button.active:before{content:"✓ ";font-weight:900}.log-button.selected{border-width:2px;transform:translateY(-1px);box-shadow:0 0 0 3px #fc4c0247}.log-button.selected:before{content:"● ";font-weight:900}.log-button.done.selected{color:#eafff5;background:#34d39952;border-color:#34d399;box-shadow:0 0 0 3px #34d3994d}.log-button.skip.selected,.log-button.recovery-other.selected{border-color:var(--muted-strong);color:#fff;background:#ffffff38;box-shadow:0 0 0 3px #ffffff29}.log-button.recovery-rested.selected{color:#eff6ff;background:#60a5fa52;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa4d}.workout-log-actions:has(.log-button.selected) .log-button:not(.selected){opacity:.5}.workout-log-form.recovery .recovery-outcomes{flex-wrap:wrap}.workout-log-form.recovery .recovery-outcomes .log-button{flex:auto}.workout-log-save{white-space:nowrap;align-self:end}@media (max-width:560px){.workout-log-panel,.workout-log-fields.skip-fields{grid-template-columns:minmax(0,1fr)}.workout-log-save{justify-self:stretch;width:100%}}.coach-chat{flex-direction:column;gap:14px;display:flex}.coach-thread{flex-direction:column;gap:12px;min-height:240px;max-height:52vh;padding-right:4px;display:flex;overflow-y:auto}.coach-empty{color:var(--muted);text-align:center;margin:auto 0}.coach-suggestions{flex-direction:column;gap:8px;margin-top:16px;display:flex}.coach-suggestion{border:1px solid var(--border);color:var(--muted-strong);cursor:pointer;text-align:left;background:#ffffff0a;border-radius:12px;padding:10px 14px;font-size:.9rem;font-weight:600}.coach-suggestion:hover{border-color:var(--accent);color:var(--text,#fff)}.coach-bubble{border-radius:14px;max-width:82%;padding:11px 15px}.coach-bubble p{margin:0 0 6px}.coach-bubble p:last-child{margin-bottom:0}.coach-bubble.user{background:var(--accent);color:#07101c;align-self:flex-end}.coach-bubble.user p{color:#07101c}.coach-bubble.assistant{border:1px solid var(--border);color:var(--muted-strong);background:#ffffff0d;align-self:flex-start}.coach-bubble.thinking{color:var(--muted);font-style:italic}.coach-input{gap:10px;display:flex}.coach-input input{background:var(--card-solid);border:1px solid var(--border);color:var(--text,#fff);border-radius:12px;flex:1;min-width:0;padding:12px 14px;font-size:1rem}.coach-input input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.coach-input .button:disabled{cursor:not-allowed;opacity:.5}.coach-disclaimer{color:var(--muted);margin:0;font-size:.76rem}.coach-locked h2{margin-top:0}.plan-link-card{background:var(--accent-soft);border:1px solid var(--accent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.plan-link-card h2{margin:8px 0 6px}.plan-link-card p{color:var(--muted-strong);max-width:46ch;margin:0}.plan-link-card .button{white-space:nowrap}.future-log-hint{color:var(--muted);text-align:right;margin:6px 0 0;font-size:.76rem;display:block}.next-workout-card{background:linear-gradient(135deg,#fc4c0224,#ffffff09);border-color:#fc4c0285;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;display:grid}.next-workout-card h2{margin:5px 0 7px}.next-workout-card p{color:var(--muted-strong);margin:0}.next-workout-meta{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:12px;display:flex}.next-workout-meta strong{color:var(--text)}.next-workout-actions{flex-direction:column;align-items:stretch;gap:8px;min-width:170px;display:flex}.coach-plan-panel{flex-direction:column;gap:22px;display:flex}.coach-plan-panel.locked{text-align:center;align-items:center}.plan-update-header{gap:10px;display:grid}.plan-update-header>.badge{justify-self:start}.plan-update-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.plan-update-title-row h2{margin:0}.plan-update-header .panel-intro{max-width:64ch;margin:0}.plan-update-credit{border:1px solid var(--border);color:var(--muted-strong);white-space:nowrap;background:#ffffff0d;border-radius:999px;padding:6px 12px;font-size:.76rem;font-weight:800}.plan-update-steps{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff06;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.plan-update-steps li{color:var(--muted-strong);align-items:center;gap:9px;padding:11px 14px;font-size:.88rem;font-weight:700;display:flex}.plan-update-steps li+li{border-left:1px solid var(--border)}.plan-update-steps li>span{background:var(--accent-soft);color:var(--accent-strong);border:1px solid #fc4c0252;border-radius:999px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:.72rem;display:inline-flex}.plan-update-option{border-top:1px solid var(--border);gap:14px;padding-top:22px;display:grid}.plan-update-option-copy{gap:5px;display:grid}.plan-update-option-copy h3{margin:0;font-size:1.12rem}.plan-update-option-copy p{color:var(--muted-strong);max-width:68ch;margin:0;font-size:.96rem;line-height:1.6}.plan-update-option-actions{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.plan-update-option-actions>span{color:var(--muted);font-size:.82rem}.plan-update-option .adapt-hint{margin:-4px 0 0}.plan-update-purchase{justify-items:start;gap:12px;display:grid}.plan-update-health-consent{border-top:1px solid var(--border);padding:16px 24px}.plan-update-purchase p{margin:0}.race-update-form{justify-items:start;gap:14px;display:grid}.race-update-form>.race-dates,.race-update-form>.plan-race-list{justify-self:stretch;width:100%}.health-update-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.health-update-form label{gap:7px;min-width:min(100%,300px);display:grid}.health-update-form label>span{color:var(--muted);font-size:.78rem;font-weight:800}.plan-race-list{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.plan-race-list legend{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;padding:0;font-size:.72rem;font-weight:800}.plan-race-entry{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff09;overflow:hidden}.plan-race-entry:hover,.plan-race-entry.editing-route{border-color:var(--border-strong)}.plan-race-row{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:#ffffff09;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.plan-race-entry .plan-race-row{background:0 0;border:0;border-radius:0}.plan-race-copy{gap:3px;min-width:0;display:grid}.plan-race-copy strong{color:var(--text)}.plan-race-copy>span{color:var(--muted);font-size:.82rem}.plan-race-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px 14px;display:flex}.plan-race-actions>.link-button{padding:3px 0;font-size:.8rem}.plan-race-remove{color:var(--muted-strong);flex:none;align-items:center;gap:7px;font-size:.8rem;font-weight:700;display:flex}.plan-race-remove input{width:auto;min-height:auto;padding:0}.plan-race-route-editor{border-top:1px solid var(--border);padding:14px}.plan-race-route-editor .race-route-upload{border-top:0;padding-top:0}.plan-update-preview{gap:16px;display:grid}.plan-update-preview>.badge{justify-self:start}.plan-update-preview>h3{margin:0;font-size:1.35rem}.plan-update-preview .adapt-summary,.plan-update-preview .review-notes,.plan-update-preview .panel-intro{margin:0}.plan-update-preview-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex}@media (max-width:720px){.plan-update-steps{grid-template-columns:1fr}.plan-update-steps li+li{border-left:0;border-top:1px solid var(--border)}.plan-race-row{flex-direction:column;align-items:flex-start}.plan-race-actions{justify-content:flex-start}}@media (max-width:520px){.plan-update-title-row{flex-direction:column;align-items:flex-start}.plan-update-option-actions,.plan-update-option-actions .button,.health-update-form,.health-update-form label,.health-update-form .button,.race-update-form>.button,.plan-update-preview-actions,.plan-update-preview-actions .button{width:100%}.plan-update-preview-actions .link-button{justify-self:center}}.change-preview{margin-top:20px}.change-preview .plan-weeks{margin-top:6px}.change-session-meta{color:var(--muted);margin:4px 0 0;font-size:.9rem}.change-week.removed{color:var(--muted);text-decoration:line-through}.change-week.added{color:var(--accent-strong);font-weight:700}.plan-result-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.plan-export{white-space:nowrap}.session-activity{background:var(--success-soft);color:#6ee7b7;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:1px solid #34d39966;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:.75rem;font-weight:800;display:inline-flex}.session-activity:before{content:"✓";font-weight:900}.proposal-card{gap:14px;display:grid}.proposal-card h2{margin:0}.proposal-card h3{margin:6px 0 0}.proposal-card .badge{justify-self:start}:root{--background:#060a12;--background-2:#09111d;--card:#0e1827f0;--card-solid:#0f1929;--muted:#a7b2c4;--muted-strong:#d2d9e5;--accent:#ff5728;--accent-strong:#ff7c52;--accent-soft:#ff572821;--border:#ffffff1a;--border-strong:#ffffff2e;--radius:16px;--radius-sm:11px;--shadow:0 18px 55px #0000003d;--shadow-soft:0 10px 28px #0003}body{background:radial-gradient(circle at 4% -7%, #ff57281c, transparent 32rem), radial-gradient(circle at 100% 0, #4876be14, transparent 38rem), linear-gradient(180deg, var(--background), var(--background-2))}main{padding:36px 22px 72px}.container{max-width:1180px}h1{color:var(--text);letter-spacing:-.045em;-webkit-text-fill-color:currentColor;background:0 0;font-size:clamp(3.15rem,6.4vw,4.65rem);font-weight:750;line-height:1.01}h2{letter-spacing:-.025em;font-weight:700}p{font-size:1rem;line-height:1.65}.badge{letter-spacing:.11em;background:#ff57281a;border-color:#ff7c5245;border-radius:8px;padding:6px 10px;font-size:.7rem}.button{border-radius:11px;min-height:46px;padding:12px 20px;font-weight:750;box-shadow:0 9px 24px #ff572838}.button:hover{transform:translateY(-1px);box-shadow:0 13px 30px #ff57284d}.button.secondary{border-color:var(--border);background:#ffffff09}.button.secondary:hover{box-shadow:none;background:#ffffff12}.button.compact{border-radius:9px;min-height:40px;padding:9px 14px}.card{border-color:var(--border);-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(145deg,#121d2ff5,#0c1523f5);padding:24px;box-shadow:0 12px 36px #0000002e}.card:before{display:none}.site-nav{gap:26px;margin-bottom:58px}.site-nav-content{display:contents}.site-nav-toggle,.site-nav-trigger{display:none}.site-nav-links{gap:22px}.site-nav-links a{border:0;border-radius:0;min-height:40px;padding:8px 0;font-size:.88rem;position:relative}.site-nav-links a:after{background:var(--accent);content:"";transform-origin:0;width:100%;height:2px;transition:transform .18s;position:absolute;bottom:2px;left:0;transform:scaleX(0)}.site-nav-links a:hover{color:var(--text);background:0 0;border:0}.site-nav-links a:hover:after,.site-nav-links a.active:after{transform:scaleX(1)}.site-nav-links a.active{color:var(--text);background:0 0;border:0}.site-nav-actions{gap:8px}.site-nav-actions .button{min-height:40px}.site-nav .brand-wordmark{letter-spacing:-.01em;font-size:1.38rem}.hero{grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);align-items:start;gap:clamp(34px,6vw,74px)}.hero>div:first-child{padding-top:18px}.hero h1{max-width:780px}.hero>div:first-child>p:not(.hero-note){max-width:64ch;font-size:1.04rem}.hero-note{font-size:.84rem;font-weight:600}.hero-card{align-content:stretch;gap:0;padding:0;display:grid;overflow:hidden}.hero-plan-head{border-bottom:1px solid var(--border);background:#ffffff06;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}.hero-plan-head div{gap:4px;min-width:0;display:grid}.hero-plan-head span{color:var(--accent-strong);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;font-weight:800}.hero-plan-head strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.94rem;overflow:hidden}.hero-plan-head em{color:var(--text);font-family:var(--font-display);font-size:1.35rem;font-style:normal;font-weight:750}.hero-session-list{padding:5px 20px;display:grid}.hero-session{border-bottom:1px solid #ffffff12;grid-template-columns:minmax(64px,.45fr) minmax(0,1.5fr) auto;align-items:center;gap:12px;padding:13px 2px;display:grid}.hero-session:last-child{border-bottom:0}.hero-session>span{color:var(--muted);font-size:.75rem;font-weight:700}.hero-session>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.88rem;overflow:hidden}.hero-session>em{color:var(--muted-strong);white-space:nowrap;font-size:.76rem;font-style:normal}.hero-plan-benefits{border-top:1px solid var(--border);gap:15px;padding:20px 22px 17px;display:grid}.hero-plan-benefits .hero-list{gap:9px}.hero-plan-benefits .hero-list li{padding-left:23px;font-size:.84rem}.hero-plan-card>.button{margin:0 22px 22px}.feature-grid{gap:28px;margin-top:64px}.feature-card{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(145deg,#121d2ff5,#0c1523f5);min-height:0;padding:24px;box-shadow:0 12px 36px #00000029}.feature-card:hover{border-color:#ff7c526b;transform:translateY(-2px);box-shadow:0 16px 42px #0003}.feature-card h2{font-size:1.18rem}.feature-card p{font-size:.94rem}.how-strip{margin-top:64px}.step-row{gap:0}.step-card{border:0;border-left:1px solid var(--border);background:0 0;border-radius:0;padding:4px 24px 4px 26px}.step-card:first-child{border-left:0;padding-left:0}.step-number{box-shadow:none;border-radius:9px;width:36px;height:36px}.sample-week{margin-top:64px}.cta-band{margin-top:64px;padding-block:40px}.page-head{max-width:790px;margin-bottom:24px}.page-head h1{margin:14px 0 16px;font-size:clamp(2.3rem,4.8vw,3.35rem)}.page-head>p{font-size:1.04rem}.how-steps{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(145deg,#121d2ff5,#0c1523f5);gap:0;margin-top:36px;overflow:hidden;box-shadow:0 12px 36px #0000002e}.how-step{border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;grid-template-columns:54px minmax(0,1fr);padding:24px}.how-step:first-child{border-top:0}.how-step:last-child{border-bottom:0}.comparison-panel,.principles-panel,.faq-panel{margin-top:52px}.comparison-item,.principle{background:#ffffff06}.pricing-duration{border:1px solid var(--border);background:#ffffff09;border-radius:12px;gap:4px;margin-top:28px;padding:4px;display:inline-flex}.pricing-duration button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;min-height:40px;padding:8px 16px;font-size:.9rem;font-weight:700}.pricing-duration button:hover{color:var(--text)}.pricing-duration button:focus-visible{box-shadow:var(--ring);outline:0}.pricing-duration button.active{background:var(--card-solid);color:var(--text);box-shadow:0 1px #ffffff12}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.pricing-card{grid-template-rows:auto auto auto 1fr auto;min-height:100%;padding:28px;grid-column:auto!important}.pricing-card.highlight{background:linear-gradient(155deg,#ff57281a,#0f1929fa 48%)}.pricing-flag{box-shadow:none;border-radius:7px;right:16px}.pricing-tagline{min-height:0}.pricing-price strong{letter-spacing:-.04em;font-size:2.5rem}.pricing-card form,.pricing-card>.button{align-self:end;margin-top:6px}.container.narrow{max-width:580px}.auth-top{margin:14px 0 30px}.auth-card{padding:40px}.auth-card h1{letter-spacing:-.035em;font-size:clamp(2rem,5vw,2.5rem)}.auth-card>p{margin-bottom:26px}.auth-card>.auth-alt{margin:24px 0 0}.auth-card>.auth-consent{margin:20px 0 0}.auth-email-form{gap:13px;max-width:380px}.auth-buttons,.auth-divider{max-width:380px}.auth-email-form input{background:#ffffff09;border-radius:10px}.auth-alt{margin-bottom:0;line-height:1.5}.auth-perks{margin-top:24px}.dashboard-primary-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);align-items:stretch;gap:18px;display:grid}.dashboard-page-head{margin-bottom:18px}.dashboard-page-head h1{margin-bottom:0}.dashboard-plan-views{margin-top:4px}.dashboard-plan-tabs{border:1px solid var(--border);background:#ffffff09;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-width:320px;margin-left:auto;padding:4px;display:grid}.dashboard-plan-tabs button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;min-height:42px;padding:8px 16px;font-size:.86rem;font-weight:800}.dashboard-plan-tabs button[aria-selected=true]{background:var(--card-solid);color:var(--text);box-shadow:0 1px #ffffff14}.dashboard-plan-tabs button:focus-visible{box-shadow:var(--ring);outline:0}.dashboard-today-card{border-radius:var(--radius);background:linear-gradient(135deg,#ff57281f,#101b2cfa 54%);border:1px solid #ff7c525c;grid-template-columns:minmax(200px,.68fr) minmax(0,1fr) minmax(190px,.42fr);margin-top:18px;display:grid;overflow:hidden}.dashboard-today-date{border-right:1px solid var(--border);background:#0000001a;align-content:center;justify-items:start;padding:26px 22px;display:grid}.dashboard-today-date>span{color:var(--accent-strong);letter-spacing:.09em;text-transform:uppercase;font-size:.75rem;font-weight:900}.dashboard-today-date>time{color:var(--text);overflow-wrap:anywhere;margin-top:7px;font-size:.94rem;font-weight:850;line-height:1.35}.dashboard-today-main{align-content:center;padding:28px 32px;display:grid}.dashboard-today-main h2{margin:4px 0 7px;font-size:clamp(1.5rem,3vw,2.05rem)}.dashboard-today-main>p{color:var(--muted-strong);max-width:62ch;margin:0}.dashboard-today-state{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:900}.dashboard-today-main>.workout-log-form{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.dashboard-today-main .workout-log-actions{justify-content:flex-start}.dashboard-today-meta{border-left:1px solid var(--border);background:#0000001a;align-content:center;gap:16px;margin:0;padding:24px;display:grid}.dashboard-today-meta div{gap:3px;display:grid}.dashboard-today-meta dt{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:.75rem;font-weight:850}.dashboard-today-meta dd{margin:0;font-size:.86rem;font-weight:800}.dashboard-today-strength{background:#fbbf2412;border:1px solid #fbbf2440;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:2px 12px;margin-top:16px;padding:10px 12px;display:grid}.dashboard-today-strength strong{color:#fcd34d;font-size:.78rem}.dashboard-today-strength>span{color:var(--muted-strong);text-align:right;font-size:.78rem;font-weight:800}.dashboard-today-strength small{color:var(--muted);grid-column:1/-1}.agenda-current-week{margin-top:18px}.agenda-week-meta{align-items:end;gap:4px;display:grid}.agenda-week-meta small{color:var(--muted);font-weight:650}.agenda-current-week-list>.plan-week{background:var(--card);border-color:var(--border-strong);padding:4px 20px}.plan-agenda .plan-session.is-today{border-left-color:var(--accent);background:#fc4c020e;box-shadow:inset 0 0 0 1px #fc4c023d}.plan-agenda .plan-session.is-today .plan-session-when strong{color:var(--accent-strong)}.full-plan-roadmap{margin-top:18px}.full-plan-roadmap>.full-plan-summary{cursor:default}.full-plan-current-week{border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding-left:8px}.session-activity.unplanned-strength{color:#fcd34d;background:#fbbf2424}.session-activity.unplanned-strength:before{content:"+"}.session-strength-context{border-radius:var(--radius-sm);background:#fbbf240f;border:1px solid #fbbf2440;grid-template-columns:auto 1fr;align-items:center;gap:3px 12px;padding:11px 13px;display:grid}.session-strength-context strong{color:#fcd34d;text-transform:uppercase;font-size:.8rem}.session-strength-context>span{color:var(--muted-strong);text-align:right;font-size:.8rem;font-weight:800}.session-strength-context p{color:var(--muted);grid-column:1/-1;font-size:.8rem}.dashboard-analysis-details{border-bottom:1px solid var(--border);border-top:1px solid var(--border);margin-top:26px;padding:0}.dashboard-analysis-details>summary{color:var(--muted-strong);cursor:pointer;padding:18px 2px;font-weight:800;list-style:none}.dashboard-analysis-details>summary:after{color:var(--accent-strong);content:"⌄";float:right}.dashboard-analysis-details[open]>summary:after{transform:rotate(180deg)}.dashboard-analysis-body{padding-bottom:18px}.dashboard-primary-grid>.card{margin:0}.dashboard-primary-grid.progress-only{grid-template-columns:minmax(280px,.8fr);justify-content:end}.next-workout-card{background:linear-gradient(135deg,#ff572821,#101b2cfa 56%);border-color:#ff7c5257;padding:32px}.next-workout-card h2{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:16px 0 9px;font-size:.78rem}.next-workout-card>div:first-child>p{color:var(--text);font-family:var(--font-display);letter-spacing:-.035em;font-size:clamp(1.75rem,4vw,2.45rem);font-weight:700;line-height:1.08}.next-workout-meta{border-top:1px solid #ffffff14;margin-top:22px;padding-top:17px}.next-workout-actions{min-width:190px}.dashboard-overview{grid-template-columns:minmax(0,1.65fr) minmax(270px,.85fr);gap:18px;margin:0;display:grid}.dashboard-overview>.card{margin:0;padding:0;overflow:visible}.dashboard-load-body{padding:0 24px 24px}.dashboard-load-empty{padding-top:2px}.dashboard-load-empty .button{margin-top:14px}.snapshot-grid{border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:0;overflow:hidden}.snapshot-grid .load-stat{background:#ffffff06;border:0;border-radius:0;min-width:0;padding:15px 16px}.snapshot-grid .load-stat+.load-stat{border-left:1px solid var(--border)}.snapshot-grid .load-stat strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:1.5rem}.dashboard-load-chart-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-load-chart-header .trend-legend{flex-wrap:wrap;margin-bottom:0}.dashboard-load-range{color:var(--muted);text-align:right;font-size:.75rem;font-weight:750;line-height:1.4}.dashboard-profile-list{margin:0;padding:0 24px 20px}.dashboard-profile-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:14px;padding:13px 0;display:grid}.dashboard-profile-row:first-child{padding-top:2px}.dashboard-profile-row:last-child{border-bottom:0;padding-bottom:0}.dashboard-profile-row dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:850}.dashboard-profile-row dd{overflow-wrap:anywhere;text-align:right;margin:0;font-size:.82rem;font-weight:800;line-height:1.4}.dashboard-profile-row dd small{color:var(--muted);margin-top:3px;font-size:.75rem;font-weight:700;display:block}.dashboard-about .info-popover-popup{left:auto;right:0}.dashboard-about .info-popover-popup:before{left:auto;right:8px}.progress-bar{height:9px}.dashboard-stack{gap:24px;display:grid}.dashboard-page-head{max-width:none}.dashboard-page-head h1{font-size:clamp(2rem,4vw,2.75rem)}.dashboard-section-title{gap:6px;min-width:0;display:grid}.dashboard-section-kicker{color:var(--accent-strong);letter-spacing:.11em;text-transform:uppercase;font-size:.75rem;font-weight:850;line-height:1.35}.dashboard-section-heading-row,.decision-card-title-row,.plan-update-option-title{align-items:center;gap:9px;min-width:0;display:flex}.dashboard-section-heading-row h2,.decision-card-title-row h3,.plan-update-option-title h3{margin:0}.dashboard-unified-header{justify-content:space-between;align-items:center;gap:20px;padding:21px 24px;display:flex}.dashboard-status-chip{border:1px solid var(--border);color:var(--muted-strong);letter-spacing:.06em;text-transform:uppercase;background:#ffffff0b;border-radius:999px;flex:none;padding:6px 10px;font-size:.7rem;font-weight:850}.dashboard-status-chip.build{color:#a7f3d0;background:#34d39917;border-color:#34d39940}.dashboard-status-chip.warn{color:#fde68a;background:#fbbf2417;border-color:#fbbf2445}.dashboard-status-chip.rest{color:#bfdbfe;background:#60a5fa17;border-color:#60a5fa42}.info-popover-root{flex:none;align-items:center;display:inline-flex;position:relative}.info-popover-trigger{border:1px solid var(--border-strong);color:var(--muted-strong);cursor:pointer;background:#ffffff0b;border-radius:999px;justify-content:center;align-items:center;width:25px;height:25px;padding:0;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.info-popover-trigger:hover,.info-popover-trigger[aria-expanded=true]{background:var(--accent-soft);color:var(--accent-strong);border-color:#ff7c5270}.info-popover-trigger:focus-visible,.info-popover-close:focus-visible{box-shadow:var(--ring);outline:0}.info-popover-icon{font-family:Georgia,serif;font-size:.82rem;font-style:italic;font-weight:800;line-height:1}.info-popover-popup{border:1px solid var(--border-strong);color:var(--text);z-index:80;background:#111c2c;border-radius:13px;width:min(340px,100vw - 36px);padding:17px 44px 17px 18px;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 18px 52px #0000006b}.info-popover-popup:before{border-left:1px solid var(--border-strong);border-top:1px solid var(--border-strong);content:"";background:#111c2c;width:9px;height:9px;position:absolute;top:-6px;left:8px;transform:rotate(45deg)}.info-popover-title{font-family:var(--font-display);font-size:.9rem;font-weight:750;line-height:1.35}.info-popover-content{color:var(--muted-strong);margin-top:7px}.info-popover-content p{color:inherit;margin:0;font-size:.86rem;line-height:1.55}.info-popover-content p+p,.info-popover-content ul{margin-top:8px}.info-popover-close{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:1.25rem;display:inline-flex;position:absolute;top:8px;right:9px}.info-popover-close:hover{color:var(--text);background:#ffffff0d}.dashboard-insights{padding:0;overflow:visible}.dashboard-insight-layout{border-top:1px solid var(--border);grid-template-columns:minmax(0,1.7fr) minmax(220px,.72fr);align-items:center;gap:28px;padding:24px;display:grid}.dashboard-insight-copy{min-width:0}.dashboard-insight-copy .dashboard-status-chip{margin-bottom:12px;display:inline-flex}.dashboard-insight-copy h3{margin:0 0 7px;font-size:clamp(1.25rem,2.5vw,1.65rem);line-height:1.2}.dashboard-insight-copy p{color:var(--muted-strong);max-width:66ch;margin:0;line-height:1.58}.dashboard-progress-box{border:1px solid var(--border);background:#ffffff06;border-radius:12px;gap:11px;padding:16px;display:grid}.dashboard-progress-label{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.dashboard-progress-label>span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:.75rem;font-weight:850}.dashboard-progress-label>strong{font-family:var(--font-display);font-size:1.08rem}.dashboard-progress-box>p{color:var(--muted);margin:0;font-size:.75rem;font-weight:700;line-height:1.4}.dashboard-needs-attention{gap:11px;display:grid}.dashboard-needs-attention:not(:has(.proposal-card)){display:none}.dashboard-standalone-heading{gap:5px;padding:0 2px;display:grid}.dashboard-standalone-heading h2{margin:0;font-size:1.35rem}.dashboard-attention-stack{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(145deg,#121d2ff5,#0c1523f5);box-shadow:0 12px 36px #0000002e}.dashboard-attention-stack>.proposal-card{box-shadow:none;background:0 0;border:0;border-radius:0;gap:13px;margin:0;padding:20px 24px}.dashboard-attention-stack>.proposal-card+.proposal-card{border-top:1px solid var(--border)}.decision-card-header h3{font-size:1.02rem;line-height:1.35}.decision-card-evidence{margin:0}.decision-card-evidence p,.decision-card-evidence li{color:var(--muted-strong);font-size:.89rem;line-height:1.55}.decision-card-actions{align-items:center;margin:0}.decision-card-actions .button{min-height:40px;padding:9px 15px}.dashboard-attention-stack .adapt-hint{margin:0}.dashboard-attention-stack .session-review-list{margin-top:0}.plan-update-panel{gap:0;padding:0;overflow:visible}.plan-update-panel.locked{gap:14px;padding:26px}.plan-update-header{padding:21px 24px}.plan-update-title-row{gap:14px 24px}.plan-update-title-row h2{font-size:1.45rem}.plan-update-credit{background:var(--accent-soft);color:var(--accent-strong);border-color:#ff7c5240}.plan-update-option{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(84px,auto) auto;align-items:center;gap:16px;padding:17px 24px;display:grid}.plan-update-option.is-open{background:#ffffff05}.plan-update-option-copy{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.plan-update-option-copy>div{gap:5px;min-width:0;display:grid}.plan-update-option-copy h3{font-size:.98rem}.plan-update-option-copy small{color:var(--muted);overflow-wrap:anywhere;font-size:.76rem;line-height:1.4}.plan-update-number{border:1px solid var(--border-strong);color:var(--accent-strong);letter-spacing:.04em;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:.75rem;font-weight:900;display:inline-flex}.plan-update-option-status{color:var(--muted-strong);text-align:right;font-size:.75rem;font-weight:750}.plan-update-option-actions{justify-content:flex-end}.plan-update-option-editor{border-top:1px solid var(--border);grid-column:1/-1;gap:14px;padding-top:16px;display:grid}.plan-update-editor-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;display:flex}.plan-update-editor-actions>span{color:var(--muted);font-size:.8rem}.plan-update-safety-note{color:#fcd9a2;margin:0;font-size:.82rem;line-height:1.5}.plan-update-option-editor .health-update-form{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;max-width:none;margin:0;display:grid}.plan-update-option-editor .health-update-form .button{min-height:46px}.plan-update-option-editor .race-update-form{margin-top:0}.plan-update-panel>.notice{margin:16px 24px}.plan-update-purchase{border-top:1px solid var(--border);padding:20px 24px 24px}.settings-grid,.fuelling-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius-sm);gap:1px;overflow:hidden}.settings-grid div,.fuelling-block{background:var(--card-solid);border:0;border-radius:0}.settings-grid{flex-wrap:wrap;display:flex}.settings-grid div{flex:230px}.fuelling-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.comparison-grid,.principles-grid{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--border);gap:1px;overflow:hidden}.comparison-item,.principle{background:var(--card-solid);border:0;border-radius:0}.guide-card{min-height:100%}.auth-card,.pricing-card,.guide-card,.legal-doc,.settings-account,.settings-prefs,.strava-card,.fuelling-guide{border-color:var(--border)}.site-footer{margin-top:84px;padding-top:38px}.site-footer .brand{margin:0 0 16px}.site-footer-inner{grid-template-columns:minmax(0,1.1fr) minmax(145px,.5fr) minmax(0,1.25fr);gap:40px}.site-footer-inner>div:first-child p{max-width:34ch}@media (max-width:900px){.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-card:first-child{grid-column:1/-1!important}.fuelling-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fuelling-block:last-child:nth-child(odd){grid-column:1/-1}}@media (max-width:820px){main{padding-top:22px}.site-nav{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand trigger""content content";align-items:center;gap:12px;margin-bottom:38px}.site-nav .brand{grid-area:brand}.site-nav-toggle{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.site-nav-trigger{border:1px solid var(--border);color:var(--muted-strong);cursor:pointer;background:#ffffff09;border-radius:10px;grid-area:trigger;align-items:center;gap:10px;min-height:42px;padding:8px 12px;font-size:.86rem;font-weight:700;display:inline-flex}.site-nav-trigger-icon{border-top:2px solid;border-bottom:2px solid;width:17px;height:12px;position:relative}.site-nav-trigger-icon:after{content:"";border-top:2px solid;width:17px;position:absolute;top:3px;left:0}.site-nav-toggle:focus-visible+.site-nav-trigger{box-shadow:var(--ring)}.site-nav-toggle:checked+.site-nav-trigger{color:var(--text);background:#ffffff12}.site-nav-content{border:1px solid var(--border);box-shadow:var(--shadow-soft);background:#0d1624fa;border-radius:14px;grid-area:content;grid-template-columns:minmax(0,1fr);gap:14px;padding:10px;display:none}.site-nav-toggle:checked~.site-nav-content{display:grid}.site-nav-content .site-nav-links,.site-nav-content .site-nav-actions{grid-area:auto}.site-nav-links{gap:2px;padding:0;display:grid}.site-nav-links a{border-radius:8px;min-height:44px;padding:10px 12px}.site-nav-links a:after{display:none}.site-nav-links a:hover,.site-nav-links a.active{background:#ffffff0b}.site-nav-links a.active{color:var(--accent-strong)}.site-nav-actions{border-top:1px solid var(--border);justify-content:flex-start;padding:10px 2px 2px;display:flex}.site-nav-actions .button{white-space:nowrap}.lang-switcher{margin-right:auto}.hero{grid-template-columns:minmax(0,1fr)}.hero>div:first-child{padding-top:0}.hero-plan-card{max-width:620px}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer-inner{grid-template-columns:1fr 1fr}.site-footer-notes{grid-column:1/-1}.next-workout-card,.dashboard-primary-grid,.dashboard-primary-grid.progress-only,.dashboard-overview,.dashboard-insight-layout{grid-template-columns:minmax(0,1fr)}.next-workout-actions{width:100%;min-width:0}.next-workout-actions .button{width:100%}.dashboard-today-card{grid-template-columns:minmax(0,1fr)}.dashboard-today-date{border-bottom:1px solid var(--border);border-right:0;grid-column:1/-1;padding:18px 24px}.dashboard-today-meta{border-left:0;border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:720px){h1{letter-spacing:-.04em;font-size:clamp(2.45rem,11.5vw,3.55rem)}.page-head h1{font-size:clamp(2.2rem,10vw,3.15rem)}.training-glossary-grid,.feature-grid,.pricing-grid{grid-template-columns:minmax(0,1fr)}.pricing-card:first-child{grid-column:auto!important}.feature-grid{gap:24px;margin-top:48px}.feature-card{padding-top:22px}.step-row{grid-template-columns:1fr}.step-card{border-left:0;border-top:1px solid var(--border);padding:22px 0}.step-card:first-child{border-top:0;padding-top:4px}.how-strip,.sample-week,.cta-band{margin-top:48px}.pricing-card{min-height:0}.site-footer-inner{grid-template-columns:1fr}.site-footer-notes{grid-column:auto}.snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-grid .load-stat:nth-child(3){border-left:0}.snapshot-grid .load-stat:nth-child(n+3){border-top:1px solid var(--border)}}@media (max-width:560px){main{padding-bottom:54px}.card{padding:22px}.dashboard-insights,.plan-update-panel{padding:0}.plan-update-panel.locked{padding:22px}.hero{gap:32px}.hero .actions{display:grid}.hero .actions .button{width:100%}.hero-card{padding:0}.hero-session{grid-template-columns:58px minmax(0,1fr) auto;gap:8px}.hero-session>strong{font-size:.82rem}.hero-plan-card>.button{width:calc(100% - 44px)}.site-nav-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.site-nav-actions .lang-switcher{grid-column:1/-1;justify-self:start}.site-nav-actions form,.site-nav-actions .button{width:100%}.auth-top{margin-top:6px}.auth-card{padding:26px 22px}.auth-card>p{margin-bottom:22px}.auth-card>.auth-alt{margin-top:22px}.next-workout-card{padding:24px}.next-workout-actions{width:100%}.dashboard-plan-tabs{z-index:5;max-width:none;position:sticky;top:8px}.dashboard-today-card{margin-top:14px;display:block}.dashboard-today-date{border-bottom:1px solid var(--border);border-right:0;justify-content:flex-start;align-items:center;gap:7px;padding:14px 18px;display:flex}.dashboard-today-date>time{margin:0;font-size:.82rem}.dashboard-today-main{padding:22px 18px}.dashboard-today-main .workout-log-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.dashboard-today-main .log-button{border-radius:10px;width:100%}.dashboard-today-meta{gap:10px;padding:14px 18px}.dashboard-today-meta dd{overflow-wrap:anywhere;font-size:.78rem}.plan-agenda{padding:18px 14px}.agenda-section-heading{align-items:start;gap:7px;display:grid}.agenda-section-heading>span{text-align:left}.plan-agenda .plan-week{padding:3px 10px}:is(.plan-agenda .plan-week>summary,.plan-agenda .plan-week>summary:has(.plan-week-progress)){grid-template-columns:minmax(0,1fr);gap:6px 10px}.plan-agenda .plan-week>summary>.plan-week-title{flex-wrap:wrap;grid-area:1/1}.plan-agenda .plan-week>summary>.plan-week-title strong{overflow-wrap:anywhere;min-width:0}.plan-agenda .plan-week>summary>span:nth-child(2){grid-area:2/1/auto/-1}.plan-agenda .plan-week>summary>.plan-week-progress{grid-area:3/1}.plan-agenda .plan-week>summary>em{overflow-wrap:anywhere;text-align:left;grid-area:4/1;max-width:100%}.plan-agenda .plan-session-summary{grid-template-areas:"when duration chevron""primary primary chevron""tags tags chevron";gap:6px 10px;min-height:68px;padding:11px 8px;grid-template-columns:minmax(0,1fr) auto 16px!important}.plan-session-summary .plan-session-when{grid-area:when;align-items:baseline;gap:8px;display:flex}.plan-session-primary{grid-area:primary}.plan-session-summary .plan-session-tags{grid-area:tags}.plan-session-duration{grid-area:duration}.plan-session-chevron{grid-area:chevron}.plan-session-primary>strong{font-size:.91rem}.plan-session-primary>span{display:none}.plan-session-summary .intensity-tag{padding:3px 7px;font-size:.7rem}.plan-session-summary .session-activity{font-size:.72rem}.plan-session-duration{font-size:.76rem}.plan-session-body{margin:0 6px 10px;padding:14px 10px}.plan-agenda .plan-session-rest:not(details){display:block}.plan-session-rest:not(details)>.plan-session-summary{grid-template-areas:"when duration""primary primary""tags tags";grid-template-columns:minmax(0,1fr) auto!important}.full-plan-summary{align-items:flex-start;gap:10px;padding:15px 14px;display:grid}.full-plan-summary>span:first-child{align-items:flex-start;gap:8px;display:grid}.full-plan-summary>span:first-child>span:last-child{width:100%}.full-plan-summary .badge{justify-self:start}.full-plan-summary-meta{justify-content:space-between;width:100%}.full-plan-body{padding:14px 10px}.dashboard-stack{gap:20px}.imported-rides-summary{align-items:flex-start;gap:8px 12px}.imported-rides-summary-meta{flex:100%;justify-content:space-between}.dashboard-unified-header{align-items:flex-start;gap:12px;padding:18px;display:grid}.dashboard-status-chip{white-space:normal;justify-self:start;max-width:100%;margin-top:1px;line-height:1.35}.dashboard-insight-layout{gap:20px;padding:18px}.dashboard-progress-box{padding:15px}.dashboard-load-body{padding:0 18px 18px}.dashboard-load-chart-header{display:grid}.dashboard-load-range{text-align:left}.dashboard-profile-list{padding:0 18px 18px}.dashboard-profile-row{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.week-bars{gap:4px}.dashboard-attention-stack>.proposal-card,.plan-update-header{padding:18px}.plan-update-option{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px 18px}.plan-update-option-status{display:none}.plan-update-option-actions,.plan-update-option-actions .button{width:auto}.plan-update-option-copy{gap:10px}.plan-update-option-editor .health-update-form{grid-template-columns:minmax(0,1fr)}.plan-update-editor-actions{align-items:stretch;display:grid}.plan-update-editor-actions .button{width:100%}.plan-update-panel>.notice{margin:14px 18px}.plan-update-purchase{padding:18px}.info-popover-popup{z-index:120;border-radius:16px;width:auto;max-height:min(72vh,460px);padding:20px 46px 20px 20px;position:fixed;inset:auto 12px 12px;overflow-y:auto}.dashboard-about .info-popover-popup{left:12px;right:12px}.info-popover-popup:before{display:none}.how-step{padding:20px}.fuelling-grid{grid-template-columns:minmax(0,1fr)}.fuelling-block:last-child:nth-child(odd){grid-column:auto}.site-footer{margin-top:62px}}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--background-2:#fff;--card:#fff;--card-solid:#fff;--muted:#4b5563;--muted-strong:#1f2937;--text:#111827;--border:#d1d5db;--border-strong:#9ca3af;--accent-strong:#111827;--accent-soft:#fff}.site-nav,.site-footer,.page-head,.notice,.intake-panel,.adapt-panel,.adjust-panel,.coach-plan-panel,.plan-link-card,.cta-band,.empty-plan,.plan-export,.workout-log-form,.language-switcher{display:none!important}html,body{color:#000!important;background:#fff!important}main,.container{background:#fff!important;max-width:none!important;margin:0!important;padding:0!important}.card,.plan-result{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;background:#fff!important;border:none!important;padding:0!important;overflow:visible!important}.card:before{display:none!important}.plan-result,.plan-result *{box-shadow:none!important;color:#111827!important;filter:none!important;-webkit-text-fill-color:#111827!important;text-shadow:none!important;background-image:none!important}.plan-result,.plan-result h2,.plan-result h4,.plan-result strong,.plan-summary,.plan-focus,.plan-session p,.session-workout h5,.session-workout-row dd,.plan-result dt,.plan-result dd{color:#000!important}.plan-meta,.plan-week summary span,.plan-session dt,.plan-session p,.session-workout h5,.session-workout-row dt{color:#374151!important;-webkit-text-fill-color:#374151!important}.plan-result .badge,.intensity-tag{color:#000!important;background:#fff!important;border:1px solid #999!important}.plan-week{break-inside:auto;page-break-inside:auto;margin-bottom:16px;border:none!important;padding:0!important}.plan-week>summary{break-after:avoid;page-break-after:avoid;border-radius:8px;margin-bottom:10px;border:1px solid #d1d5db!important;padding:12px!important}.plan-session{break-inside:avoid;page-break-inside:avoid;margin-bottom:10px;border:1px solid #d1d5db!important;padding:12px!important}details.full-plan-details>.full-plan-body,details.plan-week>.plan-sessions{display:block!important}details.plan-session>.plan-session-body{display:grid!important}a{color:#000!important;text-decoration:none!important}}.strava-connect-btn{cursor:pointer;background:0 0;border:0;border-radius:6px;max-width:100%;padding:0;line-height:0;display:inline-block}.strava-consent-form{justify-items:start;gap:12px;display:grid}.strava-connect-btn img{width:auto;max-width:100%;height:auto;display:block}img.strava-powered{width:auto;height:18px;display:inline-block}.ride-attribution{margin:0 0 12px}.strava-view-link,.strava-account-link{color:#fc5200;font-weight:700}.support-resources ul{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.support-resources li a{font-weight:600}.ride-export{margin-top:14px}.strava-deletion-receipt{margin-bottom:12px}.strava-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.strava-card .settings-grid{margin-top:8px}.strava-card .field-hint{margin-top:10px;display:block}.strava-card .strava-connect-btn{margin-top:6px}.content-head{margin-bottom:48px}.content-head>p{max-width:70ch}.text-link{color:var(--accent-strong);font-size:.9rem;font-weight:800;text-decoration:none}.text-link:hover{color:#ffad88}.guide-meta-row{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.guide-updated{color:var(--muted);font-size:.82rem;font-weight:650}.guide-body h3{font-family:var(--font-display);margin:8px 0 -5px;font-size:1.08rem;line-height:1.35}.guide-takeaways{border-radius:var(--radius-sm);background:linear-gradient(145deg,#fc4c021f,#60a5fa12);border:1px solid #fc4c0247;gap:13px;padding:22px 24px;display:grid}.guide-takeaways>strong,.guide-callout>strong{color:var(--text);font-family:var(--font-display);font-size:.98rem}.guide-takeaways ul{gap:8px}.guide-callout{border:1px solid #60a5fa38;border-left:3px solid var(--info);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#60a5fa13;gap:8px;padding:20px 22px;display:grid}.guide-callout p{margin:0;font-size:.96rem}.guide-table-wrap,.zone-table-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);overflow-x:auto}.guide-table,.calculator-table{border-collapse:collapse;width:100%;min-width:620px}.guide-table caption{color:var(--text);font-family:var(--font-display);text-align:left;padding:18px 20px;font-size:.96rem;font-weight:700}.guide-table th,.guide-table td,.calculator-table th,.calculator-table td{border-top:1px solid var(--border);color:var(--muted-strong);text-align:left;vertical-align:top;padding:13px 16px;font-size:.85rem;line-height:1.5}.guide-table thead th,.calculator-table thead th{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:#ffffff09;font-size:.72rem}.guide-table tbody th,.calculator-table tbody th{color:var(--text);font-weight:750}.guide-faq,.guide-sources{border-top:1px solid var(--border);margin-top:20px;padding-top:12px}.guide-sources>p{font-size:.94rem}.guide-sources ol{gap:14px;margin:0;padding-left:22px;display:grid}.guide-sources li{padding-left:4px}.guide-sources a{color:#8dc0ff;font-weight:750}.guide-sources li span{color:var(--muted);margin-top:4px;font-size:.86rem;line-height:1.55;display:block}.topic-path{justify-content:space-between;align-items:center;gap:30px;max-width:900px;margin:58px auto 0;display:flex}.topic-path>div{max-width:62ch}.topic-path h2{margin:7px 0 5px}.topic-path p{margin:0;font-size:.94rem}.guide-tools{margin-top:24px}.topic-index-section,.topic-resource-section{margin-top:64px}.section-heading{justify-content:space-between;align-items:end;gap:28px;margin-bottom:24px;display:flex}.section-heading h2{margin:7px 0 0;font-size:1.8rem}.section-heading>p{max-width:44ch;margin:0;font-size:.92rem}.topic-index-grid{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.topic-index-card{border-left:1px solid var(--border);padding:28px}.topic-index-card:first-child{border-left:0}.topic-index-card>span,.calculator-index-card>span,.topic-principles article>span{color:var(--accent-strong);font-family:var(--font-display);letter-spacing:.08em;font-size:.72rem;font-weight:800}.topic-index-card h3{font-family:var(--font-display);margin:14px 0 8px;font-size:1.1rem;line-height:1.35}.topic-index-card h3 a,.calculator-index-card h2 a,.calculator-index-card h3 a{color:var(--text);text-decoration:none}.topic-index-card p{margin:0 0 16px;font-size:.9rem}.calculator-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.calculator-index-card{flex-direction:column;min-height:250px;display:flex}.calculator-index-card h2,.calculator-index-card h3{font-family:var(--font-display);margin:16px 0 10px;font-size:1.2rem;line-height:1.3}.calculator-index-card p{flex:1;margin:0 0 20px;font-size:.94rem}.guides-page-head{max-width:850px;margin-bottom:44px}.guides-page-head>p{max-width:68ch;font-size:1.08rem;line-height:1.7}.methodology-page .guides-page-head{max-width:none}.methodology-page .guides-page-head>p{max-width:88ch}.methodology-article{width:100%}.methodology-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px clamp(32px,5vw,64px)}.methodology-block{border-top:1px solid var(--border);gap:14px;min-width:0;padding-top:24px;display:grid}.methodology-body .methodology-block h2{margin:0}.methodology-accountability{border:1px solid var(--border);background:#ffffff06;border-radius:14px;grid-column:1/-1;padding:28px}.methodology-body .methodology-accountability h2{margin:0 0 12px}.methodology-accountability .text-link{margin-top:16px}.guides-page .guide-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.guides-page .guide-index-card,.guides-page .guides-resource-card{border-color:var(--border);background:radial-gradient(circle at 100% 0,#60a5fa17,#0000 42%),linear-gradient(145deg,#121d2ffa,#0b1422fa);transition:border-color .2s,box-shadow .2s,transform .2s;overflow:hidden;box-shadow:0 14px 38px #0000002b}.guides-page .guide-index-card:hover,.guides-page .guide-index-card:focus-within,.guides-page .guides-resource-card:hover,.guides-page .guides-resource-card:focus-within{border-color:#ff7a3d6b;transform:translateY(-3px);box-shadow:0 20px 48px #00000040}.guides-page .guide-index-card{gap:16px;min-height:272px;padding:30px}.guide-index-meta{justify-content:space-between;align-items:center;gap:14px;display:flex}.guide-index-number{color:var(--accent-strong);font-family:var(--font-display);letter-spacing:.1em;font-size:.74rem;font-weight:800}.guides-page .guide-readtime{letter-spacing:.08em;font-size:.73rem}.guides-page .guide-index-card h2{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.28rem,2vw,1.52rem);line-height:1.28}.guides-page .guide-index-card p{font-size:.96rem;line-height:1.65}.guides-page .guide-index-link{align-self:flex-start;margin-top:auto}.guides-page-section{border-top:1px solid var(--border);margin-top:72px;padding-top:54px}.guides-page .guides-section-heading{align-items:flex-end;margin-bottom:26px}.guides-page .guides-section-heading h2{letter-spacing:-.02em;margin-bottom:0;font-size:clamp(1.65rem,3vw,2rem)}.guides-page .guides-section-heading>p{max-width:46ch;line-height:1.6}.guides-page .guides-resource-grid{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.guides-page .guides-resource-card{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;min-height:274px;padding:26px;display:flex}.guides-page .guides-resource-card:first-child{border-left:1px solid var(--border)}.guides-page .guides-resource-card h3{font-family:var(--font-display);letter-spacing:-.015em;margin:18px 0 10px;font-size:1.18rem;line-height:1.35}.guides-page .guides-resource-card p{flex:1;margin:0 0 22px;font-size:.92rem;line-height:1.62}.guides-page .text-link{align-items:center;gap:4px;width:fit-content;display:inline-flex}.guides-page .text-link span{transition:transform .18s}.guides-page .text-link:hover span{transform:translate(3px)}.guides-cta{background:radial-gradient(circle at 18% 30%,#fc4c0226,#0000 34%),radial-gradient(circle at 84% 18%,#60a5fa1f,#0000 32%),linear-gradient(145deg,#121d2ffa,#0a121ffa);border-color:#ff7a3d3d;margin-top:72px;padding:48px 32px;overflow:hidden}.guides-cta h2{font-size:clamp(1.8rem,3vw,2.2rem)}.guides-cta p{font-size:.98rem;line-height:1.65}.page-entry-gate{background:radial-gradient(circle at 14% 18%,#fc4c0229,#0000 32%),radial-gradient(circle at 88% 12%,#60a5fa21,#0000 34%),linear-gradient(145deg,#121d2ffa,#0a121ffa);border-color:#ff7a3d3d;align-content:center;justify-items:center;min-height:410px;margin-top:0;padding:64px 34px;display:grid;overflow:hidden}.page-entry-gate h1{letter-spacing:-.035em;max-width:780px;margin:18px 0 16px;font-size:clamp(2.35rem,5vw,3.35rem);line-height:1.08}.page-entry-gate>p{max-width:620px;margin:0;font-size:1.05rem;line-height:1.65}.page-entry-gate .actions{margin-top:30px}.legal-page .legal-page-head{max-width:850px;margin-bottom:42px}.legal-page .legal-page-head>p:not(.legal-updated){max-width:70ch;font-size:1.06rem;line-height:1.7}.legal-page .legal-updated{border:1px solid var(--border);letter-spacing:.025em;background:#ffffff09;border-radius:999px;align-items:center;width:fit-content;margin-top:16px;padding:7px 11px;font-size:.76rem;display:inline-flex}.legal-page .legal-doc,.legal-page .support-resources{background:radial-gradient(circle at 100% 0,#60a5fa12,#0000 38%),linear-gradient(145deg,#121d2ffa,#0b1422fa);max-width:900px}.legal-page .legal-doc{gap:0;padding:0;overflow:hidden}.legal-page .legal-section{padding:30px 34px}.legal-page .legal-section+.legal-section{border-top:1px solid var(--border)}.legal-page .legal-section h2{letter-spacing:-.01em;align-items:baseline;gap:14px;margin-bottom:13px;font-size:1.22rem;display:flex}.legal-page .legal-section-number{font-family:var(--font-display);letter-spacing:.1em;flex:none;font-size:.72rem;font-weight:800}.legal-page .legal-section p{max-width:72ch;font-size:.96rem;line-height:1.72}.legal-page .support-resources{margin-top:20px;padding:30px 34px}.legal-page .support-resources h2{margin:0;font-size:1.22rem}.legal-page .support-resources ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.legal-page .support-resources li a{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:#ffffff06;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:14px 16px;text-decoration:none;transition:background .18s,border-color .18s,transform .18s;display:flex}.legal-page .support-resources li a:hover{background:#ffffff0d;border-color:#ff7a3d61;transform:translateY(-2px)}.legal-page .support-resources li a span{color:var(--accent-strong);flex:none}.content-standard{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:40px;margin-top:56px;display:grid}.content-standard h2{margin:8px 0 0;font-size:1.7rem}.content-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.content-columns p{margin:0;font-size:.92rem}.calculator-kicker{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:850}.calculator-page-head{max-width:900px;margin-bottom:42px}.calculator-page-head .guide-back{margin-bottom:16px}.privacy-inline{color:var(--muted);align-items:center;gap:8px;margin-top:14px;display:flex;font-size:.82rem!important}.privacy-inline:before{color:var(--success);content:"✓";font-weight:900}.calculator-shell{border:1px solid var(--border-strong);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);background:linear-gradient(145deg,#121d2ffa,#0a1220fa);grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);display:grid;overflow:hidden}.calculator-controls{border-right:1px solid var(--border);gap:28px;padding:32px;display:grid}.calculator-controls h2{margin:8px 0 0;font-size:1.45rem}.calculator-output{min-width:0;padding:32px}.calculator-choice{border:0;gap:10px;margin:0;padding:0;display:grid}.calculator-choice legend{color:var(--muted);text-transform:uppercase;margin-bottom:10px;font-size:.78rem;font-weight:750}.calculator-choice label,.calculator-check{color:var(--muted-strong);cursor:pointer;align-items:center;gap:10px;font-size:.9rem;display:flex}.calculator-choice input,.calculator-check input{width:18px;height:18px;margin:0}.calculator-fields{gap:18px;display:grid}.calculator-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-field{gap:7px;display:grid}.calculator-field>label{color:var(--muted-strong);font-size:.78rem;font-weight:750}.calculator-field small{color:var(--muted);font-size:.75rem;line-height:1.4}.calculator-field select,.calculator-input-wrap{border:1px solid var(--border-strong);color:var(--text);background:#060a13b8;border-radius:10px;min-height:48px}.calculator-field select{font:inherit;width:100%;padding:0 12px}.calculator-input-wrap{align-items:center;display:flex;overflow:hidden}.calculator-input-wrap:focus-within,.calculator-field select:focus{border-color:var(--accent);box-shadow:var(--ring);outline:0}.calculator-input-wrap input{appearance:textfield;color:var(--text);font:inherit;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:12px;font-size:1rem;font-weight:700}.calculator-input-wrap span{border-left:1px solid var(--border);color:var(--muted);padding:8px 11px;font-size:.78rem;font-weight:800}.calculator-result-hero{flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin-bottom:12px;display:flex}.calculator-result-hero>span,.calculator-result-grid span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;width:100%;font-size:.75rem;font-weight:800;display:block}.calculator-result-hero strong{font-family:var(--font-display);font-size:3.5rem;line-height:1}.calculator-result-hero strong small,.calculator-result-grid strong small{color:var(--muted);font-family:var(--font);font-size:.8rem}.calculator-result-hero p{color:var(--accent-strong);margin:0;font-size:.92rem;font-weight:800}.calculator-formula{color:var(--muted-strong);background:#ffffff09;border-radius:8px;margin:14px 0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.calculator-table tbody th span{color:var(--accent-strong);margin-right:8px;font-size:.75rem;display:inline-block}.calculator-caveat,.calculator-warning,.calculator-error{margin:18px 0 0;font-size:.8rem;line-height:1.55}.calculator-warning{color:#fcd9a2;background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:9px;padding:12px}.calculator-error{color:#fca5a5}.calculator-result-grid{grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:18px;display:grid;overflow:hidden}.calculator-result-grid>div{background:#ffffff09;padding:18px}.calculator-result-grid strong{font-family:var(--font-display);margin-top:8px;font-size:1.8rem;display:block}.calculator-interpretation{border-left:3px solid var(--success);padding-left:14px}.calculator-interpretation p{margin:5px 0 0;font-size:.85rem}.load-chart{border-bottom:1px solid var(--border);align-items:end;gap:10px;height:205px;padding:0 6px;display:flex;overflow-x:auto}.load-chart-column{flex-direction:column;flex:1 0 36px;justify-content:end;align-items:center;min-width:36px;display:flex}.load-chart-column>span{color:var(--muted-strong);margin-bottom:5px;font-size:.75rem;font-weight:750}.load-chart-column small{color:var(--muted);padding:7px 0;font-size:.75rem}.load-chart-bar{background:linear-gradient(180deg, var(--accent-strong), var(--accent));border-radius:5px 5px 0 0;width:72%;min-height:10px}.load-chart-bar.recovery{background:#4f7fbc}.load-chart-bar.taper{background:#34d399}.load-legend{flex-wrap:wrap;gap:14px;margin:12px 0 22px;display:flex}.load-legend span{color:var(--muted);align-items:center;gap:6px;font-size:.75rem;display:flex}.load-legend i{background:var(--accent);border-radius:2px;width:8px;height:8px}.load-legend i.recovery{background:#4f7fbc}.load-legend i.taper{background:#34d399}.field-hint,.pricing-flag,.plan-source-selected,.workout-item dt,.today-chat-notes span,.intake-form label span,.plan-wizard-heading>span,.plan-session-summary .session-date,.full-plan-summary>span:first-child>span:last-child small,.session-workout-row dt,.session-imported-grouping li>span:last-child,.intensity-tag,.load-stat span,.week-bar-value,.week-bars-title,.trend-key,.trend-axis span,.workout-assignment label>span,.settings-grid span,.settings-form label span,.session-date,.hero-plan-head span,.calculator-table thead th,.topic-principles article>span{font-size:.75rem}.calculator-table.compact th,.calculator-table.compact td{padding:9px 12px}.calculator-explainer{gap:38px;max-width:820px;margin:64px auto 0;display:grid}.calculator-explainer section{border-top:1px solid var(--border);padding-top:24px}.calculator-explainer h2{margin:0 0 14px;font-size:1.45rem}.calculator-explainer p{color:var(--muted-strong);margin:0 0 14px;font-size:1rem}.calculator-faq{max-width:900px;margin-left:auto;margin-right:auto}.calculator-related{margin-top:64px}.topic-principles{border-bottom:1px solid var(--border);border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.topic-principles article{border-left:1px solid var(--border);padding:28px}.topic-principles article:first-child{border-left:0}.topic-principles h2{margin:14px 0 8px;font-size:1.12rem}.topic-principles p{margin:0;font-size:.9rem}@media (max-width:900px){.calculator-shell{grid-template-columns:1fr}.calculator-controls{border-bottom:1px solid var(--border);border-right:0}.calculator-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-index-card:last-child:nth-child(odd){grid-column:1/-1}.guides-page .guides-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guides-page .guides-resource-card:last-child:nth-child(odd){grid-column:1/-1}.methodology-body{grid-template-columns:minmax(0,1fr)}.methodology-accountability{grid-column:auto}}@media (max-width:700px){.topic-index-grid,.topic-principles,.content-standard,.content-columns{grid-template-columns:1fr}.topic-index-card,.topic-principles article{border-left:0;border-top:1px solid var(--border);padding:24px 0}.topic-index-card:first-child,.topic-principles article:first-child{border-top:0}.topic-path,.section-heading{flex-direction:column;align-items:flex-start}.topic-path .button{width:100%}.calculator-index-grid,.calculator-fields.two,.calculator-result-grid{grid-template-columns:1fr}.calculator-index-card:last-child:nth-child(odd){grid-column:auto}.guides-page-head{margin-bottom:32px}.guides-page .guide-index-grid,.guides-page .guides-resource-grid{grid-template-columns:1fr}.guides-page .guide-index-card,.guides-page .guides-resource-card{min-height:0;padding:24px}.guides-page .guides-resource-card:last-child:nth-child(odd){grid-column:auto}.guides-page-section{margin-top:54px;padding-top:40px}.guides-cta{margin-top:54px;padding:38px 22px}.page-entry-gate{min-height:360px;padding:46px 22px}.page-entry-gate h1{font-size:clamp(2.15rem,11vw,2.8rem)}.legal-page .legal-page-head{margin-bottom:32px}.legal-page .legal-section,.legal-page .support-resources{padding:24px}.legal-page .support-resources ul{grid-template-columns:1fr}.calculator-controls,.calculator-output{padding:24px 18px}.calculator-result-hero strong{font-size:2.8rem}.guide-takeaways,.guide-callout{padding:18px}}
