.date-actions{justify-items:end;gap:6px;display:grid}.date-control{align-items:center;gap:6px;display:flex}.date-step-button,.date-picker{color:#3e4942;background:#fff;border:1px solid #d9ded9}.date-step-button{border-radius:50%;flex:none;place-items:center;width:36px;height:36px;padding:0;font-size:1.45rem;line-height:1;display:grid}.date-picker{cursor:pointer;border-radius:999px;padding:9px 12px;font-size:.84rem;font-weight:700;position:relative;overflow:hidden}.date-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.today-button{color:#497255;background:0 0;border:0;padding:0 4px;font-size:.72rem;font-weight:800}.meal-entry-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.meal-entry-row .meal-entry-main{min-width:0}.entry-edit-button{color:#386a46;background:#edf4ed;border:0;border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:800}.select-input{color:#1e2520;background:#fff;border:1px solid #cfd6cf;border-radius:12px;outline:none;width:100%;padding:12px 13px;font-size:16px}.select-input:focus{border-color:#5a7b62;box-shadow:0 0 0 3px #5a7b621f}.edit-field-label{margin-top:14px}.edit-nutrients{background:#f7f8f6;border:1px solid #e5e9e4;border-radius:14px;margin-top:14px;padding:12px}.edit-note{color:#748078;margin:10px 2px 0;font-size:.7rem;line-height:1.5}.delete-button{color:#a13d33;background:#fff6f5;border:1px solid #efc8c4;border-radius:12px;width:100%;margin-top:9px;padding:11px 14px;font-weight:800}.delete-button:disabled,.close-button:disabled{opacity:.55;cursor:not-allowed}@media (width<=520px){.pr4-header{flex-direction:column;align-items:flex-start}.date-actions{justify-items:stretch;width:100%}.date-control{width:100%}.date-picker{text-align:center;flex:1}.today-button{justify-self:end}}:root{color:#1e2520;font-synthesis:none;text-rendering:optimizelegibility;background:#f6f7f4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{background:#f6f7f4;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{width:min(100%,720px);margin:0 auto;padding:24px 16px 48px}.app-header{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.eyebrow{color:#68746c;letter-spacing:.12em;margin:0 0 4px;font-size:.72rem;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:-.04em;margin-bottom:0;font-size:clamp(1.7rem,7vw,2.2rem)}.date-button{color:#3e4942;background:#fff;border:1px solid #d9ded9;border-radius:999px;flex:none;padding:9px 12px;font-size:.84rem;font-weight:700}.summary-card,.meal-card,.export-card{background:#fff;border:1px solid #e1e5e1;box-shadow:0 8px 24px #1e25200a}.summary-card{border-radius:20px;padding:18px}.summary-title{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.summary-title p{color:#68746c;margin-bottom:3px;font-size:.82rem;font-weight:700}.summary-title strong{letter-spacing:-.04em;font-size:1.8rem}.summary-badge{color:#3d6848;background:#edf4ed;border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:800}.nutrient-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.nutrient{text-align:center;background:#f6f7f4;border-radius:14px;min-width:0;padding:12px 10px}.nutrient-label{color:#68746c;text-overflow:ellipsis;white-space:nowrap;margin-bottom:5px;font-size:.72rem;font-weight:700;display:block;overflow:hidden}.nutrient strong{font-size:1.05rem}.nutrient-unit{color:#68746c;margin-left:2px;font-size:.68rem}.page-error,.loading-message{border-radius:12px;margin:12px 2px 0;padding:10px 12px;font-size:.78rem}.page-error{color:#9b342a;background:#fff0ee}.loading-message{color:#5e6a62;background:#eef3ee}.meal-list{gap:12px;margin-top:14px;display:grid}.meal-card{border-radius:18px;padding:16px}.meal-heading,.meal-heading>div{align-items:center;display:flex}.meal-heading{justify-content:space-between;gap:12px}.meal-heading>div{gap:8px}.meal-icon{font-size:1.15rem}h2{margin-bottom:0;font-size:1rem}.meal-calories{color:#68746c;font-size:.78rem;font-weight:700}.empty-state{background:#f8f9f7;border-radius:13px;margin:14px 0;padding:12px}.empty-state p{margin-bottom:3px;font-size:.86rem;font-weight:750}.empty-state span,.export-card span{color:#748078;font-size:.76rem;line-height:1.55}.meal-entry-list{gap:8px;margin:14px 0;display:grid}.meal-entry{background:#f8f9f7;border-radius:13px;padding:11px 12px}.meal-entry-main{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.meal-entry-main strong{overflow-wrap:anywhere;min-width:0;font-size:.87rem}.meal-entry-main span{color:#526057;flex:none;font-size:.76rem;font-weight:750}.meal-entry p{color:#748078;margin:4px 0 0;font-size:.7rem;line-height:1.5}.add-button,.export-button,.save-button{border:0;border-radius:12px;width:100%;padding:11px 14px;font-weight:800}.add-button{color:#2f603d;background:#edf4ed}.add-button span{margin-right:4px;font-size:1rem}.export-card{border-radius:18px;gap:14px;margin-top:14px;padding:16px;display:grid}.export-title{margin-bottom:3px;font-weight:800}.export-button{color:#8a938d;background:#e9ece9}.export-button:disabled{cursor:not-allowed}.dialog-backdrop{z-index:20;padding-top:max(24px, env(safe-area-inset-top));background:#141c166b;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.food-dialog{width:min(100%,560px);max-height:calc(100dvh - 24px);padding:18px 16px calc(20px + env(safe-area-inset-bottom));background:#fff;border-radius:22px 22px 0 0;overflow-y:auto;box-shadow:0 -16px 50px #161e182e}.dialog-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.dialog-header h2{font-size:1.22rem}.close-button{color:#4e5a52;background:#f1f3f0;border:0;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:1.45rem;line-height:1;display:grid}.field-label{margin-bottom:7px;font-size:.78rem;font-weight:800;display:block}.text-input{color:#1e2520;background:#fff;border:1px solid #cfd6cf;border-radius:12px;outline:none;width:100%;padding:12px 13px;font-size:16px}.text-input:focus{border-color:#5a7b62;box-shadow:0 0 0 3px #5a7b621f}.food-suggestions,.selected-food,.new-food-fields{background:#f7f8f6;border-radius:14px;margin-top:12px}.food-suggestions{border:1px solid #e5e9e4;overflow:hidden}.suggestion-heading{color:#68746c;justify-content:space-between;align-items:center;padding:10px 12px 7px;font-size:.72rem;font-weight:800;display:flex}.suggestion-heading small{font-weight:600}.suggestion-empty{color:#748078;margin:0;padding:6px 12px 12px;font-size:.76rem;line-height:1.5}.food-option{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-top:1px solid #e5e9e4;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;display:flex}.food-option>span:first-child{gap:2px;min-width:0;display:grid}.food-option strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.food-option small,.food-option-macros{color:#748078;font-size:.68rem}.food-option-macros{white-space:nowrap;flex:none}.selected-food{border:1px solid #dce6dc;grid-template-columns:1fr auto;gap:5px 10px;padding:12px;display:grid}.selected-food>div{gap:2px;display:grid}.selected-food>div span{color:#68746c;font-size:.68rem;font-weight:700}.selected-food strong{font-size:.9rem}.selected-food button{color:#497255;background:0 0;border:0;align-self:start;padding:3px;font-size:.72rem;font-weight:800}.selected-food p{color:#657168;grid-column:1/-1;margin:4px 0 0;font-size:.72rem;line-height:1.5}.new-food-fields{border:1px solid #e5e9e4;padding:12px}.new-food-heading{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:11px;display:flex}.new-food-heading strong{font-size:.8rem}.new-food-heading span{color:#748078;font-size:.68rem}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.input-grid label>span{color:#5f6a63;margin-bottom:5px;font-size:.7rem;font-weight:750;display:block}.input-grid label>div{background:#fff;border:1px solid #d8ddd8;border-radius:10px;align-items:center;padding-right:9px;display:flex}.input-grid input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:10px;font-size:16px}.input-grid small{color:#748078;font-size:.68rem}.form-error{color:#9b342a;background:#fff0ee;border-radius:10px;margin:12px 0 0;padding:9px 10px;font-size:.75rem;line-height:1.45}.save-button{color:#fff;background:#386a46;margin-top:14px}.save-button:disabled{cursor:not-allowed;background:#b8c4ba}@media (width>=600px){.app-shell{padding-top:40px}.meal-list{grid-template-columns:repeat(2,1fr)}.export-card{grid-template-columns:1fr auto;align-items:center}.export-button{width:auto}.dialog-backdrop{align-items:center;padding:24px}.food-dialog{border-radius:22px;padding:20px}}.export-scope-field{gap:6px;margin-top:12px;display:grid}.export-scope-label{color:#5f6a63;font-size:.72rem;font-weight:800}.export-scope-select{color:#1e2520;background:#fff;border:1px solid #d8ddd8;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-size:16px}.export-scope-select:focus{border-color:#5a7b62;box-shadow:0 0 0 3px #5a7b621f}.export-button:not(:disabled){color:#fff;cursor:pointer;background:#386a46}.export-button:not(:disabled):active{transform:translateY(1px)}.export-button.is-copied{background:#2f603d}.export-feedback{color:#497255;min-height:1.2em;margin:8px 0 0;font-size:.72rem;font-weight:750}.export-feedback.is-error{color:#9b342a}.app-view-switcher{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;gap:8px;width:min(100% - 32px,720px);margin:18px auto -2px;padding:4px;display:flex}.app-view-link{color:#64748b;border-radius:10px;flex:1;justify-content:center;align-items:center;min-height:40px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.app-view-link[aria-current=page]{color:#0f172a;background:#fff;box-shadow:0 1px 4px #0f172a14}.food-master-shell{width:min(100% - 32px,720px);margin:0 auto;padding:28px 0 64px}.food-master-header{margin-bottom:20px}.food-master-header h1{letter-spacing:-.03em;margin:4px 0 8px;font-size:clamp(28px,7vw,38px)}.food-master-header>div>p:last-child{color:#64748b;margin:0;line-height:1.65}.food-master-eyebrow{color:#64748b;letter-spacing:.14em;margin:0;font-size:12px;font-weight:800}.food-master-card,.food-master-item,.food-master-empty,.food-master-history-note{background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 8px 24px #0f172a0a}.food-master-card{margin-bottom:16px;padding:18px}.food-master-search-label,.food-master-field-label{color:#334155;margin-bottom:7px;font-size:13px;font-weight:800;display:block}.food-master-search,.food-master-text-input,.food-master-nutrient-field input{box-sizing:border-box;color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:12px;outline:none}.food-master-search,.food-master-text-input{min-height:48px;padding:0 13px}.food-master-search:focus,.food-master-text-input:focus,.food-master-nutrient-field input:focus{border-color:#64748b;box-shadow:0 0 0 3px #64748b1f}.food-master-helper{color:#94a3b8;margin:9px 0 0;font-size:12px}.food-master-list{gap:10px;display:grid}.food-master-item{padding:16px;position:relative}.food-master-item-main{justify-content:space-between;align-items:baseline;gap:12px;padding-right:88px;display:flex}.food-master-item-main strong{color:#0f172a;font-size:16px}.food-master-item-main span,.food-master-item p{color:#64748b;font-size:13px}.food-master-item p{margin:7px 88px 0 0;line-height:1.55}.food-master-edit{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;min-height:38px;padding:0 12px;font-weight:800;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.food-master-loading,.food-master-page-error{text-align:center;color:#64748b;margin:18px 0}.food-master-page-error,.food-master-error{color:#b91c1c}.food-master-empty{text-align:center;flex-direction:column;gap:4px;padding:28px 18px;display:flex}.food-master-empty span{color:#64748b;font-size:13px}.food-master-history-note{color:#64748b;text-align:center;margin:16px 0 0;padding:14px 16px;font-size:12px;line-height:1.6}.food-master-dialog-backdrop{z-index:50;background:#0f172a7a;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow-y:auto}.food-master-dialog{box-sizing:border-box;background:#fff;border-radius:20px;width:min(100%,520px);max-height:calc(100dvh - 36px);padding:20px;overflow-y:auto;box-shadow:0 24px 60px #0f172a33}.food-master-dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.food-master-dialog-header h2{margin:4px 0 0;font-size:24px}.food-master-close{color:#334155;cursor:pointer;background:#f1f5f9;border:0;border-radius:999px;width:40px;height:40px;font-size:24px;line-height:1}.food-master-nutrient-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.food-master-nutrient-field>span{color:#475569;margin-bottom:6px;font-size:12px;font-weight:800;display:block}.food-master-nutrient-field>div{position:relative}.food-master-nutrient-field input{min-height:46px;padding:0 46px 0 12px}.food-master-nutrient-field small{color:#94a3b8;pointer-events:none;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.food-master-note{color:#64748b;background:#f8fafc;border-radius:12px;margin:16px 0 0;padding:12px 14px;font-size:12px;line-height:1.6}.food-master-error{margin:12px 0 0;font-size:13px}.food-master-save,.food-master-delete{width:100%;min-height:48px;font:inherit;cursor:pointer;border-radius:12px;margin-top:16px;font-weight:800}.food-master-save{color:#fff;background:#0f172a;border:0}.food-master-delete{color:#b91c1c;background:#fff;border:1px solid #fecaca;margin-top:10px}.food-master-save:disabled,.food-master-delete:disabled,.food-master-close:disabled{cursor:default;opacity:.55}@media (width<=520px){.app-view-switcher,.food-master-shell{width:min(100% - 24px,720px)}.app-view-switcher{margin-top:12px}.food-master-shell{padding-top:22px}.food-master-item-main{padding-right:0;display:block}.food-master-item-main span{margin-top:3px;display:block}.food-master-item p{margin-right:0;padding-right:0}.food-master-edit{width:100%;margin-top:12px;position:static;transform:none}.food-master-dialog-backdrop{align-items:end;padding:0}.food-master-dialog{border-radius:20px 20px 0 0;width:100%;max-height:92dvh;padding:20px 16px 28px}}
