@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.calendar-mode-bar{position:relative;flex-wrap:wrap}.calendar-customize{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px}.calendar-customize p{flex-basis:100%;margin:0}.calendar-customize label{display:flex;align-items:center;gap:7px}.unified-calendar .week-planner-title-row{flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px}.schedule-filter{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;color:var(--color-text-secondary, #425466);font-size:12px;font-weight:500}.schedule-filter select{appearance:none;min-height:28px;max-width:100%;padding:4px 26px 4px 8px;border:1px solid var(--color-border, #dce3e8);border-radius:6px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230f5963' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 6px center;color:var(--color-accent, #0f5963);font:inherit;font-size:12px;font-weight:500;cursor:pointer}.schedule-filter select:hover{border-color:var(--color-accent, #0f5963);background-color:#f6f9f9}.schedule-filter select:focus-visible{outline:2px solid var(--color-accent, #0f5963);outline-offset:2px}.schedule-summary{display:flex;flex-wrap:wrap;gap:10px 22px;padding:12px 0;font-size:12px;color:var(--text-muted, #64748b)}.schedule-summary strong{margin-right:6px}.schedule-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;border:1px solid #dce3dd;background:#dce3dd;border-radius:10px;overflow:hidden}.schedule-day{min-width:0;min-height:190px;background:var(--surface, #fff);padding:10px 7px}.schedule-day time{display:block;font-size:12px;font-weight:600;margin:0 3px 12px}.schedule-day--today time{color:#36734a}.schedule-session{display:block;width:100%;text-align:left;background:#f4f6f3;border:1px solid #e0e5de;border-radius:6px;padding:8px;margin-bottom:6px;color:inherit;cursor:pointer;font:inherit}.schedule-session-title{display:block;font-weight:600;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.schedule-session small{display:block;font-size:10px;line-height:1.4;margin-top:4px;color:#56635b}.schedule-sport{font-weight:400;font-size:10px}.schedule-session--swim{border-left:3px solid #72949e}.schedule-session--strength{border-left:3px solid #9383a4}.schedule-session--training{border-left:3px solid #7e9872}.schedule-session--other{border-left:3px solid #aa9673}.schedule-add{display:block;border:0;background:transparent;color:#5e7062;font:inherit;font-size:12px;padding:10px 3px;min-height:40px;cursor:pointer}.schedule-add-form{font-size:12px}.schedule-add-form select{width:100%}.schedule-session:focus-visible,.schedule-add:focus-visible{outline:2px solid #3e7148;outline-offset:2px}.schedule-grid--month .schedule-day{min-height:150px}.schedule-session-group{margin-bottom:8px}.schedule-session[draggable=true]{cursor:grab}.schedule-session[draggable=true]:active{cursor:grabbing}.schedule-session-group--dragging{opacity:.5}.schedule-day--droppable{box-shadow:inset 0 0 0 2px #b8cdd0}.schedule-day--drop-target{background:#eaf4f3;box-shadow:inset 0 0 0 3px #0f5963}.schedule-move{display:block;border:0;background:transparent;color:#0f5963;font:inherit;font-size:12px;padding:5px 8px;min-height:32px;cursor:pointer;text-decoration:underline}.schedule-move:focus-visible{outline:2px solid #0f5963;outline-offset:2px}.schedule-move:disabled{cursor:wait;opacity:.5}.schedule-move-hint,.schedule-move-status{font-size:13px;color:#4f6371}.schedule-move-status:empty{display:none}.calendar-active-scope{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin:0;font-size:12px;color:#4f6371}.schedule-session-sync{display:block;padding:0 8px 5px;color:#56635b;font-size:11px}.schedule-session[aria-disabled=true]{cursor:default}@media(max-width:800px){.schedule-grid{grid-template-columns:1fr;gap:1px}.schedule-day,.schedule-grid--month .schedule-day{min-height:90px;padding:14px}.schedule-session-title{font-size:14px}.schedule-session small{font-size:12px}.calendar-mode-bar .nutrition-mode-toggle{flex-wrap:wrap}.schedule-summary{gap:8px}.schedule-summary>span{flex-basis:100%}}.shared-review-notice{margin:1rem 0;padding:1rem;border:1px solid #d99e3a;border-radius:12px;background:#d99e3a17}.shared-source-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}.shared-source,.shared-comparison{padding:1rem;border:1px solid var(--border-color, #445048);border-radius:12px}.shared-workout-detail section,.shared-workout-detail details{margin:1rem 0}.shared-workout-detail select,.shared-workout-detail input{width:100%}.plan-library{display:grid;gap:22px}.plan-library-filters,.plan-builder-heading,.calendar-plan-bar,.calendar-week-context,.calendar-other-context,.calendar-nutrition-link{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.plan-library-filters label,.calendar-plan-bar label{display:flex;align-items:center;gap:10px;font-weight:600}.plan-library-filters select,.calendar-plan-bar select{min-height:44px;padding:10px 32px 10px 12px;border:1px solid #ccd8de;border-radius:7px;color:#263541;background:#fff;max-width:100%;font:inherit}.plan-library-list{display:grid;gap:16px}.plan-library-card{display:grid;grid-template-columns:54px minmax(180px,1.3fr) minmax(150px,.7fr) 190px;align-items:center;gap:24px;padding:26px}.plan-library-icon{background:#f1f5f6;border-radius:10px;padding:12px}.plan-library-icon svg{width:30px;height:30px}.plan-library-card h3{margin:0 0 12px;font-size:21px}.plan-library-card p{margin:12px 0 0;color:#627381;font-size:14px}.plan-library-actions{display:grid;gap:10px;text-align:center}.plan-library-actions a,.calendar-plan-bar a,.plan-builder-heading a{text-decoration:none}.plan-sport-badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.plan-sport-badges>span{padding:4px 8px;font-size:12px;border:1px solid #d8e2e6;border-radius:5px}.plan-sport-badges>span:first-child{color:#0c5963;background:#edf7f7}.plan-library-progress{display:grid;gap:10px;font-size:13px;color:#536673}.plan-library-progress progress{width:100%;height:9px;accent-color:#0f5963}.plan-library-note{padding:24px;border:1px dashed #ccd8de;border-radius:9px;background:#fff}.plan-library-note p{margin:8px 0 16px;color:#627381}.builder-step-bar{display:flex;justify-content:space-around;gap:20px;padding:20px 0 30px;color:#61717c;font-size:14px}.builder-step-bar strong{color:#0f5963}.plan-builder-columns{display:grid;grid-template-columns:minmax(230px,.32fr) minmax(0,1fr);gap:24px;align-items:start}.plan-review .plan-setup-panel{padding:22px;margin:0;border:1px solid #dce3e8;border-radius:9px;background:#fff}.plan-setup-panel h3{margin-top:0}.plan-setup-panel label,.plan-sport-fields label,.plan-week-sessions>label{display:grid;gap:8px;margin-bottom:14px;font-weight:500;font-size:14px}.plan-setup-panel input,.plan-setup-panel textarea,.plan-setup-panel select,.plan-sport-fields select,.plan-week-sessions textarea{width:100%;box-sizing:border-box;border:1px solid #ccd8de;padding:10px;border-radius:6px;background:#fff;font:inherit}.plan-setup-panel p,.plan-setup-panel li{color:#627381;font-size:13px;line-height:1.6}.plan-sport-fields fieldset{border:0;padding:0;margin:12px 0;display:flex;flex-wrap:wrap;gap:12px}.plan-review .plan-sport-fields fieldset label,.plan-builder .plan-sport-fields fieldset label{display:flex;align-items:center;gap:7px;margin:4px 0}.plan-sport-fields input[type=checkbox]{width:auto}.plan-sport-fields legend{margin-bottom:8px;font-size:14px}.plan-sport-fields small{color:#6c7b85;line-height:1.5}.plan-outline-workspace{min-width:0}.plan-outline-workspace>h3{margin:0 0 8px}.plan-outline-workspace>p{color:#6c7b85}.plan-outline-scroll{overflow:auto;border:1px solid #dce3e8;border-radius:8px;background:#fff}.plan-outline{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.plan-outline th,.plan-outline td{padding:16px;border-bottom:1px solid #e4e9ec;vertical-align:top}.plan-outline thead{background:#f3f6f8;font-size:12px;text-transform:uppercase;color:#61717c}.plan-outline small,.plan-outline td>span{display:block;margin-top:6px;font-size:12px;font-weight:400;color:#627381}.plan-outline-selected{background:#edf6f7}.plan-outline td p{margin:8px 0 0;line-height:1.5}.plan-outline td a{display:block;margin:12px 0 0}.plan-week-sessions{border:1px solid #dce3e8;border-radius:8px;padding:20px;background:#fff;margin-top:20px}.plan-week-flags{display:flex;gap:20px;font-size:13px;margin:12px 0}.plan-session-row{width:100%;display:grid;grid-template-columns:80px 1fr 40px;gap:12px;align-items:center;padding:15px 8px;border:0;border-top:1px solid #e1e7eb;background:#fff;color:#253946;text-align:left;cursor:pointer;font:inherit;font-size:14px}.plan-session-row small{display:block;font-size:12px;color:#627381;margin-top:5px}.plan-session-row[aria-pressed=true]{background:#edf6f7}.plan-add-days{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.plan-add-days button{font-size:12px}.compact-plan{min-width:0;display:block}.plan-review .compact-plan--editing{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.plan-review .compact-workout-editor{grid-row:1;position:static}.compact-plan .plan-outline{table-layout:auto;font-size:14px}.compact-plan .plan-outline th,.compact-plan .plan-outline td{padding:16px;overflow-wrap:normal}.compact-plan .plan-outline th:first-child{width:110px}.compact-plan .plan-outline th:last-child{width:100px}.plan-workspace-tabs [role=group]{display:flex;gap:22px}.plan-workspace-tabs button[aria-pressed=true]{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:650}.compact-workout-editor{position:static;width:auto}.legacy-plan-builder{padding:24px}.legacy-plan-builder .plan-outline-scroll{margin-top:24px}.calendar-plan-bar{padding:0 0 22px;margin-bottom:18px;border-bottom:1px solid #e0e7eb}.calendar-plan-bar label{max-width:100%}.calendar-plan-bar select{max-width:min(420px,70vw)}.plan-scope-description{flex:1;font-size:13px;color:#627381}.calendar-week-context{padding:20px;margin-top:20px;border:1px solid #dce3e8;border-radius:8px;background:#f4f7f8}.calendar-week-context>div:first-child{flex:1;min-width:220px}.calendar-week-context p{margin:8px 0 0;color:#536673;line-height:1.55}.calendar-week-context summary{margin-top:10px;color:#0f5963;cursor:pointer}.schedule-summary{padding:20px 0;gap:20px}.schedule-summary>span{background:#f7f9fa;padding:12px 16px;border:1px solid #e2e8eb;border-radius:7px;flex:1;min-width:160px}.schedule-summary small{display:block;margin-top:6px}.calendar-other-context,.calendar-nutrition-link{background:#f6f9fa;border:1px solid #e0e7eb;border-radius:8px;padding:18px;margin-top:20px;color:#4f6371;font-size:14px}.calendar-nutrition-link p{margin:5px 0 0;font-size:13px}.calendar-scope-notice{padding:12px;background:#f4f7f8;border-radius:6px}.plan-session-row:focus-visible{outline:2px solid #0f5963;outline-offset:2px}@media(max-width:1050px){.plan-library-card{grid-template-columns:44px 1fr 170px;gap:16px}.plan-library-progress{grid-column:2}.plan-library-actions{grid-column:3;grid-row:1 / span 2}.plan-builder-columns{grid-template-columns:240px minmax(0,1fr);gap:16px}.plan-outline th,.plan-outline td{padding:12px}}@media(max-width:760px){.plan-library-card{grid-template-columns:40px minmax(0,1fr);padding:18px}.plan-library-progress{grid-column:2}.plan-library-actions{grid-column:1 / -1;grid-row:auto;grid-template-columns:1fr 1fr}.plan-builder-columns{grid-template-columns:1fr}.builder-step-bar{font-size:12px;gap:12px}.plan-outline{min-width:540px}.plan-library-filters .segmented-control{flex-wrap:wrap}.calendar-plan-bar{align-items:stretch}.plan-scope-description{flex-basis:100%}.calendar-plan-bar label{width:100%}.calendar-plan-bar select{flex:1;min-width:0}.plan-session-row{grid-template-columns:60px 1fr 32px;gap:8px}.plan-setup-panel{padding:18px}}@media(max-width:700px){.compact-plan .plan-outline{display:table;width:100%!important}.compact-plan .plan-outline thead{display:table-header-group}.compact-plan .plan-outline tbody{display:table-row-group}.compact-plan .plan-outline tr{display:table-row}.compact-plan .plan-outline th,.compact-plan .plan-outline td{display:table-cell;padding:12px}}.races-page{max-width:1100px;margin:auto}.race-heading,.race-filters,.race-lookup{display:flex;align-items:center;justify-content:space-between;gap:1rem}.race-heading{margin:1rem 0 1.5rem}.race-heading h2{font-size:2rem;margin:.25rem 0}.race-heading p{margin:.4rem 0;color:var(--color-text-muted)}.race-lookup{flex-wrap:wrap;padding:1rem}.race-lookup label{flex:1;min-width:230px}.race-lookup small{flex-basis:100%;color:var(--color-text-muted)}.races-page label,.planning-dialog label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem}.races-page input,.races-page select,.planning-dialog input:not([type=checkbox]),.planning-dialog select,.planning-dialog textarea{width:100%;box-sizing:border-box;padding:.65rem .75rem;border:1px solid var(--color-border);border-radius:8px;color:inherit;background:var(--color-surface);font:inherit}.race-filters{margin:1.5rem 0;flex-wrap:wrap}.race-filters select{min-width:130px}.race-list{display:grid;gap:.7rem}.race-row{width:100%;display:flex;gap:1rem;align-items:center;text-align:left;color:inherit;cursor:pointer;padding:1rem;border:1px solid var(--color-border)}.race-row:hover{border-color:#7dba64}.race-row-body{display:grid;gap:.35rem;flex:1}.race-row-body strong{font-size:1.05rem}.race-row-body>span,.race-row-state small{font-size:.85rem;color:var(--color-text-muted)}.race-row-state{display:grid;gap:.5rem;text-align:right;text-transform:capitalize}.race-picture{width:84px;height:68px;object-fit:cover;border-radius:8px;flex-shrink:0}.race-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(130deg,#283d2f,#15261f);color:#a8d18e}.race-placeholder>span{font-size:1.3rem;font-weight:800;letter-spacing:-.1em}.race-placeholder small{font-size:.65rem}.race-picture--large{width:100%;height:190px}.race-empty{padding:2.5rem;text-align:center}.race-candidates,.race-image-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem;margin:1rem 0}.race-candidates article,.race-image-results article{padding:1rem;display:flex;flex-direction:column;gap:.5rem}.race-candidates p,.race-candidates h3{margin:.2rem 0}.race-image-results img{width:100%;height:110px;object-fit:cover;border-radius:6px}.race-image-results p,.race-image-results small{font-size:.75rem;margin:.2rem 0}.planning-overlay{position:fixed;inset:0;z-index:110;background:#07120cbb;display:flex;justify-content:flex-end}.planning-dialog{width:min(720px,100%);height:100%;overflow-y:auto;background:var(--color-surface);color:var(--color-text-primary);padding:1.5rem;box-sizing:border-box;box-shadow:-20px 0 80px #0005}.planning-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.planning-dialog h2{margin:0}.planning-dialog h3{font-size:1rem}.planning-dialog fieldset{border:0;padding:0;margin:0;min-width:0}.race-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.race-wide{grid-column:1/-1}.planning-dialog .race-check{flex-direction:row;align-items:center;margin:1rem 0}.race-check input{width:auto}.race-image-section{margin:1.5rem 0;padding:1rem 0;border-block:1px solid var(--color-border)}.race-image-section>button{margin:.7rem .5rem .7rem 0}.planning-dialog .muted{font-size:.8rem;color:var(--color-text-muted)}.race-upload{margin:1rem 0}.race-marker{display:block;border-left:3px solid #a1cc7e;padding:.3rem .45rem;margin:.25rem 0;background:#edf3e6;border-radius:4px;color:inherit;text-decoration:none;font-size:.75rem;font-weight:600}.race-marker:hover{text-decoration:underline}.race-marker small{font-weight:400;display:block}.race-calendar-status{font-size:.8rem;padding:.5rem}.planning-dialog a,.races-page a{color:#315b27}.planning-dialog [role=alert],.races-page [role=alert]{padding:.8rem;background:#714b352f;border:1px solid #b58659;border-radius:6px}.planning-dialog button:focus-visible,.race-row:focus-visible{outline:2px solid #9bd57c;outline-offset:3px}@media(max-width:620px){.race-heading{align-items:flex-start}.race-row{flex-wrap:wrap}.race-row-state{flex-basis:100%;text-align:left;margin-left:100px}.race-fields{grid-template-columns:1fr}.race-wide{grid-column:auto}.planning-dialog{padding:1rem}.race-filters{align-items:flex-start}.race-filters .segmented-control{flex-wrap:wrap}.race-picture{width:64px;height:64px}.race-row-state{margin-left:80px}}.plan-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}.plan-actions a{text-decoration:none}.plan-builder,.plan-jobs,.plan-attachment{padding:22px;margin:20px 0}.plan-builder>fieldset{border:0;padding:0}.plan-builder label,.plan-attachment label,.plan-publication label{display:grid;gap:6px;margin:10px 0}.plan-builder textarea,.plan-builder input,.plan-builder select,.plan-attachment select{max-width:100%;box-sizing:border-box}.plan-day-choices{display:flex;flex-wrap:wrap;gap:12px;border:1px solid var(--color-border);border-radius:10px;padding:12px}.plan-day-choices label{display:flex!important;align-items:center;gap:6px!important}.plan-day-choices input{width:auto!important}.plan-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:16px}.plan-list article{padding:20px}.plan-list h3{margin-top:0}.plan-jobs article{border-top:1px solid var(--color-border);padding:16px 0}.plan-attachment{border:1px solid var(--color-border);border-radius:12px;margin-inline:0}.plan-weeks details{border:1px solid var(--color-border);border-radius:10px;padding:14px;margin:12px 0}.plan-weeks summary{cursor:pointer;font-weight:650;line-height:1.6}.plan-session-edit{border-top:1px solid var(--color-border);padding-top:14px;margin-top:14px}.plan-session-edit>strong{text-transform:capitalize}.plan-json{font-family:ui-monospace,monospace;width:100%;box-sizing:border-box;font-size:13px;line-height:1.5}.plan-structure{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--color-surface);padding:12px;border-radius:8px;max-height:300px;overflow:auto}.plan-publication{border:2px solid #52784b;border-radius:12px;padding:20px;margin:18px 0}.plan-issues{max-height:300px;overflow:auto;line-height:1.7}.plan-error,.plan-session-detail p{white-space:pre-wrap}.plan-session-detail dl{display:grid;grid-template-columns:auto 1fr;gap:8px}.plan-calendar-tools{display:flex;gap:12px;align-items:center;margin:8px 0 16px;flex-wrap:wrap}@media(max-width:600px){.plan-builder,.plan-jobs{padding:16px}.plan-publication{padding:14px}.plan-session-edit .race-fields{grid-template-columns:1fr}.plan-session-edit .race-wide{grid-column:auto}}.plan-builder textarea{border:1px solid var(--color-border);border-radius:10px;padding:12px;font:inherit;width:100%;min-height:70px;background:var(--color-surface);color:var(--color-text-primary)}.plan-race-session{border-left:3px solid #52784b;border-radius:8px;padding:2px}.plan-race-link{display:block;font-size:12px;padding:5px 8px;color:#315b27}@media(max-width:600px){.plans-page .race-heading{flex-direction:column;align-items:flex-start}.plans-page .race-heading .plan-actions{margin-top:0}}.other-editor.strength-editor .ghost-button,.other-editor.strength-editor .primary-button,.other-routines .ghost-button{padding:6px 10px;min-height:34px;border-radius:7px;font-size:13px;line-height:1.3}.other-editor.strength-editor label{margin:6px 0;gap:4px;font-size:12px}.other-editor.strength-editor input,.other-editor.strength-editor select,.other-editor.strength-editor textarea{padding:7px 8px;border-radius:6px;min-height:34px}.other-editor.strength-editor h3,.other-editor.strength-editor h4{margin:0 0 8px}.other-editor.strength-editor .other-muted{font-size:12px;margin:0 0 10px}.other-editor.strength-editor .strength-exercise{border:1px solid #d7e2e1;border-radius:8px;background:#fff;margin:8px 0;min-width:0}.strength-exercise-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;text-align:left;font:inherit;font-size:13px;font-weight:600;color:#233b42;overflow-wrap:anywhere}.strength-exercise-heading small{display:block;font-weight:400;margin-top:3px}.strength-exercise-body{padding:0 10px 8px}.strength-set{border-top:1px solid #e2e8e8;padding:8px 0}.strength-set-row{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.strength-set-row>label{flex:1;min-width:74px}.strength-set-number{align-self:center;color:#6a7b80;font-size:12px;width:12px}.strength-weight{display:flex;gap:4px;flex:1;min-width:110px}.strength-weight label:first-child{flex:1;min-width:50px}.strength-weight label:last-child{width:55px}.other-editor.strength-editor .strength-done{flex:0 0 auto;min-width:0;padding-bottom:7px}.other-editor.strength-editor .strength-extra{margin:4px 0;font-size:12px;color:#536b72}.strength-extra summary{cursor:pointer;padding:5px 0}.strength-row-actions{display:flex;gap:6px;justify-content:flex-end}.strength-row-actions .ghost-button{font-size:11px;min-height:28px;padding:3px 7px}.other-editor.strength-editor .other-actions{gap:6px;margin:8px 0 0}.other-editor.strength-editor .strength-save-bar{position:sticky;bottom:0;z-index:2;background:#f5f9f8;border-top:1px solid #d7e2e1;padding:10px 0;margin-top:12px}.other-editor.strength-editor{scroll-margin-top:16px}.strength-routine-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;font-size:13px}.strength-routine-row>strong{overflow-wrap:anywhere}.strength-routine-row .other-actions{margin:0;flex-shrink:0}@media(max-width:600px){.other-editor.strength-editor{padding:10px}.other-editor.strength-editor input,.other-editor.strength-editor select,.other-editor.strength-editor textarea{font-size:16px;min-height:40px}.other-editor.strength-editor .ghost-button,.other-editor.strength-editor .primary-button{min-height:40px}.strength-set-row>label{flex:1 1 28%}.strength-weight{flex:1 1 60%}.strength-row-actions .ghost-button{min-height:36px}.strength-routine-row{align-items:flex-start;flex-wrap:wrap}}.other-editor.strength-editor .strength-title-row{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px}.other-editor.strength-editor .strength-routine-picker{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.strength-routine-picker select{flex:1;min-width:150px}.strength-exercise-heading small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.other-editor.strength-editor .other-check input{min-height:18px;width:18px;height:18px;padding:0}.other-editor.strength-editor .strength-row-actions .ghost-button{box-shadow:none;transform:none}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail)){align-self:flex-start;width:min(520px,calc(100% - 32px));height:auto;max-height:calc(100dvh - 32px);margin:16px;padding:16px;border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-lg);font-size:13px;line-height:1.5}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail))>header{align-items:flex-start;gap:12px;margin:0 0 8px}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail)) h2{min-width:0;font-size:18px;line-height:1.35;overflow-wrap:anywhere}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail)) :is(.ghost-button,.primary-button){min-height:34px;padding:6px 11px;border-radius:6px;font-size:13px;line-height:20px;box-shadow:none}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail))>header button{flex-shrink:0}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail)) .primary-button{background:var(--color-accent);color:#fff}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail)) :is(button,a,select):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.shared-plan-detail p{margin:0}.shared-plan-meta{display:flex;flex-wrap:wrap;gap:3px 8px;color:var(--color-text-secondary);font-size:12px}.shared-plan-meta>span:before{content:"·";margin-right:8px}.shared-plan-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin-top:16px}.planning-dialog .shared-plan-actions a{color:var(--color-accent);font-size:12px;text-underline-offset:3px;padding-block:6px}.shared-plan-detail .shared-plan-hint{margin-top:6px;font-size:12px;color:var(--color-text-secondary)}.shared-plan-activity{margin-top:16px;padding-top:12px;border-top:1px solid var(--color-border);display:grid;gap:8px}.shared-plan-activity h3{margin:0;font-size:13px}.shared-plan-activity p{font-size:12px;color:var(--color-text-secondary)}.shared-plan-activity>button{justify-self:start}.planning-dialog .shared-plan-activity select{min-width:0;min-height:34px;padding:6px 9px;border-radius:6px;font-size:13px}@media(max-width:600px){.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail)){width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:12px;padding:14px}.planning-dialog:has(>:is(.shared-plan-detail,.shared-workout-detail)) :is(.ghost-button,.primary-button),.planning-dialog .shared-plan-activity select{min-height:44px}.planning-dialog .shared-plan-actions a{padding-block:12px}}.shared-workout-detail{display:grid;gap:8px}.planning-dialog .shared-workout-detail :is(section,details){margin:0}.shared-workout-detail p,.shared-workout-detail h3{margin:0}.shared-workout-detail h3{font-size:13px}.workout-result{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.workout-result p,.workout-sources-summary,.workout-plan-summary{font-size:12px}.workout-result p,.workout-sources-summary{color:var(--color-text-secondary)}.shared-workout-detail .workout-metrics{display:flex;flex-wrap:wrap;gap:12px 24px;padding:12px;margin:0;background:var(--color-surface-muted);border-radius:6px}.workout-metrics:empty{display:none}.workout-metrics div{min-width:0}.workout-metrics dt{color:var(--color-text-secondary);font-size:11px}.workout-metrics dd{margin:2px 0 0;font-size:19px;font-weight:650}.workout-metrics small{font-size:12px;font-weight:400}.workout-plan-summary{display:grid;gap:4px}.shared-workout-detail .workout-disclosure{border-top:1px solid var(--color-border);padding-top:2px;min-width:0}.workout-disclosure>summary{padding:9px 0;cursor:pointer;font-size:12px;font-weight:600}.workout-disclosure[open]>:not(summary){margin-bottom:10px}.workout-disclosure section{display:grid;gap:8px;min-width:0}.workout-disclosure button{justify-self:start}.shared-workout-detail .shared-source-grid{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:8px}.shared-workout-detail :is(.shared-source,.shared-comparison){padding:10px;border:1px solid var(--color-border);border-radius:6px;overflow-wrap:anywhere;font-size:12px}.shared-workout-detail .shared-source dl{margin:0;display:grid;gap:2px}.shared-workout-detail .shared-source dt{color:var(--color-text-secondary);font-size:11px}.shared-workout-detail .shared-source dd{margin:0 0 4px}.shared-workout-detail .plan-actions{margin:8px 0;gap:8px}.planning-dialog .shared-workout-detail :is(select,input:not([type=checkbox])){min-width:0;min-height:34px;padding:6px 9px;font-size:13px;border-radius:6px}.planning-dialog .shared-workout-detail button{min-height:34px;padding:6px 11px;font-size:13px;line-height:20px;border-radius:6px}.shared-workout-detail .workout-review-warning{padding:8px 10px;border-left:3px solid #ac741b;background:#ac741b12}.planning-dialog:has(>.shared-workout-detail) summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:600px){.planning-dialog .shared-workout-detail :is(button,select,input:not([type=checkbox])){min-height:44px}.workout-disclosure>summary{min-height:44px;box-sizing:border-box;display:list-item;padding-block:12px}}.workout-description{margin-top:14px;padding:12px;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:6px}.workout-description h3{margin:0 0 8px;font-size:13px}.workout-description ul{list-style:none;padding:0;margin:0;display:grid;gap:5px}.workout-description li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;font-size:12px}.workout-description li span{font-weight:550}.workout-description small{color:var(--color-text-secondary);font-size:12px}.workout-description p{margin:8px 0 0;font-size:12px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}.workout-description summary{cursor:pointer;padding:8px 0;font-size:12px;font-weight:600}.workout-description details{margin-top:4px}.shared-plan-detail .workout-description p{margin-top:8px}.shared-workout-detail .workout-description{margin-top:0}@media(max-width:600px){.workout-description summary{padding-block:12px;min-height:44px;box-sizing:border-box}}.weekly-dashboard{margin:0 0 16px}.session-result,.weekly-work-row .session-result{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;margin:4px 0;font-size:11px}.session-result .session-result-badge,.session-result .session-match{display:inline;margin:0;font-size:11px;line-height:1.4}.session-result-badge{font-weight:600}.session-result-badge--done,.session-result-badge--acceptable{color:var(--color-warning);background:var(--color-warning-soft);border:1px solid rgba(191,109,32,.16);border-radius:4px;padding:2px 5px}.session-result-badge--not-met{color:var(--color-text-primary);background:var(--color-warning-soft);border:1px solid var(--color-border);border-radius:4px;padding:2px 5px}.session-match{color:var(--color-text-secondary)}.overview-activity-note{margin-bottom:10px}.weekly-section-heading,.weekly-timeline-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 10px}.weekly-dashboard h3,.weekly-timeline-heading h3{font-size:15px;margin:0}.weekly-dashboard h3 small{margin-left:8px;font-size:12px;font-weight:400;color:var(--color-text-secondary)}.weekly-section-heading p{margin:3px 0 0;font-size:12px;color:var(--color-text-secondary)}.weekly-scoreboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.weekly-scoreboard:has(.weekly-body){grid-template-columns:repeat(4,minmax(0,1fr))}.weekly-goal{min-width:0;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.weekly-goal h4{display:flex;align-items:center;gap:5px;font-size:13px;margin:0 0 6px}.weekly-goal p{font-size:12px;line-height:1.45;margin:5px 0}.weekly-goal .weekly-goal-value{margin:0 0 6px;font-size:13px;font-variant-numeric:tabular-nums}.weekly-goal-value strong{font-size:23px;font-weight:650;letter-spacing:-.5px}.weekly-goal-value span{color:var(--color-text-secondary)}.weekly-goal progress{display:block;width:100%;height:5px;border:0;border-radius:3px;background:var(--color-surface-muted);accent-color:var(--color-accent)}.weekly-goal progress::-webkit-progress-bar{background:var(--color-surface-muted);border-radius:3px}.weekly-goal progress::-webkit-progress-value{background:var(--color-accent);border-radius:3px}.weekly-goal .weekly-goal-left{margin-top:8px;font-weight:600}.weekly-goal-state{color:var(--color-text-secondary)}.weekly-goal summary{font-size:11px;min-height:28px;display:list-item;align-content:center;cursor:pointer}.weekly-goal-source{display:block;font-size:10px;color:var(--color-text-secondary);line-height:1.5}.weekly-target-edit{display:block;border:0;background:transparent;padding:4px 0;font:inherit;font-size:11px;color:var(--color-accent);text-decoration:underline;cursor:pointer}.weekly-body a{display:block;font-size:12px;margin-top:8px}.weekly-coverage{border-left:3px solid var(--color-accent);padding:6px 10px;background:var(--color-surface-muted);font-size:12px}.weekly-action-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:12px;margin-top:14px}.weekly-today,.weekly-remaining{border:1px solid var(--color-border);border-radius:8px;padding:12px;min-width:0}.weekly-today{background:var(--color-surface-muted)}.weekly-action-grid ul{list-style:none;margin:8px 0 0;padding:0}.weekly-action-grid .weekly-work-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--color-border)}.weekly-work-row:last-child{border-bottom:0;padding-bottom:0}.weekly-work-row>div{min-width:0}.weekly-work-row strong{display:block;font-size:13px;overflow-wrap:anywhere}.weekly-work-row span,.weekly-work-row small{display:block;font-size:11px;color:var(--color-text-secondary);margin-top:3px}.weekly-work-row small{font-weight:600}.weekly-work-row button{flex-shrink:0}.weekly-prescription{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;margin:4px 0;color:var(--color-text-secondary)}.weekly-empty{font-size:12px;color:var(--color-text-secondary);margin:8px 0 0;line-height:1.5}.weekly-remaining summary,.weekly-today summary{font-size:12px;cursor:pointer;padding:8px 0}.weekly-gaps li{font-size:12px;margin-bottom:6px;line-height:1.5}.weekly-goal-form{font-size:13px}.weekly-goal-form fieldset{border:0;padding:0;margin:12px 0;min-width:0}.weekly-goal-form label{display:grid;gap:5px}.weekly-goal-form :is(input,select){box-sizing:border-box;width:100%;min-height:36px;padding:6px 9px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text-primary);font:inherit}.weekly-goal-form .plan-actions{margin-top:14px}.planning-dialog:has(.weekly-goal-form){width:min(560px,100%);padding:16px;box-sizing:border-box}.planning-dialog:has(.weekly-goal-form) h2{font-size:19px}.planning-dialog:has(.weekly-goal-form) :is(.ghost-button,.primary-button){min-height:34px;padding:6px 11px;border-radius:6px;font-size:13px;line-height:20px;box-shadow:none}.planning-dialog:has(.weekly-goal-form) :is(input,select,button,summary):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.weekly-secondary{margin-top:16px;padding-top:12px;border-top:1px solid var(--color-border)}.weekly-secondary>summary{cursor:pointer;font-size:13px;padding:8px 0}.unified-calendar .schedule-session{background:var(--color-surface-muted);border-color:var(--color-border)}.unified-calendar .schedule-session small{color:var(--color-text-secondary)}.unified-calendar .schedule-session-title{font-size:12px}.unified-calendar .schedule-day{background:var(--color-surface);min-height:145px}.unified-calendar .schedule-grid{background:var(--color-border);border-color:var(--color-border)}.unified-calendar .schedule-move-hint{font-size:11px;margin:6px 0 10px;color:var(--color-text-secondary)}.unified-calendar .calendar-week-context{padding:10px 12px;margin:0 0 14px}.unified-calendar .calendar-week-context p{font-size:12px;margin:4px 0}.weekly-focus-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.unified-calendar .calendar-plan-bar{margin:0 0 8px}@media(max-width:1100px){.weekly-scoreboard:has(.weekly-body){grid-template-columns:repeat(3,minmax(0,1fr))}.weekly-body{grid-column:1 / -1}}@media(max-width:800px){.weekly-scoreboard,.weekly-scoreboard:has(.weekly-body){grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-body{grid-column:auto}.weekly-action-grid{grid-template-columns:1fr}.unified-calendar .schedule-day{min-height:60px}.unified-calendar .schedule-session-title{font-size:14px}}@media(min-width:701px)and (max-width:800px){.calendar-page .unified-calendar .schedule-grid .schedule-day{min-height:60px}}@media(max-width:480px){.weekly-goal{padding:10px}.weekly-goal-value strong{font-size:21px}.weekly-goal .weekly-goal-value{font-size:11px}.weekly-action-grid .weekly-work-row{display:grid;grid-template-columns:minmax(0,1fr) auto}.weekly-work-row button{max-width:90px}.weekly-dashboard button,.weekly-timeline-heading button,.unified-calendar .schedule-move{min-height:44px}.weekly-goal summary{min-height:36px}.weekly-section-heading{align-items:start}.weekly-section-heading>div{flex:1}.weekly-section-heading h3 small{display:block;margin:3px 0 0}}.activity-settings h2{font-size:18px;margin:0}.activity-settings p{font-size:13px}.activity-settings fieldset{padding:0;border:0;margin:0;min-width:0}.activity-settings-options{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:12px}.activity-settings-options label{display:flex;align-items:center;gap:8px;font-size:13px}.activity-settings-options input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent)}.activity-settings-options select{min-height:32px;padding:4px 8px;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);background:#fff;font:inherit}.gg-login{min-height:100vh;display:flex;flex-direction:column}.gg-login-header{width:min(1248px,calc(100% - 80px));margin:0 auto;padding:30px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #dfe3d8}.gg-login-main{width:min(1120px,calc(100% - 80px));margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px;padding:80px 0}.gg-login-card h1{margin-top:25px;font-size:clamp(36px,4.2vw,58px)}.gg-login-card h1 span{color:#315b27}.gg-login-copy{color:#60675a;line-height:1.8;margin-top:26px!important;font-size:16px}.gg-login-card .gg-button{margin-top:32px;min-width:250px;border:0}.gg-login-card .gg-button:disabled{opacity:.7;transform:none}.gg-login-caption{margin-top:18px!important;font-size:12px;color:#60675a}.gg-login-art{background:#fcf4e8;border-radius:24px;overflow:hidden}.gg-login-art img{display:block;width:100%;height:auto}.gg-login-art figcaption{padding:22px;text-align:center;font-size:12px;color:#526343}.gg-login-footer{padding:24px;border-top:1px solid #dfe3d8;text-align:center;font-size:12px;color:#60675a}.gg-login-error{margin-top:18px!important;color:#a34040;max-width:35ch}.app-header-product{margin:0;color:#708394;font-size:12px;font-weight:600;letter-spacing:.06em}.coach-hub{--color-accent: #315b27;--color-accent-strong: #23451b;--color-accent-soft: #edf3e6}.coach-hub .coach-summary-column{background:#f9faf5;border-color:#dfe6d7}.coach-hub .coach-avatar-frame{border-color:#c7d6b8;box-shadow:none}.coach-hub .coach-speech-bubble,.coach-hub .coach-speech-bubble:before{border-color:#d8e3cb;background:#fff}.coach-hub .coach-note-layout{grid-template-columns:1fr;min-height:0;gap:18px}.coach-hub .coach-mascot-artwork{width:min(100%,470px);height:auto;max-height:300px;margin:0;justify-self:center;object-fit:contain;border-radius:12px;filter:none}.coach-hub .coach-checkin-column{background:#f7f9f3;border-color:#dfe6d7}.coach-hub .eyebrow{color:#315b27}.coach-hub .primary-button{background:#315b27;border-color:#315b27}.coach-hub .primary-button:hover{background:#23451b}.coach-hub .coach-answer-field textarea:focus-visible{outline:2px solid #315b27;outline-offset:3px}@media(max-width:760px){.gg-login-header{width:calc(100% - 40px);padding-block:22px}.gg-login-header .gg-brand{font-size:20px}.gg-login-header .gg-text-link{font-size:11px}.gg-login-main{width:calc(100% - 40px);grid-template-columns:1fr;gap:36px;padding-block:46px}.gg-login-card h1{font-size:clamp(35px,8vw,52px)}.gg-login-card .gg-button{width:100%}.gg-login-copy{font-size:15px}.gg-login-art{max-width:470px;width:100%;justify-self:center}.coach-hub .coach-mascot-artwork{max-height:240px}}.gg-privacy{min-height:100vh}.gg-privacy-header,.gg-privacy-footer{max-width:1080px;margin:0 auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.gg-privacy-header{border-bottom:1px solid var(--gg-line)}.gg-privacy-content{max-width:800px;margin:0 auto;padding:64px 32px 72px;font-size:16px;line-height:1.75}.gg-privacy .gg-privacy-content h1{margin:12px 0 18px;font-size:clamp(38px,7vw,60px)}.gg-privacy-content .gg-privacy-date{color:var(--gg-muted);font-size:13px}.gg-privacy-content .gg-privacy-intro{margin-top:28px;font-size:18px}.gg-privacy-content section{margin-top:40px;scroll-margin-top:24px}.gg-privacy .gg-privacy-content h2{font-size:25px;letter-spacing:-.035em;line-height:1.3;margin-bottom:16px}.gg-privacy-content p+p,.gg-privacy-content ul+p{margin-top:14px}.gg-privacy-content ul{padding-left:24px;margin:14px 0}.gg-privacy-content li+li{margin-top:12px}.gg-privacy-content a{color:var(--gg-green);text-decoration:underline;text-underline-offset:3px}.gg-privacy-contact{background:#eef3e8;border:1px solid #d5dfc8;border-radius:12px;padding:24px;margin-top:28px}.gg-privacy-contact p{margin-top:8px}.gg-privacy-garmin{border-top:1px solid var(--gg-line);border-bottom:1px solid var(--gg-line);padding:28px 0}.gg-privacy-garmin .gg-eyebrow{margin-bottom:12px}.gg-privacy-footer{border-top:1px solid var(--gg-line);font-size:13px;color:var(--gg-muted)}.app-privacy-footer{padding:24px 0 8px;font-size:12px;color:var(--color-text-secondary)}.app-privacy-footer a,.gg-login-footer a{text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.gg-privacy-header,.gg-privacy-footer{padding:20px;flex-wrap:wrap;gap:12px}.gg-privacy-content{padding:40px 20px 56px}.gg-privacy .gg-privacy-content h2{font-size:23px}.gg-privacy-contact{padding:20px}}.account-menu{position:relative}.account-menu summary{cursor:pointer;padding:10px 12px;border:1px solid var(--color-border, #dce3e8);border-radius:7px;font-size:13px}.account-menu-panel{position:absolute;z-index:40;right:0;top:calc(100% + 6px);display:grid;gap:10px;min-width:210px;padding:14px;background:#fff;border:1px solid #dce3e8;border-radius:8px;box-shadow:0 8px 24px #20304014}.account-menu-panel a{color:var(--color-accent);font-size:14px;padding:8px}.training-plan-workspace{width:100%;max-width:none;min-width:0}.plan-workspace-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin:12px 0 20px}.plan-workspace-heading h2{margin:4px 0 8px;font-size:clamp(22px,2vw,30px);letter-spacing:-.025em}.plan-workspace-heading p{margin:5px 0;color:var(--color-text-secondary)}.plan-workspace-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.plan-workspace-controls select{max-width:min(340px,90vw);padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;background:#fff;color:inherit;font:inherit;font-size:13px}.plan-workspace-tabs{display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--color-border);margin-bottom:18px}.plan-workspace-tabs [role=tablist]{display:flex;gap:inherit}.plan-workspace-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:12px 2px;font:inherit;color:var(--color-text-secondary);cursor:pointer}.plan-workspace-tabs button[aria-selected=true]{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:650}.plan-workspace-tabs a{margin-left:auto;color:var(--color-accent);font-size:13px}.plan-create-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.plan-create-choices button{text-align:left;cursor:pointer;padding:22px;color:inherit;font:inherit}.plan-create-choices strong,.plan-create-choices span{display:block}.plan-create-choices span{margin-top:8px;font-size:14px;color:var(--color-text-secondary)}.plan-create-choices button:hover{border-color:var(--color-accent)}.plan-review-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;color:var(--color-text-secondary);font-size:13px;margin-bottom:14px}.plan-phase{display:inline-block;width:fit-content;padding:4px 7px;border-radius:5px;background:var(--color-accent-soft, #e8f2f3);color:var(--color-accent);font-size:11px;font-weight:600}.plan-settings{margin:12px 0;padding:10px 0;font-size:13px}.plan-settings summary{cursor:pointer;color:var(--color-text-secondary)}.plan-settings label{display:grid;gap:6px;margin:12px 0;max-width:600px}.compact-plan{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px}.compact-plan--editing{grid-template-columns:minmax(0,1fr) 290px}.compact-plan-grid{min-width:0;overflow:auto;border:1px solid var(--color-border);border-radius:8px;background:#fff}.compact-plan table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.compact-plan th,.compact-plan td{padding:9px 7px;vertical-align:top;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);text-align:left;overflow-wrap:anywhere}.compact-plan thead th{background:#f3f6f8;color:var(--color-text-secondary);font-weight:600}.compact-plan th:first-child{width:125px}.compact-plan th:last-child{width:95px}.compact-plan tbody th{font-weight:500;background:#fafbfc}.compact-plan tbody th strong,.compact-plan tbody th small{display:block;margin-bottom:6px}.compact-plan tbody th small{color:var(--color-text-secondary);line-height:1.45;font-size:11px}.compact-plan tbody th .compact-week-focus{max-height:4.5em;overflow:auto}.compact-plan-recovery td{background:#f8fafb}.compact-plan time{display:block;font-size:10px;color:var(--color-text-secondary);margin-bottom:7px}.compact-plan-outside{background:#f7f9fa}.compact-workout{display:block;width:100%;padding:6px;margin:0 0 5px;border:1px solid transparent;border-left:3px solid #6f9ca2;border-radius:4px;background:#f6f9f9;text-align:left;color:inherit;font:inherit;cursor:pointer}.compact-workout strong,.compact-workout span,.compact-workout small{display:block;line-height:1.5}.compact-workout span{font-size:11px}.compact-workout[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent-soft)}.compact-workout--quality{border-left-color:#9b7936}.compact-workout--long{border-left-color:#167182;background:#eff7f9}.compact-workout--strength{border-left-color:#8e78ac}.compact-workout--rest,.compact-workout--recovery{border-left-color:#a3adb6}.compact-week-total span{display:block;font-size:12px;font-weight:600;line-height:1.6;margin-bottom:5px}.compact-add{min-height:28px;border:0;background:none;padding:3px;color:var(--color-text-secondary);font-size:11px;cursor:pointer}.compact-workout-editor{position:sticky;top:12px;border:1px solid var(--color-border);padding:16px;border-radius:8px;background:#fff;min-width:0}.compact-workout-editor header{display:flex;align-items:center;justify-content:space-between;gap:10px}.compact-workout-editor h3{margin:0;font-size:17px}.compact-workout-editor p{font-size:12px;color:var(--color-text-secondary);line-height:1.5}.compact-workout-editor fieldset{border:0;padding:0;min-width:0}.compact-workout-editor label{display:grid;gap:5px;margin:12px 0;font-size:12px;color:var(--color-text-secondary)}.compact-workout-editor input,.compact-workout-editor select,.compact-workout-editor textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--color-border);border-radius:5px;padding:9px;background:#fff;font:inherit;color:var(--color-text-primary)}.compact-workout-editor .compact-optional{display:flex;align-items:center;gap:8px}.compact-optional input{width:auto}.compact-distance{display:grid;grid-template-columns:1fr 70px;gap:8px}.plan-review-actions{position:sticky;bottom:0;z-index:8;background:#fff;border:1px solid var(--color-border);border-radius:7px;padding:12px 16px;margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.plan-review-actions>div{display:flex;flex-wrap:wrap;gap:8px}.plan-save-hint{color:var(--color-text-secondary);font-size:12px;margin:8px 0 12px}.plan-schedule .month-day-tile{min-height:100px}.plan-schedule .calendar-month-divider{margin:8px 0;font-size:14px}.plan-schedule .calendar-metrics-snapshot{padding:10px}.plan-notes{max-width:1100px}.schedule-range{font-size:12px;color:var(--color-text-secondary)}.schedule-all-week{margin-bottom:12px}.schedule-week-label{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;font-size:12px}.schedule-week-label .ghost-button{padding:5px 8px;min-height:30px;font-size:12px}.schedule-grid--all .schedule-day{min-height:105px}.schedule-day--outside{background:#f7f9fa}@media(max-width:1100px){.compact-plan--editing{grid-template-columns:minmax(0,1fr)}.compact-workout-editor{position:static;grid-row:1}.compact-workout-editor fieldset{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}}@media(max-width:700px){.app-header{position:relative}.app-header .app-header-brand{padding-right:85px}.app-header .header-actions{width:100%;flex-wrap:wrap}.app-header .account-menu{position:absolute;right:8px;top:8px}.app-header .account-menu summary{padding:8px;font-size:12px}.app-header .primary-nav{flex:1;flex-wrap:wrap;overflow:visible;justify-content:space-between}.app-header .primary-nav a{padding:9px 8px;font-size:12px}.plan-workspace-heading{gap:10px}.plan-workspace-controls{width:100%}.plan-workspace-controls label{flex:1;min-width:0}.plan-workspace-controls select{width:100%}.plan-workspace-tabs{gap:15px;font-size:13px}.plan-create-choices{grid-template-columns:1fr}.compact-plan table,.compact-plan tbody,.compact-plan tr,.compact-plan td,.compact-plan th{display:block;width:auto!important}.compact-plan thead{display:none}.compact-plan tbody th{padding:12px;border-top:2px solid #dce3e8}.compact-plan td{padding:9px 12px;border-right:0}.compact-plan td.compact-plan-outside{display:none}.compact-plan time{font-size:12px}.compact-workout{font-size:14px}.compact-workout span{font-size:13px}.compact-add{min-height:36px;font-size:12px}.compact-workout-editor fieldset{display:block}.plan-review-actions{flex-direction:column;align-items:stretch;padding:10px}.plan-review-actions>div{justify-content:flex-end}.plan-review-actions button{font-size:12px;padding:8px}.schedule-day--outside{display:none}}.nutrition-month{min-width:0}.nutrition-month-weekdays,.nutrition-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.nutrition-month-weekdays{padding:0 0 7px;color:var(--color-text-secondary);font-size:11px;text-align:center}.nutrition-month-grid{gap:1px;overflow:hidden;border:1px solid var(--color-border);border-radius:10px;background:var(--color-border)}.nutrition-month-day{min-width:0;min-height:84px;padding:8px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;border:0;background:#fff;color:var(--color-text-primary);font:inherit;cursor:pointer;text-align:left}.nutrition-month-day time{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font-size:12px}.nutrition-month-day strong{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.nutrition-month-day small{font-size:10px;color:var(--color-text-secondary)}.nutrition-month-day.is-outside{background:#f6f7f6;color:var(--color-text-secondary)}.nutrition-month-day.is-upcoming strong{color:#a5aead}.nutrition-month-day[aria-current=date] time{background:var(--color-accent);color:#fff}.nutrition-month-day[aria-pressed=true]{background:#e9f1ed;box-shadow:inset 0 0 0 2px var(--color-accent)}.nutrition-month-day:focus-visible{outline:2px solid var(--color-accent);outline-offset:-3px}.nutrition-month-legend{margin:8px 0 0;font-size:11px;color:var(--color-text-secondary)}@media(max-width:600px){.nutrition-month-day{min-height:75px;padding:5px 3px}.nutrition-month-day strong{font-size:11px;letter-spacing:-.3px}.nutrition-month-day small{font-size:9px}.nutrition-month-day time{width:21px;height:21px;font-size:11px}}.garmin-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-block:1rem}.garmin-confirm{border:1px solid var(--border-color, #53635b);border-radius:.75rem;padding:1rem;margin-block:1rem}.garmin-confirm button{margin:.25rem}.garmin-steps{padding-block:12px;border-top:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--text-xs);line-height:var(--leading-normal);overflow-wrap:anywhere}.garmin-steps .garmin-steps-heading{margin:0;font-size:var(--text-sm);line-height:var(--leading-snug);font-weight:var(--font-weight-semibold)}.garmin-steps p{margin:6px 0 0}.garmin-steps .muted-copy{color:var(--color-text-secondary)}.garmin-step-values{display:grid;gap:8px;margin:10px 0}.garmin-step-values div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.garmin-step-values dt{min-width:0;color:var(--color-text-secondary)}.garmin-step-values dd{flex-shrink:0;margin:0;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.garmin-activity-list ul{list-style:none;padding:0}.garmin-activity-list li{display:grid;gap:.3rem;padding-block:.75rem;border-top:1px solid var(--border-color, #53635b)}.garmin-local-preview{max-width:800px;margin:2rem auto;padding:1rem}.gg-landing{--gg-ink: #23291f;--gg-muted: #60675a;--gg-green: #315b27;--gg-line: #dfe3d8;background:#fafbf7;color:var(--gg-ink);font-size:15px;overflow-wrap:break-word}.gg-landing h1,.gg-landing h2,.gg-landing h3,.gg-landing h4,.gg-landing p,.gg-landing figure{margin:0}.gg-landing h1,.gg-landing h2{font-weight:600;letter-spacing:-.055em;line-height:1.06}.gg-landing h2{font-size:clamp(32px,3.5vw,48px)}.gg-landing h3{font-size:19px;font-weight:600;letter-spacing:-.025em}.gg-landing a,.gg-landing button{-webkit-tap-highlight-color:transparent}.gg-landing a:focus-visible,.gg-landing button:focus-visible,.gg-landing [tabindex]:focus-visible{outline:3px solid #7656b4;outline-offset:5px}.gg-container{width:min(1248px,calc(100% - 96px));margin-inline:auto}.gg-header{min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--gg-line)}.gg-brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-weight:750;font-size:23px;letter-spacing:-.06em}.gg-brand img{object-fit:contain}.gg-brand-dot{color:#568b30}.gg-nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:550}.gg-nav>a:not(.gg-button):hover,.gg-footer nav a:hover{text-decoration:underline;text-underline-offset:5px}.gg-button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:50px;padding:14px 22px;border-radius:8px;color:#fff;background:var(--gg-green);font-size:14px;font-weight:600;box-shadow:0 2px 3px #23351a10;transition:background .16s ease,transform .16s ease}.gg-button:hover{background:#23451b;transform:translateY(-2px)}.gg-nav .gg-button{min-height:44px;padding:11px 17px;font-size:13px}.gg-menu-toggle{display:none}.gg-skip{position:absolute;top:10px;left:15px;transform:translateY(-200%);z-index:10;background:#fff;padding:12px}.gg-skip:focus{transform:none}.gg-hero{display:grid;grid-template-columns:1.08fr 1fr;gap:15px;align-items:center;padding-block:88px 94px}.gg-eyebrow{font-size:10px;font-weight:650;letter-spacing:.13em;color:var(--gg-green)}.gg-hero .gg-eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:24px}.gg-hero .gg-eyebrow>span{width:7px;height:7px;border-radius:50%;background:#689a42}.gg-hero h1{font-size:clamp(48px,5.5vw,78px)}.gg-hero h1>span{color:var(--gg-green)}.gg-intro{max-width:495px;margin-top:24px!important;color:var(--gg-muted);line-height:1.75;font-size:16px}.gg-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px}.gg-text-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#bbc3b2}.gg-text-link:hover{text-decoration-color:var(--gg-green)}.gg-hero-note{font-size:11px;color:var(--gg-muted);margin-top:17px!important}.gg-hero-art{position:relative;background:#fcf3e6;border-radius:50% 50% 16px 16px;padding-top:62px;overflow:hidden;align-self:center}.gg-hero-art img{width:100%;height:auto;display:block;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 91%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 91%,transparent)}.gg-art-caption{text-align:center;font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1.7}.gg-art-caption>span:first-child{display:block;font-size:24px;color:#5f7f37;margin-bottom:8px}.gg-art-caption>span:last-child{color:#6f795e}.gg-hero-art figcaption{text-align:center;padding:16px 10px 25px;font-size:11px;color:#6a705e}.gg-preview-section{padding-bottom:85px;scroll-margin-top:24px}.gg-section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.gg-section-heading .gg-eyebrow{margin-bottom:15px}.gg-section-heading h2{font-size:clamp(30px,3vw,40px)}.gg-section-heading h2 span{color:#737b68}.gg-section-heading>p{color:var(--gg-muted);font-size:14px;line-height:1.7}.gg-calendar{background:#fff;border:1px solid #dce2d4;border-radius:14px;box-shadow:0 16px 45px #24391709,0 2px 4px #24391705;overflow:hidden}.gg-calendar-top{padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--gg-line)}.gg-overline{font-size:9px;letter-spacing:.12em;font-weight:600;color:var(--gg-muted)}.gg-calendar-top h3{margin-top:3px;font-size:21px}.gg-sample-label{border:1px solid var(--gg-line);border-radius:5px;padding:5px 9px;color:var(--gg-muted);font-size:10px}.gg-calendar-week{padding:18px 26px;display:flex;align-items:center;justify-content:space-between;gap:15px}.gg-calendar-week>div:first-child{display:flex;gap:15px;font-size:12px}.gg-calendar-week>div:first-child>span{color:var(--gg-muted)}.gg-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:10px;color:var(--gg-muted)}.gg-legend .gg-key-label{color:#704ba3}.gg-days{margin:0;padding:0 18px 20px;list-style:none;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.gg-day{min-width:0}.gg-day-date{display:flex;align-items:baseline;gap:8px;padding:6px 8px 12px;font-size:10px;color:var(--gg-muted)}.gg-day-date>strong{color:var(--gg-ink);font-size:17px;font-weight:550}.gg-workout{padding:13px 10px;min-height:196px;background:#f1f6ec;border:1px solid #dee8d6;border-radius:7px;display:flex;flex-direction:column;align-items:start}.gg-workout-status{font-size:10px;color:#436238;font-weight:550}.gg-workout h4{font-size:12px;margin-top:13px;font-weight:650}.gg-distance{margin-top:6px!important;font-size:21px;font-weight:600;letter-spacing:-.04em}.gg-distance span{font-size:9px;color:var(--gg-muted);font-weight:400;letter-spacing:normal}.gg-workout-note{margin-block:8px 12px!important;font-size:11px;color:var(--gg-muted);line-height:1.6}.gg-actual{margin-top:auto;font-size:10px;color:#3e6230}.gg-session-tag{margin-top:5px;color:#704ba3;font-size:9px}.gg-workout-key{background:#f3eefb;border-color:#e4d9f2}.gg-workout-key .gg-workout-status{color:#704ba3}.gg-workout-rest{background:#fafbf8;border-style:dashed}.gg-workout-rest .gg-workout-status{color:var(--gg-muted)}.gg-week-progress{padding:20px 26px;border-top:1px solid var(--gg-line);display:flex;justify-content:space-between;align-items:center;gap:25px;background:#fdfefb}.gg-week-stats{display:flex;flex-wrap:wrap;gap:25px;font-size:11px;color:var(--gg-muted)}.gg-week-stats strong{color:var(--gg-ink);font-weight:650}.gg-progress-wrap{display:flex;align-items:center;gap:12px;font-size:10px;color:var(--gg-muted)}.gg-progress-wrap progress{appearance:none;border:0;background:#e8eddf;border-radius:8px;width:100px;height:6px;overflow:hidden}.gg-progress-wrap progress::-webkit-progress-bar{background:#e8eddf}.gg-progress-wrap progress::-webkit-progress-value{background:#608c3d;border-radius:8px}.gg-progress-wrap progress::-moz-progress-bar{background:#608c3d}.gg-preview-note{text-align:center;margin-top:17px!important;font-size:10px;color:var(--gg-muted)}.gg-how{background:#eff3e8;border-block:1px solid #e5eadc;padding-block:76px 82px;scroll-margin-top:20px}.gg-how h2{margin-top:18px}.gg-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:54px;margin-top:48px}.gg-step-number{display:inline-block;padding-bottom:12px;border-bottom:1px solid #b5c4a6;width:100%;color:#64804c;font-size:12px}.gg-steps h3{margin-top:22px}.gg-steps p{margin-top:12px;color:var(--gg-muted);line-height:1.8;font-size:14px;max-width:320px}.gg-features{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;padding-block:96px;scroll-margin-top:20px}.gg-feature-intro h2{margin-top:20px}.gg-feature-intro>p:not(.gg-eyebrow){margin-top:22px;max-width:330px;color:var(--gg-muted);line-height:1.8}.gg-feature-intro>a{margin-top:20px}.gg-feature-list article{display:flex;gap:22px;padding-block:23px;border-bottom:1px solid var(--gg-line)}.gg-feature-list article:first-child{padding-top:0}.gg-feature-icon{flex:0 0 38px;height:38px;border:1px solid #dfe6d7;background:#eff3e9;border-radius:10px;display:grid;place-items:center;font-size:20px;color:#507038}.gg-feature-list h3{font-size:17px}.gg-feature-list p{color:var(--gg-muted);font-size:13px;line-height:1.8;margin-top:7px}.gg-final{padding:50px 24px;border:1px solid #dfe6d7;background:#eff3e8;border-radius:16px;text-align:center}.gg-final>img{object-fit:contain;margin-bottom:20px}.gg-final h2{margin-block:18px 26px;font-size:clamp(30px,3.2vw,44px)}.gg-final>p:last-child{margin-top:15px;font-size:11px;color:var(--gg-muted)}.gg-footer{padding-block:56px 30px;display:flex;justify-content:space-between;align-items:center;gap:24px}.gg-footer .gg-brand{font-size:19px}.gg-footer p,.gg-footer>span{font-size:10px;color:var(--gg-muted)}.gg-footer p{margin-top:9px}.gg-footer nav{display:flex;gap:24px;font-size:12px}@media(max-width:1100px){.gg-container{width:calc(100% - 64px)}.gg-nav{gap:20px}.gg-hero{padding-block:64px}.gg-hero-actions{gap:8px 18px}.gg-hero h1{font-size:58px}.gg-days{gap:5px;padding-inline:12px}.gg-workout{padding-inline:7px}.gg-features{gap:55px}.gg-week-progress{flex-wrap:wrap}}@media(max-width:800px){.gg-header{min-height:84px;position:relative}.gg-menu-toggle{display:flex;gap:15px;align-items:center;min-height:44px;border:1px solid var(--gg-line);border-radius:6px;background:transparent;padding:8px 12px;font-size:13px;color:var(--gg-ink)}.gg-nav{display:none;position:absolute;left:0;right:0;top:76px;z-index:5;padding:20px;background:#fafbf7;border:1px solid var(--gg-line);border-radius:10px;box-shadow:0 12px 30px #24391715}.gg-nav-open{display:flex;flex-direction:column;align-items:stretch;gap:6px}.gg-nav>a:not(.gg-button){padding:12px}.gg-hero{grid-template-columns:1fr 1fr;gap:18px}.gg-hero h1{font-size:48px}.gg-intro{font-size:14px}.gg-hero .gg-eyebrow{font-size:8px}.gg-hero-art{padding-top:35px}.gg-calendar-week{align-items:start;flex-direction:column}.gg-days{display:block;padding-inline:24px}.gg-day{display:grid;grid-template-columns:50px 1fr;gap:12px;padding-block:6px}.gg-day-date{flex-direction:column;gap:0;align-items:center;padding-top:10px}.gg-workout{min-height:0;padding:12px 16px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 12px}.gg-workout h4{grid-row:1;font-size:13px;margin:0}.gg-workout-status{grid-column:2;grid-row:1}.gg-distance{margin:0!important;font-size:18px}.gg-workout-note{grid-column:1;margin:0!important}.gg-actual{grid-column:2;grid-row:2}.gg-session-tag{grid-column:2;margin:0}.gg-workout-rest .gg-workout-note{grid-column:1 / -1}.gg-steps{gap:26px}.gg-steps h3{font-size:17px}.gg-features{gap:38px;padding-block:72px}.gg-footer{flex-wrap:wrap}}@media(max-width:600px){.gg-container{width:calc(100% - 40px)}.gg-brand{font-size:21px;gap:8px}.gg-brand img{width:35px}.gg-hero{grid-template-columns:1fr;padding-block:46px 48px;gap:34px}.gg-hero h1{font-size:clamp(43px,12vw,66px)}.gg-hero .gg-eyebrow{font-size:9px;margin-bottom:20px}.gg-intro{font-size:15px;margin-top:20px!important}.gg-hero-actions{gap:12px;margin-top:24px}.gg-hero-actions>a{width:100%;justify-content:center}.gg-hero-note{text-align:center;font-size:10px}.gg-hero-art{padding-top:24px;border-radius:48% 48% 12px 12px}.gg-art-caption{font-size:9px}.gg-art-caption>span:first-child{font-size:20px;margin-bottom:3px}.gg-hero-art figcaption{padding:10px 5px 18px;font-size:10px}.gg-section-heading{display:block;margin-bottom:24px}.gg-section-heading>p{margin-top:18px;font-size:13px}.gg-desktop-break{display:none}.gg-calendar-top{padding:20px 16px;align-items:start;flex-direction:column;gap:12px}.gg-calendar-top h3{font-size:20px}.gg-calendar-week{padding:16px;gap:12px}.gg-calendar-week>div:first-child{flex-wrap:wrap;gap:5px 12px;font-size:11px}.gg-legend{gap:10px;font-size:9px}.gg-days{padding:0 10px 14px}.gg-day{grid-template-columns:34px 1fr;gap:5px}.gg-workout{padding:12px 10px;gap:5px}.gg-workout h4{font-size:12px}.gg-workout-note{font-size:11px}.gg-workout-status,.gg-actual{font-size:10px}.gg-week-progress{padding:16px;gap:14px}.gg-week-stats{gap:9px 16px;font-size:10px}.gg-preview-section{padding-bottom:48px}.gg-preview-note{line-height:1.7}.gg-how{padding-block:48px}.gg-steps{grid-template-columns:1fr;margin-top:32px;gap:30px}.gg-steps h3{margin-top:16px;font-size:19px}.gg-steps p{max-width:none;margin-top:9px}.gg-features{grid-template-columns:1fr;padding-block:52px;gap:36px}.gg-feature-list article{gap:16px}.gg-feature-list h3{font-size:16px}.gg-final{padding:36px 18px}.gg-final h2{font-size:29px}.gg-final .gg-eyebrow{font-size:8px}.gg-footer{align-items:start;flex-direction:column;padding-block:36px 28px}.gg-footer nav{flex-wrap:wrap;gap:20px}.gg-footer nav a{display:inline-flex;align-items:center;min-height:44px}}@media(prefers-reduced-motion:reduce){.gg-landing *,.gg-landing *:before,.gg-landing *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.gg-button:hover{transform:none}}:root{color-scheme:light;font-family:var(--font-sans);line-height:var(--leading-normal);font-weight:var(--font-weight-regular);--font-sans: "Inter Variable", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.5;--tracking-normal: 0;--tracking-tight-label: .025em;--tracking-label: .04em;--tracking-wide-label: .08em;--color-bg: #f4f6f8;--color-bg-strong: #e9eef2;--color-surface: #ffffff;--color-surface-solid: #ffffff;--color-surface-elevated: #ffffff;--color-surface-muted: #f7f9fa;--color-text-primary: #17232e;--color-text-secondary: #425466;--color-text-muted: #6b7b8a;--color-border: #dce3e8;--color-border-strong: #c8d2da;--color-accent: #0f5963;--color-accent-strong: #0a4650;--color-accent-soft: #e8f2f3;--color-success: #247044;--color-success-soft: #e8f3ec;--color-warning: #96641f;--color-warning-soft: #f7f0df;--color-danger: #a34040;--color-danger-soft: #f8eaea;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(18, 28, 34, .04);--shadow-md: 0 2px 8px rgba(18, 28, 34, .06);--shadow-lg: 0 8px 24px rgba(18, 28, 34, .1);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 2rem;--space-8: 2.5rem;--space-9: 3rem;--max-copy: 66ch}.calendar-date-labels{display:flex;flex-wrap:wrap;gap:.3rem .4rem;min-width:0}.calendar-date-label{--calendar-date-label-background: var(--color-surface-muted);display:inline-flex;align-items:center;gap:.35rem;min-width:0;max-width:100%;padding:.22rem .46rem;border:0;border-radius:var(--radius-sm);background:var(--calendar-date-label-background);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-weight-regular);line-height:var(--leading-snug)}.calendar-date-label--interactive:hover{filter:brightness(.98)}.calendar-date-label--race{--calendar-date-label-background: color-mix(in srgb, var(--color-accent-soft) 55%, var(--color-surface));color:var(--color-text-secondary)}.calendar-date-label__emoji{flex:0 0 auto;line-height:1}.calendar-date-label__open{display:inline-flex;align-items:center;gap:.35rem;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;line-height:inherit;text-align:left}.calendar-date-label__text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-regular)}.calendar-date-label--removable{position:relative}.calendar-date-label__remove{position:absolute;top:50%;right:.14rem;display:inline-grid;width:.8rem;height:.8rem;place-items:center;padding:0;border:0;border-radius:var(--radius-pill);background:var(--calendar-date-label-background);box-shadow:-.18rem 0 0 var(--calendar-date-label-background);color:var(--color-text-muted);font:inherit;font-size:.9rem;line-height:1;cursor:pointer;opacity:0;transform:translateY(-50%);transition:background .14s ease,color .14s ease,opacity .14s ease}.calendar-date-label:hover .calendar-date-label__remove,.calendar-date-label:focus-within .calendar-date-label__remove{opacity:1}.calendar-date-label__remove:hover{background:var(--color-danger-soft);box-shadow:-.18rem 0 0 var(--color-danger-soft);color:var(--color-danger);opacity:1}.calendar-date-label__remove:focus-visible{opacity:1}.calendar-date-label__remove:disabled{cursor:wait;opacity:.35}.calendar-date-labels--compact{display:grid;gap:.25rem}.calendar-date-labels--compact .calendar-date-label{width:fit-content;max-width:100%;padding:.16rem .36rem;font-size:var(--text-2xs)}@media(hover:none){.calendar-date-label--removable{padding-right:1.2rem}.calendar-date-labels--compact .calendar-date-label--removable{padding-right:1.1rem}.calendar-date-label__remove{opacity:1}}.calendar-date-label--more{color:var(--color-text-muted);font-weight:var(--font-weight-regular)}.calendar-label-detail-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:var(--space-5);background:#1f2f3847;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.calendar-label-detail-dialog{width:min(100%,420px);max-height:min(80vh,620px);overflow-y:auto;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-elevated);box-shadow:var(--shadow-lg)}.calendar-label-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.calendar-label-detail-header h2{margin:.2rem 0 0;font-size:var(--text-xl);line-height:var(--leading-tight);overflow-wrap:anywhere}.calendar-label-detail-list{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.45rem .8rem;margin:var(--space-5) 0 0}.calendar-label-detail-list dt{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase}.calendar-label-detail-list dd{min-width:0;margin:0;overflow-wrap:anywhere}.calendar-label-detail-notes{white-space:pre-wrap}.calendar-label-detail-empty{margin:var(--space-5) 0 0;color:var(--color-text-muted)}.calendar-label-detail-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5)}.calendar-label-detail-delete{color:var(--color-danger)}.month-day-tile__labels{margin-bottom:.24rem}.calendar-day-card-labels{grid-column:1 / -1;padding:.58rem .65rem 0}.calendar-detail-date-labels{padding:0 var(--space-5) var(--space-3)}.calendar-edit-labels{display:grid;gap:.65rem;min-width:0;margin:0;padding:.85rem;border:1px solid var(--color-border);border-radius:.75rem}.calendar-edit-labels legend{padding:0 .25rem;font-weight:800}.calendar-edit-labels__help,.calendar-edit-labels__empty{margin:0;color:var(--color-text-muted);font-size:.82rem}.calendar-edit-label-presets,.calendar-edit-label-list{display:flex;flex-wrap:wrap;gap:.45rem}.calendar-edit-label-list{display:grid}.calendar-edit-label-row{display:grid;gap:.7rem;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.calendar-edit-label-row__heading,.calendar-edit-label-composer__heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.calendar-edit-label-row__heading strong{min-width:0;overflow-wrap:anywhere}.calendar-edit-label-row__remove{flex:0 0 auto}.calendar-edit-label-fields{display:grid;grid-template-columns:5.5rem minmax(0,1fr) 8rem;gap:.5rem}.calendar-edit-label-field--location{grid-column:2 / -1}.calendar-edit-label-field--notes{grid-column:1 / -1}.calendar-edit-label-field--notes textarea{min-height:4.75rem}.calendar-edit-label-composer{display:grid;gap:.7rem;padding:.75rem;border-radius:var(--radius-md);background:var(--color-surface-muted)}.calendar-edit-label-composer__heading{align-items:baseline}.calendar-edit-label-composer__heading span{color:var(--color-text-muted);font-size:var(--text-xs);text-align:right}.calendar-edit-label-composer__add{justify-self:end;padding-top:.15rem}@media(max-width:640px){.calendar-edit-label-fields{grid-template-columns:5rem minmax(0,1fr)}.calendar-edit-label-field--time,.calendar-edit-label-field--location,.calendar-edit-label-field--notes{grid-column:1 / -1}.calendar-edit-label-composer__heading{align-items:flex-start;flex-direction:column}.calendar-edit-label-composer__heading span{text-align:left}}*{box-sizing:border-box}html{min-width:320px}body{margin:0;min-height:100vh;font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-weight-regular);line-height:var(--leading-normal);color:var(--color-text-primary);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button,input,textarea{font-family:var(--font-sans);font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,[role=button]:focus-visible,section[role=dialog]:focus-visible{outline:2px solid rgba(15,89,99,.42);outline-offset:2px}.screen-shell{min-height:100vh;display:grid;place-items:center;padding:var(--space-8)}.hero-card,.panel,.summary-card,.integration-card,.day-card{border:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-md)}.hero-card{max-width:760px;padding:var(--space-9);border-radius:var(--radius-lg)}.hero-card h1{margin:.35rem 0 1rem;font-size:clamp(2.35rem,4vw,4rem);line-height:.95;letter-spacing:var(--tracking-normal)}.hero-copy{max-width:42rem;margin:0 0 var(--space-6);color:var(--color-text-secondary);font-size:1.03rem}.eyebrow{margin:0;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wide-label);text-transform:uppercase;color:var(--color-warning)}.app-shell{width:min(100%,1520px);min-height:100vh;margin:0 auto;padding:var(--space-5) var(--space-6) var(--space-8)}.app-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5);border-radius:calc(var(--radius-lg) - 2px);border:1px solid var(--color-border);background:#fffcf6b8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-sm)}.app-header-brand{display:grid;gap:.2rem}.app-header h1{margin:.1rem 0 0;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.05;letter-spacing:var(--tracking-normal)}.header-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.primary-nav{display:inline-flex;gap:.35rem;padding:.35rem;border-radius:var(--radius-pill);border:1px solid rgba(31,47,56,.08);background:#ffffff80;box-shadow:inset 0 1px #ffffff73}.primary-nav a{padding:.58rem .9rem;border-radius:var(--radius-pill);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);transition:background .14s ease,color .14s ease,transform .14s ease}.primary-nav a:hover{transform:translateY(-1px);background:#145d6312}.primary-nav a.active{background:linear-gradient(135deg,var(--color-accent) 0%,#1d6d74 100%);color:#fff;box-shadow:0 10px 20px #145d6338}.header-signout{color:var(--color-text-secondary)}.app-main,.panel-stack{display:grid;gap:var(--space-4)}.panel,.summary-card,.integration-card{border-radius:var(--radius-md)}.panel{padding:var(--space-6)}.summary-card,.integration-card{padding:var(--space-5)}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);margin-bottom:var(--space-5)}.panel-heading h2,.panel-heading h3,.summary-card h2,.summary-card h3,.integration-card h3,.day-card h3{margin:.2rem 0 0}.primary-button,.secondary-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.82rem 1.05rem;border-radius:var(--radius-pill);border:1px solid transparent;font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);transition:transform .14s ease,background .14s ease,border-color .14s ease,box-shadow .14s ease,color .14s ease,opacity .14s ease}.primary-button{color:#fff;background:linear-gradient(135deg,var(--color-accent) 0%,#20757a 100%);box-shadow:0 14px 26px #145d6338}.secondary-button{color:var(--color-accent);background:#145d6312;border-color:#145d631f}.ghost-button{color:var(--color-text-primary);background:#ffffff94;border-color:#1f2f3814}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.ghost-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #121c2214}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{opacity:.55}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;padding:0;flex:0 0 auto;border-radius:var(--radius-pill);border:1px solid rgba(20,93,99,.12);background:#ffffffd1;color:var(--color-accent);box-shadow:0 7px 16px #121c2214;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,background .14s ease,color .14s ease,opacity .14s ease}.icon-button:hover:not(:disabled){transform:translateY(-1px);border-color:#145d6333;background:#145d6314;box-shadow:0 10px 18px #121c221a}.icon-button:disabled{opacity:.55}.icon-button svg{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.button-disabled{opacity:.55}.integration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}.integration-card p,.summary-card p,.panel p{margin-top:0}.pace-chart{display:grid;gap:var(--space-4);padding:var(--space-5);border-radius:calc(var(--radius-md) - 4px);border:1px solid var(--color-border);background:#ffffff8c}.pace-chart-header{display:grid;gap:.35rem}.pace-chart-header h3{margin:.15rem 0 0}.pace-chart-table{display:grid;gap:.7rem}.pace-chart-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-bottom:.7rem;border-bottom:1px solid var(--color-border)}.pace-chart-row:last-child{padding-bottom:0;border-bottom:0}.pace-chart-label{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.pace-chart-value{text-align:right;font-variant-numeric:tabular-nums}.stack-form{display:grid;gap:var(--space-4)}.field{display:grid;gap:.45rem}.field span{font-weight:var(--font-weight-medium)}.field input,.field textarea{width:100%;border-radius:var(--radius-sm);border:1px solid rgba(31,47,56,.12);background:#fffc;color:var(--color-text-primary);padding:.95rem 1rem;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.field textarea{resize:vertical}.field input:focus-visible,.field textarea:focus-visible{border-color:#145d6347;box-shadow:0 0 0 4px #145d6317;background:#fffffff5}.field-with-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2)}.field-with-unit>span{color:var(--color-text-secondary);font-size:var(--text-sm)}.muted-copy{color:var(--color-text-muted)}.error-copy{margin:0;color:var(--color-danger)}.status-chip{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;flex-shrink:0;padding:.28rem .5rem;border-radius:var(--radius-pill);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase;max-width:100%;line-height:var(--leading-tight);text-align:center;white-space:nowrap;border:1px solid transparent;font-variant-numeric:tabular-nums}.status-chip.success,.status-chip--done{color:var(--color-success);background:var(--color-success-soft);border-color:#2d6a4f29}.status-chip.warning,.status-chip--pending,.status-chip--reviewed-done,.status-chip--adjusted,.status-chip--review{color:var(--color-warning);background:var(--color-warning-soft);border-color:#bf6d2029}.status-chip--next{color:var(--color-accent);background:#145d631a;border-color:#145d6329}.status-chip--rest{color:var(--color-text-secondary);background:#1f2f380d;border-color:#1f2f3814}.status-chip--skipped{color:var(--color-danger);background:var(--color-danger-soft);border-color:#9b483529}.status-chip--button{appearance:none;margin:0;font-family:inherit;cursor:pointer}.status-chip--button:hover,.status-chip--button:focus-visible{border-color:#bf6d2057;box-shadow:0 0 0 3px #bf6d201f;outline:none}.calendar-page{display:grid;gap:var(--space-4)}.week-planner{display:grid;gap:var(--space-3);padding:var(--space-5);background:linear-gradient(135deg,#fffdf9fa,#f7f0e6f0),var(--color-surface-elevated)}.week-planner-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);position:sticky;top:var(--space-3);z-index:15;margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) 0;padding:var(--space-2);border-radius:14px;background:#fffaf3eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.week-planner-heading{display:grid;gap:.35rem;min-width:0}.week-planner-title-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.week-planner-title-row h2{margin:0;font-size:var(--text-2xl);font-weight:var(--font-weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-normal);min-width:0;overflow-wrap:anywhere}.week-planner-phase{display:inline-flex;align-items:center;justify-content:center;padding:.42rem .72rem;border-radius:var(--radius-pill);background:#145d6314;color:var(--color-accent);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase;max-width:100%;line-height:var(--leading-tight);text-align:center;white-space:nowrap}.week-planner-controls{display:flex;align-items:center;justify-content:flex-end;min-width:0}.week-planner-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.calendar-toolbar-title{display:inline-flex;align-items:center;min-height:2.45rem;padding:.46rem .72rem;border-radius:10px;border:1px solid rgba(31,47,56,.08);background:#ffffff94;color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);white-space:nowrap;font-variant-numeric:tabular-nums}.week-planner-nav{justify-content:flex-end}.coach-panel-state,.panel-state{margin:0;color:var(--color-text-secondary)}.activity-sync-status{margin:0;padding:.7rem .85rem;border:1px solid rgba(180,91,24,.2);border-radius:10px;background:#fff4e5b8;color:var(--color-text-secondary);font-size:var(--text-sm)}.coach-hub{display:grid;gap:var(--space-4);padding:var(--space-5);background:linear-gradient(180deg,#fffcf7fa,#f7f0e7f0),var(--color-surface-elevated)}.coach-hub-header{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4)}.coach-hub-header h3{margin:.15rem 0 0;font-size:1.16rem}.coach-hub-header-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.coach-hub-refresh{white-space:nowrap}.coach-hub-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.95fr);gap:var(--space-4);align-items:start}.coach-hub-column{padding:var(--space-4);border-radius:20px;border:1px solid rgba(31,47,56,.08);background:#ffffff9e;box-shadow:inset 0 1px #ffffff80}.coach-summary-column{min-height:100%}.coach-pane-label{margin:0 0 .55rem;color:var(--color-warning);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.coach-memo-meta{margin:0;color:var(--color-text-muted);font-size:.82rem;text-align:right}.coach-summary-body{max-width:min(72ch,100%);display:grid;gap:var(--space-3)}.coach-markdown>*{margin:0}.coach-summary-body p{margin:0;line-height:1.74}.coach-markdown p,.coach-markdown li{line-height:1.72}.coach-markdown strong{color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.coach-markdown-heading{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-weight-bold);line-height:var(--leading-snug)}.coach-markdown-heading:not(:first-child){margin-top:var(--space-2)}.coach-markdown-list{display:grid;gap:.4rem;padding-left:1.25rem}.coach-inline-note{margin:0;padding:.85rem .95rem;border-radius:var(--radius-sm);background:#145d630d;color:var(--color-text-secondary)}.coach-checkin-column{padding:0;background:#ffffffb8}.coach-checkin-card,.coach-checkin-form,.coach-checkin-prompt,.coach-checkin-heading{display:grid;gap:var(--space-4)}.coach-checkin-card{padding:var(--space-4)}.coach-checkin-header{display:flex;justify-content:space-between;align-items:start;gap:var(--space-3)}.coach-checkin-heading{gap:.35rem}.coach-checkin-heading h4{margin:0;font-size:1.12rem;line-height:1.2}.coach-checkin-saved{margin:0;color:var(--color-text-muted);font-size:.82rem;text-align:right}.coach-question-text{margin:0;line-height:1.66}.coach-answer-field textarea{min-height:10.5rem;line-height:1.6;background:#ffffffd1}.coach-answer-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}.coach-save-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.coach-save-meta .muted-copy{margin:0}.week-snapshot-card{display:grid;gap:var(--space-3);padding:var(--space-4);border-radius:24px;border:1px solid rgba(31,47,56,.08);background:#ffffff85;box-shadow:inset 0 1px #ffffff7a}.week-snapshot-goal{margin:0;color:var(--color-text-secondary);max-width:var(--max-copy);font-size:var(--text-base);line-height:var(--leading-snug)}.week-snapshot-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.week-metric-card{padding:.8rem .88rem;border-radius:16px;border:1px solid rgba(31,47,56,.08);background:#ffffffad}.week-metric-card span{display:block;margin-bottom:.2rem;color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.week-metric-card strong{font-size:var(--text-md);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.week-snapshot-progress-meta{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.week-snapshot-progress-meta p,.week-snapshot-progress-meta strong{margin:0;font-variant-numeric:tabular-nums}.week-progress{display:grid}.week-progress-track{overflow:hidden;height:11px;border-radius:var(--radius-pill);background:#1f2f3814;box-shadow:inset 0 1px 2px #1f2f380d}.week-progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#bf6d20ad,#145d63b3)}.week-snapshot-footer{display:flex;gap:var(--space-2);flex-wrap:wrap;color:var(--color-text-secondary)}.week-snapshot-footer p{margin:0;padding:.45rem .7rem;border-radius:var(--radius-pill);background:#fff9;font-size:var(--text-sm);line-height:var(--leading-snug)}.coach-memo-card{display:grid;gap:var(--space-3);padding:var(--space-5);background:#fffaf4e6}.coach-memo-header{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4)}.coach-memo-header h3{margin:.15rem 0 0;font-size:1.1rem}.segmented-control{display:inline-flex;gap:.25rem;padding:.25rem;border-radius:var(--radius-pill);border:1px solid rgba(31,47,56,.08);background:#ffffff8f}.segmented-control__button{min-width:72px;padding:.64rem .84rem;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);transition:background .14s ease,color .14s ease,transform .14s ease}.segmented-control__button:hover{transform:translateY(-1px)}.segmented-control__button.active{background:var(--color-text-primary);color:#fff}.calendar-toolbar-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.calendar-grid{display:grid;gap:var(--space-3)}.calendar-grid.week{grid-template-columns:repeat(auto-fit,minmax(min(100%,182px),1fr))}.calendar-grid.month{grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(146px,auto)}.day-card{display:grid;gap:var(--space-3);border-radius:20px;padding:var(--space-4);min-height:0;align-content:start}.calendar-day-card{position:relative;height:100%;min-width:0;grid-template-rows:auto minmax(0,1fr);gap:.9rem;padding:.95rem .95rem 3.1rem;border-radius:var(--radius-sm);background:#fffcf7eb;box-shadow:inset 0 1px #ffffff8f,0 10px 22px #121c220a;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.calendar-day-card:hover{transform:translateY(-1px)}.calendar-day-card--draggable{cursor:grab}.calendar-day-card--draggable:active,.calendar-day-card--dragging{cursor:grabbing}.calendar-day-card--dragging{opacity:.72;transform:scale(.98)}.calendar-day-card--drop-target{border-color:#145d6357;box-shadow:inset 0 0 0 2px #145d6324,0 14px 28px #145d631a}.calendar-day-card--locked{cursor:default}.calendar-day-card--done{border-color:#2d6a4f29;box-shadow:inset 0 3px #2d6a4f29,var(--shadow-sm)}.calendar-day-card--skipped{border-color:#9b483529;box-shadow:inset 0 3px #9b483524,var(--shadow-sm)}.calendar-day-card--next{border-color:#145d6333;box-shadow:inset 0 0 0 1px #145d6314,0 12px 26px #145d631a}.calendar-day-card--rest{background:#fcf8f2e6}.calendar-day-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.65rem;padding-bottom:.68rem;border-bottom:1px solid rgba(31,47,56,.07)}.calendar-day-card-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.36rem;flex-wrap:wrap;min-width:0;max-width:58%}.calendar-day-card-header>div{min-width:0}.calendar-day-card-header h3{margin:0;font-size:var(--text-md);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-normal);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.calendar-day-card-body{display:grid;gap:.82rem;align-content:start;min-height:0}.calendar-day-card-section{display:grid;gap:.42rem}.calendar-day-card-section--primary{gap:.5rem}.calendar-section-heading{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:.34rem .45rem;min-width:0}.day-weekday,.calendar-section-label{margin:0;color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.day-weekday{color:var(--color-warning);font-variant-numeric:tabular-nums}.calendar-primary-workout{margin:0;font-size:var(--text-md);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);overflow-wrap:anywhere}.calendar-workout-type{display:inline-flex;align-items:center;justify-content:center;min-width:0;max-width:100%;padding:.18rem .44rem;border-radius:var(--radius-pill);border:1px solid rgba(20,93,99,.1);background:#145d6312;color:var(--color-accent);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight-label);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-card-meta{display:flex;flex-wrap:wrap;gap:.32rem;min-width:0}.calendar-card-meta>span{display:inline-flex;align-items:center;min-width:0;max-width:100%;padding:.24rem .48rem;border-radius:8px;border:1px solid rgba(31,47,56,.07);background:#ffffff85;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-weight-medium);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.calendar-card-meta__travel{color:var(--color-warning)}.calendar-day-card .muted-copy{margin:0;font-size:var(--text-sm);line-height:1.45;overflow-wrap:anywhere}.calendar-card-edit-button{position:absolute;right:.78rem;bottom:.78rem}.travel-cue{display:inline-flex;align-items:center;justify-content:center;width:1.8rem;height:1.8rem;flex:0 0 auto;border-radius:var(--radius-pill);border:1px solid rgba(191,109,32,.14);background:#bf6d201a;font-size:.95rem;line-height:1}.travel-cue--detail{width:1.65rem;height:1.65rem}.drag-handle,.month-day-tile__drag-handle{width:.62rem;height:.92rem;flex:0 0 auto;border-radius:6px;opacity:.38;background-image:radial-gradient(circle,currentColor 1.25px,transparent 1.6px),radial-gradient(circle,currentColor 1.25px,transparent 1.6px);background-position:0 0,4px 0;background-size:4px 4px;color:var(--color-text-muted);transition:color .14s ease,opacity .14s ease}.calendar-day-card--draggable:hover .drag-handle,.calendar-day-card--draggable:focus-within .drag-handle,.month-day-tile--draggable:hover .month-day-tile__drag-handle,.month-day-tile--draggable:focus-visible .month-day-tile__drag-handle{color:var(--color-accent);opacity:.72}.session-list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.session-list li{display:grid;gap:.18rem;padding:.62rem .72rem;border-radius:14px;border:1px solid rgba(31,47,56,.08);background:#ffffff94}.session-list li.placeholder{border-style:dashed}.session-list strong{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);overflow-wrap:anywhere}.session-list span{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug);overflow-wrap:anywhere}.weather-copy{margin:0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-regular);line-height:1.4;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.calendar-card-weather{display:grid;gap:.24rem;margin:0;color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.36;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.calendar-card-weather span{color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-label);text-transform:uppercase}.actual-result{display:grid;gap:.24rem;margin-top:auto;padding:.68rem .76rem;border-radius:10px;border:1px solid rgba(31,47,56,.06);background:#ffffff80}.actual-result:before{content:"Actual";color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.actual-result p{margin:0;font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--leading-snug);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.calendar-swap-hint{margin:0}.calendar-move-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:.62rem .75rem;border-radius:10px;border:1px solid rgba(20,93,99,.14);background:#145d6314}.calendar-move-banner p{margin:0;color:var(--color-accent-strong);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug)}.month-day-tile{--tile-accent: rgba(31, 47, 56, .16);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.5rem;min-width:0;min-height:146px;padding:.6rem .64rem .58rem;border:1px solid rgba(31,47,56,.085);border-top:3px solid var(--tile-accent);border-radius:8px;background:#fffcf6c2;box-shadow:inset 0 1px #ffffff6b;cursor:pointer;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.month-day-tile:hover{border-color:#1f2f3826;background:#fffdf8eb;transform:translateY(-1px)}.month-day-tile--draggable{cursor:grab}.month-day-tile--draggable:active,.month-day-tile--dragging{cursor:grabbing}.month-day-tile--locked{cursor:default}.month-day-tile--done{background:linear-gradient(180deg,#f7fbf8eb,#fffcf6d1);border-color:#2d6a4f29}.month-day-tile--skipped,.month-day-tile--review{background:linear-gradient(180deg,#fff7ede6,#fffcf6d1)}.month-day-tile--outside-month{opacity:.62}.month-day-tile--today{box-shadow:inset 0 0 0 1px #145d632e,0 8px 18px #145d6311}.month-day-tile--selected,.month-day-tile--move-source{border-color:#145d6357;box-shadow:inset 0 0 0 2px #145d6324,0 10px 22px #145d6314}.month-day-tile--drop-target,.month-day-tile--move-target{border-color:#145d635c;background:#eef9f8eb;box-shadow:inset 0 0 0 2px #145d6326,0 10px 22px #145d631a}.month-day-tile--dragging{opacity:.7;transform:scale(.98)}.month-day-tile--type-recovery{--tile-accent: rgba(71, 126, 89, .62)}.month-day-tile--type-long{--tile-accent: rgba(19, 116, 122, .68)}.month-day-tile--type-lt{--tile-accent: rgba(191, 109, 32, .72)}.month-day-tile--type-ga{--tile-accent: rgba(86, 103, 114, .42)}.month-day-tile--type-rest{--tile-accent: rgba(105, 121, 133, .22)}.month-day-tile__header,.month-day-tile__status,.month-day-tile__footer{display:flex;align-items:center;min-width:0}.month-day-tile__header{justify-content:space-between;gap:.3rem}.month-day-tile__date{min-width:0;color:var(--color-text-secondary);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight-label);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.month-day-tile__status{justify-content:flex-end;gap:.26rem;flex:0 1 auto}.month-day-tile__tag{display:inline-flex;align-items:center;justify-content:center;max-width:4.7rem;padding:.16rem .32rem;border-radius:999px;border:1px solid rgba(191,109,32,.18);background:#bf6d201a;color:var(--color-warning);font-size:.625rem;font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight-label);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-day-tile__tag--next{border-color:#145d632e;background:#145d631a;color:var(--color-accent)}.month-day-tile__tag--review{border-color:#9b483529;background:#9b48351a;color:var(--color-danger)}.month-day-tile__tag--adjusted,.month-day-tile__tag--reviewed-done{border-color:#bf6d202e;background:#bf6d201a;color:var(--color-warning)}.month-day-tile__tag--button{appearance:none;margin:0;font-family:inherit;cursor:pointer}.month-day-tile__tag--button:hover,.month-day-tile__tag--button:focus-visible{border-color:#9b483557;box-shadow:0 0 0 3px #9b48351f;outline:none}.month-day-tile__tag--adjusted.month-day-tile__tag--button:hover,.month-day-tile__tag--adjusted.month-day-tile__tag--button:focus-visible,.month-day-tile__tag--reviewed-done.month-day-tile__tag--button:hover,.month-day-tile__tag--reviewed-done.month-day-tile__tag--button:focus-visible{border-color:#bf6d2057;box-shadow:0 0 0 3px #bf6d201f}.month-day-tile__body{display:grid;align-content:start;gap:.2rem;min-width:0}.month-day-tile__title,.month-day-tile__detail,.month-day-tile__secondary,.month-day-tile__actual,.month-day-tile__weather{margin:0;min-width:0;overflow-wrap:anywhere}.month-day-tile__title{color:var(--color-text-primary);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:1.28;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.month-day-tile__detail{color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-regular);line-height:var(--leading-snug);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.month-day-tile__secondary{margin:.15rem 0 0;padding-top:.2rem;border-top:1px solid var(--color-border);color:var(--color-accent-strong);font-size:var(--text-xs);font-weight:var(--font-weight-regular);line-height:var(--leading-snug)}.month-day-tile__footer{display:grid;gap:.2rem;align-self:end}.month-day-tile__actual,.month-day-tile__weather{color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-medium);line-height:var(--leading-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.month-day-tile__actual{color:#36745b;font-weight:var(--font-weight-medium)}.calendar-detail-overlay{position:fixed;inset:0;z-index:60;display:flex;justify-content:flex-end;background:#1f2f3847;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.calendar-detail-drawer{width:min(100%,440px);height:100%;overflow-y:auto;padding:var(--space-5);border-left:1px solid rgba(31,47,56,.1);background:linear-gradient(180deg,#fffcf7fa,#f7f0e6f5),var(--color-surface-elevated);box-shadow:-18px 0 42px #121c2221}.calendar-detail-header{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);margin-bottom:var(--space-4)}.calendar-detail-header h2{margin:.2rem 0 0;font-size:var(--text-xl);font-weight:var(--font-weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-normal);font-variant-numeric:tabular-nums}.calendar-detail-close{flex:0 0 auto}.calendar-detail-status-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--leading-snug)}.calendar-detail-section{display:grid;gap:.62rem;padding:var(--space-4) 0;border-top:1px solid rgba(31,47,56,.1)}.calendar-detail-section h3{margin:0;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}.calendar-detail-section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.calendar-detail-copy{margin:0;color:var(--color-text-secondary)}.calendar-detail-list{list-style:none;display:grid;gap:.55rem;margin:0;padding:0}.calendar-detail-list li{display:grid;gap:.2rem;padding:.72rem .78rem;border:1px solid rgba(31,47,56,.08);border-radius:8px;background:#ffffff94}.calendar-detail-list strong{font-weight:var(--font-weight-semibold);line-height:var(--leading-snug)}.calendar-detail-list-title{display:flex;align-items:center;gap:.4rem;min-width:0;color:var(--color-text-primary)}.calendar-detail-list span,.calendar-detail-list p{margin:0;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-regular);line-height:var(--leading-snug)}.calendar-detail-list span{font-variant-numeric:tabular-nums}.calendar-detail-review-button{justify-self:start;appearance:none;border:1px solid rgba(191,109,32,.18);border-radius:var(--radius-pill);background:#bf6d201a;color:var(--color-warning);cursor:pointer;font:inherit;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);padding:.34rem .55rem}.calendar-detail-review-button:hover,.calendar-detail-review-button:focus-visible{border-color:#bf6d2057;box-shadow:0 0 0 3px #bf6d201f;outline:none}.workout-review-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:var(--space-4);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#1f2f3852;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.workout-review-dialog{width:min(100%,460px);max-height:min(calc(100vh - var(--space-4) - var(--space-4)),620px);min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:var(--space-5);border:1px solid rgba(31,47,56,.1);border-radius:8px;background:var(--color-surface-elevated);box-shadow:0 22px 58px #121c222e}.workout-review-header{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);margin-bottom:var(--space-4)}.workout-review-header h2,.workout-review-header p,.workout-review-body h3,.workout-review-body p{margin:0}.workout-review-header h2{margin-top:.18rem;color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--font-weight-bold);line-height:var(--leading-tight)}.workout-review-header p{margin-top:.24rem;color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.workout-review-close{flex:0 0 auto}.workout-review-body{display:grid;gap:var(--space-3)}.workout-review-body section{display:grid;gap:.38rem;padding-top:var(--space-3);border-top:1px solid rgba(31,47,56,.1)}.workout-review-body h3{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);line-height:var(--leading-tight);text-transform:uppercase}.workout-review-score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.workout-review-body .workout-review-score-card{align-content:start;padding:var(--space-3);border:1px solid rgba(20,93,99,.18);border-radius:8px;background:#145d630d}.workout-review-score-card h3{color:var(--color-accent)}.workout-review-score-card strong{color:var(--color-text-primary);font-size:var(--text-xl);font-variant-numeric:tabular-nums;line-height:1}.workout-review-score-card strong span{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--font-weight-semibold)}.workout-review-refresh{grid-template-columns:minmax(0,1fr) auto;align-items:center}.workout-review-refresh .error-copy{grid-column:1 / -1}.workout-review-body p{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug)}.calendar-detail-note-grid{display:grid;gap:.5rem}.calendar-detail-note-grid p{display:grid;gap:.12rem;margin:0}.calendar-detail-note-grid strong{font-size:var(--text-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-tight-label);color:var(--color-text-muted)}.calendar-detail-note-grid span{color:var(--color-text-secondary)}.calendar-detail-reschedule{display:grid;gap:var(--space-3);padding:.82rem;border-radius:8px;border:1px solid rgba(20,93,99,.12);background:#145d6312}.calendar-detail-reschedule--locked{border-color:#1f2f3814;background:#1f2f380a}.calendar-detail-reschedule p{margin:0;color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug)}.calendar-edit-overlay{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:var(--space-5);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#1f2f3852;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.calendar-edit-dialog{width:min(100%,560px);max-height:min(calc(100vh - var(--space-5) - var(--space-5)),780px);min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:var(--space-5);border:1px solid rgba(31,47,56,.1);border-radius:18px;background:linear-gradient(180deg,#fffcf7fa,#f7f0e6f7),var(--color-surface-elevated);box-shadow:var(--shadow-lg)}.calendar-edit-header{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4);margin-bottom:var(--space-4)}.calendar-edit-header h2{margin:.2rem 0 0;font-size:var(--text-xl);font-weight:var(--font-weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-normal);font-variant-numeric:tabular-nums}.calendar-edit-form{display:grid;gap:var(--space-4)}.calendar-edit-current{display:grid;gap:.18rem;padding:.72rem .78rem;border:1px solid rgba(31,47,56,.08);border-radius:8px;background:#ffffff94}.calendar-edit-current span,.form-field span{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase}.calendar-edit-current strong{line-height:var(--leading-snug);overflow-wrap:anywhere}.calendar-edit-tag-control{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:.62rem .68rem;border-radius:8px;border:1px solid rgba(191,109,32,.14);background:#f4bf4f1a}.calendar-edit-tag-control__label{display:inline-flex;align-items:center;gap:.42rem;min-width:0;color:var(--color-warning);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight)}.calendar-edit-tag-control .secondary-button{flex:0 0 auto;padding:.58rem .76rem}.form-field{display:grid;gap:.38rem}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid rgba(31,47,56,.12);border-radius:8px;background:#ffffffbd;color:var(--color-text-primary);line-height:var(--leading-snug)}.form-field input,.form-field select{min-height:2.7rem;padding:.62rem .72rem}.form-field textarea{resize:vertical;min-height:6.5rem;padding:.72rem}.form-field input:disabled{color:var(--color-text-muted);background:#1f2f380d}.calendar-edit-weather-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--space-3)}.calendar-edit-weather-preview{margin:0;padding:.65rem .72rem;border-radius:8px;border:1px solid rgba(20,93,99,.12);background:#145d6312;color:var(--color-accent-strong);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);overflow-wrap:anywhere}.calendar-edit-actions{display:flex;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.reschedule-choice-group{display:grid;gap:var(--space-3);margin:0;padding:var(--space-4);border:1px solid rgba(20,93,99,.16);border-radius:10px;background:#145d630d}.reschedule-choice-group legend{padding:0 .35rem;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold)}.reschedule-choice{display:flex;align-items:flex-start;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug)}.reschedule-choice input{margin-top:.15rem}.training-blocks-dialog{width:min(100%,720px)}.training-blocks-form,.training-blocks-list{display:grid;gap:var(--space-4)}.training-blocks-form>.muted-copy{margin:0}.training-block-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-3);margin:0;padding:var(--space-4);border:1px solid rgba(31,47,56,.1);border-radius:12px;background:#ffffff94}.training-block-row legend{padding:0 .35rem;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase}.training-block-name{align-self:end}.training-block-range-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.training-block-range-fields,.training-block-remove{grid-column:1 / -1}.training-block-remove{justify-self:start;color:var(--color-warning)}.training-block-add{justify-self:start}@supports (height: 100dvh){.workout-review-dialog{max-height:min(calc(100dvh - var(--space-4) - var(--space-4)),620px)}.calendar-edit-dialog{max-height:min(calc(100dvh - var(--space-5) - var(--space-5)),780px)}}@media(max-width:430px){.workout-review-score-grid{grid-template-columns:1fr}}.plan-recommendation-card{display:grid;gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-5);border:1px solid rgba(20,93,99,.18);border-left:4px solid var(--color-accent);border-radius:18px;background:linear-gradient(135deg,#e8f4f1db,#fffaf2f0),var(--color-surface-elevated);box-shadow:var(--shadow-sm)}.pfitz-alert-list{display:grid;gap:var(--space-4);margin-top:var(--space-4)}.alerts-page{display:grid;gap:var(--space-4)}.alerts-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-5)}.alerts-page-header h2,.alerts-page-header p,.alerts-empty-state h3,.alerts-empty-state p,.alerts-history-section h3{margin:0}.alerts-page-header>div:first-child{display:grid;gap:var(--space-2)}.alerts-page-header>div:first-child>p:last-child{max-width:44rem;color:var(--color-text-secondary)}.alerts-page-header__actions{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);white-space:nowrap}.alerts-empty-state,.alerts-history-section{display:grid;gap:var(--space-3);padding:var(--space-5)}.alerts-empty-state>p:last-child,.alerts-history-section .muted-copy{color:var(--color-text-secondary)}.alerts-history-list{display:grid;gap:var(--space-2)}.alerts-history-list article{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--space-3);padding:var(--space-3);border:1px solid rgba(31,47,56,.09);border-radius:12px;background:#ffffff80}.alerts-history-list article>div{display:grid;gap:.35rem}.alerts-history-list article p{margin:0;color:var(--color-text-secondary);font-size:var(--text-sm)}.pfitz-alert-card{display:grid;gap:var(--space-4);padding:var(--space-5);border:1px solid rgba(31,47,56,.13);border-left:4px solid #527c80;border-radius:18px;background:linear-gradient(135deg,#f5f9f8f5,#fffbf5f0),var(--color-surface-elevated);box-shadow:var(--shadow-sm)}.pfitz-alert-card--advisory{border-left-color:#b56e25;background:linear-gradient(135deg,#fff8ebf5,#fffcf7f0),var(--color-surface-elevated)}.pfitz-alert-card--important{border-left-color:#b44d2f;background:linear-gradient(135deg,#fff1eaf5,#fffaf6f0),var(--color-surface-elevated)}.pfitz-alert-card--critical{border-left-color:#982f36;background:linear-gradient(135deg,#ffe8e8fa,#fff7f4f5),var(--color-surface-elevated)}.pfitz-alert-card__header,.pfitz-alert-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.pfitz-alert-card__header{justify-content:space-between;align-items:flex-start}.pfitz-alert-card__header h3{margin:.22rem 0 0;color:var(--color-text-primary);font-size:var(--text-xl);line-height:var(--leading-tight)}.pfitz-alert-label{display:inline-flex;align-items:center;width:fit-content;min-height:1.7rem;padding:.3rem .62rem;border:1px solid rgba(38,89,93,.2);border-radius:var(--radius-pill);background:#e4f1f0eb;color:#285f63;font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase;white-space:nowrap}.pfitz-alert-label--advisory{border-color:#b56e2540;background:#ffedd0eb;color:#94571c}.pfitz-alert-label--important{border-color:#b44d2f40;background:#ffe0d2f0;color:#963e27}.pfitz-alert-label--critical{border-color:#982f364d;background:#ffd3d5f5;color:#84262d}.pfitz-alert-card__body{display:grid;grid-template-columns:1fr repeat(3,minmax(0,1fr));gap:var(--space-3)}.pfitz-alert-card__body>p,.pfitz-alert-card__body section,.pfitz-alert-impact{margin:0;padding:.82rem;border:1px solid rgba(31,47,56,.08);border-radius:10px;background:#ffffff94;color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug)}.pfitz-alert-card__body section,.pfitz-alert-impact{display:grid;align-content:start;gap:.32rem}.pfitz-alert-card__body section p,.pfitz-alert-impact p{margin:0}.pfitz-alert-adjustment{border-color:#145d6329!important;background:#145d6312!important}.pfitz-alert-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.pfitz-alert-facts div{display:grid;align-content:start;gap:.22rem}.pfitz-alert-facts span{color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase}.pfitz-alert-facts strong{font-size:var(--text-sm);line-height:var(--leading-snug)}.pfitz-alert-actions{justify-content:flex-start}.plan-recommendation-card__header,.plan-recommendation-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.plan-recommendation-card__header{justify-content:space-between;align-items:flex-start}.plan-recommendation-card__header h3{margin:.22rem 0 0;color:var(--color-text-primary);font-size:var(--text-xl);line-height:var(--leading-tight)}.plan-recommendation-confidence{display:inline-flex;align-items:center;min-height:1.8rem;padding:.34rem .66rem;border:1px solid rgba(45,106,79,.2);border-radius:var(--radius-pill);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);white-space:nowrap}.plan-recommendation-card__body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.plan-recommendation-card__body section,.plan-recommendation-impact{display:grid;align-content:start;gap:.32rem;padding:.82rem;border:1px solid rgba(31,47,56,.08);border-radius:10px;background:#ffffff8a}.plan-recommendation-card__body p,.plan-recommendation-impact p{margin:0;color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug)}.plan-recommendation-change{border-color:#145d6329!important;background:#145d6312!important}.plan-recommendation-facts{display:grid;grid-template-columns:1fr 2fr minmax(8rem,.65fr);gap:var(--space-3)}.plan-recommendation-facts div{display:grid;align-content:start;gap:.22rem;min-width:0}.plan-recommendation-facts span{color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-tight-label);text-transform:uppercase}.plan-recommendation-facts strong{color:var(--color-text-primary);font-size:var(--text-sm);line-height:var(--leading-snug);overflow-wrap:anywhere}.plan-recommendation-actions{justify-content:flex-start}.plan-recommendation-review-dialog{width:min(100%,920px)}.plan-recommendation-schedule-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.plan-recommendation-schedule-column{display:grid;align-content:start;gap:var(--space-2)}.plan-recommendation-schedule-list{display:grid;gap:var(--space-2)}.plan-recommendation-schedule-row{position:relative;display:grid;gap:.34rem;min-height:6.5rem;padding:.75rem;border:1px solid rgba(31,47,56,.09);border-radius:10px;background:#ffffff8f}.plan-recommendation-schedule-row--changed{border-color:#2d6a4f3d;background:#2d6a4f14}.plan-recommendation-schedule-row>div{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.plan-recommendation-schedule-row strong{font-size:var(--text-sm)}.plan-recommendation-schedule-row>div span{color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);text-transform:uppercase}.plan-recommendation-schedule-row p{margin:0;color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug)}.plan-recommendation-schedule-row>.status-chip{justify-self:start}.plan-recommendation-review-note{display:grid;gap:.24rem;margin:var(--space-4) 0;padding:.8rem;border-radius:10px;border:1px solid rgba(191,109,32,.15);background:var(--color-warning-soft)}.plan-recommendation-review-note strong{color:var(--color-warning);font-size:var(--text-sm)}.plan-recommendation-review-note p{margin:0;color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-snug)}.history-hero,.history-stats-card,.archive-card,.archive-empty-state{background:linear-gradient(135deg,#fffdf9f5,#f7f0e6eb),var(--color-surface-elevated)}.history-hero{padding:var(--space-6)}.history-hero-copy{max-width:56ch;margin:.55rem 0 0;color:var(--color-text-secondary)}.history-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.history-stat{padding:.95rem 1rem;border-radius:18px;border:1px solid rgba(31,47,56,.08);background:#ffffff94}.history-stat span{display:block;margin-bottom:.2rem;color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.history-stat strong{font-size:1rem}.history-panel{display:grid;gap:var(--space-4)}.history-panel-heading{margin-bottom:0}.archive-week-stack,.archive-stack{display:grid;gap:var(--space-4)}.archive-week-group{border-top:1px solid rgba(31,47,56,.1);padding-top:var(--space-3)}.archive-week-group:first-child{border-top:0;padding-top:0}.archive-week-summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:3.25rem;cursor:pointer;list-style:none}.archive-week-summary::-webkit-details-marker{display:none}.archive-week-summary:before{content:"›";display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;flex:0 0 auto;border-radius:999px;background:#145d631a;color:var(--color-accent);font-size:1.15rem;line-height:1;transition:transform .16s ease}.archive-week-group[open]>.archive-week-summary:before{transform:rotate(90deg)}.archive-week-summary>span:first-child{display:grid;gap:.18rem;min-width:0;flex:1}.archive-week-title{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--font-weight-semibold)}.archive-week-count{white-space:nowrap;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--font-weight-semibold)}.archive-week-group[open]>.archive-stack{margin-top:var(--space-3)}.archive-card{display:grid;gap:var(--space-4)}.archive-card--weekly-summary{border-color:#145d633d;background:linear-gradient(135deg,#f7fdfcfa,#fff9eff0),var(--color-surface-elevated)}.archive-card-head{display:flex;justify-content:space-between;align-items:start;gap:var(--space-4)}.archive-card-meta{display:grid;gap:.35rem;justify-items:end}.archive-card-meta .muted-copy{margin:0;font-size:.82rem}.weekly-summary-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:var(--space-2)}.weekly-summary-metrics span{display:grid;gap:.18rem;min-width:0;padding:.72rem .8rem;border-radius:12px;border:1px solid rgba(20,93,99,.1);background:#fff9;color:var(--color-text-primary);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.weekly-summary-metrics strong{color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.archive-summary-copy{max-width:var(--max-copy);margin:0;display:grid;gap:var(--space-3);white-space:normal}.archive-details{border-top:1px solid rgba(31,47,56,.08);padding-top:var(--space-4)}.archive-details summary{cursor:pointer;font-weight:600;color:var(--color-accent)}.archive-details[open] summary{margin-bottom:var(--space-4)}.archive-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.archive-detail-label{margin:0 0 .4rem;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.archive-details-grid p:last-child{margin-bottom:0}.history-load-more{display:flex;justify-content:center}.archive-empty-state h3{margin-bottom:.4rem}@media(max-width:1179px){.calendar-grid.month{grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(132px,auto)}.week-snapshot-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.history-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1080px){.coach-hub-grid{grid-template-columns:1fr}}@media(max-width:900px){.app-header,.coach-hub-header,.coach-checkin-header,.week-planner-header,.week-snapshot-progress-meta,.archive-card-head,.history-panel-heading,.alerts-page-header{flex-direction:column;align-items:start}.header-actions,.week-planner-controls,.week-planner-toolbar,.week-planner-nav,.coach-hub-header-actions,.archive-card-meta,.alerts-page-header__actions{width:100%;justify-content:flex-start;justify-items:start}.calendar-grid.month{grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(118px,auto)}.month-day-tile{min-height:118px;padding:.48rem}.month-day-tile__date{font-size:var(--text-2xs)}.month-day-tile__title{font-size:.875rem;line-height:var(--leading-snug)}.month-day-tile__detail{font-size:var(--text-xs);-webkit-line-clamp:1}.month-day-tile__actual,.month-day-tile__weather{font-size:var(--text-2xs)}.archive-card-meta{justify-items:start}.plan-recommendation-card__body,.plan-recommendation-facts,.pfitz-alert-card__body,.pfitz-alert-facts{grid-template-columns:1fr}}@media(max-width:760px){.screen-shell{padding:var(--space-5)}.hero-card{padding:var(--space-7)}.app-shell{padding:var(--space-4) var(--space-4) var(--space-6)}.app-header{padding:var(--space-4)}.app-header-brand{width:100%}.primary-nav{width:100%;justify-content:space-between}.primary-nav a{flex:1 1 auto;text-align:center;padding-inline:.7rem}.panel,.summary-card,.integration-card,.week-planner,.coach-hub,.coach-hub-column,.coach-checkin-card,.plan-recommendation-card,.pfitz-alert-card{padding:var(--space-4)}.plan-recommendation-card__header,.pfitz-alert-card__header{flex-direction:column}.plan-recommendation-actions>button,.pfitz-alert-actions>button{width:100%}.plan-recommendation-schedule-comparison,.integration-grid{grid-template-columns:1fr}.calendar-grid.month{grid-template-columns:1fr;grid-auto-rows:auto}.month-day-tile{min-height:94px;grid-template-columns:minmax(5.4rem,.42fr) minmax(0,1fr) minmax(6.5rem,.58fr);grid-template-rows:auto;align-items:center;gap:var(--space-2)}.month-day-tile__header{align-items:center}.month-day-tile__status{flex-wrap:wrap}.month-day-tile__footer{align-self:center}.month-day-tile__title{font-size:var(--text-base)}.month-day-tile__detail{font-size:var(--text-sm);-webkit-line-clamp:2}.calendar-detail-overlay{align-items:flex-end}.calendar-detail-drawer{width:100%;height:min(88vh,760px);border-left:0;border-top:1px solid rgba(31,47,56,.12);border-radius:16px 16px 0 0;box-shadow:0 -22px 50px #121c2229}.history-stats-grid,.archive-details-grid,.week-snapshot-metrics{grid-template-columns:1fr}.coach-answer-footer,.coach-save-meta{flex-direction:column;align-items:start}.calendar-toolbar-actions{width:100%}.calendar-toolbar-actions>.ghost-button{flex:1 1 auto}.pace-chart-row{flex-direction:column;align-items:start}.pace-chart-value{text-align:left}}.app-shell{width:min(100%,1600px);padding:.75rem 1.25rem 2rem}.app-header{min-height:3.25rem;margin-bottom:.75rem;padding:.5rem .75rem;border-radius:var(--radius-md);background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-sm)}.app-header-brand{gap:0}.app-header h1{margin:0;font-size:1rem}.app-header .eyebrow{color:var(--color-text-muted);font-size:.625rem}.primary-nav{gap:0;padding:.15rem;border-radius:var(--radius-sm);border-color:var(--color-border);background:var(--color-surface-muted);box-shadow:none}.primary-nav a{padding:.4rem .65rem;border-radius:4px;font-size:var(--text-xs)}.primary-nav a:hover{transform:none;background:var(--color-accent-soft)}.primary-nav a.active{background:var(--color-accent-strong)}.header-signout,.calendar-command-bar .ghost-button{min-height:2rem;padding:.35rem .6rem;border-radius:var(--radius-sm);font-size:var(--text-xs)}.calendar-page{gap:.75rem}.week-planner{gap:.65rem;padding:.75rem;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm)}.calendar-command-bar{top:.5rem;gap:.75rem;margin:0;padding:0 0 .65rem;border-bottom:1px solid var(--color-border);border-radius:0;background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.calendar-kicker{margin:0;color:var(--color-text-muted);font-size:.625rem;font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wide-label);text-transform:uppercase}.week-planner-heading{flex:0 1 auto;gap:.15rem}.week-planner-title-row{gap:.4rem;flex-wrap:nowrap}.week-planner-title-row h2{max-width:34rem;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-planner-phase{padding:.22rem .42rem;border-radius:4px;background:var(--color-accent-soft);font-size:.625rem}.week-planner-toolbar{gap:.4rem;flex-wrap:nowrap}.week-planner-nav,.calendar-toolbar-actions{gap:.25rem;flex-wrap:nowrap}.segmented-control{gap:0;padding:.15rem;border-radius:var(--radius-sm);border-color:var(--color-border);background:var(--color-surface-muted)}.segmented-control__button{min-width:3.5rem;padding:.35rem .55rem;border-radius:4px;font-size:var(--text-xs)}.segmented-control__button:hover{transform:none}.segmented-control__button.active{background:var(--color-accent-strong)}.calendar-date-dropdown{position:relative;z-index:25}.calendar-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:.55rem;min-width:10.5rem;max-width:15rem;min-height:2rem;padding:.35rem .55rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--text-xs);font-weight:var(--font-weight-semibold)}.calendar-date-trigger>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-date-menu{position:absolute;top:calc(100% + .35rem);right:0;width:min(21rem,calc(100vw - 2rem));max-height:min(32rem,72vh);overflow:auto;padding:.65rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-lg)}.calendar-date-field{display:grid;gap:.3rem;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-semibold)}.calendar-date-field input{width:100%;padding:.5rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);background:var(--color-surface)}.calendar-date-today{width:100%;margin-top:.45rem;padding:.45rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-accent-strong);font-size:var(--text-xs);font-weight:var(--font-weight-semibold)}.calendar-week-options{display:grid;gap:.2rem;margin-top:.65rem;padding-top:.55rem;border-top:1px solid var(--color-border)}.calendar-week-options--standalone{margin-top:0;padding-top:0;border-top:0}.calendar-week-options>p{margin:0 0 .2rem;color:var(--color-text-muted);font-size:.625rem;font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wide-label);text-transform:uppercase}.calendar-week-options button{display:grid;gap:.08rem;width:100%;padding:.45rem .5rem;border:0;border-radius:4px;background:transparent;color:var(--color-text-primary);text-align:left}.calendar-week-options button:hover,.calendar-week-options button[aria-current]{background:var(--color-accent-soft)}.calendar-block-options .calendar-block-manage{margin-top:.35rem;padding-top:.65rem;border-top:1px solid var(--color-border);border-radius:0 0 4px 4px;color:var(--color-accent-strong)}.calendar-week-options button span{overflow:hidden;font-size:var(--text-xs);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.calendar-week-options button small{color:var(--color-text-muted);font-size:.6875rem}.week-snapshot-card{gap:.45rem;padding:.5rem .65rem;border-color:var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);box-shadow:none}.week-snapshot-metrics{grid-template-columns:repeat(8,minmax(0,1fr));gap:0}.week-metric-card{padding:.2rem .55rem;border:0;border-right:1px solid var(--color-border);border-radius:0;background:transparent}.week-metric-card:last-child{border-right:0}.week-metric-card span{margin-bottom:.05rem;font-size:.625rem}.week-metric-card strong{font-size:var(--text-sm)}.week-metric-card.status-done strong{color:var(--color-success)}.week-metric-card.status-adjusted strong{color:var(--color-warning)}.week-metric-card.status-not-met strong{color:var(--color-danger)}.week-metric-card.status-skipped strong{color:var(--color-text-muted)}.status-chip--review{color:var(--color-danger);background:var(--color-danger-soft);border-color:#a340402e}.status-chip--skipped,.month-day-tile__tag--skipped{color:var(--color-text-secondary);background:#edf1f3;border-color:var(--color-border)}.month-day-tile__tag--done{color:var(--color-success);background:var(--color-success-soft);border-color:#24704433}.month-day-tile__tag--pending,.month-day-tile__tag--rest{color:var(--color-text-muted);background:#edf1f3;border-color:var(--color-border)}.month-day-tile__tag--key{color:#6741a5;background:#f0e9ff;border-color:#6741a538}.month-day-tile__tag--removable{position:relative;overflow:visible}.month-day-tile__tag-remove{position:absolute;top:50%;right:-.1rem;display:inline-grid;width:.8rem;height:.8rem;place-items:center;padding:0;border:0;border-radius:var(--radius-pill);background:#f0e9ff;box-shadow:-.16rem 0 #f0e9ff;color:#6741a5;font:inherit;font-size:.9rem;line-height:1;cursor:pointer;opacity:0;transform:translateY(-50%);transition:background .14s ease,color .14s ease,opacity .14s ease}.month-day-tile__tag--removable:hover .month-day-tile__tag-remove,.month-day-tile__tag--removable:focus-within .month-day-tile__tag-remove{opacity:1}.month-day-tile__tag-remove:hover,.month-day-tile__tag-remove:focus-visible{background:var(--color-danger-soft);box-shadow:-.16rem 0 0 var(--color-danger-soft);color:var(--color-danger);opacity:1}.month-day-tile__tag-remove:disabled{cursor:wait;opacity:.35}.calendar-edit-tag-control--key{border-color:#6741a529;background:#f0e9ff8c}.calendar-edit-tag-control--key .calendar-edit-tag-control__label{color:#6741a5}@media(hover:none){.month-day-tile__tag--removable{padding-right:1rem}.month-day-tile__tag-remove{opacity:1}}.analytics-page{--analytics-completed: #7f998c;--analytics-adjusted: #b2a17f;--analytics-skipped: #9ba3aa;--analytics-pace-slower_than_80: #999c9f;--analytics-pace-pace_80_84: #78927d;--analytics-pace-pace_85_89: #c0a85f;--analytics-pace-pace_90_99: #c48258;--analytics-pace-gmp_or_faster: #b66562;display:grid;gap:var(--space-4)}.analytics-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-5)}.analytics-page-header h2,.analytics-page-header p,.analytics-panel h3,.analytics-panel p,.analytics-empty-state h3,.analytics-empty-state p{margin:0}.analytics-page-header>div:first-child,.analytics-empty-state{display:grid;gap:var(--space-2)}.analytics-page-header>div:first-child>p:last-child,.analytics-empty-state>p:last-of-type,.analytics-panel__heading>p,.analytics-chart figcaption,.analytics-score-copy>p{color:var(--color-text-secondary)}.analytics-page-header__actions,.analytics-filter-toolbar{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);white-space:nowrap}.analytics-filter-toolbar{justify-content:flex-end;flex-wrap:wrap}.analytics-filter-toolbar .ghost-button{min-height:2rem;padding:.35rem .6rem;border-radius:var(--radius-sm);font-size:var(--text-xs)}.calendar-block-empty{padding:var(--space-2);color:var(--color-text-muted)}.analytics-empty-state,.analytics-panel{padding:var(--space-5)}.analytics-panel{display:grid;gap:var(--space-5)}.analytics-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5)}.analytics-panel__heading>div{display:grid;gap:var(--space-1)}.analytics-panel__heading>p{max-width:34rem;font-size:var(--text-sm);text-align:right}.analytics-chart{display:grid;gap:var(--space-4);margin:0}.analytics-legend{display:flex;gap:var(--space-4);flex-wrap:wrap;margin:0;padding:0;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);list-style:none}.analytics-legend li{display:inline-flex;align-items:center;gap:var(--space-2)}.analytics-legend__swatch{width:.7rem;height:.7rem;border-radius:2px}.analytics-result--completed{background:var(--analytics-completed)}.analytics-result--adjusted{background:var(--analytics-adjusted)}.analytics-result--skipped{background:var(--analytics-skipped)}.analytics-pace--slower_than_80{background:var(--analytics-pace-slower_than_80)}.analytics-pace--pace_80_84{background:var(--analytics-pace-pace_80_84)}.analytics-pace--pace_85_89{background:var(--analytics-pace-pace_85_89)}.analytics-pace--pace_90_99{background:var(--analytics-pace-pace_90_99)}.analytics-pace--gmp_or_faster{background:var(--analytics-pace-gmp_or_faster)}.analytics-outcome-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.analytics-outcome-panel{align-content:start}.analytics-pie-chart{gap:var(--space-3)}.analytics-pie-grid{display:grid;grid-template-columns:repeat(5,minmax(4.4rem,1fr));gap:var(--space-3)}.analytics-pie-item{display:grid;min-width:0;justify-items:center;gap:.25rem;text-align:center}.analytics-pie{width:min(100%,5.4rem);aspect-ratio:1;border:1px solid rgba(55,66,74,.08);border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff47}.analytics-pie-item>strong{font-size:var(--text-2xs);line-height:var(--leading-snug)}.analytics-pie-item>span{color:var(--color-text-secondary);font-size:.625rem;font-variant-numeric:tabular-nums;white-space:nowrap}.analytics-chart__rows{display:grid;gap:var(--space-4)}.analytics-chart__row{display:grid;grid-template-columns:minmax(9rem,.85fr) minmax(16rem,3fr) minmax(9rem,auto);align-items:center;gap:var(--space-4)}.analytics-chart__row>strong{font-size:var(--text-sm)}.analytics-bar{display:flex;width:100%;height:1.25rem;overflow:hidden;border-radius:4px;background:var(--color-surface-muted);box-shadow:inset 0 0 0 1px var(--color-border)}.analytics-bar__segment{display:block;min-width:2px;height:100%}.analytics-bar__segment+.analytics-bar__segment{box-shadow:-1px 0 #ffffffb8}.analytics-chart__value{color:var(--color-text-secondary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.analytics-mileage-bar{position:relative}.analytics-mileage-bar__actual{position:absolute;top:-.28rem;width:3px;height:1.8rem;border-radius:var(--radius-pill);background:#4f686b;box-shadow:0 0 0 2px #fff;transform:translate(-1px)}.analytics-chart figcaption{font-size:var(--text-xs)}.analytics-chart-empty{padding:var(--space-5);border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-text-secondary);font-size:var(--text-sm);text-align:center}.analytics-long-run-layout{display:grid;grid-template-columns:minmax(28rem,1.35fr) minmax(17rem,.65fr);align-items:stretch;gap:var(--space-6)}.analytics-long-run-visual{display:grid;grid-template-columns:minmax(12rem,.8fr) minmax(14rem,1.2fr);align-items:center;gap:var(--space-6)}.analytics-long-run-pie-summary{display:grid;justify-items:center;gap:var(--space-2);text-align:center}.analytics-long-run-pie{width:min(100%,14rem);aspect-ratio:1;border:1px solid rgba(55,66,74,.08);border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff47}.analytics-long-run-pie-summary>strong{font-size:var(--text-lg)}.analytics-long-run-pie-summary>span{color:var(--color-text-secondary);font-size:var(--text-xs)}.analytics-long-run-breakdown{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.analytics-long-run-breakdown li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-xs)}.analytics-long-run-breakdown strong{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.analytics-long-run-filter{min-width:0;margin:0;padding:0 0 0 var(--space-6);border:0;border-left:1px solid var(--color-border)}.analytics-long-run-filter legend{padding:0;font-size:var(--text-sm);font-weight:var(--font-weight-bold)}.analytics-long-run-filter__actions{display:flex;gap:var(--space-3);margin:var(--space-2) 0 var(--space-3)}.analytics-long-run-filter__actions .ghost-button{min-height:1.8rem;padding:.3rem .6rem;border-radius:var(--radius-sm);font-size:var(--text-xs)}.analytics-long-run-filter__list{display:grid;max-height:16rem;gap:var(--space-2);overflow-y:auto}.analytics-long-run-filter__list label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer}.analytics-long-run-filter__list label:hover{background:var(--color-surface-muted)}.analytics-long-run-filter__list input{margin-top:.2rem}.analytics-long-run-filter__list label>span{display:grid;min-width:0;gap:.1rem}.analytics-long-run-filter__list strong{overflow:hidden;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.analytics-long-run-filter__list small{color:var(--color-text-muted);font-size:var(--text-2xs)}.analytics-elevation-chart{gap:var(--space-5)}.analytics-elevation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.analytics-elevation-summary>div{display:grid;gap:var(--space-1);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.analytics-elevation-summary span{color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--font-weight-bold);letter-spacing:.08em;text-transform:uppercase}.analytics-elevation-summary strong{font-size:var(--text-lg);font-variant-numeric:tabular-nums}.analytics-elevation-goal-label{justify-self:end;margin:0;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-weight-bold)}.analytics-elevation-run-label{display:grid;min-width:0;gap:.1rem}.analytics-elevation-run-label span{overflow:hidden;color:var(--color-text-secondary);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.analytics-elevation-bar{position:relative;overflow:hidden}.analytics-elevation-bar__value{display:block;height:100%;border-radius:inherit;background:#718e89}.analytics-elevation-bar__goal{position:absolute;top:0;bottom:0;width:3px;background:#a5503d;box-shadow:0 0 0 1px #ffffffd9;transform:translate(-1px)}.analytics-elevation-row .analytics-chart__value{display:grid;gap:.1rem}.analytics-elevation-row .analytics-chart__value strong{color:var(--color-text-primary)}.analytics-elevation-row .analytics-chart__value small{color:var(--color-text-muted);font-size:var(--text-2xs)}.analytics-unplanned-note{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-muted);font-size:var(--text-sm)}.analytics-score-layout{display:grid;grid-template-columns:minmax(12rem,.75fr) minmax(20rem,2fr);align-items:center;gap:var(--space-7)}.analytics-score-gauge{--analytics-score: 0%;display:grid;width:min(100%,13rem);aspect-ratio:1;place-items:center;justify-self:center;border-radius:50%;background:conic-gradient(#718e89 var(--analytics-score),var(--color-bg-strong) 0)}.analytics-score-gauge:before{content:"";grid-area:1 / 1;width:76%;aspect-ratio:1;border-radius:50%;background:var(--color-surface)}.analytics-score-gauge>div{z-index:1;grid-area:1 / 1;display:grid;place-items:center}.analytics-score-gauge strong{font-size:3rem;line-height:1;letter-spacing:-.04em}.analytics-score-gauge span{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-semibold)}.analytics-score-copy,.analytics-score-breakdown{display:grid;gap:var(--space-4)}.analytics-score-breakdown__row{display:grid;grid-template-columns:minmax(8rem,auto) minmax(8rem,1fr) 2rem;align-items:center;gap:var(--space-3);font-size:var(--text-sm)}.analytics-score-breakdown__track{height:.55rem;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-bg-strong)}.analytics-score-breakdown__track>span{display:block;height:100%;border-radius:inherit;background:#718e89}.analytics-score-breakdown__row>strong{text-align:right}.analytics-score-diagnostics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.analytics-score-diagnostic{display:grid;align-content:start;gap:.18rem;min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.analytics-score-diagnostic>span,.analytics-score-diagnostic>small{color:var(--color-text-secondary);font-size:var(--text-xs)}.analytics-score-diagnostic>strong{font-size:var(--text-xl);font-variant-numeric:tabular-nums}.analytics-score-copy>p{max-width:72ch;font-size:var(--text-sm)}.analytics-weekly-mileage-table-wrap{overflow-x:auto}.analytics-weekly-mileage-table{width:100%;min-width:34rem;border-collapse:collapse;font-variant-numeric:tabular-nums}.analytics-weekly-mileage-table th,.analytics-weekly-mileage-table td{padding:.8rem var(--space-3);border-bottom:1px solid var(--color-border);text-align:right}.analytics-weekly-mileage-table th:first-child,.analytics-weekly-mileage-table td:first-child{padding-left:0;text-align:left}.analytics-weekly-mileage-table th:last-child,.analytics-weekly-mileage-table td:last-child{padding-right:0}.analytics-weekly-mileage-table thead th{color:var(--color-text-muted);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide-label);text-transform:uppercase}.analytics-weekly-mileage-table tbody th,.analytics-weekly-mileage-table tbody td{font-size:var(--text-sm)}.analytics-weekly-mileage-table tbody th{font-weight:var(--font-weight-medium)}.analytics-weekly-mileage-table tbody td:last-child{color:var(--color-accent-strong)}.analytics-weekly-mileage-table tfoot th,.analytics-weekly-mileage-table tfoot td{padding-top:var(--space-4);border-bottom:0;color:var(--color-text-primary);font-weight:var(--font-weight-bold)}@media(max-width:820px){.analytics-page-header,.analytics-panel__heading{display:grid}.analytics-page-header__actions{justify-content:space-between;white-space:normal}.analytics-filter-toolbar{justify-content:flex-start;white-space:normal}.analytics-panel__heading>p{text-align:left}.analytics-chart__row{grid-template-columns:minmax(7.5rem,.8fr) minmax(10rem,2fr);gap:var(--space-2) var(--space-3)}.analytics-chart__value{grid-column:2;text-align:left}.analytics-score-layout,.analytics-outcome-panels,.analytics-long-run-layout,.analytics-long-run-visual{grid-template-columns:1fr}.analytics-long-run-filter{padding:var(--space-5) 0 0;border-top:1px solid var(--color-border);border-left:0}.analytics-score-diagnostics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-elevation-summary{grid-template-columns:1fr}}@media(max-width:520px){.analytics-chart__row{grid-template-columns:1fr}.analytics-chart__value{grid-column:1}.analytics-score-breakdown__row{grid-template-columns:1fr auto}.analytics-score-breakdown__track{grid-column:1 / -1;grid-row:2}.analytics-pie-grid{grid-template-columns:repeat(3,minmax(4.25rem,1fr))}.analytics-score-diagnostics{grid-template-columns:1fr}}.month-day-tile__status .month-day-tile__tag{max-width:none}.month-day-tile__tag--button:hover,.month-day-tile__tag--button:focus-visible{border-color:currentColor;box-shadow:0 0 0 3px #0f59631a}.week-progress-track{height:3px;background:#dfe6ea;box-shadow:none}.week-progress-fill{background:var(--color-accent)}.week-snapshot-footer{align-items:baseline;gap:.35rem .75rem;font-size:var(--text-xs)}.week-snapshot-footer p{padding:0;border-radius:0;background:transparent;font-size:var(--text-xs)}.week-snapshot-footer details{color:var(--color-text-muted);font-size:var(--text-xs)}.week-snapshot-footer details p{margin-top:.35rem}.week-context-edit-button{margin-left:auto;padding:.15rem .45rem;font-size:var(--text-xs)}.week-context-dialog{max-width:42rem}.week-context-form{display:grid;gap:var(--space-4)}.week-context-form>.muted-copy{margin:0}.week-context-form textarea{resize:vertical}.calendar-swap-hint{margin:0;font-size:var(--text-xs)}.calendar-grid.week{display:grid;grid-template-columns:1fr;gap:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.calendar-day-card{display:grid;grid-template-columns:8.5rem minmax(0,1fr) 2.25rem;grid-template-rows:auto;gap:0;min-height:5.25rem;padding:0;border:0;border-bottom:1px solid var(--color-border);border-radius:0;background:var(--color-surface);box-shadow:none;transition:background .12s ease,box-shadow .12s ease}.calendar-day-card:last-child{border-bottom:0}.calendar-day-card:hover{transform:none;background:#fafcfd}.calendar-day-card--today{box-shadow:inset 3px 0 0 var(--color-accent);background:#f5fafb}.calendar-day-card--future{background:#fbfcfd}.calendar-day-card--rest{background:#f7f9fa}.calendar-day-card--done,.calendar-day-card--skipped,.calendar-day-card--next{border-color:var(--color-border);box-shadow:none}.calendar-day-card--drop-target{background:var(--color-accent-soft);box-shadow:inset 0 0 0 2px #0f596347}.calendar-day-card-header{display:grid;align-content:start;gap:.35rem;padding:.65rem .7rem;border:0;border-right:1px solid var(--color-border)}.calendar-day-card-header-actions{justify-content:flex-start;max-width:none}.calendar-day-card-header h3{font-size:var(--text-sm)}.day-weekday{color:var(--color-text-muted);font-size:.625rem}.calendar-day-card-body{display:grid;grid-template-columns:minmax(16rem,1.5fr) minmax(10rem,.85fr) minmax(8rem,.6fr);grid-template-rows:auto auto;gap:0;min-width:0}.calendar-day-card-section{gap:.25rem;min-width:0;padding:.65rem .75rem;border-right:1px solid var(--color-border)}.calendar-day-card-section--primary{grid-column:1;grid-row:1;gap:.25rem;padding-bottom:.35rem}.calendar-day-card-section--secondary{grid-column:1;grid-row:2;padding-top:.25rem}.calendar-day-card-section--actual{grid-column:2;grid-row:1 / span 2}.calendar-day-card-section--context{grid-column:3;grid-row:1 / span 2;border-right:0}.calendar-section-heading{justify-content:flex-start}.calendar-primary-workout{font-weight:var(--font-weight-regular);font-size:var(--text-sm);line-height:var(--leading-snug)}.calendar-workout-type,.status-chip,.month-day-tile__tag{border-radius:3px}.calendar-card-meta>span{padding:0;border:0;background:transparent;font-size:.6875rem}.calendar-workout-goal{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1}.calendar-day-card .muted-copy,.calendar-card-weather,.calendar-card-travel{margin:0;color:var(--color-text-secondary);font-size:var(--text-xs);line-height:var(--leading-snug)}.actual-result{display:grid;align-content:start;gap:.16rem;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent}.actual-result:before{display:none}.actual-result__metrics{display:flex;align-items:baseline;gap:.28rem;min-width:0;margin:0;color:var(--color-text-primary);font-size:var(--text-base);font-variant-numeric:tabular-nums;line-height:var(--leading-snug)}.actual-result__metrics strong{flex:0 0 auto;font-weight:var(--font-weight-semibold);white-space:nowrap}.actual-result__metrics span{min-width:0;overflow:hidden;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.actual-result__breakdown{min-width:0;margin:0;overflow:hidden;color:var(--color-text-secondary);font-size:.6875rem;font-variant-numeric:tabular-nums;line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}.calendar-card-travel{color:var(--color-warning)}.session-list{gap:.2rem}.session-list li{gap:.08rem;padding:.35rem .45rem;border-color:var(--color-border);border-radius:4px;background:var(--color-surface-muted)}.session-list strong,.session-list span{font-size:var(--text-xs)}.calendar-card-edit-button{right:.45rem;bottom:50%;transform:translateY(50%)}.month-calendar{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.month-calendar-headings,.month-week-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) minmax(8rem,.82fr)}.month-calendar-headings{background:#eef2f5;border-bottom:1px solid var(--color-border-strong)}.month-calendar-headings span{padding:.4rem .5rem;border-right:1px solid var(--color-border);color:var(--color-text-muted);font-size:.625rem;font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-wide-label);text-transform:uppercase}.month-calendar-headings span:last-child{border-right:0}.month-week-row{border-bottom:1px solid var(--color-border)}.month-week-row:last-child{border-bottom:0}.month-day-tile{min-height:7.25rem;padding:.5rem;border:0;border-top:2px solid var(--tile-accent);border-right:1px solid var(--color-border);border-radius:0;background:var(--color-surface);box-shadow:none}.month-day-tile:hover{transform:none;background:#f8fafb}.month-day-tile--outside-month{opacity:1;background:#f4f6f8;color:var(--color-text-muted)}.month-day-tile--today{box-shadow:inset 0 0 0 2px #0f59634d}.month-day-tile--done,.month-day-tile--skipped,.month-day-tile--review{background:var(--color-surface)}.month-day-tile__title{font-size:var(--text-sm);font-weight:var(--font-weight-regular)}.month-day-tile__detail{font-size:var(--text-xs)}.month-day-tile__body{gap:.3rem}.month-day-tile__plan{display:grid;align-content:start;gap:.12rem;min-width:0}.month-day-tile__plan-heading{display:flex;align-items:baseline;gap:.35rem;min-width:0}.month-day-tile__plan-heading .calendar-section-label{flex:0 0 auto}.month-day-tile__plan-heading .month-day-tile__title{min-width:0}.month-day-tile__plan--secondary{padding-top:.24rem;border-top:1px solid var(--color-border)}.month-day-tile__plan--secondary .month-day-tile__title{color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-weight-regular);-webkit-line-clamp:1}.month-day-tile__plan--secondary .month-day-tile__detail,.month-day-tile__plan--secondary .month-day-tile__secondary{color:var(--color-text-muted);font-size:.6875rem;font-weight:var(--font-weight-regular);-webkit-line-clamp:1}.month-day-tile__plan--secondary .month-day-tile__secondary{margin-top:0;padding-top:0;border-top:0}.month-day-tile__comparison{margin:0;font-size:.6875rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;line-height:var(--leading-snug)}.month-day-tile__comparison--done{color:var(--color-success)}.month-day-tile__comparison--adjusted{color:var(--color-warning)}.month-day-tile__comparison--not-met{color:var(--color-danger)}.month-day-tile__comparison--skipped,.month-day-tile__comparison--neutral{color:var(--color-text-muted)}.week-total-cell{display:grid;align-content:start;gap:.45rem;min-width:0;padding:.55rem;background:#eef2f5}.week-total-cell>strong{color:var(--color-text-primary);font-size:var(--text-xs)}.week-total-cell__primary{display:flex;align-items:baseline;gap:.25rem;min-width:0}.week-total-cell__primary strong{color:var(--color-text-primary);font-size:var(--text-base);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.week-total-cell__primary span{color:var(--color-text-secondary);font-size:.6875rem;font-weight:var(--font-weight-semibold)}.week-total-cell__primary--actual strong{font-size:var(--text-md)}.week-total-cell__comparison{display:grid;gap:.1rem;color:var(--color-text-muted);font-size:.6875rem;line-height:var(--leading-snug)}.week-total-cell__comparison-line{display:flex;align-items:center;gap:.25rem}.week-total-cell__edit-button{width:1.35rem;height:1.35rem;border-color:transparent;background:transparent;box-shadow:none}.week-total-cell__edit-button svg{width:.72rem;height:.72rem}.week-total-cell__edit-form{display:grid;gap:.3rem}.week-total-cell__edit-form input{width:100%;min-width:0;padding:.3rem .4rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-text-primary);font:inherit;font-variant-numeric:tabular-nums}.week-total-cell__edit-actions{display:flex;gap:.3rem}.week-total-cell__edit-actions button{padding:0;border:0;background:transparent;color:var(--color-accent);font-size:.625rem;font-weight:var(--font-weight-semibold)}.week-total-cell__edit-actions button:disabled{opacity:.55}.week-total-cell__edit-error{color:var(--color-danger);font-size:.625rem;line-height:var(--leading-snug)}.week-total-cell__variance{color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.week-total-cell__sessions{margin:0;color:var(--color-text-secondary);font-size:.625rem;line-height:var(--leading-snug)}.all-weeks-calendar__week .month-week-row{border-bottom:1px solid var(--color-border)}.all-weeks-calendar__week:last-child .month-week-row{border-bottom:0}.calendar-month-divider{position:sticky;top:0;z-index:2;margin:0;padding:.55rem .65rem;border-bottom:1px solid var(--color-border-strong);background:#e4eaee;color:var(--color-text-primary);font-size:var(--text-sm);letter-spacing:var(--tracking-label)}.coach-hub{gap:.75rem;padding:.85rem;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm)}.coach-hub-column{padding:.75rem;border-radius:var(--radius-sm);border-color:var(--color-border);background:var(--color-surface-muted);box-shadow:none}.coach-checkin-card{padding:.75rem}.coach-answer-field textarea{min-height:7rem}.calendar-detail-drawer,.calendar-edit-dialog{border-color:var(--color-border);background:var(--color-surface)}.calendar-edit-dialog{border-radius:var(--radius-md)}@media(max-width:1180px){.calendar-command-bar{align-items:flex-start;flex-direction:column}.week-planner-toolbar{width:100%;justify-content:flex-start;flex-wrap:wrap}.calendar-day-card-body{grid-template-columns:minmax(13rem,1.4fr) minmax(9rem,.8fr) minmax(7rem,.55fr)}}@media(max-width:860px){.app-shell{padding-inline:.75rem}.app-header{align-items:flex-start}.calendar-day-card{grid-template-columns:7.5rem minmax(0,1fr) 2.25rem}.calendar-day-card-body{grid-template-columns:minmax(0,1fr) minmax(8rem,.65fr)}.calendar-day-card-section--primary,.calendar-day-card-section--secondary{grid-column:1}.calendar-day-card-section--actual{grid-column:2;grid-row:1;border-right:0}.calendar-day-card-section--context{grid-column:2;grid-row:2;border-top:1px solid var(--color-border)}.week-snapshot-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.week-metric-card:nth-child(4){border-right:0}.week-metric-card:nth-child(n+5){padding-top:.4rem}.month-calendar{overflow-x:auto}.month-calendar-headings,.month-week-row{min-width:62rem}}@media(max-width:640px){.app-shell{padding:.5rem .5rem 1.25rem}.app-header{padding:.5rem}.header-actions,.primary-nav{width:100%}.primary-nav{overflow-x:auto;justify-content:flex-start}.primary-nav a{flex:0 0 auto}.week-planner,.coach-hub{padding:.55rem}.week-planner-title-row{align-items:flex-start;flex-direction:column}.week-planner-title-row h2{max-width:calc(100vw - 2rem)}.calendar-date-dropdown,.calendar-date-trigger,.segmented-control{width:100%;max-width:none}.calendar-date-menu{right:auto;left:0}.training-block-row,.training-block-range-fields{grid-template-columns:1fr}.segmented-control__button{flex:1 1 0}.calendar-toolbar-actions,.week-planner-nav{width:100%}.calendar-command-bar .ghost-button{flex:1 1 0}.week-snapshot-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.week-metric-card:nth-child(2n){border-right:0}.week-metric-card:nth-child(n+3){padding-top:.35rem}.calendar-day-card{grid-template-columns:1fr 2.25rem}.calendar-day-card-header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:.5rem .65rem;border-right:0;border-bottom:1px solid var(--color-border)}.calendar-day-card-header>div:first-child{display:flex;align-items:baseline;gap:.35rem}.calendar-day-card-body{grid-column:1 / -1;grid-template-columns:1fr}.calendar-day-card-section,.calendar-day-card-section--primary,.calendar-day-card-section--secondary,.calendar-day-card-section--actual,.calendar-day-card-section--context{grid-column:1;grid-row:auto;padding:.5rem .65rem;border-right:0}.calendar-day-card-section--secondary,.calendar-day-card-section--actual,.calendar-day-card-section--context{border-top:1px solid var(--color-border)}.calendar-card-edit-button{top:3.35rem;right:.45rem;bottom:auto;transform:none}.month-calendar{overflow:hidden}.month-calendar-headings{display:none}.month-week-row{grid-template-columns:1fr;min-width:0;border-bottom:4px solid var(--color-bg-strong)}.month-week-row:last-child{border-bottom:0}.month-day-tile{grid-template-columns:6.75rem minmax(0,1fr) 4rem;grid-template-rows:auto;min-height:4.75rem;border-top:0;border-right:0;border-bottom:1px solid var(--color-border)}.month-day-tile__header{display:grid;justify-content:stretch;justify-items:start;gap:.24rem;min-width:0;align-self:center}.month-day-tile__footer{align-self:center}.month-day-tile__status{justify-content:flex-start;flex-wrap:wrap}.week-total-cell{grid-template-columns:auto minmax(10rem,1fr);gap:.35rem .75rem}.week-total-cell dl{grid-column:2;grid-row:1 / span 2}.week-total-cell p{align-self:end}.calendar-month-divider{position:static}}.coach-hub-page{min-width:0}.coach-hub-page .coach-hub{gap:var(--space-4);padding:clamp(1rem,2vw,1.5rem);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm)}.coach-hub-page .coach-hub-grid{grid-template-columns:minmax(0,1.18fr) minmax(21rem,.82fr);gap:var(--space-4);align-items:stretch}.coach-summary-column{position:relative;isolation:isolate;display:grid;align-content:start;gap:var(--space-3);overflow:hidden;background:radial-gradient(circle at 92% 12%,rgba(218,129,52,.12),transparent 31%),radial-gradient(circle,rgba(180,91,24,.075) 1px,transparent 1.2px),linear-gradient(145deg,#fffcf6fa,#faf4eaf5);background-size:auto,20px 20px,auto}.coach-summary-column>*{position:relative;z-index:1}.coach-voice-row{display:grid;grid-template-columns:4.25rem minmax(0,1fr);gap:var(--space-3);align-items:center}.coach-avatar-frame{width:4.25rem;height:4.25rem;overflow:hidden;border:2px solid rgba(180,91,24,.26);border-radius:50%;background:#fffc;box-shadow:0 7px 18px #1f2f3821}.coach-avatar-frame img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none}.coach-speech-bubble{position:relative;margin:0;padding:.8rem .95rem;border:1px solid rgba(180,91,24,.2);border-radius:.9rem;background:#ffffffe6;color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:1.48;box-shadow:var(--shadow-sm)}.coach-speech-bubble:before{content:"";position:absolute;top:50%;left:-.43rem;width:.78rem;height:.78rem;border-bottom:1px solid rgba(180,91,24,.2);border-left:1px solid rgba(180,91,24,.2);background:#fffffff5;transform:translateY(-50%) rotate(45deg)}.coach-note-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(11rem,36%);gap:var(--space-4);align-items:end;min-height:18rem}.coach-note-layout .coach-summary-body{align-self:start;max-width:62ch;padding-block:var(--space-2)}.coach-mascot-artwork{display:block;width:min(100%,22rem);max-height:24rem;justify-self:end;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 16px 16px rgba(31,47,56,.14))}.coach-hub-page .coach-checkin-column{height:100%;border-color:var(--color-border);background:var(--color-surface-muted)}.coach-hub-page .coach-checkin-card{height:100%}@media(max-width:1080px){.coach-hub-page .coach-hub-grid{grid-template-columns:1fr}.coach-note-layout{grid-template-columns:minmax(0,1fr) minmax(11rem,30%)}}@media(max-width:640px){.coach-hub-page .coach-hub{padding:.75rem}.coach-voice-row{grid-template-columns:3.5rem minmax(0,1fr);gap:.75rem}.coach-avatar-frame{width:3.5rem;height:3.5rem}.coach-speech-bubble{padding:.7rem .8rem}.coach-note-layout{grid-template-columns:1fr;min-height:0}.coach-mascot-artwork{width:min(72%,15rem);max-height:16rem;margin-top:-.5rem}}.nutrition-mode-toggle{align-self:flex-start;width:fit-content;margin-bottom:16px}.nutrition-mode-toggle .segmented-control__button{flex:0 0 auto;white-space:nowrap}.nutrition-explainer{color:#52646b;font-size:13px;line-height:1.6;margin:2px 0 22px}.nutrition-explainer span{display:block;color:#75828a}.nutrition-weeks{display:grid;gap:24px}.nutrition-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) minmax(145px,1.2fr);border:1px solid #dfe7e8;border-radius:12px;overflow:hidden;background:#fff}.nutrition-day{display:flex;flex-direction:column;align-items:stretch;min-width:0;border:0;border-right:1px solid #e5ebec;border-radius:0;background:#fff;color:#243d43;padding:18px 12px;text-align:left;font:inherit;cursor:pointer}.nutrition-day:hover{background:#f3f9f8}.nutrition-day:focus-visible{outline:3px solid #278479;outline-offset:-3px}.nutrition-day--today{background:#f0f8f6}.nutrition-day time{font-size:12px;font-weight:600;margin-bottom:24px;color:#52646b}.nutrition-intake{font-size:12px;line-height:1.8;color:#6c7b80}.nutrition-intake strong{color:#253f44;font-size:16px;font-weight:600}.nutrition-variance{margin-top:18px;color:#226b63;font-size:clamp(19px,1.7vw,26px);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.nutrition-variance small{font-size:11px;font-weight:400}.nutrition-muted{color:#6c7b80;font-size:12px;line-height:1.6}.nutrition-progress{display:block;height:4px;border-radius:5px;background:#e7eeec;margin-top:17px;overflow:hidden}.nutrition-progress>span{display:block;height:100%;background:#51948a;border-radius:inherit}.nutrition-progress--empty{background:#f0f2f2}.nutrition-day-foot{margin-top:18px;color:#6b7b81;font-size:12px}.nutrition-week-total{padding:18px 14px;background:#f6f9f9}.nutrition-week-total h3{font-size:12px;margin:0 0 15px;font-weight:600}.nutrition-week-total dl{display:grid;gap:10px;margin:0}.nutrition-week-total dt{font-size:11px;color:#6c7b80}.nutrition-week-total dd{margin:2px 0 0;font-size:16px;font-weight:600;color:#294e4a}.nutrition-week-total dd small{font-size:10px;font-weight:400}.nutrition-week-total .nutrition-muted{font-size:10px}.nutrition-week-label{font-size:14px;font-weight:600;margin:0 0 10px;color:#52646b}.nutrition-week-grid--compact .nutrition-day{padding-top:15px;padding-bottom:15px}.nutrition-week-grid--compact .nutrition-day time{margin-bottom:12px}.nutrition-aggregate-note{margin:20px 0 0}.nutrition-drawer{background:#fcfdfd;width:min(100%,480px)}.nutrition-drawer-totals{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;border-radius:12px;background:#edf5f3}.nutrition-drawer-totals>div{display:grid;gap:8px}.nutrition-drawer-totals span{font-size:12px;color:#52646b}.nutrition-drawer-totals strong{font-size:24px;font-weight:600;color:#226b63}.nutrition-drawer-totals small{font-size:12px;font-weight:400}.nutrition-form{margin:22px 0}.nutrition-form fieldset{display:grid;gap:14px;border:0;padding:0;min-width:0}.nutrition-form legend{font-size:15px;font-weight:600;margin-bottom:14px}.nutrition-form label{display:grid;gap:7px;color:#52646b;font-size:12px}.nutrition-form input,.nutrition-form textarea,.nutrition-form select{box-sizing:border-box;width:100%;min-width:0;padding:10px 12px;border:1px solid #ccd9d8;border-radius:8px;background:#fff;color:#243d43;font:inherit;font-size:16px}.nutrition-form-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.nutrition-form details{font-size:12px;color:#52646b}.nutrition-form summary{cursor:pointer}.nutrition-form .primary-button{justify-self:start}.nutrition-meals-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px}.nutrition-meals-heading h3{font-size:16px}.nutrition-meals{list-style:none;margin:0;padding:0}.nutrition-meals li{padding:14px 0;border-bottom:1px solid #e3e9e9}.nutrition-meals li>div:first-child{display:grid;gap:5px;overflow-wrap:anywhere}.nutrition-meals strong{font-size:14px;font-weight:600}.nutrition-meals li span{font-size:12px;color:#64777c}.nutrition-meal-actions{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}.nutrition-delete-confirm{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.nutrition-meal-editor{padding:16px;border:1px solid #d9e5e2;border-radius:12px;background:#f4f8f7}.nutrition-save-status{color:#226b63;font-size:13px;min-height:20px}@media(max-width:1100px)and (min-width:701px){.nutrition-week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nutrition-day{border-bottom:1px solid #e5ebec}}@media(max-width:700px){.nutrition-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-day{padding:16px;border-bottom:1px solid #e5ebec}.nutrition-day time{margin-bottom:14px}.nutrition-variance{font-size:24px;margin-top:10px}.nutrition-week-total{padding:16px}.nutrition-week-total dl{gap:7px}.nutrition-drawer{width:100%;height:92dvh;padding:20px;padding-bottom:max(20px,env(safe-area-inset-bottom))}.nutrition-drawer .calendar-detail-header h2{font-size:19px}.nutrition-calendar .week-planner-toolbar{align-items:stretch}.nutrition-calendar .segmented-control{width:100%}.nutrition-calendar .segmented-control__button{flex:1}}.nutrition-details{margin:18px 0;border-top:1px solid #dfe7e8;padding-top:16px}.nutrition-details>summary{cursor:pointer;font-size:15px;font-weight:600;color:#294e4a}.nutrition-nutrient-totals{margin:14px 0;display:grid;gap:12px}.nutrition-nutrient-totals>div{display:flex;justify-content:space-between;gap:12px}.nutrition-nutrient-totals dt{font-size:13px;color:#52646b}.nutrition-nutrient-totals dd{margin:0;text-align:right;font-size:14px;color:#294e4a}.nutrition-nutrient-totals small{display:block;font-size:11px;color:#6c7b80}.nutrition-measurement{margin-top:12px}.nutrition-supplements{list-style:none;padding:0}.nutrition-supplements li{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid #e3e9e9;overflow-wrap:anywhere}.nutrition-supplements label{display:flex;align-items:center;gap:10px;font-size:14px}.nutrition-supplements input[type=checkbox]{width:20px;height:20px;accent-color:#226b63}.nutrition-supplements button{justify-self:start}.other-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) minmax(150px,1.1fr);border:1px solid #dce5e5;border-radius:12px;overflow:hidden}.other-day{display:flex;flex-direction:column;gap:12px;padding:14px 10px;border:0;border-right:1px solid #e0e8e8;background:#fff;text-align:left;min-width:0;color:#29424a;cursor:pointer}.other-day:hover{background:#f2f8f6}.other-day--today{background:#edf7f4}.other-day time{font-size:12px;font-weight:650;color:#536b72}.other-day-session{display:flex;flex-direction:column;gap:5px;font-size:12px;overflow-wrap:anywhere;border-top:1px solid #e5ebeb;padding-top:10px}.other-day-session strong{font-size:13px;line-height:1.4}.other-day-session small{font-size:10px;color:#6a7b80;letter-spacing:.04em;margin-top:4px}.other-status{font-size:11px;color:#5b747b;text-transform:capitalize}.other-status--done{color:#176c5d}.other-status--adjusted{color:#856535}.other-status--not_met{color:#915c52}.other-week-total{padding:14px;background:#f2f6f5;font-size:12px}.other-week-total h3{font-size:14px;margin:0 0 16px}.other-week-total dl{display:grid;gap:14px;margin:0}.other-week-total dd{margin:4px 0 0;font-weight:600}.other-week-total small{color:#6a7b80;font-size:11px}.other-filter{margin:14px 0;max-width:420px}.other-muted{color:#70818a;font-size:12px;line-height:1.6}.other-week{margin:20px 0}.other-goals{margin:16px 0}.other-goals summary,.other-routines summary{cursor:pointer;color:#315f58;font-weight:600;margin:12px 0}.other-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.other-editor label,.other-goals label,.other-session-detail label{display:grid;gap:6px;font-size:13px;margin:12px 0;color:#536b72}.other-editor input,.other-editor select,.other-editor textarea,.other-goals input,.other-goals select,.other-session-detail select{width:100%;min-width:0;box-sizing:border-box;border:1px solid #cddcde;border-radius:8px;padding:10px;background:#fff;color:#233b42;font:inherit}.other-editor fieldset{border:0;padding:0;min-width:0}.other-editor .other-exercise{border:1px solid #d7e2e1;border-radius:10px;padding:12px;margin:14px 0}.other-set{border-top:1px solid #e2e8e8;padding:10px 0}.other-editor .other-check{display:flex;align-items:center;gap:8px}.other-check input{width:18px;height:18px}.other-editor details{margin:12px 0}.other-editor{background:#f5f9f8;padding:16px;border:1px solid #d5e3e0;border-radius:12px;margin-top:22px}.other-editor small{color:#6a7b80;font-size:12px;line-height:1.5}.other-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.other-session-detail{display:flex;flex-direction:column;gap:6px;padding:14px 0;border-bottom:1px solid #dfe8e6;overflow-wrap:anywhere}.other-session-detail>span{font-size:12px;color:#687d83}.other-session-detail p{margin:3px 0;font-size:14px}.other-drawer{width:min(660px,100%);padding:24px;overflow-y:auto}.other-save-status{color:#1a7063;font-size:13px}.other-day:focus-visible{outline:3px solid #23786d;outline-offset:-3px}@media(max-width:1100px){.other-week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.other-day{border-bottom:1px solid #e0e8e8}}@media(max-width:600px){.other-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.other-drawer{width:100%;height:92dvh;padding:18px;padding-bottom:max(18px,env(safe-area-inset-bottom))}.other-drawer h2{font-size:19px}.other-calendar h2{font-size:21px}.other-calendar .week-planner-toolbar{align-items:stretch}.other-calendar .segmented-control{width:100%}.other-calendar .segmented-control__button{flex:1}.other-fields{gap:8px}.other-day{padding:14px 10px}}.other-sport-icon{vertical-align:middle;flex-shrink:0;margin-right:2px;color:#39746a}.other-day-duration{margin-top:auto;padding-top:12px;color:#657e82;font-size:11px}.nutrition-drinks{display:flex;align-items:center;gap:.35rem;color:var(--muted, #61716e);font-size:.75rem}.nutrition-month-summary{padding:1rem;border:1px solid #d7e3df;border-radius:.75rem;margin-bottom:1rem}.nutrition-month-summary dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.nutrition-month-summary dt{font-size:.8rem;color:#61716e}.nutrition-month-summary dd{margin:.25rem 0;font-weight:600}@media(max-width:700px){.nutrition-month-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.nutrition-micro-heading,.nutrition-micro-row>summary{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.75fr) minmax(0,1fr);gap:10px;align-items:start}.nutrition-micro-heading{font-size:11px;color:#6c7b80;padding:10px 0}.nutrition-micro-row{border-top:1px solid #e4ecea;padding:10px 0;font-size:12px}.nutrition-micro-row>summary{cursor:pointer;color:#294e4a;overflow-wrap:anywhere}.nutrition-micro-row small,.nutrition-micro-sources small{display:block;font-size:11px;color:#6c7b80;margin-top:4px}.nutrition-micro-sources{padding-left:18px;overflow-wrap:anywhere}.nutrition-micro-sources li{margin:8px 0}.nutrition-label-nutrient{border-top:1px solid #e4ecea;padding:10px 0}.calendar-mode-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.calendar-mode-bar .nutrition-mode-toggle{margin:0}.calendar-default-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px;padding:5px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font:inherit;font-size:var(--text-xs);cursor:pointer}.calendar-default-toggle[aria-pressed=true]{color:var(--color-accent)}.calendar-default-toggle:hover{background:var(--color-accent-soft);border-color:var(--color-border)}.calendar-default-toggle:disabled{opacity:.6;cursor:wait}.calendar-default-dot{display:inline-block;width:4px;height:4px;margin-left:5px;border-radius:50%;background:currentColor;vertical-align:middle}.calendar-default-toggle:focus-visible,.nutrition-calendar summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.nutrition-calendar :is(.ghost-button,.primary-button,.secondary-button){min-height:32px;padding:6px 10px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500;box-shadow:none}.nutrition-calendar :is(.ghost-button,.primary-button,.secondary-button):hover{transform:none;box-shadow:none}.nutrition-calendar :is(input:not([type=checkbox]):not([type=radio]),select,textarea){box-sizing:border-box;min-width:0;min-height:32px;padding:6px 8px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary);font:inherit;font-size:var(--text-xs)}.nutrition-calendar :is(input,select,textarea):focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.nutrition-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px}.nutrition-tools .calendar-toolbar-actions{display:flex;flex-wrap:wrap;gap:6px}.nutrition-tools>.nutrition-muted{font-size:11px}.nutrition-accounting-note{color:var(--color-text-muted);font-size:11px;margin-top:2px}.nutrition-accounting-note summary{cursor:pointer;width:fit-content}.nutrition-accounting-note p{max-width:90ch;line-height:1.6;margin:6px 0 0}.weight-progress{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px;margin:0 0 4px;min-width:0}.weight-progress-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}.weight-progress-heading h3{margin:0;font-size:var(--text-sm);font-weight:600}.weight-progress-controls{display:flex;align-items:center;gap:6px}.weight-progress-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:8px}.weight-progress-metrics>div{min-width:0}.weight-progress-metrics>div>span{color:var(--color-text-secondary);font-size:11px}.weight-progress-metrics strong{display:block;font-size:17px;line-height:1.4;color:var(--color-text-primary);font-weight:600;font-variant-numeric:tabular-nums}.weight-progress-metrics strong small{font-weight:400;font-size:11px;color:var(--color-text-muted)}.weight-progress-metrics>div>small{display:block;font-size:10px;color:var(--color-text-muted);line-height:1.45}.weight-chart{height:120px;margin-top:8px;min-width:0}.weight-chart svg{display:block;width:100%;height:120px;overflow:visible}.weight-chart-grid line{stroke:var(--color-border);stroke-width:.7}.weight-chart-grid text,.weight-chart-date{font-size:10px;fill:var(--color-text-muted)}.weight-chart-trend{fill:none;stroke:var(--color-accent);stroke-width:2}.weight-chart-point{fill:var(--color-accent);opacity:.6}.weight-chart-target{fill:none;stroke:var(--color-text-muted);stroke-width:1;stroke-dasharray:4 4}.weight-chart-hit{fill:transparent;cursor:pointer}.weight-chart-hit:focus{outline:none;stroke:var(--color-accent);stroke-width:1.5}.weight-chart-empty{display:flex;align-items:center;justify-content:center;height:100%;font-size:12px;color:var(--color-text-muted)}.weight-chart-caption{min-height:16px;color:var(--color-text-muted);font-size:10px;line-height:1.6;margin:3px 0}.weight-chart-legend{display:flex;gap:16px;flex-wrap:wrap}.weight-progress-details{display:flex;flex-wrap:wrap;gap:4px 20px;padding-top:5px;border-top:1px solid var(--color-border)}.weight-progress-details details{min-width:0;max-width:100%;font-size:11px;color:var(--color-text-secondary)}.weight-progress-details details[open]{flex-basis:100%}.weight-progress-details summary{cursor:pointer;width:fit-content;padding:4px 0}.weight-measurements{max-height:220px;overflow:auto;margin-top:6px}.weight-measurements table{width:100%;border-collapse:collapse;font-size:11px}.weight-measurements :is(th,td){text-align:right;padding:6px 8px;border-bottom:1px solid var(--color-border)}.weight-measurements :is(th,td):first-child{text-align:left}.weight-measurements th{position:sticky;top:0;background:var(--color-surface-muted);font-weight:500}.weight-target{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:8px 0}.weight-target label{display:grid;gap:4px;font-size:11px}.weight-target input{width:112px}.burn-setup{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px;font-size:12px}.burn-setup-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.burn-setup-heading h3{margin:0;font-size:13px}.burn-setup p{color:var(--color-text-secondary);line-height:1.6;margin:8px 0;max-width:90ch}.burn-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,280px));gap:8px 12px;align-items:end;margin:12px 0}.burn-inputs label{display:grid;gap:4px;font-size:11px}.burn-inputs .burn-step-toggle{display:flex;align-items:center;gap:8px;grid-column:1 / -1}.burn-inputs .burn-step-toggle input{width:auto;margin:0}.nutrition-step-energy{padding:8px 0;border-top:1px solid var(--color-border);font-size:12px}.burn-inputs p{grid-column:1 / -1;margin:0}.burn-inputs>button{justify-self:start}.nutrition-weeks{gap:16px}.nutrition-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));border-radius:var(--radius-sm)}.nutrition-day{min-height:166px;padding:10px;gap:5px}.nutrition-day:nth-child(7){border-right:0}.nutrition-day-heading{display:flex;gap:4px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:7px}.nutrition-day time,.nutrition-week-grid--compact .nutrition-day time{font-size:11px;margin:0;font-weight:500}.nutrition-today-label{color:var(--color-accent);font-size:9px;text-transform:uppercase;letter-spacing:.03em}.nutrition-day-balance{min-height:43px;margin-bottom:2px;display:flex;flex-direction:column;justify-content:center}.nutrition-day-balance>span:not(.nutrition-day-state){color:var(--color-text-secondary);font-size:10px}.nutrition-day-balance strong{font-size:20px;line-height:1.25;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.nutrition-day-balance strong small{font-size:10px;font-weight:400;color:var(--color-text-muted)}.nutrition-day-state{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.nutrition-day-line{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 6px;font-size:11px;line-height:1.5;color:var(--color-text-secondary)}.nutrition-day-line>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.nutrition-day-line small{font-size:9px;color:var(--color-text-muted)}.nutrition-day-foot{display:flex;flex-wrap:wrap;gap:3px 10px;margin:auto 0 0;padding-top:7px;font-size:10px;color:var(--color-text-muted)}.nutrition-day--future{background:var(--color-surface-muted)}.nutrition-day--future time{color:var(--color-text-muted)}.nutrition-future-hint{visibility:hidden;margin-top:24px;font-size:11px;color:var(--color-accent)}.nutrition-day--future:is(:hover,:focus-visible) .nutrition-future-hint{visibility:visible}.nutrition-week-grid--compact .nutrition-day{min-height:140px;padding:8px}.nutrition-week-total{grid-column:1 / -1;padding:10px 12px;border-top:1px solid var(--color-border);background:var(--color-surface-muted)}.nutrition-week-total h3{font-size:10px;color:var(--color-text-secondary);margin:0 0 7px;font-weight:500}.nutrition-week-total dl{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px 14px}.nutrition-week-total dt{font-size:10px}.nutrition-week-total dd{font-size:14px;line-height:1.4;margin:1px 0;font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.nutrition-week-total .nutrition-muted{font-size:9px}.nutrition-month-summary{border-radius:var(--radius-sm);padding:10px 12px;margin:0}.nutrition-month-summary h3{font-size:12px;margin:0 0 8px}.nutrition-month-summary dl{margin:0}.nutrition-month-summary dt{font-size:11px}.nutrition-month-summary dd{font-size:14px}.nutrition-month-summary p{font-size:10px;margin:8px 0 0}@media(max-width:1000px){.nutrition-week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nutrition-day{border-bottom:1px solid var(--color-border)}.nutrition-day:nth-child(4){border-right:0}}@media(max-width:600px){.calendar-mode-bar{gap:3px 8px}.calendar-default-toggle{margin-left:auto}.nutrition-tools>.nutrition-muted{display:none}.nutrition-tools{justify-content:flex-end}.weight-progress{padding:10px}.weight-progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px}.nutrition-calendar :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}.nutrition-calendar .weight-progress-controls select{font-size:12px}.nutrition-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-day{min-height:155px;padding:10px}.nutrition-day:nth-child(2n){border-right:0}.nutrition-day:nth-child(7){border-right:1px solid var(--color-border)}.nutrition-day--future{min-height:76px}.nutrition-future-hint{margin-top:8px}.nutrition-week-total dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.burn-inputs{grid-template-columns:minmax(0,1fr)}}@media(pointer:coarse){.calendar-default-toggle,.nutrition-calendar :is(.ghost-button,.primary-button,.secondary-button),.weight-progress-details summary{min-height:40px}.weight-progress-details summary{display:flex;align-items:center}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.nutrition-dashboard{background:#f8f7f3;padding:24px;gap:18px;color:var(--color-text-primary)}.nutrition-dashboard-header,.nutrition-range-row,.energy-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.nutrition-dashboard-header h2{margin:0;font-size:28px;letter-spacing:-.7px}.nutrition-dashboard-header p,.energy-heading p{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.nutrition-range-row{justify-content:flex-start;padding:12px 0;border-block:1px solid var(--color-border)}.nutrition-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:8px 0}.nutrition-summary-strip>div{display:flex;flex-direction:column;gap:5px}.nutrition-summary-strip span,.nutrition-summary-strip small{color:var(--color-text-secondary);font-size:12px}.nutrition-summary-strip strong{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.nutrition-sync-note{display:flex;gap:12px;justify-content:space-between;align-items:center;font-size:12px;color:var(--color-text-secondary)}.nutrition-sync-note p{margin:0;flex:1}.nutrition-selectors{max-height:330px;overflow:auto}.nutrition-day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.nutrition-day-selector{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;min-height:94px;padding:12px 10px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text-primary);cursor:pointer;font:inherit;text-align:left}.nutrition-day-selector time,.nutrition-day-selector small{font-size:11px;color:var(--color-text-secondary)}.nutrition-day-selector strong{font-size:13px;font-weight:600}.nutrition-day-selector[aria-current=date]{border-top:3px solid var(--color-accent);padding-top:10px}.nutrition-day-selector[aria-pressed=true]{background:#e9f1ed;border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.nutrition-day-selector.is-upcoming{background:#f1f1ee}.nutrition-dashboard button:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.nutrition-main-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px;align-items:start}.energy-card,.nutrition-day-panel,.nutrition-dashboard .weight-progress{min-width:0;background:#fff;border:1px solid var(--color-border);border-radius:10px;padding:20px}.energy-heading h3,.nutrition-day-panel h3{margin:0;font-size:18px}.energy-heading .segmented-control{font-size:12px}.energy-legend{display:flex;flex-wrap:wrap;gap:15px;font-size:11px;color:var(--color-text-secondary);margin:18px 0 6px}.energy-legend span:first-child{color:#426f67}.energy-legend span:nth-child(2){color:#886426}.energy-scroll{overflow-x:auto;max-width:100%}.energy-scroll svg{min-width:100%;display:block;height:290px}.energy-grid line{stroke:#e6e9e5;stroke-width:1}.energy-grid line.energy-zero{stroke:#89968f;stroke-width:1.5}.energy-grid text,.energy-date,.energy-missing{fill:#65716c;font-size:11px}.energy-hit{fill:transparent;cursor:pointer}.energy-hit:focus{outline:none;stroke:var(--color-accent);stroke-width:2}.energy-inspection{min-height:52px;margin:12px 0 0;padding:10px 12px;background:#f5f7f3;border-radius:6px;color:#40534b;font-size:12px;line-height:1.6}.nutrition-day-panel{display:flex;flex-direction:column;gap:16px}.nutrition-status{display:inline-block;margin-top:8px;background:#f2f3ed;color:#56614f;border-radius:4px;padding:3px 7px;font-size:11px}.nutrition-detail-values{margin:0;display:grid;gap:12px;font-size:12px}.nutrition-detail-values div{display:flex;justify-content:space-between;gap:12px}.nutrition-detail-values dt{color:var(--color-text-secondary)}.nutrition-detail-values dd{margin:0;font-weight:600;text-align:right}.nutrition-panel-content{min-height:100px;max-height:220px;overflow:auto}.nutrition-food-preview{list-style:none;margin:0;padding:0}.nutrition-food-preview li{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--color-border);font-size:12px}.nutrition-food-preview li span{overflow-wrap:anywhere}.nutrition-food-preview strong{white-space:nowrap;font-weight:500}.nutrition-macro-preview{display:grid;gap:14px;font-size:12px}.nutrition-macro-preview>div>div:first-child{display:flex;justify-content:space-between;text-transform:capitalize}.nutrition-macro-preview small{color:var(--color-text-secondary);font-size:10px}.nutrition-macro-track{height:5px;background:#edf1eb;border-radius:3px;margin:5px 0}.nutrition-macro-track span{display:block;background:#7c9e92;height:100%;border-radius:3px}.nutrition-open-log{align-self:flex-start}.nutrition-dashboard .nutrition-week-total{margin:8px 0 18px}@media(max-width:900px){.nutrition-main-row{grid-template-columns:1fr}}@media(max-width:600px){.nutrition-dashboard{padding:14px;gap:14px}.nutrition-summary-strip{grid-template-columns:1fr 1fr;gap:18px}.nutrition-summary-strip>div:first-child{grid-column:1/-1}.nutrition-summary-strip strong{font-size:17px}.nutrition-day-strip{grid-template-columns:repeat(7,108px);width:max-content;min-width:100%}.nutrition-selectors{overflow:auto}.nutrition-day-selector{min-height:98px}.nutrition-range-row .segmented-control{width:auto}.nutrition-sync-note{flex-wrap:wrap}.energy-card,.nutrition-day-panel,.nutrition-dashboard .weight-progress{padding:14px}.nutrition-dashboard .segmented-control{max-width:100%}.nutrition-dashboard .nutrition-muted{font-size:11px}}@media(prefers-reduced-motion:reduce){.nutrition-dashboard *,.nutrition-dashboard *:before,.nutrition-dashboard *:after{transition:none!important;animation:none!important}}.energy-inspection{height:72px;overflow:auto}.weight-chart-legend{font-size:11px;color:var(--color-text-secondary)}@media(max-width:600px){.nutrition-range-row{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;gap:8px}.nutrition-range-row .calendar-date-dropdown{grid-column:2;min-width:0;width:100%}.nutrition-range-row .calendar-date-trigger{min-width:0;padding:6px;font-size:10px}.nutrition-range-row>.segmented-control{grid-column:2 / 4;width:100%}.nutrition-range-row>button{padding:6px 3px}.nutrition-range-row>button:last-child{grid-column:1/-1;justify-self:start}.energy-inspection{height:110px}}.nutrition-alcohol-summary{display:grid;grid-template-columns:1fr 1fr 1.5fr auto;align-items:center;gap:12px 24px;padding:18px 20px;background:#fff;border:1px solid var(--color-border);border-radius:10px}.nutrition-alcohol-summary h3{margin:0;font-size:17px}.nutrition-alcohol-summary p{margin:4px 0 0;color:var(--color-text-secondary);font-size:11px}.nutrition-alcohol-metric{display:flex;flex-direction:column;gap:4px}.nutrition-alcohol-metric span,.nutrition-alcohol-metric small{font-size:11px;color:var(--color-text-secondary)}.nutrition-alcohol-metric strong{font-size:21px;font-weight:600;font-variant-numeric:tabular-nums}.nutrition-alcohol-summary .nutrition-alcohol-footnote{grid-column:1/-1}@media(max-width:700px){.nutrition-alcohol-summary{grid-template-columns:1fr 1fr;padding:14px;gap:16px}.nutrition-alcohol-summary>div:first-child{grid-column:1/-1}.nutrition-alcohol-summary>button{justify-self:start}}.app-shell{--control-height: 34px;--control-radius: 6px}.app-shell :is(.primary-button,.secondary-button,.ghost-button,.segmented-control__button){min-height:var(--control-height);padding:6px 11px;border-radius:var(--control-radius);font-size:13px;line-height:20px;box-shadow:none}.app-shell .primary-button{background:var(--color-accent);color:#fff}.app-shell .secondary-button{background:var(--color-accent-soft)}.app-shell :is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.app-shell .app-header{padding:12px 16px}.app-shell .app-header h1{font-size:19px}.app-shell .primary-nav a{min-height:var(--control-height);padding:6px 11px;box-sizing:border-box;font-size:13px}.app-shell .account-menu-panel{padding:8px;gap:4px}.app-shell .account-menu-panel :is(a,button){text-align:left}.app-shell .panel{padding:16px;border-radius:8px;box-shadow:none}.app-shell .panel-stack{gap:16px}.app-shell :is(.plan-workspace-heading,.race-heading){gap:12px;margin:4px 0 12px}.app-shell :is(.plan-workspace-heading,.race-heading) h2{font-size:22px;margin:0 0 5px}.app-shell :is(.plan-workspace-heading,.race-heading) p{font-size:13px;margin:0}.app-shell .plan-workspace-controls{gap:8px}.app-shell .plan-workspace-controls select{min-height:var(--control-height);padding:6px 9px;max-width:min(330px,90vw)}.app-shell .plan-workspace-tabs{margin-bottom:12px;gap:18px}.app-shell .plan-workspace-tabs button{min-height:var(--control-height);padding:7px 2px;font-size:13px}.app-shell .plan-create-choices{gap:12px;margin-bottom:12px}.app-shell .plan-create-choices button{padding:16px}.app-shell .plan-create-choices span{margin-top:5px;font-size:13px}.app-shell .plan-builder{max-width:880px}.app-shell .plan-builder label{display:grid;gap:5px;font-size:13px}.app-shell .plan-builder :is(input:not([type=checkbox]),select,textarea){width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid var(--color-border);border-radius:6px;background:#fff;font:inherit;color:inherit}.app-shell .plan-day-choices label{display:inline-flex;align-items:center;gap:5px}.app-shell .plan-builder .race-fields{gap:12px}.app-shell .plan-optional{margin:4px 0}.app-shell .plan-optional>.race-fields{margin-top:12px}.app-shell .plan-notes>.muted-copy{font-size:12px;margin:6px 0 12px}.app-shell .plan-notes .plan-actions button[aria-pressed=true]{background:var(--color-accent-soft);color:var(--color-accent);border-color:var(--color-accent)}.app-shell .calendar-command-bar{gap:12px;margin-bottom:12px;padding-bottom:12px}.app-shell .week-planner-heading h2{font-size:18px}.app-shell .week-planner-toolbar{gap:8px}.app-shell .week-snapshot-card{padding:12px;margin-bottom:12px}.app-shell .calendar-metrics-snapshot{padding:10px 12px}.app-shell .schedule-summary small{display:block;font-size:11px;color:var(--color-text-secondary);margin-top:3px}.app-shell .calendar-detail-drawer{width:min(620px,100%);padding:16px;box-sizing:border-box}.app-shell .planning-dialog{width:min(680px,100%);padding:16px}.app-shell :is(.planning-dialog>header,.calendar-detail-header){position:sticky;top:-16px;z-index:3;padding:12px 0;margin:-4px 0 12px;background:var(--color-surface,#fff);border-bottom:1px solid var(--color-border)}.app-shell :is(.planning-dialog>header,.calendar-detail-header) h2{font-size:19px}.app-shell .nutrition-dashboard-header{margin-bottom:12px}.app-shell .nutrition-dashboard-header h2{font-size:20px}.app-shell .nutrition-range-row{gap:8px}.app-shell .nutrition-day-overview{margin:16px 0}.app-shell .nutrition-day-overview>summary{cursor:pointer;margin-bottom:12px;font-weight:600}.app-shell .race-filters{margin:12px 0}.app-shell .race-heading>button{flex-shrink:0;white-space:nowrap}.app-shell .race-filters .segmented-control__button{padding-inline:8px;white-space:nowrap}.app-shell .races-page :is(input,select){min-height:var(--control-height);padding:6px 10px;border-radius:6px}.app-shell .race-list{gap:8px}.app-shell .race-row{padding:12px;gap:12px}.app-shell .race-row-body{gap:3px}.app-shell .race-row-body strong{font-size:15px}.app-shell .race-row .race-picture{width:48px;height:48px;border-radius:6px}.app-shell .race-row .race-placeholder small{display:none}.app-shell .race-lookup{gap:8px;align-items:end}.app-shell .race-lookup small{font-size:12px}.app-shell .race-summary{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}.app-shell .race-summary p{margin:0 0 8px}.app-shell .race-image-section{margin:12px 0;padding:12px 0}.app-shell .race-image-section>summary{cursor:pointer;font-weight:600}.app-shell .analytics-page{gap:16px}.app-shell .analytics-page-header h2{margin:3px 0;font-size:22px}.app-shell .analytics-detail>summary{cursor:pointer;padding:2px;font-weight:600}.app-shell .analytics-detail>section{margin-top:12px}.app-shell .analytics-score-gauge{width:150px;height:150px}.app-shell .history-panel-heading{gap:12px}.app-shell .history-filter-counts{color:var(--color-text-secondary);font-size:12px}.app-shell .archive-week-summary,.app-shell .archive-card{padding:12px}.app-shell .archive-card-head{cursor:pointer;margin-bottom:10px}.app-shell .archive-card-head h3{margin:0;font-size:15px}.app-shell .archive-card-meta p{margin:0;font-size:12px}.app-shell .settings-jump{display:flex;gap:18px;font-size:13px}.app-shell .settings-jump a{color:var(--color-accent)}.app-shell .settings-page .integration-card{padding:12px}.app-shell .settings-page h2{font-size:19px}.app-shell .settings-page :is(#preferences,#goals,#connections,#plan-import){scroll-margin-top:16px}.app-shell .settings-page details>summary{cursor:pointer}.calendar-page{gap:8px}.calendar-page .unified-calendar{gap:8px;padding:12px}.calendar-page .unified-calendar :is(.ghost-button,.segmented-control__button),.app-shell .calendar-page .calendar-mode-bar :is(.ghost-button,.segmented-control__button,.nutrition-mode-button){min-height:30px;padding:4px 8px;font-size:12px;line-height:20px}.calendar-page .unified-calendar .calendar-plan-bar{gap:8px;margin:0;padding:0 0 8px;font-size:12px}.calendar-page .unified-calendar .calendar-plan-bar label{gap:6px}.calendar-page .unified-calendar .calendar-plan-bar select{min-height:30px;padding:4px 24px 4px 8px;font-size:12px}.calendar-page .unified-calendar .calendar-command-bar{gap:8px;margin:0;padding:0 0 8px}.calendar-page .unified-calendar .week-planner-toolbar{gap:5px}.calendar-page .unified-calendar .week-planner-heading h2{font-size:16px}.calendar-page .unified-calendar .calendar-week-context{gap:8px;margin:0;padding:10px;font-size:12px}.calendar-page .unified-calendar .calendar-week-context p{margin:4px 0 0;line-height:1.4}.calendar-page .unified-calendar .calendar-week-context summary{margin-top:4px}.calendar-page .unified-calendar .plan-actions{gap:6px;margin:0}.calendar-page .unified-calendar .schedule-summary{gap:6px;padding:0;font-size:12px}.calendar-page .unified-calendar .schedule-summary>span{padding:7px 9px;min-width:140px}.calendar-page .unified-calendar .schedule-summary small{margin-top:3px;font-size:11px;line-height:1.35}.calendar-page .unified-calendar .schedule-move-hint{margin:0;font-size:11px;line-height:1.4}.calendar-page .unified-calendar .schedule-day{min-height:140px;padding:8px 6px}.calendar-page .unified-calendar .schedule-day time{margin:0 2px 7px;font-size:11px}.calendar-page .unified-calendar .schedule-grid--month .schedule-day{min-height:115px}.calendar-page .unified-calendar .schedule-session{padding:6px;margin-bottom:3px}.calendar-page .unified-calendar .schedule-session-title{font-size:12px;line-height:1.35}.calendar-page .unified-calendar .schedule-session small{font-size:11px;margin-top:3px;line-height:1.35}.calendar-page .unified-calendar .schedule-session-group{margin-bottom:5px}.calendar-page .unified-calendar :is(.schedule-add,.schedule-move){min-height:28px;padding:4px 3px;font-size:11px}.calendar-page .unified-calendar :is(.calendar-other-context,.calendar-nutrition-link){gap:8px;margin-top:2px;padding:8px 10px;font-size:12px}.calendar-page .unified-calendar .calendar-nutrition-link p{margin:2px 0 0;font-size:12px}.swim-match-suggestion{display:grid;gap:4px;padding:7px;border:1px solid #bed8d8;border-radius:6px;background:#f0f8f7;font-size:11px;overflow-wrap:anywhere}.swim-match-suggestion strong{color:#0f5963}.swim-match-suggestion small{font-size:11px;line-height:1.35}.swim-match-suggestion p{margin:0}.swim-plan-match{padding:10px;background:#f0f8f7;border:1px solid #bed8d8;border-radius:6px}.swim-plan-match h3{margin:0}@media(max-width:700px){.app-shell{--control-height: 44px}.app-shell .app-header{padding:10px}.app-shell .primary-nav a{display:flex;align-items:center;padding:8px;font-size:12px}.app-shell .panel{padding:12px}.app-shell :is(.plan-workspace-heading,.race-heading) h2{font-size:20px}.app-shell .plan-workspace-controls{width:100%}.app-shell .plan-workspace-controls select{max-width:100%}.app-shell .race-row-state{margin-left:60px}.app-shell .race-summary{grid-template-columns:1fr}.app-shell .race-lookup label{min-width:0;flex-basis:100%}.app-shell :is(.plan-builder input:not([type=checkbox]),.plan-builder select,.plan-builder textarea){font-size:16px}.calendar-page .unified-calendar{padding:10px}.calendar-page .unified-calendar :is(.ghost-button,.segmented-control__button,.schedule-add,.schedule-move),.app-shell .calendar-page .calendar-mode-bar :is(.ghost-button,.segmented-control__button,.nutrition-mode-button){min-height:44px;font-size:12px}.calendar-page .unified-calendar .calendar-plan-bar select{min-height:44px;font-size:16px}.calendar-page .unified-calendar .calendar-plan-bar label{flex:1;width:auto;min-width:0}.calendar-page .unified-calendar .calendar-plan-bar select{width:100%}.calendar-page .unified-calendar .calendar-week-context>div:first-child{min-width:0;flex-basis:100%}.calendar-page .unified-calendar .schedule-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-page .unified-calendar .schedule-summary>span{min-width:0;padding:7px}.calendar-page .unified-calendar :is(.schedule-day,.schedule-grid--month .schedule-day){min-height:60px;padding:8px}.calendar-page .unified-calendar .schedule-session-title{font-size:13px}.calendar-page .unified-calendar .schedule-session{min-height:44px;padding:7px}}
