@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.z-50{z-index:50}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.h-full{height:100%}.min-h-full{min-height:100%}.w-full{width:100%}.flex-1{flex:1}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-solid{--tw-border-style:solid;border-style:solid}.text-center{text-align:center}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}@media (hover:hover){.hover\:border-transparent:hover{border-color:#0000}.hover\:bg-\[\#383838\]:hover{background-color:#383838}}@media (prefers-color-scheme:dark){.dark\:invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}@media (hover:hover){.dark\:hover\:bg-\[\#1a1a1a\]:hover{background-color:#1a1a1a}.dark\:hover\:bg-\[\#ccc\]:hover{background-color:#ccc}}}:root{--bg-primary:#fafaf8;--bg-secondary:#f2f0eb;--bg-card:#fff;--bg-card-alt:#ede0d4;--green-strong:#2d6a4f;--green-medium:#52b788;--green-soft:#d8f3dc;--earth-dark:#5c4033;--earth-medium:#a07850;--earth-soft:#ede0d4;--violet:#6d4ec2;--violet-soft:#ede9f8;--text-primary:#1a1a18;--text-secondary:#6b6b5f;--text-tertiary:#a8a89a;--border:#e8e6e0;--border-strong:#c8c4bc;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--nav-height:64px;--bottom-nav-height:72px}[data-theme=dark]{--bg-primary:#141412;--bg-secondary:#1e1d1a;--bg-card:#272521;--bg-card-alt:#2e2b27;--text-primary:#f5f5f0;--text-secondary:#a8a89a;--text-tertiary:#6b6b5f;--border:#2e2c28;--border-strong:#3e3c38;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:DM Sans,sans-serif}body{background:var(--bg-primary);min-height:100vh}.app-shell{background:var(--bg-primary);max-width:480px;min-height:100vh;margin:0 auto;position:relative}.page-content{padding:var(--nav-height) 20px var(--bottom-nav-height) 20px;padding-top:calc(var(--nav-height) + 16px)}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:16px}.card-alt{background:var(--bg-secondary);border-radius:var(--radius-lg);border:none;padding:16px}.btn-primary{background:var(--green-strong);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;padding:14px 24px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:500;transition:background .15s,transform .1s}.btn-primary:hover{background:#245e44}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background:var(--text-tertiary);cursor:not-allowed}.btn-secondary{color:var(--green-strong);border:1.5px solid var(--green-strong);border-radius:var(--radius-md);cursor:pointer;background:0 0;width:100%;padding:14px 24px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:500;transition:background .15s}.btn-secondary:hover{background:var(--green-soft)}.btn-premium{background:var(--violet);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;padding:14px 24px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:500;transition:background .15s}.btn-ghost{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:8px 12px;font-family:DM Sans,sans-serif;font-size:14px}.progress-track{background:var(--border);border-radius:99px;height:10px;overflow:hidden}.progress-fill{border-radius:99px;height:100%;transition:width .4s}.progress-calories{background:var(--green-strong)}.progress-protein{background:var(--green-medium)}.progress-water{background:var(--violet)}.input{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--bg-card);width:100%;color:var(--text-primary);outline:none;padding:12px 14px;font-family:DM Sans,sans-serif;font-size:15px;transition:border-color .15s}.input:focus{border-color:var(--green-strong)}.select{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--bg-card);width:100%;color:var(--text-primary);appearance:none;cursor:pointer;outline:none;padding:12px 14px;font-family:DM Sans,sans-serif;font-size:15px}.label{color:var(--text-secondary);letter-spacing:.01em;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.section-title{color:var(--text-primary);margin-bottom:4px;font-family:Fraunces,serif;font-size:22px;font-weight:300}.section-subtitle{color:var(--text-tertiary);margin-bottom:20px;font-size:13px}.badge{border-radius:99px;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.badge-green{background:var(--green-soft);color:var(--green-strong)}.badge-violet{background:var(--violet-soft);color:var(--violet)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.3s forwards fadeIn}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:.4s forwards slideUp}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
