/* 🆕 (Update 31) SmartPager — صفحه‌بندیِ مشترک (پیشوندِ sp-) */
.sp-pager { display: flex; align-items: center; justify-content: space-between; gap: 10px 16px; flex-wrap: wrap; padding: 10px 2px; font-family: inherit; }
.sp-summary { font-size: 12.5px; color: #4b5563; white-space: nowrap; }
.sp-summary b { color: #111827; }
.sp-page-of { color: #9ca3af; margin-inline-start: 4px; }
.sp-controls { display: inline-flex; align-items: center; gap: 4px; }
.sp-btn { min-width: 34px; height: 34px; padding: 0 8px; border-radius: 9px; border: 1px solid #e5e7eb; background: #fff; color: #374151;
    font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background .15s, border-color .15s, color .15s; }
.sp-btn:hover:not(:disabled) { background: #f5f3ff; border-color: #c4b5fd; color: #6d28d9; }
.sp-btn.on { background: #7c3aed; border-color: #7c3aed; color: #fff; cursor: default; }
.sp-btn:disabled { opacity: .4; cursor: not-allowed; }
.sp-btn:focus-visible, .sp-jump input:focus-visible, .sp-size select:focus-visible { outline: 3px solid rgba(124,58,237,.35); outline-offset: 1px; }
.sp-ellipsis { min-width: 22px; text-align: center; color: #9ca3af; user-select: none; }
.sp-tools { display: inline-flex; align-items: center; gap: 12px; font-size: 12.5px; color: #4b5563; }
.sp-jump, .sp-size { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.sp-jump input { width: 64px; height: 34px; border: 1px solid #e5e7eb; border-radius: 9px; padding: 0 8px; font: inherit; text-align: center; }
.sp-size select { height: 34px; border: 1px solid #e5e7eb; border-radius: 9px; padding: 0 8px; font: inherit; background: #fff; }
@media (max-width: 640px) {
    .sp-pager { justify-content: center; }
    .sp-summary { width: 100%; text-align: center; }
    .sp-edge, .sp-jump { display: none; }
    .sp-btn { min-width: 32px; height: 32px; }
}
