.pe-form{display:grid;gap:14px;max-width:760px}.pe-intro,.pe-hint{font-size:12px;line-height:1.5;color:#6e7480;margin:0}.pe-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pe-form label{display:grid;gap:6px;font-size:12px;min-width:0}.pe-form input,.pe-form select{box-sizing:border-box;width:100%;min-width:0;font-size:14px}.pe-photo-row{display:flex;gap:14px;align-items:center}.pe-photo-row img{width:70px;height:80px;object-fit:contain;border:1px solid #eee;border-radius:10px}.pe-photo-row>div{display:flex;flex-wrap:wrap;gap:8px}.pe-photo-row small{flex-basis:100%;color:#737782;font-size:11px}.pe-form .pe-file{border:1px solid #ddd;border-radius:10px;display:inline-flex;padding:10px 14px;cursor:pointer;background:#fff}.pe-file input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.pe-file:focus-within{outline:2px solid #ed1c24;outline-offset:2px}.pe-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:#fff2f3;padding:14px;border-radius:12px;font-size:12px}.pe-summary small{display:block;font-size:11px;line-height:1.5}.pe-summary strong{display:block;font-size:20px;color:#c7192b;margin-top:4px}.pe-summary p,.pe-summary>small{grid-column:1/-1;margin:0}.pe-details,.pe-match{border:1px solid #e9e9ec;border-radius:12px;padding:12px;font-size:12px}.pe-details summary,.pe-match summary{cursor:pointer;font-weight:600}.pe-details .pe-grid{margin:14px 0}.pe-details>small{line-height:1.5;color:#757b84}.pe-form .pe-check{display:flex;align-items:center;gap:9px;line-height:1.4;margin:10px 0}.pe-check input{width:18px;height:18px;min-height:18px;flex-shrink:0}.pe-error{color:#bb1021;font-size:12px;line-height:1.5;margin:0}.pe-error:empty{display:none}.pe-match{margin-bottom:12px}.pe-match label{display:grid;gap:8px;margin:12px 0}#pe-save{min-height:48px}#pe-lookup a{color:#d01629}.pe-form button::before,.pe-match button::before{display:none!important}@media(max-width:480px){.pe-grid{gap:9px}.pe-summary{padding:12px;gap:6px}.pe-summary strong{font-size:17px}.pe-form{gap:12px}}
.pe-form label{margin:0}.pe-form input,.pe-form select{padding:10px;min-height:42px}.pe-form .pe-check input{min-height:18px;padding:0}.pe-form #pe-save{position:sticky;bottom:0;z-index:2;box-shadow:0 0 0 7px white}

/* The product finder and three-step form keep one clear task visible at a time. */
.pe-finder{display:grid;gap:14px;max-width:760px}
.pe-step-status{margin:0;padding:10px 12px;border:1px solid #e7eaf0;border-radius:10px;background:#f7f8fa;color:#526176;font-size:12px;font-weight:500;line-height:1.5}
.pe-finder>label{margin:0;font-size:13px;font-weight:500;color:#263348}
#pe-find-query{width:100%;min-height:46px;box-sizing:border-box;padding:11px 14px;border:1px solid #edbdc5;border-radius:12px;font-size:14px;background:#fff}
.pe-find-results{display:grid;max-height:min(40vh,320px);overflow-y:auto;overscroll-behavior:contain}
.pe-find-results:empty{display:none}
.pe-find-results>button{display:grid;grid-template-columns:42px minmax(0,1fr) 16px;align-items:center;gap:12px;width:100%;padding:10px 3px;border:0;border-bottom:1px solid #e9edf2;border-radius:0;background:#fff;color:#263348;text-align:left;box-shadow:none}
.pe-find-results>button:hover{background:#f8f9fb}
.pe-find-results>button::before,.pe-finder>button::before{display:none!important}
.pe-find-results img,.pe-find-no-photo{width:42px;height:46px;object-fit:contain;background:#f7f8fa;border-radius:8px}
.pe-find-no-photo{display:grid;place-items:center;color:#8996a8;font-size:21px}
.pe-find-results strong{display:block;font-size:13px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}
.pe-find-results small{display:block;margin-top:3px;font-size:11px;color:#718094;line-height:1.5}
.pe-find-results>button>span{min-width:0}
.pe-step{display:grid;gap:14px;min-width:0}
.pe-form [hidden]{display:none!important}
.pe-step-footer{display:flex;align-items:center;gap:10px;position:sticky;bottom:0;z-index:2;padding-top:12px;background:#fff;border-top:1px solid #e9edf2}
.pe-step-footer>button{min-height:46px;font-size:13px;flex:1}
.pe-step-footer>#pe-step-back{flex:0 0 auto;min-width:82px;background:#fff;border:1px solid #dce2e9;color:#526176}
.pe-form .pe-step-footer #pe-save{position:static;box-shadow:none}
.pe-review{display:grid;gap:5px;padding:14px;border:1px solid #e3e7ee;border-radius:12px}
.pe-review strong{font-size:15px;font-weight:600;color:#263348;overflow-wrap:anywhere}
.pe-review small{font-size:12px;color:#718094;overflow-wrap:anywhere}
.pe-review small:empty{display:none}
@media(max-width:480px){.pe-step{gap:12px}.pe-step .pe-grid{grid-template-columns:1fr}.pe-step-footer>button{font-size:12px}.pe-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pe-finder{gap:12px}}

/* Existing product photos are reused; upload controls open only on request. */
.pe-photo-row>.pe-photo-content{display:grid;gap:8px;min-width:0}
#pe-photo-existing{display:grid;gap:3px}
#pe-photo-existing strong{font-size:13px;font-weight:550;color:#263348}
#pe-photo-existing small{font-size:11px;color:#718094;line-height:1.5}
#pe-photo-options{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.pe-form #pe-photo-replace{justify-self:start;min-height:34px;padding:7px 10px;border:1px solid #dce2e9;border-radius:9px;background:#fff;color:#526176;font-size:12px;font-weight:500;box-shadow:none}
.pe-form #pe-photo-replace:hover{background:#f8f9fb}

/* Matched identities stay fixed; only stock quantity and prices are entered. */
.pe-found-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;align-items:center;padding:16px;border:1px solid #e3e8ee;border-radius:14px;background:#fafbfc}
.pe-found-card img,.pe-found-placeholder{width:64px;height:76px;object-fit:contain;background:#fff;border-radius:10px}
.pe-found-placeholder{display:grid;place-items:center;color:#8a97a6;font-size:25px}
.pe-found-card>div{display:grid;gap:5px;min-width:0}
.pe-found-card strong{font-size:15px;font-weight:600;line-height:1.45;color:#263348;overflow-wrap:anywhere}
.pe-found-card small{font-size:12px;color:#65758a;overflow-wrap:anywhere}
.pe-found-badge{font-size:12px;font-weight:550;color:#21814a}
.pe-matched-fields{display:grid;gap:16px;padding:3px 0}
.pe-matched-form label{color:#334155;font-size:13px;font-weight:500}
.pe-matched-form input{min-height:48px;border-radius:12px}
.pe-matched-review{border:1px solid #e3e8ee;border-radius:14px;padding:4px 16px}
.pe-matched-review>div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #edf0f3;font-size:13px;color:#536279}
.pe-matched-review>div:last-of-type{border-bottom:0}
.pe-matched-review strong{color:#263348;font-size:14px;font-weight:600}
.pe-matched-review p{font-size:12px;color:#65758a;margin:0;padding:0 0 14px}
@media(max-width:480px){.pe-matched-fields .pe-grid{grid-template-columns:1fr}.pe-found-card{padding:13px;gap:12px}.pe-found-card strong{font-size:14px}}

/* Each entry screen asks one small question; the sale price is server calculated. */
.pe-entry-section{display:grid;gap:14px;min-width:0}
.pe-entry-form label{font-size:13px;font-weight:500;color:#334155}
.pe-entry-form input{min-height:48px;border-radius:12px}
.pe-entry-form input[readonly]{background:#f5f8f6;border-color:#d7e8dc;color:#24633e;font-weight:600}
.pe-request-photo{display:grid;gap:10px}
#pe-request-preview{width:100%;height:116px;object-fit:contain;background:#f9fafb;border:1px solid #e3e8ee;border-radius:12px}
#pe-request-photo-options{display:flex;flex-wrap:wrap;gap:8px}
#pe-request-photo-options button{padding:10px 12px;border-radius:10px;font-size:12px;min-height:40px}
#pe-request-photo-status:empty{display:none}
.pe-finder .pe-text-button{border:0;background:none;box-shadow:none;color:#596c85;font-size:12px;font-weight:500;min-height:32px;padding:5px}
.pe-request-success{display:grid;gap:12px}
.pe-request-success strong{font-size:16px;color:#263348}
.pe-request-success p{font-size:13px;line-height:1.5;color:#65758a;margin:0}
.pe-request-list{display:grid;max-height:55vh;overflow-y:auto}
.pe-request-row{display:grid;grid-template-columns:48px minmax(0,1fr) 16px;gap:12px;align-items:center;width:100%;padding:12px 0;border:0;border-bottom:1px solid #e3e8ee;border-radius:0;box-shadow:none;background:#fff;text-align:left;color:#263348}
.pe-request-row img{width:48px;height:56px;object-fit:contain}
.pe-request-row strong{display:block;font-size:13px;font-weight:550;overflow-wrap:anywhere;line-height:1.5}
.pe-request-row small{display:block;margin-top:4px;color:#65758a;font-size:11px}
.pe-request-row::before,.pe-request-success button::before{display:none!important}

/* Request decisions stay together, with clear icons and a quieter back action. */
#pe-request-detail .pe-request-actions{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr));gap:10px;align-items:stretch;padding-top:16px;margin-top:2px;border-top:1px solid #e8edf2}
#pe-request-detail .pe-request-actions>button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:46px;margin:0;padding:11px 12px;border-radius:12px;font-size:13px;font-weight:500;line-height:1.4;box-shadow:none}
#pe-request-detail .pe-request-actions>button svg{width:19px;height:19px;flex-shrink:0}
#pe-request-detail #pe-request-approve{font-weight:600}
#pe-request-detail #pe-request-reject{background:#fff;border-color:#e2e6ed;color:#b72e44}
#pe-request-detail #pe-request-list-back{background:#fff;border-color:#e2e6ed;color:#526176}
#pe-request-detail #pe-request-reject:hover{background:#fff4f6}
#pe-request-detail #pe-request-list-back:hover{background:#f7f9fb}
#pe-request-detail .pe-request-actions.is-reviewed{display:flex;justify-content:flex-end}
@media(max-width:600px){
 #pe-request-detail .pe-request-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:14px}
 #pe-request-detail #pe-request-approve{grid-column:1/-1}
 #pe-request-detail .pe-request-actions>button{font-size:12px;padding:11px 8px}
}

/* Choose packaged products or ready food before asking for their details. */
.pe-entry-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:760px}
.pe-entry-types>button{display:grid;justify-items:center;align-content:center;gap:10px;min-width:0;min-height:150px;padding:20px 12px;border:1px solid #efc2c9;border-radius:18px;background:#fff;box-shadow:none;text-align:center;color:var(--ui-red,#ed2635)}
.pe-entry-types>button::before{display:none!important}
.pe-entry-types>button:hover{background:#fff6f7}
.pe-entry-types>button svg{width:28px;height:28px}
.pe-entry-types strong{font-size:15px;font-weight:600}
.pe-entry-types small{font-size:12px;font-weight:400;line-height:1.5;color:#65758a;overflow-wrap:anywhere}
#pe-food-photo{width:100%;height:116px;object-fit:contain;background:#fafbfc;border:1px solid #e3e8ee;border-radius:12px}
#pe-food-photo-options{display:flex;flex-wrap:wrap;gap:8px}
#pe-food-back{flex:0 0 auto;min-width:82px;color:#526176;background:#fff}
@media(max-width:480px){.pe-entry-types{gap:10px}.pe-entry-types>button{padding:16px 10px;min-height:136px}.pe-entry-types strong{font-size:14px}}

/* Primary product-entry actions keep white text on their red background. */
#modal #pe-entry-save.primary,#modal #pe-find-next.primary{color:#fff!important}

/* Compact ready food catalog. */
.pe-preset-toolbar{display:flex;gap:10px;margin-bottom:16px}.pe-preset-toolbar input{flex:1;min-width:0}.pe-preset-toolbar select{width:155px;height:42px;padding:0 10px;border:1px solid #dedede;border-radius:10px;background:#fff;color:#555}
.pe-preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pe-preset-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 8px;min-height:145px;border:1px solid #cdcdcd;border-radius:12px;background:#fff;color:#424242}.pe-preset-grid button:hover,.pe-preset-grid button:focus-visible{border-color:#e51c2d;background:#fff7f8}.pe-preset-grid img{width:100%;height:82px;object-fit:contain}.pe-preset-grid strong{font-size:13px;line-height:1.4;text-align:center}.pe-presets>.pe-text-button{margin-top:14px}
.pe-preset-grid button>svg{display:none}
.stock-search #stock-group{flex:0 0 148px;width:148px;min-width:0;height:38px;padding:0 10px;border:1px solid #dcdcdc;border-radius:9px;background:#fff;color:#555;font-size:13px}.stock-search #stock-search{min-width:0;flex:1}.stock-search{gap:10px}
@media(max-width:600px){.pe-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pe-preset-toolbar select{width:125px}.stock-search #stock-group{flex-basis:122px;width:122px}.pe-preset-grid button{min-height:128px}}

/* Food cards show their photo and name without the global button glyph. */
#modal #pe-preset-grid button::before,#modal #pe-preset-grid button::after{content:none!important;display:none!important}

/* Reset the suggestion beside the editable amount, within the same field. */
#pe-food-form .pe-price-field{display:grid;gap:6px;min-width:0}
#pe-food-form .pe-price-input{display:flex;align-items:stretch;min-width:0;min-height:48px;border:1px solid #e1c3c3;border-radius:12px;background:#fff;overflow:hidden}
#pe-food-form .pe-price-input:focus-within{border-color:#ed1c24;box-shadow:0 0 0 1px #ed1c24}
#pe-food-form .pe-price-input input{flex:1;width:0;min-width:0;min-height:46px;margin:0;padding:10px 12px;border:0;background:transparent;box-shadow:none;outline:none;appearance:textfield}
#pe-food-form .pe-price-input input::-webkit-inner-spin-button,#pe-food-form .pe-price-input input::-webkit-outer-spin-button{appearance:none;margin:0}
#pe-food-price-auto{flex:none;min-height:46px;width:auto;margin:0;padding:0 12px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#ed1c24;font-size:12px;font-weight:500;white-space:nowrap}
#pe-food-price-auto[hidden]{display:none}
#pe-food-price-auto:hover{background:#fff0f1;transform:none;box-shadow:none}
#pe-food-price-auto:focus-visible{outline:2px solid #ed1c24;outline-offset:-4px}
@media(max-width:480px){#pe-food-price-auto{font-size:11px;padding:0 10px}}
