.ai-explanation{overflow-wrap:anywhere;background:#f4f7f3;border:1px solid #cbd8d0;border-radius:14px;margin-top:20px;padding:16px}.ai-explanation h3,.ai-explanation h4{margin-top:0}.ai-explanation label{gap:8px;margin:12px 0;display:grid}.ai-explanation select{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:10px;padding:8px 12px}.ai-explanation .checkbox-row{align-items:flex-start;display:flex}.ai-explanation .form-actions{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;padding:0;position:static}.ai-explanation li{margin:6px 0}.ai-explanation{min-width:0}.ai-explanation h4{margin:16px 0 8px}.ai-explanation h5{font-size:inherit;margin:12px 0 6px}.ai-explanation p{margin:8px 0}.ai-explanation .form-actions{flex-wrap:wrap;gap:8px;display:flex}.ai-explanation button{white-space:normal;max-width:100%}.ai-details{margin:12px 0}.ai-details summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:600}.ai-caption{color:var(--muted);font-size:.85rem}.ai-quota{font-weight:600}@media (width<=480px){.ai-explanation{padding:12px}.ai-explanation .form-actions>button:first-child{width:100%}}:root{color:#17342d;font-synthesis:none;text-rendering:optimizelegibility;--ink:#143d33;--muted:#61756f;--surface:#fff;--line:#dfe7e1;--primary:#143d33;--accent:#e87955;--shadow:0 18px 45px #142e2814;background:#f4f7f1;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.training-context,.recommendation{margin-bottom:1rem}.training-primary-action{margin:1.25rem 0 2rem}.training-primary-action .button{width:100%;min-height:3.25rem;font-size:1.05rem}.training-form{gap:1rem;display:grid}.training-form h2,.recommendation h2{margin:0}.training-form label{gap:.4rem;font-weight:650;display:grid}.training-form textarea{resize:vertical;min-height:6rem}.training-form fieldset{border:1px solid var(--border,#cad5cf);border-radius:1rem;gap:.75rem;padding:1rem;display:grid}.form-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.85rem;display:grid}.checkbox-row,.check-grid label{align-items:center;gap:.55rem!important;font-weight:500!important;display:flex!important}.check-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem;display:grid}.form-actions{flex-wrap:wrap;gap:.75rem;display:flex}.context-missing,.questions,.recommendation-warnings{background:#fff4d8;border-radius:.8rem;padding:.85rem 1rem}.recommendation--recovery_recommended{border-color:#e1b75f}.recommendation--safety_hold,.recommendation--unavailable{border-color:#d7887e}.recommendation-facts,.equipment-list{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;display:grid}.recommendation-facts div,.equipment-list div{background:var(--surface-soft,#f1f5f2);border-radius:.65rem;padding:.7rem}.recommendation-facts dt,.equipment-list dt{color:var(--muted,#58665f);font-size:.78rem}.recommendation-facts dd,.equipment-list dd{margin:.2rem 0 0;font-weight:700}.training-steps{gap:.75rem;padding-left:1.5rem;display:grid}.training-steps li{border:1px solid var(--border,#d7dfda);border-radius:.8rem;padding:.9rem}.training-steps li>div{justify-content:space-between;gap:1rem;display:flex}.training-steps p{margin:.35rem 0 0}.medical-note{border-top:1px solid var(--border,#d7dfda);color:var(--muted,#58665f);padding-top:1rem;font-size:.9rem}.training-history{margin-top:2rem}.history-list{gap:.75rem;display:grid}.history-list .card{justify-content:space-between;align-items:center;gap:1rem;display:flex}.history-list h3,.history-list p{margin:.2rem 0}@media (width>=42rem){.training-primary-action .button{width:auto;min-width:18rem}}*{box-sizing:border-box}body{background:radial-gradient(circle at 80% 0,#e6f0d9 0,#0000 30rem),#f4f7f3;min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #4a8f78}h1,h2,p{margin-top:0}.app-shell{min-height:100vh}.sidebar{display:none}.app-frame{min-height:100vh;padding-bottom:86px}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#f4f7f3db;border-bottom:1px solid #17342d14;justify-content:space-between;align-items:center;height:68px;padding:0 20px;display:flex;position:sticky;top:0}.brand-mark{letter-spacing:-.03em;align-items:center;gap:10px;font-size:14px;font-weight:800;display:flex}.brand-logo{align-items:center;gap:10px;display:inline-flex}.brand-logo img{width:34px;height:34px;display:block}.offline-note{color:var(--muted);align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.offline-note svg{width:16px}.container{overflow-wrap:anywhere;width:min(1440px,100%);min-width:0;margin:0 auto;padding:34px 20px 48px}.container>*,.card,.container input,.container select,.container textarea{min-width:0}.hero{gap:20px;margin-bottom:28px;display:grid}.page-title{max-width:780px}.eyebrow,.feature-kicker{color:#527064;letter-spacing:.13em;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:800}.page-title h1{color:var(--ink);letter-spacing:-.065em;margin-bottom:14px;font-size:clamp(38px,8vw,68px);line-height:.98}.page-title>p:last-child{max-width:640px;color:var(--muted);margin-bottom:0;font-size:16px;line-height:1.7}.phase-badge{color:#52665f;background:#ffffff8c;border:1px solid #cbd9cf;border-radius:999px;width:fit-content;margin:0;padding:10px 14px;font-size:12px;font-weight:600}.feature-grid{gap:14px;display:grid}.card{background:var(--surface);box-shadow:var(--shadow);border:1px solid #17342d14;border-radius:24px}.feature-card{flex-direction:column;min-height:270px;padding:24px;display:flex;position:relative;overflow:hidden}.feature-card:after{content:"";background:var(--card-accent);opacity:.45;border-radius:50%;width:170px;height:170px;position:absolute;top:-70px;right:-70px}.feature-card--lime{--card-accent:#c9f58d}.feature-card--blue{--card-accent:#aadbe4}.feature-card--coral{--card-accent:#f5c2a8}.feature-icon{width:50px;height:50px;color:var(--primary);background:#f0f5f0;border-radius:16px;place-items:center;margin-bottom:auto;display:grid}.feature-icon svg{width:24px}.feature-kicker{margin-top:24px}.feature-card h2{letter-spacing:-.04em;margin-bottom:8px;font-size:24px}.feature-card>p:not(.feature-kicker){color:var(--muted);margin-bottom:18px;font-size:14px;line-height:1.55}.feature-card a{color:#244f42;align-items:center;gap:7px;width:fit-content;font-size:13px;font-weight:800;text-decoration:none;display:flex}.feature-card a svg{width:17px;transition:transform .2s}.feature-card a:hover svg{transform:translate(4px)}.principle-card{color:#e9f3ed;background:var(--primary);margin-top:14px;padding:25px}.principle-card .eyebrow{color:#afd0c4}.principle-card h2{letter-spacing:-.04em;max-width:520px;margin-bottom:14px;font-size:25px}.principle-card>p{color:#bdd0c9;margin-bottom:0;font-size:14px;line-height:1.6}.placeholder-card{align-items:flex-start;gap:18px;max-width:720px;padding:25px;display:flex}.placeholder-card>svg{color:#5e806e;flex:none;width:28px}.placeholder-card h2{margin-bottom:7px;font-size:18px}.placeholder-card p{color:var(--muted);margin:0;line-height:1.6}.bottom-nav{z-index:20;min-height:66px;padding:7px 5px max(7px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#142e28f5;border:1px solid #ffffff1a;border-radius:22px;grid-template-columns:repeat(6,1fr);display:grid;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 12px 34px #08181440}.bottom-nav a,.side-nav a{color:#aabbb5;justify-content:center;align-items:center;min-height:48px;text-decoration:none;display:flex}.bottom-nav a{border-radius:14px;flex-direction:column;gap:3px;font-size:9px;font-weight:700}.bottom-nav svg{width:19px}.bottom-nav a.active{color:var(--accent);background:#b7ec7017}.button{cursor:pointer;border:0;border-radius:12px;min-height:44px;padding:0 18px;font-weight:700}.button--primary{color:#fff;background:var(--primary)}.button--secondary{color:var(--primary);background:#e8eee9}.status-state{border:1px solid var(--line);background:#fff;border-radius:18px;align-items:flex-start;gap:16px;padding:24px;display:flex}.status-state>svg{flex:none}.status-state h2{margin-bottom:4px;font-size:17px}.status-state p{color:var(--muted);margin-bottom:0}.status-state--loading>svg,.spin{animation:1s linear infinite spin}.session-check{place-content:center;justify-items:start;max-width:560px;min-height:100vh;margin:auto;padding:56px 24px;display:grid}.session-check>svg{color:#527064;width:36px;height:36px;margin:48px 0 18px}.session-check h1{letter-spacing:-.055em;margin-bottom:10px;font-size:clamp(32px,8vw,52px)}.session-check p{max-width:480px;color:var(--muted);line-height:1.6}.session-check .button{margin-top:10px}.auth-layout{background:var(--primary);min-height:100vh;display:grid}.auth-intro{color:#fff;padding:32px 24px 56px}.auth-intro .brand-mark{margin-bottom:64px}.auth-intro .eyebrow{color:#b8d5cb}.auth-intro h1{letter-spacing:-.065em;margin-bottom:16px;font-size:clamp(44px,11vw,72px);line-height:.96}.auth-intro>p:last-child{color:#bed0ca;max-width:520px;line-height:1.65}.auth-panel{background:#f8faf7;border-radius:30px 30px 0 0;align-self:stretch;padding:38px 24px}.auth-panel>h2{letter-spacing:-.04em;margin-bottom:8px;font-size:30px}.auth-panel>p{color:var(--muted);line-height:1.5}.auth-form{gap:18px;margin-top:30px;display:grid}.auth-form label{color:#29483f;gap:8px;font-size:13px;font-weight:750;display:grid}.auth-form input{width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:12px;padding:0 13px}.password-field{display:block;position:relative}.password-field input{padding-right:52px}.password-field button{color:#567068;cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:5px;right:5px}.password-field svg{width:19px}.field-help{color:var(--muted);margin:-8px 0 0;font-size:12px}.form-error{color:#7b251e;background:#fbe6e2;border-radius:11px;margin:0;padding:12px 14px;font-size:13px}.form-success{background:#e4f4e9;border-radius:11px;margin-top:24px;padding:12px 14px;font-size:13px;color:#24543f!important}.forgot-link{color:#2e6756;justify-self:end;margin-top:-10px;font-size:13px;font-weight:750}.auth-switch{margin-top:26px;font-size:13px}.auth-switch a{color:#2e6756;font-weight:800}.account-card,.session-card{max-width:760px;margin-bottom:18px;padding:25px}.account-card dl{gap:14px;margin:20px 0 0;display:grid}.account-card dl div{border-bottom:1px solid var(--line);padding-bottom:12px}.account-card dt{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:700}.account-card dd{overflow-wrap:anywhere;margin:0}.session-card p{color:var(--muted);line-height:1.55}.session-actions{flex-wrap:wrap;gap:10px;display:flex}.button-link{align-items:center;width:fit-content;text-decoration:none;display:inline-flex}.route-status{max-width:760px;margin:0 auto;padding:48px 20px}.profile-form{gap:18px;max-width:860px;margin-top:30px;display:grid}.form-section{padding:24px}.form-section h2{margin-bottom:20px;font-size:21px}.form-grid{gap:18px;display:grid}.form-section label{color:#29483f;gap:8px;font-size:13px;font-weight:700;display:grid}.form-section input[type=number],.form-section input:not([type]),.form-section select,.form-section textarea{width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:12px;padding:10px 13px}.form-section textarea{resize:vertical}.form-section fieldset{border:0;margin:0 0 20px;padding:0}.form-section legend{color:#29483f;margin-bottom:12px;font-size:13px;font-weight:800}.check-grid{gap:12px;margin-top:20px;display:grid}.check-grid label{border:1px solid var(--line);background:#f8faf7;border-radius:11px;align-items:center;gap:10px;min-height:42px;padding:10px 12px;display:flex}.check-grid input{width:18px;height:18px}.preference-days+.preference-days{margin-top:24px}.preference-days>div{gap:10px;display:grid}.preference-days label{border:1px solid var(--line);background:#f8faf7;border-radius:11px;align-items:center;gap:10px;min-height:42px;padding:10px 12px;display:flex}.preference-days input{width:18px;height:18px}.field-error{color:#9a2e25;font-size:12px;font-weight:600}.section-help,.field-help{color:var(--muted);font-size:12px;line-height:1.5}.form-success,.offline-banner{color:#24543f;background:#e4f4e9;border-radius:11px;padding:12px 14px}.offline-banner{color:#6d4e19;background:#fff2cf;margin:24px 0 0}.form-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f4f7f3eb;border-radius:16px;padding:12px;position:sticky;bottom:82px}.form-actions .button{width:100%}.goals-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;margin:24px 0 18px;display:flex}.goals-toolbar label{color:#29483f;gap:6px;font-size:12px;font-weight:700;display:grid}.goals-toolbar select{min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:12px;padding:0 36px 0 12px}.goal-list{gap:14px;display:grid}.goal-card{border-left:5px solid #cbd8d0;padding:22px}.goal-card--primary{border-left-color:#77aa36}.goal-card__heading h2{margin:7px 0;font-size:21px}.goal-card__heading p{color:var(--muted);margin:0;font-size:13px}.goal-priority{color:#527064;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:800}.goal-actions{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.goal-form{margin-bottom:35px}.duration-fields>div{grid-template-columns:1fr 1fr;gap:10px;display:grid}.goal-description{margin-top:18px}.active-check{grid-template-columns:auto 1fr;align-items:center;margin-top:20px;display:flex!important}.active-check input{width:18px;height:18px}.goal-form .form-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.availability-summary{grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0;display:grid}.availability-summary div{text-align:center;border:1px solid var(--line);background:#fff;border-radius:14px;gap:4px;padding:14px 8px;display:grid}.availability-summary strong{color:var(--primary);font-size:24px}.availability-summary span{color:var(--muted);font-size:11px}.availability-week,.availability-exceptions{gap:14px;max-width:860px;display:grid}.availability-exceptions{margin-top:42px}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;display:flex}.section-heading h2{margin:0 0 5px;font-size:22px}.section-heading p{color:var(--muted);margin:0;font-size:13px}.availability-day,.exception-card{padding:20px}.availability-day--rest{background:#f0f3f0}.availability-day__heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.availability-day__heading h3,.exception-card h3{margin:0;font-size:18px}.availability-toggle,.availability-check{grid-template-columns:auto 1fr;align-items:center;gap:9px!important;display:flex!important}.availability-toggle input,.availability-check input{width:18px;height:18px}.availability-day__fields{gap:18px;margin-top:20px;display:grid}.availability-day__fields>label{color:#29483f;gap:8px;font-size:13px;font-weight:700;display:grid}.availability-day__fields input[type=number],.availability-day__fields select,.availability-day__fields textarea{width:100%;min-height:46px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:11px;padding:9px 12px}.sport-choices{border:0;margin:0;padding:0}.sport-choices legend{color:#29483f;margin-bottom:10px;font-size:13px;font-weight:800}.sport-choices>div{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.sport-choices label{border:1px solid var(--line);background:#f8faf7;border-radius:9px;align-items:center;gap:7px;min-height:40px;padding:8px;font-size:12px;display:flex}.sport-choices input{width:16px;height:16px}.rest-note,.exception-card p{color:var(--muted);margin:10px 0 0;font-size:13px;line-height:1.5}.exception-list{gap:12px;display:grid}.exception-card{flex-wrap:wrap;justify-content:space-between;gap:14px;display:flex}.exception-card .goal-actions{align-self:end;margin-top:0}.exception-form{margin-top:18px;margin-bottom:35px}.exception-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.integrations-grid{gap:18px;margin-top:28px;display:grid}.integration-card{padding:22px}.integration-card__heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.integration-card__heading h2{margin:0;font-size:25px}.integration-state{color:#52665f;background:#edf2ee;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}.integration-state--connected{color:#24543f;background:#e4f4e9}.integration-state--error,.integration-state--reauth_required{color:#7b251e;background:#fbe6e2}.integration-details{gap:10px;margin:20px 0;display:grid}.integration-details div{border-bottom:1px solid var(--line);justify-content:space-between;gap:18px;padding-bottom:9px;display:flex}.integration-details dt{color:var(--muted);font-size:12px;font-weight:700}.integration-details dd{text-align:right;overflow-wrap:anywhere;margin:0}.integration-note,.integration-error{color:#6d4e19;background:#fff2cf;border-radius:11px;padding:12px 14px;font-size:13px;line-height:1.5}.integration-error{color:#7b251e;background:#fbe6e2}.integration-actions{flex-wrap:wrap;gap:9px;display:flex}.integration-form{border-top:1px solid var(--line);gap:16px;margin-top:20px;padding-top:20px;display:grid}.integration-form>p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.integration-form label{color:#29483f;gap:8px;font-size:13px;font-weight:700;display:grid}.integration-form input{width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:12px;padding:10px 13px}.sync-panel{gap:16px;margin-top:26px;padding:22px;display:grid}.sync-panel p,.progress-empty,.metric-date,.activity-sport,.sync-history p{color:var(--muted);font-size:13px;line-height:1.5}.sync-panel label,.activity-filters label{color:#29483f;gap:6px;font-size:12px;font-weight:700;display:grid}.sync-panel select,.activity-filters select{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:11px;padding:0 34px 0 12px}.sync-actions{flex-wrap:wrap;gap:9px;display:flex}.sync-progress{color:#24543f;background:#e4f4e9;border-radius:11px;padding:12px 14px}.no-integrations{margin-top:18px;padding:22px}.progress-section{margin-top:38px}.provider-grid,.activity-list,.sync-history{gap:14px;margin-top:16px;display:grid}.progress-provider,.activity-card,.sync-history .card{padding:20px}.progress-heading,.activity-title,.sync-history .card>div:first-child{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.progress-heading h2,.activity-title h3{margin:0}.progress-heading span,.provider-tag,.sync-status{color:#52665f;background:#edf2ee;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.metric-grid{gap:9px;display:grid}.metric-grid div,.activity-card dl div{border-bottom:1px solid var(--line);padding-bottom:8px}.metric-grid dt,.activity-card dt{color:var(--muted);font-size:11px;font-weight:700}.metric-grid dd,.activity-card dd{overflow-wrap:anywhere;margin:3px 0 0}.activity-filters{gap:10px;margin-top:16px;display:grid}.activity-title time{color:var(--muted);text-align:right;font-size:11px}.activity-title h3{margin-top:8px;font-size:18px}.activity-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:14px 0 0;display:grid}.activity-card>.button{width:100%;margin-top:16px}.activity-feedback-form,.activity-feedback-summary{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:16px;display:grid}.activity-feedback-form label{color:#29483f;gap:6px;font-size:12px;font-weight:700;display:grid}.activity-feedback-form input,.activity-feedback-form select,.activity-feedback-form textarea{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:10px;padding:9px 11px}.activity-feedback-form textarea{resize:vertical;min-height:80px}.activity-feedback-summary p,.activity-feedback-summary details{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.activity-feedback-summary ul{overflow-wrap:anywhere;padding-left:20px}.sync-status--completed{color:#24543f;background:#e4f4e9}.sync-status--failed,.history-error{color:#7b251e}.history-error{font-weight:700}.plan-toolbar{align-items:end;gap:12px;margin:24px 0;display:grid}.season-entry{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:20px 0;padding:20px;display:flex}.season-entry h2,.season-entry p{margin-bottom:6px}.season-empty,.season-overview{margin:24px 0;padding:22px}.season-create{align-items:end;gap:12px;margin-top:20px;display:grid}.season-create label{color:#29483f;gap:7px;font-size:12px;font-weight:700;display:grid}.season-create select{min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:11px;padding:0 12px}.season-overview__heading,.season-block header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.season-overview dl,.season-block dl{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px;display:grid}.season-overview dl div,.season-block dl div{border-bottom:1px solid var(--line);padding:10px 0}.season-overview dt,.season-block dt{color:var(--muted);font-size:11px;font-weight:700}.season-overview dd,.season-block dd{margin:4px 0 0}.season-events,.season-blocks{margin-top:34px}.season-event-grid,.season-block-grid{gap:14px;display:grid}.season-event,.season-block{padding:20px}.season-event h3{margin:12px 0 8px}.season-event p,.season-block>p,.season-support{color:var(--muted);line-height:1.5}.season-block details{margin-top:14px}.season-block summary{cursor:pointer;font-weight:750}.season-back{margin:24px 0}.season-back a{color:#2e6756;font-weight:800}.plan-toolbar label{color:#29483f;gap:7px;font-size:12px;font-weight:700;display:grid}.plan-toolbar input{min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:11px;padding:0 12px}.plan-toolbar>p{color:var(--muted);grid-column:1/-1;margin:0;font-size:12px}.week-navigation{grid-template-columns:auto 1fr auto;gap:7px;display:grid}.week-navigation .button{padding:0 12px}.week-navigation svg{width:18px}.plan-empty{gap:12px;max-width:760px;display:grid}.plan-empty>p{color:var(--muted);margin:0;line-height:1.6}.plan-overview,.adaptation-result{margin:20px 0;padding:22px}.plan-overview__heading,.plan-day header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.plan-overview__heading h2,.plan-day h3{margin:0}.plan-status,.session-status{color:#52665f;background:#edf2ee;border-radius:999px;flex:none;padding:6px 9px;font-size:10px;font-weight:800}.plan-status--active,.session-status--completed{color:#24543f;background:#e4f4e9}.session-status--cancelled,.session-status--skipped,.session-status--replaced{color:#7b5140;background:#f5e8df}.plan-totals{grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0;display:grid}.plan-totals div{text-align:center;border:1px solid var(--line);border-radius:13px;gap:3px;padding:13px 8px;display:grid}.plan-totals dt,.plan-context dt,.plan-session-facts dt{color:var(--muted);font-size:11px;font-weight:700}.plan-totals dd{color:var(--primary);margin:0;font-size:22px;font-weight:800}.plan-context,.plan-session-facts{gap:9px;display:grid}.plan-context div,.plan-session-facts div{border-bottom:1px solid var(--line);padding-bottom:8px}.plan-context dd,.plan-session-facts dd{margin:3px 0 0}.reason-list{color:var(--muted);padding-left:20px;font-size:13px;line-height:1.55}.adapt-panel{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding-top:18px;display:flex}.adapt-panel p{color:var(--muted);flex:300px;margin:0;font-size:12px;line-height:1.5}.adaptation-result h2{font-size:20px}.adaptation-result h3{font-size:15px}.plan-days{gap:14px;margin-top:22px;display:grid}.plan-day{border-left:5px solid #cad8d0;padding:20px}.plan-day--today{border-left-color:var(--accent);box-shadow:0 10px 32px #142e2829}.plan-day--rest{color:var(--muted);background:#f0f3f0}.plan-day>h2{margin:18px 0 12px;font-size:21px}.plan-session-facts{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.session-relation{color:#35594d;background:#edf5ef;border-radius:10px;padding:10px 12px;font-size:12px}.equipment-summary,.session-detail{background:#f5f8f4;border-radius:13px;margin:16px 0;padding:15px}.equipment-summary h4,.session-detail h4{margin:0 0 9px}.equipment-summary p,.session-detail>p{color:var(--muted);margin:5px 0;font-size:12px;line-height:1.5}.session-detail .training-steps li>div{flex-wrap:wrap;align-items:flex-start}.session-detail .training-steps li>div span{color:var(--muted);font-size:11px;font-weight:700}.session-detail .training-step__duration{color:#35594d;font-size:13px;font-weight:700}.session-detail .training-step__target{border-top:1px solid var(--line);color:var(--ink);padding-top:7px;font-size:13px;line-height:1.45}.session-detail .training-step__instructions{color:var(--muted);font-size:13px;line-height:1.55}.nutrition-profile{max-width:900px;margin-top:26px}.nutrition-profile form{margin-top:22px}.nutrition-profile .check-grid{margin:22px 0}.nutrition-week{width:100%;margin-top:42px}.nutrition-week>.section-heading{margin-bottom:18px}.nutrition-summary,.nutrition-session{padding:22px}.nutrition-summary>p{color:var(--muted);line-height:1.55}.nutrition-summary dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.nutrition-summary dl div{text-align:center;border:1px solid var(--line);border-radius:12px;padding:12px 8px}.nutrition-summary dt,.nutrition-guidance dt{color:var(--muted);font-size:11px;font-weight:700}.nutrition-summary dd{color:var(--primary);margin:4px 0 0;font-weight:800}.nutrition-sessions,.nutrition-guidance-grid{gap:14px;margin-top:18px;display:grid}.nutrition-session{border-left:5px solid #7aaa47}.nutrition-session header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.nutrition-session header h3{margin:4px 0 0;font-size:20px}.nutrition-original-session{color:var(--muted);margin:7px 0 0;font-size:12px;line-height:1.45}.nutrition-classification{color:#35594d;font-size:13px;font-weight:800}.nutrition-guidance{background:#f5f8f4;border-radius:13px;padding:15px}.nutrition-guidance h4,.nutrition-warnings h4{margin:0 0 10px}.nutrition-guidance dl{gap:8px;margin:0;display:grid}.nutrition-guidance dl div{border-bottom:1px solid var(--line);padding-bottom:7px}.nutrition-guidance dd{margin:3px 0 0;font-size:13px;line-height:1.45}.nutrition-warnings{color:#6d4e19;background:#fff2cf;border-radius:13px;margin:14px 0;padding:14px}.nutrition-warnings ul{margin-bottom:0;padding-left:20px;font-size:12px;line-height:1.55}.nutrition-session details{color:var(--muted);font-size:13px}.nutrition-session summary{cursor:pointer;color:#35594d;font-weight:800}.nutrition-session-footer{gap:16px;min-width:0;margin-top:18px;display:grid}.nutrition-reasons{min-width:0}.nutrition-reasons summary,.nutrition-feedback-note{overflow-wrap:anywhere}.nutrition-feedback-note{margin:0}.nutrition-feedback,.nutrition-comparison{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.nutrition-feedback form{margin-top:16px}.nutrition-feedback .check-grid{margin:16px 0}.nutrition-comparison dl{gap:8px;margin-bottom:0;display:grid}.nutrition-comparison dl div{background:#f5f8f4;border-radius:10px;padding:10px}.nutrition-comparison dd{margin:3px 0 0}.nutrition-sessions>div>.button{width:100%;margin-top:10px}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=760px){.season-create{grid-template-columns:minmax(260px,1fr) auto}.season-event-grid,.season-block-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.container{padding:58px 44px 70px}.hero{grid-template-columns:1fr auto;align-items:end;margin-bottom:38px}.feature-grid{grid-template-columns:repeat(3,1fr);gap:18px}.principle-card{grid-template-columns:1.2fr 1fr;align-items:end;gap:40px;padding:32px;display:grid}.auth-layout{grid-template-columns:minmax(320px,1fr) minmax(440px,600px)}.auth-intro{flex-direction:column;justify-content:center;padding:54px clamp(38px,6vw,90px);display:flex}.auth-intro .brand-mark{position:absolute;top:38px}.auth-panel{border-radius:30px;align-self:center;margin:24px;padding:48px}.account-card dl{grid-template-columns:1fr 1fr}.form-grid,.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preference-days>div{grid-template-columns:repeat(4,minmax(0,1fr))}.availability-day__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.integrations-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.sync-panel{grid-template-columns:minmax(0,1fr) auto;align-items:end}.sync-panel .sync-actions{grid-column:1/-1}.provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.activity-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-list{grid-template-columns:repeat(2,minmax(0,1fr))}.sync-history,.history-list,.goal-list,.exception-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.plan-toolbar{grid-template-columns:minmax(190px,1fr) auto auto}.plan-days{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.nutrition-guidance-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.nutrition-sessions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (width>=1024px){.app-shell{grid-template-columns:244px 1fr;display:grid}.app-frame,.app-frame main{min-width:0}.sidebar{color:#fff;background:var(--primary);flex-direction:column;height:100vh;padding:28px 20px;display:flex;position:sticky;top:0}.sidebar .brand-mark{padding:0 10px 36px;font-size:15px}.side-nav{gap:5px;display:grid}.side-nav a{border-radius:13px;justify-content:flex-start;gap:13px;padding:0 14px;font-size:13px;font-weight:600}.side-nav a svg{width:19px}.side-nav a.active{color:#183a31;background:var(--accent)}.sidebar-note{color:#9eb5ad;margin:auto 10px 0;font-size:11px}.app-frame{padding-bottom:0}.topbar{justify-content:flex-end}.brand-mark--mobile,.bottom-nav{display:none}.form-actions{bottom:20px}}@media (width>=1280px){.activity-list,.nutrition-sessions,.season-event-grid,.season-block-grid,.sync-history,.history-list,.goal-list,.exception-list,.integrations-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.pwa-tools{padding:8px max(20px, env(safe-area-inset-left));color:var(--ink);overflow-wrap:anywhere;background:#e8eee9}.pwa-tools summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.pwa-tools summary:focus-visible{outline-offset:2px;outline:3px solid #4a8f78}.pwa-help{max-width:760px;padding:12px 0;line-height:1.6}.pwa-update{padding:16px 0}.pwa-update>div{flex-wrap:wrap;gap:10px;display:flex}.pwa-tools p{margin:8px 0}.route-loading{padding:32px}.skip-link{z-index:100;color:#fff;background:#142e28;border-radius:8px;padding:14px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}#main-content{scroll-margin-top:76px}
