/* ---- manual reservation («➕ حجز يدوي», admin-server.js nr*) — same table idea as the receive-goods screen (admin-receipt.css rc2-*):
   the header row and every row share ONE grid template so the columns line up exactly. Scoped to nr2-* classes. ---- */
#modal.nr2-wide { width: 1120px; max-width: 97vw; }
.nr2-title { margin: 14px 0 8px; font-weight: 700; font-size: 15px; }
.nr2-title small { font-weight: 500; margin-right: 8px; }
.nr2-table { border: 1px solid var(--line, #e5e9f2); border-radius: 10px; overflow: hidden; }
.nr2-row-head, .nr2-row {
  display: grid;
  grid-template-columns: 30px 1.3fr 1.2fr 100px 120px 190px 150px 32px;
  gap: 8px; align-items: center; padding: 8px 10px;
}
.nr2-row-head { background: #f1f5f9; font-size: 12px; font-weight: 700; color: var(--mut, #64748b); }
.nr2-row { border-top: 1px solid var(--line, #e5e9f2); min-width: 0; }
.nr2-row:nth-child(even) { background: #fafbfe; }
.nr2-row.nr2-dup { background: #fffbeb; }
.nr2-f { min-width: 0; }
.nr2-f > label { display: none; }
.nr2-f input { width: 100%; max-width: 100%; }
.nr2-code-wrap { position: relative; }
.nr2-code-wrap input.bad { border-color: #b91c1c; background: #fef2f2; }
.nr2-err, .nr2-warn { display: block; font-size: 11px; margin-top: 2px; }
.nr2-err { color: #b91c1c; }
.nr2-warn { color: #92400e; }
.nr2-name { font-weight: 600; }
.nr2-price, .nr2-sum { white-space: nowrap; }
.nr2-del { border: none; background: none; cursor: pointer; font-size: 15px; color: var(--mut, #64748b); padding: 4px; border-radius: 6px; }
.nr2-del:hover:not(:disabled) { background: #fee2e2; color: #b91c1c; }
.nr2-del:disabled { opacity: .35; cursor: default; }
.nr2-foot { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 10px; padding: 10px 12px; background: #f8fafc; border-radius: 10px; }
.nr2-foot .qq { margin-right: 6px; }
.nr2-grand b { font-size: 18px; color: #1d4ed8; }
@media (max-width: 900px) {
  #modal.nr2-wide { width: 94vw; }
  .nr2-row-head { display: none; }
  .nr2-row { grid-template-columns: 1fr 1fr; gap: 8px; border: 1px solid var(--line, #e5e9f2); border-radius: 10px; margin: 0 0 10px; padding: 10px; position: relative; }
  .nr2-table { border: 0; overflow: visible; }
  .nr2-f { display: flex; flex-direction: column; align-items: stretch; gap: 3px; }
  .nr2-f > label { display: block; font-size: 11.5px; color: var(--mut, #64748b); font-weight: 600; }
  .nr2-code-wrap, .nr2-name { grid-column: 1 / -1; }
  .nr2-no { position: absolute; top: 8px; left: 10px; }
  .nr2-no > label { display: none; }
  .nr2-f-del { grid-column: 1 / -1; align-items: flex-end; }
  .nr2-f-del > label { display: none; }
}
