/* Admin entry forms. Extends pm.css + dash.css. */

.frm fieldset {
  border: 1px solid var(--rule);
  background: var(--card);
  padding: 18px 20px 20px;
  margin: 0 0 18px;
}
.frm legend {
  font: 500 16px/1.3 'IBM Plex Serif', Georgia, serif;
  padding: 0 8px;
  color: var(--navy);
}
.fs-note { font-size: 14px; color: var(--ink-soft); margin: 0 0 14px; }
.fs-note b { color: var(--ink); font-weight: 500; }

.grid2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px 18px; }
.grid3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px 18px; }

.frm label { display: block; font-size: 13.5px; color: var(--ink-soft); }
.frm label > input, .frm label > select, .frm label > textarea {
  display: block;
  width: 100%;
  margin-top: 5px;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--rule);
  background: var(--card);
  font: 400 15px/1.3 'IBM Plex Sans', sans-serif;
  color: var(--ink);
}
.frm label > textarea { min-height: 80px; }
.frm input:focus-visible, .frm select:focus-visible, .frm textarea:focus-visible {
  outline: 3px solid var(--navy); outline-offset: -1px;
}
.hint { font-size: 12.5px; color: var(--ink-soft); font-weight: 400; margin-left: 4px; }
.reason { margin-top: 14px; }

.checks { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px 20px; }
.checks label {
  display: flex; align-items: center; gap: 11px;
  font-size: 15px; color: var(--ink); min-height: 40px; cursor: pointer;
}
.checks input { width: 22px; height: 22px; accent-color: var(--navy); flex: 0 0 auto; }

.sub-h {
  font: 500 15.5px/1.3 'IBM Plex Serif', Georgia, serif;
  margin: 22px 0 10px;
}
.inline-pick { max-width: 420px; margin-bottom: 18px; }
.tbl.pick td input[type="checkbox"] { width: 22px; height: 22px; accent-color: var(--navy); }
.stock-row { margin-bottom: 10px; }
.stock-row input {
  min-height: 42px; padding: 9px 11px; border: 1px solid var(--rule);
  font: 400 14.5px/1.3 'IBM Plex Sans', sans-serif;
}
.qty-in {
  width: 110px; min-height: 40px; padding: 8px 10px; border: 1px solid var(--rule);
  font: 500 15px/1 'IBM Plex Mono', monospace;
}
.tbl td input[type="date"] {
  min-height: 40px; padding: 8px 10px; border: 1px solid var(--rule);
  font: 400 14px/1 'IBM Plex Sans', sans-serif;
}
.tbl tr.row-done td { color: var(--ink-soft); }

.btn-sm {
  display: inline-block;
  min-height: 36px;
  padding: 8px 14px;
  background: var(--card);
  border: 1px solid var(--navy);
  color: var(--navy);
  font: 500 13.5px/1 'IBM Plex Sans', sans-serif;
  text-decoration: none;
  cursor: pointer;
}
.hist { list-style: none; margin: 0; padding: 0; }
.hist li {
  background: var(--card); border: 1px solid var(--rule);
  padding: 11px 14px; margin-bottom: 7px; font-size: 14.5px;
  display: flex; gap: 12px; flex-wrap: wrap; align-items: baseline;
}
.hist b { font-weight: 500; }

@media (max-width: 760px) {
  .grid2, .grid3, .checks { grid-template-columns: 1fr; }
}
