.administration{max-width:960px;padding:24px 20px calc(110px + var(--pwa-install-offset,0px));overflow-wrap:anywhere;margin:auto}.administration nav,.administration li div{flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0;display:flex}.admin-records{gap:16px;padding:0;list-style:none;display:grid}.admin-records li{background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:16px;padding:20px}.administration button{cursor:pointer;min-height:44px;padding:10px 16px}.administration button:disabled{cursor:default;opacity:.6}.administration dialog{border-radius:16px;max-width:min(480px,100vw - 32px);padding:24px}.administration dialog::backdrop{background:#0009}.administration h1{letter-spacing:-.04em;margin:24px 0 16px;font-size:clamp(32px,6vw,54px)}.administration .brand-mark{margin-bottom:20px}.administration nav .button[aria-current=page]{color:var(--ink);background:#c9f58d}.administration dialog .button{margin:8px 8px 0 0}.timezone-select{gap:8px;min-width:0;display:grid}.timezone-select input,.timezone-select select{width:100%;min-width:0;min-height:48px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:12px;padding:10px 13px}.timezone-select .field-help{margin:0}: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}:root[data-text-size=large]{font-size:112.5%}:root[data-contrast=high]{--ink:#06251d;--muted:#344943;--line:#8ca098;--primary:#062f24;--shadow:0 0 0 1px #062f2447}:root[data-contrast=high] body{background:#fff}:root[data-motion=reduce] *,:root[data-motion=reduce] :before,:root[data-motion=reduce] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.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}.exercise-guide{border-top:1px solid var(--border,#d7dfda);margin-top:.75rem;padding-top:.65rem}.exercise-guide__visual{border:1px solid var(--border,#d7dfda);text-align:center;background:#fff;border-radius:.75rem;margin:0 0 .7rem;padding:.5rem}.exercise-guide__visual img{object-fit:contain;width:100%;max-width:24rem;height:auto;max-height:15rem;margin:0 auto;display:block}.exercise-guide__visual figcaption{color:var(--muted,#5d716a);margin-top:.25rem;font-size:.78rem}.exercise-guide summary{width:fit-content;color:var(--primary,#17342d);cursor:pointer;font-weight:750}.exercise-guide__content{background:var(--surface-soft,#f1f5f2);border-radius:.65rem;margin-top:.65rem;padding:.75rem}.exercise-guide__sequence{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.8rem;display:grid}.exercise-guide__position{border:1px solid var(--border,#d7dfda);background:var(--surface,#fff);text-align:center;border-radius:.6rem;min-height:5.25rem;padding:.65rem .5rem .5rem;position:relative}.exercise-guide__position:not(:last-child):after{content:"→";z-index:1;color:var(--primary,#17342d);font-weight:800;position:absolute;top:50%;right:-.58rem;transform:translateY(-50%)}.exercise-guide__position span{background:var(--primary,#17342d);color:#fff;border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;font-size:.8rem;font-weight:800;display:inline-grid}.exercise-guide__position p{margin:.4rem 0 0;font-size:.82rem;line-height:1.25}.exercise-guide__content>p:first-of-type{margin-top:0}@media (width<=420px){.exercise-guide__sequence{grid-template-columns:1fr}.exercise-guide__position{text-align:left;min-height:0}.exercise-guide__position span{vertical-align:middle;margin-right:.45rem}.exercise-guide__position p{display:inline}.exercise-guide__position:not(:last-child):after{content:"↓";top:auto;bottom:-.7rem;right:50%;transform:translate(50%)}}.session-player-entry{border:1px solid var(--border,#d7dfda);background:var(--surface-soft,#f1f5f2);border-radius:.9rem;margin:1rem 0;padding:1rem}.session-player-entry p{color:var(--muted,#58665f);margin:.65rem 0 0}.session-player{background:#f8fbf8;border:2px solid #7cae9b;border-radius:1rem;margin:1rem 0;padding:1.1rem}.session-player--recovery{background:#fff9eb;border-color:#d6a955}.session-player>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.session-player>header h3{margin:0}.session-player>header span{background:#e3eee8;border-radius:999px;padding:.3rem .55rem;font-size:.78rem;font-weight:750}.session-player progress{width:100%;height:.65rem;accent-color:var(--primary,#17342d);margin-top:1rem}.session-player__clock{font-variant-numeric:tabular-nums;text-align:center;margin:.85rem 0 .25rem;font-size:clamp(2.8rem,12vw,5rem);font-weight:850;line-height:1}.session-player__total{color:var(--muted,#58665f);text-align:center;margin:0 0 .75rem;font-size:.85rem}.session-player__total strong{color:var(--ink,#17201d);font-variant-numeric:tabular-nums}.session-player__countdown{color:#fff;background:#17342d;border-radius:999px;width:fit-content;margin:-.25rem auto .7rem;padding:.35rem .7rem;font-size:.85rem;font-weight:800}.session-player__coordination{color:#5f4700;background:#fff3cd;border-radius:.65rem;margin:.25rem 0 .75rem;padding:.65rem .75rem;font-weight:700}.session-player__prescription{text-align:center;min-height:1.2rem;font-weight:750}.session-player__target{background:#e3eee8;border-radius:.7rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .85rem;display:flex}.session-player__target span{color:var(--muted,#58665f);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:750}.session-player__target strong{text-align:right;font-size:1.05rem}.session-player__next{border:1px solid var(--border,#d7dfda);background:var(--surface,#fff);border-radius:.7rem;gap:.15rem;margin-top:.9rem;padding:.75rem .85rem;display:grid}.session-player__next span{color:var(--muted,#58665f);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:750}.session-player__next small{color:var(--muted,#58665f)}.session-player__controls{grid-template-columns:repeat(3,1fr);gap:.55rem;margin-top:1rem;display:grid}.session-player__controls .button{min-width:0;padding-inline:.6rem}.session-player__exit{width:100%;margin-top:.65rem}.session-player__exit-confirmation{background:#fff5f1;border:2px solid #9f5b48;border-radius:.75rem;margin-top:.75rem;padding:.85rem}.session-player__exit-confirmation p{color:var(--muted,#58665f);margin:.35rem 0 .75rem}.session-player__exit-confirmation>div{flex-wrap:wrap;gap:.55rem;display:flex}.session-player--complete{text-align:center}.two-factor-card{gap:.8rem;display:grid}.two-factor-card>h2,.two-factor-card>p{margin:0}.two-factor-guide{background:#f5f8f4;border-radius:14px;margin:.2rem 0 .35rem;padding:18px}.two-factor-guide h3{margin:0 0 10px;font-size:16px}.two-factor-guide ol{color:var(--muted);gap:8px;margin:0;padding-left:21px;line-height:1.5;display:grid}.two-factor-qr{border:1px solid var(--border,#d7dfda);background:#fff;border-radius:.75rem;width:min(16rem,100%);height:auto;padding:.5rem}.recovery-codes{background:var(--surface-soft,#f1f5f2);border-radius:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem;margin:0;padding:1rem 1rem 1rem 2.5rem;display:grid}.recovery-codes code{letter-spacing:.06em;font-size:1rem;font-weight:750}@media (width<=28rem){.recovery-codes,.session-player__controls{grid-template-columns:1fr}}.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;align-items:center;gap:12px;height:68px;padding:0 20px;display:flex;position:sticky;top:0}.topbar-actions{color:var(--primary);align-items:center;gap:14px;margin-left:auto;font-size:12px;font-weight:800;display:flex}.topbar-actions a{text-align:center}.account-menu,.notification-center{flex:none;position:relative}.notification-center__trigger{width:46px;height:46px;color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:relative}.notification-center__trigger:hover,.notification-center__trigger[aria-expanded=true]{background:#e4ebe6}.notification-center__trigger svg{width:21px}.notification-center__trigger>span{border:2px solid var(--surface);color:#fff;background:#b84539;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:850;display:grid;position:absolute;top:4px;right:3px}.notification-center__popover{border:1px solid var(--line);background:var(--surface);border-radius:20px;width:min(380px,100vw - 24px);padding:10px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 20px 55px #142e2833}.notification-center__popover header{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:10px;display:flex}.notification-center__popover header>button{color:var(--primary);cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:800}.notification-center__popover header div,.notification-center__popover a span{gap:3px;display:grid}.notification-center__popover small{color:var(--muted);line-height:1.35}.notification-item{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 36px;align-items:start;display:grid}.notification-item--unread{background:#f1f8f3}.notification-item>a{border-radius:12px;min-height:68px;padding:10px;text-decoration:none;display:block}.notification-item>button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;margin-top:8px;display:grid}.notification-item>button:hover{background:#e4ebe6}.notification-item>button svg{width:16px}.notification-center__all{color:var(--primary);justify-content:center;font-weight:800;align-items:center!important;min-height:44px!important;display:flex!important}.notification-center__popover a:hover{background:#eef3ef}.notification-center__popover a svg{width:20px;color:var(--primary)}.notification-center__empty{color:var(--muted);align-items:center;gap:10px;padding:18px 10px;display:flex}.notification-center__empty p{margin:0}.account-menu__trigger{min-width:50px;min-height:50px;color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:2px;padding:4px;display:flex}.account-menu__trigger:hover,.account-menu__trigger[aria-expanded=true]{background:#e4ebe6}.account-menu__trigger>svg{width:16px;height:16px}.account-avatar{color:#fff;background:var(--primary);letter-spacing:.02em;border-radius:50%;place-items:center;width:40px;height:40px;font-size:14px;font-weight:850;display:grid}.account-avatar--large{width:52px;height:52px;font-size:18px}.interface-preferences>p{color:var(--muted)}.interface-preferences label{color:#29483f;gap:8px;font-size:13px;font-weight:700;display:grid}.account-menu__popover{border:1px solid var(--line);background:var(--surface);border-radius:20px;width:min(350px,100vw - 24px);padding:10px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 20px 55px #142e2833}.account-menu__identity{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 10px 16px;display:flex}.account-menu__identity div{gap:3px;min-width:0;display:grid}.account-menu__identity strong,.account-menu__identity span{overflow-wrap:anywhere}.account-menu__identity span{color:var(--muted);font-size:12px}.account-menu__popover>a,.account-menu__logout{width:100%;min-height:54px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:9px 10px;text-decoration:none;display:flex}.account-menu__popover>a:hover,.account-menu__logout:hover{background:#eef3ef}.account-menu__popover>a>svg,.account-menu__logout>svg{width:20px;color:var(--primary);flex:none}.account-menu__popover>a>span{gap:2px;min-width:0;display:grid}.account-menu__popover>a strong{font-size:13px}.account-menu__popover>a small{color:var(--muted);font-size:11px;line-height:1.35}.account-menu__logout{border-top:1px solid var(--line);border-radius:0 0 12px 12px;margin-top:4px;font-weight:750}.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:none}.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}.setup-assistant{margin-bottom:24px;padding:22px}.setup-assistant__heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.setup-assistant__heading h2{letter-spacing:-.035em;margin:4px 0 7px;font-size:24px}.setup-assistant__heading p{color:var(--muted);margin:0;line-height:1.5}.setup-assistant__estimate{color:var(--muted);margin-top:7px;display:block}.setup-progress{background:#e6ece8;border-radius:999px;height:8px;margin:-4px 0 20px;overflow:hidden}.setup-progress span{border-radius:inherit;background:var(--accent);height:100%;transition:width .25s;display:block}.setup-badge{color:#76551c;background:#fff1c9;border-radius:999px;flex:none;padding:7px 10px;font-size:12px;font-weight:800}.setup-badge--ready{color:#24543f;background:#e4f4e9}.setup-steps{gap:10px;margin:0 0 18px;padding:0;list-style:none;display:grid}.setup-step{border:1px solid var(--line);border-radius:14px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.setup-step>svg{color:#9a6b22;width:20px;height:20px}.setup-step--complete>svg{color:#2e765d}.setup-step h3{margin:0 0 3px;font-size:15px}.setup-step h3 span{color:var(--muted);text-transform:uppercase;margin-left:8px;font-size:10px;font-weight:700}.setup-step p{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.setup-step>a{color:var(--primary);align-items:center;gap:2px;font-size:13px;font-weight:800;display:inline-flex}.setup-step>a svg,.setup-assistant__next svg{width:16px;height:16px}.setup-assistant__next{width:fit-content}.setup-assistant__all{color:var(--primary);margin:14px 0 0 12px;font-size:13px;font-weight:800;display:inline-block}@media (width<=620px){.setup-assistant__heading{display:grid}.setup-badge{justify-self:start}.setup-step{grid-template-columns:20px minmax(0,1fr)}.setup-step>a{grid-column:2;justify-self:start}.setup-assistant__next{justify-content:center;width:100%}}.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(4,minmax(0,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{text-align:center;border-radius:14px;flex-direction:column;gap:3px;min-width:0;font-size:10px;font-weight:700;line-height:1.1}.bottom-nav svg{flex:none;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,.auth-intro-copy>p:last-child{color:#bed0ca;max-width:520px;line-height:1.65}.auth-layout--login{--login-gutter:24px;min-height:100svh}.auth-layout--login .auth-intro{padding:max(var(--login-gutter), env(safe-area-inset-top)) max(var(--login-gutter), env(safe-area-inset-right)) max(56px, env(safe-area-inset-bottom)) max(var(--login-gutter), env(safe-area-inset-left));grid-template-rows:auto 1fr;gap:64px;min-width:0;display:grid}.auth-layout--login .auth-intro .brand-mark{margin:0;position:static}.auth-intro-copy{overflow-wrap:anywhere;align-self:center;min-width:0}.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}.auth-form .checkbox-row{grid-template-columns:1.15rem minmax(0,1fr);align-items:start;font-size:14px;line-height:1.35;gap:.65rem!important;display:grid!important}.auth-form input[type=checkbox]{width:1.15rem;height:1.15rem;min-height:0;accent-color:var(--primary);border-radius:.2rem;margin:.1rem 0 0;padding:0}.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,.two-factor-card{max-width:760px;margin-bottom:18px;padding:25px}.settings-grid{max-width:760px}.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}.goal-wizard{grid-template-columns:repeat(3,1fr);margin:0 0 26px;padding:0;list-style:none;display:grid}.goal-wizard li{color:var(--muted);text-align:center;justify-items:center;gap:7px;font-size:12px;display:grid;position:relative}.goal-wizard li:not(:last-child):after{content:"";z-index:0;background:#dbe4dc;width:84%;height:2px;position:absolute;top:15px;left:58%}.goal-wizard span{z-index:1;background:#fff;border:2px solid #dbe4dc;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:800;display:grid;position:relative}.goal-wizard .current,.goal-wizard .done{color:var(--primary)}.goal-wizard .current span,.goal-wizard .done span{color:#fff;border-color:var(--primary);background:var(--primary)}.goal-wizard .done:not(:last-child):after{background:var(--primary)}.goal-wizard-panel>h3{margin:0 0 6px}.goal-wizard-panel>p{color:var(--muted);margin:0 0 22px}.goal-review__summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px;display:grid}.goal-review__summary div{background:#f4f7f4;border-radius:12px;gap:5px;padding:14px;display:grid}.goal-review__summary span{color:var(--muted);font-size:12px}.goal-wizard-actions{grid-template-columns:repeat(3,1fr)!important}.stage-editor{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.stage-option-help{background:#f4f8ee;border:1px solid #cfe0bd;border-radius:14px;margin-bottom:20px;padding:16px 18px}.stage-option-help p{color:var(--muted);margin:7px 0 0;line-height:1.5}.stage-editor__heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.stage-editor__heading h3,.race-strategy h3{margin:0 0 6px}.stage-editor__heading p{color:var(--muted);margin:0}.stage-row{border:1px solid var(--border);border-radius:14px;margin:18px 0;padding:18px}.route-analysis{color:var(--muted);font-size:13px}.race-strategy{background:#f5f8f5;border-radius:14px;margin-top:18px;padding:18px}.race-stage{border-top:1px solid var(--border);gap:7px;padding:14px 0;display:grid}.race-stage>div{justify-content:space-between;gap:12px;display:flex}.race-stage span{color:var(--muted);text-align:right;font-size:13px}.race-stage p{margin:0}.race-strategy-ready{color:#24543f;background:#e4f4e9;border-radius:10px;margin:18px 0 0;padding:10px 12px;font-size:13px}.elevation-profile{margin:18px 0 4px}.elevation-profile svg{width:100%;height:150px;display:block;overflow:visible}.elevation-profile__axis{stroke:#bdcbc1;stroke-width:1px}.elevation-profile__line{fill:none;stroke:#477f32;stroke-width:3px;vector-effect:non-scaling-stroke}.elevation-profile text{fill:var(--muted);font-size:11px}.elevation-profile figcaption{color:var(--muted);flex-wrap:wrap;gap:7px 16px;font-size:12px;display:flex}.elevation-profile figcaption strong{color:var(--ink)}.race-center-actions{flex-wrap:wrap;gap:10px;margin:20px 0 18px;display:flex}.race-kpis{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.race-kpis .card{gap:6px;padding:16px;display:grid}.race-kpis span{color:var(--muted);font-size:12px}.race-kpis strong{color:var(--primary);font-size:clamp(18px,4vw,26px)}.race-center-section{margin-top:24px;padding:22px}.race-center-section>h2{margin-top:0}.race-center-stages{gap:14px;margin-top:15px;display:grid}.race-center-stage{padding:20px}.race-center-stage header{justify-content:space-between;align-items:start;gap:16px;display:flex}.race-center-stage header span{color:#527064;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.race-center-stage h3{margin:5px 0}.race-center-stage header p,.race-center-empty{color:var(--muted);margin:0}.race-center-guidance{background:#f4f7f4;border-radius:12px;gap:9px;margin-top:18px;padding:15px;display:grid}.race-center-guidance p{margin:0;line-height:1.5}.race-center-plan{line-height:1.55}.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}.connection-guide{border-top:1px solid var(--line);overflow-wrap:anywhere;min-width:0;margin-top:18px;padding-top:14px;font-size:13px;line-height:1.6}.connection-guide summary{cursor:pointer;font-weight:700}.connection-guide summary:focus-visible{outline-offset:3px;outline:3px solid #4a8f78}.connection-guide h3{margin:18px 0 8px;font-size:15px}.connection-guide ol{margin:8px 0;padding-left:24px}.connection-guide li+li{margin-top:8px}.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}.daily-nutrition .nutrition-guidance-grid{grid-template-columns:minmax(0,1fr)}.daily-nutrition .nutrition-guidance dl{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));column-gap:18px}.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}.home-heading{margin-bottom:24px}.home-heading h1{letter-spacing:-.05em;margin:3px 0 8px;font-size:clamp(34px,7vw,56px)}.home-heading>p:last-child{max-width:700px;color:var(--muted);margin:0;line-height:1.55}.readiness-card{border-left:5px solid #8aa19a;grid-template-columns:44px minmax(0,1fr);gap:14px;margin-bottom:16px;padding:20px;display:grid}.readiness-card--good{background:#f1faf3;border-left-color:#58a56e}.readiness-card--caution{background:#fff9ec;border-left-color:#d89a32}.readiness-card--low{background:#fff4f2;border-left-color:#c65f55}.readiness-card__icon{width:44px;height:44px;color:var(--primary);background:#fffc;border-radius:14px;place-items:center;display:grid}.readiness-card h2{margin:3px 0 6px;font-size:21px}.readiness-card p{margin:0;line-height:1.5}.readiness-card small{color:var(--muted);margin-top:7px;display:block}.readiness-card>a{color:var(--primary);grid-column:2;font-weight:800;text-decoration:none}.readiness-card>a svg{vertical-align:middle;width:16px}.daily-coach-entry{background:#f4faf6;border:1px solid #c9ddd2;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;margin:18px 0;padding:18px;display:flex}.daily-coach-entry h3,.daily-coach-entry p{margin:0}.daily-coach-entry p{color:var(--muted);margin-top:5px;line-height:1.45}.daily-coach-checkin{background:#f7fbf8;border:1px solid #bcd4c7;border-radius:18px;margin:18px 0;padding:20px}.daily-coach-checkin__heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.daily-coach-checkin__heading h3{margin:0}.daily-coach-checkin form{gap:18px;margin-top:18px;display:grid}.daily-coach-scales{gap:14px;display:grid}.daily-coach-scales label{color:#29483f;grid-template-columns:1fr auto;gap:6px 14px;font-size:13px;font-weight:800;display:grid}.daily-coach-scales input{accent-color:var(--primary);grid-column:1/-1}.daily-coach-scales small{color:var(--muted);grid-column:1/-1;font-weight:500}.daily-coach-options{gap:12px;display:grid}.daily-coach-options label:not(.daily-coach-pain){color:#29483f;gap:6px;font-size:13px;font-weight:800;display:grid}.daily-coach-options input[type=number],.daily-coach-options select{min-height:44px;font:inherit;background:#fff;border:1px solid #cbd8d0;border-radius:10px;padding:9px 11px}.daily-coach-pain{color:#71372f;align-items:center;gap:9px;font-weight:750;display:flex}.daily-coach-pain input{accent-color:#a54036;width:18px;height:18px}.daily-coach-decision{background:#fff;border-left:5px solid #5c9b70;border-radius:12px;margin-top:18px;padding:18px}.daily-coach-decision--adapt{border-left-color:#d49732}.daily-coach-decision--hold{border-left-color:#bd5147}.daily-coach-decision h3{margin:0 0 8px}.daily-coach-decision p:last-of-type{margin-bottom:0}.daily-coach-decision ul{margin:12px 0 0;padding-left:20px}.post-workout-analysis{gap:12px;display:grid}.post-workout-analysis__heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.post-workout-analysis__heading h4{margin:0;font-size:17px}.post-workout-analysis__heading>span{color:var(--primary);overflow-wrap:anywhere;background:#e7f1eb;border-radius:999px;padding:5px 9px;font-weight:850}.post-workout-comparison{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.post-workout-comparison>div{background:#f3f6f3;border-radius:11px;padding:11px}.post-workout-comparison small,.post-workout-comparison strong{display:block}.post-workout-comparison small{color:var(--muted)}.post-workout-comparison strong{margin-top:4px}.post-workout-analysis p{margin:0}.post-workout-impact{color:#29483f;background:#eef5f0;border-radius:10px;padding:11px}.progress-insights{margin:26px 0}.progress-insight-grid{gap:12px;display:grid}.progress-insight-grid .card{flex-direction:column;align-items:flex-start;min-height:180px;display:flex}.progress-insight-grid svg{width:23px;color:var(--primary)}.progress-insight-grid small{color:var(--muted);margin-top:18px;font-weight:750}.progress-insight-grid strong{margin-top:5px;font-size:20px;line-height:1.2}.progress-insight-grid p{color:var(--muted);margin:auto 0 0;padding-top:12px;line-height:1.45}.progress-guidance{color:#25483d;background:#eef6f1;border-radius:12px;margin:12px 0 0;padding:14px 16px;font-weight:650;line-height:1.5}.today-session-card{border-top:5px solid var(--primary);margin-bottom:16px;padding:22px}.today-session-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.today-session-card__header h2{letter-spacing:-.04em;margin:4px 0 8px;font-size:clamp(28px,7vw,42px)}.today-session-card__header p:last-child{color:var(--muted);margin:0;line-height:1.5}.today-intensity{color:#24503f;background:#e6f1e8;border-radius:999px;flex:none;padding:7px 10px;font-size:11px;font-weight:900}.today-intensity--hard{color:#7a302d;background:#fbe9e7}.today-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0;display:grid}.today-facts div{background:#f3f6f3;border-radius:13px;padding:12px}.today-facts dt{color:var(--muted);font-size:11px;font-weight:800}.today-facts dd{margin:4px 0 0;font-weight:800}.today-primary-actions,.quick-adapt__buttons{flex-wrap:wrap;gap:10px;display:flex}.quick-adapt{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.quick-adapt h3,.adapt-confirm h3,.change-comparison h3{margin:0 0 5px}.quick-adapt p{color:var(--muted);margin:0}.quick-adapt__buttons{gap:8px;margin-top:13px}.quick-adapt__buttons .button{padding:10px 12px;font-size:12px}.quick-adapt__buttons svg{width:17px}.adapt-confirm{background:#f4f8f5;border:1px solid #c6d7cf;border-radius:15px;margin-top:14px;padding:16px}.adapt-confirm p{line-height:1.5}.change-comparison{background:#eef7ee;border-radius:15px;margin-top:16px;padding:16px}.change-comparison__grid{background:var(--line);border-radius:10px;grid-template-columns:minmax(80px,.7fr) repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.change-comparison__grid>span,.change-comparison__grid>strong{background:#fff;padding:9px;font-size:12px}.change-comparison__row{display:contents}.today-more{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.today-more summary{cursor:pointer;color:var(--primary);justify-content:space-between;align-items:center;font-weight:800;display:flex}.today-more summary svg{width:18px}.today-more p{color:var(--muted);line-height:1.5}.today-loading,.today-empty{text-align:center;margin-bottom:16px;padding:28px}.today-loading{text-align:left;align-items:center;gap:14px;display:flex}.today-loading>svg{animation:1s linear infinite spin}.today-empty>svg{width:38px;height:38px;color:var(--primary)}.home-shortcuts{gap:10px;margin:14px 0 24px;display:grid}.home-shortcuts a{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:14px;text-decoration:none;display:grid}.home-shortcuts svg{color:var(--primary)}.home-shortcuts span{gap:3px;display:grid}.home-shortcuts small{color:var(--muted)}.activity-close{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;margin:16px 0;padding:20px;display:grid}.activity-close__icon{color:#24543f;background:#e4f4e9;border-radius:13px;place-items:center;width:40px;height:40px;display:grid}.activity-close h2,.activity-close p{margin:0 0 5px}.activity-close>.button{grid-column:2;width:fit-content}.activity-close .activity-feedback-form,.activity-close .activity-feedback-summary{margin-top:14px}.feedback-quick-grid{gap:10px;display:grid}.week-change-summary{background:#f1faf3;border-left:5px solid #58a56e;margin:16px 0;padding:22px}.week-change-summary h2{margin:0 0 10px}.week-change-summary ul{margin:0 0 12px;padding-left:20px;line-height:1.55}.week-change-summary>p:last-child{color:var(--muted);margin:0}.plan-history{margin-bottom:18px}.plan-history summary{cursor:pointer;color:var(--primary);font-size:17px;font-weight:850}.plan-history details>p{color:var(--muted);margin:14px 0 0;line-height:1.5}.plan-history ol{gap:12px;margin:16px 0 0;padding-left:22px;display:grid}.plan-history li{padding-left:4px}.plan-history li strong,.plan-history li span{display:block}.plan-history li span{color:var(--muted);margin-top:3px;line-height:1.45}.weekly-review{margin-bottom:18px}.weekly-review__progress{background:#e2e9e4;border-radius:999px;height:12px;margin:18px 0;overflow:hidden}.weekly-review__progress span{border-radius:inherit;background:#4d9b68;height:100%;display:block}.weekly-review ul{padding-left:20px;line-height:1.55}.calendar-toolbar{justify-content:center;align-items:center;gap:14px;margin-bottom:18px;display:flex}.calendar-toolbar h2{text-align:center;text-transform:capitalize;min-width:min(330px,55vw);margin:0}.calendar-weekdays,.training-calendar{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{color:var(--muted);text-align:center;padding:8px 4px;font-size:12px;font-weight:800}.training-calendar{border:1px solid var(--line);background:var(--line);border-radius:18px;gap:1px;overflow:hidden}.calendar-day{background:var(--surface);flex-direction:column;gap:5px;min-height:125px;padding:8px;display:flex}.calendar-day>time{border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid}.calendar-day--outside{opacity:.46}.calendar-day--today>time{color:#fff;background:var(--primary)}.calendar-session{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#edf4ef;border:0;border-left:4px solid #6d9385;border-radius:8px;gap:2px;padding:7px;display:grid}.calendar-session--completed{background:#e5f5e9;border-color:#4d9b68}.calendar-session--skipped{background:#faece8;border-color:#b86d5f}.calendar-session strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;display:-webkit-box;overflow:hidden}.calendar-session span{color:var(--muted);font-size:9px}.calendar-move{z-index:5;max-width:640px;margin:18px auto 0;position:sticky;bottom:20px;box-shadow:0 20px 55px #142e2840}.calendar-move label{gap:7px;margin:16px 0;font-weight:700;display:grid}.notification-page-actions{justify-content:flex-end;margin-bottom:18px;display:flex}.notification-list{gap:12px;display:grid}.notification-card{justify-content:space-between;align-items:center;gap:18px;display:flex}.notification-card--unread{border-left:5px solid var(--primary);background:#f4faf5}.notification-card h2{margin:0 0 6px;font-size:19px}.notification-card p{color:var(--muted);margin-bottom:7px}.notification-card time{color:var(--muted);font-size:11px}.nutrition-products{background:#edf6ef;border-radius:14px;margin:16px 0;padding:16px}.nutrition-products h4,.nutrition-products p{margin:0 0 8px}.nutrition-products p{color:var(--muted);font-size:12px}.nutrition-products dl{gap:7px;margin:0;display:grid}.nutrition-products dl div{background:#fff;border-radius:9px;justify-content:space-between;gap:12px;padding:9px;display:flex}.nutrition-products dd{text-align:right;margin:0;display:grid}.nutrition-products dd span{color:var(--muted);font-size:11px}.today-grid{gap:14px;display:grid}.today-session{color:#fff;background:linear-gradient(145deg,#173f35,#245b4b);flex-direction:column;justify-content:center;align-items:flex-start;min-height:245px;padding:26px;display:flex}.today-session .eyebrow{color:#c5e5d4}.today-session h2{margin-bottom:10px;font-size:clamp(28px,7vw,48px)}.today-session p{line-height:1.55}.today-session .button{color:var(--primary);background:var(--accent);margin-top:10px}.today-session__summary{color:#e5f1eb}.today-side{gap:10px;display:grid}.home-action{border:1px solid var(--line);background:var(--surface);min-height:76px;box-shadow:var(--shadow);border-radius:17px;grid-template-columns:36px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:14px 16px;text-decoration:none;display:grid}.home-action>svg:first-child,.more-link__icon{color:var(--primary)}.home-action>svg:last-child{width:18px;color:var(--muted)}.home-action span{gap:3px;min-width:0;display:grid}.home-action small,.more-link small{color:var(--muted);line-height:1.35}.next-session{grid-template-columns:36px minmax(0,1fr);align-items:center;gap:12px;margin:16px 0;padding:20px;display:grid}.next-session>svg{color:var(--primary)}.next-session h2,.next-session p{margin-bottom:5px}.next-session>a{color:#2e6756;grid-column:2;align-items:center;gap:5px;width:fit-content;font-weight:800;text-decoration:none;display:inline-flex}.next-session>a svg{width:17px}.more-section{margin-top:30px}.more-grid{gap:12px;display:grid}.more-link{text-decoration:none}.more-link .card{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;min-height:108px;padding:18px;display:grid}.more-link__icon{background:#e8eee9;border-radius:13px;place-items:center;width:40px;height:40px;display:grid}.more-link__icon svg{width:20px}.more-link span:last-child{gap:5px;display:grid}.more-link strong{font-size:15px}.more-link:hover .card{border-color:#9db7aa;transform:translateY(-1px)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=480px){.daily-coach-entry,.daily-coach-checkin__heading{flex-direction:column;align-items:stretch}.post-workout-comparison{grid-template-columns:1fr}.topbar-actions{display:none}.account-menu__popover,.notification-center__popover{width:auto;max-height:calc(100dvh - 96px);position:fixed;top:76px;left:12px;right:12px;overflow-y:auto}.today-session-card__header{display:grid}.today-intensity{width:fit-content}.today-facts{grid-template-columns:1fr}.today-primary-actions .button{justify-content:center;width:100%}.quick-adapt__buttons .button{flex:calc(50% - 8px);justify-content:center}.change-comparison__grid{grid-template-columns:minmax(62px,.65fr) repeat(2,minmax(0,1fr))}.calendar-weekdays{display:none}.training-calendar{background:0 0;border:0;grid-template-columns:1fr;gap:8px}.calendar-day{border:1px solid var(--line);border-radius:12px;min-height:60px}.calendar-day:empty{display:none}.calendar-day--outside:not(:has(.calendar-session)){display:none}.notification-card{display:grid}}@media (width>=760px){.race-center-stages{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.daily-coach-scales,.daily-coach-options{grid-template-columns:repeat(3,minmax(0,1fr))}.daily-coach-pain{align-self:end;min-height:44px}.progress-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-quick-grid,.home-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-close{grid-template-columns:40px minmax(0,1fr) auto}.activity-close>.button{grid-column:auto}.today-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);align-items:stretch}.more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.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-layout--login{--login-gutter:clamp(38px, 6vw, 90px)}.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}.daily-nutrition .nutrition-guidance-grid{grid-template-columns:minmax(0,1fr)}.daily-nutrition .nutrition-guidance dl{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.nutrition-sessions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (width<=560px){.race-kpis,.goal-review__summary{grid-template-columns:1fr}.goal-wizard-actions{grid-template-columns:1fr!important}.race-center-stage header{display:grid}}@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}.offline-note{display:flex}.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}.setup-current{background:#edf5ef;border-radius:16px;margin:18px 0;padding:20px}.setup-current h3,.setup-current p{margin-top:0}.setup-current .button{width:100%;margin-top:8px}.setup-step--current{background:#f5faf6;border-color:#4a8f78}.onboarding-provider-list{gap:16px;margin:24px 0;display:grid}.onboarding-provider{gap:16px;display:grid}.onboarding-provider header{align-items:flex-start;gap:14px;display:flex}.onboarding-provider header h2{margin:0 0 6px}.onboarding-provider header p{color:var(--muted);margin:0;line-height:1.5}.provider-choice-icon{width:42px;height:42px;color:var(--ink);background:#edf2ee;border-radius:50%;flex:none;place-items:center;display:grid}.provider-choice-icon--ready{color:#24543f;background:#dff1e5}.provider-choice-state{background:#fff2cf;border-radius:10px;margin:0;padding:10px 12px}.provider-choice-state--ready{color:#24543f;background:#e4f4e9}.provider-choice-actions{flex-wrap:wrap;gap:10px;display:flex}.provider-choice-actions .button{flex:190px}.onboarding-continue{gap:12px;margin-bottom:32px;display:grid}.onboarding-continue h2,.onboarding-continue p{margin:0}.onboarding-continue>.button{width:100%}.integration-card{scroll-margin-top:90px}@media (width>=760px){.onboarding-provider-list{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.onboarding-provider{grid-template-rows:auto auto 1fr}.provider-choice-actions{align-self:end}.onboarding-continue{grid-template-columns:1fr auto;align-items:center}.onboarding-continue>p,.onboarding-continue>.button.button--secondary{grid-column:1/-1}}
