:root{--color-primary:#29245f;--color-primary-dark:#1d1947;--color-accent:#6c5bd4;--color-accent-soft:#eeeafd;--color-background:#f7f7fb;--color-surface:#fff;--color-border:#ddd9e8;--color-text:#211f2c;--color-text-muted:#6d6a78;--color-success:#287a5b;--color-success-soft:#e7f5ef;--color-error:#a63d40;--color-error-soft:#fbeaea;--color-interaction:#ff9a3d;--color-interaction-rgb:255 154 61;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--shadow-card:0 8px 24px #211f2c14;color:var(--color-text);background:var(--color-background);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--color-background);min-width:320px;min-height:100%}body{background:var(--color-background);min-width:320px;min-height:100vh;color:var(--color-text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-family:inherit;font-size:1rem;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}input,textarea,select{color:var(--color-text)}textarea{resize:vertical}::placeholder{color:var(--color-text-muted);opacity:.55}a{color:var(--color-primary)}#root{min-height:100vh}.dashboard-dev-links{justify-items:start;gap:.45rem;margin-top:.75rem;display:grid}body:has(.bottom-navigation) .container{padding-bottom:calc(10rem + env(safe-area-inset-bottom))}.bottom-navigation{right:.5rem;bottom:calc(.65rem + env(safe-area-inset-bottom));border:1px solid var(--color-border);border-radius:1.35rem;width:min(100% - 1rem,44rem);padding:.5rem .45rem;left:.5rem;box-shadow:0 -4px 18px #211f2c14,0 10px 30px #211f2c24}.bottom-navigation button{grid-template-rows:1.35rem auto;align-content:center;justify-items:center;gap:.28rem;min-height:3.65rem;padding:.45rem .15rem;line-height:1;display:grid}.bottom-navigation button:before{content:"";background:currentColor;width:1.25rem;height:1.25rem;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.bottom-navigation button:first-child:before{-webkit-mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%2011.5%2012%204l9%207.5%27%2F%3E%3Cpath%20d%3D%27M5.5%2010.5V20h13v-9.5%27%2F%3E%3Cpath%20d%3D%27M9.5%2020v-6h5v6%27%2F%3E%3C%2Fsvg%3E);mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%2011.5%2012%204l9%207.5%27%2F%3E%3Cpath%20d%3D%27M5.5%2010.5V20h13v-9.5%27%2F%3E%3Cpath%20d%3D%27M9.5%2020v-6h5v6%27%2F%3E%3C%2Fsvg%3E)}.bottom-navigation button:nth-child(2):before{-webkit-mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2019V5%27%2F%3E%3Cpath%20d%3D%27M4%2019h16%27%2F%3E%3Cpath%20d%3D%27m7%2015%204-4%203%202%205-6%27%2F%3E%3Cpath%20d%3D%27M16%207h3v3%27%2F%3E%3C%2Fsvg%3E);mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2019V5%27%2F%3E%3Cpath%20d%3D%27M4%2019h16%27%2F%3E%3Cpath%20d%3D%27m7%2015%204-4%203%202%205-6%27%2F%3E%3Cpath%20d%3D%27M16%207h3v3%27%2F%3E%3C%2Fsvg%3E)}.bottom-navigation button:nth-child(3):before{-webkit-mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%276%27%20y%3D%274%27%20width%3D%2712%27%20height%3D%2717%27%20rx%3D%272%27%2F%3E%3Cpath%20d%3D%27M9%204.5V3h6v1.5%27%2F%3E%3Cpath%20d%3D%27M9%209h6%27%2F%3E%3Cpath%20d%3D%27M9%2013h6%27%2F%3E%3Cpath%20d%3D%27M9%2017h4%27%2F%3E%3C%2Fsvg%3E);mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%276%27%20y%3D%274%27%20width%3D%2712%27%20height%3D%2717%27%20rx%3D%272%27%2F%3E%3Cpath%20d%3D%27M9%204.5V3h6v1.5%27%2F%3E%3Cpath%20d%3D%27M9%209h6%27%2F%3E%3Cpath%20d%3D%27M9%2013h6%27%2F%3E%3Cpath%20d%3D%27M9%2017h4%27%2F%3E%3C%2Fsvg%3E)}.bottom-navigation button:nth-child(4):before{-webkit-mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M5%205.5h14a2%202%200%200%201%202%202v8a2%202%200%200%201-2%202h-8l-5%203v-3H5a2%202%200%200%201-2-2v-8a2%202%200%200%201%202-2Z%27%2F%3E%3Cpath%20d%3D%27M8%2010h8%27%2F%3E%3Cpath%20d%3D%27M8%2013.5h5%27%2F%3E%3C%2Fsvg%3E);mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M5%205.5h14a2%202%200%200%201%202%202v8a2%202%200%200%201-2%202h-8l-5%203v-3H5a2%202%200%200%201-2-2v-8a2%202%200%200%201%202-2Z%27%2F%3E%3Cpath%20d%3D%27M8%2010h8%27%2F%3E%3Cpath%20d%3D%27M8%2013.5h5%27%2F%3E%3C%2Fsvg%3E)}.bottom-navigation button:nth-child(5):before{-webkit-mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%207h10%27%2F%3E%3Cpath%20d%3D%27M18%207h2%27%2F%3E%3Ccircle%20cx%3D%2716%27%20cy%3D%277%27%20r%3D%272%27%2F%3E%3Cpath%20d%3D%27M4%2017h2%27%2F%3E%3Cpath%20d%3D%27M10%2017h10%27%2F%3E%3Ccircle%20cx%3D%278%27%20cy%3D%2717%27%20r%3D%272%27%2F%3E%3Cpath%20d%3D%27M4%2012h5%27%2F%3E%3Cpath%20d%3D%27M13%2012h7%27%2F%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2712%27%20r%3D%272%27%2F%3E%3C%2Fsvg%3E);mask-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%207h10%27%2F%3E%3Cpath%20d%3D%27M18%207h2%27%2F%3E%3Ccircle%20cx%3D%2716%27%20cy%3D%277%27%20r%3D%272%27%2F%3E%3Cpath%20d%3D%27M4%2017h2%27%2F%3E%3Cpath%20d%3D%27M10%2017h10%27%2F%3E%3Ccircle%20cx%3D%278%27%20cy%3D%2717%27%20r%3D%272%27%2F%3E%3Cpath%20d%3D%27M4%2012h5%27%2F%3E%3Cpath%20d%3D%27M13%2012h7%27%2F%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2712%27%20r%3D%272%27%2F%3E%3C%2Fsvg%3E)}.bottom-navigation button.is-active{box-shadow:inset 0 0 0 1px #6c5bd41a}@media (width>=40rem){body:has(.bottom-navigation) .container{padding-bottom:9.5rem}.bottom-navigation{width:min(100% - 2rem,44rem);bottom:1rem;left:1rem;right:1rem}}.create-plan-page .create-plan-number-field{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.create-plan-page .create-plan-field-grid,.create-plan-page .nutrition-macro-grid{gap:1.35rem}.create-plan-page .daily-calorie-total,.create-plan-page .calculated-calorie-target{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-accent-soft);text-align:center;gap:.3rem;margin:1rem 0 1.35rem;padding:1rem;display:grid}.create-plan-page .daily-calorie-total>span,.create-plan-page .calculated-calorie-target>span{color:var(--color-text-muted);font-weight:700}.create-plan-page .daily-calorie-total>strong,.create-plan-page .calculated-calorie-target>strong{color:var(--color-primary-dark);font-size:clamp(2rem,9vw,2.8rem);line-height:1}.create-plan-page .daily-calorie-total>small,.create-plan-page .calculated-calorie-target>small{color:var(--color-text-muted);line-height:1.35}.create-plan-page .create-plan-field-feedback{color:var(--color-danger,brown);margin-top:.45rem;font-size:.88rem;font-weight:700;line-height:1.35;display:block}.empty-plan-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center;margin:2rem 0;padding:clamp(1.5rem,6vw,2.25rem)}.empty-plan-card h2{margin:0}.empty-plan-card p{max-width:30rem;color:var(--color-text-muted);margin:.9rem auto 1.5rem;line-height:1.5}.empty-plan-card button{width:min(100%,16rem)}.plan-start-countdown{border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-primary-dark);text-align:center;padding:.75rem 1rem;font-weight:750;margin-top:.9rem!important}.create-plan-page>h1{margin-top:1.5rem}.create-plan-date-field,.create-plan-number-field{gap:.55rem;display:grid}.create-plan-date-field>span,.create-plan-number-field>span{font-weight:700}.create-plan-date-field input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-width:0;min-height:3.25rem;color:var(--color-text);font:inherit;padding:.75rem 1rem}.create-plan-field-grid{gap:1rem;display:grid}.create-plan-number-field{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);padding:1rem}.create-plan-number-field input{width:100%}.create-plan-review{margin-top:1.25rem}.create-plan-page .interaction-field.needs-answer{border:2px solid rgb(var(--color-interaction-rgb) / 72%);background:var(--color-surface);animation:1.8s ease-in-out infinite create-plan-required-pulse}.create-plan-page .interaction-field.has-answer{border:2px solid var(--color-interaction);background:var(--color-surface);box-shadow:0 0 0 2px rgb(var(--color-interaction-rgb) / 14%), 0 4px 12px rgb(var(--color-interaction-rgb) / 16%);animation:none}.create-plan-page .create-plan-choice-group.needs-answer .choice-list label{border:2px solid rgb(var(--color-interaction-rgb) / 72%);background:var(--color-surface);animation:1.8s ease-in-out infinite create-plan-required-pulse}.create-plan-page .create-plan-choice-group.has-answer .choice-list label{border:2px solid var(--color-border);background:var(--color-surface);box-shadow:none;animation:none}.create-plan-page .create-plan-choice-group.has-answer .choice-list label:has(input:checked){border-color:var(--color-interaction);background:var(--color-accent-soft);color:var(--color-primary-dark);box-shadow:0 0 0 2px rgb(var(--color-interaction-rgb) / 16%), 0 4px 12px rgb(var(--color-interaction-rgb) / 18%)}.nutrition-method-list{gap:.9rem;display:grid}.nutrition-method-option{border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;align-items:flex-start;gap:.8rem;padding:1rem;display:flex}.nutrition-method-list.needs-answer .nutrition-method-option:not(.is-disabled){border-color:rgb(var(--color-interaction-rgb) / 72%);animation:1.8s ease-in-out infinite create-plan-required-pulse}.nutrition-method-list.has-answer .nutrition-method-option:has(input:checked){border-color:var(--color-interaction);background:var(--color-accent-soft);box-shadow:0 0 0 2px rgb(var(--color-interaction-rgb) / 16%), 0 4px 12px rgb(var(--color-interaction-rgb) / 18%)}.nutrition-method-option.is-disabled{background:var(--color-background);cursor:not-allowed;opacity:.52;animation:none}.nutrition-method-copy{gap:.3rem;line-height:1.4;display:grid}.nutrition-method-copy strong{color:var(--color-primary-dark)}.nutrition-method-copy>span{color:var(--color-text-muted)}.nutrition-method-copy small{background:var(--color-accent-soft);width:fit-content;color:var(--color-primary-dark);border-radius:999px;padding:.18rem .5rem;font-weight:750}.calculated-calorie-target{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-accent-soft);text-align:center;gap:.3rem;margin:1rem 0;padding:1rem;display:grid}.calculated-calorie-target span{color:var(--color-text-muted);font-weight:700}.calculated-calorie-target strong{color:var(--color-primary-dark);font-size:clamp(2rem,9vw,2.8rem);line-height:1}.calculated-calorie-target small,.macro-calorie-helper{color:var(--color-text-muted)}.nutrition-macro-grid{gap:1rem;display:grid}.macro-calorie-helper{line-height:1.35}@keyframes create-plan-required-pulse{0%,to{border-color:rgb(var(--color-interaction-rgb) / 55%);background-color:var(--color-surface);box-shadow:0 0 0 1px rgb(var(--color-interaction-rgb) / 10%), 0 2px 8px rgb(var(--color-interaction-rgb) / 18%)}50%{border-color:var(--color-interaction);background-color:rgb(var(--color-interaction-rgb) / 5%);box-shadow:0 0 0 3px rgb(var(--color-interaction-rgb) / 20%), 0 4px 18px rgb(var(--color-interaction-rgb) / 52%)}}@media (prefers-reduced-motion:reduce){.create-plan-page .interaction-field.needs-answer,.create-plan-page .create-plan-choice-group.needs-answer .choice-list label,.nutrition-method-list.needs-answer .nutrition-method-option:not(.is-disabled){border-color:var(--color-interaction);background-color:rgb(var(--color-interaction-rgb) / 5%);box-shadow:0 0 0 3px rgb(var(--color-interaction-rgb) / 20%), 0 4px 14px rgb(var(--color-interaction-rgb) / 36%);animation:none}}@media (width>=40rem){.create-plan-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.create-plan-field-grid .create-plan-number-field:last-child:nth-child(odd){grid-column:1/-1}.nutrition-macro-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.wizard-page{padding-bottom:3rem}.wizard-page-subtitle{color:var(--color-text-muted)}.wizard-page>progress{background:var(--color-border);border:0;border-radius:999px;width:100%;height:.55rem;margin:1.25rem 0 .5rem;overflow:hidden}.wizard-step-label{color:var(--color-text-muted);margin:0 0 1rem;font-size:.9rem}.wizard-question,.container>.wizard-question{width:100%;min-width:0;box-shadow:none;background:0 0;border:0;border-radius:0;margin:1.25rem 0 0;padding:0;display:flow-root}.wizard-question>legend{float:left;width:100%;max-width:none;color:var(--color-primary-dark);background:0 0;margin:0 0 .75rem;padding:0;font-size:clamp(1.3rem,5vw,1.65rem);font-weight:700;line-height:1.25}.wizard-question>:not(legend){clear:both}.wizard-question-helper{color:var(--color-text-muted);margin:0 0 1rem;font-size:.9rem;line-height:1.45}.wizard-question-content{gap:1rem;display:grid}.wizard-field{width:100%;min-width:0;box-shadow:none;background:0 0;border:0;border-radius:0;gap:.55rem;margin:0;padding:0;display:grid}.wizard-field-label{color:var(--color-text);font-weight:700;display:block}.wizard-input-row{align-items:center;gap:.75rem;width:100%;min-width:0;display:flex}.wizard-input-field input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:auto;min-width:0;min-height:3.25rem;color:var(--color-text);font:inherit;flex:1;padding:.75rem 1rem;font-size:1.15rem}.wizard-input-field input[type=number],.wizard-input-field input.wizard-number-control{text-align:center}.wizard-input-suffix{color:var(--color-text-muted);white-space:nowrap;flex:none;font-weight:650}.wizard-textarea-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;background:var(--color-surface);width:100%;min-height:8rem;color:var(--color-text);font:inherit;margin-top:0;padding:.85rem 1rem;line-height:1.5}.wizard-field-helper,.wizard-field-feedback{color:var(--color-text-muted);font-size:.86rem;line-height:1.4}.wizard-field-feedback.is-invalid{color:var(--color-error);font-weight:700}.wizard-field-feedback.is-warning{color:#b76e00;font-weight:650}@keyframes wizard-required-breathe{0%,to{border-color:rgb(var(--color-interaction-rgb) / 55%);background-color:var(--color-surface);box-shadow:0 0 0 1px rgb(var(--color-interaction-rgb) / 10%), 0 2px 8px rgb(var(--color-interaction-rgb) / 18%)}50%{border-color:var(--color-interaction);background-color:rgb(var(--color-interaction-rgb) / 5%);box-shadow:0 0 0 3px rgb(var(--color-interaction-rgb) / 20%), 0 4px 18px rgb(var(--color-interaction-rgb) / 52%)}}.wizard-control{outline:none;transition:border-color .18s,background-color .18s,box-shadow .18s}.wizard-control.needs-answer{border:2px solid rgb(var(--color-interaction-rgb) / 72%);animation:1.8s ease-in-out infinite wizard-required-breathe}.wizard-control.has-answer{border:2px solid var(--color-interaction);background:var(--color-surface);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 70%), 0 0 8px rgb(var(--color-interaction-rgb) / 28%);animation:none}.wizard-control.is-optional{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:none;animation:none}.wizard-control.is-invalid{border-color:var(--color-error);background:var(--color-error-soft);animation:none;box-shadow:0 0 0 2px #a63d4024}.wizard-control.is-warning{background:#fff7e8;border-color:#b76e00;animation:none;box-shadow:0 0 0 2px #b76e0024}.wizard-control:focus{border-color:var(--color-interaction);box-shadow:0 0 0 3px rgb(var(--color-interaction-rgb) / 18%), 0 0 15px rgb(var(--color-interaction-rgb) / 24%);outline:none}.wizard-choice-group{gap:.75rem;display:grid}.wizard-choice-option{border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:flex-start;gap:.8rem;min-height:3.5rem;padding:.9rem 1rem;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:flex}.wizard-choice-option input{width:1.15rem;height:1.15rem;accent-color:var(--color-primary);flex:none;margin-top:.1rem}.wizard-choice-copy{gap:.25rem;line-height:1.4;display:grid}.wizard-choice-label{color:var(--color-text);font-weight:700}.wizard-choice-description{color:var(--color-text-muted);font-size:.92rem}.wizard-choice-badge{background:var(--color-accent-soft);width:fit-content;color:var(--color-primary-dark);border-radius:999px;padding:.18rem .5rem;font-weight:750}.wizard-choice-group.needs-answer .wizard-choice-option:not(.is-disabled){border-color:rgb(var(--color-interaction-rgb) / 72%);animation:1.8s ease-in-out infinite wizard-required-breathe}.wizard-choice-group.has-answer .wizard-choice-option{border-color:var(--color-border);background:var(--color-surface);box-shadow:none;animation:none}.wizard-choice-group.has-answer .wizard-choice-option:has(input:checked){border-color:var(--color-interaction);background:var(--color-accent-soft);color:var(--color-primary-dark);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 70%), 0 0 8px rgb(var(--color-interaction-rgb) / 28%)}.wizard-choice-option:hover:not(.is-disabled),.wizard-choice-option:focus-within{border-color:var(--color-interaction)}.wizard-choice-option.is-disabled{background:var(--color-background);cursor:not-allowed;opacity:.52;animation:none}.wizard-slider-group{border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);width:100%;margin:0;padding:1rem}.wizard-slider-group.needs-answer{border-color:rgb(var(--color-interaction-rgb) / 72%);animation:1.8s ease-in-out infinite wizard-required-breathe}.wizard-slider-group.has-answer{border-color:var(--color-interaction);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 70%), 0 0 8px rgb(var(--color-interaction-rgb) / 28%)}.wizard-slider-group>p{min-height:2rem;color:var(--color-primary);text-align:center;margin:0 0 1rem;font-size:1.05rem;font-weight:700}.wizard-slider{width:100%;height:1.75rem;accent-color:var(--color-interaction);cursor:pointer;margin:0}.wizard-slider-endpoints{color:var(--color-text-muted);justify-content:space-between;gap:1rem;margin-top:.5rem;font-size:.8rem;display:flex}.wizard-slider-endpoints span:last-child{text-align:right}.wizard-review{text-align:left;gap:1.25rem;width:100%;margin-top:1.5rem;display:grid}.wizard-review-section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);padding:1.25rem}.wizard-review-section h2{color:var(--color-primary-dark);text-align:center;margin:0 0 1rem;font-size:1.15rem}.wizard-review-section dl{margin:0}.wizard-review-item{align-items:baseline;gap:.4rem;padding-block:.45rem;display:flex}.wizard-review-item+.wizard-review-item{border-top:1px solid #ddd9e8a6}.wizard-review-item dt{flex:none;font-weight:700}.wizard-review-item dd{overflow-wrap:anywhere;min-width:0;margin:0}.wizard-ui-actions{justify-content:space-between;gap:.75rem;margin-top:1.75rem;display:flex}.wizard-ui-actions button{min-width:7rem}.wizard-ui-actions button:first-child{border-color:var(--color-primary);background:var(--color-surface);color:var(--color-primary)}.wizard-ui-actions button:first-child:hover:not(:disabled){background:var(--color-accent-soft)}@media (width>=40rem){.wizard-choice-group{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-choice-option:last-child:nth-child(odd){grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.wizard-control.needs-answer,.wizard-choice-group.needs-answer .wizard-choice-option:not(.is-disabled),.wizard-slider-group.needs-answer{border-color:var(--color-interaction);background-color:rgb(var(--color-interaction-rgb) / 5%);box-shadow:0 0 0 3px rgb(var(--color-interaction-rgb) / 20%), 0 4px 14px rgb(var(--color-interaction-rgb) / 36%);animation:none}}.catchup-daily-context{border:1px solid rgb(var(--color-interaction-rgb) / 45%);border-radius:var(--radius-md);background:rgb(var(--color-interaction-rgb) / 7%);color:var(--color-text);text-align:left;gap:.3rem;margin:.9rem 0 0;padding:.8rem .95rem;display:grid}.catchup-daily-context strong{color:var(--color-primary-dark)}.catchup-daily-context span,.catchup-return-note{color:var(--color-text-muted);font-size:.9rem;line-height:1.45}.catchup-return-note{margin:.25rem 0 .85rem}.checkin-settings-page{padding-bottom:7.5rem}.settings-save-action{justify-content:center;width:100%;display:flex}.settings-save-action button{width:min(100%,18rem)}@media (width>=40rem){.checkin-settings-page{padding-bottom:8rem}}.cardio-details{gap:1rem;margin-top:1.1rem;display:grid}.cardio-select-field,.cardio-effort-field{text-align:left;gap:.5rem;display:grid}.cardio-select-field label,.cardio-effort-field>p{margin:0;font-weight:800}.cardio-select-field select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:3.15rem;color:var(--color-text);font:inherit;padding:.72rem .85rem}.cardio-effort-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.cardio-effort-option{border:1px solid var(--color-interaction);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;text-align:center;justify-content:center;align-items:center;gap:.45rem;min-width:0;min-height:3rem;padding:.7rem .35rem;transition:border-color .15s,background .15s,box-shadow .15s;display:flex;box-shadow:0 0 0 2px #002a3512}.cardio-effort-option:hover,.cardio-effort-option:focus-within{border-color:var(--color-interaction);box-shadow:0 0 0 3px #002a3524,0 0 12px #002a3529}.cardio-effort-option:has(input:checked){border-color:var(--color-interaction);background:var(--color-accent-soft);color:var(--color-primary-dark);box-shadow:0 0 0 3px #002a3526,0 0 14px #002a352e}.cardio-effort-option input[type=radio]{width:1.15rem;height:1.15rem;accent-color:var(--color-primary);flex:none;margin:0}.cardio-effort-option span{white-space:nowrap;min-width:0;font-weight:700}.start-checkin-page .start-measurement-field{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.start-checkin-page .start-side-measurements{gap:1.35rem}.start-prep-intro{color:var(--color-text-muted);margin:0 0 1rem}.start-prep-list{gap:.8rem;display:grid}.start-prep-list>div{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);grid-template-columns:2rem minmax(0,1fr);align-items:start;gap:.7rem;padding:.9rem 1rem;display:grid}.start-prep-list>div>span{background:var(--color-accent-soft);width:1.8rem;height:1.8rem;color:var(--color-primary);border-radius:999px;place-items:center;font-weight:800;display:grid}.start-prep-list p{gap:.2rem;margin:0;display:grid}.start-prep-list small{color:var(--color-text-muted);font-size:.9rem;line-height:1.4}.start-prep-note{color:var(--color-text-muted);margin:1rem 0 0;font-size:.95rem;line-height:1.5}@media (width>=40rem){.start-checkin-page .start-side-measurements{grid-template-columns:1fr}}.measurement-tips{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);gap:.85rem;padding:1rem;display:grid}.measurement-tips p{margin:0;line-height:1.55}.start-measurement-field{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);gap:.55rem;padding:1rem;display:grid}.start-measurement-field>span{font-weight:700}.measurement-tip{color:var(--color-text-muted);font-size:.9rem;line-height:1.45}.start-measurement-field input{width:100%}.start-side-measurements{gap:1rem;display:grid}.start-choice-group.needs-answer .choice-list label{border:2px solid rgb(var(--color-interaction-rgb) / 72%);animation:1.8s ease-in-out infinite interaction-breathe}.start-choice-group.has-answer .choice-list label{border:2px solid var(--color-border);background:var(--color-surface);box-shadow:none;animation:none}.start-choice-group.has-answer .choice-list label:has(input:checked){border-color:var(--color-interaction);background:var(--color-accent-soft);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 70%), 0 0 8px rgb(var(--color-interaction-rgb) / 28%)}.body-fat-unavailable{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:.7rem;margin-top:1rem;padding:.85rem 1rem;display:flex}.body-fat-unavailable input{width:1.15rem;height:1.15rem;accent-color:var(--color-primary)}.body-fat-estimate{border:2px solid var(--color-interaction);border-radius:var(--radius-lg);background:var(--color-accent-soft);text-align:center;box-shadow:0 0 0 2px rgb(var(--color-interaction-rgb) / 14%);gap:.35rem;padding:1.4rem;display:grid}.body-fat-estimate strong{color:var(--color-primary-dark);font-size:2rem}.body-fat-estimate span,.locked-side-value{color:var(--color-primary);font-weight:700}.locked-side-value{border:2px solid var(--color-interaction);border-radius:var(--radius-md);background:var(--color-accent-soft);text-align:center;padding:1rem}.start-photo-card{border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);cursor:pointer;text-align:center;gap:.8rem;padding:.8rem;display:grid}.start-photo-card.needs-answer{border-color:var(--color-interaction);animation:1.8s ease-in-out infinite interaction-breathe}.start-photo-card.has-answer{border-color:var(--color-interaction);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 70%), 0 0 8px rgb(var(--color-interaction-rgb) / 28%)}.start-photo-card img{border-radius:var(--radius-md);object-fit:contain;background:var(--color-surface);width:100%;max-height:28rem}.start-photo-placeholder{border-radius:var(--radius-md);background:var(--color-surface);min-height:14rem;color:var(--color-text-muted);place-items:center;padding:1rem;display:grid}.start-photo-action{color:var(--color-primary);font-weight:750}.start-save-progress{text-align:center;margin-top:1rem}.start-save-progress button{min-height:auto;color:var(--color-primary);text-underline-offset:.2rem;background:0 0;border:0;padding:.55rem .75rem;text-decoration:underline}.start-save-progress button:hover:not(:disabled){color:var(--color-primary-dark);background:0 0}.start-review-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.start-review-photo-grid figure{text-align:center;min-width:0;margin:0}.start-review-photo-grid img,.start-review-photo-missing{aspect-ratio:3/4;border-radius:var(--radius-md);object-fit:cover;background:var(--color-background);width:100%}.start-review-photo-missing{color:var(--color-text-muted);place-items:center;padding:.5rem;font-size:.85rem;display:grid}.start-review-photo-grid figcaption{color:var(--color-text-muted);margin-top:.4rem;font-size:.85rem;font-weight:700}@media (width>=40rem){.start-side-measurements{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.start-choice-group.needs-answer .choice-list label,.start-photo-card.needs-answer,.start-checkin-page .start-measurement-field .interaction-field.needs-answer{border-color:var(--color-interaction);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 65%), 0 0 10px rgb(var(--color-interaction-rgb) / 32%);animation:none}}.start-checkin-page{--start-danger:#b42318;--start-danger-soft:#fef3f2;--start-warning:#b76e00;--start-warning-soft:#fff7e8}.start-checkin-page fieldset{margin-top:.85rem;padding-top:1.35rem;display:flow-root}.start-checkin-page fieldset>legend{float:left;background:0 0;width:100%;max-width:none;margin:0 0 1.15rem;padding:0;line-height:1.25}.start-checkin-page fieldset>:not(legend){clear:both}.start-checkin-page .start-measurement-field .interaction-field.needs-answer{border:2px solid rgb(var(--color-interaction-rgb) / 78%);background:rgb(var(--color-interaction-rgb) / 4%);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 55%), 0 0 10px rgb(var(--color-interaction-rgb) / 22%);animation:1.8s ease-in-out infinite interaction-breathe}.start-checkin-page .start-measurement-field .interaction-field.has-answer{border:2px solid var(--color-interaction);background:var(--color-surface);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 62%), 0 0 8px rgb(var(--color-interaction-rgb) / 24%);animation:none}.start-checkin-page .start-measurement-field .interaction-field.is-optional{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:none;animation:none}.start-measurement-field .interaction-field.is-invalid{border-color:var(--start-danger);background:var(--start-danger-soft);animation:none;box-shadow:0 0 0 2px #b4231824}.start-measurement-field .interaction-field.is-warning{border-color:var(--start-warning);background:var(--start-warning-soft);animation:none;box-shadow:0 0 0 2px #b76e0024}.measurement-feedback{margin:0;font-size:.9rem;line-height:1.4}.measurement-feedback.invalid{color:var(--start-danger);font-weight:700}.measurement-feedback.warning{color:var(--start-warning);font-weight:650}.measurement-warning-dialog{text-align:left;max-width:31rem}.measurement-warning-dialog h2{color:var(--start-warning)}.measurement-warning-dialog .wizard-actions{margin-top:1.25rem}.start-lock-notice{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text-muted);padding:.85rem 1rem;font-weight:650}.weekly-checkin-page{padding-bottom:3rem}.weekly-preview-badge{color:#693600;background:#ff9a3d1f;border:1px solid #ff9a3d73;border-radius:999px;width:fit-content;margin:1rem 0;padding:.4rem .75rem;font-size:.82rem;font-weight:750}.weekly-question-count{color:var(--color-text-muted,#59666a);font-size:.9rem}.weekly-preview-note{background:#ff9a3d1a;border-left:4px solid #ff9a3d;margin:0 0 1rem;padding:.75rem .9rem}.weekly-recovery-list{gap:1.3rem;display:grid}.weekly-recovery-list section{border-bottom:1px solid var(--color-border,#d9e0e2);gap:.65rem;padding-bottom:1.25rem;display:grid}.weekly-recovery-list section:last-child{border-bottom:0;padding-bottom:0}.weekly-recovery-list h2{margin:0;font-size:1rem;line-height:1.35}.weekly-checkin-page .weekly-measurement-field{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.weekly-side-measurements{gap:1.35rem;display:grid}.weekly-photo-tips{gap:.9rem;display:grid}.weekly-photo-tips p{margin:0;line-height:1.55}.weekly-photo-card{border:2px solid var(--color-border,#d9e0e2);border-radius:var(--radius-lg,1rem);background:var(--color-background,#fff);cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;overflow:hidden}.weekly-photo-card.needs-answer{border-color:#ff9a3db8}.weekly-photo-card.has-answer{border-color:#ff9a3d;box-shadow:0 0 0 2px #ff9a3d1f,0 8px 20px #ff9a3d29}.weekly-photo-card:hover{transform:translateY(-1px)}.weekly-photo-card img,.weekly-photo-placeholder{aspect-ratio:3/4;object-fit:cover;width:100%}.weekly-photo-placeholder{background:var(--color-surface,#f5f7f7);color:var(--color-text-muted,#59666a);text-align:center;place-items:center;padding:1.25rem;display:grid}.weekly-photo-action{color:var(--color-primary,#002a35);text-align:center;padding:.9rem 1rem;font-weight:800;display:block}.weekly-checkin-review{gap:1rem;display:grid}.weekly-checkin-review>section{border:1px solid var(--color-border,#d9e0e2);border-radius:var(--radius-lg,1rem);background:var(--color-surface,#fff);padding:1rem}.weekly-checkin-review>section>h2{margin-top:0;font-size:1.05rem}.weekly-checkin-review .checkin-review>section{padding-inline:0}@media (width>=40rem){.weekly-side-measurements{grid-template-columns:1fr}.weekly-photo-card{max-width:28rem}}.weekly-prep-intro{color:var(--color-text-muted);margin:0 0 1rem}.weekly-prep-list{gap:.8rem;display:grid}.weekly-prep-list>div{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);grid-template-columns:2rem minmax(0,1fr);align-items:start;gap:.7rem;padding:.9rem 1rem;display:grid}.weekly-prep-list>div>span{background:var(--color-accent-soft);width:1.8rem;height:1.8rem;color:var(--color-primary);border-radius:999px;place-items:center;font-weight:800;display:grid}.weekly-prep-list p{gap:.2rem;margin:0;display:grid}.weekly-prep-list small{color:var(--color-text-muted);font-size:.9rem;line-height:1.4}.weekly-prep-note{color:var(--color-text-muted);margin:1rem 0 0;font-size:.95rem;line-height:1.5}.weekly-late-checkin-notice{border:1px solid rgb(var(--color-interaction-rgb) / 35%);border-radius:var(--radius-lg);background:rgb(var(--color-interaction-rgb) / 8%);color:var(--color-primary-dark);margin:.75rem 0 1rem;padding:.8rem .9rem;font-weight:700;line-height:1.45}.weekly-summary-page{padding-bottom:8rem}.weekly-summary-header{text-align:center;margin:1rem 0 1.35rem}.weekly-summary-selector{border:1px solid var(--color-primary);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,25rem);min-height:3.5rem;color:var(--color-primary);box-shadow:var(--shadow-card);text-align:center;padding:.7rem 2.6rem .7rem 1rem;font-size:clamp(1.25rem,5vw,1.75rem);font-weight:800}.weekly-summary-header p{color:var(--color-text-muted);margin:.6rem 0 0;font-size:.9rem;font-weight:650}.weekly-summary-loading{color:var(--color-text-muted);text-align:center}.weekly-summary-section,.weekly-coach-placeholder,.weekly-summary-empty{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);margin-top:1rem;padding:clamp(1rem,4vw,1.4rem)}.weekly-summary-section>h2,.weekly-coach-placeholder>h2,.weekly-summary-empty>h2{text-align:center;margin:0 0 1rem;font-size:1.15rem}.weekly-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.weekly-result-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);text-align:center;min-width:0;padding:1rem .8rem}.weekly-result-card h3{color:var(--color-text-muted);margin:0;font-size:.82rem}.weekly-result-value{color:var(--color-primary-dark);margin-top:.45rem;font-size:clamp(1.3rem,6vw,1.75rem);line-height:1;display:block}.weekly-result-caption{color:var(--color-text-muted);margin-top:.2rem;font-size:.7rem;font-weight:700;display:block}.weekly-weight-sparkline{width:100%;height:3.8rem;margin:.55rem auto 0;display:block}.weekly-weight-sparkline polyline{stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.weekly-sparkline-empty{min-height:3.8rem;color:var(--color-text-muted);place-items:center;margin-top:.55rem;font-size:.68rem;line-height:1.3;display:grid}.weekly-waist-visual{border:2px solid;border-radius:50%;place-items:center;width:3.25rem;height:3.25rem;margin:.65rem auto .55rem;font-size:2rem;font-weight:900;line-height:1;display:grid}.weekly-result-delta{justify-content:center;align-items:center;gap:.45rem;min-width:0;margin-top:.4rem;display:flex}.weekly-result-arrow{font-size:1.3rem;font-weight:900}.weekly-result-delta div{text-align:left;min-width:0;display:grid}.weekly-result-delta strong{white-space:nowrap;font-size:.8rem}.weekly-result-delta small{color:var(--color-text-muted);font-size:.62rem;line-height:1.2}.is-positive{color:var(--color-success)}.is-negative{color:var(--color-error)}.is-watch{color:var(--color-interaction)}.is-neutral{color:var(--color-primary)}.weekly-body-fat-note{color:var(--color-text-muted);text-align:center;margin:.9rem 0 0;font-size:.8rem}.weekly-prescription-list{gap:.75rem;display:grid}.weekly-prescription-version{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);padding:1rem}.weekly-prescription-dates{color:var(--color-primary);text-align:center;margin:0 0 .8rem;font-size:.78rem;font-weight:800}.weekly-prescription-calories{justify-items:center;gap:.1rem;display:grid}.weekly-prescription-calories strong{color:var(--color-primary-dark);font-size:1.8rem}.weekly-prescription-calories span{color:var(--color-text-muted);font-size:.72rem;font-weight:700}.weekly-prescription-macros{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin-top:.8rem;display:grid}.weekly-prescription-macros>div{justify-items:center;gap:.1rem;display:grid}.weekly-prescription-macros strong{color:var(--color-primary-dark);font-size:.95rem}.weekly-prescription-macros span{color:var(--color-text-muted);font-size:.64rem;font-weight:700}.weekly-prescription-activity{color:var(--color-text-muted);text-align:center;flex-wrap:wrap;justify-content:center;gap:.35rem .9rem;margin-top:.85rem;font-size:.7rem;display:flex}.weekly-prescription-note,.weekly-data-note{color:var(--color-text-muted);text-align:center;margin:.8rem 0 0;font-size:.72rem;line-height:1.4}.weekly-report-card-top,.weekly-activity-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.weekly-report-card-top>div,.weekly-activity-summary>article{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);text-align:center;justify-items:center;gap:.15rem;min-width:0;padding:.9rem .65rem;display:grid}.weekly-report-card-top strong,.weekly-activity-summary strong{color:var(--color-primary-dark);font-size:1.3rem}.weekly-report-card-top span,.weekly-activity-summary span{color:var(--color-text-muted);font-size:.7rem;font-weight:700}.weekly-activity-summary small{color:var(--color-text-muted);font-size:.64rem}.weekly-adherence-value.is-positive{color:var(--color-success)}.weekly-adherence-value.is-watch{color:var(--color-interaction)}.weekly-adherence-value.is-negative{color:var(--color-error)}.weekly-summary-list{margin:.8rem 0 0}.weekly-summary-list>div{grid-template-columns:minmax(0,1fr) auto;gap:.7rem;padding-block:.48rem;display:grid}.weekly-summary-list>div+.weekly-summary-list>div{border-top:1px solid #ddd9e8a6}.weekly-summary-list dt{color:var(--color-text-muted);font-size:.75rem;font-weight:700}.weekly-summary-list dd{color:var(--color-primary-dark);text-align:right;margin:0;font-size:.76rem;font-weight:800}.weekly-context-note{border-top:1px solid var(--color-border);margin-top:.9rem;padding-top:.8rem}.weekly-context-note strong{color:var(--color-primary-dark);font-size:.8rem}.weekly-context-note p{color:var(--color-primary-dark);margin:.35rem 0 0;font-size:.78rem;line-height:1.45}.weekly-coach-placeholder{background:var(--color-background);border-style:dashed}.weekly-coach-placeholder p,.weekly-summary-empty p{color:var(--color-text-muted);text-align:center;font-size:.82rem;line-height:1.5}.weekly-summary-unavailable{color:var(--color-text-muted);text-align:center;margin:1rem 0 0;font-size:.76rem;line-height:1.4}@media (width<=20rem){.weekly-results-grid,.weekly-report-card-top,.weekly-activity-summary{grid-template-columns:1fr}}.weekly-coach-review-header{text-align:center;justify-items:center;gap:.65rem;display:grid}.weekly-coach-review-header h2{text-align:center;width:100%;margin-inline:auto}.weekly-coach-review-meta{justify-content:center}.weekly-plan-adjustment-handoff{border:1px solid rgb(var(--color-interaction-rgb) / 45%);border-radius:var(--radius-xl);background:linear-gradient(145deg, var(--color-surface), var(--color-accent-soft));box-shadow:var(--shadow-card);text-align:center;margin-top:1rem;padding:clamp(1rem,4vw,1.4rem)}.weekly-plan-adjustment-eyebrow{color:var(--color-interaction);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1rem;font-weight:900}.weekly-plan-adjustment-handoff.is-pending{border-color:var(--color-interaction);animation:2.5s ease-in-out infinite check-in-breathe}@media (prefers-reduced-motion:reduce){.weekly-plan-adjustment-handoff.is-pending{border-color:var(--color-interaction);box-shadow:0 0 6px rgb(var(--color-interaction-rgb) / 70%), 0 0 14px rgb(var(--color-interaction-rgb) / 30%);animation:none}}.weekly-plan-adjustment-handoff h2{color:var(--color-primary-dark);margin:.25rem 0 0;font-size:1.2rem}.weekly-plan-adjustment-handoff p:not(.weekly-plan-adjustment-eyebrow){max-width:32rem;color:var(--color-text-muted);margin:.7rem auto 1rem;font-size:.84rem;line-height:1.5}.weekly-plan-adjustment-handoff button{width:min(100%,22rem)}.weekly-plan-adjustment-handoff.is-accepted{border-color:var(--color-success);background:linear-gradient(145deg, var(--color-surface), var(--color-success-soft));box-shadow:var(--shadow-card)}.weekly-plan-adjustment-handoff.is-accepted .weekly-plan-adjustment-eyebrow{color:var(--color-text-muted);letter-spacing:0;text-transform:none;justify-content:center;align-items:center;gap:.4rem;font-size:.82rem;display:flex}.weekly-plan-adjustment-handoff.is-accepted .weekly-plan-adjustment-eyebrow .weekly-goal-check{color:var(--color-success)}.weekly-plan-adjustment-handoff.is-declined,.weekly-plan-adjustment-handoff.is-expired,.weekly-plan-adjustment-handoff.is-superseded{border-color:var(--color-border);background:var(--color-surface)}.weekly-plan-adjustment-handoff.is-declined .weekly-plan-adjustment-eyebrow,.weekly-plan-adjustment-handoff.is-expired .weekly-plan-adjustment-eyebrow,.weekly-plan-adjustment-handoff.is-superseded .weekly-plan-adjustment-eyebrow{color:var(--color-text-muted)}.weekly-plan-adjustment-action{color:var(--color-primary-dark);margin-top:.75rem;font-size:clamp(1rem,4vw,1.15rem);line-height:1.35;display:block}.weekly-plan-adjustment-handoff p.weekly-plan-adjustment-detail{color:var(--color-primary-dark);margin-bottom:.85rem;font-size:.92rem}.weekly-plan-adjustment-actions{grid-template-columns:1fr 1fr;gap:.65rem;width:min(100%,30rem);margin:0 auto;display:grid}.weekly-plan-adjustment-actions button{width:100%}.weekly-plan-adjustment-window-note{max-width:32rem;color:var(--color-text-muted);margin:.75rem auto 0;font-size:.76rem;line-height:1.4;display:block}.weekly-plan-adjustment-handoff p.weekly-plan-adjustment-error{color:var(--color-danger,#a33);margin:.65rem auto;font-weight:700}.weekly-plan-adjustment-confirm-actions{grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1rem;display:grid}@media (width<=420px){.weekly-plan-adjustment-actions,.weekly-plan-adjustment-confirm-actions{grid-template-columns:1fr}}.weekly-recommendation-waiting{text-align:center;gap:.08rem;margin:0 auto 1rem;display:grid}.weekly-recommendation-waiting>span{display:block}.weekly-coach-review{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:1.25rem}.weekly-coach-review-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.weekly-coach-review-header h2{margin:0}.weekly-coach-review-meta{flex-wrap:wrap;gap:.5rem;display:flex}.weekly-coach-pill{border:1px solid var(--color-border);border-radius:999px;align-items:center;padding:.25rem .6rem;font-size:.78rem;font-weight:700;line-height:1.2;display:inline-flex}.weekly-coach-block+.weekly-coach-block{margin-top:1.15rem}.weekly-coach-block h3{margin:0 0 .45rem;font-size:1rem}.weekly-coach-block p{margin:0;line-height:1.55}.weekly-coach-focus-list,.weekly-coach-watch-list{margin:0;padding-left:1.2rem}.weekly-coach-focus-list li+li,.weekly-coach-watch-list li+li{margin-top:.4rem}.weekly-coach-footnote{color:var(--color-text-muted);margin:1.15rem 0 0;font-size:.8rem}.weekly-coach-loading,.weekly-coach-error{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:1.25rem}.weekly-coach-loading h2,.weekly-coach-error h2{margin-top:0}.weekly-coach-error button{margin-top:.75rem}.current-week-page{padding-bottom:8rem}.current-week-header{text-align:center;margin:1rem 0 1.15rem}.current-week-header h1{color:var(--color-primary);margin:0;font-size:clamp(1.65rem,6vw,2.15rem)}.current-week-header p{color:var(--color-primary-dark);margin:.45rem 0 0;font-size:.95rem;font-weight:750}.current-week-header small{max-width:34rem;color:var(--color-text-muted);margin:.6rem auto 0;font-size:.78rem;line-height:1.4;display:block}.current-week-day-nav{z-index:12;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #ddd9e8e0;grid-template-columns:repeat(7,minmax(0,1fr));gap:.2rem;margin:0 -.35rem 1rem;padding:.38rem;display:grid;position:sticky;top:0;box-shadow:0 8px 22px #211f2c14}.current-week-day-button{border-radius:var(--radius-md);min-width:0;min-height:4.05rem;color:var(--color-text-muted);background:0 0;border:1px solid #0000;grid-template-rows:auto auto .65rem;place-items:center;gap:.05rem;padding:.35rem .05rem;display:grid}.current-week-day-button:hover:not(:disabled){background:var(--color-accent-soft);color:var(--color-primary)}.current-week-day-button>span{text-transform:uppercase;font-size:clamp(.58rem,2.2vw,.72rem);font-weight:800}.current-week-day-button>strong{color:var(--color-primary-dark);font-size:clamp(.9rem,3.5vw,1.08rem);line-height:1}.current-week-day-button>small{color:var(--color-text-muted);font-size:.72rem;font-weight:900;line-height:.65rem}.current-week-day-button.is-completed>small,.current-week-day-button.is-weekly-completed>small,.current-week-day-button.is-start-day>small{color:var(--color-success)}.current-week-day-button.is-missing>small,.current-week-day-button.is-missing-weekly>small{color:var(--color-interaction)}.current-week-day-button.is-today>small,.current-week-day-button.is-today-weekly>small,.current-week-day-button.is-weekly-draft>small{color:var(--color-primary)}.current-week-day-button.is-active{border-color:var(--color-interaction);background:var(--color-accent-soft);color:var(--color-primary);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 40%), 0 0 12px rgb(var(--color-interaction-rgb) / 16%)}.current-week-rows{gap:.9rem;display:grid}.current-week-day-row{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);scroll-margin-top:6.4rem;transition:border-color .16s,box-shadow .16s,background .16s;overflow:hidden}.current-week-day-row.is-active{border-color:rgb(var(--color-interaction-rgb) / 62%);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 24%), 0 8px 24px #211f2c14}.current-week-day-row.is-today,.current-week-day-row.is-today-weekly,.current-week-day-row.is-weekly-draft{background:linear-gradient(180deg, #eeeafd75, var(--color-surface) 52%)}.current-week-row-header{justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem .75rem;display:flex}.current-week-row-header>div:first-child{min-width:0}.current-week-row-day{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:850;display:block}.current-week-row-header h2{color:var(--color-primary-dark);margin:.18rem 0 0;font-size:1.05rem}.current-week-row-tools{flex:none;align-items:center;gap:.45rem;display:flex}.current-week-status{background:var(--color-background);color:var(--color-text-muted);white-space:nowrap;border-radius:999px;padding:.28rem .55rem;font-size:.67rem;font-weight:850}.current-week-status.is-completed,.current-week-status.is-weekly-completed,.current-week-status.is-start-day{background:var(--color-success-soft);color:var(--color-success)}.current-week-status.is-today,.current-week-status.is-today-weekly,.current-week-status.is-weekly-draft{background:var(--color-accent-soft);color:var(--color-primary)}.current-week-status.is-missing,.current-week-status.is-missing-weekly{background:rgb(var(--color-interaction-rgb) / 12%);color:var(--color-primary-dark)}.current-week-edit{border:1px solid var(--color-border);background:var(--color-surface);width:2.15rem;min-width:2.15rem;height:2.15rem;min-height:2.15rem;color:var(--color-primary);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:grid}.current-week-edit:hover:not(:disabled){border-color:var(--color-interaction);background:var(--color-accent-soft);box-shadow:0 0 8px rgb(var(--color-interaction-rgb) / 20%)}.current-week-edit:active:not(:disabled){transform:translateY(1px)}.current-week-edit svg{width:1.05rem;height:1.05rem}.current-week-swipe-hint{color:var(--color-text-muted);text-align:right;padding:0 1rem .4rem;font-size:.67rem;font-weight:650}.current-week-metrics-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#6c5bd447 transparent;-webkit-overflow-scrolling:touch;padding:0 1rem 1rem;overflow-x:auto}.current-week-metrics-scroll::-webkit-scrollbar{height:.35rem}.current-week-metrics-scroll::-webkit-scrollbar-thumb{background:#6c5bd43d;border-radius:999px}.current-week-metrics{gap:.55rem;width:max-content;display:flex}.current-week-metric{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);flex:0 0 7.2rem;align-content:center;gap:.3rem;width:7.2rem;min-height:5rem;padding:.75rem;display:grid}.current-week-metric.is-wide{flex-basis:12rem;width:12rem}.current-week-metric>span{color:var(--color-text-muted);font-size:.68rem;font-weight:750}.current-week-metric>strong{color:var(--color-primary-dark);overflow-wrap:anywhere;white-space:pre-wrap;font-size:.88rem;line-height:1.25}.current-week-metric>small{color:var(--color-text-muted);font-size:.63rem;line-height:1.25}.current-week-empty-row{border-top:1px solid #ddd9e8b3;place-items:center;min-height:4.6rem;padding:.85rem 1rem 1rem;display:grid}.current-week-row-action{border-color:var(--color-primary);background:var(--color-surface);width:min(100%,18rem);min-height:2.8rem;color:var(--color-primary)}.current-week-row-action:hover:not(:disabled){background:var(--color-accent-soft);color:var(--color-primary-dark)}.current-week-row-note{color:var(--color-text-muted);text-align:center;margin:0;font-size:.8rem;line-height:1.4}@media (width>=40rem){.current-week-day-nav{top:.75rem}.current-week-day-row{scroll-margin-top:7.25rem}.current-week-metric{flex-basis:8.2rem;width:8.2rem}.current-week-metric.is-wide{flex-basis:14rem;width:14rem}}@media (prefers-reduced-motion:reduce){.current-week-day-row{scroll-behavior:auto}}.checkin-history-page{padding-bottom:8rem}.checkin-history-header,.weekly-preflight-header{text-align:center;margin:1.25rem 0 1.5rem}.checkin-history-header h1,.weekly-preflight-header h1{color:var(--color-primary);margin-bottom:.55rem}.checkin-history-header p,.weekly-preflight-header p{max-width:36rem;color:var(--color-text-muted);margin:0 auto}.history-week-label{color:var(--color-text-muted);text-align:center;margin:0 auto .45rem;font-size:.85rem;font-weight:700;display:block}.history-week-selector{border:1px solid var(--color-primary);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,30rem);min-height:3rem;color:var(--color-primary-dark);margin:0 auto 1.25rem;padding:.65rem .85rem;font-weight:750;display:block}.history-week-card,.weekly-preflight-card,.history-empty{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);padding:clamp(1rem,4vw,1.5rem)}.history-week-heading{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.65rem 1rem;margin-bottom:1rem;padding-bottom:1rem;display:flex}.history-week-heading h2,.weekly-preflight-card h2{color:var(--color-primary-dark);margin:0}.history-week-heading p{color:var(--color-text-muted);margin:.25rem 0 0}.history-week-heading>span{color:var(--color-text-muted);font-size:.88rem;font-weight:700}.history-items,.weekly-preflight-items{gap:.8rem;display:grid}.history-item,.weekly-preflight-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);padding:.95rem 1rem}.history-item-heading,.weekly-preflight-item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem 1rem;display:flex}.history-item-heading>div,.weekly-preflight-item>div:first-child{gap:.15rem;display:grid}.history-item-heading strong,.weekly-preflight-item strong{color:var(--color-primary-dark)}.history-item-heading div span,.weekly-preflight-item div span{color:var(--color-text-muted);font-size:.85rem}.history-status{border:1px solid var(--color-border);background:var(--color-surface);min-height:1.9rem;color:var(--color-text-muted);white-space:nowrap;border-radius:999px;align-items:center;padding:.3rem .65rem;font-size:.78rem;font-weight:800;display:inline-flex}.history-status.is-complete{color:var(--color-success);background:#287a5b14;border-color:#287a5b59}.history-status.is-missing{background:var(--color-error-soft);color:var(--color-error);border-color:#a63d4059}.history-status.is-current{border-color:var(--color-interaction);background:var(--color-accent-soft);color:var(--color-primary-dark)}.history-status.is-neutral,.history-status.is-upcoming{color:var(--color-text-muted)}.history-answer-details{border-top:1px solid var(--color-border);margin-top:.85rem;padding-top:.75rem}.history-answer-details summary{width:fit-content;color:var(--color-primary);cursor:pointer;font-weight:800}.history-answer-sections{gap:.9rem;margin-top:.9rem;display:grid}.history-answer-sections section{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:.8rem .9rem}.history-answer-sections h3{color:var(--color-primary-dark);margin:0 0 .6rem;font-size:.95rem}.history-answer-sections dl{margin:0}.history-answer{grid-template-columns:minmax(7rem,.8fr) minmax(0,1.2fr);gap:.5rem .9rem;padding:.42rem 0;display:grid}.history-answer+.history-answer{border-top:1px solid #ddd9e899}.history-answer dt{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.history-answer dd{overflow-wrap:anywhere;white-space:pre-wrap;min-width:0;margin:0;font-size:.88rem}.history-entered-at,.history-legacy-note,.history-unavailable-note{color:var(--color-text-muted);margin:0;font-size:.8rem}.history-legacy-note,.history-unavailable-note{margin-top:.7rem}.history-missing-actions,.weekly-preflight-actions{flex-wrap:wrap;gap:.6rem;margin-top:.85rem;display:flex}.history-missing-actions>button,.weekly-preflight-actions>button{min-height:2.6rem;padding:.55rem .8rem;font-size:.85rem}.history-open-summary{margin-top:.7rem}.history-unavailable-confirm,.weekly-preflight-confirm{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;padding:.75rem}.history-unavailable-confirm p,.weekly-preflight-confirm p{margin:0 0 .65rem;font-size:.88rem}.history-unavailable-confirm>div,.weekly-preflight-confirm>div{flex-wrap:wrap;gap:.55rem;display:flex}.weekly-preflight-page{padding-bottom:3rem}.weekly-preflight-card{width:min(100%,38rem);margin-inline:auto}.weekly-preflight-card h2{text-align:center;margin-bottom:1rem}.weekly-preflight-item{align-items:flex-start}.weekly-preflight-actions{justify-content:flex-end;margin-top:0}.weekly-preflight-actions>button{min-width:10rem}.weekly-preflight-continue{width:min(100%,22rem);margin:1.25rem auto 0;display:block}.catchup-context-note{color:var(--color-text-muted);text-align:center;margin:0;font-size:.9rem}@media (width<=34rem){.history-item-heading,.weekly-preflight-item{align-items:stretch}.history-status{width:fit-content}.history-answer{grid-template-columns:1fr;gap:.15rem}.weekly-preflight-actions{justify-content:stretch;width:100%}.weekly-preflight-actions>button{width:100%}}.history-weekly-daily-answers>h3{color:var(--color-primary-dark);text-align:center;margin:0 0 .65rem;font-size:.95rem}.plan-adjustment-page{padding-bottom:8rem}.plan-adjustment-page-header{text-align:center;margin:1rem 0 1.35rem}.plan-adjustment-page-header h1{color:var(--color-primary);margin:.2rem 0 0;font-size:clamp(1.8rem,7vw,2.35rem);line-height:1.15}.plan-adjustment-page-header>p:last-child{max-width:34rem;color:var(--color-primary);margin:.65rem auto 0;font-size:.9rem}.plan-adjustment-eyebrow{color:var(--color-interaction);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:850}.plan-adjustment-loading,.plan-adjustment-error,.plan-adjustment-proposal-card,.plan-adjustment-prescription-card,.plan-adjustment-discussion-card,.plan-adjustment-decision-card,.plan-adjustment-resolution{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);margin-top:1rem;padding:clamp(1rem,4vw,1.4rem)}.plan-adjustment-loading,.plan-adjustment-resolution{text-align:center}.plan-adjustment-loading h2,.plan-adjustment-error strong,.plan-adjustment-resolution h2{color:var(--color-primary-dark)}.plan-adjustment-loading h2,.plan-adjustment-resolution h2{margin:0;font-size:1.15rem}.plan-adjustment-loading p,.plan-adjustment-error p,.plan-adjustment-resolution p{color:var(--color-text-muted)}.plan-adjustment-error{background:var(--color-error-soft);border-color:#a63d4059}.plan-adjustment-error button{margin-top:.3rem}.plan-adjustment-proposal-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.plan-adjustment-proposal-header>div{flex:1;min-width:min(100%,18rem)}.plan-adjustment-proposal-header h2{color:var(--color-primary-dark);margin:.25rem 0 0;font-size:clamp(1.25rem,5vw,1.55rem)}.plan-adjustment-status{border:1px solid var(--color-border);background:var(--color-background);color:var(--color-primary);border-radius:999px;align-items:center;padding:.32rem .65rem;font-size:.7rem;font-weight:800;line-height:1.2;display:inline-flex}.plan-adjustment-status.is-accepted{background:var(--color-success-soft);color:var(--color-success);border-color:#287a5b40}.plan-adjustment-status.is-declined,.plan-adjustment-status.is-expired{color:var(--color-text-muted)}.plan-adjustment-revision{color:var(--color-text-muted);margin:.55rem 0 0;font-size:.72rem;font-weight:750}.plan-adjustment-explanation{margin:1rem 0;line-height:1.6}.plan-adjustment-prescription{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);padding:1rem}.plan-adjustment-prescription-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.plan-adjustment-metric{border-radius:var(--radius-md);background:var(--color-surface);text-align:center;justify-items:center;gap:.1rem;min-width:0;padding:.7rem .45rem;display:grid}.plan-adjustment-metric strong{color:var(--color-primary-dark);font-size:1.15rem}.plan-adjustment-metric span{color:var(--color-text-muted);font-size:.68rem;font-weight:700}.plan-adjustment-activity-row{color:var(--color-text-muted);text-align:center;flex-wrap:wrap;justify-content:center;gap:.35rem 1rem;margin-top:.8rem;font-size:.72rem;display:flex}.plan-adjustment-effective-date{color:var(--color-text-muted);text-align:center;margin:.8rem 0 0;font-size:.75rem;font-weight:700}.plan-adjustment-section-heading h2,.plan-adjustment-prescription-card h2,.plan-adjustment-decision-card h2{color:var(--color-primary-dark);margin:.25rem 0 0;font-size:1.15rem}.plan-adjustment-prescription-card>.plan-adjustment-prescription{margin-top:1rem}.plan-adjustment-conversation-empty{color:var(--color-text-muted);margin:.9rem 0 0;font-size:.85rem;line-height:1.5}.plan-adjustment-conversation{gap:.7rem;margin-top:1rem;display:grid}.plan-adjustment-message{border:1px solid var(--color-border);border-radius:1rem;width:min(88%,30rem);padding:.8rem .9rem}.plan-adjustment-message.is-coach{background:var(--color-background);justify-self:start}.plan-adjustment-message.is-user{background:var(--color-accent-soft);border-color:#6c5bd440;justify-self:end}.plan-adjustment-message strong{color:var(--color-primary-dark);margin-bottom:.2rem;font-size:.72rem;display:block}.plan-adjustment-message p{white-space:pre-wrap;margin:0;font-size:.85rem;line-height:1.5}.plan-adjustment-composer{border-top:1px solid var(--color-border);gap:.55rem;margin-top:1rem;padding-top:1rem;display:grid}.plan-adjustment-composer label{color:var(--color-primary-dark);font-size:.8rem;font-weight:800}.plan-adjustment-composer textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:7rem;padding:.8rem}.plan-adjustment-composer textarea[readonly]{background:var(--color-background)}.plan-adjustment-composer-footer{gap:.7rem;display:grid}.plan-adjustment-composer-footer small{color:var(--color-text-muted);font-size:.68rem;line-height:1.4}.plan-adjustment-composer-footer button{width:100%}.plan-adjustment-decision-card{text-align:center}.plan-adjustment-decision-card>p:not(.plan-adjustment-eyebrow){color:var(--color-primary);font-size:.84rem}.plan-adjustment-decision-actions,.plan-adjustment-confirm-actions{gap:.65rem;margin-top:1rem;display:grid}.plan-adjustment-decline-button{border-color:var(--color-border);background:var(--color-surface);color:var(--color-primary)}.plan-adjustment-decline-button:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-background);color:var(--color-primary-dark)}.plan-adjustment-resolution.is-accepted{background:var(--color-success-soft);border-color:#287a5b40}.plan-adjustment-resolution-icon{border:2px solid var(--color-success);width:3rem;height:3rem;color:var(--color-success);border-radius:50%;place-items:center;margin:0 auto .8rem;font-size:1.45rem;font-weight:900;display:grid}@media (width>=36rem){.plan-adjustment-prescription-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-adjustment-composer-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center}.plan-adjustment-composer-footer button{width:auto;min-width:8rem}.plan-adjustment-decision-actions,.plan-adjustment-confirm-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.plan-adjustment-pending-note{color:var(--color-interaction);margin:.85rem auto 0;font-size:.75rem;font-weight:750}.container{width:min(100% - 2rem,44rem);margin-inline:auto;padding-block:1.5rem 3rem}.container>h1{color:var(--color-primary);margin:1.5rem 0 .25rem;font-size:clamp(1.75rem,6vw,2.25rem);line-height:1.15}.container>h1+p{color:var(--color-text-muted);margin-top:.5rem}h2,h3{line-height:1.25}h2{color:var(--color-primary-dark)}p{margin-block:.75rem}button{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;border:1px solid #0000;min-height:3rem;padding:.75rem 1.25rem;font-weight:650;transition:background .15s,border-color .15s,transform .15s,opacity .15s}button:hover:not(:disabled){background:var(--color-primary-dark)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.4}button:focus-visible{outline-offset:2px;outline:3px solid #6c5bd447}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none}.text-button{min-height:auto;color:var(--color-primary);text-underline-offset:.2rem;background:0 0;border:0;padding:.5rem 0;text-decoration:underline}.text-button:hover:not(:disabled){color:var(--color-primary-dark);background:0 0}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;color:var(--color-primary-dark);margin-bottom:1.5rem;font-size:clamp(1.3rem,5vw,1.65rem);font-weight:700;line-height:1.3}label{color:var(--color-text)}input[type=number]:focus,input[type=email]:focus,input[type=password]:focus,textarea:focus,select:focus{border-color:var(--color-interaction);box-shadow:0 0 0 3px #fffffff2, 0 0 20px 5px var(--color-interaction-glow);outline:none}textarea{min-height:8rem}input[type=number]:focus,input[type=email]:focus,input[type=password]:focus,textarea:focus,select:focus{border-color:var(--color-interaction);box-shadow:0 0 0 3px #002a3529,0 0 14px #002a3533}.container progress,.container fieldset,.checkin-review{width:100%}.container>progress{background:var(--color-border);border:0;border-radius:999px;height:.55rem;margin:1.25rem 0 .5rem;overflow:hidden}progress::-webkit-progress-bar{background:var(--color-border);border-radius:999px}progress::-webkit-progress-value{background:linear-gradient(90deg, var(--color-primary), var(--color-accent));border-radius:999px}progress::-moz-progress-bar{background:var(--color-primary);border-radius:999px}.container>progress+p{color:var(--color-text-muted);margin:0 0 1rem;font-size:.9rem}.container>fieldset{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);margin-top:1.25rem;padding:clamp(1.25rem,5vw,2rem)}.choice-list{gap:.75rem;display:grid}.choice-list label{border:1px solid var(--color-interaction);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:.8rem;min-height:3.5rem;padding:.9rem 1rem;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:flex;box-shadow:0 0 0 2px #002a3512}.choice-list label:hover,.choice-list label:focus-within{border-color:var(--color-interaction);box-shadow:0 0 0 3px #002a3524,0 0 12px #002a3529}.choice-list label:has(input:checked){border-color:var(--color-interaction);background:var(--color-accent-soft);color:var(--color-primary-dark);box-shadow:0 0 0 3px #002a3526,0 0 14px #002a352e}.choice-list input[type=radio]{width:1.15rem;height:1.15rem;accent-color:var(--color-primary);flex:none}.number-answer{align-items:center;gap:.75rem;display:flex}.number-answer input{text-align:center;min-width:0;font-size:1.35rem;font-weight:650}.number-answer span{color:var(--color-text-muted);flex:none;font-weight:600}.answer-divider{color:var(--color-text-muted);text-align:center;align-items:center;gap:.75rem;margin-block:1.25rem;font-size:.9rem;display:flex}.answer-divider:before,.answer-divider:after{background:var(--color-border);content:"";flex:1;height:1px}.slider-answer{padding-top:.5rem}.slider-answer>p{min-height:2rem;color:var(--color-primary);text-align:center;margin-bottom:1.25rem;font-size:1.15rem;font-weight:700}.answer-slider{width:100%;height:1.75rem;accent-color:var(--color-interaction);filter:drop-shadow(0 0 4px #002a3547);cursor:pointer;margin:0;transition:filter .15s,opacity .15s}.answer-slider:focus-visible{filter:drop-shadow(0 0 7px #002a356b);outline:none}.answer-slider.is-unanswered{opacity:.48}.answer-slider.is-answered{opacity:1}.slider-endpoints{color:var(--color-text-muted);justify-content:space-between;gap:1rem;margin-top:.5rem;font-size:.8rem;display:flex}.slider-endpoints span:last-child{text-align:right}.question-helper{color:var(--color-text-muted);margin-top:-.5rem;font-size:.9rem}fieldset textarea{margin-top:.5rem}@keyframes interaction-breathe{0%,to{border-color:var(--color-border);box-shadow:0 0 5px rgb(var(--color-interaction-rgb) / 8%)}50%{border-color:var(--color-interaction);box-shadow:0 0 5px rgb(var(--color-interaction-rgb) / 85%), 0 0 15px 4px rgb(var(--color-interaction-rgb) / 48%)}}.interaction-field{outline:none;transition:border-color .18s,box-shadow .18s}.interaction-field.needs-answer{animation:2.5s ease-in-out infinite interaction-breathe}.interaction-field.has-answer{border-color:var(--color-interaction);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 70%), 0 0 8px rgb(var(--color-interaction-rgb) / 28%);animation:none}.interaction-field.is-optional{border-color:var(--color-border);box-shadow:none;animation:none}.interaction-field:focus{outline:none}@media (prefers-reduced-motion:reduce){.interaction-field.needs-answer{border-color:var(--color-interaction);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 65%), 0 0 10px rgb(var(--color-interaction-rgb) / 32%);animation:none}}.wizard-actions{justify-content:space-between;gap:.75rem;margin-top:1.75rem;display:flex}.wizard-actions button{min-width:7rem}.wizard-actions button:first-child{border-color:var(--color-primary);background:var(--color-surface);color:var(--color-primary)}.wizard-actions button:first-child:hover:not(:disabled){background:var(--color-accent-soft)}.checkin-review{text-align:left;margin-top:1.5rem}.checkin-review section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-bottom:1.25rem;padding:1.25rem}.checkin-review h2{text-align:center;margin:0 0 1rem;font-size:1.15rem}.checkin-review dl{margin:0}.review-item{align-items:baseline;gap:.4rem;padding-block:.45rem;display:flex}.review-item+.review-item{border-top:1px solid #ddd9e8a6}.review-item dt{flex:none;font-weight:700}.review-item dd{overflow-wrap:anywhere;min-width:0;margin:0}[role=alert]{border-radius:var(--radius-md);background:var(--color-error-soft);color:var(--color-error);border:1px solid #a63d4040;padding:.85rem 1rem}[role=status]{border-radius:var(--radius-md);background:var(--color-success-soft);color:var(--color-success);border:1px solid #287a5b40;padding:.85rem 1rem}@media (width>=40rem){.container{padding-top:2.5rem}.container>fieldset{padding:2rem}.choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-list label:last-child:nth-child(odd){grid-column:1/-1}}.login-header{text-align:center;margin:2rem 0 2.25rem}.login-header h1{color:var(--color-primary);margin:0;font-size:clamp(2rem,6vw,2.8rem)}.login-header p{color:var(--color-text-muted);margin-top:.65rem;font-size:1.05rem}.login-form{width:min(100%,32rem);margin-inline:auto}.login-row{grid-template-columns:7rem minmax(0,1fr);align-items:center;gap:.75rem;margin-bottom:1.15rem;display:grid}.login-label{text-align:right;font-weight:700}.login-row input{width:100%;min-width:0}.login-actions{justify-content:center;margin-top:1.5rem;display:flex}.login-actions button{min-width:9rem}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.dashboard-page{padding-bottom:7.5rem}.dashboard-header{text-align:center;margin-bottom:1.5rem}.dashboard-title{color:var(--color-primary);margin:0;font-size:clamp(2rem,7vw,2.8rem);line-height:1.1}.dashboard-welcome-row{text-align:center;justify-items:center;gap:.35rem;margin-top:.75rem;display:grid}.dashboard-welcome-row p{margin:0}.dashboard-welcome-row>p:first-child{color:var(--color-text-muted);font-size:1rem}.dashboard-streak{color:var(--color-primary);letter-spacing:.01em;font-size:clamp(1.08rem,4vw,1.28rem);font-weight:800}.dashboard-overdue-weekly{border:1px solid rgb(var(--color-interaction-rgb) / 42%);border-radius:var(--radius-xl);background:rgb(var(--color-interaction-rgb) / 8%);gap:.9rem;margin:1.25rem 0 .25rem;padding:1rem 1.1rem;display:grid}.dashboard-overdue-weekly strong{color:var(--color-primary-dark)}.dashboard-overdue-weekly p{color:var(--color-text-muted);margin:.3rem 0 0;line-height:1.45}.dashboard-overdue-weekly button{width:100%}.dashboard-check-in{justify-content:center;margin:1.75rem 0;display:flex}.daily-check-in-button{border:2px solid var(--color-primary);border-radius:var(--radius-xl);background:var(--color-primary);color:#fff;letter-spacing:.01em;width:min(100%,25rem);min-height:4.4rem;padding-inline:1.5rem;font-size:clamp(1.05rem,4vw,1.25rem);font-weight:750;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}.daily-check-in-button.is-locked,.daily-check-in-button.is-locked:disabled{border-color:var(--color-primary);background:var(--color-primary);color:#fff;opacity:1;cursor:not-allowed}@keyframes check-in-breathe{0%,to{border-color:var(--color-interaction);box-shadow:0 0 4px rgb(var(--color-interaction-rgb) / 30%), 0 0 10px rgb(var(--color-interaction-rgb) / 15%)}50%{border-color:var(--color-interaction);box-shadow:0 0 7px rgb(var(--color-interaction-rgb) / 90%), 0 0 22px 6px rgb(var(--color-interaction-rgb) / 46%)}}.daily-check-in-button.is-due{border-color:var(--color-interaction);background:var(--color-primary);color:#fff;animation:2.5s ease-in-out infinite check-in-breathe}.daily-check-in-button.is-due:hover:not(:disabled){border-color:var(--color-interaction);background:var(--color-primary-dark)}.daily-check-in-button.is-complete{border-color:var(--color-interaction);background:var(--color-primary);color:#fff;box-shadow:0 0 5px rgb(var(--color-interaction-rgb) / 70%), 0 0 13px rgb(var(--color-interaction-rgb) / 28%);animation:none}.daily-check-in-button.is-complete:hover:not(:disabled){border-color:var(--color-interaction);background:var(--color-primary-dark);box-shadow:0 0 7px rgb(var(--color-interaction-rgb) / 80%), 0 0 17px rgb(var(--color-interaction-rgb) / 36%)}.week-at-a-glance,.plan-progress-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);padding:clamp(1.2rem,5vw,1.75rem)}.week-at-a-glance{margin-bottom:1rem}.week-at-a-glance h2,.plan-progress-header h2{text-align:center;margin:0}.week-at-a-glance h2{margin-bottom:1.25rem}.weekly-score-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:0;display:grid}.weekly-score-list>div{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);text-align:center;align-content:center;gap:.55rem;min-width:0;min-height:7.2rem;padding:1rem .85rem;display:grid}.weekly-score-list dt{min-width:0;color:var(--color-text-muted);font-size:.86rem;font-weight:700;line-height:1.25}.weekly-score-list dd{min-width:0;color:var(--color-primary-dark);overflow-wrap:anywhere;margin:0;font-size:clamp(1rem,4vw,1.2rem);font-weight:800;line-height:1.2}.weekly-score-list>div.is-goal-met{border-color:var(--color-success);box-shadow:0 0 10px #287a5b1a}.weekly-score-list>div.is-goal-met dt{justify-content:center;align-items:center;gap:.38rem;display:flex}.weekly-goal-check{border:2px solid var(--color-success);width:1.3rem;height:1.3rem;color:var(--color-success);border-radius:50%;flex:0 0 1.3rem;place-items:center;font-size:.82rem;font-weight:900;line-height:1;display:inline-grid}.weekly-score-list dd.is-adherence-good{color:var(--color-success)}.weekly-score-list dd.is-adherence-watch{color:var(--color-interaction)}.weekly-score-list dd.is-adherence-neutral{color:var(--color-primary)}.dashboard-section-link{border-color:var(--color-primary);background:var(--color-surface);width:min(100%,18rem);min-height:2.8rem;color:var(--color-primary);margin:1.35rem auto 0;display:block}.dashboard-section-link:hover:not(:disabled){background:var(--color-accent-soft);color:var(--color-primary-dark)}.plan-progress-header{margin-bottom:1rem}.plan-progress-header p{color:var(--color-text-muted);text-align:center;margin:.35rem 0 0;font-size:.92rem;font-weight:700}.plan-progress-list{gap:.7rem;display:grid}.plan-progress-row{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);width:100%;min-height:4.4rem;color:var(--color-text);text-align:left;grid-template-columns:minmax(0,1fr);align-items:center;gap:.6rem;padding:.85rem .95rem;display:grid}button.plan-progress-row{font:inherit;grid-template-columns:minmax(0,1fr) auto}button.plan-progress-row:hover:not(:disabled){background:var(--color-accent-soft);color:var(--color-text);border-color:#6c5bd461}.plan-progress-row.is-current{border-color:var(--color-interaction);box-shadow:0 0 5px rgb(var(--color-interaction-rgb) / 48%), 0 0 16px rgb(var(--color-interaction-rgb) / 18%);background:linear-gradient(135deg,#eeeafdd1,#f7f7fbeb)}.plan-progress-row.is-completed{border-color:#287a5b47}.plan-progress-row.is-upcoming{background:#f7f7fbb8}.plan-progress-row.is-needs-review{border-color:rgb(var(--color-interaction-rgb) / 42%)}.plan-progress-row.is-weekly-overdue{border-color:rgb(var(--color-interaction-rgb) / 54%);background:rgb(var(--color-interaction-rgb) / 8%)}.plan-progress-row.is-no-weekly{border-color:var(--color-border);background:#f7f7fbd1}.plan-progress-row-content{gap:.35rem;min-width:0;display:grid}.plan-progress-row-topline{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.plan-progress-row-topline>strong{color:var(--color-primary-dark);font-size:.98rem}.plan-progress-status{white-space:nowrap;border-radius:999px;flex:none;padding:.28rem .58rem;font-size:.78rem;font-weight:800}.plan-progress-status.is-complete{background:var(--color-success-soft);color:var(--color-success)}.plan-progress-status.is-current{background:var(--color-primary);color:#fff;box-shadow:0 0 0 1px rgb(var(--color-interaction-rgb) / 24%), 0 0 8px rgb(var(--color-interaction-rgb) / 14%)}.plan-progress-status.is-needs-review{background:rgb(var(--color-interaction-rgb) / 12%);color:var(--color-primary-dark)}.plan-progress-status.is-overdue{background:rgb(var(--color-interaction-rgb) / 14%);color:var(--color-primary-dark)}.plan-progress-status.is-no-weekly{background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border)}.plan-progress-status.is-upcoming{background:var(--color-surface);color:var(--color-text-muted)}.plan-progress-row-details{color:var(--color-text-muted);flex-wrap:wrap;gap:.25rem .85rem;font-size:.86rem;display:flex}.plan-progress-row-details strong{color:var(--color-primary);font-weight:850}.plan-progress-subtext{color:var(--color-text-muted);font-size:.86rem}.plan-progress-chevron{color:var(--color-primary);font-size:1.55rem;font-weight:650;line-height:1}.plan-progress-toggle{margin:.9rem auto 0;font-weight:800;text-decoration:none;display:block}.dashboard-dev-tools{color:var(--color-text-muted);text-align:center;margin-top:1rem;font-size:.8rem}.dashboard-dev-tools summary{width:fit-content;color:var(--color-text-muted);cursor:pointer;margin-inline:auto;font-weight:750}.dashboard-dev-tools>div{justify-items:center;gap:.15rem;margin-top:.4rem;display:grid}.plan-page{padding-bottom:7.5rem}.plan-selector{margin-bottom:1rem;position:relative}.plan-selector summary{border:1px solid var(--color-primary);border-radius:var(--radius-lg);background:var(--color-surface);width:fit-content;max-width:100%;min-height:3.5rem;color:var(--color-primary);box-shadow:var(--shadow-card);text-align:center;cursor:pointer;justify-content:center;align-items:center;gap:.65rem;margin-inline:auto;padding:.7rem 1rem;font-size:clamp(1.4rem,5vw,1.9rem);font-weight:800;line-height:1.15;list-style:none;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.plan-selector summary:hover{background:var(--color-accent-soft)}.plan-selector summary:focus-visible{outline-offset:2px;outline:3px solid #6c5bd447}.plan-selector summary::-webkit-details-marker{display:none}.plan-selector summary:after{color:var(--color-text-muted);content:"▼";font-size:.85rem;transition:transform .15s}.plan-selector[open] summary:after{transform:rotate(180deg)}.plan-selector-menu{z-index:10;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,28rem);padding:.55rem;position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%);box-shadow:0 14px 35px #211f2c2e}.plan-selector-option{border-radius:var(--radius-md);background:var(--color-accent-soft);width:100%;color:var(--color-primary-dark);text-align:left;gap:.2rem;padding:.85rem 1rem;display:grid}.plan-selector-option span{font-weight:800}.plan-selector-option small{color:var(--color-text-muted);font-weight:600}.plan-overview{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center;margin-bottom:1rem;padding:1.25rem}.plan-overview-goal{color:var(--color-primary-dark);margin:0;font-size:clamp(1.3rem,5vw,1.7rem);font-weight:850}.plan-overview-week{color:var(--color-primary);margin:.25rem 0 0;font-size:1.05rem;font-weight:750}.plan-overview-meta{color:var(--color-text-muted);flex-wrap:wrap;justify-content:center;gap:.35rem 1.25rem;margin-top:.85rem;font-size:.88rem;font-weight:650;display:flex}.plan-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:.85rem;display:grid}.plan-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);min-width:0;padding:1rem .85rem}.plan-card h2{color:var(--color-text-muted);text-align:center;margin:0 0 .9rem;font-size:.9rem;font-weight:800}.plan-primary-stat{text-align:center;justify-items:center;gap:.08rem;display:grid}.plan-primary-stat strong{color:var(--color-primary-dark);font-size:clamp(1.35rem,6vw,1.85rem);line-height:1.05}.plan-primary-stat span{color:var(--color-text-muted);font-size:.78rem;font-weight:700}.plan-macro-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin-top:1rem;display:grid}.plan-macro-row>div{justify-items:center;gap:.12rem;min-width:0;display:grid}.plan-macro-row strong{color:var(--color-primary-dark);font-size:clamp(.92rem,3.7vw,1.08rem)}.plan-macro-row span{color:var(--color-text-muted);font-size:.68rem;font-weight:700}.plan-card-footnote{color:var(--color-text-muted);text-align:center;margin:.9rem 0 0;font-size:.78rem}.plan-activity-stats{align-content:center;gap:1rem;display:grid}.plan-card dl{margin:0}.plan-detail-row{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.5rem;padding-block:.42rem;display:grid}.plan-detail-row+.plan-detail-row{border-top:1px solid #ddd9e8a6}.plan-detail-row dt{min-width:0;color:var(--color-text-muted);font-size:.72rem;font-weight:700;line-height:1.25}.plan-detail-row dd{min-width:0;color:var(--color-primary-dark);text-align:right;overflow-wrap:anywhere;margin:0;font-size:.76rem;font-weight:800;line-height:1.25}.plan-settings-button{border-color:var(--color-primary);background:var(--color-surface);width:min(100%,18rem);color:var(--color-primary);margin:1.4rem auto 0;display:block}.plan-settings-button:hover:not(:disabled){background:var(--color-accent-soft)}.plan-read-only-note{color:var(--color-text-muted);text-align:center;margin:.65rem 0 0;font-size:.78rem}@media (width<=20rem){.plan-card-grid-secondary{grid-template-columns:1fr}}@media (width>=40rem){.plan-page{padding-bottom:8rem}.plan-card{padding:1.15rem 1rem}.plan-detail-row dt,.plan-detail-row dd{font-size:.82rem}}.dashboard-sign-out{min-height:auto;color:var(--color-text-muted);text-underline-offset:.2rem;background:0 0;border:0;margin:1.5rem auto 0;padding:.55rem .75rem;text-decoration:underline;display:block}.dashboard-sign-out:hover:not(:disabled){color:var(--color-primary-dark);background:0 0}.bottom-navigation{z-index:20;border-top:1px solid var(--color-border);width:min(100%,44rem);padding:.55rem max(.4rem, env(safe-area-inset-right)) calc(.55rem + env(safe-area-inset-bottom)) max(.4rem, env(safe-area-inset-left));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;grid-template-columns:repeat(5,minmax(0,1fr));margin-inline:auto;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #211f2c1a}.bottom-navigation button{border-radius:var(--radius-md);min-width:0;min-height:2.8rem;color:var(--color-text-muted);background:0 0;border:0;padding:.55rem .2rem;font-size:clamp(.7rem,2.7vw,.82rem);font-weight:700}.bottom-navigation button:hover:not(:disabled),.bottom-navigation button.is-active{background:var(--color-accent-soft);color:var(--color-primary)}.bottom-navigation button:disabled{color:var(--color-text-muted);opacity:.45}@media (prefers-reduced-motion:reduce){.daily-check-in-button.is-due{box-shadow:0 0 6px rgb(var(--color-interaction-rgb) / 70%), 0 0 14px rgb(var(--color-interaction-rgb) / 30%);animation:none}}@media (width>=40rem){.dashboard-page{padding-bottom:8rem}.weekly-score-list>div{min-height:8rem}.bottom-navigation{border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:.55rem;bottom:1rem}}.confirmation-overlay{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#211f2c94;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.confirmation-dialog{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);text-align:center;width:min(100%,24rem);padding:2rem 1.5rem;box-shadow:0 18px 55px #211f2c4d}.confirmation-checkmark{border:2px solid var(--color-interaction);width:3.5rem;height:3.5rem;color:var(--color-primary);box-shadow:0 0 6px rgb(var(--color-interaction-rgb) / 65%), 0 0 15px rgb(var(--color-interaction-rgb) / 25%);border-radius:50%;place-items:center;margin:0 auto 1rem;font-size:1.75rem;font-weight:800;display:grid}.confirmation-dialog h2{color:var(--color-primary-dark);margin:0}.confirmation-dialog p{color:var(--color-text-muted);margin:.9rem 0 1.5rem;line-height:1.5}.confirmation-dialog button{width:100%}.plan-progress-page{padding-bottom:8rem}.plan-progress-page>.plan-progress-card{margin-top:1.25rem}.plan-progress-empty{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center;margin-top:1.25rem;padding:1.5rem}.plan-progress-empty h1{color:var(--color-primary);margin:0}.plan-progress-empty p{color:var(--color-text-muted);margin-bottom:0}.weekly-completion-banner{border:1px solid var(--color-success);border-radius:var(--radius-lg);background:var(--color-success-soft,#eef8f3);box-shadow:var(--shadow-card);gap:.3rem;margin:1rem 0 1.25rem;padding:1rem 1.1rem;display:grid}.weekly-completion-banner strong{color:var(--color-success);font-size:1.05rem}.weekly-completion-banner span{color:var(--color-text-muted);line-height:1.45}.quick-save-action{justify-content:center;margin-top:1rem;padding-top:.15rem;display:flex}.quick-save-action button{width:min(100%,13rem);min-height:3rem}.plan-progress-overview{gap:1.25rem;margin-top:1.25rem;display:grid}.plan-progress-overview-header{text-align:center}.plan-progress-overview-header h1{color:var(--color-primary);margin:0}.plan-progress-overview-header p{color:var(--color-text-muted);margin:.35rem 0 0;font-size:.92rem;font-weight:700}.progress-overview-section{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-card);overflow:hidden}.progress-overview-section-heading{justify-content:space-between;align-items:flex-end;gap:1rem;padding:1rem 1rem .85rem;display:flex}.progress-overview-section-heading h3{color:var(--color-primary-dark);margin:0;font-size:1.05rem}.progress-overview-section-heading p{color:var(--color-text-muted);margin:.2rem 0 0;font-size:.82rem}.progress-table-scroll{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;width:100%;overflow-x:auto}.progress-table-scroll:focus-visible{outline:2px solid var(--color-interaction);outline-offset:-2px}.progress-data-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;color:var(--color-text);white-space:nowrap;font-size:.88rem}.progress-data-table th,.progress-data-table td{border-top:1px solid var(--color-border);text-align:center;vertical-align:middle;min-width:7.25rem;padding:.72rem .8rem}.progress-data-table thead th{z-index:2;background:var(--color-background);color:var(--color-text-muted);letter-spacing:.015em;text-transform:uppercase;border-top:0;font-size:.75rem;font-weight:800;position:sticky;top:0}.progress-data-table .is-sticky-column{z-index:3;background:var(--color-surface);width:5.2rem;min-width:5.2rem;box-shadow:1px 0 0 var(--color-border);text-align:left;position:sticky;left:0}.progress-data-table thead .is-sticky-column{z-index:4;background:var(--color-background)}.weekly-progress-table tbody tr.is-current-row td,.weekly-progress-table tbody tr.is-current-row th{background:var(--color-accent-soft)}.progress-week-link,.progress-week-label{min-height:2rem;color:var(--color-primary-dark);align-items:center;gap:.35rem;font-weight:800;display:inline-flex}.progress-week-link{min-width:3rem;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.progress-week-link:hover{color:var(--color-interaction)}.progress-week-link:focus-visible{outline:2px solid var(--color-interaction);outline-offset:3px;border-radius:.35rem}.progress-week-link span{font-size:1.15rem;line-height:1}.progress-table-status{background:var(--color-background);color:var(--color-text-muted);border-radius:999px;justify-content:center;align-items:center;padding:.26rem .55rem;font-size:.76rem;font-weight:800;display:inline-flex}.progress-table-status.is-completed{color:var(--color-success)}.progress-table-status.is-current,.progress-table-status.is-needs-review,.progress-table-status.is-weekly-overdue{background:var(--color-accent-soft);color:var(--color-primary-dark)}.progress-table-note{border-top:1px solid var(--color-border);color:var(--color-text-muted);margin:0;padding:.75rem 1rem .9rem;font-size:.78rem;line-height:1.4}@media (width<=600px){.plan-progress-overview{gap:1rem}.progress-overview-section-heading{padding:.9rem .85rem .75rem}.progress-data-table{font-size:.84rem}.progress-data-table th,.progress-data-table td{min-width:6.6rem;padding:.68rem .72rem}.progress-data-table .is-sticky-column{width:4.7rem;min-width:4.7rem}}.progress-transposed-table th,.progress-transposed-table td{min-width:6.8rem}.progress-transposed-table .is-sticky-metric-column{z-index:5;background:var(--color-surface);width:7.25rem;min-width:7.25rem;box-shadow:1px 0 0 var(--color-border);text-align:left;font-weight:800;position:sticky;left:0}.progress-transposed-table thead .is-sticky-metric-column{z-index:7;background:var(--color-background)}.progress-transposed-table .is-sticky-start-column{z-index:4;background:var(--color-surface);box-shadow:1px 0 0 var(--color-border), 7px 0 10px -10px #00000073;position:sticky;left:7.25rem}.progress-transposed-table thead .is-sticky-start-column{z-index:6;background:var(--color-background)}.weekly-progress-table .is-current-column,.weekly-progress-table thead .is-current-column{background:var(--color-accent-soft)}.progress-week-column-label,.progress-week-column-button{min-height:2.25rem;color:var(--color-primary-dark);justify-content:center;align-items:center;gap:.45rem;font-weight:900;display:inline-flex}.progress-week-column-button{border:1px solid var(--color-border);background:var(--color-surface);min-width:4.25rem;font:inherit;cursor:pointer;border-radius:999px;padding:.3rem .7rem}.progress-week-column-button:hover,.progress-week-column-button:focus-visible{border-color:var(--color-interaction);color:var(--color-interaction)}.progress-week-column-button:focus-visible{outline:2px solid var(--color-interaction);outline-offset:2px}.progress-week-arrow{font-size:1.3rem;line-height:.8}.progress-table-actions{border-top:1px solid var(--color-border);justify-content:center;padding:.7rem 1rem .8rem;display:flex}.progress-table-toggle{color:var(--color-interaction);font:inherit;cursor:pointer;background:0 0;border:0;padding:.35rem .6rem;font-size:.82rem;font-weight:800}.progress-table-toggle:hover{text-decoration:underline}@media (width<=600px){.progress-transposed-table .is-sticky-metric-column{width:6.4rem;min-width:6.4rem}.progress-transposed-table .is-sticky-start-column{left:6.4rem}}.dashboard-section-link.is-action-needed,.plan-progress-row.is-recommendation-waiting{border-color:var(--color-interaction);animation:2.5s ease-in-out infinite check-in-breathe}.plan-progress-status.is-recommendation-waiting{background:rgb(var(--color-interaction-rgb) / 14%);color:var(--color-primary-dark)}@media (prefers-reduced-motion:reduce){.dashboard-section-link.is-action-needed,.plan-progress-row.is-recommendation-waiting{box-shadow:0 0 6px rgb(var(--color-interaction-rgb) / 70%), 0 0 14px rgb(var(--color-interaction-rgb) / 30%);animation:none}}.weekly-history-section{padding-bottom:.9rem}.weekly-history-list{gap:.7rem;padding:0 1rem;display:grid}.weekly-history-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);width:100%;min-height:4.7rem;color:var(--color-text);text-align:left;grid-template-columns:minmax(0,1fr);align-items:center;gap:.65rem;padding:.85rem .95rem;display:grid}button.weekly-history-card{font:inherit;cursor:pointer;grid-template-columns:minmax(0,1fr) auto}button.weekly-history-card:hover:not(:disabled){background:var(--color-accent-soft);color:var(--color-text);border-color:#6c5bd461}.weekly-history-card.is-current{border-color:var(--color-interaction);box-shadow:0 0 5px rgb(var(--color-interaction-rgb) / 48%), 0 0 16px rgb(var(--color-interaction-rgb) / 18%);background:linear-gradient(135deg,#eeeafdd1,#f7f7fbeb)}.weekly-history-card.is-completed{border-color:#287a5b47}.weekly-history-card.is-recommendation-waiting{border-color:var(--color-interaction);animation:2.5s ease-in-out infinite check-in-breathe}.weekly-history-card-content{gap:.35rem;min-width:0;display:grid}.weekly-history-card-topline{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.weekly-history-card-topline>strong{color:var(--color-primary-dark);font-size:.98rem}.weekly-history-card-stats{color:var(--color-text-muted);flex-wrap:wrap;gap:.25rem .85rem;font-size:.86rem;display:flex}.weekly-history-card-stats strong{color:var(--color-primary);font-weight:850}.weekly-history-weight-change{color:var(--color-primary-dark);font-size:.84rem;font-weight:800}.weekly-history-weight-change.is-flat{color:var(--color-text-muted)}.weekly-history-actions{justify-content:center;padding:.9rem 1rem 0;display:flex}.weekly-history-toggle{margin:0;font-weight:800;text-decoration:none}@media (width<=600px){.weekly-history-list{padding:0 .75rem}.weekly-history-card{padding:.8rem .85rem}}@media (prefers-reduced-motion:reduce){.weekly-history-card.is-recommendation-waiting{box-shadow:0 0 6px rgb(var(--color-interaction-rgb) / 70%), 0 0 14px rgb(var(--color-interaction-rgb) / 30%);animation:none}}.plan-progress-weight-change{color:var(--color-primary);margin-top:.3rem;font-size:.84rem;font-weight:800;display:block}.progress-dashboard-section{min-width:0}.progress-weight-hero,.weight-progress-chart-card,.weight-progress-selected-entry{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card)}.progress-weight-hero{padding:1rem 1rem .85rem;overflow:hidden}.progress-weight-hero-button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:1rem;padding:0;display:flex}.progress-weight-hero-button:hover .progress-dashboard-chevron,.progress-weight-hero-button:focus-visible .progress-dashboard-chevron{color:var(--color-interaction)}.progress-weight-hero-button:focus-visible{outline:2px solid var(--color-interaction);outline-offset:4px;border-radius:.75rem}.progress-weight-hero-copy{gap:.32rem;display:grid}.progress-dashboard-kicker{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:900}.progress-weight-current{color:var(--color-primary-dark);font-size:clamp(2rem,6vw,2.7rem);font-weight:900;line-height:1}.progress-weight-current small,.weight-progress-summary-value small{font-size:.95rem;font-weight:800}.progress-weight-change{font-size:.9rem;font-weight:850}.progress-weight-change.is-down,.progress-weight-change.is-flat{color:var(--color-success)}.progress-weight-change.is-up{color:var(--color-interaction)}.progress-dashboard-chevron{color:var(--color-text-muted);font-size:1.65rem;font-weight:900;line-height:1;transition:color .14s}.progress-weight-chart-wrap{margin-top:.85rem}.progress-weight-chart{width:100%;height:auto;display:block;overflow:visible}.progress-weight-line{fill:none;stroke:var(--color-accent);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.progress-weight-point{fill:var(--color-accent);stroke:var(--color-surface);stroke-width:2.5px;cursor:pointer;transition:r .12s,fill .12s}.progress-weight-point.is-selected{fill:var(--color-interaction)}.progress-photo-marker-plus{fill:none;stroke:var(--color-accent);stroke-width:1.8px;stroke-linecap:round}.progress-weight-chart-axis,.progress-weight-hero-footer{color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:1rem;font-size:.75rem;font-weight:750;display:flex}.progress-weight-chart-axis{margin-top:-.35rem}.progress-weight-hero-footer{margin-top:.15rem}.progress-weight-chart-empty{min-height:8rem;color:var(--color-text-muted);place-items:center;font-size:.88rem;display:grid}.weight-progress-detail{gap:1rem;padding-bottom:1rem;display:grid}.weight-progress-detail-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.weight-progress-detail-header h1{color:var(--color-primary);margin:0}.weight-progress-detail-header p{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.88rem;font-weight:700}.weight-progress-calendar-button{border:1px solid var(--color-border);background:var(--color-surface);min-width:2.75rem;min-height:2.75rem;color:var(--color-primary-dark);font:inherit;cursor:pointer;border-radius:.85rem;justify-content:center;align-items:center;font-size:1.15rem;font-weight:900;display:inline-flex}.weight-progress-calendar-button:hover,.weight-progress-calendar-button:focus-visible{border-color:var(--color-interaction);color:var(--color-interaction)}.weight-progress-range-tabs{border:1px solid var(--color-border);background:var(--color-background);border-radius:1rem;grid-template-columns:repeat(7,minmax(2.7rem,1fr));gap:.28rem;padding:.28rem;display:grid;overflow-x:auto}.weight-progress-range-tabs button{min-height:2.45rem;color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.72rem;padding:.35rem .48rem;font-size:.76rem;font-weight:900}.weight-progress-range-tabs button.is-active{background:var(--color-surface);color:var(--color-primary-dark);box-shadow:var(--shadow-card)}.weight-progress-range-tabs button:focus-visible{outline:2px solid var(--color-interaction);outline-offset:1px}.weight-progress-chart-card{padding:1rem}.weight-progress-summary-row{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.weight-progress-summary-row>div:first-child{gap:.32rem;display:grid}.weight-progress-summary-value{color:var(--color-primary-dark);font-size:clamp(2rem,6vw,2.6rem);font-weight:900;line-height:1}.weight-progress-start-stat{color:var(--color-text-muted);text-align:right;gap:.1rem;font-size:.76rem;display:grid}.weight-progress-start-stat strong{color:var(--color-primary-dark);font-size:.92rem}.weight-progress-photo-note{color:var(--color-text-muted);margin:.2rem 0 0;font-size:.76rem;line-height:1.4}.weight-progress-selected-entry{justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.weight-progress-selected-entry>div{gap:.2rem;display:grid}.weight-progress-selected-entry strong{color:var(--color-primary-dark);font-size:1.35rem}.weight-progress-selected-entry>div>span:last-child{color:var(--color-text-muted);font-size:.82rem}.weight-progress-selected-photo{border:1px solid var(--color-accent);background:var(--color-accent-soft);width:2.4rem;height:2.4rem;color:var(--color-accent);border-radius:999px;justify-content:center;align-items:center;font-size:1.1rem;display:inline-flex}@media (width<=600px){.progress-weight-hero,.weight-progress-chart-card{padding:.9rem}.weight-progress-range-tabs{grid-template-columns:repeat(7,minmax(2.8rem,1fr))}.weight-progress-summary-row{align-items:flex-start}}.progress-weight-hero-button:hover,.progress-weight-hero-button:active,.progress-weight-hero-button:focus-visible{color:inherit!important;background:0 0!important}.progress-weight-hero:hover{border-color:var(--color-interaction)}.progress-weight-hero:hover .progress-dashboard-chevron,.progress-weight-hero:focus-within .progress-dashboard-chevron{color:var(--color-interaction)}.progress-weight-point.has-photo.is-selected{fill:var(--color-interaction);stroke:var(--color-primary-dark)}.weight-progress-range-tabs button:hover,.weight-progress-range-tabs button:active{background:var(--color-accent-soft)!important;color:var(--color-primary-dark)!important}.weight-progress-range-tabs button.is-active,.weight-progress-range-tabs button.is-active:hover,.weight-progress-range-tabs button.is-active:active,.weight-progress-range-tabs button.is-active:focus-visible{box-shadow:var(--shadow-card);background:var(--color-surface)!important;color:var(--color-primary-dark)!important}.weight-progress-calendar-button:hover,.weight-progress-calendar-button:active,.weight-progress-calendar-button:focus-visible{background:var(--color-surface)!important;color:var(--color-interaction)!important}.progress-weight-chart-axis.is-sparse{height:1.25rem;margin:0 .15rem;position:relative}.progress-weight-chart-axis.is-sparse span{white-space:nowrap;font-size:.72rem;position:absolute;top:0;transform:translate(-50%)}.progress-weight-chart-axis.is-sparse span.is-first{transform:none}.progress-weight-chart-axis.is-sparse span.is-last{transform:translate(-100%)}.progress-weight-point.has-photo{fill:var(--color-success);stroke:var(--color-surface);stroke-width:3px}.progress-weight-point.has-photo.is-selected{fill:var(--color-success);stroke:var(--color-interaction);stroke-width:4px}.progress-weight-chart-wrap,.progress-weight-chart,.progress-weight-chart *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.progress-weight-chart-wrap.is-detail{margin-top:.6rem}.progress-weight-chart-wrap.is-detail .progress-weight-chart{cursor:crosshair;touch-action:pan-y;outline:none}.progress-weight-chart-wrap.is-detail .progress-weight-chart:focus-visible{outline:2px solid rgb(var(--color-interaction-rgb) / 45%);outline-offset:2px;border-radius:.75rem}.progress-weight-hit-area{fill:#0000;pointer-events:all}.progress-weight-guide{stroke:#6d6a782e;stroke-width:1px}.progress-weight-line{stroke-width:3.2px}.progress-weight-point,.progress-weight-point.has-photo{fill:var(--color-surface);stroke:var(--color-accent);stroke-width:2.4px;cursor:pointer;transition:r .12s,fill .12s,stroke .12s,stroke-width .12s}.progress-weight-point.has-photo{stroke:var(--color-success);stroke-width:2.8px}.progress-weight-selection-line{stroke:#6d6a7894;stroke-width:1.6px;pointer-events:none}.progress-weight-date-tick{pointer-events:none}.progress-weight-date-tick line{stroke:#6d6a783d;stroke-width:1px}.progress-weight-date-tick text{fill:var(--color-text-muted);font-size:10px;font-weight:700}.progress-weight-selected-axis{pointer-events:none}.progress-weight-selected-axis line{stroke:var(--color-interaction);stroke-width:2px}.progress-weight-selected-axis text{fill:var(--color-interaction);paint-order:stroke;stroke:var(--color-surface);stroke-width:5px;stroke-linejoin:round;font-size:11px;font-weight:900}.progress-weight-tooltip{pointer-events:none;filter:drop-shadow(0 4px 10px #211f2c24)}.progress-weight-tooltip rect{fill:var(--color-surface);stroke:#6d6a7833;stroke-width:1px}.progress-weight-tooltip-label,.progress-weight-tooltip-date{fill:var(--color-text-muted);font-weight:800}.progress-weight-tooltip-label{letter-spacing:.08em;font-size:9px}.progress-weight-tooltip-value{fill:var(--color-primary-dark);font-size:19px;font-weight:900}.progress-weight-tooltip-unit{fill:var(--color-text-muted);font-size:10px;font-weight:800}.progress-weight-tooltip-date{font-size:9.5px}.progress-photo-marker{cursor:pointer;outline:none}.progress-photo-marker:focus-visible .progress-photo-marker-dot{stroke:var(--color-interaction);stroke-width:3px}.progress-photo-marker-line{stroke:#6d6a784d;stroke-width:1.2px}.progress-photo-marker-dot{fill:var(--color-surface);stroke:var(--color-success);stroke-width:2px}.progress-photo-marker-camera{fill:none;stroke:var(--color-success);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.progress-photo-marker-lens{fill:none;stroke:var(--color-success);stroke-width:1.5px;pointer-events:none}.weight-progress-summary-period{color:var(--color-text-muted);font-size:.78rem;font-weight:750}.weight-progress-selected-entry{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.7rem;display:grid}.weight-progress-selected-copy{min-width:0}.weight-progress-step-button{border:1px solid var(--color-border);background:var(--color-surface);width:2.35rem;height:2.35rem;color:var(--color-primary-dark);font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:1.7rem;font-weight:700;line-height:1;display:inline-flex}.weight-progress-step-button:hover:not(:disabled),.weight-progress-step-button:focus-visible:not(:disabled){border-color:var(--color-interaction);color:var(--color-interaction)}.weight-progress-step-button:disabled{opacity:.28;cursor:default}.weight-progress-selected-thumbnail{border:1px solid var(--color-border);object-fit:cover;border-radius:.75rem;width:3.4rem;height:3.4rem;box-shadow:0 3px 10px #211f2c1a}.weight-progress-selected-photo{border-color:var(--color-success);background:var(--color-success-soft);width:3.4rem;height:3.4rem;color:var(--color-success);font-size:1.2rem}@media (width<=600px){.weight-progress-selected-entry{grid-template-columns:auto minmax(0,1fr) auto auto;gap:.5rem}.weight-progress-step-button{width:2.1rem;height:2.1rem;font-size:1.5rem}.weight-progress-selected-thumbnail,.weight-progress-selected-photo{width:3rem;height:3rem}}.progress-weight-chart-wrap.is-detail{position:relative}.progress-weight-html-tooltip{z-index:2;background:var(--color-surface);pointer-events:none;border:1px solid #6d6a7833;border-radius:.7rem;gap:.08rem;min-width:8.8rem;padding:.4rem .58rem .45rem;display:grid;position:absolute;top:.2rem;transform:translate(-50%);box-shadow:0 4px 12px #211f2c24}.progress-weight-html-tooltip.is-start{transform:translate(0)}.progress-weight-html-tooltip.is-end{transform:translate(-100%)}.progress-weight-html-tooltip .progress-weight-tooltip-label,.progress-weight-html-tooltip .progress-weight-tooltip-date{color:var(--color-text-muted)}.progress-weight-html-tooltip .progress-weight-tooltip-label{letter-spacing:.08em;font-size:.66rem;font-weight:850;line-height:1.05}.progress-weight-html-tooltip .progress-weight-tooltip-value{color:var(--color-primary-dark);font-size:1.45rem;font-weight:900;line-height:1}.progress-weight-html-tooltip .progress-weight-tooltip-value small{color:var(--color-text-muted);font-size:.78rem;font-weight:800}.progress-weight-html-tooltip .progress-weight-tooltip-date{white-space:nowrap;margin-top:.1rem;font-size:.72rem;font-weight:750;line-height:1.15}.progress-weight-vertical-guide{stroke:#6d6a7829;stroke-width:1px;stroke-dasharray:2.5 3.5;pointer-events:none}.progress-weight-chart-wrap{--progress-chart-purple:#7048ff}.progress-weight-line{stroke:var(--progress-chart-purple)}.progress-weight-point,.progress-weight-point.has-photo{fill:var(--color-surface);stroke:var(--progress-chart-purple)}.progress-weight-point.has-photo{stroke:var(--color-success)}.progress-weight-point.is-selected,.progress-weight-point.has-photo.is-selected{fill:var(--progress-chart-purple);stroke:var(--color-surface);stroke-width:2.6px}.progress-weight-y-label{fill:var(--color-text-muted);pointer-events:none;font-size:10px;font-weight:700}.weight-progress-chart-stage{position:relative}.weight-progress-chart-stage .weight-progress-summary-row{z-index:3;pointer-events:none;position:absolute;top:.1rem;left:0;right:0}.weight-progress-chart-stage .progress-weight-chart-wrap.is-detail{margin-top:0}.progress-photo-marker-camera{fill:var(--color-surface);stroke:var(--color-success);stroke-width:1.45px}.progress-photo-marker-camera-top{fill:none;stroke:var(--color-success);stroke-width:1.45px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.progress-photo-marker-lens{fill:var(--color-surface);stroke:var(--color-success);stroke-width:1.45px}.progress-weight-html-tooltip{min-width:9.4rem;padding:.46rem .64rem .5rem}.progress-weight-html-tooltip .progress-weight-tooltip-value{font-size:1.62rem}.progress-weight-html-tooltip .progress-weight-tooltip-date{font-size:.75rem}.plan-progress-overview{margin-top:0}.weight-progress-detail-header{grid-template-columns:2.75rem minmax(0,1fr) 2.75rem;align-items:center;gap:.65rem;min-height:3rem;display:grid}.weight-progress-detail-header:after{content:"";width:2.75rem;height:2.75rem}.weight-progress-detail-header h1{text-align:center;margin:0;font-size:clamp(1.45rem,5vw,1.8rem)}.weight-progress-back-button{border:1px solid var(--color-border);background:var(--color-surface);width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;color:var(--color-primary-dark);box-shadow:none;border-radius:999px;justify-content:center;align-items:center;padding:0 0 .12rem;font-size:2rem;font-weight:650;line-height:1;display:inline-flex}.weight-progress-back-button:hover:not(:disabled),.weight-progress-back-button:active:not(:disabled),.weight-progress-back-button:focus-visible{border-color:var(--color-interaction);background:var(--color-surface);color:var(--color-interaction)}.progress-weight-chart-wrap.is-detail .progress-weight-chart,.progress-weight-chart-empty.is-detail{overscroll-behavior-x:contain;touch-action:pan-y}.progress-weight-chart-empty.is-detail{outline:none;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;min-height:17.5rem;display:flex}.progress-weight-chart-empty.is-detail small{color:var(--color-text-muted);font-size:.75rem;font-weight:700}.progress-weight-chart-empty.is-detail:focus-visible{outline:2px solid rgb(var(--color-interaction-rgb) / 45%);outline-offset:2px;border-radius:.75rem}.pwa-update-toast{z-index:300;right:1rem;bottom:calc(5.4rem + env(safe-area-inset-bottom));border:1px solid var(--color-primary);border-radius:var(--radius-xl);background:var(--color-surface);width:min(100% - 2rem,28rem);margin-inline:auto;padding:1rem;position:fixed;left:1rem;box-shadow:0 16px 42px #211f2c3d}.pwa-update-copy h2{color:var(--color-primary-dark);text-align:left;margin:0;font-size:1.05rem}.pwa-update-copy p{color:var(--color-text-muted);margin:.35rem 0 0;font-size:.88rem;line-height:1.4}.pwa-update-actions{grid-template-columns:1fr;gap:.65rem;margin-top:.9rem;display:grid}.pwa-update-actions button{width:100%;min-width:0;min-height:2.8rem;padding:.65rem .75rem}@media (width>=40rem){.pwa-update-toast{bottom:6.7rem}}
