:root{color-scheme:dark;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#0f172a}body{margin:0;background:radial-gradient(circle at top left,#1e293b,#0f172a 60%);color:#e2e8f0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr;background:#0f172ae6}.sidebar{background:linear-gradient(180deg,#1e293bf2,#0f172af2);padding:2rem 1.5rem;display:flex;flex-direction:column;gap:2rem;border-right:1px solid rgba(148,163,184,.2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{font-size:1.5rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.brand-accent{color:#38bdf8;margin-right:.25rem}.nav{display:flex;flex-direction:column;gap:.75rem}.nav-item{color:#cbd5f5;text-decoration:none;padding:.75rem 1rem;border-radius:.75rem;font-weight:500;display:flex;align-items:center;transition:all .2s ease}.nav-item:hover{background:#38bdf81a;color:#f8fafc;transform:translate(4px)}.nav-item.active{background:linear-gradient(135deg,#38bdf84d,#0ea5e933);color:#f8fafc;border:1px solid rgba(56,189,248,.4);box-shadow:0 12px 30px -15px #38bdf899}.content{padding:2rem 3rem;display:flex;flex-direction:column;gap:2rem;min-width:0;width:100%;box-sizing:border-box}.page{display:flex;flex-direction:column;gap:2rem;min-width:0}@media (max-width: 640px){.content{padding:1.5rem;gap:1.5rem}.page{gap:.9rem}.section-header{margin-bottom:.75rem}.section-header__details{gap:.25rem}}.top-bar{display:flex;justify-content:flex-end;position:relative}.user-avatar{background:linear-gradient(135deg,#38bdf84d,#0ea5e933);border:1px solid rgba(148,163,184,.25);border-radius:50%;width:48px;height:48px;display:grid;place-items:center;cursor:pointer;padding:0;color:#e2e8f0;box-shadow:0 18px 40px -30px #38bdf8cc;transition:transform .2s ease,box-shadow .2s ease}.user-avatar svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6}.user-avatar:hover,.user-avatar:focus-visible{transform:translateY(-1px);box-shadow:0 24px 50px -32px #38bdf8e6;outline:none}.user-menu-dropdown{position:absolute;top:calc(100% + .75rem);right:0;background:#0f172af2;border:1px solid rgba(56,189,248,.3);border-radius:1rem;padding:.5rem;box-shadow:0 24px 60px -35px #0891b2e6;min-width:180px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;gap:.25rem;z-index:5}.user-menu-item{width:100%;padding:.75rem 1rem;background:transparent;border:none;color:#f8fafc;text-align:left;border-radius:.75rem;cursor:pointer;transition:background .2s ease,transform .2s ease}.user-menu-item:hover,.user-menu-item:focus-visible{background:#38bdf826;transform:translate(3px);outline:none}.menu-toggle{display:none;width:44px;height:44px;border-radius:12px;border:1px solid rgba(148,163,184,.25);background:#0f172a99;color:#e2e8f0;align-items:center;justify-content:center;flex-direction:column;gap:6px;cursor:pointer;padding:0;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.menu-toggle span{display:block;width:20px;height:2px;border-radius:999px;background:currentColor;transition:transform .3s ease,opacity .3s ease}.app-shell--nav-open .menu-toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}.app-shell--nav-open .menu-toggle span:nth-child(2){opacity:0}.app-shell--nav-open .menu-toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.menu-toggle:hover,.menu-toggle:focus-visible{border-color:#38bdf88c;background:#38bdf82e;box-shadow:0 20px 42px -32px #38bdf899;outline:none}.section{background:#0f172acc;border-radius:1.5rem;padding:2rem;box-shadow:0 20px 50px -40px #0f172ae6;border:1px solid rgba(148,163,184,.15)}.status-card{background:#1e293bbf;border:1px solid rgba(148,163,184,.25);border-radius:1.25rem;padding:1.25rem 1.5rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;color:#e2e8f0;box-shadow:0 18px 42px -36px #0f172af2}.status-card--error{border-color:#f8717166;background:linear-gradient(135deg,#ef44442e,#f8717114);color:#fecaca}.status-card__message{font-size:.95rem;line-height:1.5}.status-card__action{padding:.5rem 1.25rem;border-radius:999px;border:1px solid rgba(56,189,248,.45);background:#38bdf82e;color:#f8fafc;cursor:pointer;font-weight:500;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.status-card__action:hover,.status-card__action:focus-visible{background:#38bdf847;transform:translateY(-1px);box-shadow:0 18px 38px -32px #38bdf8a6;outline:none}@media (max-width: 1200px){.content{padding:2rem clamp(1.5rem,4vw,2.5rem)}}@media (max-width: 1024px){.app-shell{grid-template-columns:1fr}.app-shell--nav-open{overflow:hidden}.sidebar{position:fixed;inset:0 auto 0 0;width:min(80vw,320px);transform:translate(-110%);transition:transform .3s ease;z-index:12;padding:1.75rem 1.5rem 2.5rem;box-shadow:0 20px 60px -40px #0f172ae6}.sidebar--open{transform:translate(0)}.content{padding:1.5rem clamp(1.25rem,4vw,2rem)}.top-bar{justify-content:space-between;align-items:center}.menu-toggle{display:inline-flex}.mobile-nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;padding:0;margin:0;cursor:pointer;z-index:8}}@media (max-width: 640px){.content{padding:1.25rem}.section{padding:1.5rem}.status-card{flex-direction:column;align-items:flex-start}.flare-ups-form{padding:1.25rem}.flare-ups-form-grid{grid-template-columns:1fr}.flare-ups-form-header{flex-direction:column;align-items:flex-start;gap:.75rem}.flare-ups-form-title{font-size:1.05rem}.flare-ups-form-subtitle{font-size:.9rem}input[type=date],input[type=time],input[type=datetime-local]{width:100%}}.diagnostics{display:flex;flex-direction:column;gap:1.5rem}.clear-log-button{padding:.75rem 1.5rem;background:#38bdf826;border:1px solid rgba(56,189,248,.5);border-radius:999px;color:#f8fafc;cursor:pointer;transition:background .2s ease,transform .2s ease}.clear-log-button:hover,.clear-log-button:focus-visible{background:#38bdf84d;transform:translateY(-1px);outline:none}.diagnostics-log{display:flex;flex-direction:column;gap:1.25rem}.empty-log{color:#94a3b8}.diagnostics-entry{background:#1e293bb3;border:1px solid rgba(148,163,184,.2);border-radius:1.25rem;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 20px 40px -35px #0f172af2}.diagnostics-entry-header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;color:#cbd5f5;font-size:.95rem}.diagnostics-entry-type{font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#38bdf8}.diet-log-form{display:flex;flex-direction:column;gap:2rem}.diet-log-header__add{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:999px;border:1px solid rgba(56,189,248,.45);background:linear-gradient(135deg,#38bdf840,#2563eb40);color:#e0f2fe;box-shadow:0 18px 36px -28px #38bdf8bf;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.diet-log-header__add:hover,.diet-log-header__add:focus-visible{border-color:#38bdf8bf;background:linear-gradient(135deg,#38bdf859,#2563eb4d);transform:translateY(-1px);outline:none;box-shadow:0 22px 44px -28px #38bdf8e6}.diet-log-header__add-icon{width:1.35rem;height:1.35rem}.diet-log-header-actions{position:relative;display:inline-flex;align-items:center}.diet-log-action-menu{position:absolute;top:calc(100% + .75rem);right:0;width:min(320px,85vw);display:flex;flex-direction:column;gap:.35rem;padding:.85rem;background:linear-gradient(135deg,#1e293bf2,#082f49f2);border:1px solid rgba(56,189,248,.35);border-radius:1.25rem;box-shadow:0 24px 48px -32px #38bdf873;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:8}.diet-log-action-menu__item{display:flex;align-items:center;gap:.85rem;padding:.75rem;border-radius:1rem;border:none;background:#0f172a8c;color:#e2e8f0;cursor:pointer;text-align:left;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.diet-log-action-menu__item:hover,.diet-log-action-menu__item:focus-visible{outline:none;background:#38bdf838;transform:translateY(-1px);box-shadow:0 16px 32px -26px #38bdf88c}.diet-log-action-menu__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:.95rem;background:#38bdf82e;border:1px solid rgba(56,189,248,.35);color:#38bdf8;flex-shrink:0}.diet-log-action-menu__icon svg{width:22px;height:22px}.diet-log-action-menu__content{display:flex;flex-direction:column;gap:.25rem}.diet-log-action-menu__label{font-weight:600;font-size:1rem}.diet-log-action-menu__description{font-size:.85rem;color:#cbd5e1d1}@media (max-width: 640px){.diet-log-header__add{width:2.5rem;height:2.5rem}.diet-log-header__add-icon{width:1.2rem;height:1.2rem}}.diet-quick-fill{display:flex;flex-direction:column;gap:.75rem;background:#0f172a73;border:1px solid rgba(148,163,184,.18);border-radius:1rem;padding:1.25rem 1.5rem}.diet-quick-fill__header h2{margin:0;font-size:1.1rem}.diet-quick-fill__header span{color:#94a3b8;font-size:.9rem}.diet-quick-fill__status{margin:0;color:#e2e8f0d9;font-size:.9rem}.diet-quick-fill__status--error{color:#fda4af}.diet-quick-fill__actions{display:flex;align-items:center;flex-wrap:wrap;gap:.9rem}.diet-quick-fill__browse{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.1rem;border-radius:9999px;border:1px solid rgba(56,189,248,.4);background:linear-gradient(135deg,#0891b28c,#0ea5e959);color:#ecfeff;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.diet-quick-fill__browse:hover,.diet-quick-fill__browse:focus-visible{outline:none;transform:translateY(-1px);border-color:#38bdf8b3;box-shadow:0 12px 24px #0c4a6e47}.diet-quick-fill__browse:disabled{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.diet-quick-fill__selection{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .9rem;background:#0d94882e;border:1px solid rgba(56,189,248,.25);border-radius:.85rem;color:#e2e8f0eb;font-size:.95rem}.diet-quick-fill__clear{background:transparent;border:1px solid rgba(148,163,184,.35);border-radius:9999px;color:#e2e8f0d9;padding:.35rem .9rem;font-size:.85rem;cursor:pointer;transition:border-color .2s ease,color .2s ease}.diet-quick-fill__clear:hover,.diet-quick-fill__clear:focus-visible{outline:none;border-color:#38bdf899;color:#ecfeff}.diet-quick-fill__option{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;padding:.85rem 1rem;border-radius:.85rem;border:1px solid rgba(56,189,248,.25);background:#0d94882e;color:#ecfeff;transition:background .2s ease,transform .2s ease,border-color .2s ease;width:100%}.diet-quick-fill__option:hover,.diet-quick-fill__option:focus-within{background:#0891b252;border-color:#38bdf873;transform:translateY(-1px)}.diet-quick-fill__option-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.diet-quick-fill__option.is-selected{background:#38bdf859;border-color:#38bdf899}.diet-quick-fill__name{font-weight:600;font-size:.95rem}.diet-quick-fill__category{font-size:.85rem;color:#e2e8f0cc}.diet-quick-fill__notes{font-size:.8rem;color:#cbd5e1d9}.diet-quick-fill__totals{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8e6}.diet-quick-fill__option-actions{display:flex;flex-wrap:wrap;gap:.5rem}.diet-quick-fill__action-button{padding:.45rem .95rem;border-radius:999px;border:1px solid transparent;font-size:.82rem;font-weight:500;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease}.diet-quick-fill__action-button:focus-visible{outline:none;box-shadow:0 0 0 2px #38bdf866}.diet-quick-fill__action-button--prefill{background:#0891b247;border-color:#38bdf873;color:#e0f2fe}.diet-quick-fill__action-button--prefill:hover,.diet-quick-fill__action-button--prefill:focus-visible{background:#0891b26b;border-color:#7dd3fccc;transform:translateY(-1px)}.diet-quick-fill__action-button--insert{background:#16a34a38;border-color:#4ade8066;color:#dcfce7}.diet-quick-fill__action-button--insert:hover,.diet-quick-fill__action-button--insert:focus-visible{background:#22c55e61;border-color:#86efacbf;transform:translateY(-1px)}.diet-quick-fill__action-button:disabled{cursor:not-allowed;opacity:.65;transform:none}.quick-fill-modal{display:flex;flex-direction:column;gap:1.25rem}.ai-meal-modal{display:flex;flex-direction:column;gap:1.5rem}.ai-meal-modal__grid{display:grid;gap:1.5rem}.ai-meal-modal__details{display:flex;flex-direction:column;gap:.85rem}.ai-meal-modal__remove-file{align-self:flex-start;padding:.45rem .95rem;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#0f172a99;color:#e2e8f0d9;cursor:pointer;font-size:.85rem;transition:border-color .2s ease,color .2s ease,transform .2s ease}.ai-meal-modal__remove-file:hover,.ai-meal-modal__remove-file:focus-visible{outline:none;border-color:#38bdf880;color:#f8fafc;transform:translateY(-1px)}@media (min-width: 720px){.ai-meal-modal__grid{grid-template-columns:1fr 1fr}}.diet-quick-fill-modal__search{width:100%;margin:0 0 1rem;padding:.7rem .9rem;border-radius:.75rem;border:1px solid rgba(148,163,184,.35);background:#0f172a99;color:#e2e8f0;font-size:.95rem}.diet-quick-fill-modal__search:focus-visible{outline:none;border-color:#38bdf899;box-shadow:0 0 0 3px #38bdf833}.diet-quick-fill-modal__options{display:grid;gap:.75rem;max-height:20rem;overflow-y:auto;padding-right:.25rem;margin-bottom:1rem}.diet-log-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.diet-log-field{display:flex;flex-direction:column;gap:.5rem}.diet-log-field--span{grid-column:1 / -1}.diet-log-field label{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.diet-log-field input,.diet-log-field textarea,.diet-log-field select{border-radius:.75rem;border:1px solid rgba(148,163,184,.25);background-color:#0f172aa6;color:#f8fafc;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.diet-log-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23bae6fd' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M7 10l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.75rem;padding-right:2.5rem;-moz-appearance:none;appearance:none;-webkit-appearance:none}.diet-log-field input[type=date],.diet-log-field input[type=datetime-local]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23bae6fd' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M7 10l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.75rem;padding-right:2.5rem;-moz-appearance:none;appearance:none;-webkit-appearance:none}.diet-log-field input[type=date]::-webkit-calendar-picker-indicator,.diet-log-field input[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:0;width:100%;height:100%;cursor:pointer}.diet-log-field input[type=date]::-ms-expand,.diet-log-field input[type=datetime-local]::-ms-expand{display:none}.diet-log-field input:focus-visible,.diet-log-field textarea:focus-visible,.diet-log-field select:focus-visible{outline:none;border-color:#38bdf899;box-shadow:0 0 0 2px #38bdf833}.diet-log-ingredients{display:flex;flex-direction:column;gap:1rem;background:#1e293b8c;border:1px solid rgba(148,163,184,.2);border-radius:1.25rem;padding:1.5rem}.diet-log-ingredients__header h2{margin:0;font-size:1.1rem}.diet-log-ingredients__header span{color:#94a3b8;font-size:.9rem}.diet-log-ingredient-list{display:flex;flex-direction:column;gap:1.25rem}.diet-log-ingredient{display:flex;flex-direction:column;gap:.75rem;background:#0f172a8c;border-radius:1rem;border:1px solid rgba(56,189,248,.1);padding:1rem}.diet-log-ingredient__main{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.diet-log-ingredient__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.diet-log-ingredient__metrics input,.diet-log-ingredient__main input{border-radius:.75rem;border:1px solid rgba(148,163,184,.2);background:#0f172abf;color:#f8fafc;padding:.65rem .75rem}.diet-log-input{position:relative}.diet-log-input input{width:100%;padding-right:4.25rem}.diet-log-input__label{position:absolute;top:50%;right:.65rem;transform:translateY(-50%);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:#94a3b8d9;background:#0f172aeb;border-radius:999px;padding:.15rem .4rem;border:1px solid rgba(148,163,184,.35);pointer-events:none;transition:color .2s ease,border-color .2s ease,background .2s ease}.diet-log-input input:focus+.diet-log-input__label,.diet-log-input[data-filled=true] .diet-log-input__label,.diet-log-input input:not(:placeholder-shown)+.diet-log-input__label{color:#7dd3fcf2;border-color:#38bdf880;background:#0f172afa}.diet-log-ingredient__remove{align-self:flex-end;background:transparent;border:none;color:#fca5a5;font-weight:500;cursor:pointer;transition:color .2s ease,transform .2s ease}.diet-log-ingredient__remove:hover,.diet-log-ingredient__remove:focus-visible{color:#fecaca;transform:translateY(-1px);outline:none}.diet-log-add{align-self:flex-start;padding:.65rem 1.2rem;border-radius:999px;border:1px solid rgba(56,189,248,.4);background:#38bdf826;color:#e0f2fe;cursor:pointer;transition:background .2s ease,transform .2s ease}.diet-log-add:hover,.diet-log-add:focus-visible{background:#38bdf840;transform:translateY(-1px);outline:none}.diet-log-ai{margin-bottom:2rem}.diet-log-actions{display:flex;flex-wrap:wrap;gap:1.25rem 2.5rem;align-items:stretch;justify-content:space-between}.diet-log-actions__controls{display:flex;align-items:center;gap:.75rem}.diet-log-actions__cta{display:flex;align-items:center;gap:1rem}.diet-log-add-quick-fill{display:inline-flex;align-items:center;gap:.5rem;color:#94a3b8;font-size:.95rem}.diet-log-add-quick-fill input{width:1.1rem;height:1.1rem;accent-color:#38bdf8}.diet-log-image{display:flex;flex-wrap:wrap;gap:1rem;align-items:stretch}.diet-log-image__dropzone{position:relative;display:flex;gap:1rem;align-items:center;padding:1rem 1.25rem;border-radius:1.25rem;border:1px solid rgba(56,189,248,.45);background:linear-gradient(135deg,#1e293bd9,#0f172acc);box-shadow:0 10px 25px -18px #38bdf8cc;color:#e0f2fe;cursor:pointer;min-width:280px;flex:1 1 280px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.diet-log-image__dropzone:hover,.diet-log-image__dropzone:focus-within{transform:translateY(-2px);border-color:#7dd3fce6;box-shadow:0 16px 28px -18px #38bdf8d9}.diet-log-image__dropzone input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.diet-log-image__icon{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:.9rem;background:#38bdf826;color:#7dd3fcf2;flex-shrink:0}.diet-log-image__icon svg{width:1.5rem;height:1.5rem}.diet-log-image__content{display:flex;flex-direction:column;gap:.2rem}.diet-log-image__title{font-size:1.05rem;font-weight:600}.diet-log-image__hint{font-size:.85rem;color:#bfdbfed9}.diet-log-image__action{margin-left:auto;padding:.35rem .8rem;border-radius:999px;border:1px solid rgba(125,211,252,.45);background:#38bdf82e;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#f0f9ff}.diet-log-image__side{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start;justify-content:flex-start;min-width:220px;flex:1 1 240px;max-width:380px;width:100%}.diet-log-image__description-label{font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:#bfdbfecc}.diet-log-image__description{width:100%;min-height:120px;padding:.75rem .9rem;border-radius:.9rem;border:1px solid rgba(148,163,184,.35);background:#0f172ab3;color:#e2e8f0;font-size:.9rem;line-height:1.4;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.diet-log-image__description:focus{outline:none;border-color:#7dd3fccc;box-shadow:0 0 0 1px #7dd3fc59}.diet-log-image__file{max-width:220px;font-size:.85rem;color:#bae6fd;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diet-log-image__side .diet-log-error{margin-top:.25rem}.diet-log-image__analyze{padding:.65rem 1.4rem;border-radius:999px;border:1px solid rgba(56,189,248,.5);background:#38bdf82e;color:#f0f9ff;cursor:pointer;transition:background .2s ease,transform .2s ease}.diet-log-image__analyze:disabled{opacity:.6;cursor:default}.diet-log-image__analyze:not(:disabled):hover,.diet-log-image__analyze:not(:disabled):focus-visible{background:#38bdf847;transform:translateY(-1px);outline:none}.hydration-quick-add{display:flex;flex-direction:column;gap:1.25rem}.hydration-quick-add__header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem}.hydration-quick-add__subtitle{margin:0;color:#94a3b8;font-size:.95rem}.hydration-quick-add__buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.water-glass-button{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;border-radius:1.25rem;border:1px solid rgba(56,189,248,.18);background:#0f172a99;color:inherit;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.water-glass-button:hover,.water-glass-button:focus-visible{transform:translateY(-2px);border-color:#38bdf873;background:#0f172acc;box-shadow:0 20px 46px -32px #38bdf8a6;outline:none}.water-glass-button:disabled{opacity:.6;cursor:progress;border-color:#94a3b833;transform:none;box-shadow:none}.water-glass-button__details{display:flex;flex-direction:column;gap:.15rem;align-items:center;text-align:center}.water-glass-button__amount{font-size:1.1rem;font-weight:600}.water-glass-button__label{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.water-glass-visual{--glass-width: 60px;--glass-height: 72px;--glass-border: 2px;position:relative;display:block;width:var(--glass-width);height:var(--glass-height);border:var(--glass-border) solid rgba(148,163,184,.35);border-radius:calc(var(--glass-width) * .28) calc(var(--glass-width) * .28) calc(var(--glass-width) * .32) calc(var(--glass-width) * .32);background:linear-gradient(135deg,#0f172ad9,#1e293bb3);overflow:hidden;box-shadow:inset 0 0 0 1px #94a3b833}.water-glass-visual:after{content:"";position:absolute;top:12%;left:16%;width:18%;height:60%;background:#e2e8f02e;border-radius:999px;filter:blur(.5px)}.water-glass-visual__water{position:absolute;left:calc(var(--glass-border) * 1.5);right:calc(var(--glass-border) * 1.5);bottom:calc(var(--glass-border) * 1.5);border-radius:calc(var(--glass-width) * .24) calc(var(--glass-width) * .24) calc(var(--glass-width) * .32) calc(var(--glass-width) * .32);background:linear-gradient(135deg,#38bdf8eb,#0ea5e9bf);box-shadow:inset 0 8px 12px -10px #f8fafc73;height:var(--fill-height, 40%);transition:height .3s ease;z-index:1}.water-glass-visual__catchup{position:absolute;left:calc(var(--glass-border) * 1.5);right:calc(var(--glass-border) * 1.5);bottom:calc(var(--glass-border) * 1.5);border-radius:calc(var(--glass-width) * .24) calc(var(--glass-width) * .24) calc(var(--glass-width) * .32) calc(var(--glass-width) * .32);background:linear-gradient(135deg,#60a5fae6,#38bdf8c7);box-shadow:inset 0 10px 16px -14px #f8fafcb3;height:var(--catchup-fill, 0%);opacity:.95;transition:height .3s ease,opacity .3s ease;pointer-events:none;z-index:2}.water-glass-button__icon{--glass-width: 60px;--glass-height: 78px;--glass-border: 2px}.water-glass-visual--small{--glass-width: 34px;--glass-height: 44px;--glass-border: 1.5px}.hydration-quick-add__footer{display:flex;flex-wrap:wrap;gap:1.5rem}.diet-log-water-visual{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.hydration-quick-add__stat{display:flex;flex-direction:column;gap:.25rem}.hydration-quick-add__stat-label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.hydration-quick-add__stat-value{font-size:1.35rem;font-weight:600}.hydration-consumed{display:flex;flex-direction:column;gap:.5rem}.hydration-consumed__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.hydration-consumed__label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;font-weight:600}.hydration-consumed__count{display:inline-flex;align-items:center;justify-content:center;margin-left:.5rem;padding:.1rem .45rem;border-radius:999px;background:#38bdf829;color:#38bdf8;font-size:.7rem;font-weight:600;letter-spacing:.08em}.hydration-consumed__log-link{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;border:1px solid rgba(56,189,248,.4);background:#38bdf82e;color:#0f172a;font-weight:700;text-decoration:none;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.hydration-consumed__log-link:hover,.hydration-consumed__log-link:focus-visible{background:#38bdf847;border-color:#38bdf899;color:#0f172a;transform:translateY(-1px);outline:none}.hydration-consumed__icons{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}.hydration-consumed__icon{display:flex;align-items:flex-end}.hydration-consumed__icon--pending{align-items:center}.hydration-consumed__button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;background:transparent;border:1px solid transparent;color:#a5b4fc;cursor:pointer;padding:.25rem .45rem .5rem;border-radius:.85rem;text-align:center;transition:color .2s ease,transform .2s ease,background .2s ease,opacity .2s ease}.hydration-consumed__button:hover,.hydration-consumed__button:focus-visible{color:#f8fafc;background:#1e40af52;transform:translateY(-2px);outline:none}.hydration-consumed__button:disabled{cursor:wait;opacity:.6;transform:none}.hydration-consumed__button--catchup{color:#f8fafc;background:linear-gradient(135deg,#2563eb4d,#1e293bd1);border-color:#60a5fa61;box-shadow:0 0 0 1px #2563eb3d,0 18px 40px -26px #60a5fad9}.hydration-consumed__button--catchup:hover,.hydration-consumed__button--catchup:focus-visible{background:linear-gradient(135deg,#3b82f675,#1e293bd9);border-color:#60a5fa8c}.hydration-consumed__catchup-tag{font-size:.62rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#e0f2fe;background:linear-gradient(135deg,#1e40af94,#0f172acc);padding:.12rem .55rem;border-radius:999px;border:1px solid rgba(96,165,250,.35);box-shadow:0 12px 28px -22px #60a5fae6;pointer-events:none}.hydration-consumed__pending-amount{font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#dbeafe;background:#1e293bc7;padding:.18rem .6rem;border-radius:999px;pointer-events:none;box-shadow:0 14px 32px -22px #38bdf8bf;border:1px solid rgba(148,163,184,.25)}.hydration-consumed__more{align-self:center;display:flex;flex-direction:column;gap:.2rem;align-items:center;font-size:.85rem;color:#cbd5f5;padding:.2rem .6rem;border-radius:999px;border:1px solid rgba(148,163,184,.25);background:#0f172a99;text-align:center}.hydration-consumed__more-detail{font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe}.hydration-consumed__more--catchup{border-color:#60a5fa66;background:#1e40af52;color:#dbeafe;box-shadow:0 14px 36px -26px #60a5facc}.hydration-consumed__empty{color:#64748b;font-size:.95rem}.water-glass-visual--pending{border-color:#94a3b840;background:linear-gradient(135deg,#1e293bd9,#0f172ab8)}.water-glass-visual--pending .water-glass-visual__water{background:linear-gradient(135deg,#94a3b873,#64748b52)}.water-glass-visual--catchup{border-color:#60a5fa66;box-shadow:inset 0 0 0 1px #3b82f63d}.water-glass-visual--catchup .water-glass-visual__water{background:linear-gradient(135deg,#3b82f694,#2563eb6b)}.water-glass-visual--pending.is-loading{opacity:.6}.water-entry-quick-select{display:flex;flex-wrap:wrap;gap:.75rem}.water-entry-quick-select__button{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.55rem;padding:.6rem .85rem;border-radius:.9rem;border:1px solid rgba(56,189,248,.25);background:#0f172a8c;color:#e0f2fe;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.water-entry-quick-select__button:hover,.water-entry-quick-select__button:focus-visible{border-color:#38bdf873;background:#38bdf82e;transform:translateY(-1px);outline:none}.water-entry-quick-select__button.is-selected{background:linear-gradient(135deg,#38bdf852,#0ea5e933);border-color:#38bdf88c;box-shadow:0 18px 40px -24px #38bdf8cc}.water-entry-quick-select__icon{width:46px;height:58px}.water-entry-quick-select__details{display:flex;flex-direction:column;align-items:center;gap:.15rem}.water-entry-quick-select__amount{font-weight:600}.water-entry-quick-select__label{color:#94a3b8;font-size:.85rem}.diet-log-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem 1.5rem;background:#0f172a99;border-radius:1rem;border:1px solid rgba(148,163,184,.2);padding:.75rem 1.25rem}.diet-log-summary__label{display:block;font-size:.8rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}.diet-log-summary__value{font-size:1rem;font-weight:600}.diet-log-submit{padding:.8rem 1.8rem;border-radius:999px;border:none;background:linear-gradient(135deg,#38bdf84d,#0ea5e933);color:#f8fafc;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.diet-log-cancel{padding:.75rem 1.6rem;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#0f172a99;color:#e2e8f0;font-weight:500;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.diet-log-cancel:hover,.diet-log-cancel:focus-visible{border-color:#38bdf899;box-shadow:0 0 0 2px #38bdf833;transform:translateY(-1px);outline:none}.diet-log-cancel:disabled{opacity:.6;cursor:default;box-shadow:none;transform:none}.diet-log-submit:disabled{opacity:.6;cursor:default}.diet-log-submit:not(:disabled):hover,.diet-log-submit:not(:disabled):focus-visible{transform:translateY(-1px);box-shadow:0 24px 40px -28px #38bdf8a6;outline:none}.diet-log-error{margin-top:1rem;color:#fecaca}.toast-region{position:fixed;top:5.25rem;right:2.5rem;display:flex;flex-direction:column;gap:.75rem;z-index:1200;pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.1rem;border-radius:.9rem;border:1px solid rgba(56,189,248,.4);background:#0f172aeb;box-shadow:0 26px 58px -30px #0f76b8bf;color:#e2e8f0;min-width:240px;pointer-events:auto;animation:toast-in .25s ease forwards}.toast--success{border-color:#2dd4bf99;box-shadow:0 28px 60px -28px #2dd4bf73}.toast__message{flex:1;font-size:.95rem}.toast__dismiss{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;border:1px solid rgba(148,163,184,.25);background:#1e293bcc;color:#cbd5f5;cursor:pointer;font-size:1.1rem;line-height:1;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}.toast__dismiss:hover,.toast__dismiss:focus-visible{border-color:#2dd4bf99;background:#2dd4bf2e;color:#f0fdfa;transform:translateY(-1px);outline:none}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.toast-region{left:1rem;right:1rem;top:4.75rem}.toast{min-width:unset;width:100%}}.feeling-level{display:grid;gap:.65rem}.feeling-level__value{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .85rem;border-radius:999px;border:1px solid rgba(56,189,248,.35);background:#38bdf82e;color:#f8fafc;font-weight:600;font-size:.9rem;width:fit-content}.feeling-level__range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:.5rem;border-radius:999px;background:linear-gradient(90deg,#f8717159,#eab30866,#38bdf880);outline:none;border:1px solid rgba(148,163,184,.25);transition:border-color .2s ease,box-shadow .2s ease}.feeling-level__range::-moz-range-track{height:.5rem;border-radius:999px;background:linear-gradient(90deg,#f8717159,#eab30866,#38bdf880);border:none}.feeling-level__range:hover{border-color:#38bdf880}.feeling-level__range:focus-visible{border-color:#38bdf8cc;box-shadow:0 0 0 3px #38bdf833}.feeling-level__range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.25rem;height:1.25rem;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f8fafc,#38bdf8 70%);border:2px solid rgba(15,23,42,.85);box-shadow:0 6px 18px -8px #38bdf8cc;cursor:pointer;transition:transform .2s ease}.feeling-level__range::-webkit-slider-thumb:hover{transform:scale(1.05)}.feeling-level__range::-moz-range-thumb{width:1.25rem;height:1.25rem;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f8fafc,#38bdf8 70%);border:2px solid rgba(15,23,42,.85);box-shadow:0 6px 18px -8px #38bdf8cc;cursor:pointer;transition:transform .2s ease}.feeling-level__range::-moz-range-thumb:hover{transform:scale(1.05)}.feeling-level__labels{display:flex;justify-content:space-between;font-size:.75rem;color:#94a3b8d9}.feeling-level__label{display:inline-flex;text-align:center;max-width:4.25rem}.feeling-quick-add{display:flex;flex-direction:column;gap:.75rem;background:#1e293b8c;border:1px solid rgba(148,163,184,.25);border-radius:1rem;padding:1rem 1.25rem}.feeling-quick-add__label{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.feeling-quick-add__options{display:flex;flex-wrap:wrap;gap:.75rem}.feeling-quick-add__button{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;min-width:160px;padding:.65rem 1rem;border-radius:.9rem;border:1px solid rgba(56,189,248,.35);background:#0f172abf;color:#e0f2fe;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.feeling-quick-add__button:hover,.feeling-quick-add__button:focus-visible{transform:translateY(-1px);background:#38bdf833;border-color:#38bdf88c;outline:none}.feeling-quick-add__mood{font-weight:600}.feeling-quick-add__type{font-size:.8rem;color:#bae6fdd9;letter-spacing:.02em;text-transform:uppercase}.feeling-log-section-header{display:flex;flex-direction:column;gap:.35rem}.feeling-log-section-header h2{margin:0;font-size:1.15rem;font-weight:600;color:#f8fafc}.feeling-log-section-header span{color:#94a3b8;font-size:.9rem}.feeling-log-empty-state{color:#94a3b8;font-size:.95rem;padding:.75rem 0}.feeling-log-list{display:flex;flex-direction:column;gap:1rem}.feeling-log-entry{background:#1e293b99;border:1px solid rgba(148,163,184,.2);border-radius:1.1rem;padding:1.25rem;display:flex;flex-direction:column;gap:.6rem;box-shadow:0 18px 36px -28px #0f172ad9}.feeling-log-entry__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.feeling-log-entry__mood{font-size:1.1rem;font-weight:600;color:#f8fafc}.feeling-log-entry__time{color:#94a3b8;font-size:.85rem}.feeling-log-entry__details{display:flex;flex-direction:column;gap:.25rem}.feeling-log-entry__actions{display:flex;align-items:center;gap:.45rem}.feeling-log-entry__action{border:1px solid rgba(148,163,184,.35);background:#0f172a73;color:#e2e8f0;font-size:.85rem;font-weight:500;padding:.35rem .95rem;border-radius:999px;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease}.feeling-log-entry__action:hover,.feeling-log-entry__action:focus-visible{border-color:#38bdf899;background:#38bdf82e;color:#f8fafc;outline:none;transform:translateY(-1px)}.feeling-log-entry__action:disabled{opacity:.5;cursor:default;transform:none}.feeling-log-entry__action--delete{width:2.25rem;height:2.25rem;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(248,113,113,.65);background:#f871711f;color:#fecaca;font-size:1.15rem;line-height:1}.feeling-log-entry__action--delete:hover,.feeling-log-entry__action--delete:focus-visible{border-color:#f87171d9;background:#f8717133;color:#fee2e2}.feeling-log-entry--editing{border-color:#38bdf880;box-shadow:0 0 0 1px #38bdf840,0 18px 36px -28px #38bdf880}.feeling-log-entry__type{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .65rem;background:#38bdf82e;border:1px solid rgba(56,189,248,.35);color:#e0f2fef2;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;width:fit-content}.feeling-log-entry__notes{margin:0;color:#cbd5f5;line-height:1.5}.analysis-form{display:flex;flex-direction:column;gap:1.5rem}.analysis-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.analysis-field{display:flex;flex-direction:column;gap:.5rem;color:#cbd5f5}.analysis-field>span:first-child{font-weight:600;color:#e2e8f0}.analysis-field select,.analysis-field input{border-radius:.85rem;border:1px solid rgba(148,163,184,.35);background-color:#0f172ab3;color:#e2e8f0;padding:.7rem .9rem}.analysis-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23bae6fd' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M7 10l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;background-size:.7rem;padding-right:2.35rem;-moz-appearance:none;appearance:none;-webkit-appearance:none}.analysis-field select:focus-visible,.analysis-field input:focus-visible{outline:none;border-color:#38bdf899;box-shadow:0 0 0 3px #38bdf826}.analysis-helper{font-size:.85rem;color:#cbd5e1bf}.analysis-actions{display:flex;justify-content:flex-end}.analysis-submit{border:none;border-radius:9999px;padding:.75rem 1.6rem;background:linear-gradient(135deg,#38bdf88c,#0e749080);color:#f8fafc;font-weight:600;cursor:pointer;box-shadow:0 18px 40px -20px #0891b2bf;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.analysis-submit:hover,.analysis-submit:focus-visible{outline:none;transform:translateY(-2px);background:linear-gradient(135deg,#38bdf8b3,#0e749099);box-shadow:0 22px 54px -22px #0891b2e6}.analysis-results{display:grid;gap:1.5rem}.analysis-meta{display:flex;flex-direction:column;gap:.25rem;color:#cbd5e1bf}.analysis-meta__focus{font-weight:600;color:#e2e8f0}.analysis-card{background:#0f172a8c;border:1px solid rgba(148,163,184,.25);border-radius:1.15rem;padding:1.35rem;display:flex;flex-direction:column;gap:.75rem}.analysis-card h2{margin:0;font-size:1.1rem;color:#f8fafc}.analysis-summary{margin:0;color:#cbd5f5;line-height:1.6}.analysis-list{margin:0;padding-left:1.2rem;display:grid;gap:.45rem;color:#e2e8f0}.analysis-list li{line-height:1.5}.analysis-empty{margin:0;color:#94a3b8cc}.config-form{display:flex;flex-direction:column;gap:1.5rem}.config-card{display:flex;flex-direction:column;gap:1rem;background:#0f172a8c;border:1px solid rgba(148,163,184,.25);border-radius:1.25rem;padding:1.5rem}.config-card__header{display:flex;flex-direction:column;gap:.5rem;color:#cbd5f5}.config-card__header h2{margin:0;font-size:1.15rem;color:#f8fafc}.config-card__timestamp{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8cc}.config-type-list{display:flex;flex-direction:column;gap:.75rem}.config-type-row{display:flex;gap:.75rem;flex-wrap:wrap}.config-type-row input{flex:1;min-width:220px;border-radius:.85rem;border:1px solid rgba(148,163,184,.35);background:#0f172ab3;color:#e2e8f0;padding:.65rem .85rem}.config-type-row input:focus-visible{outline:none;border-color:#38bdf88c;box-shadow:0 0 0 3px #38bdf833}.config-type-remove,.config-type-add{border-radius:9999px;border:1px solid rgba(148,163,184,.35);background:#0f172aa6;color:#e2e8f0;padding:.5rem 1rem;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.config-type-remove:hover,.config-type-remove:focus-visible,.config-type-add:hover,.config-type-add:focus-visible{outline:none;border-color:#38bdf88c;transform:translateY(-1px)}.config-type-add{align-self:flex-start}.config-actions{display:flex;justify-content:flex-end}.config-submit{border:none;border-radius:9999px;padding:.75rem 1.6rem;background:linear-gradient(135deg,#38bdf88c,#3b82f673);color:#f8fafc;font-weight:600;cursor:pointer;box-shadow:0 20px 50px -25px #38bdf8cc;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.config-submit:hover,.config-submit:focus-visible{outline:none;transform:translateY(-2px);background:linear-gradient(135deg,#38bdf8b3,#3b82f699);box-shadow:0 24px 58px -24px #38bdf8e6}.diet-log-actions-bar{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.diet-log-action-link{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:1.1rem;text-decoration:none;background:linear-gradient(135deg,#1e293bd9,#0f172acc);border:1px solid rgba(56,189,248,.25);color:#e0f2fe;box-shadow:0 20px 45px -30px #38bdf8b3;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.diet-log-action-link:hover,.diet-log-action-link:focus-visible{transform:translateY(-2px);border-color:#38bdf873;box-shadow:0 26px 54px -28px #38bdf8d9;outline:none}.diet-log-action-link__icon{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:1rem;background:#38bdf824;border:1px solid rgba(56,189,248,.35);color:#38bdf8}.diet-log-action-link__icon svg{width:28px;height:28px}.diet-log-action-link__plus{position:absolute;top:-10px;right:-10px;width:24px;height:24px;border-radius:999px;background:#38bdf8;color:#0f172a;display:grid;place-items:center;font-size:.9rem;font-weight:700;box-shadow:0 12px 28px -16px #38bdf8e6}.diet-log-action-link__content{display:flex;flex-direction:column;gap:.25rem}.diet-log-action-link__label{font-size:1.05rem;font-weight:600}.diet-log-action-link__description{color:#94a3b8;font-size:.9rem}.diet-log-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.diet-log-summary-card{background:#0f172a99;border:1px solid rgba(56,189,248,.18);border-radius:1.1rem;padding:1.2rem;display:flex;flex-direction:column;gap:.4rem}.diet-log-summary-card__label{font-size:.85rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}.diet-log-summary-card__value{font-size:1.4rem;font-weight:600}.diet-log-summary-card__goal-text{display:block;margin-top:.15rem;font-size:.85rem;font-weight:500;color:#94a3b8e6}.diet-log-summary-card__progress-row{display:flex;align-items:center;gap:.75rem;margin-top:.35rem}.diet-log-summary-card__progress-value{font-size:.85rem;font-weight:600;color:#e0f2fe;min-width:3.25rem}.diet-log-summary-card__progress{position:relative;flex:1;height:.35rem;border-radius:999px;background:#94a3b838;overflow:hidden}.diet-log-summary-card__progress-fill{position:absolute;top:0;right:0;bottom:0;left:0;width:0%;border-radius:inherit;background:linear-gradient(135deg,#38bdf8e6,#0ea5e9a6);transition:width .3s ease}.diet-log-summary-card__hint{font-size:.85rem;color:#cbd5f5}.diet-log-section{margin-top:2rem;display:flex;flex-direction:column;gap:1.5rem;min-width:0}.diet-log-list{display:grid;gap:1.5rem}.diet-log-card{background:#0f172aa6;border:1px solid rgba(148,163,184,.18);border-radius:1.25rem;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;width:100%;max-width:100%;box-sizing:border-box}.diet-log-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.diet-log-card__meta{display:flex;align-items:flex-start;justify-content:flex-end;gap:.75rem;flex-wrap:nowrap;margin-left:auto;min-width:fit-content;text-align:right}.diet-log-card__actions{position:relative;display:flex;align-items:center;gap:.5rem;align-self:flex-start}.diet-log-card__type{display:inline-block;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#38bdf8;margin-bottom:.3rem}.diet-log-card__timestamp{color:#94a3b8;font-size:.9rem;line-height:1.2}.diet-log-card__menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:.95rem;border:1px solid rgba(56,189,248,.4);background:#0f172abf;color:#e0f2fe;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}.diet-log-card__menu-trigger:hover,.diet-log-card__menu-trigger:focus-visible{border-color:#38bdf8bf;background:#38bdf838;transform:translateY(-1px);outline:none;box-shadow:0 12px 30px -18px #38bdf899}.diet-log-card__menu-icon{width:1.35rem;height:1.35rem}.diet-log-card__menu{position:absolute;top:calc(100% + .6rem);right:0;min-width:12rem;padding:.5rem;border-radius:.95rem;border:1px solid rgba(56,189,248,.25);background:#0f172aeb;box-shadow:0 24px 48px -32px #0f766e8c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;gap:.25rem;z-index:5}.diet-log-card__menu-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .65rem;border-radius:.7rem;border:none;background:transparent;color:#e2e8f0;font-size:.9rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.diet-log-card__menu-item:hover,.diet-log-card__menu-item:focus-visible{background:#38bdf829;color:#f8fafc;transform:translateY(-1px);outline:none}.diet-log-card__menu-item:disabled{cursor:wait;opacity:.6;transform:none}.diet-log-card__menu-item-icon{width:1.1rem;height:1.1rem;color:inherit}.diet-log-card__menu-item-label{flex:1;text-align:left}.diet-log-card__menu-item--danger{color:#fecaca}.diet-log-card__menu-item--danger:hover,.diet-log-card__menu-item--danger:focus-visible{background:#f871712e;color:#fee2e2}.diet-log-card__notes{margin:0;color:#cbd5f5}.diet-log-card__ingredients{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;color:#e2e8f0}.diet-log-card__ingredient-metrics{display:block;color:#94a3b8;font-size:.85rem;margin-top:.25rem}.diet-log-card__totals{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;color:#94a3b8;font-size:.9rem}.diet-log-card__totals--water-only{gap:.5rem;color:#bae6fd}.diet-log-card__totals--water-only .diet-log-card__totals-water{color:inherit}.diet-log-card__totals-water{display:inline-flex;align-items:center;gap:.4rem;color:#bae6fd}.diet-log-card__water-icon{width:1rem;height:1rem;color:#38bdf8}.diet-log-list__actions{display:flex;justify-content:center;margin-top:1rem}.diet-log-list__more{padding:.65rem 1.35rem;border-radius:999px;border:1px solid rgba(56,189,248,.35);background:#0f172abf;color:#e0f2fe;font-weight:600;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.diet-log-list__more:hover,.diet-log-list__more:focus-visible{border-color:#38bdf899;background:#38bdf83d;transform:translateY(-1px);outline:none}.diet-log-daily{display:grid;gap:.75rem}.diet-log-daily__item{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem;background:#0f172a8c;border:1px solid rgba(148,163,184,.18);border-radius:1rem;padding:.75rem 1rem;color:#cbd5f5}.diet-log-daily__date{font-weight:600;color:#f8fafc}@media (max-width: 768px){.diet-log-actions{flex-direction:column;align-items:stretch}.diet-log-summary{width:100%}.diet-log-image{flex-direction:column;align-items:flex-start}.diet-log-actions__cta{flex-direction:column;align-items:stretch}.diet-log-add-quick-fill{justify-content:space-between}}.diagnostics-entry-message{font-size:1rem;color:#e2e8f0;word-break:break-word}.diagnostics-meta{display:grid;gap:.75rem}.diagnostics-meta div{display:grid;gap:.3rem}.diagnostics-meta dt{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8cc}.diagnostics-meta dd{margin:0;color:#cbd5f5;word-break:break-word}.diagnostics-stack pre,.diagnostics-response pre{margin:0;background:#0f172ab3;padding:1rem;border-radius:.75rem;overflow-x:auto;font-size:.85rem;line-height:1.4}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.back-button{display:inline-flex;align-items:center;gap:.55rem;color:#e2e8f0;text-decoration:none;font-weight:500;letter-spacing:.01em;border:1px solid rgba(148,163,184,.35);padding:.45rem .95rem .45rem .75rem;border-radius:999px;background:#0f172a8c;box-shadow:0 18px 36px -28px #0f766ebf;transition:background .2s ease,transform .2s ease,border-color .2s ease,color .2s ease}.back-button:hover,.back-button:focus-visible{background:#38bdf82e;border-color:#38bdf88c;color:#f8fafc;transform:translateY(-1px);outline:none}.back-button__icon{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:999px;background:#38bdf829;color:#38bdf8;transition:background .2s ease,color .2s ease}.back-button:hover .back-button__icon,.back-button:focus-visible .back-button__icon{background:#38bdf847;color:#f8fafc}.back-button__label{font-size:.9rem}.section-header__details{display:flex;flex-direction:column;gap:.35rem}.flare-ups-new-entry{padding:.65rem 1.5rem;border-radius:999px;border:1px solid rgba(56,189,248,.45);background:#38bdf82e;color:#f8fafc;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.flare-ups-new-entry:hover,.flare-ups-new-entry:focus-visible{background:#38bdf84d;transform:translateY(-1px);box-shadow:0 20px 42px -30px #38bdf8a6;outline:none}.flare-ups-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding:1.75rem;background:#0f172abf;border:1px solid rgba(148,163,184,.2);border-radius:1.25rem;box-shadow:0 24px 60px -40px #0f172af2}.flare-ups-form-header{display:flex;align-items:flex-start;gap:1rem;padding-bottom:1.25rem;border-bottom:1px solid rgba(148,163,184,.2)}.flare-ups-form-header__icon{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:.9rem;background:linear-gradient(135deg,#38bdf840,#0ea5e933);color:#38bdf8;flex-shrink:0;box-shadow:inset 0 1px #ffffff14}.flare-ups-form-header__icon svg{width:1.5rem;height:1.5rem}.flare-ups-form-title{margin:0;font-size:1.15rem;font-weight:600;letter-spacing:.015em;color:#f1f5f9}.flare-ups-form-subtitle{margin:.35rem 0 0;color:#cbd5e1cc;line-height:1.5;font-size:.95rem}.flare-ups-form-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.flare-ups-field{display:flex;flex-direction:column;gap:.5rem;color:#cbd5f5}.flare-ups-field span{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8bf}.flare-ups-field input,.flare-ups-field textarea{border-radius:.75rem;border:1px solid rgba(148,163,184,.35);background:#0f172ae6;color:#f8fafc;padding:.75rem 1rem;font:inherit;transition:border-color .2s ease,box-shadow .2s ease}.flare-ups-field input::placeholder,.flare-ups-field textarea::placeholder{color:#94a3b8b3}.flare-ups-field input:focus-visible,.flare-ups-field textarea:focus-visible{outline:none;border-color:#38bdf88c;box-shadow:0 0 0 3px #38bdf82e}.flare-ups-field textarea{resize:vertical;min-height:120px}.flare-ups-field-helper{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8a6}.flare-ups-field--full{grid-column:1 / -1}.flare-ups-form-actions{display:flex;justify-content:flex-end}.flare-ups-submit{padding:.75rem 1.75rem;border-radius:999px;border:1px solid rgba(56,189,248,.55);background:linear-gradient(135deg,#38bdf866,#0ea5e933);color:#f8fafc;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.flare-ups-submit:hover:not(:disabled),.flare-ups-submit:focus-visible:not(:disabled){background:linear-gradient(135deg,#38bdf88c,#0ea5e947);transform:translateY(-1px);box-shadow:0 24px 48px -34px #38bdf8b3;outline:none}.flare-ups-submit:disabled{opacity:.65;cursor:wait}.flare-ups-error{color:#fca5a5;margin:0}.section-title{font-size:1.75rem;font-weight:600}.section-description{color:#94a3b8}.card-grid{display:grid;gap:1.5rem}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.sidebar{padding:1.5rem;align-items:flex-start;gap:1.5rem}.nav{width:100%;gap:.85rem}.nav-item{width:100%;justify-content:flex-start}}.metric-card{background:#1e293bcc;padding:1.5rem;border-radius:1.25rem;display:flex;flex-direction:column;gap:.5rem;border:1px solid rgba(148,163,184,.15);transition:transform .2s ease,box-shadow .2s ease}.metric-card--flat{background:#0f172a8c;border:1px solid rgba(148,163,184,.25)}.metric-card:hover{transform:translateY(-4px);box-shadow:0 24px 40px -30px #38bdf8b3}.metric-label{font-size:.9rem;color:#94a3b8}.metric-value{font-size:2rem;font-weight:700}.metric-trend{font-size:.85rem;color:#38bdf8}.highlight-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:.75rem}.highlight-list li{display:flex;gap:.75rem;align-items:center}.highlight-list li:before{content:"•";color:#38bdf8}.timeline{display:flex;flex-direction:column;gap:1.5rem}.timeline-item{display:grid;grid-template-columns:140px 1fr;gap:1.5rem;align-items:start}.timeline-date{color:#38bdf8;font-weight:600;letter-spacing:.05em}.timeline-content{background:#1e293bcc;border-radius:1rem;padding:1.5rem;border:1px solid rgba(148,163,184,.12);display:flex;flex-direction:column;gap:.75rem}.timeline-content-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.flare-ups-entry-actions{display:flex;align-items:center;gap:.5rem}.flare-ups-edit{background:#38bdf829;border:1px solid rgba(56,189,248,.45);color:#e0f2fe;border-radius:999px;padding:.35rem .9rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.flare-ups-edit:hover,.flare-ups-edit:focus-visible{background:#38bdf847;box-shadow:0 12px 26px -20px #38bdf88c;transform:translateY(-1px);outline:none}.flare-ups-edit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.timeline-content-header h3{margin:0}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.35rem .75rem;border-radius:999px;background:#94a3b833;color:#e2e8f0;font-size:.75rem;border:1px solid rgba(148,163,184,.2)}.chip-warning{background:#f9731633;border-color:#f9731666}.chip-success{background:#22c55e33;border-color:#22c55e66}.flare-ups-delete{background:#ef44441f;border:1px solid rgba(248,113,113,.3);color:#fca5a5;border-radius:999px;padding:.35rem .85rem;font-size:.75rem;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.flare-ups-delete:hover,.flare-ups-delete:focus-visible{transform:translateY(-1px);box-shadow:0 10px 25px #ef444440}.flare-ups-delete:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ab3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;padding:2rem;z-index:20}.modal{width:min(420px,100%);background:linear-gradient(135deg,#1e293be6,#0f172af2);border:1px solid rgba(56,189,248,.25);border-radius:1.5rem;padding:2rem;box-shadow:0 28px 70px -40px #0891b2d9;display:flex;flex-direction:column;gap:1.25rem;color:#e2e8f0;position:relative}.modal--wide{width:min(720px,95%);max-height:calc(100vh - 4rem);overflow-y:auto}.modal-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#f8717126;border:1px solid rgba(248,113,113,.35);color:#fca5a5}.modal-icon svg{width:32px;height:32px}.modal-title{margin:0;font-size:1.4rem;font-weight:600}.modal-description{margin:0;color:#cbd5f5;line-height:1.5}.modal-close{position:absolute;top:1rem;right:1rem;width:2.25rem;height:2.25rem;border-radius:999px;border:1px solid rgba(148,163,184,.3);background:#0f172aa6;color:#e2e8f0;display:grid;place-items:center;font-size:1.35rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.modal-close:hover:not(:disabled),.modal-close:focus-visible:not(:disabled){background:#38bdf82e;border-color:#38bdf880;box-shadow:0 14px 36px -30px #38bdf88c;transform:translateY(-1px);outline:none}.modal-close:disabled{opacity:.6;cursor:wait}.modal-error{margin:0;color:#fca5a5;font-weight:500}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.modal-button{padding:.65rem 1.4rem;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#1e293bbf;color:#e2e8f0;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.modal-button:hover:not(:disabled),.modal-button:focus-visible:not(:disabled){background:#38bdf82e;border-color:#38bdf880;box-shadow:0 18px 40px -32px #38bdf88c;transform:translateY(-1px);outline:none}.modal-button:disabled{opacity:.65;cursor:wait}.modal-button--primary{background:linear-gradient(135deg,#38bdf873,#0ea5e98c);border-color:#38bdf899;color:#0f172a;box-shadow:0 20px 48px -32px #38bdf8b3}.modal-button--primary:hover:not(:disabled),.modal-button--primary:focus-visible:not(:disabled){background:linear-gradient(135deg,#7dd3fcbf,#0ea5e9a6);border-color:#38bdf8d9;color:#082f49}.modal-button--primary:disabled{opacity:.7;cursor:wait;box-shadow:none}.modal-button--danger{background:#ef444429;border-color:#f8717173;color:#fecaca}.modal-button--danger:hover:not(:disabled),.modal-button--danger:focus-visible:not(:disabled){background:#ef444440;border-color:#f8717199;box-shadow:0 20px 48px -36px #f871718c}@media (max-width: 640px){.modal{padding:1.75rem}.modal-close{top:.75rem;right:.75rem}.modal-actions{flex-direction:column;align-items:stretch}.modal-button{width:100%}}.meal-card{background:#1e293bcc;padding:1.75rem;border-radius:1.25rem;border:1px solid rgba(148,163,184,.15);display:flex;flex-direction:column;gap:1rem}.meal-card h3{font-size:1.2rem;margin:0}.meal-card p{color:#94a3b8}@media (max-width: 720px){.timeline-item{grid-template-columns:1fr}.timeline-date{font-size:.9rem}}.nested-section{margin-top:2rem;background:#0f172aa6;border-radius:1.25rem;padding:1.5rem;border:1px solid rgba(148,163,184,.12);display:flex;flex-direction:column;gap:1rem;min-width:0}.dashboard-section{display:flex;flex-direction:column;gap:1rem}.dashboard-section--primary{margin-bottom:2rem}.dashboard-diet-group{display:grid;gap:1.75rem}.dashboard-section--diet{padding:0}.dashboard-section--flat{padding:0;background:transparent;border:none}.dashboard-section__header{display:flex;flex-direction:column;gap:.4rem}.dashboard-section__title{margin:0;font-size:1.35rem;font-weight:600}.dashboard-section__description{color:#94a3b8;font-size:.95rem}.dashboard-section__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.dashboard-section__grid--flat{gap:1rem}.diet-goals-intro{display:flex;flex-direction:column;gap:.5rem;color:#cbd5f5}.diet-goals-intro p{margin:0}.diet-goals-updated{color:#94a3b8;font-size:.9rem}.diet-goals-form{display:flex;flex-direction:column;gap:1.5rem}.diet-goals-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.diet-goals-field{display:flex;flex-direction:column;gap:.5rem}.diet-goals-field label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8d9}.diet-goals-field input{border-radius:.75rem;border:1px solid rgba(148,163,184,.35);background:#0f172ae6;color:#f8fafc;padding:.75rem 1rem;font:inherit;transition:border-color .2s ease,box-shadow .2s ease}.diet-goals-field input:focus-visible{outline:none;border-color:#38bdf88c;box-shadow:0 0 0 3px #38bdf82e}.diet-goals-helper{color:#94a3b8;font-size:.8rem}.diet-goals-error{color:#fca5a5;margin:0}.diet-goals-actions{display:flex;justify-content:flex-end}.diet-goals-submit{padding:.75rem 1.75rem;border-radius:999px;border:1px solid rgba(56,189,248,.55);background:linear-gradient(135deg,#38bdf866,#0ea5e933);color:#f8fafc;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.diet-goals-submit:hover:not(:disabled),.diet-goals-submit:focus-visible:not(:disabled){background:linear-gradient(135deg,#38bdf88c,#0ea5e947);transform:translateY(-1px);box-shadow:0 24px 48px -34px #38bdf8b3;outline:none}.diet-goals-submit:disabled{opacity:.65;cursor:wait}*{box-sizing:border-box}a{color:inherit}body,h1,h2,h3,h4,h5,h6,p{margin:0}button{font:inherit}
