.ingredient-add-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#barcode-dialog{width:min(580px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;box-sizing:border-box;padding:24px}
#barcode-dialog [hidden]{display:none!important}
#barcode-dialog h2{font-size:1.35rem;overflow-wrap:anywhere}
#barcode-dialog button,#barcode-dialog input,#barcode-dialog select{min-height:44px}
#barcode-dialog input,#barcode-dialog select{font-size:16px;box-sizing:border-box;width:100%;min-width:0}
#barcode-dialog :focus-visible{outline:3px solid var(--accent,#3155e7);outline-offset:3px}
.barcode-search-row,.barcode-camera-actions,.barcode-result-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.barcode-search-row input{flex:1 1 150px}
#barcode-video{width:100%;max-height:240px;object-fit:cover;background:#111;border-radius:12px;margin-top:12px}
.barcode-product-heading{display:flex;gap:16px;align-items:center}
.barcode-product-heading>div:last-child{min-width:0}
#barcode-product-name{overflow-wrap:anywhere;margin:0}
#barcode-image{flex:0 0 72px}#barcode-image img{width:72px;height:88px;object-fit:contain;background:white;border-radius:8px}
#barcode-image .food-icon{width:64px;height:64px}
#barcode-dialog dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 16px}
#barcode-dialog dt,#barcode-dialog dd{margin:0;overflow-wrap:anywhere}#barcode-dialog dd{text-align:right}
#barcode-dialog summary{min-height:44px;cursor:pointer;padding:12px 0}
#barcode-error{color:#a32c22}html[data-theme=dark] #barcode-error{color:#ffaba3}
#barcode-manual{margin-top:16px}#barcode-result{border-top:1px solid var(--line);padding-top:16px}
@media(max-width:600px){.ingredient-add-actions{justify-content:flex-start;width:100%}#barcode-dialog{padding:16px}.barcode-result-actions button{flex:1}.ingredients-page .intro{flex-wrap:wrap}}
