@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/bricolage-grotesque-latin-800-normal-J50vIsBe.woff2)format("woff2"),url(/assets/bricolage-grotesque-latin-800-normal-Br4b-5gk.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2)format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff)format("woff")}:root{--bg:#fff6ea;--surface:#fff;--text:#1e1440;--text-secondary:#5a4e7c;--neutral:#efeafb;--strength:#5b3fd9;--strength-text:#5b3fd9;--pole:#c71f68;--pole-text:#c71f68;--hyrox:#ffb020;--on-hyrox:#1e1440;--recovery:#0b7a7c;--recovery-text:#0b7a7c;--tab-active-bg:var(--neutral);--tab-active-text:var(--strength-text);--radius-card:24px;--radius-pill:999px;--font-heading:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"DM Sans", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#17102e;--surface:#241a47;--text:#f4efff;--text-secondary:#b9aedb;--neutral:#382c72;--strength-text:#9c86ff;--pole-text:#ff7aae;--recovery-text:#4fd1d3;--tab-active-text:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-text-size-adjust:100%;margin:0;font-size:16px;line-height:1.5}h1,h2,h3{font-family:var(--font-heading);margin:0;font-weight:800;line-height:1.15}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--strength-text);outline-offset:2px}.app{flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex}.screen{padding:calc(24px + env(safe-area-inset-top)) 16px 24px;flex-direction:column;flex:1;gap:16px;display:flex}.screen__overline{color:var(--text-secondary);margin:0;font-weight:500}.screen__overline:first-letter{text-transform:uppercase}.screen h1{font-size:2rem}.card{background:var(--surface);border-radius:var(--radius-card);padding:20px}.card h2{margin-bottom:8px;font-size:1.25rem}.card__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.card__header h2{margin-bottom:0}.card__header+*{margin-top:8px}.card .card__summary{color:var(--text);margin-top:8px}.card p{color:var(--text-secondary);margin:0}.pills{flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.pill{border-radius:var(--radius-pill);background:var(--neutral);color:var(--text);padding:6px 14px;font-size:.9375rem;font-weight:500;display:inline-block}.pill--strength{background:var(--strength);color:#fff}.pill--pole{background:var(--pole);color:#fff}.pill--hyrox{background:var(--hyrox);color:var(--on-hyrox)}.pill--recovery{background:var(--recovery);color:#fff}.card--accent-recovery{border-top:6px solid var(--recovery)}.card--accent-strength{border-top:6px solid var(--strength)}.card--accent-hyrox{border-top:6px solid var(--hyrox)}.card--accent-pole{border-top:6px solid var(--pole)}.card--alert{border:2px solid var(--pole-text)}.card--alert h2{color:var(--pole-text)}.check-in{flex-direction:column;gap:20px;margin-top:8px;display:flex}.choices{border:0;min-width:0;margin:0;padding:0}.choices legend{margin-bottom:8px;padding:0;font-weight:700}.choices__options{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));grid-auto-rows:1fr;gap:8px;display:grid}.choices__options--wide{grid-template-columns:repeat(auto-fit,minmax(136px,1fr))}.choice{min-width:0;display:block;position:relative}.choice input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.choice span{overflow-wrap:anywhere;background:var(--neutral);height:100%;min-height:48px;color:var(--text);text-align:center;border-radius:16px;justify-content:center;align-items:center;padding:8px 12px;font-weight:500;line-height:1.2;display:flex}.choice input:checked+span{background:var(--strength);color:#fff;font-weight:700}.choice--good input:checked+span{background:var(--recovery);color:#fff}.choice--mid input:checked+span{background:var(--hyrox);color:var(--on-hyrox)}.choice--bad input:checked+span{background:var(--pole);color:#fff}.choice input:focus-visible+span{outline:3px solid var(--strength-text);outline-offset:2px}.check-in__status{min-height:1.5em;margin-top:16px;font-size:.9375rem}.sessions{flex-direction:column;gap:12px;margin:8px 0 0;padding:0;list-style:none;display:flex}.session{flex-direction:column;gap:12px;display:flex}.session__header{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.session__advice{background:var(--neutral);color:var(--text);border-radius:16px;flex-direction:column;gap:6px;margin:0;padding:12px 16px 12px 32px;display:flex}.exercises{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.exercise{border-top:1px solid var(--neutral);flex-direction:column;gap:2px;padding-top:12px;display:flex}.exercise__header{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.exercise__name{font-weight:700}.exercise--removed .exercise__name{text-decoration:line-through}.exercise__sets{color:var(--text-secondary)}.card .exercise__reason{color:var(--text);font-size:.9375rem}.session__moment{width:100%;color:var(--text-secondary);font-weight:700}.session__title{font-weight:700}.session__note{width:100%;color:var(--text-secondary);font-size:.9375rem}.pill--neutral{background:var(--neutral);color:var(--text)}.exercise__load{color:var(--strength-text);font-weight:700}.exercise__swap,.exercise__alternatives{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.exercise__swap>span,.exercise__alternatives>span{width:100%;color:var(--text-secondary);font-size:.9375rem}.session--cancelled .session__title{text-decoration:line-through}.log-exercise{border:0;border-top:1px solid var(--neutral);flex-direction:column;gap:12px;min-width:0;margin:0;padding:16px 0 0;display:flex}.log-exercise>legend{float:left;width:100%;padding:0;font-size:1.0625rem;font-weight:700}.card .log-exercise__advice{margin:0;font-size:.9375rem}.log-sets{flex-direction:column;gap:10px;display:flex}.log-set{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.log-set__label{color:var(--text-secondary);grid-column:1;align-self:center;font-weight:700}.log-set__remove{grid-column:2;justify-self:end}.log-set__label+.field{grid-column:1}.log-exercise>.button,.log-add>.button{align-self:flex-start}.log-add{border-top:1px solid var(--neutral);flex-direction:column;gap:8px;padding-top:16px;display:flex}.log-summary{flex-direction:column;gap:12px;margin:12px 0 16px;padding:0;list-style:none;display:flex}.log-summary li{flex-direction:column;gap:2px;display:flex}.log-summary__name{font-weight:700}.log-summary__next{color:var(--strength-text);font-weight:700}.duration{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.duration--form{align-items:flex-end}.duration--form .field{flex:160px}.duration--form .form__error{width:100%;margin:0}.card .tip{color:var(--text)}.card .subtitle{font-family:var(--font-body);margin:20px 0 0;font-size:1rem;font-weight:700}.goal-order,.slots,.habits{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.goal-picker{flex-direction:column;gap:12px;display:flex}.goal-picker__add{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.goal-picker__add .field{flex:180px}.goal-order li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.goal-order .pill{flex:160px;min-width:0}.habits{margin-top:8px;padding-left:20px;list-style:outside}.slots{gap:12px;margin:12px 0}.slot{border-top:1px solid var(--neutral);padding-top:12px}.slot__actions{gap:8px;display:flex}.catalog{flex-direction:column;gap:12px;margin:8px 0 0;padding:0;list-style:none;display:flex}.catalog__item{border-top:1px solid var(--neutral);flex-direction:column;gap:4px;padding-top:10px;display:flex}.discipline-row{border-top:1px solid var(--neutral);flex-direction:column;gap:8px;padding-top:12px;display:flex}.discipline-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.discipline-row__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.ratings{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.toggles{flex-direction:column;gap:8px;display:flex}.toggle{align-items:center;gap:10px;min-height:44px;display:flex}.toggle input{width:22px;height:22px;accent-color:var(--strength);flex:none}.form__error li+li{margin-top:4px}ul.form__error{margin:0;padding-left:20px}.coach-message{flex-direction:column;gap:8px;margin:8px 0 0;padding-left:20px;display:flex}.review-disciplines,.review-progress,.next-week{flex-direction:column;gap:12px;margin:8px 0 0;padding:0;list-style:none;display:flex}.review-disciplines li,.review-progress li{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.review-disciplines__goal{width:100%;color:var(--text-secondary)}.review-progress__name,.next-week__day{font-weight:700}.next-week li{flex-wrap:wrap;gap:4px 10px;display:flex}.card .review-time,.card .review-deload{color:var(--text);font-weight:700}a.button{align-self:flex-start;text-decoration:none}.button{background:var(--strength);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:52px;padding:12px 24px;font-weight:700;display:inline-flex}.button--small{min-height:44px;padding:8px 18px}.button--secondary{background:var(--neutral);min-height:44px;color:var(--text);padding:8px 16px;font-weight:500}.button:focus-visible{outline:3px solid var(--strength-text);outline-offset:2px}.lead{color:var(--text-secondary);margin:0;font-size:1.125rem}.form{flex-direction:column;gap:16px;display:flex}.card .hint{margin:12px 0 0;font-size:.9375rem}.card .form .hint{margin-top:-8px}.field{flex-direction:column;gap:6px;display:flex}.field label{font-weight:700}.field{min-width:0}.field input,.field select,.field textarea{border:2px solid var(--text-secondary);background:var(--surface);width:100%;min-width:0;min-height:48px;color:var(--text);border-radius:14px;padding:10px 14px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid var(--strength-text);outline-offset:1px}.card .form__error{color:var(--pole-text);font-weight:700}.editor{background:var(--bg);border-radius:18px;flex-direction:column;gap:12px;margin-top:12px;padding:16px;display:flex}.editor__actions{flex-wrap:wrap;gap:8px;display:flex}.week-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}.week-nav__title{text-align:center;margin:0;font-weight:700}.days{flex-direction:column;margin:8px 0 16px;padding:0;list-style:none;display:flex}.day{border-top:1px solid var(--neutral);padding:12px 0}.day:first-child{border-top:0}.day__title{font-family:var(--font-body);margin-bottom:6px;font-size:1rem;font-weight:700}.day__today{color:var(--strength-text)}.card .day__rest{margin:0}.day__add{margin-top:8px}.day__sessions{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.planned__header{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.planned__title{font-weight:700}.planned--cancelled .planned__title{text-decoration:line-through}.planned__meta{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.fatigue{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.fatigue__label{justify-content:space-between;font-weight:700;display:flex}.fatigue__state{color:var(--text-secondary);font-weight:500}.fatigue__bar{background:var(--neutral);border-radius:999px;height:12px;margin-top:4px;overflow:hidden}.fatigue__fill{border-radius:999px;height:100%}.fatigue__bar--loaded .fatigue__fill{background:var(--pole)}.fatigue__bar--fresh .fatigue__fill{background:var(--recovery)}.goals,.entries{flex-direction:column;gap:16px;margin:8px 0 0;padding:0;list-style:none;display:flex}.goal__body{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.card .goal__text{color:var(--text)}.card .goal__text--empty{color:var(--text-secondary)}.entries{margin-top:16px}.entry{border-top:1px solid var(--neutral);padding-top:12px}.entry__title{font-family:var(--font-body);font-size:1rem;font-weight:700}.card .entry__reason{color:var(--text);margin-top:4px}.card .entry__meta{margin-top:4px;font-size:.9375rem}.card .entries__empty{margin-top:16px}.tab-bar{background:var(--surface);padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;position:sticky;bottom:0}.tab-bar ul{grid-template-columns:repeat(5,1fr);gap:4px;margin:0;padding:0;list-style:none;display:grid}.tab-bar a{min-height:56px;color:var(--text-secondary);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.75rem;font-weight:500;text-decoration:none;display:flex}.tab-bar a[aria-current=page]{background:var(--tab-active-bg);color:var(--tab-active-text);font-weight:700}.tab-bar svg{width:24px;height:24px}
