.prrp-panel { background:#fff; border:1px solid var(--pr-c-border,#e5e7eb); border-radius:8px; padding:24px; margin-top:20px; }
.prrp-panel h2 { margin:0 0 16px; font-size:21px; }
.prrp-badge { display:inline-block; padding:2px 9px; border-radius:999px; background:#f3f4f6; color:#6b7280; font-size:12px; font-weight:600; }
.prrp-badge.is-active { background:#dcfce7; color:#166534; }
.prrp-badge.is-void { background:#fee2e2; color:#991b1b; }
.prrp-inline-form { display:flex; align-items:flex-end; gap:10px; flex-wrap:wrap; margin:14px 0; }
.prrp-inline-form label { flex:1 1 240px; }
.prrp-inline-form label span { display:block; margin-bottom:6px; font-weight:600; }
.prrp-inline-form input,.prrp-copy-row input,.prrp-form-grid input,.prrp-form-grid select,.prrp-form-grid textarea { width:100%; padding:10px 12px; border:1px solid var(--pr-c-border,#d1d5db); border-radius:6px; background:#fff; font:inherit; }
.prrp-copy-row { display:flex; gap:8px; align-items:center; }
.prrp-copy-row input { flex:1; font-family:monospace; }
.prrp-general-referral { margin:16px 0; }
.prrp-general-referral summary { cursor:pointer; margin-bottom:12px; }
.prrp-wallet-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:12px; }
.prrp-wallet { border:1px solid var(--pr-c-border,#e5e7eb); border-radius:8px; padding:16px; display:flex; flex-direction:column; gap:6px; }
.prrp-wallet strong { font-size:24px; color:#166534; }
.prrp-wallet strong.is-negative { color:#b91c1c; }
.prrp-wallet small { color:var(--pr-c-text-muted,#6b7280); }
.prrp-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.prrp-form-grid .pr-field--full { grid-column:1 / -1; }
.prrp-search-picker { position:relative; }
.prrp-search-picker.is-dropdown::after { content:'▾'; position:absolute; right:12px; top:50%; transform:translateY(-50%); color:#64748b; pointer-events:none; }
.prrp-search-picker.is-dropdown input[type="search"] { padding-right:34px; }
.prrp-search-picker input[aria-invalid="true"] { border-color:#b91c1c; box-shadow:0 0 0 1px #b91c1c; }
.prrp-search-results { position:absolute; z-index:1000; top:calc(100% + 4px); left:0; right:0; max-height:260px; overflow-y:auto; background:#fff; border:1px solid var(--pr-c-border,#d1d5db); border-radius:6px; box-shadow:0 10px 24px rgba(15,23,42,.14); }
.prrp-search-option { display:block; width:100%; padding:10px 12px; border:0; border-bottom:1px solid #f1f5f9; background:#fff; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.prrp-search-option:last-child { border-bottom:0; }
.prrp-search-option:hover,.prrp-search-option:focus,.prrp-search-option.is-active { background:#eff6ff; color:#1d4ed8; outline:0; }
.prrp-search-message { padding:11px 12px; color:var(--pr-c-text-muted,#6b7280); }
.prrp-search-message.is-error { color:#b91c1c; }
.prrp-search-message.is-loading { color:#1d4ed8; }
.prrp-member-balance { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; padding:12px 14px; border:1px solid #bfdbfe; border-radius:7px; background:#eff6ff; color:#1e3a8a; }
.prrp-member-balance[hidden] { display:none; }
.prrp-member-balance strong { flex:0 0 auto; }
.prrp-member-balance ul { display:flex; flex-wrap:wrap; gap:5px 18px; margin:0; padding-left:20px; }
.prrp-member-balance__selected { font-size:16px; font-weight:700; }
.prrp-record-filter { display:grid; grid-template-columns:minmax(260px,1fr) auto; gap:14px; align-items:end; }
.prrp-record-filter__actions { display:flex; gap:8px; padding-bottom:22px; }
.prrp-table-wrap { overflow-x:auto; }
.prrp-positive { color:#166534; font-weight:700; }
.prrp-negative { color:#b91c1c; font-weight:700; }
.prrp-pagination-summary { margin-top:12px; color:var(--pr-c-text-muted,#6b7280); font-size:13px; }
.prrp-pagination ul.page-numbers { display:flex; flex-wrap:wrap; gap:6px; margin:12px 0 0; padding:0; list-style:none; }
.prrp-pagination .page-numbers a,.prrp-pagination .page-numbers span { display:block; min-width:34px; padding:6px 10px; border:1px solid var(--pr-c-border,#d1d5db); border-radius:5px; background:#fff; color:inherit; text-align:center; text-decoration:none; }
.prrp-pagination .page-numbers .current { border-color:#2563eb; background:#2563eb; color:#fff; }
@media (max-width:700px) {
    .prrp-panel { padding:18px; }
    .prrp-form-grid { grid-template-columns:1fr; }
    .prrp-form-grid .pr-field--full { grid-column:auto; }
    .prrp-copy-row { align-items:stretch; flex-direction:column; }
    .prrp-record-filter { grid-template-columns:1fr; }
    .prrp-record-filter__actions { padding-bottom:0; }
    .prrp-member-balance ul { display:block; width:100%; }
}
.prrp-admin .prrp-panel { max-width:1200px; }
.prrp-admin .pr-table { width:100%; border-collapse:collapse; background:#fff; }
.prrp-admin .pr-table th,.prrp-admin .pr-table td { padding:10px 12px; border:1px solid #dcdcde; text-align:left; vertical-align:top; }
.prrp-admin .pr-table th { background:#f6f7f7; }
.prrp-admin .pr-btn { display:inline-block; padding:8px 14px; border:1px solid #2271b1; border-radius:4px; background:#fff; color:#2271b1; cursor:pointer; text-decoration:none; }
.prrp-admin .pr-btn--primary { background:#2271b1; color:#fff; }
.prrp-admin .pr-btn--danger { border-color:#b32d2e; color:#b32d2e; }
.prrp-admin-search { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:18px 0 12px; }
.prrp-admin-search input[type="search"] { min-width:280px; }
.prrp-feature-form { display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; }
.prrp-feature-form label { display:inline-flex; align-items:center; gap:6px; font-weight:600; }
.prrp-feature-form input:disabled + span,.prrp-feature-form label:has(input:disabled) { opacity:.58; }
.prrp-feature-table td { vertical-align:middle; }
