/* #403 Part D — Provider Duplicate Review (temporary Administrator tool). Reuses the app's page-heading / pill / button
   language; sizes follow the list-sizing tokens (#403 Part A). The OS arrow cursor everywhere (law 5.21). */
.pd-page, .pd-page button, .pd-page label, .pd-page input { cursor: default; }
.pd-heading p { max-width: 900px; }
.pd-head-actions { display: flex; gap: 8px; align-items: center; }
.pd-counters { display: flex; flex-wrap: wrap; gap: 18px; align-items: center; margin: 8px 0 12px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--card); color: var(--muted); font-size: 13px; }
.pd-counters b { color: var(--ink); font-size: 18px; font-weight: 850; margin-right: 4px; }
.pd-counters .pd-meta { margin-left: auto; font-size: 12px; }
.pd-filters { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.pd-filter { border: 1px solid var(--line); background: var(--card); color: var(--ink); border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 700; }
.pd-filter span { color: var(--muted); font-weight: 750; margin-left: 4px; }
.pd-filter.active { border-color: var(--blue); background: var(--blue-soft); color: var(--blue-dark); }
.pd-search { margin-left: auto; }
.pd-search input { border: 1px solid var(--line); border-radius: 999px; padding: 6px 12px; min-width: 260px; font-size: 12px; background: var(--card); color: var(--ink); cursor: text; }
.pd-undo { position: sticky; top: 8px; z-index: 5; display: flex; align-items: center; gap: 12px; margin: 0 0 12px; padding: 10px 14px; border-radius: 12px; border: 1px solid #b7d3f5; background: #eaf3ff; color: #17355f; font-size: 13px; box-shadow: 0 8px 22px rgba(39,55,89,.10); }
.pd-undo.dismiss { border-color: #e2d8b8; background: #fff8e3; color: #5a4713; }
.pd-undo.skip { border-color: var(--line); background: var(--card); color: var(--muted); }
.pd-undo span { flex: 1; min-width: 0; }
.pd-undo .pd-undo-x { padding: 2px 8px; font-size: 16px; line-height: 1; }
.pd-error-banner { margin: 0 0 12px; padding: 10px 14px; border-radius: 12px; border: 1px solid #f0b4b4; background: var(--red-soft); color: #8a2a2a; font-size: 13px; display: flex; gap: 12px; align-items: center; }
.pd-groups { display: grid; gap: 12px; scroll-margin-top: 70px; }
.pd-group { border: 1px solid var(--line); border-radius: 14px; background: var(--card); box-shadow: 0 6px 18px rgba(39,55,89,.06); overflow: hidden; scroll-margin-top: 72px; }
.pd-group.pd-skipped { opacity: .82; }
.pd-group-head { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 9px 14px; border-bottom: 1px solid var(--line); background: #f7f9fc; font-size: 12px; color: var(--muted); }
.pd-kind { font-weight: 850; letter-spacing: .04em; text-transform: uppercase; font-size: 10.5px; padding: 3px 8px; border-radius: 999px; background: #e9eef6; color: #33507a; }
.kind-name .pd-kind, .kind-npi .pd-kind { background: #e3f7ef; color: #08765c; }
.kind-entity .pd-kind { background: var(--purple-soft); color: var(--purple); }
.kind-fax .pd-kind { background: var(--amber-soft); color: #8b580b; }
.kind-address .pd-kind, .kind-practice .pd-kind { background: #edf0f4; color: #687386; }
.pd-reasons { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex: 1; }
.pd-linekey { font-variant-numeric: tabular-nums; color: var(--ink); font-weight: 700; }
.pd-usage-total { font-weight: 800; color: var(--ink); }
.pd-tag { padding: 2px 8px; border-radius: 999px; background: #edf0f4; color: #687386; font-size: 11px; font-weight: 700; }
.pd-table { display: grid; }
.pd-row { display: grid; grid-template-columns: 74px minmax(180px, 1.3fr) minmax(120px, .9fr) 150px minmax(170px, 1.2fr) minmax(120px, .8fr) 110px; gap: 10px; align-items: center; padding: 8px 14px; border-top: 1px solid #eef1f5; font-size: var(--p3-list-fs, 11.55px); min-height: 48px; }
.pd-row-head { min-height: 30px; padding: 6px 14px; border-top: 0; background: #fbfcfe; color: #7b8699; font-size: var(--p3-list-fs-head, 9.45px); font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.pd-row > span { min-width: 0; }
.pd-row:not(.pd-row-head):hover { background: #f5f9ff; }
.pd-row.is-keeper { background: #edf9f3; }
.pd-row.is-keeper .pd-keep b { color: #087b59; }
.pd-keep { display: flex; align-items: center; gap: 6px; font-weight: 800; color: var(--muted); }
.pd-keep input { margin: 0; width: 15px; height: 15px; accent-color: #087b59; }
.pd-name strong, .pd-spec, .pd-addr, .pd-name small, .pd-source small, .pd-use small, .pd-fax small { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pd-name strong { font-weight: 800; }
.pd-row small { color: var(--muted); font-size: var(--p3-list-fs-small, 9.45px); margin-top: 1px; }
.pd-fax { font-variant-numeric: tabular-nums; font-weight: 600; }
.pd-nofax { color: #b42318; background: #fde8e8; border: 1px solid #f4b8b8; border-radius: 6px; padding: 1px 7px; font-weight: 900; letter-spacing: .05em; font-size: 10.5px; }
.pd-source .pill { font-size: var(--p3-list-fs-small, 9.45px); font-weight: 800; padding: 2px 7px; }
.pd-use b { font-size: 15px; font-weight: 850; color: #9aa3b2; }
.pd-use b.has-use { color: #0E7490; }
.pd-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px 14px; border-top: 1px solid var(--line); background: #fbfcfe; }
.pd-actions .pd-error { color: #8a2a2a; font-weight: 700; font-size: 12px; }
.pd-more { display: flex; justify-content: center; margin: 14px 0 30px; }
/* #408 — bulk mode (Near-Certain), read-only views (Dismissed / Facilities) */
.pd-counters small { font-size: 11px; color: var(--muted); font-weight: 600; }
.pd-bulkbar { position: sticky; top: 8px; z-index: 4; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 12px; padding: 10px 14px; border-radius: 12px; border: 1px solid #bfe3d1; background: #eefaf4; color: #0f5132; font-size: 13px; box-shadow: 0 8px 22px rgba(39,55,89,.08); }
.pd-bulkbar strong { font-size: 18px; font-weight: 850; }
.pd-bulk-actions { display: flex; gap: 8px; align-items: center; }
.pd-bulk-summary { flex-basis: 100%; color: #0f5132; font-weight: 700; }
.pd-compact .pd-group-head { padding: 7px 12px; }
.pd-tick { display: inline-flex; align-items: center; gap: 8px; }
.pd-tick input { width: 16px; height: 16px; margin: 0; accent-color: #087b59; }
.pd-row-compact { grid-template-columns: 74px minmax(200px, 1.4fr) 140px minmax(100px, .7fr) minmax(110px, .7fr) 60px; min-height: 40px; padding: 5px 12px; }
.pd-done { opacity: .78; }
.pd-tag-ok { background: #e3f7ef; color: #08765c; }
.pd-mini { padding: 3px 9px; font-size: 12px; }
.pd-readonly .pd-row { min-height: 40px; }
.pd-note { color: var(--muted); font-size: 12px; font-weight: 700; }
[data-theme="dark"] .pd-bulkbar { background: #12302a; border-color: #1f6b4e; color: #cdeedd; }
[data-theme="dark"] .pd-bulk-summary { color: #cdeedd; }
.pd-loading, .pd-empty { padding: 20px; text-align: center; color: var(--muted); }
@media (max-width: 1100px) { .pd-row { grid-template-columns: 64px minmax(150px, 1.3fr) minmax(100px, .9fr) 130px minmax(140px, 1fr) minmax(100px, .8fr) 90px; } }
/* dark theme (#344 store: data-theme="dark" on <html>) */
[data-theme="dark"] .pd-counters, [data-theme="dark"] .pd-group, [data-theme="dark"] .pd-filter { background: #111c2e; border-color: #263652; color: #cfd8e6; }
[data-theme="dark"] .pd-counters b, [data-theme="dark"] .pd-usage-total, [data-theme="dark"] .pd-linekey, [data-theme="dark"] .pd-name strong, [data-theme="dark"] .pd-spec, [data-theme="dark"] .pd-addr, [data-theme="dark"] .pd-fax { color: #e6edf7; }
[data-theme="dark"] .pd-group-head, [data-theme="dark"] .pd-actions, [data-theme="dark"] .pd-row-head { background: #0d1726; border-color: #263652; color: #8ea0bb; }
[data-theme="dark"] .pd-row { border-color: #1c2a42; }
[data-theme="dark"] .pd-row:not(.pd-row-head):hover { background: #16243a; }
[data-theme="dark"] .pd-row.is-keeper { background: #12302a; }
[data-theme="dark"] .pd-filter.active { background: #1a3050; border-color: #3b82f6; color: #cfe1ff; }
[data-theme="dark"] .pd-undo { background: #1a3050; border-color: #3b82f6; color: #dbe8ff; }
[data-theme="dark"] .pd-undo.dismiss { background: #3a3010; border-color: #8a6d1a; color: #f3e3a8; }
[data-theme="dark"] .pd-tag, [data-theme="dark"] .pd-kind { background: #1c2a42; color: #b9c7db; }
