#menuView .menu-editor-tabs{display:flex;gap:8px;overflow-x:auto;margin:18px 0 13px;padding:4px 0}
#menuView .allergen-builder{margin:0 0 16px;padding:20px;border-radius:18px}
.allergen-builder .panel-header{padding:0 0 16px}.allergen-builder .panel-header p,.allergen-notice{color:#647c7b;line-height:1.5}.allergen-form-fields{display:grid;grid-template-columns:115px auto minmax(190px,1fr);align-items:end;gap:10px}.allergen-form-fields label{display:grid;gap:6px;color:#36585b;font-size:12px;font-weight:850}.allergen-form-fields input{min-height:44px;padding:9px 11px;border:1px solid #c8d9d4;border-radius:10px;font:inherit}.allergen-form-fields button,.allergen-list button{min-height:42px;padding:8px 12px;border:1px solid #c7dbd4;border-radius:10px;background:#f1f8f5;color:#215847;font-weight:800;cursor:pointer}.allergen-form-actions{display:flex;gap:8px;margin:14px 0}.allergen-number-choices{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;max-height:170px;overflow:auto;margin:10px 0;padding:10px;border:1px solid #d7e7e0;border-radius:12px;background:#f8fbfa}.allergen-number-choices[hidden]{display:none}.allergen-number-choices button{min-height:32px;border:1px solid #d2e1da;border-radius:8px;background:#fff;color:#254f49;font-weight:850;cursor:pointer}.allergen-number-choices button:hover{background:#dff4e7}.allergen-list{display:grid;gap:7px;margin:16px 0}.allergen-list article{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:9px;border:1px solid #deebe6;border-radius:11px}.allergen-list article>b,.allergen-product-choices b{display:grid;place-items:center;min-width:28px;height:28px;border-radius:8px;background:#e2f4e9;color:#166346}.allergen-list article>div{display:flex;gap:6px}.allergen-list article button{min-height:32px}.allergen-notice{display:block;margin-top:15px}.product-allergens{grid-column:1/-1;padding:14px;border:1px solid #d8e7df;border-radius:12px;background:#f8fcfa}.product-allergens .product-customizable{margin:0}.allergen-product-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.allergen-product-choices[hidden]{display:none}.allergen-product-choices label{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #d6e7de;border-radius:9px;background:#fff;cursor:pointer}.allergen-product-choices input{width:18px;height:18px;accent-color:#197951}.allergen-product-choices p{grid-column:1/-1;margin:0;color:#6b7c7a}@media(max-width:650px){.allergen-form-fields{grid-template-columns:110px 1fr}.allergen-form-fields label:last-child{grid-column:1/-1}.allergen-number-choices{grid-template-columns:repeat(5,1fr)}.allergen-list article{grid-template-columns:34px 1fr}.allergen-list article>div{grid-column:2}.allergen-product-choices{grid-template-columns:1fr}}
#menuView .menu-editor-tabs button{flex:none;padding:10px 15px;border:1px solid #ccdfd8;border-radius:11px;background:#fff;color:#315763;font:inherit;font-weight:850;cursor:pointer}
#menuView .menu-editor-tabs button.is-active{border-color:#19775b;background:#e7f7eb;color:#11664b;box-shadow:inset 0 -3px #19845f}
#menuView .menu-manager-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(350px,.8fr);gap:18px;align-items:start}
#menuView .menu-manager-main{min-width:0}
#menuView .menu-manager-aside{position:sticky;top:15px;min-width:0}
#menuView .product-editor,#menuView .product-quick-list,#menuView .category-builder,#menuView .ingredient-builder{margin:0 0 16px;max-width:none}
#menuView .product-editor{padding:20px;gap:12px}
#menuView .product-editor #productImagePreview{grid-column:1/-1}
#menuView .category-builder .category-form{grid-template-columns:repeat(2,minmax(0,1fr))}
#menuView .category-builder #categoryImagePreview,#menuView .category-builder .category-form-actions{grid-column:1/-1}
#menuView .product-quick-list{padding:18px}
#menuView .real-menu-preview{margin:0;padding:16px}
#menuView .real-menu-preview iframe{height:min(74dvh,780px);min-height:520px}
#menuView .real-menu-preview .panel-header{display:grid;gap:8px}
#menuView .real-menu-preview .panel-header p{font-size:12px}
#menuView .real-menu-preview .button{justify-self:start}
#menuView .product-ingredients{min-width:0}
#menuView .ingredient-choices{max-height:215px;overflow:auto;align-content:start}
#menuView .ingredient-choices label[hidden]{display:none!important}
#menuView #productIngredientSearch,#menuView #savedProductSearch{box-sizing:border-box;width:100%;min-height:41px;padding:9px 12px;border:1px solid #bfd2d0;border-radius:10px;background:#fff;font:inherit;font-size:13px}
#menuView .menu-product-search{display:grid;gap:5px;margin:12px 0;color:#355966;font-size:12px;font-weight:800}
#menuView .product-quick-list #productQuickChoices{display:block;margin-top:12px}
#menuView .saved-category-group{margin:0 0 13px;border:1px solid #dceae3;border-radius:13px;overflow:hidden;background:#fff}
#menuView .saved-category-group h3{display:flex;align-items:center;gap:8px;margin:0;padding:9px 12px;background:#eef7f0;color:#1a5845;font-size:14px}
#menuView .saved-category-group h3 small{display:grid;place-items:center;min-width:24px;height:24px;border-radius:99px;background:#d5edda;font-size:11px}
#menuView .saved-product-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-top:1px solid #e8f0eb}
#menuView .saved-product-row>div:first-child{display:grid;gap:3px;min-width:0}
#menuView .saved-product-row strong{color:#173d49;font-size:13px}
#menuView .saved-product-row small{color:#657d81;font-size:11px}
#menuView .saved-product-row.is-hidden-today{background:#fff9ed}
#menuView .saved-product-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
#menuView .saved-product-actions button{padding:7px 9px;border:1px solid #d6e4dc;border-radius:8px;background:#f6fbf7;color:#22634c;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
#menuView .saved-product-actions button:hover{background:#e6f5ea}
#menuView .saved-product-actions .is-danger{border-color:#f0d6d6;background:#fff5f5;color:#9a4242}
#menuView #productImagePreview{min-height:154px;padding:10px;place-items:stretch}
#menuView #productImagePreview .menu-visual-product{display:grid;grid-template-columns:118px minmax(0,1fr);min-height:150px;overflow:hidden;border:1px solid #d9e3e5;border-radius:16px;background:#fff}
#menuView #productImagePreview .menu-visual-product img{width:118px;height:150px;max-height:none;object-fit:cover;border-radius:0}
#menuView #productImagePreview .menu-visual-product>div{display:flex;flex-direction:column;gap:8px;min-width:0;padding:14px}
#menuView #productImagePreview .menu-visual-product strong{font-size:15px;color:#153747}
#menuView #productImagePreview .menu-visual-product p{flex:1;margin:0;color:#647983;font-size:12px}
#menuView #productImagePreview .menu-visual-product b{color:#08734b}
#menuView #categoryImagePreview{min-height:100px;padding:9px;place-items:stretch}
#menuView #categoryImagePreview .menu-visual-category{display:flex;align-items:center;gap:14px}
#menuView #categoryImagePreview .menu-visual-category img{width:82px;height:82px;object-fit:cover;border-radius:16px}
#menuView #categoryImagePreview .menu-visual-category strong{font-size:17px;color:#173543}
#menuView .menu-crop-existing{justify-self:start;padding:8px 11px;border:1px solid #b8daca;border-radius:9px;background:#eaf7ed;color:#176244;font:inherit;font-size:12px;font-weight:850;cursor:pointer}
.menu-image-crop-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:20px;border:0;border-radius:20px;background:#fff;color:#173d49;box-shadow:0 24px 80px #0a243d70;font-family:'DM Sans',system-ui,sans-serif}
.menu-image-crop-dialog::backdrop{background:#0b2435b8;backdrop-filter:blur(4px)}
.menu-image-crop-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:14px}
.menu-image-crop-head small{color:#17815b;font-size:11px;font-weight:900;letter-spacing:.1em}
.menu-image-crop-head h2{margin:4px 0;font-size:23px}
.menu-image-crop-head p,.menu-image-crop-help{margin:5px 0;color:#607a82;font-size:12px}
.menu-image-crop-head button{width:34px;height:34px;border:1px solid #d9e6e0;border-radius:9px;background:#f5faf7;color:#245a4c;font-size:22px;cursor:pointer}
.menu-image-crop-stage{position:relative;width:min(320px,100%);margin:auto;overflow:hidden;border:2px solid #a9d6b7;border-radius:14px;background:#ecf3ee;touch-action:none;cursor:grab}
.menu-image-crop-stage:active{cursor:grabbing}
.menu-image-crop-stage.is-product{aspect-ratio:4/5}
.menu-image-crop-stage.is-category{aspect-ratio:1/1}
.menu-image-crop-stage.is-cover{width:min(600px,100%);aspect-ratio:3/1}
.menu-image-crop-stage img{position:absolute;top:50%;left:50%;max-width:none;pointer-events:none;user-select:none}
.menu-image-zoom{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:18px 0 8px;font-size:13px;font-weight:800}
.menu-image-zoom input{accent-color:#16845d}
.menu-image-crop-dialog footer{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;margin-top:16px}
.menu-image-crop-dialog footer button{padding:9px 11px;border:1px solid #d0e0d8;border-radius:9px;background:#f5faf6;color:#265447;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.menu-image-crop-dialog footer [data-crop-save]{border-color:#c4eb3d;background:#cdf329;color:#213800}
@media(max-width:1150px){#menuView .menu-manager-layout{grid-template-columns:1fr}#menuView .menu-manager-aside{position:static}#menuView .real-menu-preview iframe{height:620px}}
@media(max-width:640px){#menuView .product-editor,#menuView .category-builder .category-form{grid-template-columns:1fr}#menuView .saved-product-row{align-items:flex-start;flex-direction:column}#menuView .saved-product-actions{justify-content:flex-start}#menuView .menu-editor-tabs button{padding:9px 11px;font-size:12px}.menu-image-crop-dialog{padding:15px}.menu-image-crop-stage{width:min(290px,100%)}}
