/* =====================================================
   SRTable v2 chrome (18 Aug 2026)
   Toolbar, pills, bulk bar, footer for SRTable2.create().
   The table element itself reuses existing .sr-table styles.
   ===================================================== */

.srt { display: block; }

.srt-toolbar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.srt-toolbar-spacer { flex: 1 1 auto; }

.srt-search { padding: 7px 10px; border: 1px solid #e2e8f0; border-radius: 8px; font: inherit; font-size: 13px; min-width: 200px; }
.srt-search:focus { outline: none; border-color: #059669; }

.srt-filter { padding: 7px 10px; border: 1px solid #e2e8f0; border-radius: 8px; font: inherit; font-size: 13px; background: #fff; color: #475569; }

.srt-pills { display: inline-flex; gap: 4px; background: #f1f5f9; border-radius: 8px; padding: 3px; }
.srt-pill { border: none; background: transparent; padding: 5px 12px; border-radius: 6px; font: inherit; font-size: 13px; cursor: pointer; color: #475569; }
.srt-pill-active { background: #fff; color: #059669; font-weight: 600; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08); }

.srt-legend { display: flex; gap: 16px; margin-bottom: 10px; font-size: 13px; color: #64748b; }
.srt-legend-item { display: inline-flex; align-items: center; gap: 6px; }
.srt-legend-dot { width: 10px; height: 10px; border-radius: 3px; display: inline-block; }

.srt-bulkbar { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; padding: 8px 12px; background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 8px; }
.srt-bulk-count { font-weight: 600; color: #047857; margin-right: auto; font-size: 13px; }

.srt-footer { display: flex; align-items: center; gap: 12px; padding: 14px 20px; border-top: 1px solid #f1f5f9; background: #fff; border-radius: 0 0 12px 12px; }
.srt-count { color: #64748b; font-size: 13px; }
.srt-pager { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.srt-pageinfo { font-size: 13px; color: #475569; white-space: nowrap; padding: 0 4px; }
.srt-btn { padding: 7px 14px; border: 1px solid #e2e8f0; background: #fff; border-radius: 8px; font: inherit; font-size: 13px; font-weight: 500; color: #475569; cursor: pointer; transition: border-color 0.15s, color 0.15s; }
.srt-btn:hover:not(:disabled) { border-color: #059669; color: #059669; }
.srt-btn:disabled { opacity: 0.45; cursor: default; }
.srt-export { font-weight: 600; }

.srt-empty, .srt-loading { text-align: center; color: #94a3b8; padding: 28px 12px; }
.srt-msg { text-align: center; color: #dc2626; padding: 10px; font-size: 13px; }

.srt-selcell, .srt-expcell { width: 34px; text-align: center; }
.srt-exp { border: 1px solid #e2e8f0; background: #fff; border-radius: 6px; width: 24px; height: 24px; cursor: pointer; color: #475569; line-height: 1; }
.srt-expand-row td { background: #f8fafc; }

.srt-sortable { cursor: pointer; user-select: none; }
.srt-sortind { color: #059669; font-size: 11px; }

/* House rule: table links inherit text colour, underlined */
.srt .sr-table a { color: inherit; text-decoration: underline; }

/* Grouped header row + per-column header accent (18 Aug 2026) */
.srt .sr-table thead tr.srt-group-row th { text-align: center; font-weight: 600; }
.srt .sr-table th.srt-th-accent { color: var(--sr-green, #059669); }
