:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:rgba(19,236,19,.1)}html{-webkit-text-size-adjust:100%;touch-action:manipulation}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;-webkit-overflow-scrolling:touch;background-color:var(--bg-light);color:var(--text-primary)}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--bg-surface);cursor:pointer;transition:border-color .25s;-webkit-tap-highlight-color:transparent}button:hover{border-color:#646cff}input,textarea,select{font-size:16px;-webkit-appearance:none;appearance:none}@media(prefers-color-scheme:light){:root{color-scheme:light}a:hover{color:#747bff}}.app-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-light)}.app-loading__spinner{width:2rem;height:2rem;border:3px solid var(--border-light);border-top-color:var(--color-primary);border-radius:9999px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.onboarding-container{width:100%;max-width:600px;margin:0 auto;padding:1rem}.app-layout{display:flex;height:100vh;width:100%;background:var(--bg-light);overflow:hidden}.app-main{flex:1;overflow:hidden;display:flex;flex-direction:column}@media(max-width:767px){.app-main{padding-top:3.5rem}}.basic-info{width:100%;max-width:1200px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;color:var(--text-primary)}.basic-info__main-card{width:100%;max-width:720px;background:var(--bg-page);border-radius:1rem;box-shadow:0 10px 30px #00000014;border:1px solid var(--border-light);padding:1.5rem;transition:all .3s}.basic-info__headline{text-align:center;margin-bottom:2.5rem}.basic-info__headline h1{font-size:1.875rem;margin-bottom:.75rem;font-weight:800}.basic-info__headline p{font-size:1.125rem}.basic-info__form-stack{display:flex;flex-direction:column;gap:1.5rem}.basic-info__label{display:block;font-size:1.125rem;font-weight:700;margin-bottom:.5rem}.basic-info__actions{padding-top:1.5rem}.basic-info__primary-btn{width:100%}.basic-info__back-btn{margin-top:1rem;text-align:center;color:var(--text-muted);font-size:.875rem}.basic-info__back-btn button{background:none;border:0;color:inherit;cursor:pointer}.onboarding-progress__area{padding:1.25rem 1.25rem 1rem;border-bottom:1px solid var(--border-light);margin-bottom:1.5rem}.onboarding-progress__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.onboarding-progress__step{font-size:.875rem;font-weight:700;text-transform:uppercase}.onboarding-progress__sub{font-size:.9375rem}.onboarding-progress__bar{height:1.5rem;background:var(--border-light);border-radius:9999px;overflow:hidden}.onboarding-progress__fill{height:100%;background:var(--color-primary);width:25%;border-radius:9999px;transition:width .25s ease}.gender__grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.gender__grid{grid-template-columns:repeat(3,1fr)}}.gender__option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;border:2px solid var(--border-light);border-radius:.75rem;cursor:pointer;transition:all .15s}.gender__option:hover{border-color:var(--border-hover)}.gender__option--active{border-color:var(--color-primary);background:var(--color-primary-bg-subtle)}.gender__icon{width:3rem;height:3rem;border-radius:9999px;background:var(--bg-surface-alt);display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.gender__label{font-size:1rem;font-weight:600}.gender__option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.gender__option input[type=radio]:checked+.gender__icon{color:var(--color-primary);background:var(--color-primary-bg-medium)}.gender__option input[type=radio]:checked~.gender__label{color:var(--text-primary)}.gender__check{position:absolute;top:.75rem;right:.75rem;opacity:0;color:var(--color-primary);transition:opacity .15s}.gender__option input[type=radio]:checked~.gender__check{opacity:1}.gender__option--active .gender__check{opacity:1}.age__block{display:flex;flex-direction:column;gap:.5rem}.age__wrapper{position:relative;max-width:160px}.age__input{width:100%;border-radius:.75rem;border:1px solid var(--border-light);background:var(--bg-surface);padding:1rem;font-size:1.875rem;font-weight:700;text-align:center;box-shadow:0 1px 2px #0000000d;color:var(--text-primary)}.age__suffix{position:absolute;right:1rem;top:50%;transform:translateY(-50%);pointer-events:none;font-size:1rem;font-weight:600}.name-input__grid{display:grid;grid-template-columns:1fr;gap:.75rem}.name-input__input{border-radius:.75rem;border:1px solid var(--border-light);background:var(--bg-page);padding:.75rem 1rem;font-size:1rem;box-shadow:0 1px 2px #0000000d;color:var(--text-primary)}@media(min-width:520px){.name-input__grid{grid-template-columns:1fr 1fr}}.onboarding-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.25rem;border-radius:.75rem;background:var(--color-primary);color:#000;font-weight:800;border:none;cursor:pointer;box-shadow:0 12px 30px #13ec132e;transition:transform .05s,filter .08s}.onboarding-button__label{display:inline-block}.onboarding-button__icon{display:inline-block;margin-left:.5rem}.onboarding-button:not(:disabled):hover{filter:brightness(.95)}.onboarding-button:not(:disabled):active{transform:scale(.98)}.onboarding-button:disabled{opacity:.5;cursor:not-allowed}.metrics{width:100%;max-width:840px;margin:0 auto;padding:1rem}.metrics__card{background:var(--bg-page);border-radius:1rem;padding:1.25rem;box-shadow:0 12px 30px #0000000f;border:1px solid var(--border-input-subtle)}.metrics__headline{text-align:center;margin-bottom:1.5rem}.metrics__headline h1{font-size:1.75rem;margin-bottom:.4rem;font-weight:800}.metrics__form{display:flex;flex-direction:column;gap:1.25rem}.metrics__grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.metrics__grid{grid-template-columns:1fr 1fr}}.metrics__actions{display:flex;gap:1rem;align-items:center;justify-content:center;margin-top:1rem}.metrics__primary{width:100%}.metrics__link{background:none;border:0;color:var(--text-muted);font-weight:700;cursor:pointer}.metrics__link:hover{color:var(--text-primary)}.height-input{padding:1rem;border-radius:.75rem;background:var(--bg-surface-green);border:1px solid var(--border-input-subtle)}.height-input__label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.height-input__label{font-weight:700}.height-input__unit-toggle{display:flex;gap:.5rem;background:#00000008;padding:.2rem;border-radius:.5rem}.height-input__unit{display:inline-flex;align-items:center;gap:.35rem;padding:.375rem .6rem;border-radius:.4rem;font-weight:700;color:var(--text-muted)}.height-input__unit input{display:none}.height-input__unit--active{background:var(--color-primary);color:var(--text-on-primary)}.height-input__input{width:100%;font-size:2rem;font-weight:800;text-align:center;background:transparent;border:0;outline:none;color:var(--text-primary)}.height-input__ft-group{display:flex;gap:.5rem;justify-content:center;align-items:center}.height-input__ft,.height-input__in{display:inline-flex;align-items:center;gap:.35rem}.height-input__ft-input,.height-input__in-input{width:4.25rem;font-size:2rem;font-weight:800;text-align:center;background:transparent;border:0;outline:none;color:var(--text-primary)}.height-input__ft-label,.height-input__in-label{font-weight:700;font-size:.95rem}.height-input__hint{margin-top:.5rem;text-align:center;font-size:.9rem}.weight-input{padding:1rem;border-radius:.75rem;background:var(--bg-surface-green);border:1px solid var(--border-input-subtle)}.weight-input__label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.weight-input__label{font-weight:700}.weight-input__unit-toggle{display:flex;gap:.5rem;background:#00000008;padding:.2rem;border-radius:.5rem}.weight-input__unit{display:inline-flex;align-items:center;gap:.35rem;padding:.375rem .6rem;border-radius:.4rem;font-weight:700;color:var(--text-muted)}.weight-input__unit input{display:none}.weight-input__unit--active{background:var(--color-primary);color:var(--text-on-primary)}.weight-input__input{width:100%;font-size:2rem;font-weight:800;text-align:center;background:transparent;border:0;outline:none;color:var(--text-primary)}.weight-input__field{display:flex;align-items:center;justify-content:center;gap:.5rem}.weight-input__suffix{font-weight:700;font-size:1rem}.weight-input__hint{margin-top:.5rem;text-align:center;font-size:.9rem}.activity-step{width:100%;max-width:840px;margin:0 auto;padding:1rem}.activity-step__card{background:var(--bg-page);border-radius:1rem;padding:1.5rem;box-shadow:0 10px 30px #00000014;border:1px solid var(--border-light)}.activity-step__headline{text-align:center;margin-bottom:1rem}.activity-step__headline h1{font-size:1.5rem;font-weight:800;margin:0 0 .5rem}.activity-step__headline p{margin:0;font-size:.95rem}.activity-step__tdee{margin:1rem 0 1.25rem}.activity-step__form{display:flex;flex-direction:column;gap:1rem}.activity-step__label{display:block;font-size:1.125rem;font-weight:700;margin-bottom:.5rem}.activity-step__actions{padding-top:.75rem}.activity-step__primary{width:100%}.activity-step__link{margin-top:.5rem;width:100%;padding:.9rem 1rem;background:transparent;color:var(--muted);border:none;cursor:pointer;font-weight:700}.activity-step__link:hover{color:var(--text-primary)}.tdee__label{display:block;font-weight:700;font-size:.75rem;text-transform:uppercase;margin-bottom:.5rem}.tdee__box{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-surface);border:1px solid var(--border-light);padding:1rem 1.25rem;border-radius:1rem;width:100%;max-width:18rem}.tdee__value{font-size:2.25rem;font-weight:900;color:var(--text-primary);line-height:1}.tdee__unit{font-size:1rem;font-weight:700;color:var(--color-primary);margin-top:.25rem}.tdee__bmr{margin-top:.5rem;font-size:.75rem;font-weight:600;padding-top:.5rem;border-top:1px solid var(--border-light)}.activity__grid{display:grid;gap:.75rem}.activity__option{position:relative;display:flex;align-items:flex-start;padding:.75rem;border:2px solid var(--border-light);border-radius:.75rem;cursor:pointer;transition:all .15s}.activity__option:hover{border-color:var(--border-hover)}.activity__option--active{border-color:var(--color-primary);background:var(--color-primary-bg-subtle)}.activity__icon{width:2.5rem;height:2.5rem;border-radius:9999px;background:var(--bg-surface-alt);display:flex;align-items:center;justify-content:center;margin-right:.75rem;flex-shrink:0}.activity__content{flex:1}.activity__content-row{margin-bottom:5px}.activity__label{font-weight:700}.activity__kcal{font-size:.85rem;font-weight:700}.activity__desc{font-size:.8rem;margin:0}.activity__option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.activity__check{position:absolute;top:.5rem;right:.5rem;opacity:0;color:var(--color-primary);transition:opacity .15s}.activity__option--active .activity__check{opacity:1}.set-goal{width:100%;max-width:840px;margin:0 auto;padding:1rem}.set-goal__card{background:var(--bg-page);border-radius:1rem;padding:1.5rem;box-shadow:0 10px 30px #00000014;border:1px solid var(--border-light)}.set-goal__headline{text-align:center;margin-bottom:1rem}.set-goal__headline h1{font-size:1.5rem;font-weight:800;margin:0 0 .5rem}.set-goal__headline p{margin:0;font-size:.95rem}.set-goal__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.set-goal__label{display:block;font-size:1.125rem;font-weight:700;margin:1rem 0 .5rem}.set-goal__actions{padding-top:1rem}.set-goal__primary{width:100%}.set-goal__link{margin-top:.5rem;width:100%;padding:.9rem 1rem;background:transparent;color:var(--text-muted);border:none;cursor:pointer;font-weight:700}.set-goal__link:hover{color:var(--text-primary)}.goal-type__option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;border:2px solid var(--border-light);border-radius:.75rem;cursor:pointer;transition:all .15s ease}.goal-type__option:hover{border-color:var(--border-hover)}.goal-type__option--active{border-color:var(--color-primary);background:var(--color-primary-bg-subtle)}.goal-type__option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.goal-type__icon{width:3rem;height:3rem;border-radius:9999px;background:var(--bg-surface-alt);display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.goal-type__icon svg{width:1.375rem;height:1.375rem}.goal-type__option input[type=radio]:checked+.goal-type__icon{color:var(--color-primary);background:var(--color-primary-bg-medium)}.goal-type__label-top{font-size:1rem;font-weight:600}.goal-type__label-bottom{font-size:.75rem;text-transform:uppercase;margin-top:.125rem}.goal-type__option input[type=radio]:checked~.goal-type__label-top{color:var(--text-primary)}.goal-type__check{position:absolute;top:.75rem;right:.75rem;opacity:0;color:var(--color-primary);transition:opacity .15s}.goal-type__check svg{width:1.125rem;height:1.125rem}.goal-type__option--active .goal-type__check{opacity:1}.pace-selector__display{display:flex;justify-content:flex-end;margin-bottom:.5rem}.pace-selector__amount{font-weight:700;color:var(--color-primary)}.pace-selector__range{width:100%;appearance:none;height:8px;border-radius:4px;background:var(--border-light);cursor:pointer}.pace-selector__range::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:3px solid var(--bg-page);box-shadow:0 2px 8px #00000026;transition:transform .1s ease}.pace-selector__range::-webkit-slider-thumb:hover{transform:scale(1.1)}.pace-selector__range::-webkit-slider-thumb:active{transform:scale(.95)}.pace-selector__range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:3px solid var(--bg-page);box-shadow:0 2px 8px #00000026;transition:transform .1s ease}.pace-selector__range::-moz-range-thumb:hover{transform:scale(1.1)}.pace-selector__range::-moz-range-thumb:active{transform:scale(.95)}.pace-selector__range::-webkit-slider-runnable-track{height:8px;border-radius:4px;background:var(--border-light)}.pace-selector__range::-moz-range-track{height:8px;border-radius:4px;background:var(--border-light)}.pace-selector__range:focus{outline:none}.pace-selector__ticks{display:flex;justify-content:space-between;font-size:.85rem;margin-top:.5rem}.pace-selector__options{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:.5rem}.pace-selector__option{padding:.5rem;border:2px solid var(--border-light);border-radius:.5rem;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .1s ease;font-size:.9375rem}.pace-selector__option.is-selected{border-color:var(--color-primary);background:var(--color-primary-bg-subtle)}.pace-selector__option:hover{border-color:var(--border-hover)}.pace-selector__option-value{font-weight:700;color:var(--color-primary)}.pace-selector__option-note{font-size:.75rem;margin-top:.25rem;color:var(--text-primary);text-transform:none}.target-summary__box{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem;border-radius:1rem;border:1px solid var(--card-border);background:var(--bg-surface);margin-bottom:1rem}.target-summary__label{font-weight:700;font-size:.875rem;text-transform:uppercase;letter-spacing:.025em}.target-summary__value{display:flex;align-items:baseline;gap:.5rem;margin:.25rem 0}.target-summary__kcal{font-size:2.5rem;font-weight:900;color:var(--text-primary)}.target-summary__unit{color:var(--color-primary);font-weight:700;font-size:1.125rem}.target-summary__meta{font-size:.875rem}.dashboard{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg-light)}.dashboard__main{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;background:var(--bg-light)}.dashboard__content{max-width:75rem;width:100%;margin:0 auto;padding:1rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(2rem,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:1.5rem}@media(min-width:768px){.dashboard__content{padding:1.5rem;gap:1.5rem}}@media(min-width:768px)and (max-height:900px){.dashboard__content{padding:1.25rem;gap:1.25rem}}@media(min-width:1200px){.dashboard__content{padding:2rem;gap:2rem}}.dashboard__header{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.25rem 1rem;border-bottom:1px solid var(--border-light);background:var(--bg-page);position:sticky;top:0;z-index:10}@media(min-width:768px){.dashboard__header{padding:1.5rem 2.5rem}}.dashboard__header-text{flex:1;min-width:0}.dashboard__page-title{font-size:1.25rem;font-weight:700;color:var(--card-dark);margin:0 0 .125rem}@media(min-width:768px){.dashboard__page-title{font-size:1.375rem}}.dashboard__page-subtitle{font-size:.8125rem;color:var(--text-muted);margin:0}.dashboard__header-actions{display:flex;gap:.5rem;flex-shrink:0}@media(min-width:640px){.dashboard__header-actions{gap:.75rem}}.dashboard__btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .15s ease;border:none;min-height:44px;flex:0 0 auto}@media(min-width:640px){.dashboard__btn{padding:.625rem 1.25rem}}.dashboard__btn span{display:none}@media(min-width:420px){.dashboard__btn span{display:inline}}.dashboard__btn svg{font-size:1.25rem;display:block}.dashboard__btn--secondary{background:var(--bg-page);border:1px solid var(--border-light);color:var(--text-body)}.dashboard__btn--secondary:active{background:var(--bg-light)}@media(min-width:768px){.dashboard__btn--secondary:hover{background:var(--bg-light)}}.dashboard__btn--primary{background:var(--color-primary);color:#121;box-shadow:0 4px 12px #13ec1333}.dashboard__btn--primary:active{background:var(--color-primary-active);transform:scale(.98)}@media(min-width:768px){.dashboard__btn--primary:hover{background:var(--color-primary-hover)}}.dashboard__btn--active{background:var(--bg-light)!important;border-color:var(--color-primary-border)!important;color:var(--color-primary)!important}.dashboard__calendar-anchor{position:relative;flex-shrink:0}.dashboard__grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:1024px){.dashboard__grid{grid-template-columns:1.5fr 1fr;gap:1.25rem}}@media(min-width:1400px){.dashboard__grid{grid-template-columns:2fr 1fr;gap:1.5rem}}.dashboard__left-col{display:flex;flex-direction:column;gap:1.5rem;min-width:0}.dashboard__macro-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:640px){.dashboard__macro-grid{grid-template-columns:repeat(3,1fr)}}.dashboard__right-col{display:flex;flex-direction:column;min-width:0;max-height:none}@media(min-width:1024px){.dashboard__right-col{max-height:calc(100vh - 10rem);overflow-y:auto;scroll-behavior:smooth}.dashboard__right-col::-webkit-scrollbar{width:6px}.dashboard__right-col::-webkit-scrollbar-track{background:transparent}.dashboard__right-col::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.dashboard__right-col::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}}@media(min-width:1024px)and (max-height:900px){.dashboard__right-col{max-height:calc(100vh - 8rem)}}@media(min-width:1400px){.dashboard__right-col{max-height:calc(100vh - 12rem)}}.calories-card{background:var(--card-bg);border-radius:1rem;padding:1.25rem;box-shadow:0 1px 2px #0000000d;border:1px solid var(--card-border)}@media(min-width:640px){.calories-card{padding:1.5rem}}@media(min-width:1200px){.calories-card{padding:1.5rem 2rem}}.calories-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}@media(min-width:640px){.calories-card__header{margin-bottom:1.5rem}}@media(min-width:768px)and (max-height:900px){.calories-card__header{margin-bottom:1rem}}.calories-card__title{font-size:1.125rem;font-weight:700;color:var(--card-dark);margin:0}@media(min-width:640px){.calories-card__title{font-size:1.25rem}}.calories-card__add-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem .875rem;background:var(--color-primary);color:#fff;border:none;border-radius:.5rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s;min-height:44px}@media(min-width:640px){.calories-card__add-btn{padding:.5rem 1rem;font-size:.875rem}}.calories-card__add-btn:active{background:var(--color-primary-hover);transform:scale(.98)}@media(min-width:768px){.calories-card__add-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.calories-card__add-btn:active{transform:translateY(0)}}.calories-card__add-btn svg{font-size:1.125rem}@media(min-width:640px){.calories-card__add-btn svg{font-size:1.25rem}}.calories-card__content{display:flex;flex-direction:column;gap:1.5rem;align-items:center}@media(min-width:640px){.calories-card__content{gap:2rem}}@media(min-width:768px){.calories-card__content{flex-direction:row;gap:2rem}}@media(min-width:1200px){.calories-card__content{gap:2.5rem}}@media(min-width:1400px){.calories-card__content{gap:3rem}}.calories-card__chart{position:relative;width:11rem;height:11rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}@media(min-width:640px){.calories-card__chart{width:12rem;height:12rem}}@media(min-width:1200px){.calories-card__chart{width:13rem;height:13rem}}@media(min-width:1400px){.calories-card__chart{width:14rem;height:14rem}}.calories-card__svg{width:100%;height:100%;transform:rotate(-90deg)}.calories-card__circle-bg{color:var(--border-light)}.calories-card__circle-progress{color:var(--color-primary);filter:drop-shadow(0 0 8px var(--color-primary-shadow-sm));transition:stroke-dashoffset .5s ease,color .3s ease,filter .3s ease}.calories-card__circle-progress--over{color:var(--color-danger);filter:drop-shadow(0 0 8px rgba(239,68,68,.4))}.calories-card__center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.calories-card__value{font-size:2rem;font-weight:800;color:var(--card-dark);line-height:1;letter-spacing:-.05em}@media(min-width:640px){.calories-card__value{font-size:2.5rem}}@media(min-width:1024px){.calories-card__value{font-size:3rem}}.calories-card__label{font-size:.8125rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}@media(min-width:640px){.calories-card__label{font-size:.875rem}}.calories-card__stats{flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;width:100%}@media(min-width:640px){.calories-card__stats{gap:1rem}}.calories-card__stat{padding:.875rem;border-radius:.75rem;background:var(--bg-light)}@media(min-width:640px){.calories-card__stat{padding:1rem}}.calories-card__stat-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem}@media(min-width:640px){.calories-card__stat-header{margin-bottom:.5rem}}.calories-card__stat-dot{width:.5rem;height:.5rem;border-radius:50%}.calories-card__stat-dot--gray{background:var(--text-placeholder)}.calories-card__stat-dot--primary{background:var(--color-primary)}.calories-card__stat-dot--orange{background:var(--color-fat)}.calories-card__stat-dot--blue{background:var(--color-protein)}.calories-card__stat-label{font-size:.8125rem;font-weight:500;color:var(--text-muted)}@media(min-width:640px){.calories-card__stat-label{font-size:.875rem}}.calories-card__stat-value{font-size:1.25rem;font-weight:700;color:var(--card-dark);margin:0 0 .125rem;line-height:1}@media(min-width:640px){.calories-card__stat-value{font-size:1.5rem}}.calories-card__stat-unit{font-size:.75rem;color:var(--text-placeholder);margin:0}.calories-card__exercise-view-btn{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 .625rem;font-size:.75rem;font-weight:600;color:var(--color-primary);background:none;border:1px solid var(--color-primary);border-radius:.375rem;cursor:pointer;transition:background .15s ease,color .15s ease}.calories-card__exercise-view-btn:active{background:var(--color-primary);color:#fff}@media(min-width:768px){.calories-card__exercise-view-btn:hover{background:var(--color-primary);color:#fff}}.calories-card__water-actions{display:flex;gap:.5rem;margin-top:.5rem;align-items:center;width:100%;justify-content:flex-end}.calories-card__water-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;color:var(--color-protein);border-radius:.375rem;cursor:pointer;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.calories-card__water-btn:active{transform:scale(.97)}@media(min-width:768px){.calories-card__water-btn:hover{background:#dbeafe}}.calories-card__water-btn--remove{color:var(--color-danger)}@media(min-width:768px){.calories-card__water-btn--remove:hover{background:#fee2e2}}.macro-card{background:var(--card-bg);padding:1.25rem;border-radius:1rem;box-shadow:0 1px 2px #0000000d;border:1px solid var(--card-border);display:flex;flex-direction:column;justify-content:space-between;gap:1rem}.macro-card__header{display:flex;justify-content:space-between;align-items:flex-start}.macro-card__info{flex:1}.macro-card__title{font-size:1.125rem;font-weight:700;color:var(--card-dark);margin:0 0 .25rem}.macro-card__amount{font-size:.75rem;color:var(--text-muted);margin:0}.macro-card__icon{padding:.5rem;border-radius:.5rem;font-size:1.5rem;display:flex;align-items:center;justify-content:center}.macro-card__icon.macro-card--blue{background:var(--color-protein-bg);color:var(--color-protein)}.macro-card__icon.macro-card--primary{background:var(--color-carbs-bg);color:var(--color-carbs)}.macro-card__icon.macro-card--orange{background:var(--color-fat-bg);color:var(--color-fat)}.macro-card__progress-bar{width:100%;background:var(--bg-light);border-radius:9999px;height:.625rem;overflow:hidden}.macro-card__progress-fill{height:100%;border-radius:9999px;transition:width .5s ease}.macro-card__progress-fill--protein{background:var(--color-protein)}.macro-card__progress-fill--carbs{background:var(--color-carbs)}.macro-card__progress-fill--fat{background:var(--color-fat)}.macro-card__percentage{text-align:right;font-size:.75rem;font-weight:600;margin:0}.macro-card__percentage--protein{color:var(--color-protein)}.macro-card__percentage--carbs{color:var(--color-carbs)}.macro-card__percentage--fat{color:var(--color-fat)}.meals-log{background:var(--bg-page);border-radius:1rem;padding:1.25rem;box-shadow:0 1px 2px #0000000d;border:1px solid var(--card-border);display:flex;flex-direction:column;height:100%;min-height:0}@media(min-width:640px){.meals-log{padding:1.5rem}}.meals-log__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}@media(min-width:640px){.meals-log__header{margin-bottom:1.5rem}}@media(min-width:768px)and (max-height:900px){.meals-log__header{margin-bottom:1rem}}.meals-log__title{font-size:1.125rem;font-weight:700;color:var(--card-dark);margin:0}@media(min-width:640px){.meals-log__title{font-size:1.25rem}}.meals-log__list{display:flex;flex-direction:column;gap:1.25rem;flex:1;min-height:0;overflow-y:auto;scroll-behavior:smooth}@media(min-width:640px){.meals-log__list{gap:1.5rem}}@media(min-width:1024px){.meals-log__list{gap:1.25rem;padding-right:.25rem}.meals-log__list::-webkit-scrollbar{width:6px}.meals-log__list::-webkit-scrollbar-track{background:transparent}.meals-log__list::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.meals-log__list::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}}.meals-log__meal{position:relative}.meals-log__meal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.625rem}@media(min-width:640px){.meals-log__meal-header{margin-bottom:.75rem}}.meals-log__meal-title{font-size:.875rem;font-weight:700;color:var(--text-body);text-transform:uppercase;letter-spacing:.05em;margin:0}.meals-log__meal-calories{font-size:.75rem;font-weight:600;color:var(--text-muted)}.meals-log__meal-list{display:flex;flex-direction:column;gap:.5rem}.meals-log__meal-card{padding:.875rem;border-radius:.75rem;background:var(--bg-light);display:flex;gap:.75rem;align-items:center;transition:background .15s ease;cursor:pointer;min-height:54px}.meals-log__meal-card:active{background:var(--border-light)}@media(min-width:768px){.meals-log__meal-card{padding:.75rem}.meals-log__meal-card:hover{background:var(--border-light)}}.meals-log__meal-info{flex:1;min-width:0}.meals-log__meal-name{font-size:.875rem;font-weight:700;color:var(--card-dark);margin:0 0 .125rem;overflow:hidden;text-overflow:ellipsis}.meals-log__meal-desc{font-size:.75rem;color:var(--text-muted);margin:0;overflow:hidden;text-overflow:ellipsis}.meals-log__meal-actions{position:relative;flex-shrink:0}.meals-log__meal-menu{background:none;border:none;color:var(--text-placeholder);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .15s ease;flex-shrink:0;min-width:44px;min-height:44px;margin:-.5rem;border-radius:.5rem}.meals-log__meal-menu svg{font-size:1.25rem}.meals-log__meal-menu:active{color:var(--card-dark);background:var(--border-light)}@media(min-width:768px){.meals-log__meal-menu:hover{color:var(--card-dark);background:var(--border-light)}}.meals-log__dropdown{position:absolute;top:100%;right:0;margin-top:.25rem;background:var(--bg-page);border:1px solid var(--border-light);border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;min-width:160px;z-index:10;overflow:hidden;animation:dropdown-appear .15s ease}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.meals-log__dropdown-item{width:100%;padding:.75rem 1rem;background:none;border:none;display:flex;align-items:center;gap:.75rem;font-size:.875rem;font-weight:500;color:var(--card-dark);cursor:pointer;transition:background .15s ease;text-align:left}.meals-log__dropdown-item svg{font-size:1.125rem;flex-shrink:0}.meals-log__dropdown-item:active{background:var(--bg-light)}@media(min-width:768px){.meals-log__dropdown-item:hover{background:var(--bg-light)}}.meals-log__dropdown-item--danger{color:var(--color-danger)}.meals-log__dropdown-item--danger:active{background:var(--color-danger-bg)}@media(min-width:768px){.meals-log__dropdown-item--danger:hover{background:var(--color-danger-bg)}}.meals-log__meal-empty{width:100%;padding:1rem;border-radius:.75rem;border:2px dashed var(--scrollbar-thumb);background:none;display:flex;flex-direction:column;gap:.25rem;align-items:center;justify-content:center;color:var(--text-placeholder);cursor:pointer;transition:all .15s ease;min-height:54px}.meals-log__meal-empty:active{border-color:var(--color-primary);color:var(--color-primary);background:#13ec1305}@media(min-width:640px){.meals-log__meal-empty{padding:.75rem;height:4.625rem}}@media(min-width:768px){.meals-log__meal-empty:hover{border-color:var(--color-primary);color:var(--color-primary);background:#13ec1305}}.meals-log__meal-empty-icon{font-size:1.5rem}.meals-log__meal-empty-text{font-size:.75rem;font-weight:600}.macro-toggle{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:.375rem .5rem;border-radius:.5rem;transition:background .15s ease}.macro-toggle:active{background:var(--bg-light)}@media(min-width:768px){.macro-toggle:hover{background:var(--bg-light)}}.macro-toggle__label{font-size:.75rem;font-weight:600;color:var(--text-muted)}@media(max-width:639px){.macro-toggle__label{display:none}}.macro-toggle__switch{position:relative;width:2.5rem;height:1.25rem;background:var(--scrollbar-thumb);border-radius:.625rem;transition:background .2s ease}.macro-toggle__switch--active{background:var(--color-primary)}.macro-toggle__slider{position:absolute;top:.125rem;left:.125rem;width:1rem;height:1rem;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #0003}.macro-toggle__switch--active .macro-toggle__slider{transform:translate(1.25rem)}.add-food-modal{position:fixed;inset:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease ease-out}.add-food-modal__content{background:var(--bg-page);border-radius:.75rem;width:100%;max-width:500px;max-height:calc(90vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;animation:slideUp .3s ease-out}@media(min-width:640px){.add-food-modal__content{max-height:90vh}}.add-food-modal__form{padding:1.25rem;padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}@media(min-width:640px){.add-food-modal__form{padding:1.5rem}}.add-food-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}@media(min-width:640px){.add-food-modal__header{margin-bottom:1.5rem}}.add-food-modal__title{font-size:1.125rem;font-weight:600;color:var(--card-dark);margin:0}@media(min-width:640px){.add-food-modal__title{font-size:1.25rem}}.add-food-modal__close{background:none;border:none;color:var(--text-placeholder);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s;min-width:44px;min-height:44px;margin:-.5rem;border-radius:.5rem}.add-food-modal__close:active{background:var(--bg-light);color:var(--card-dark)}@media(min-width:768px){.add-food-modal__close:hover{color:var(--card-dark)}}.add-food-modal__close svg{font-size:1.25rem}.add-food-modal__fields{display:flex;flex-direction:column;gap:1.125rem;margin-bottom:1.25rem}@media(min-width:640px){.add-food-modal__fields{gap:1.25rem;margin-bottom:1.5rem}}.add-food-modal__form-group{display:flex;flex-direction:column;gap:.375rem}.add-food-modal__macro-divider{display:flex;align-items:center;margin:.5rem 0;color:var(--text-muted);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.add-food-modal__macro-divider:before,.add-food-modal__macro-divider:after{content:"";flex:1;height:1px;background:var(--border-light)}.add-food-modal__macro-divider span{padding:0 .75rem}.add-food-modal__macro-row{display:flex;gap:.75rem;width:100%}.add-food-modal__macro-row .add-food-modal__form-group{flex:1;min-width:0}.add-food-modal__macro-row .add-food-modal__input{width:100%;box-sizing:border-box}.add-food-modal__label{font-size:.875rem;font-weight:500;color:var(--text-muted)}.add-food-modal__meal-types{display:grid;grid-template-columns:repeat(2,1fr);gap:.625rem}@media(min-width:420px){.add-food-modal__meal-types{grid-template-columns:repeat(4,1fr);gap:.5rem}}.add-food-modal__meal-btn{padding:.75rem .5rem;border:1px solid var(--border-light);border-radius:.5rem;background:var(--bg-page);color:var(--text-muted);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:capitalize;min-height:44px}@media(min-width:420px){.add-food-modal__meal-btn{padding:.5rem;font-size:.75rem}}.add-food-modal__meal-btn:active{transform:scale(.98)}@media(min-width:768px){.add-food-modal__meal-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}}.add-food-modal__meal-btn--active{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-inverse)}@media(min-width:768px){.add-food-modal__meal-btn--active:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}}.add-food-modal__input{padding:.75rem .875rem;border:1px solid var(--border-light);border-radius:.5rem;font-size:1rem;color:var(--card-dark);background:var(--bg-page);transition:border-color .2s ease;min-height:44px}@media(min-width:640px){.add-food-modal__input{font-size:.875rem;padding:.625rem .875rem}}.add-food-modal__input::placeholder{color:var(--text-placeholder)}.add-food-modal__input:focus{outline:none;border-color:var(--color-primary)}.add-food-modal__actions{display:flex;gap:.75rem;justify-content:stretch}@media(min-width:640px){.add-food-modal__actions{justify-content:flex-end}}.add-food-modal__btn{padding:.75rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;flex:1;min-height:44px}@media(min-width:640px){.add-food-modal__btn{padding:.625rem 1.25rem;font-size:.875rem;flex:0}}.add-food-modal__btn--secondary{background:var(--bg-page);color:var(--text-muted);border:1px solid var(--border-light)}.add-food-modal__btn--secondary:active{background:var(--bg-surface)}@media(min-width:768px){.add-food-modal__btn--secondary:hover{background:var(--bg-surface)}}.add-food-modal__btn--primary{background:var(--color-primary);color:var(--text-inverse)}.add-food-modal__btn--primary:active{background:var(--color-primary-hover)}@media(min-width:768px){.add-food-modal__btn--primary:hover{background:var(--color-primary-hover)}}.add-food-modal__btn:active{transform:translateY(1px)}.add-food-modal__mode-toggle{display:flex;background:var(--bg-surface);border-radius:.625rem;padding:.375rem;gap:.375rem}.add-food-modal__mode-btn{flex:1;padding:.625rem;border:none;background:transparent;border-radius:.5rem;font-size:.8125rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.add-food-modal__mode-btn.active{background:var(--bg-page);color:var(--color-primary);box-shadow:0 2px 4px #0000000d}.add-food-modal__ai-section{display:flex;flex-direction:column;gap:1rem;background:var(--bg-surface);padding:1.25rem;border-radius:.625rem;border:1px solid var(--border-light)}.add-food-modal__description-textarea{field-sizing:content;resize:none;min-height:unset;font-family:inherit;line-height:1.5}.add-food-modal__textarea{field-sizing:content;resize:none;min-height:100px;font-family:inherit}.add-food-modal__textarea:disabled{opacity:.7;cursor:not-allowed}.add-food-modal__ai-submit-btn{width:100%;padding:.875rem;background:var(--color-primary);color:var(--text-on-primary);border:none;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease}@media(min-width:768px){.add-food-modal__ai-submit-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}}.add-food-modal__ai-submit-btn:active:not(:disabled){background:var(--color-primary-active);transform:scale(.98)}.add-food-modal__ai-submit-btn:disabled{opacity:.5;cursor:not-allowed}.add-food-modal__ai-error{color:var(--color-danger);font-size:.8125rem;margin:.25rem 0 0}.add-food-modal__ai-hint{text-align:center;color:var(--text-placeholder);font-size:.8rem;margin:0}.add-food-modal__ai-usage{font-size:.8125rem;color:var(--text-muted);margin:0;text-align:right}.add-food-modal__ai-usage--warning{color:var(--color-warning);font-weight:600}.add-food-modal__upgrade-prompt{display:flex;flex-direction:column;align-items:center;gap:.875rem;padding:.5rem 0}.add-food-modal__upgrade-text{text-align:center;font-size:.8125rem;color:var(--text-muted);margin:0;line-height:1.5}.add-food-modal__upgrade-btn{width:100%;padding:.875rem;background:var(--color-primary);color:var(--text-on-primary);border:none;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease}@media(min-width:768px){.add-food-modal__upgrade-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px)}}.add-food-modal__upgrade-btn:active{background:var(--color-primary-active);transform:scale(.98)}.add-food-modal__ai-confidence{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border-radius:.5rem;font-size:.8125rem;border:1px solid}.add-food-modal__ai-confidence--high{background:color-mix(in srgb,var(--color-success) 10%,transparent);border-color:color-mix(in srgb,var(--color-success) 30%,transparent);color:var(--color-success)}.add-food-modal__ai-confidence--medium{background:color-mix(in srgb,var(--color-warning) 10%,transparent);border-color:color-mix(in srgb,var(--color-warning) 30%,transparent);color:var(--color-warning)}.add-food-modal__ai-confidence--low{background:color-mix(in srgb,var(--color-danger) 10%,transparent);border-color:color-mix(in srgb,var(--color-danger) 30%,transparent);color:var(--color-danger)}.add-food-modal__ai-confidence-dot{flex-shrink:0;width:.5rem;height:.5rem;border-radius:50%;background:currentColor}.add-food-modal__ai-disclaimer{text-align:center;color:var(--text-placeholder);font-size:.78rem;margin-bottom:15px;padding:0 .25rem}.log-exercise-modal{position:fixed;inset:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease ease-out}.log-exercise-modal__content{background:var(--bg-page);border-radius:.75rem;width:100%;max-width:500px;animation:slideUp .3s ease-out}.log-exercise-modal__form{padding:1.25rem;padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}@media(min-width:640px){.log-exercise-modal__form{padding:1.5rem}}.log-exercise-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}@media(min-width:640px){.log-exercise-modal__header{margin-bottom:1.5rem}}.log-exercise-modal__title{font-size:1.125rem;font-weight:600;color:var(--card-dark);margin:0}@media(min-width:640px){.log-exercise-modal__title{font-size:1.25rem}}.log-exercise-modal__close{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.375rem;transition:color .1s ease,background .1s ease;font-size:1.25rem}.log-exercise-modal__close:hover{color:var(--card-dark);background:var(--bg-input)}.log-exercise-modal__fields{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.25rem}@media(min-width:640px){.log-exercise-modal__fields{margin-bottom:1.5rem}}.log-exercise-modal__form-group{display:flex;flex-direction:column;gap:.375rem}.log-exercise-modal__label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.log-exercise-modal__input{width:100%;padding:.625rem .75rem;border:1px solid var(--border-input);border-radius:.5rem;background:var(--bg-input);color:var(--card-dark);font-size:.9375rem;transition:border-color .1s ease,box-shadow .1s ease;box-sizing:border-box}.log-exercise-modal__input::placeholder{color:var(--text-placeholder)}.log-exercise-modal__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.log-exercise-modal__hint{font-size:.75rem;color:var(--text-muted);margin:0;line-height:1.5}.log-exercise-modal__actions{display:flex;gap:.75rem;justify-content:flex-end}.log-exercise-modal__btn{padding:.625rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;border:none;transition:background .1s ease,opacity .1s ease}.log-exercise-modal__btn--secondary{background:var(--bg-input);color:var(--text-secondary)}.log-exercise-modal__btn--secondary:hover{background:var(--border-input)}.log-exercise-modal__btn--primary{background:var(--color-primary);color:#fff}.log-exercise-modal__btn--primary:hover{opacity:.9}.exercise-log-modal{position:fixed;inset:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.exercise-log-modal__content{background:var(--bg-page);border-radius:.75rem;width:100%;max-width:480px;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.exercise-log-modal__header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.25rem 1.25rem 1rem}@media(min-width:640px){.exercise-log-modal__header{padding:1.5rem 1.5rem 1rem}}.exercise-log-modal__title{font-size:1.125rem;font-weight:600;color:var(--card-dark);margin:0 0 .125rem}@media(min-width:640px){.exercise-log-modal__title{font-size:1.25rem}}.exercise-log-modal__subtitle{font-size:.8125rem;color:var(--text-muted);margin:0}.exercise-log-modal__close{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.375rem;font-size:1.25rem;flex-shrink:0;transition:color .1s ease,background .1s ease}.exercise-log-modal__close:hover{color:var(--card-dark);background:var(--bg-input)}.exercise-log-modal__list{list-style:none;margin:0;padding:0 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}@media(min-width:640px){.exercise-log-modal__list{padding:0 1.5rem 1.5rem}}.exercise-log-modal__item{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:var(--bg-light);border-radius:.5rem}.exercise-log-modal__item-info{flex:1;min-width:0}.exercise-log-modal__item-name{font-size:.9375rem;font-weight:600;color:var(--card-dark);margin:0 0 .125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exercise-log-modal__item-meta{font-size:.75rem;color:var(--text-muted);margin:0}.exercise-log-modal__item-delete{background:none;border:none;cursor:pointer;color:var(--text-placeholder);padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:.375rem;flex-shrink:0;font-size:1.125rem;transition:color .1s ease,background .1s ease}.exercise-log-modal__item-delete:active{color:var(--color-danger);background:var(--color-danger-bg)}@media(min-width:768px){.exercise-log-modal__item-delete:hover{color:var(--color-danger);background:var(--color-danger-bg)}}.calendar-popover__backdrop{display:none}@media(max-width:639px){.calendar-popover__backdrop{display:block;position:fixed;inset:0;background:var(--bg-overlay);z-index:140}@keyframes calBackdropIn{0%{opacity:0}to{opacity:1}}.calendar-popover__backdrop{animation:calBackdropIn .18s ease-out both}}.calendar-popover{position:absolute;top:calc(100% + .625rem);right:0;z-index:150;background:var(--card-bg);border:1px solid var(--card-border);border-radius:.75rem;box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000f;overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:639px){.calendar-popover{position:fixed;left:1rem;right:1rem;bottom:calc(1.5rem + env(safe-area-inset-bottom));top:auto;border-radius:1rem;box-shadow:0 -4px 24px #0000001f,0 20px 60px #0003}[data-theme=dark] .calendar-popover{box-shadow:0 -4px 24px #0006,0 20px 60px #0009}}[data-theme=dark] .calendar-popover{box-shadow:0 20px 60px #00000080,0 4px 16px #0000004d}.calendar-popover{animation:calendarEnter .18s ease-out both}@keyframes calendarEnter{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.calendar-popover__arrow{position:absolute;top:-.45rem;right:1.125rem;width:.875rem;height:.875rem;background:var(--card-bg);border-left:1px solid var(--card-border);border-top:1px solid var(--card-border);transform:rotate(45deg);border-radius:2px 0 0}@media(max-width:639px){.calendar-popover__arrow{display:none}}.calendar-popover__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.25rem 1rem}.calendar-popover__nav-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:.5rem;color:var(--color-primary);cursor:pointer;transition:color .15s ease,background .15s ease;flex-shrink:0}.calendar-popover__nav-btn svg{font-size:1.375rem}.calendar-popover__nav-btn:hover{color:var(--color-primary);background:var(--bg-surface)}.calendar-popover__nav-btn:active{background:var(--bg-surface-alt)}.calendar-popover__nav-btn:disabled{opacity:.2;cursor:not-allowed}.calendar-popover__nav-btn:disabled:hover{color:var(--text-muted);background:transparent}.calendar-popover__month-label{margin:0;font-size:.9375rem;font-weight:700;color:var(--text-primary)}.calendar-popover__weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:0 1rem .5rem;gap:0}.calendar-popover__weekday{display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:700;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;height:1.5rem}.calendar-popover__grid{display:grid;grid-template-columns:repeat(7,1fr);padding:0 1rem 1rem;gap:.125rem 0}.calendar-popover__day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:2.5rem;width:100%}@media(max-width:639px){.calendar-popover__day{height:44px}}.calendar-popover__day{background:transparent;border:none;border-radius:.5rem;cursor:pointer;transition:background .15s ease,color .15s ease}.calendar-popover__day:not(:disabled):not(.calendar-popover__day--today):not(.calendar-popover__day--selected):hover{background:var(--bg-surface)}.calendar-popover__day-number{font-size:.8125rem;font-weight:500;color:var(--text-primary);line-height:1}.calendar-popover__day--other-month{cursor:default}.calendar-popover__day--other-month .calendar-popover__day-number{color:var(--text-placeholder)}.calendar-popover__day--future{cursor:not-allowed;opacity:.25}.calendar-popover__day--future:hover{background:transparent}.calendar-popover__day--today{background:var(--color-primary)}.calendar-popover__day--today .calendar-popover__day-number{font-weight:700;color:#000}.calendar-popover__day--today .calendar-popover__dot{background:#00000080}.calendar-popover__day--today:hover{background:var(--color-primary-hover)}.calendar-popover__day--selected{border:1px solid var(--color-primary-border-hover)}.calendar-popover__day--selected .calendar-popover__day-number{color:var(--color-primary);font-weight:600}.calendar-popover__day--selected:hover{background:var(--color-primary-bg)}.calendar-popover__dot{position:absolute;bottom:.375rem;left:50%;transform:translate(-50%);width:.25rem;height:.25rem;border-radius:9999px;background:var(--color-primary)}.calendar-popover__footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-top:1px solid var(--card-border)}.calendar-popover__jump-btn{background:transparent;border:none;padding:0;font-size:.75rem;font-weight:700;color:var(--color-primary);cursor:pointer;transition:opacity .15s ease}.calendar-popover__jump-btn:hover{opacity:.75;text-decoration:underline}.calendar-popover__legend{display:flex;align-items:center;gap:.5rem}.calendar-popover__legend-dot{display:block;width:.375rem;height:.375rem;border-radius:9999px;background:var(--color-primary);flex-shrink:0}.calendar-popover__legend-label{font-size:.625rem;font-weight:500;color:var(--text-muted)}.skeleton-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1.25rem}@media(min-width:640px){.skeleton-card{padding:1.5rem}}@media(min-width:1200px){.skeleton-card{padding:1.5rem 2rem}}.calories-card-skeleton{display:flex;flex-direction:column;gap:1.5rem}.calories-card-skeleton__header{display:flex;align-items:center;justify-content:space-between}.calories-card-skeleton__ring-row{display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap}.calories-card-skeleton__stats{display:flex;flex-direction:column;gap:.75rem;flex:1;min-width:120px}.calories-card-skeleton__stat{display:flex;justify-content:space-between;align-items:center;gap:1rem}.calories-card-skeleton__water-row{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--border-light)}.meals-log-skeleton{display:flex;flex-direction:column;gap:.75rem}.meals-log-skeleton__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.meals-log-skeleton__meal{display:flex;flex-direction:column;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-light)}.meals-log-skeleton__meal:last-child{border-bottom:none}.meals-log-skeleton__meal-header{display:flex;align-items:center;justify-content:space-between}@keyframes skeleton-shimmer{0%{background-position:200% center}to{background-position:-200% center}}.skeleton{display:block;border-radius:.5rem;background:linear-gradient(90deg,var(--bg-surface-alt) 25%,var(--bg-surface) 50%,var(--bg-surface-alt) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease-in-out infinite}.skeleton--rounded{border-radius:50%}.skeleton--pill{border-radius:9999px}.skeleton--card{border-radius:1rem}.navigation__mobile-header{display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;right:0;height:3.5rem;z-index:100;background:var(--card-bg);border-bottom:1px solid var(--border-light);padding:0 1rem}@media(min-width:768px){.navigation__mobile-header{display:none}}.navigation__overlay{position:fixed;inset:0;z-index:150;background:#00000073}@media(min-width:768px){.navigation__overlay{display:none}}.navigation__hamburger{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--card-dark);font-size:1.75rem;cursor:pointer;padding:.25rem;border-radius:.375rem;transition:background .15s ease}.navigation__hamburger:hover{background:var(--bg-light)}.navigation{position:fixed;top:0;left:0;bottom:0;width:18rem;z-index:200;transform:translate(-100%);transition:transform .28s ease;display:flex;flex-direction:column;justify-content:space-between;background:var(--card-bg);border-right:1px solid var(--border-light);padding:1rem;overflow-y:auto}@media(min-width:768px){.navigation{position:static;transform:none;transition:none;width:18rem;flex-shrink:0;z-index:auto;overflow-y:visible}}.navigation--mobile-open{transform:translate(0)}.navigation__content{display:flex;flex-direction:column;gap:1.5rem}.navigation__drawer-header{display:flex;align-items:center;justify-content:space-between}@media(min-width:768px){.navigation__drawer-header{justify-content:flex-start}}.navigation__mobile-close{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--card-dark);font-size:1.5rem;cursor:pointer;padding:.25rem;border-radius:.375rem;transition:background .15s ease}.navigation__mobile-close:hover{background:var(--bg-light)}@media(min-width:768px){.navigation__mobile-close{display:none}}.navigation__brand{display:flex;align-items:center;gap:.75rem;padding:0 .5rem}.navigation__brand-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--color-primary-bg);color:var(--color-primary);font-size:1.875rem}.navigation__brand-text{font-size:1.25rem;font-weight:700;color:var(--card-dark);margin:0}.navigation__nav{display:flex;flex-direction:column;gap:.5rem}.navigation__link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:.5rem;color:var(--text-muted);text-decoration:none;transition:background .15s ease,color .15s ease;font-size:.875rem;font-weight:600;background:none;border:none;width:100%;cursor:pointer;text-align:left}.navigation__link:hover{background:var(--bg-light);color:var(--card-dark)}.navigation__link--active{background:var(--color-primary-bg);color:var(--color-primary)}.navigation__link--disabled{cursor:default;opacity:.45}.navigation__link--disabled:hover{background:none;color:var(--text-muted)}.navigation__link--reset{margin-top:.5rem;border-top:1px solid var(--border-light);padding-top:1.25rem;color:var(--color-danger)}.navigation__link--reset:hover{background:var(--color-danger-bg);color:var(--color-danger-hover)}.navigation__link-icon{font-size:1.5rem}.navigation__link-wrapper{position:relative}.navigation__coming-soon{position:absolute;top:50%;right:.75rem;transform:translateY(-50%);font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-primary);background:var(--color-primary-bg);border:1px solid var(--color-primary-border);border-radius:999px;padding:.125rem .45rem;pointer-events:none;white-space:nowrap}.navigation__footer{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--border-light);padding-top:.75rem;margin-top:auto}.navigation__theme-toggle{padding-bottom:.5rem}.navigation__theme-btn{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem 1rem;background:none;border:1px solid var(--border-light);border-radius:.5rem;color:var(--text-muted);font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.navigation__theme-btn:hover{background:var(--bg-light);color:var(--card-dark);border-color:var(--color-primary-border)}.navigation__theme-icon{font-size:1.25rem;flex-shrink:0}.navigation__theme-label{flex:1;text-align:left}.navigation__profile{display:flex;align-items:center;gap:.75rem;padding:.75rem .5rem;margin-top:0;border-top:none}.navigation__profile-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-active) 100%)}.navigation__profile-info{flex:1}.navigation__profile-name{font-size:.875rem;font-weight:600;color:var(--card-dark);margin:0 0 .125rem}.navigation__profile-plan{font-size:.75rem;color:var(--text-muted);margin:0}.navigation__logout{background:none;border:none;color:var(--text-placeholder);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .15s ease}.navigation__logout svg{font-size:1.25rem}.navigation__logout:hover{color:var(--card-dark)}.settings{color:var(--text-primary);display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;gap:0}.settings__header{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.25rem 1rem;border-bottom:1px solid var(--border-light);background:var(--bg-page);position:sticky;top:0;z-index:10}@media(min-width:768px){.settings__header{padding:1.5rem 2.5rem}}.settings__header-text{min-width:0}.settings__page-title{font-size:1.25rem;font-weight:700;color:var(--card-dark);margin:0 0 .125rem}@media(min-width:768px){.settings__page-title{font-size:1.375rem}}.settings__page-subtitle{font-size:.8125rem;color:var(--muted);margin:0}.settings__layout{display:flex;flex:1;min-height:0;overflow:hidden}.settings__sidebar{display:none}@media(min-width:768px){.settings__sidebar{display:flex;flex-direction:column;width:13rem;flex-shrink:0;border-right:1px solid var(--border-light);padding:1.25rem .625rem;overflow-y:auto}}.settings__sidebar-nav{display:flex;flex-direction:column;gap:.125rem}.settings__sidebar-item{display:flex;align-items:center;gap:.625rem;width:100%;padding:.5625rem .75rem;border:none;border-radius:.625rem;background:none;cursor:pointer;color:var(--text-muted);font-size:.8125rem;font-weight:500;text-align:left;white-space:nowrap;transition:background .1s ease,color .1s ease}.settings__sidebar-item:hover{background:var(--bg-light);color:var(--text-primary)}.settings__sidebar-item--active{background:var(--color-primary-bg);color:var(--card-dark);font-weight:600}.settings__sidebar-item--danger:hover{background:var(--color-danger-bg);color:var(--color-danger-hover)}.settings__sidebar-item--danger.settings__sidebar-item--active{background:var(--color-danger-bg-subtle);color:var(--color-danger-hover)}.settings__sidebar-item-icon{display:flex;align-items:center;flex-shrink:0;width:1rem}.settings__mobile-tabs{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-light);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0}.settings__mobile-tabs::-webkit-scrollbar{display:none}@media(min-width:768px){.settings__mobile-tabs{display:none}}.settings__mobile-tab{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:1px solid var(--border-input);border-radius:9999px;background:transparent;color:var(--text-muted);font-size:.75rem;font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .1s ease,color .1s ease,border-color .1s ease}.settings__mobile-tab:hover{color:var(--text-primary)}.settings__mobile-tab--active{background:var(--card-dark);color:var(--text-inverse);border-color:var(--card-dark)}.settings__content{flex:1;overflow-y:auto;min-height:0;padding:1.25rem 1rem 4rem;display:flex;flex-direction:column;gap:1rem;box-sizing:border-box}@media(min-width:768px){.settings__content{padding:1.75rem 2rem 4rem}}.settings__two-col{display:flex;flex-direction:column;gap:1rem}@media(min-width:768px){.settings__two-col{flex-direction:row;align-items:flex-start}}.settings__col{display:flex;flex-direction:column;gap:1rem;flex:1;min-width:0}.settings__field{display:flex;flex-direction:column;gap:.375rem}.settings__field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.settings__label{font-size:.75rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase}.settings__input{width:100%;padding:.625rem .875rem;border:1px solid var(--border-input);border-radius:.625rem;font-size:.9375rem;color:var(--card-dark);background:var(--bg-surface);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;box-sizing:border-box}.settings__input::placeholder{color:var(--text-placeholder)}.settings__input:focus{outline:none;background:var(--bg-page);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus-ring)}.settings__input--short{max-width:10rem}.settings__preference-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.25rem 0}.settings__preference-info{display:flex;flex-direction:column;gap:.25rem}.settings__preference-label{font-size:.8125rem;font-weight:600;color:var(--text-primary);margin:0}.settings__preference-description{font-size:.75rem;color:var(--text-muted);margin:0}.settings__legal-link{display:flex;align-items:center;gap:.625rem;width:100%;background:none;border:none;border-bottom:1px solid var(--border-light);cursor:pointer;color:var(--text-primary);font-size:.8125rem;font-weight:500;text-align:left;padding:.75rem 0;transition:color .1s ease}.settings__legal-link:last-child{border-bottom:none;padding-bottom:0}.settings__legal-link:first-child{padding-top:0}.settings__legal-link:hover{color:var(--primary)}.settings__legal-link svg{flex-shrink:0;color:var(--muted)}.settings__danger-zone{padding:1.25rem;border:1px solid #f87171;border-radius:.75rem;background:color-mix(in srgb,#f87171 6%,var(--bg-surface));display:flex;flex-direction:column;gap:1.25rem;width:100%;box-sizing:border-box}.settings__danger-header{display:flex;flex-direction:column;gap:.25rem;min-width:0}.settings__danger-title{font-size:.8125rem;font-weight:700;color:#dc2626;text-transform:uppercase;letter-spacing:.05em;margin:0}.settings__danger-section{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;border-top:1px solid color-mix(in srgb,#f87171 30%,transparent)}@media(min-width:768px){.settings__danger-section{flex-direction:row;align-items:flex-start;justify-content:space-between}}.settings__danger-section--delete .settings__danger-confirm-label{color:#991b1b}.settings__danger-section-info{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1}.settings__danger-section-label{font-size:.8125rem;font-weight:600;color:var(--text-primary);margin:0}.settings__danger-section-description{font-size:.8125rem;color:var(--text-muted);margin:0}.settings__danger-error{font-size:.8125rem;color:#dc2626;font-weight:500;margin:0}.settings__danger-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px solid #f87171;border-radius:.625rem;background:transparent;color:#dc2626;font-size:.8125rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s ease,color .15s ease}.settings__danger-btn:hover{background:#dc2626;color:#fff;border-color:#dc2626}.settings__danger-btn--delete{border-color:#991b1b;color:#991b1b}.settings__danger-btn--delete:hover{background:#991b1b;border-color:#991b1b;color:#fff}.settings__danger-confirm{display:flex;flex-direction:column;gap:.625rem;flex-shrink:0}@media(min-width:768px){.settings__danger-confirm{align-items:flex-end}}.settings__danger-confirm-label{font-size:.8125rem;font-weight:600;color:#dc2626}.settings__danger-confirm-actions{display:flex;gap:.5rem}.settings__danger-confirm-btn{padding:.4375rem .875rem;border-radius:.625rem;font-size:.8125rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .15s ease}.settings__danger-confirm-btn--cancel{background:var(--bg-surface);border-color:var(--border-input);color:var(--text-primary)}.settings__danger-confirm-btn--cancel:hover{background:var(--bg-page)}.settings__danger-confirm-btn--destructive{background:#dc2626;color:#fff}.settings__danger-confirm-btn--destructive:hover:not(:disabled){background:#b91c1c}.settings__danger-confirm-btn--destructive:disabled{opacity:.6;cursor:not-allowed}.settings__danger-confirm-btn--cancel:disabled{opacity:.6;cursor:not-allowed}.settings__save-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5625rem 1.25rem;border:1px solid transparent;border-radius:.625rem;font-size:.8125rem;font-weight:700;cursor:pointer;background:var(--card-dark);color:var(--text-inverse);white-space:nowrap;flex-shrink:0;letter-spacing:.01em;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;box-shadow:0 1px 3px #00000026}.settings__save-btn:hover:not(:disabled){background:#1a2e1a;transform:translateY(-1px);box-shadow:0 4px 10px #0000002e}.settings__save-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 3px #00000026}.settings__save-btn:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:none}.settings__save-btn--success{background:var(--color-primary);color:var(--card-dark);box-shadow:0 1px 3px #13ec134d}.personal-info .gender__grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.personal-info .gender__option{flex-direction:row;padding:.5rem .625rem;gap:.5rem;justify-content:center;border-width:1.5px;border-radius:.625rem}.personal-info .gender__icon{width:1.375rem;height:1.375rem;margin-bottom:0;flex-shrink:0;background:transparent}.personal-info .gender__icon svg{width:.9375rem;height:.9375rem}.personal-info .gender__label{font-size:.8125rem;font-weight:600}.personal-info .gender__check{top:.3rem;right:.3rem}.personal-info .gender__check svg{width:.8125rem;height:.8125rem}.settings__section{background:var(--bg-page);border:1px solid var(--border-input-subtle);border-radius:1rem;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 3px #0000000d,0 4px 12px #0000000a;transition:box-shadow .2s ease,border-color .2s ease}.settings__section:hover{box-shadow:0 2px 6px #0000000f,0 8px 20px #00000012;border-color:var(--border-input)}.settings__section-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--bg-page);border-bottom:1px solid var(--border-input-subtle)}.settings__section-icon{display:flex;align-items:center;justify-content:center;width:1.875rem;height:1.875rem;border-radius:.5rem;background:var(--color-primary-bg-medium);color:var(--card-dark);font-size:1rem;flex-shrink:0}.settings__section-title{font-size:.6875rem;font-weight:700;color:var(--text-muted);margin:0;flex:1;text-transform:uppercase;letter-spacing:.06em}.settings__section-content{display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.settings__actions{padding:0 1.25rem 1.25rem}.settings__save-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.625rem 1.5rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;background:var(--card-dark);color:var(--text-inverse);transition:background .15s ease,color .15s ease}.settings__save-btn:hover:not(:disabled){background:#0d1f0d}.settings__save-btn:disabled{opacity:.45;cursor:not-allowed}.settings__save-btn--success{background:var(--color-primary);color:var(--card-dark)}.body-metrics .height-input,.body-metrics .weight-input{padding:.75rem 1rem;border-radius:.625rem;background:var(--bg-surface);border:1px solid var(--border-input)}.body-metrics .height-input__input,.body-metrics .weight-input__input{color:var(--text-primary);font-size:1.25rem;font-weight:700;text-align:left}.body-metrics .weight-input__field,.body-metrics .height-input__ft-group{justify-content:flex-start}.body-metrics .height-input__ft-input,.body-metrics .height-input__in-input{color:var(--text-primary);font-size:1.25rem;font-weight:700;width:3rem;text-align:center}.body-metrics .height-input__hint,.body-metrics .weight-input__hint{text-align:left;font-size:.75rem;color:var(--text-muted)}.activity-level-section .activity__option{padding:.625rem .75rem;border-width:1.5px;border-radius:.625rem;gap:0}.activity-level-section .activity__icon{width:2rem;height:2rem;margin-right:.625rem;font-size:.9375rem}.activity-level-section .activity__label{font-size:.875rem}.activity-level-section .activity__kcal{font-size:.8125rem}.activity-level-section .activity__desc{font-size:.75rem;line-height:1.35}.activity-level-section .activity__grid{gap:.5rem}.settings__tdee-info{display:flex;align-items:center;justify-content:space-between;background:var(--bg-surface);border:1px solid var(--border-input-subtle);border-radius:.625rem;padding:.625rem .875rem}.settings__tdee-label{font-size:.75rem;font-weight:600;color:var(--text-muted);margin:0;text-transform:capitalize}.settings__tdee-value{font-size:.9375rem;font-weight:700;color:var(--card-dark);margin:0}.settings__goal-row{display:flex;align-items:center;gap:.75rem}.settings__input-unit{font-size:.875rem;color:var(--text-muted);white-space:nowrap}.calorie-goal__current{display:flex;align-items:center;justify-content:space-between;background:var(--color-primary-bg-faint);border:1px solid var(--color-primary-border);border-radius:.75rem;padding:.875rem 1rem}.calorie-goal__current-label{font-size:.6875rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.calorie-goal__current-value{font-size:1.125rem;font-weight:800;color:var(--card-dark);display:flex;align-items:baseline;gap:.25rem}.calorie-goal__current-unit{font-size:.75rem;font-weight:600;color:var(--text-muted)}.calorie-goal__mode-tabs{display:flex;gap:0;background:var(--bg-surface-alt);border-radius:.625rem;padding:.25rem}.calorie-goal__mode-tab{display:inline-flex;align-items:center;gap:.3rem;padding:.375rem .875rem;border:none;border-radius:.4375rem;background:transparent;font-size:.8125rem;font-weight:600;color:var(--text-muted);cursor:pointer;flex:1;justify-content:center;transition:all .15s ease}.calorie-goal__mode-tab:hover:not(.calorie-goal__mode-tab--active){color:var(--card-dark)}.calorie-goal__mode-tab--active{background:var(--bg-page);color:var(--card-dark);box-shadow:0 1px 3px #0000001a,0 0 0 1px #0000000d}.calorie-goal__type-grid{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.calorie-goal__pace-wrapper{margin-top:.375rem}.calorie-goal__summary{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem;border-radius:.75rem;border:1px solid var(--border-input-subtle);background:linear-gradient(135deg,var(--bg-surface) 0%,var(--bg-surface-alt) 100%);text-align:center}.calorie-goal__summary-label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-placeholder)}.calorie-goal__summary-value{display:flex;align-items:baseline;gap:.35rem;margin-top:.125rem}.calorie-goal__summary-kcal{font-size:2rem;font-weight:900;color:var(--card-dark);line-height:1;letter-spacing:-.03em}.calorie-goal__summary-unit{font-size:.9375rem;font-weight:700;color:var(--color-primary)}.calorie-goal__summary-diff,.calorie-goal__custom-diff{font-size:.75rem;font-weight:600;margin-top:.25rem;padding:.1875rem .5rem;border-radius:9999px}.calorie-goal__summary-diff--deficit,.calorie-goal__custom-diff--deficit{color:var(--color-danger-hover);background:var(--color-danger-bg-subtle)}.calorie-goal__summary-diff--surplus,.calorie-goal__custom-diff--surplus{color:var(--color-success);background:var(--color-success-bg)}.calorie-goal__custom-diff{margin-top:.375rem;display:inline-block}.account-section__toggle-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;width:100%;background:none;border:none;cursor:pointer;text-align:left;transition:background .15s ease}.account-section__toggle-header:hover{background:var(--bg-light)}.account-section__toggle-header .settings__section-icon{flex-shrink:0}.account-section__toggle-header .settings__section-title{flex:1}.account-section__chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s ease}.account-section__chevron--open{transform:rotate(180deg)}.account-section__body{border-top:1px solid var(--border-input-subtle)}.account-section__sub-section{display:flex;flex-direction:column;gap:.75rem}.account-section__sub-title{font-size:.8125rem;font-weight:600;color:var(--card-dark);margin:0}.account-section__current{font-size:.8125rem;color:var(--text-muted);margin:0}.account-section__current span{font-weight:600;color:var(--text-body)}.account-section__form{display:flex;flex-direction:column;gap:.75rem}.account-section__input-wrapper{position:relative;display:flex;align-items:center}.account-section__input-wrapper .settings__input{padding-right:2.5rem}.account-section__eye{position:absolute;right:.75rem;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;border-radius:.375rem;transition:color .15s ease;flex-shrink:0}.account-section__eye:hover{color:var(--card-dark)}.account-section__feedback{font-size:.8125rem;font-weight:500;padding:.5rem .75rem;border-radius:.625rem;margin:0;line-height:1.45}.account-section__feedback--error{color:#dc2626;background:var(--color-danger-bg)}.account-section__feedback--success{color:#16a34a;background:var(--color-success-bg)}.account-section__submit{align-self:flex-start;padding:.5rem 1.125rem;border:none;border-radius:.625rem;background:var(--color-primary);color:var(--text-on-primary);font-size:.8125rem;font-weight:600;cursor:pointer;transition:filter .15s ease,opacity .15s ease}.account-section__submit:hover:not(:disabled){filter:brightness(.95)}.account-section__submit:disabled{opacity:.5;cursor:not-allowed}.account-section__divider{height:1px;background:var(--border-light);margin:.25rem 0}.subscription-section{display:flex;flex-direction:column;gap:1.25rem}.subscription-section__status-row{display:flex;align-items:center;gap:.75rem}.subscription-section__badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.8125rem;font-weight:600;background:var(--bg-surface);color:var(--text-muted);border:1px solid var(--border-light)}.subscription-section__badge--premium{background:color-mix(in srgb,var(--color-primary) 12%,transparent);border-color:color-mix(in srgb,var(--color-primary) 30%,transparent);color:var(--color-primary)}.subscription-section__expiry{font-size:.8125rem;color:var(--text-muted);margin:0}.subscription-section__expiry strong{color:var(--text-body);font-weight:600}.subscription-section__usage-block{display:flex;flex-direction:column;gap:.5rem}.subscription-section__usage-header{display:flex;align-items:center;justify-content:space-between}.subscription-section__usage-label{font-size:.8125rem;font-weight:600;color:var(--text-body);margin:0}.subscription-section__usage-count{font-size:.8125rem;font-weight:600}.subscription-section__usage-count--ok{color:var(--text-muted)}.subscription-section__usage-count--warning{color:var(--color-warning)}.subscription-section__usage-count--full{color:var(--color-danger)}.subscription-section__usage-count--unlimited{color:var(--color-primary)}.subscription-section__progress-track{height:6px;background:var(--bg-surface);border-radius:9999px;overflow:hidden;border:1px solid var(--border-light)}.subscription-section__progress-bar{height:100%;border-radius:9999px;transition:width .4s ease}.subscription-section__progress-bar--ok{background:var(--color-primary)}.subscription-section__progress-bar--warning{background:var(--color-warning)}.subscription-section__progress-bar--full{background:var(--color-danger)}.subscription-section__manage-link{display:inline-block;background:none;border:none;padding:0;cursor:pointer;font-size:.8125rem;font-weight:600;color:var(--text-muted);text-decoration:underline;text-underline-offset:3px;transition:color .15s ease}.subscription-section__manage-link:disabled{opacity:.6;cursor:not-allowed}@media(min-width:768px){.subscription-section__manage-link:hover:not(:disabled){color:var(--color-danger)}}.subscription-section__upgrade{display:flex;flex-direction:column;gap:.75rem;padding-top:.25rem;border-top:1px solid var(--border-light)}.subscription-section__upgrade-desc{font-size:.8125rem;color:var(--text-muted);margin:0;line-height:1.5}.subscription-section__upgrade-btn{width:100%;padding:.75rem 1rem;background:var(--color-primary);color:var(--text-on-primary);border:none;border-radius:.5rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}@media(min-width:768px){.subscription-section__upgrade-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px)}}.subscription-section__upgrade-btn:active{background:var(--color-primary-active);transform:scale(.98)}.food-log{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg-light)}.food-log__main{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto}.food-log__header{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.25rem 1rem;border-bottom:1px solid var(--border-light);background:var(--bg-page);position:sticky;top:0;z-index:10}@media(min-width:768px){.food-log__header{padding:1.5rem 2.5rem}}.food-log__header-text{flex:1;min-width:0}.food-log__page-title{font-size:1.25rem;font-weight:700;color:var(--card-dark);margin:0 0 .125rem}@media(min-width:768px){.food-log__page-title{font-size:1.375rem}}.food-log__page-subtitle{font-size:.8125rem;color:var(--text-muted);margin:0}.food-log__header-actions{display:flex;gap:.5rem;flex-shrink:0}@media(min-width:640px){.food-log__header-actions{gap:.75rem}}.food-log__btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .15s ease;border:none;min-height:44px;flex:0 0 auto}@media(min-width:640px){.food-log__btn{padding:.625rem 1.25rem}}.food-log__btn span{display:none}@media(min-width:420px){.food-log__btn span{display:inline}}.food-log__btn svg{font-size:1.25rem;display:block}.food-log__btn--primary{background:var(--color-primary);color:var(--text-on-primary)}.food-log__btn--primary:active{opacity:.9}@media(min-width:768px){.food-log__btn--primary:hover{opacity:.9}}.food-log__content{max-width:75rem;width:100%;margin:0 auto;padding:1.5rem 1rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(2rem,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:2rem}@media(min-width:768px){.food-log__content{padding:2rem 1.5rem}}@media(min-width:1280px){.food-log__content{padding:2rem}}.food-log__body{display:flex;flex-direction:column;gap:2rem}@media(min-width:1024px){.food-log__body{flex-direction:row;align-items:flex-start;gap:2rem}}.food-log__meals-col{flex:1;display:flex;flex-direction:column;gap:1.5rem;min-width:0}.food-log__sections{display:flex;flex-direction:column;gap:2rem}.food-log__sidebar{display:flex;flex-direction:column;gap:1.5rem;width:100%}@media(min-width:1024px){.food-log__sidebar{width:20rem;flex-shrink:0}}.food-log__fab{position:fixed;bottom:1.5rem;right:1.5rem;width:56px;height:56px;background:var(--color-primary);color:var(--text-on-primary);border:none;border-radius:9999px;font-size:1.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 12px 30px #13ec132e;transition:transform .1s ease,box-shadow .15s ease;z-index:5}@media(min-width:1024px){.food-log__fab{display:none}}.food-log__fab:hover{transform:scale(1.08);box-shadow:0 12px 30px #13ec132e,0 0 0 4px var(--color-primary-focus-ring)}.food-log__fab:active{transform:scale(.95)}.nutrition-summary-bar{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(min-width:640px){.nutrition-summary-bar{grid-template-columns:repeat(4,1fr)}}.nutrition-summary-bar__calories-card,.nutrition-summary-bar__macro-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1rem;box-shadow:0 1px 2px #0000000d}.nutrition-summary-bar__calories-card{display:flex;align-items:center;justify-content:space-between}.nutrition-summary-bar__calories-value{font-size:1.25rem;font-weight:800;color:var(--text-primary);margin:.25rem 0 0;line-height:1.25}.nutrition-summary-bar__calories-unit{font-size:.8125rem;font-weight:400;color:var(--text-muted)}.nutrition-summary-bar__calories-goal{font-size:.75rem;color:var(--text-muted);margin:.25rem 0 0}.nutrition-summary-bar__ring{position:relative;width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.nutrition-summary-bar__ring-svg{width:100%;height:100%;transform:rotate(-90deg)}.nutrition-summary-bar__ring-track{stroke:var(--bg-surface-alt)}.nutrition-summary-bar__ring-progress{stroke:var(--color-primary);transition:stroke-dashoffset .25s ease,stroke .3s ease}.nutrition-summary-bar__ring-progress--over{stroke:var(--color-danger)}.nutrition-summary-bar__ring-icon{position:absolute;font-size:.875rem;color:var(--color-primary);transition:color .3s ease}.nutrition-summary-bar__ring-icon--over,.nutrition-summary-bar__calories-value--over{color:var(--color-danger)}.nutrition-summary-bar__macro-card{display:flex;flex-direction:column;gap:.25rem}.nutrition-summary-bar__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0}.nutrition-summary-bar__value{font-size:1.25rem;font-weight:800;color:var(--text-primary);margin:.25rem 0 .75rem;line-height:1.25}.nutrition-summary-bar__percentage{font-size:.75rem;font-weight:400;color:var(--color-primary);margin-left:.25rem}.nutrition-summary-bar__progress-track{width:100%;background:var(--bg-surface-alt);border-radius:9999px;height:6px;overflow:hidden;margin-top:auto}.nutrition-summary-bar__progress-fill{height:100%;background:var(--color-primary);border-radius:9999px;transition:width .25s ease}.date-navigator{display:flex;align-items:center;justify-content:space-around;gap:1rem}.date-navigator__controls{display:flex;align-items:center;gap:1rem;flex-wrap:nowrap;min-width:0}.date-navigator__label{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0;min-width:12rem;text-align:center}@media(max-width:480px){.date-navigator__label{font-size:.875rem;min-width:0;white-space:nowrap}}.date-navigator__arrow{display:flex;align-items:center;justify-content:center;background:var(--card-bg);border:1px solid var(--card-border);border-radius:.5rem;color:var(--text-primary);cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.date-navigator__arrow:hover:not(:disabled){border-color:var(--color-primary-border)}.date-navigator__arrow--disabled,.date-navigator__arrow:disabled{opacity:.35;cursor:not-allowed}.date-navigator__calendar-anchor{position:relative;flex-shrink:0;margin-left:.5rem}.date-navigator__calendar-btn{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:700;color:var(--color-primary);background:var(--color-primary-bg);border:1px solid var(--color-primary-border);border-radius:.5rem;padding:.5rem 1rem;cursor:pointer;transition:background .15s ease}.date-navigator__calendar-btn:hover{background:var(--color-primary-bg-medium)}.date-navigator__calendar-btn--active{background:var(--color-primary-bg-medium);border-color:var(--color-primary-border-hover)}@media(max-width:480px){.date-navigator__calendar-btn{padding:.5rem}}@media(max-width:480px){.date-navigator__calendar-label{display:none}}.date-navigator svg{font-size:1.125rem}.meal-section{border-radius:1rem;background:var(--card-bg);border:1px solid var(--card-border)}.meal-section--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem 1.5rem;border:2px dashed var(--card-border);background:none;min-height:200px}.meal-section__empty-add{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--color-primary);transition:transform .1s ease}.meal-section__empty-add svg{font-size:2.5rem}.meal-section__empty-add:hover{transform:scale(1.1)}.meal-section__empty-text{font-size:.8125rem;color:var(--text-muted);margin:0;text-align:center}.meal-section__empty-btn{padding:.5rem 1.5rem;border-radius:9999px;border:none;background:var(--color-primary);color:var(--text-on-primary);font-size:.8125rem;font-weight:700;cursor:pointer;transition:background .15s ease}.meal-section__empty-btn:hover{background:var(--color-primary-hover)}.meal-section__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--card-border);border-radius:1rem 1rem 0 0}.meal-section__header-left{display:flex;align-items:center;gap:.75rem}.meal-section__meal-icon{font-size:1.375rem;color:var(--color-primary);flex-shrink:0}.meal-section__title{font-size:1rem;font-weight:800;color:var(--text-primary);margin:0}.meal-section__calories-badge{font-size:.8125rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-bg);border:1px solid var(--color-primary-border);border-radius:9999px;padding:.25rem .75rem;white-space:nowrap}.meal-section__list{display:flex;flex-direction:column}.meal-section__list>*+*{border-top:1px solid var(--card-border)}.meal-section__macros{display:flex;align-items:center;justify-content:space-around;padding:1rem 1.25rem;border-top:1px solid var(--card-border)}.meal-section__macro{display:flex;flex-direction:column;align-items:center;gap:.25rem}.meal-section__macro-label{font-size:.75rem;font-weight:600;color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase}.meal-section__macro-value{font-size:.875rem;font-weight:700}.meal-section__macro-value--protein{color:var(--color-protein)}.meal-section__macro-value--carbs{color:var(--color-carbs)}.meal-section__macro-value--fat{color:var(--color-fat)}.meal-section__add-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1.25rem;border:none;border-top:1px solid var(--card-border);border-radius:0 0 1rem 1rem;background:none;color:var(--color-primary);font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease}.meal-section__add-btn svg{font-size:1rem}.meal-section__add-btn:hover{background:var(--color-primary-bg)}.food-log-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:transparent;transition:background .15s ease;cursor:default}.food-log-item:hover{background:var(--color-primary-bg-subtle)}.food-log-item__info{flex:1;min-width:0}.food-log-item__name{font-size:.875rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.food-log-item__desc{font-size:.75rem;color:var(--text-muted);margin:0;overflow:hidden;text-overflow:ellipsis}.food-log-item__right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.food-log-item__calories{font-size:.875rem;font-weight:700;color:var(--text-primary);white-space:nowrap}.food-log-item__menu-wrap{position:relative}.food-log-item__menu-btn{display:flex;align-items:center;justify-content:center;border:none;background:none;border-radius:.5rem;color:var(--text-muted);cursor:pointer;transition:color .15s ease,background .15s ease}.food-log-item__menu-btn svg{font-size:1.25rem}.food-log-item__menu-btn:hover{color:var(--color-primary);background:var(--color-primary-bg)}.food-log-item__dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--card-bg);border:1px solid var(--card-border);border-radius:.625rem;box-shadow:0 4px 10px #0000002e;min-width:130px;z-index:100;overflow:hidden;animation:food-item-dropdown-appear .15s ease}@keyframes food-item-dropdown-appear{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.food-log-item__dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;font-size:.8125rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:background .15s ease;text-align:left}.food-log-item__dropdown-item svg{font-size:1rem}.food-log-item__dropdown-item:hover{background:var(--bg-light)}.food-log-item__dropdown-item--danger{color:var(--color-danger)}.food-log-item__dropdown-item--danger:hover{background:var(--color-danger-bg)}.recipes-panel{display:flex;flex-direction:column;gap:1rem}.recipes-panel__cta{position:relative;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);border-radius:1rem;padding:1.5rem;overflow:hidden;box-shadow:0 12px 30px var(--color-primary-shadow-md)}.recipes-panel__cta-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.recipes-panel__cta-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#ffffff40;border-radius:.75rem;color:#000;font-size:1.375rem}.recipes-panel__cta-title{font-size:1.25rem;font-weight:800;color:#000;margin:0 0 .5rem;line-height:1.25}.recipes-panel__cta-desc{font-size:.8125rem;font-weight:500;color:#000000bf;margin:0;line-height:1.5}.recipes-panel__cta-btn{margin-top:1.5rem;width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:#000;color:#fff;border:none;border-radius:.75rem;font-size:.875rem;font-weight:700;cursor:pointer;transition:background .15s ease}.recipes-panel__cta-btn svg{font-size:1.125rem}.recipes-panel__cta-btn:hover{background:#111}.recipes-panel__cta-glow{position:absolute;right:-1rem;bottom:-1rem;width:6rem;height:6rem;background:#ffffff1f;border-radius:9999px;filter:blur(1.5rem);pointer-events:none}.recipes-panel__list-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1.5rem;box-shadow:0 1px 2px #0000000d}.recipes-panel__list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.recipes-panel__list-title{font-size:.875rem;font-weight:800;color:var(--text-primary);margin:0}.recipes-panel__create-btn{display:flex;align-items:center;justify-content:center;gap:.25rem;width:100%;background:var(--color-primary-bg);border:1px solid var(--color-primary-border);border-radius:.625rem;padding:.5rem .75rem;font-size:.75rem;font-weight:700;color:var(--color-primary-dark);cursor:pointer;transition:background .15s ease,border-color .15s ease}.recipes-panel__create-btn svg{font-size:1rem}.recipes-panel__create-btn:hover{background:var(--color-primary-bg-medium);border-color:var(--color-primary-border-hover)}.recipes-panel__create-btn:active{transform:scale(.97)}.recipes-panel__list{display:flex;flex-direction:column;gap:1rem}.recipes-panel__recipe-item{display:flex;align-items:center;gap:.5rem;padding-bottom:1rem;border-bottom:1px solid var(--card-border);transition:border-color .15s ease}.recipes-panel__recipe-item:last-child{border-bottom:none;padding-bottom:0}.recipes-panel__recipe-item:hover{border-color:var(--color-primary-border)}.recipes-panel__recipe-item:hover .recipes-panel__recipe-name{color:var(--color-primary)}.recipes-panel__recipe-main{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0;background:none;border:none;cursor:pointer;padding:0;text-align:left}.recipes-panel__recipe-thumb{width:40px;height:40px;border-radius:.625rem;background:var(--color-primary-bg);display:flex;align-items:center;justify-content:center;color:var(--color-primary);font-size:1.125rem;flex-shrink:0}.recipes-panel__recipe-info{flex:1;min-width:0}.recipes-panel__recipe-name{font-size:.8125rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem;transition:color .15s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipes-panel__recipe-meta{font-size:.75rem;color:var(--text-muted);margin:0}.recipes-panel__recipe-meta--protein{color:var(--color-protein)}.recipes-panel__recipe-meta--carbs{color:var(--color-carbs)}.recipes-panel__recipe-meta--fat{color:var(--color-fat)}.recipes-panel__recipe-macros{display:flex;align-items:center;gap:.5rem;margin:.25rem 0 0}.recipes-panel__recipe-macros span{font-size:.75rem;font-weight:600}.recipes-panel__recipe-macros--protein{color:var(--color-protein)}.recipes-panel__recipe-macros--carbs{color:var(--color-carbs)}.recipes-panel__recipe-macros--fat{color:var(--color-fat)}.recipes-panel__menu-wrap{position:relative;flex-shrink:0}.recipes-panel__menu-btn{display:flex;align-items:center;justify-content:center;border:none;background:none;border-radius:.5rem;color:var(--text-muted);cursor:pointer;padding:.25rem;transition:color .15s ease,background .15s ease}.recipes-panel__menu-btn svg{font-size:1.25rem}.recipes-panel__menu-btn:hover{color:var(--color-primary);background:var(--color-primary-bg)}.recipes-panel__dropdown{position:absolute;top:calc(100% + .25rem);right:0;background:var(--card-bg);border:1px solid var(--card-border);border-radius:.625rem;box-shadow:0 4px 10px #0000002e;min-width:130px;z-index:100;overflow:hidden;animation:recipe-dropdown-appear .15s ease}@keyframes recipe-dropdown-appear{0%{opacity:0;transform:translateY(-.375rem)}to{opacity:1;transform:translateY(0)}}.recipes-panel__dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;font-size:.8125rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:background .15s ease;text-align:left}.recipes-panel__dropdown-item svg{font-size:1rem}.recipes-panel__dropdown-item:hover{background:var(--bg-light)}.recipes-panel__dropdown-item--danger{color:var(--color-danger)}.recipes-panel__dropdown-item--danger:hover{background:var(--color-danger-bg)}.recipes-panel__view-all-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.75rem 1rem;margin-top:1rem;background:none;border:none;border-top:1px solid var(--card-border);font-size:.8125rem;font-weight:700;color:var(--color-primary);cursor:pointer;transition:color .15s ease;gap:.25rem}.recipes-panel__view-all-btn:hover{color:var(--color-primary-dark);text-decoration:underline}.recipes-panel__all-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:flex-end;justify-content:center;padding:1rem;animation:modal-fade-in .2s ease}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@media(min-width:640px){.recipes-panel__all-overlay{align-items:center}}.recipes-panel__all-modal{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;width:100%;max-width:480px;max-height:80dvh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 4px 10px #0000002e;animation:modal-slide-up .25s ease}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@media(min-width:640px){.recipes-panel__all-modal{max-height:70dvh}}.recipes-panel__all-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--card-border);flex-shrink:0}.recipes-panel__all-modal-title{font-size:1rem;font-weight:800;color:var(--text-primary);margin:0 0 .25rem}.recipes-panel__all-modal-count{font-size:.75rem;color:var(--text-muted);margin:0}.recipes-panel__all-modal-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.recipes-panel__all-modal-close{display:flex;align-items:center;justify-content:center;border:none;background:var(--bg-light);border-radius:9999px;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease;flex-shrink:0}.recipes-panel__all-modal-close svg{font-size:1.125rem}.recipes-panel__all-modal-close:hover{background:var(--card-border);color:var(--text-primary)}.recipes-panel__all-modal-list{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.recipes-panel__all-modal-list .recipes-panel__recipe-item:last-child{border-bottom:none;padding-bottom:0}.create-recipe-modal{position:fixed;inset:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:crm-fadeIn .2s ease ease-out}@keyframes crm-fadeIn{0%{opacity:0}to{opacity:1}}.create-recipe-modal__content{background:var(--bg-page);border-radius:.75rem;width:100%;max-width:500px;max-height:calc(90vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;animation:crm-slideUp .3s ease-out}@media(min-width:640px){.create-recipe-modal__content{max-height:90vh}}@keyframes crm-slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.create-recipe-modal__form{padding:1.25rem;padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}@media(min-width:640px){.create-recipe-modal__form{padding:1.5rem}}.create-recipe-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}@media(min-width:640px){.create-recipe-modal__header{margin-bottom:1.5rem}}.create-recipe-modal__header-left{display:flex;align-items:center;gap:.75rem}.create-recipe-modal__header-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-primary-bg);border-radius:.625rem;color:var(--color-primary);font-size:1.125rem;flex-shrink:0}.create-recipe-modal__title{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0}@media(min-width:640px){.create-recipe-modal__title{font-size:1.25rem}}.create-recipe-modal__close{background:none;border:none;color:var(--text-placeholder);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .15s ease;min-width:44px;min-height:44px;margin:-.5rem;border-radius:.5rem}.create-recipe-modal__close:active{background:var(--bg-light);color:var(--text-primary)}@media(min-width:768px){.create-recipe-modal__close:hover{color:var(--text-primary)}}.create-recipe-modal__close svg{font-size:1.25rem}.create-recipe-modal__fields{display:flex;flex-direction:column;gap:1.125rem;margin-bottom:1.25rem}@media(min-width:640px){.create-recipe-modal__fields{gap:1.25rem;margin-bottom:1.5rem}}.create-recipe-modal__form-group{display:flex;flex-direction:column;gap:.375rem}.create-recipe-modal__label{font-size:.875rem;font-weight:500;color:var(--text-muted)}.create-recipe-modal__label-hint{font-weight:400;color:var(--text-placeholder)}.create-recipe-modal__input{padding:.75rem .875rem;border:1px solid var(--border-light);border-radius:.5rem;font-size:1rem;color:var(--text-primary);background:var(--bg-page);transition:border-color .2s ease,box-shadow .2s ease;min-height:44px;width:100%;box-sizing:border-box}@media(min-width:640px){.create-recipe-modal__input{font-size:.875rem;padding:.625rem .875rem}}.create-recipe-modal__input::placeholder{color:var(--text-placeholder)}.create-recipe-modal__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus-ring)}.create-recipe-modal__input--error{border-color:var(--color-danger, #ef4444)}.create-recipe-modal__input--error:focus{box-shadow:0 0 0 3px #ef44441f}.create-recipe-modal__error{font-size:.75rem;color:var(--color-danger, #ef4444);margin:0}.create-recipe-modal__macro-divider{display:flex;align-items:center;margin:.25rem 0;color:var(--text-muted);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.create-recipe-modal__macro-divider:before,.create-recipe-modal__macro-divider:after{content:"";flex:1;height:1px;background:var(--border-light)}.create-recipe-modal__macro-divider span{padding:0 .75rem}.create-recipe-modal__macro-row{display:flex;gap:.75rem;width:100%}.create-recipe-modal__macro-row .create-recipe-modal__form-group{flex:1;min-width:0}.create-recipe-modal__macro-row .create-recipe-modal__input{width:100%;box-sizing:border-box}.create-recipe-modal__actions{display:flex;gap:.75rem;justify-content:stretch}@media(min-width:640px){.create-recipe-modal__actions{justify-content:flex-end}}.create-recipe-modal__btn{padding:.75rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;flex:1;min-height:44px}@media(min-width:640px){.create-recipe-modal__btn{padding:.625rem 1.25rem;font-size:.8125rem;flex:0}}.create-recipe-modal__btn--secondary{background:var(--bg-page);color:var(--text-muted);border:1px solid var(--border-light)}.create-recipe-modal__btn--secondary:active{background:var(--bg-surface)}@media(min-width:768px){.create-recipe-modal__btn--secondary:hover{background:var(--bg-surface)}}.create-recipe-modal__btn--primary{background:var(--color-primary);color:#000;font-weight:700}.create-recipe-modal__btn--primary:active{background:var(--color-primary-hover)}@media(min-width:768px){.create-recipe-modal__btn--primary:hover{background:var(--color-primary-hover)}}.create-recipe-modal__btn:active{transform:translateY(1px)}.log-recipe-modal{position:fixed;inset:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:lrm-fadeIn .2s ease ease-out}@keyframes lrm-fadeIn{0%{opacity:0}to{opacity:1}}.log-recipe-modal__content{background:var(--bg-page);border-radius:.75rem;width:100%;max-width:500px;max-height:calc(90vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;animation:lrm-slideUp .3s ease-out}@media(min-width:640px){.log-recipe-modal__content{max-height:90vh}}@keyframes lrm-slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.log-recipe-modal__form{padding:1.25rem;padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}@media(min-width:640px){.log-recipe-modal__form{padding:1.5rem}}.log-recipe-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}@media(min-width:640px){.log-recipe-modal__header{margin-bottom:1.5rem}}.log-recipe-modal__header-left{display:flex;align-items:center;gap:.75rem}.log-recipe-modal__header-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-primary-bg);border-radius:.625rem;color:var(--color-primary);font-size:1.125rem;flex-shrink:0}.log-recipe-modal__title{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0}@media(min-width:640px){.log-recipe-modal__title{font-size:1.25rem}}.log-recipe-modal__close{background:none;border:none;color:var(--text-placeholder);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .15s ease;min-width:44px;min-height:44px;margin:-.5rem;border-radius:.5rem}.log-recipe-modal__close:active{background:var(--bg-light);color:var(--text-primary)}@media(min-width:768px){.log-recipe-modal__close:hover{color:var(--text-primary)}}.log-recipe-modal__close svg{font-size:1.25rem}.log-recipe-modal__fields{display:flex;flex-direction:column;gap:1.125rem;margin-bottom:1.25rem}@media(min-width:640px){.log-recipe-modal__fields{gap:1.25rem;margin-bottom:1.5rem}}.log-recipe-modal__form-group{display:flex;flex-direction:column;gap:.375rem}.log-recipe-modal__label{font-size:.875rem;font-weight:500;color:var(--text-muted)}.log-recipe-modal__label-hint{font-weight:400;color:var(--text-placeholder)}.log-recipe-modal__meal-types{display:grid;grid-template-columns:repeat(2,1fr);gap:.625rem}@media(min-width:420px){.log-recipe-modal__meal-types{grid-template-columns:repeat(4,1fr);gap:.5rem}}.log-recipe-modal__meal-btn{padding:.75rem .5rem;border:1px solid var(--border-light);border-radius:.5rem;background:var(--bg-page);color:var(--text-muted);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:capitalize;min-height:44px}@media(min-width:420px){.log-recipe-modal__meal-btn{padding:.5rem;font-size:.75rem}}.log-recipe-modal__meal-btn:active{transform:scale(.98)}@media(min-width:768px){.log-recipe-modal__meal-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}}.log-recipe-modal__meal-btn--active{background:var(--color-primary);border-color:var(--color-primary);color:#000;font-weight:700}.log-recipe-modal__input{padding:.75rem .875rem;border:1px solid var(--border-light);border-radius:.5rem;font-size:1rem;color:var(--text-primary);background:var(--bg-page);transition:border-color .2s ease,box-shadow .2s ease;min-height:44px;width:100%;box-sizing:border-box}@media(min-width:640px){.log-recipe-modal__input{font-size:.875rem;padding:.625rem .875rem}}.log-recipe-modal__input::placeholder{color:var(--text-placeholder)}.log-recipe-modal__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus-ring)}.log-recipe-modal__input--error{border-color:var(--color-danger, #ef4444)}.log-recipe-modal__input--error:focus{box-shadow:0 0 0 3px #ef44441f}.log-recipe-modal__error{font-size:.75rem;color:var(--color-danger, #ef4444);margin:0}.log-recipe-modal__divider{display:flex;align-items:center;color:var(--text-muted);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.log-recipe-modal__divider:before,.log-recipe-modal__divider:after{content:"";flex:1;height:1px;background:var(--border-light)}.log-recipe-modal__divider span{padding:0 .75rem}.log-recipe-modal__macro-row{display:flex;gap:.75rem}.log-recipe-modal__macro-row .log-recipe-modal__form-group{flex:1;min-width:0}.log-recipe-modal__macro-row .log-recipe-modal__input{width:100%;box-sizing:border-box}.log-recipe-modal__actions{display:flex;gap:.75rem;justify-content:stretch}@media(min-width:640px){.log-recipe-modal__actions{justify-content:flex-end}}.log-recipe-modal__btn{padding:.75rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;flex:1;min-height:44px}@media(min-width:640px){.log-recipe-modal__btn{padding:.625rem 1.25rem;font-size:.8125rem;flex:0}}.log-recipe-modal__btn--secondary{background:var(--bg-page);color:var(--text-muted);border:1px solid var(--border-light)}.log-recipe-modal__btn--secondary:active{background:var(--bg-surface)}@media(min-width:768px){.log-recipe-modal__btn--secondary:hover{background:var(--bg-surface)}}.log-recipe-modal__btn--primary{background:var(--color-primary);color:#000;font-weight:700}.log-recipe-modal__btn--primary:active{background:var(--color-primary-hover)}@media(min-width:768px){.log-recipe-modal__btn--primary:hover{background:var(--color-primary-hover)}}.log-recipe-modal__btn:active{transform:translateY(1px)}.toast{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 1.5rem);left:50%;transform:translate(-50%) translateY(0);z-index:1100;display:flex;align-items:center;gap:.5rem;background:#0f172a;color:#fff;padding:.75rem 1.25rem;border-radius:9999px;box-shadow:0 8px 24px #00000059;white-space:nowrap;transition:opacity .25s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.toast--visible{opacity:1;transform:translate(-50%) translateY(0)}.toast--hidden{opacity:0;transform:translate(-50%) translateY(1rem)}.toast__icon{display:flex;align-items:center;color:var(--color-primary);font-size:1.125rem;flex-shrink:0}.toast__message{margin:0;font-size:.8125rem;font-weight:600;color:#fff}.streak-status-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1.5rem;box-shadow:0 1px 2px #0000000d}.streak-status-card__title{font-size:.875rem;font-weight:800;color:var(--text-primary);margin:0 0 1rem}.streak-status-card__status{display:flex;align-items:center;justify-content:space-between;background:var(--color-primary-bg-faint);border:1px solid var(--color-primary-border);border-radius:.75rem;padding:1rem}.streak-status-card__left{display:flex;align-items:center;gap:.75rem}.streak-status-card__fire{font-size:1.75rem;color:var(--color-primary);flex-shrink:0}.streak-status-card__count{font-size:1.125rem;font-weight:800;color:var(--text-primary);margin:0;line-height:1}.streak-status-card__label{font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:.25rem 0 0}.streak-status-card__bars{display:flex;gap:.25rem;align-items:flex-end}.streak-status-card__bar{width:6px;height:24px;border-radius:9999px;background:var(--bg-surface-alt)}.streak-status-card__bar--active{background:var(--color-primary)}.streak-status-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;font-size:.75rem;font-weight:700;color:var(--text-muted)}.streak-status-card__footer p{margin:0}.streak-status-card__next{color:var(--color-primary)}.water-intake-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1.5rem;box-shadow:0 1px 2px #0000000d}.water-intake-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.water-intake-card__title{font-size:.875rem;font-weight:800;color:var(--text-primary);margin:0}.water-intake-card__amount{font-size:.8125rem;font-weight:700;color:var(--color-primary)}.water-intake-card__segments{display:flex;gap:.25rem;margin-bottom:1.25rem}.water-intake-card__seg{flex:1;height:32px;border-radius:.375rem;background:var(--bg-surface-alt);transition:background .15s ease}.water-intake-card__seg--filled{background:var(--color-primary)}.water-intake-card__actions{display:flex;gap:.75rem}.water-intake-card__btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.25rem;padding:.5rem .75rem;background:var(--bg-surface-alt);border:1px solid var(--card-border);border-radius:.5rem;font-size:.8125rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:background .15s ease,border-color .15s ease}.water-intake-card__btn svg{font-size:1rem}.water-intake-card__btn:hover:not(:disabled){background:var(--bg-light);border-color:var(--border-hover)}.water-intake-card__btn:disabled{opacity:.4;cursor:not-allowed}.water-intake-card__btn--add{background:var(--color-primary-bg);border-color:var(--color-primary-border);color:var(--color-primary)}.water-intake-card__btn--add:hover:not(:disabled){background:var(--color-primary-bg-medium)}.food-log-skeleton__card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.nutrition-bar-skeleton{display:flex;flex-direction:column;gap:.75rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1rem 1.25rem}.nutrition-bar-skeleton__row{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.nutrition-bar-skeleton__bar{width:100%}.date-nav-skeleton{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:.875rem 1.25rem}.meal-section-skeleton{display:flex;flex-direction:column;gap:.75rem}.meal-section-skeleton__header{display:flex;align-items:center;justify-content:space-between}.meal-section-skeleton__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--border-light)}.meal-section-skeleton__row:last-child{border-bottom:none}.auth-screen{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--bg-light)}.auth-screen__card{width:100%;max-width:440px;background:var(--bg-page);border-radius:1rem;border:1px solid var(--border-light);box-shadow:0 10px 30px #00000014;padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.auth-screen__brand{display:flex;align-items:center;gap:.75rem;justify-content:center}.auth-screen__brand-icon{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:.5rem;background:var(--color-primary-bg);color:var(--color-primary);font-size:1.25rem}.auth-screen__brand-name{font-size:1.125rem;font-weight:800;color:var(--card-dark);margin:0}.auth-screen__tagline{text-align:center;font-size:.875rem;color:var(--text-muted);margin:0;margin-top:-1rem}.auth-screen__tabs{display:flex;background:var(--bg-surface-alt);border-radius:.625rem;padding:.25rem;gap:.25rem}.auth-screen__tab{flex:1;padding:.5rem 1rem;border:none;border-radius:.5rem;background:transparent;color:var(--text-muted);font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.auth-screen__tab--active{background:var(--bg-page);color:var(--card-dark);box-shadow:0 1px 3px #0000001a,0 0 0 1px #0000000d}.auth-screen__tab:not(.auth-screen__tab--active):hover{color:var(--text-body)}.auth-screen__form{display:flex;flex-direction:column;gap:1rem}.auth-screen__field{display:flex;flex-direction:column;gap:.5rem}.auth-screen__label{font-size:.875rem;font-weight:600;color:var(--card-dark)}.auth-screen__input-wrapper{position:relative;display:flex;align-items:center}.auth-screen__input{width:100%;padding:.75rem .875rem;border:1px solid var(--border-input);border-radius:.625rem;font-size:.9375rem;color:var(--card-dark);background:var(--bg-surface);transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.auth-screen__input::placeholder{color:var(--text-placeholder)}.auth-screen__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-focus-ring)}.auth-screen__input-wrapper .auth-screen__input{padding-right:2.75rem}.auth-screen__eye{position:absolute;right:.75rem;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;border-radius:.375rem;transition:color .15s ease}.auth-screen__eye:hover{color:var(--card-dark)}.auth-screen__forgot{display:flex;justify-content:flex-end;margin-top:-.5rem}.auth-screen__forgot-btn{background:none;border:none;font-size:.8125rem;color:var(--color-primary);cursor:pointer;padding:0;font-weight:500;transition:opacity .15s ease}.auth-screen__forgot-btn:hover{opacity:.8}.auth-screen__back-link{background:none;border:none;font-size:.8125rem;color:var(--text-muted);cursor:pointer;padding:0;font-weight:500;text-align:center;width:100%;transition:color .15s ease}.auth-screen__back-link:hover{color:var(--card-dark)}.auth-screen__submit{width:100%;padding:.75rem 1.25rem;border-radius:.75rem;border:none;background:var(--color-primary);color:var(--text-on-primary);font-size:.9375rem;font-weight:800;cursor:pointer;box-shadow:0 4px 12px #13ec1333;transition:filter .15s ease,transform .1s ease,box-shadow .15s ease;margin-top:.5rem}.auth-screen__submit:hover{filter:brightness(.95);box-shadow:0 12px 30px #13ec132e}.auth-screen__submit:active{transform:scale(.98)}.auth-screen__submit:disabled{opacity:.65;cursor:not-allowed}.auth-screen__feedback{font-size:.8125rem;font-weight:500;padding:.75rem 1rem;border-radius:.625rem;margin-top:-.5rem;text-align:center}.auth-screen__feedback--error{color:#dc2626;background:var(--color-danger-bg)}.auth-screen__feedback--success{color:#16a34a;background:var(--color-success-bg)}.auth-screen__switch{text-align:center;font-size:.8125rem;color:var(--text-muted);margin:0}.auth-screen__switch-btn{background:none;border:none;font-size:.8125rem;font-weight:600;color:var(--color-primary);cursor:pointer;padding:0;transition:opacity .15s ease}.auth-screen__switch-btn:hover{opacity:.8}.help{color:var(--text-primary);display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;gap:0}.help__header{display:flex;align-items:center;gap:1rem;padding:1.25rem 1rem;border-bottom:1px solid var(--border-light);background:var(--bg-page);position:sticky;top:0;z-index:10}@media(min-width:768px){.help__header{padding:1.5rem 2.5rem}}.help__header-text{min-width:0}.help__page-title{font-size:1.25rem;font-weight:700;color:var(--card-dark);margin:0 0 .125rem}@media(min-width:768px){.help__page-title{font-size:1.375rem}}.help__page-subtitle{font-size:.8125rem;color:var(--muted);margin:0}.help__body{display:flex;flex-direction:column;padding:1.25rem 1rem 4rem;width:100%;box-sizing:border-box}@media(min-width:768px){.help__body{padding:1.75rem 2.5rem 4rem;max-width:56rem}}.help__topics{display:flex;flex-direction:column;gap:.75rem}.help__topic{border:1px solid var(--border-light);border-radius:.75rem;background:var(--card-bg);overflow:hidden;transition:border-color .15s ease}.help__topic--open{border-color:var(--color-primary-border)}.help__topic-trigger{width:100%;display:flex;align-items:center;gap:.75rem;padding:1rem;background:none;border:none;cursor:pointer;text-align:left;color:var(--text-primary);min-height:44px;transition:background .15s ease}.help__topic-trigger:hover{background:var(--bg-surface)}@media(min-width:768px){.help__topic-trigger{padding:1rem 1.25rem}}.help__topic-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;background:var(--color-primary-bg);color:var(--color-primary);font-size:1.125rem;flex-shrink:0}.help__topic-title{flex:1;font-size:.875rem;font-weight:600;color:var(--card-dark)}@media(min-width:768px){.help__topic-title{font-size:1rem}}.help__topic-chevron{display:flex;align-items:center;font-size:1.25rem;color:var(--muted);flex-shrink:0;transition:color .15s ease}.help__topic--open .help__topic-chevron{color:var(--color-primary)}.help__topic-body{padding:0 1rem 1.25rem;border-top:1px solid var(--border-light)}@media(min-width:768px){.help__topic-body{padding:0 1.25rem 1.25rem}}.help__steps{margin:1rem 0 0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.75rem}.help__step{font-size:.875rem;color:var(--text-secondary);line-height:1.5}.help__step::marker{color:var(--color-primary);font-weight:600}.help__tip{display:flex;align-items:flex-start;gap:.75rem;margin-top:1rem;padding:.75rem 1rem;border-radius:.625rem;background:var(--color-primary-bg-subtle);border:1px solid var(--color-primary-border)}.help__tip-icon{font-size:1.125rem;color:var(--color-primary);flex-shrink:0;margin-top:.125rem}.help__tip-text{font-size:.8125rem;color:var(--text-secondary);line-height:1.5;margin:0}:root{--color-primary: #13ec13;--color-primary-hover: #10c810;--color-primary-active: #0fb80f;--color-primary-dark: #0aaa0a;--color-primary-bg: rgba(19, 236, 19, .1);--color-primary-bg-subtle: rgba(19, 236, 19, .04);--color-primary-bg-medium: rgba(19, 236, 19, .08);--color-primary-bg-faint: rgba(19, 236, 19, .05);--color-primary-border: rgba(19, 236, 19, .2);--color-primary-border-hover: rgba( 19, 236, 19, .5 );--color-primary-focus-ring: rgba(19, 236, 19, .12);--color-primary-shadow-sm: rgba(19, 236, 19, .18);--color-primary-shadow-md: rgba(19, 236, 19, .2);--color-primary-shadow-lg: rgba(19, 236, 19, .3);--text-primary: #0f172a;--text-secondary: #213547;--text-body: #475569;--text-muted: #6b7280;--text-placeholder: #9ca3af;--text-inverse: #ffffff;--text-on-primary: #000000;--muted: #6b7280;--bg-page: #ffffff;--bg-light: #f6f8f6;--bg-surface: #f9fafb;--bg-surface-alt: #f3f4f6;--bg-surface-green: #f8faf8;--bg-overlay: rgba(0, 0, 0, .5);--border-light: #e5e7eb;--border-dark: #2a442a;--border-input: rgba(0, 0, 0, .12);--border-input-subtle: rgba(0, 0, 0, .06);--border-hover: rgba(19, 236, 19, .5);--card-bg: #ffffff;--card-dark: #1a2e1a;--card-border: var(--border-light);--color-protein: #3b82f6;--color-protein-bg: rgba(59, 130, 246, .1);--color-carbs: var(--color-primary);--color-carbs-bg: var(--color-primary-bg);--color-fat: #f97316;--color-fat-bg: rgba(249, 115, 22, .1);--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-bg: rgba(239, 68, 68, .05);--color-danger-bg-subtle: rgba(220, 38, 38, .08);--color-success: #16a34a;--color-success-bg: rgba(22, 163, 74, .08);--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .08);--scrollbar-thumb: #d1d5db;--scrollbar-thumb-hover: #9ca3af}[data-theme=dark]{--color-primary-bg: rgba(19, 236, 19, .12);--color-primary-bg-subtle: rgba(19, 236, 19, .06);--color-primary-bg-medium: rgba(19, 236, 19, .1);--color-primary-bg-faint: rgba(19, 236, 19, .07);--color-primary-border: rgba(19, 236, 19, .25);--color-primary-border-hover: rgba(19, 236, 19, .6);--color-primary-focus-ring: rgba(19, 236, 19, .18);--text-primary: #e8f5e8;--text-secondary: #b8d4b8;--text-body: #8faa8f;--text-muted: #6b886b;--text-placeholder: #4a644a;--text-inverse: #0d120d;--text-on-primary: #000000;--muted: #6b886b;--bg-page: #121a12;--bg-light: #0d120d;--bg-surface: #192419;--bg-surface-alt: #1e2c1e;--bg-surface-green: #152018;--bg-overlay: rgba(0, 0, 0, .75);--border-light: #243524;--border-dark: #4a7a4a;--border-input: rgba(255, 255, 255, .1);--border-input-subtle: rgba(255, 255, 255, .05);--border-hover: rgba(19, 236, 19, .5);--card-bg: #121a12;--card-dark: #d4ecd4;--card-border: #243524;--color-protein-bg: rgba(59, 130, 246, .15);--color-carbs-bg: rgba(19, 236, 19, .12);--color-fat-bg: rgba(249, 115, 22, .15);--color-danger-bg: rgba(239, 68, 68, .08);--color-danger-bg-subtle: rgba(220, 38, 38, .12);--color-success-bg: rgba(22, 163, 74, .12);--color-warning-bg: rgba(217, 119, 6, .12);--scrollbar-thumb: #2d452d;--scrollbar-thumb-hover: #3d5e3d}.legal-page{color:var(--text-primary);display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;gap:0}.legal-page__header{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem 1rem;border-bottom:1px solid var(--border-light);background:var(--bg-page);position:sticky;top:0;z-index:10}@media(min-width:768px){.legal-page__header{padding:1.5rem 2.5rem}}.legal-page__back-btn{display:inline-flex;align-items:center;gap:.375rem;background:none;border:none;cursor:pointer;color:var(--primary);font-size:.8125rem;font-weight:500;padding:0;transition:opacity .1s ease}.legal-page__back-btn:hover{opacity:.75}.legal-page__header-text{min-width:0}.legal-page__title{font-size:1.25rem;font-weight:700;color:var(--card-dark);margin:0 0 .125rem}@media(min-width:768px){.legal-page__title{font-size:1.375rem}}.legal-page__subtitle{font-size:.8125rem;color:var(--muted);margin:0}.legal-page__body{display:flex;flex-direction:column;padding:1.5rem 1rem 5rem;width:100%;box-sizing:border-box}@media(min-width:768px){.legal-page__body{padding:2rem 2.5rem 5rem;max-width:52rem}}.legal-page__intro{font-size:.875rem;color:var(--text-primary);line-height:1.7;margin:0 0 1rem;padding:1rem 1.25rem;background:var(--bg-surface);border-left:3px solid var(--primary);border-radius:0 .5rem .5rem 0}.legal-page__section{margin-bottom:2rem}.legal-page__section:last-child{margin-bottom:0}.legal-page__section-title{font-size:1rem;font-weight:600;color:var(--card-dark);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-light)}.legal-page__subsection-title{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:1rem 0 .5rem}.legal-page__text{font-size:.875rem;color:var(--text-secondary);line-height:1.7;margin:0 0 .75rem}.legal-page__text:last-child{margin-bottom:0}.legal-page__list{font-size:.875rem;color:var(--text-secondary);line-height:1.7;margin:0 0 .75rem;padding-left:1.5rem}.legal-page__list li{margin-bottom:.5rem}.legal-page__list li:last-child{margin-bottom:0}.legal-page__contact{font-size:.875rem;color:var(--text-secondary);line-height:1.8;margin:.5rem 0 0;padding:1rem 1.25rem;background:var(--bg-surface);border-radius:.5rem}.legal-page__link{color:var(--primary);text-decoration:none}.legal-page__link:hover{text-decoration:underline}
