:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f7f5;--surface:#fff;--border:#e2e0da;--text:#22201b;--muted:#6b6860;--accent:#2e6b46;--danger:#c0392b;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{margin:0;overflow-x:hidden}body{background:var(--bg);color:var(--text)}.app-shell{flex-direction:column;max-width:640px;min-height:100vh;margin:0 auto;display:flex}header{padding:1rem 1.25rem .5rem}header h1{margin:0;font-size:1.25rem}nav{border-bottom:1px solid var(--border);scrollbar-width:none;gap:.5rem;padding:0 1.25rem .75rem;display:flex;overflow-x:auto}nav::-webkit-scrollbar{display:none}nav a{color:var(--muted);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.4rem .75rem;font-size:.9rem;text-decoration:none}nav a.active{background:var(--accent);color:#fff}main{flex:1;padding:1.25rem}.page{flex-direction:column;gap:1.5rem;display:flex}.field{flex-direction:column;gap:.35rem;margin-bottom:.5rem;display:flex}.field label{color:var(--muted);font-size:.85rem}.radio-field{flex-direction:row;align-items:center;gap:1.25rem}.radio-field label{color:var(--text);align-items:center;gap:.35rem;display:flex}input[type=text],input[type=number],input[type=date],select{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:.5rem .6rem;font-size:1rem}button{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:.5rem .9rem;font-size:.9rem}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;align-self:flex-start}button.link{color:var(--accent);background:0 0;border:none;padding:0;text-decoration:underline}.stepper{align-items:stretch;gap:.5rem;display:flex}.stepper input[type=number]{text-align:center;-moz-appearance:textfield;width:4rem}.stepper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper-btn{flex-shrink:0;width:2.75rem;padding:0;font-size:1.25rem;font-weight:600;line-height:1}.entry-form{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.search-results{border:1px solid var(--border);border-radius:8px;max-height:240px;margin:0;padding:0;list-style:none;overflow-y:auto}.search-results li button{border:none;border-bottom:1px solid var(--border);text-align:left;background:var(--surface);border-radius:0;justify-content:space-between;width:100%;display:flex}.search-results li:last-child button{border-bottom:none}.food-cat{color:var(--muted);font-size:.8rem}.search-results .empty{color:var(--muted);padding:.6rem}.selected-food{align-items:center;gap:.75rem;display:flex}.rae-preview{font-size:.95rem}.no-data{color:var(--muted);font-style:italic}.day-summary h2,.page h2{margin:0 0 .5rem;font-size:1.1rem}.total{background:#eef4ee;border-radius:8px;align-items:center;gap:.6rem;margin-bottom:.75rem;padding:.6rem .8rem;font-weight:600;display:flex}.total.over{color:var(--danger);background:#fbeceb}.badge{background:var(--danger);color:#fff;border-radius:999px;padding:.15rem .5rem;font-size:.75rem}.entry-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.entry-list li{background:var(--surface);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;padding:.6rem .75rem;display:flex}.entry-rae{align-items:center;gap:.75rem;display:flex}.entry-edit{align-items:center;gap:.5rem;display:flex}.entry-edit input[type=number]{text-align:center;width:4.5rem}.muted{color:var(--muted);font-size:.85rem}.empty{color:var(--muted);font-style:italic}.food-detail h3{margin:0 0 .25rem}.food-detail h4{margin:1rem 0 .4rem;font-size:.95rem}.nutrient-list{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:0;margin:.75rem 0 0;display:flex}.nutrient-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:.75rem;padding:.55rem .75rem;display:flex}.nutrient-row:first-child{border-radius:8px 8px 0 0}.nutrient-row:last-child{border-bottom:none;border-radius:0 0 8px 8px}.nutrient-row dt{color:var(--muted)}.nutrient-row dd{text-align:right;margin:0;font-weight:600}.nutrient-row-highlight{background:#eef4ee}.nutrient-row-highlight dt,.nutrient-row-highlight dd{color:var(--accent)}.portion-list{margin:0;padding-left:1.1rem}.source-note{margin-top:1rem}.vitamin-a-list{border:1px solid var(--border);border-radius:8px;max-height:420px;margin:.75rem 0 0;padding:0;list-style:none;overflow-y:auto}.vitamin-a-list li button{border:none;border-bottom:1px solid var(--border);text-align:left;background:var(--surface);border-radius:0;align-items:center;gap:.6rem;width:100%;padding:.55rem .75rem;display:flex}.vitamin-a-list li:last-child button{border-bottom:none}.va-color-dot{border-radius:50%;flex-shrink:0;width:.7rem;height:.7rem}.vitamin-a-list .food-name{flex:1}.va-value{white-space:nowrap;font-size:.85rem;font-weight:600}.va-list-divider{color:var(--muted);background:var(--bg);border-bottom:1px solid var(--border);padding:.4rem .75rem;font-size:.75rem}.info-tooltip-wrap{display:inline-block;position:relative}.info-tooltip-trigger{border:1px solid var(--muted);width:1.15rem;height:1.15rem;color:var(--muted);background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:Georgia,Times New Roman,serif;font-size:.7rem;font-style:italic;line-height:1;display:inline-flex}.info-tooltip-bubble{z-index:20;background:var(--text);color:#fff;border-radius:8px;width:max-content;max-width:min(240px,100vw - 2.5rem);padding:.5rem .6rem;font-size:.78rem;font-weight:400;line-height:1.35;display:none;position:absolute;bottom:calc(100% + .4rem);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.info-tooltip-wrap:hover .info-tooltip-bubble,.info-tooltip-wrap.is-open .info-tooltip-bubble{display:block}.range-buttons{gap:.4rem;margin-bottom:.75rem;display:flex}.custom-range-fields{gap:1rem;margin-bottom:.75rem;display:flex}.range-buttons button.active{background:var(--accent);border-color:var(--accent);color:#fff}section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem}section h3{margin-top:0}.import-confirm{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.status{color:var(--accent);font-size:.9rem}@media (width<=480px){main{padding:.85rem}header{padding:.85rem 1rem .5rem}nav{gap:.35rem;padding:0 1rem .65rem}nav a{padding:.5rem .7rem;font-size:.85rem}button{padding:.65rem 1rem;font-size:.95rem}input[type=text],input[type=number],input[type=date],select{padding:.65rem .7rem;font-size:1rem}.stepper-btn{width:3rem;height:3rem;font-size:1.4rem}.search-results li button{flex-direction:column;align-items:flex-start;gap:.15rem;padding:.75rem .6rem}.total,.range-buttons{flex-wrap:wrap}.range-buttons button{flex:auto}.custom-range-fields{flex-wrap:wrap}.custom-range-fields .field{flex:45%}.entry-list li{flex-wrap:wrap;row-gap:.4rem}.import-confirm button{flex:auto}}
