.food-clarification{border:1px solid #cbdad3;border-radius:16px;background:#f2f8f4;margin:12px 0;padding:14px;min-width:0}
/* A floated legend is laid out inside the box: a two-line question never straddles the top border. */
.food-clarification legend{float:left;width:100%;margin:0 0 4px;padding:0;font-weight:700;font-size:.95rem;line-height:1.35}
.food-clarification legend+*{clear:both}
.food-choice-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.food-choice-options .button{flex:1;min-height:44px;padding:10px 12px;white-space:normal}
.food-dialog{width:min(560px,calc(100% - 24px));max-height:90dvh;padding:22px;border:0;border-radius:22px;overflow:auto;color:var(--ink,#162b24)}
.food-dialog::backdrop{background:#071d1db3;backdrop-filter:blur(4px)}
.food-dialog form{display:grid;gap:12px;min-width:0}
.food-barcode{min-width:0;border-bottom:1px solid #dfe7e2;padding-bottom:10px}
.food-barcode summary{cursor:pointer;min-height:44px;color:var(--green,#166449);font-size:.85rem}
.food-barcode-search{display:flex;gap:8px;margin-top:8px}
.food-barcode-search input{width:100%;min-width:0;min-height:44px;padding:9px;border:1px solid #d5ded8;border-radius:10px;font:inherit}
.food-barcode-search button{min-height:44px}
.food-barcode-result{display:grid;gap:8px;overflow-wrap:anywhere}
.food-barcode-result:empty,.food-barcode .form-message:empty{display:none}
.food-assumption a{color:inherit;text-underline-offset:2px}
.food-dialog h2{font-size:1.25rem;margin:0}
.food-editor-list{display:grid;gap:12px;min-width:0}
.food-editor-item{border:1px solid #dfe7e2;border-radius:16px;padding:12px;min-width:0;display:grid;gap:10px}
.food-editor-item legend{font-size:.75rem;color:#597166;padding:0 5px}
.food-editor-item input,.food-editor-item select{width:100%;min-width:0;box-sizing:border-box;min-height:44px;border:1px solid #d5ded8;background:#fff;border-radius:10px;padding:9px;font:inherit;color:inherit}
.food-editor-item input:read-only{background:#f1f5f2;color:#52675b}
.food-editor-item label{display:grid;gap:4px;font-size:.75rem;min-width:0}
.food-quantity-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.food-nutrient-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.food-assumption{color:#577065;font-size:.76rem;line-height:1.45;margin:0}
.food-editor-total{background:#123b30;color:#fff;border-radius:14px;padding:15px;font-size:1.12rem;font-weight:750;text-align:center;font-variant-numeric:tabular-nums}
.food-text-button,.food-review-button{font:inherit;font-size:.78rem;color:#166449;background:transparent;border:0;cursor:pointer;min-height:36px;padding:5px 0;text-align:left}
.food-review-button{font-weight:650;display:block}
.food-breakdown{font-size:.78rem;line-height:1.5;color:#52675b}
.food-breakdown p{margin:6px 0}
.food-calculation{padding:9px 0;border-bottom:1px solid #dfe7e2}
.food-calculation:last-child{border-bottom:0;padding-bottom:0}
.food-calculation>strong{color:#254f3e;font-size:.85rem}
.food-calculation .food-calculation-formula{font-variant-numeric:tabular-nums;color:#166449;font-weight:650}
.food-duplicate{border:1px solid #83bba0;border-radius:14px;padding:10px 12px;margin:8px 0;min-width:0;background:#eef7f0;color:#173d2d}
.food-duplicate-title{display:block;font-size:.85rem;font-weight:750;line-height:1.4;margin-bottom:4px}
.food-duplicate .composer-help{color:#345846!important;margin:0;font-size:.8rem}
.food-duplicate .button{color:#173d2d;background:#fff;border:1px solid #adcdb9;font-size:.85rem}
.food-duplicate .button:last-child{background:#d6ef9a}
.food-editor-total,.food-clarification,.food-breakdown{overflow-wrap:anywhere}
@media(max-width:380px){.food-dialog{padding:15px}.food-quantity-grid{grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr);gap:5px}.food-editor-item{padding:9px}}
