
.staff-module-card.review-waiter{background:linear-gradient(135deg,#166c61,#229c83)}
.staff-module-card.review-kitchen{background:linear-gradient(135deg,#ad511c,#e58b25);grid-column:1/-1}
.dl-review-modal{width:min(1040px,calc(100% - 16px));max-height:96dvh;border:none;padding:0;border-radius:22px;box-shadow:0 24px 80px #102b3a5b;overflow:auto;color:#142c3b;background:#f5f8fa}
.dl-review-modal::backdrop{background:#071b2bba}
.dl-review-shell{padding:clamp(13px,3vw,27px)}.dl-review-header{display:flex;justify-content:space-between;gap:12px;align-items:start;background:#102e41;color:#fff;border-radius:18px;padding:18px 21px}
.dl-review-header h2{color:#fff;margin:4px 0;font-size:clamp(24px,4vw,33px)}.dl-review-header p{margin:0;color:#cce4e9}.dl-review-header small{color:#83d9c4;font-weight:900;letter-spacing:.08em}
.dl-review-close{min-width:42px;min-height:42px;background:#fff2;border:1px solid #fff5;border-radius:11px;color:#fff;font-size:20px;cursor:pointer}
.dl-review-banner{margin:13px 0;background:#fff4d4;color:#67430c;border:1px solid #edcd80;border-radius:13px;padding:12px 14px;line-height:1.5;font-weight:650}
.dl-review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:15px 0}.dl-review-toolbar h3{margin:0;font-size:22px}.dl-review-toolbar p{margin:2px 0;color:#5b7280}
.dl-review-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.dl-review-table,.dl-review-card{background:#fff;border:1px solid #d5e3e6;border-radius:16px;padding:15px;box-shadow:0 6px 20px #1336480c}
.dl-review-table{min-height:112px;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.dl-review-table strong{font-size:20px}.dl-review-table small{font-weight:800;color:#536c79}.dl-review-table b{font-size:19px}
.dl-review-table.free{border-color:#9ddabf;background:#f1fbf5}.dl-review-table.busy{border-color:#f1c48a;background:#fff7eb}.dl-review-table.ready{border-color:#9fceec;background:#f0f9ff}
.dl-review-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.dl-review-actions button,.dl-review-primary,.dl-review-secondary{border:0;border-radius:11px;padding:12px 15px;font-weight:850;font-size:14px;cursor:pointer;min-height:45px}.dl-review-primary{background:#087b70;color:#fff}.dl-review-secondary{background:#e2eef1;color:#133547}.dl-review-danger{background:#fff1e9!important;color:#a24421!important}.dl-review-actions button:disabled{opacity:.45;cursor:not-allowed}
.dl-review-line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #e7eff1}.dl-review-line:last-child{border:0}.dl-review-line small{color:#6a7c83;display:block}.dl-review-pill{display:inline-block;border-radius:999px;padding:6px 10px;background:#e3f2f6;font-size:12px;font-weight:850}
.dl-review-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dl-review-menu button{border:1px solid #c8dfe0;border-radius:11px;background:white;padding:12px;text-align:left;cursor:pointer;color:#143141}.dl-review-menu strong{display:block}.dl-review-menu small{color:#62808b}
.dl-review-order{padding:15px;border:1px solid #d3e3e7;border-radius:15px;background:#fff;margin:11px 0}.dl-review-order h4{margin:0 0 5px;font-size:18px}.dl-review-order p{margin:4px 0;color:#47636e}.dl-review-order .dl-review-actions{margin-bottom:0}.dl-review-total{font-size:24px;font-weight:900;text-align:right;margin:14px 0}.dl-review-note{width:100%;box-sizing:border-box;border:1px solid #b8d1da;border-radius:10px;padding:12px;font:inherit;margin:9px 0;background:#fff}.dl-review-empty{background:#fff;border:1px dashed #b5ccd5;padding:24px;border-radius:15px;color:#536a78;text-align:center}.dl-review-history{margin-top:22px}.dl-review-history summary{cursor:pointer;font-weight:850}
@media(max-width:800px){.dl-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.dl-review-grid,.dl-review-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dl-review-table{padding:11px;min-height:100px}.dl-review-table strong{font-size:17px}.dl-review-table b{font-size:16px}.dl-review-header{padding:14px}.dl-review-header h2{font-size:24px}}

/* Meseras: visible per-item quantity and compact running total. */
.dl-review-order-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;margin-bottom:15px;background:#e7f8f1;border:1px solid #a9d9c6;border-radius:12px;color:#105c46}
.dl-review-order-summary span{display:grid;gap:3px}.dl-review-order-summary small{font-size:13px}.dl-review-order-summary strong{font-size:24px;white-space:nowrap}
.dl-review-search{width:100%;box-sizing:border-box;min-height:46px;border:1px solid #a9cbd0;border-radius:11px;padding:11px 13px;font:inherit;margin:5px 0 14px;background:#fff;color:#143141}
.dl-review-menu-item{display:flex;align-items:center;justify-content:space-between;gap:9px;min-width:0;border:1px solid #c8dfe0;border-radius:12px;background:#fff;padding:11px}
.dl-review-menu-item[hidden],.dl-review-no-results[hidden]{display:none!important}
.dl-review-item-text{min-width:0;overflow-wrap:anywhere}.dl-review-item-text strong{display:block;font-size:15px}.dl-review-item-text small{display:block;color:#62808b;margin-top:3px;font-size:12px}
.dl-review-qty{display:flex;align-items:center;gap:5px;flex-shrink:0}.dl-review-qty button{width:38px;height:40px;padding:0;border:0;border-radius:10px;background:#087b70;color:#fff;font-size:23px;font-weight:800;text-align:center;cursor:pointer}.dl-review-qty button:disabled{background:#e8eff0;color:#8b9ca1;cursor:default}.dl-review-qty output{display:inline-grid;place-items:center;min-width:26px;font-size:19px;font-weight:900;color:#102e41}
@media(max-width:600px){.dl-review-menu{grid-template-columns:1fr}.dl-review-menu-item{padding:10px}.dl-review-order-summary strong{font-size:21px}}
/* v117: owner-approved browser access and delegation */
.dl-pwa-device{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid #cbdfe2;background:#fff;border-radius:12px;padding:13px;margin:9px 0}.dl-pwa-device small{color:#56717d}.dl-pwa-admin .admin-section{margin-bottom:16px}.dl-pwa-admin .action,.dl-pwa-admin .secondary-action{min-height:42px}.dl-pwa-admin a{font-weight:800;color:#006f82}

/* v129: shared pickup queue; prominently identifies each table. */
.dl-ready-section{margin:12px 0 20px;padding:14px;border:2px solid #0a8c78;border-radius:16px;background:#eaf9f4;scroll-margin-top:16px}
.dl-ready-section .dl-review-toolbar{margin:0 0 8px}.dl-ready-section h3{color:#075b50;font-size:clamp(20px,4vw,26px)}
.dl-ready-card{border:2px solid #9acfc0;background:#fff}.dl-ready-card h4{font-size:clamp(23px,5vw,30px);color:#075b50;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dl-ready-card .dl-review-actions button{flex:1;min-width:min(100%,190px)}

/* V141: opciones numeradas clicables, sin columnas vacías. */
.dl-lunch-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:8px 0 15px}
.dl-lunch-name{display:block;text-align:left;border:0;background:transparent;color:#143141;font:inherit;font-size:15px;font-weight:800;cursor:pointer;line-height:1.4;padding:5px;min-height:38px;overflow-wrap:anywhere}
.dl-lunch-name:focus-visible{outline:3px solid #087b70;outline-offset:2px;border-radius:6px}
@media(max-width:700px){.dl-lunch-choice-grid{grid-template-columns:1fr}}

/* V144 · ayuda memoria grande y legible para la mesera, sin intervención de Cocina. */
.dl-memory-success{margin:16px 0;padding:16px;background:#eafbf3;border:2px solid #0b806d;border-radius:18px;scroll-margin-top:15px}
.dl-memory-success>strong{font-size:clamp(19px,2.5vw,24px);color:#075b4f}
.dl-memory-success>p{font-size:16px;line-height:1.45;margin:8px 0 14px;color:#234e45}
.dl-memory-success>.dl-review-secondary{margin-top:12px;width:100%}
.dl-memory-card{border:2px solid #9acdc4;background:#fff;border-radius:18px;padding:clamp(14px,2.5vw,22px);margin:14px 0;color:#143141;box-shadow:0 7px 22px #103d3110}
.dl-memory-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:2px solid #d7e9e5;padding-bottom:13px}
.dl-memory-kicker{display:block;font-size:13px;letter-spacing:.07em;font-weight:900;color:#0a6558}
.dl-memory-head h4{font-size:clamp(21px,3vw,27px);line-height:1.25;margin:5px 0 0;color:#12384a}
.dl-memory-status{font-size:13px;font-weight:900;color:#075b4f;background:#d9f5e8;border-radius:999px;padding:9px 13px}
.dl-memory-item{padding:14px 0;border-bottom:1px solid #d7e9e5}
.dl-memory-item h4{font-size:clamp(19px,2.8vw,24px);line-height:1.35;margin:0 0 12px;color:#102e41;overflow-wrap:anywhere}
.dl-memory-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.dl-memory-section{border:1px solid #b7d9d2;background:#f2fbf8;border-radius:13px;padding:13px;min-width:0}
.dl-memory-section h5{font-size:15px;letter-spacing:.04em;color:#086b5b;margin:0 0 10px}
.dl-memory-dish{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:6px 0}
.dl-memory-dish strong{font-size:clamp(17px,2.5vw,21px);line-height:1.4;overflow-wrap:anywhere}
.dl-memory-dish span{white-space:nowrap;font-size:13px;font-weight:800;color:#56737b}
.dl-memory-special{font-size:17px;font-weight:800;color:#0a6558}
.dl-memory-note{padding:12px;border-radius:10px;background:#fff3db;font-size:17px;line-height:1.4}
.dl-memory-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:13px;font-size:16px;font-weight:800}
.dl-memory-foot strong{font-size:clamp(22px,3vw,28px);color:#075b4f}
.dl-memory-instruction{font-size:15px;line-height:1.45;color:#526b73;margin:12px 0 0}
@media(max-width:620px){.dl-memory-detail{grid-template-columns:1fr}.dl-memory-card{padding:13px}.dl-memory-dish strong{font-size:18px}.dl-memory-head h4{font-size:22px}}

/* V148: acciones y total siempre visibles mientras Mesera selecciona platos. */
.dl-review-sticky-actions{position:sticky;bottom:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px -4px -4px;padding:13px 15px;background:#f3fcf8;border:2px solid #087b70;border-radius:15px;box-shadow:0 -8px 28px #0b39402b}
.dl-review-sticky-info{min-width:0;display:flex;flex-direction:column;gap:4px;color:#103f37}
.dl-review-sticky-info strong{font-size:clamp(17px,2.4vw,22px)}
.dl-review-sticky-info span{font-size:14px;line-height:1.35;max-height:2.7em;overflow:hidden;overflow-wrap:anywhere}
.dl-review-sticky-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex-shrink:0}
.dl-review-sticky-buttons button{min-height:48px;font-size:15px}
.dl-review-sticky-buttons .dl-review-send{background:#0b638d}
.dl-review-sticky-buttons button:disabled{opacity:.45;cursor:not-allowed}
.dl-review-draft{border:1px solid #b5d8d0;background:#f2fbf8;border-radius:13px;padding:14px;margin:14px 0;scroll-margin-top:14px}
.dl-review-draft h3{margin:0 0 10px;font-size:19px}
.dl-review-draft .dl-review-line small{font-size:15px;line-height:1.5}
.dl-review-alacarte-heading{margin-top:22px}
.dl-lunch-action-hint{font-size:14px;color:#275d52;margin:12px 0 0}
@media(max-width:680px){.dl-review-sticky-actions{flex-direction:column;align-items:stretch;gap:9px;margin:12px -7px -7px;padding:11px}.dl-review-sticky-buttons{display:grid;grid-template-columns:1fr;gap:7px}.dl-review-sticky-buttons button{width:100%;min-height:46px}.dl-review-sticky-info span{font-size:13px}}
