/* Admin page: same look as the site, denser tables. */
.admin-tabs { margin: 0 0 1.5rem; flex-wrap: wrap; row-gap: .25rem; }
.count:not(:empty) { display: inline-block; min-width: 1.4em; padding: 0 .35em; margin-left: .2em;
  background: var(--red); color: #fff; border-radius: 1em; font: 700 .95rem/1.4 var(--text); text-align: center; }
#flash { margin: -.5rem 0 1rem; }
.tab h2 { margin-top: 2rem; }
.tab h2:first-child { margin-top: 0; }
.chart.admin td, .chart.admin th { padding: .5rem .7rem; font-size: .98rem; }
.chart.admin td.acts { white-space: nowrap; text-align: right; }
.chart.admin select { font: inherit; max-width: 16rem; padding: .3rem; border: 1px solid var(--rule); background: var(--paper); color: var(--ink); }
.btn.sm { font-size: 1rem; padding: .45rem .8rem; }
.btn.ghost { background: transparent; color: var(--ink); border: 1px solid var(--rule); }
.btn.ghost:hover { background: var(--paper); }
.acts .btn + .btn, .acts .btn + label, .acts label + .btn { margin-left: .4rem; }
.acts label { font-size: .9rem; color: var(--muted); }
.none { color: var(--muted); font-style: italic; margin: .25rem 0 1rem; }
.found { list-style: none; padding: 0; margin: 1rem 0; }
.found li { padding: .5rem 0; border-bottom: 1px solid var(--rule); }
.found button { font-weight: 700; }
.cust-h { margin: 2rem 0 .25rem; font-size: 2.25rem; }
.revoked td { color: var(--muted); text-decoration: line-through; }
.revoked td.acts { text-decoration: none; }
.picks { border: 1px solid var(--rule); padding: .5rem .75rem; max-height: 18rem; overflow: auto; }
.picks legend { font-weight: 600; padding: 0 .25rem; }
.picks label, .check { display: flex !important; gap: .5rem; align-items: center; font-weight: 400 !important; }
.picks input, .check input { width: auto; }
.grid2 { grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); align-items: start; }
.grid2 .msg, .grid2 .btn { grid-column: 1 / -1; }
select { font: inherit; color: var(--ink); background: var(--paper); border: 1px solid var(--rule); border-bottom: 2px solid var(--muted); border-radius: 2px; padding: .55rem .6rem; }
.codes { columns: 2; font: 700 1.3rem/1.9 var(--display); letter-spacing: .08em; padding-left: 1.5rem; }
#form-find { margin-bottom: 1rem; }
@media print {
  body * { visibility: hidden; }
  #new-codes, #new-codes * { visibility: visible; }
  #new-codes { position: absolute; inset: 0; border: 0; }
  #print-codes { display: none; }
  .codes { columns: 3; font-size: 16pt; }
}
.opt { display: flex; gap: .4rem; align-items: center; font-size: .88rem; color: var(--muted); margin-top: .3rem; }
.opt input { width: auto; }
