.card h2,.meal-section h2{font-size:17px;margin:0 0 10px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-grid label,.search-label{font-size:13px;color:var(--mut);display:flex;flex-direction:column;gap:5px}.profile-grid input,.profile-grid select,.search-controls input,.meal-card input{width:100%;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:9px 10px;font:inherit}.profile-grid input:focus,.profile-grid select:focus,.search-controls input:focus,.meal-card input:focus{outline:2px solid #bfdbfe;border-color:var(--acc)}.optional{font-size:11px;font-weight:400}.target-output{margin-top:12px;padding:10px 12px;border-radius:9px;background:#eef5ff;color:#27456f;font-size:14px;line-height:1.7}.target-output strong{font-size:18px;color:var(--acc)}.target-output .detail{display:block;color:var(--mut);font-size:12px}.search-row{margin-top:4px}.search-controls{display:flex;gap:8px;margin-top:5px}.search-controls input{flex:1;min-width:0}button{font-family:inherit}.secondary-btn,.text-btn,.remove-btn{border:1px solid var(--line);background:var(--card);color:#475067;border-radius:8px;padding:8px 11px;cursor:pointer;white-space:nowrap}.secondary-btn:hover,.food-result:hover{border-color:var(--acc);color:var(--acc)}.text-btn{font-size:12px;padding:5px 9px}.remove-btn{font-size:12px;padding:4px 8px}.search-status{font-size:12px;color:var(--mut);margin-top:9px}.search-results{display:grid;gap:7px;margin-top:8px}.food-result{width:100%;text-align:left;border:1px solid var(--line);background:var(--bg);border-radius:9px;padding:9px 11px;cursor:pointer;color:var(--ink)}.food-result:disabled{opacity:.65;cursor:wait}.food-result b{display:block;font-size:14px}.food-result span{display:block;color:var(--mut);font-size:12px;margin-top:4px}.meal-section{margin-top:18px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.section-head h2{margin-bottom:2px}.section-head p{margin:0;color:var(--mut);font-size:12px}.meal-list{display:grid;gap:10px;margin-top:10px}.meal-empty{background:var(--card);border:1px dashed #cdd3dd;border-radius:12px;padding:22px;text-align:center;color:var(--mut);font-size:13px}.meal-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:0 1px 2px #1018280a}.meal-head{display:flex;align-items:center;gap:8px}.meal-label{max-width:130px;font-weight:600}.meal-name{flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}.meal-name a{color:var(--ink)}.meal-name a:hover{color:var(--acc)}.meal-manual-name{flex:1;min-width:0;font-weight:600}.meal-usage{font-size:11px;color:var(--mut);font-weight:400;margin-top:3px}.meal-fields{display:grid;grid-template-columns:minmax(120px,1fr) minmax(170px,1.3fr) minmax(100px,.7fr);gap:10px;align-items:end;margin-top:11px}.meal-fields label{font-size:12px;color:var(--mut);display:flex;flex-direction:column;gap:4px}.meal-kcal{font-size:16px;font-weight:700;color:var(--good);padding:9px 0}.energy-source{display:inline-block;font-size:11px;border-radius:99px;padding:2px 7px;margin-top:5px;background:var(--chip);color:#475067;font-weight:400}.energy-source.owner,.energy-source.official-site{background:#eefaf1;color:#15633a}.energy-source.estimated{background:#fff7e0;color:#8a6100}.energy-source.missing{background:#fff1f1;color:#a62c2c}.summary-card{border-color:#cbdcf7}.summary-main{font-size:14px;line-height:1.8}.summary-main strong{font-size:22px;color:var(--good)}.summary-diff{font-size:14px;margin-top:5px}.summary-warning{margin-top:8px;padding:8px 10px;border-radius:8px;background:#fff7e0;color:#7a5b00;font-size:12px;line-height:1.6}.progress-track{height:9px;background:var(--chip);border-radius:99px;overflow:hidden;margin-top:10px}.progress-fill{height:100%;background:var(--acc);border-radius:99px;transition:width .2s}.notice-card{font-size:13px;color:var(--mut);line-height:1.85}.notice-card b{color:var(--ink)}@media(max-width:620px){.profile-grid{grid-template-columns:1fr}.search-controls{align-items:stretch}.search-controls{flex-direction:column}.meal-head{align-items:flex-start;flex-wrap:wrap}.meal-label{max-width:110px}.meal-name,.meal-manual-name{flex-basis:calc(100% - 126px)}.meal-fields{grid-template-columns:1fr 1fr}.meal-energy-cell{grid-column:1/-1}.meal-kcal{padding:2px 0}}
