/* Numbered pager (DISC-10, #366; web/pager.js), shared by every paged list: index.html and underwriting-v2.html. */
.pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 6px; }
.pager .pg-row { display: flex; align-items: center; gap: 4px; }
.pager .pg-narrow { display: none; }
.pager button { min-width: 40px; min-height: 40px; }
.pager .pg-num[aria-current="page"] { font-weight: 700; background: var(--accent, #2f6f9f); color: #fff; border-color: transparent; opacity: 1; }
.pager .pg-gap { min-width: 16px; text-align: center; color: var(--muted); }
.pager .pg-jump { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 12px; margin: 0; }
.pager .pg-input { width: 64px; min-height: 40px; box-sizing: border-box; font: inherit; }
.pager .pg-hint { font-size: 11px; color: var(--muted); }
.pager .pg-hint:empty { display: none; }
/* The pressed button while its page is read: the only busy state a page change shows. */
.pager .pg-busy::after { content: ""; display: inline-block; width: 9px; height: 9px; margin-left: 6px; vertical-align: -1px;
  border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: pg-spin .7s linear infinite; }
@keyframes pg-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .pager .pg-busy::after { animation: none; border-right-color: currentColor; } }
@media (max-width: 600px) {
  .pager { justify-content: flex-start; }
  .pager .pg-wide { display: none; }
  .pager .pg-narrow { display: flex; }
}
