/*
 * CACC Reseller Picker
 * Every rule is scoped under :is(#cacc-rp, #cacc-rp-portal). An ID selector outranks any class-based theme/Elementor rule
 * (e.g. Hello Elementor's button/table defaults), so the design no longer depends on stylesheet load order.
 * Change the variables below to match the theme.
 */
:is(#cacc-rp, #cacc-rp-portal) {
    --rp-accent: #ff4500;
    --rp-accent-ink: #fff;
    --rp-ink: #1a1a1b;
    --rp-muted: #6b7280;
    --rp-line: #e5e7eb;
    --rp-bg: #fff;
    --rp-soft: #f6f7f9;
    --rp-sel: #fff3ed;
    --rp-ok: #0f7b3e;
    --rp-ok-bg: #e9f7ef;
    --rp-warn: #8a5a00;
    --rp-warn-bg: #fff6e0;
    --rp-err: #a32d2d;
    --rp-err-bg: #fdecec;
    --rp-radius: 10px;

    color: var(--rp-ink);
    font-size: 14px;
    line-height: 1.4;
    max-width: 100%;
}
:is(#cacc-rp, #cacc-rp-portal) *, :is(#cacc-rp, #cacc-rp-portal) *::before, :is(#cacc-rp, #cacc-rp-portal) *::after { box-sizing: border-box; }

/* Header */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__head {
    display: flex; align-items: flex-end; justify-content: space-between; gap: 16px;
    margin-bottom: 16px; flex-wrap: wrap;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__title { margin: 0 0 4px; padding: 0; font-size: 24px; line-height: 1.2; color: var(--rp-ink); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sub { margin: 0; color: var(--rp-muted); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__cartbox { display: flex; align-items: center; gap: 8px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__cartlink,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__cartlink:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__cartlink:focus {
    display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px;
    border: 1px solid var(--rp-line); border-radius: 999px; color: var(--rp-ink); text-decoration: none; white-space: nowrap;
    background: var(--rp-bg);
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__cartlink:hover { border-color: var(--rp-ink); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__cartlink strong {
    background: var(--rp-accent); color: var(--rp-accent-ink); border-radius: 999px;
    min-width: 24px; padding: 1px 8px; text-align: center; font-size: 12px;
}

/* Filters */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__filters {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 12px 14px;
    padding: 16px; background: var(--rp-soft); border: 1px solid var(--rp-line); border-radius: var(--rp-radius);
    margin: 0 0 14px;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__field,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__range {
    display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 0; border: 0; min-width: 0;
    font-size: 12px; font-weight: 600; color: var(--rp-muted); text-transform: uppercase; letter-spacing: .03em; line-height: 1.4;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__field--wide { grid-column: span 2; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__range { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; column-gap: 6px; row-gap: 4px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__rlabel { grid-column: 1 / -1; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__dash { color: var(--rp-muted); font-weight: 400; }
:is(#cacc-rp, #cacc-rp-portal) input[type="search"],
:is(#cacc-rp, #cacc-rp-portal) input[type="number"],
:is(#cacc-rp, #cacc-rp-portal) select {
    width: 100%; min-width: 0; height: 36px; min-height: 0; padding: 0 10px; margin: 0;
    border: 1px solid var(--rp-line); border-radius: 8px; background: var(--rp-bg); color: var(--rp-ink);
    font-family: inherit; font-size: 14px; font-weight: 400; line-height: normal;
    text-transform: none; letter-spacing: 0; box-shadow: none;
}
:is(#cacc-rp, #cacc-rp-portal) input[type="search"]:focus,
:is(#cacc-rp, #cacc-rp-portal) input[type="number"]:focus,
:is(#cacc-rp, #cacc-rp-portal) select:focus { outline: 2px solid var(--rp-accent); outline-offset: 0; border-color: transparent; box-shadow: none; }
:is(#cacc-rp, #cacc-rp-portal) input[type="checkbox"] {
    width: 16px; height: 16px; margin: 0; padding: 0; cursor: pointer; accent-color: var(--rp-accent); vertical-align: middle;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__field--actions { justify-content: flex-end; gap: 8px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__check {
    display: flex; align-items: center; gap: 6px; margin: 0;
    text-transform: none; letter-spacing: 0; font-weight: 500; color: var(--rp-ink); font-size: 13px;
}

/* Buttons (states listed explicitly so theme :hover/:focus colors never leak in) */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn:focus,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn:active {
    display: inline-flex; align-items: center; justify-content: center; height: 38px; min-height: 0; padding: 0 16px; margin: 0;
    border-radius: 8px; border: 1px solid var(--rp-line); background: var(--rp-bg); color: var(--rp-ink);
    font-family: inherit; font-size: 14px; font-weight: 600; line-height: 1;
    cursor: pointer; text-decoration: none; white-space: nowrap;
    text-transform: none; letter-spacing: 0; box-shadow: none; text-shadow: none; transition: none;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn:hover { border-color: var(--rp-ink); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn:focus-visible { outline: 2px solid var(--rp-accent); outline-offset: 2px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--primary,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--primary:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--primary:focus,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--primary:active { background: var(--rp-accent); border-color: var(--rp-accent); color: var(--rp-accent-ink); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--primary:hover { filter: brightness(.95); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn:disabled { opacity: .45; cursor: not-allowed; filter: none; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--sm,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--sm:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--sm:focus { height: 36px; padding: 0 12px; font-size: 13px; border-radius: 999px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--sm[hidden] { display: none; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--confirm,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--confirm:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__btn--confirm:focus { background: var(--rp-err-bg); border-color: var(--rp-err); color: var(--rp-err); }

/* Bar + table */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; color: var(--rp-muted); flex-wrap: wrap; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__per { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__per select { width: auto; height: 32px; }

:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__tablewrap {
    overflow-x: auto; border: 1px solid var(--rp-line); border-radius: var(--rp-radius); background: var(--rp-bg);
    transition: opacity .15s;
}
:is(#cacc-rp, #cacc-rp-portal).is-loading .cacc-rp__tablewrap { opacity: .55; pointer-events: none; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table {
    width: 100%; border-collapse: collapse; border-spacing: 0; margin: 0; border: 0; font-size: 14px; background: transparent;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table th,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table td {
    padding: 9px 7px; border: 0; border-bottom: 1px solid var(--rp-line); text-align: left; vertical-align: middle;
    white-space: nowrap; background: transparent; line-height: 1.4; font-size: 14px; color: var(--rp-ink);
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table thead th { background: var(--rp-soft); position: sticky; top: 0; z-index: 1; font-weight: 700; white-space: normal; vertical-align: bottom; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr:last-child td { border-bottom: 0; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] { cursor: pointer; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id]:hover td { background: var(--rp-soft); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-selected td,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-selected:hover td { background: var(--rp-sel); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-incart { cursor: default; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-incart td { color: var(--rp-muted); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table .cacc-rp__cb { width: 36px; text-align: center; padding-left: 10px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table .cacc-rp__price { padding-right: 12px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table .cacc-rp__num { text-align: right; font-variant-numeric: tabular-nums; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table .cacc-rp__center { text-align: center; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table .cacc-rp__price { font-weight: 700; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table .cacc-rp__user { font-weight: 600; }
/* Deal price: original crossed out above, "Deal" tag + discounted price below */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__was { display: block; font-size: 11px; font-weight: 400; color: var(--rp-muted); text-decoration: line-through; line-height: 1.2; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__now { display: inline-flex; align-items: center; gap: 5px; color: var(--rp-ok); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__deal {
    display: inline-block; padding: 1px 6px; border-radius: 999px; background: var(--rp-ok-bg); color: var(--rp-ok);
    font-size: 10px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; line-height: 1.5;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__uname { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__tag {
    margin-left: 8px; padding: 2px 7px; border-radius: 999px; background: var(--rp-accent); color: var(--rp-accent-ink);
    font-size: 11px; font-weight: 600; font-family: inherit;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__muted { color: var(--rp-muted); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sub2 { display: block; font-size: 11px; color: var(--rp-muted); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pill { display: inline-block; padding: 1px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1.5; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pill--yes { background: var(--rp-ok-bg); color: var(--rp-ok); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pill--no { background: var(--rp-soft); color: var(--rp-muted); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table .cacc-rp__empty td { text-align: center; padding: 40px 10px; color: var(--rp-muted); cursor: default; }

/* Sortable column headers */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort:focus,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort:active {
    all: unset; cursor: pointer; display: inline-flex; align-items: center; gap: 4px;
    font-family: inherit; font-size: 12px; font-weight: 700; line-height: 1.4;
    text-transform: uppercase; letter-spacing: .02em; color: var(--rp-muted); white-space: normal; text-align: left;
}
/* Column headers stay on one line */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table thead th .cacc-rp__sort { white-space: nowrap; }

:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort.is-sorted { color: var(--rp-ink); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort:focus-visible { outline: 2px solid var(--rp-accent); outline-offset: 2px; border-radius: 3px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__arrow::after { content: '↕'; opacity: .35; font-size: 11px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort.is-sorted[data-dir="asc"] .cacc-rp__arrow::after { content: '↑'; opacity: 1; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__sort.is-sorted[data-dir="desc"] .cacc-rp__arrow::after { content: '↓'; opacity: 1; }

/* Pager */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pager { display: flex; justify-content: center; align-items: center; gap: 4px; margin: 14px 0 0; flex-wrap: wrap; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg:hover,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg:focus,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg:active {
    min-width: 36px; height: 34px; min-height: 0; padding: 0 10px; margin: 0;
    border: 1px solid var(--rp-line); border-radius: 8px; background: var(--rp-bg); color: var(--rp-ink);
    font-family: inherit; font-size: 13px; font-weight: 600; line-height: 1;
    cursor: pointer; text-transform: none; letter-spacing: 0; box-shadow: none; transition: none;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg:hover:not(:disabled) { border-color: var(--rp-ink); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg.is-current,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg.is-current:hover { background: var(--rp-ink); border-color: var(--rp-ink); color: var(--rp-bg); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__pg:disabled { opacity: .4; cursor: default; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__gap { padding: 0 4px; color: var(--rp-muted); }

/* Messages */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msg {
    display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    margin: 14px 0 0; padding: 12px 14px; border-radius: var(--rp-radius); font-weight: 500;
}
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msg[hidden] { display: none; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msg span { flex: 1 1 260px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msg--ok { background: var(--rp-ok-bg); color: var(--rp-ok); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msg--warn { background: var(--rp-warn-bg); color: var(--rp-warn); }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msg--error { background: var(--rp-err-bg); color: var(--rp-err); }

/* Sticky selection footer */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__footer {
    position: sticky; bottom: 12px; z-index: 5; margin-top: 16px;
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    padding: 12px 14px; background: var(--rp-bg); border: 1px solid var(--rp-line); border-radius: var(--rp-radius);
    box-shadow: 0 6px 24px rgba(0, 0, 0, .08);
}
:is(#cacc-rp, #cacc-rp-portal).has-selection .cacc-rp__footer { border-color: var(--rp-accent); }
/* The bar is pinned by picker.js: while the picker is on screen it's moved into #cacc-rp-portal
   (end of <body>) and fixed to the bottom of the screen; otherwise it sits at the end of the picker. */
#cacc-rp.cacc-rp--fixedbar .cacc-rp__footer { position: relative; bottom: auto; }
#cacc-rp-portal .cacc-rp__footer.is-pinned { position: fixed; z-index: 99990; margin: 0; }
#cacc-rp .cacc-rp__footer-spacer { height: 0; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__selinfo { font-size: 15px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__selinfo [data-rp="seltotal"] { font-weight: 700; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__dot { color: var(--rp-muted); margin: 0 4px; }
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__footer-actions { display: flex; gap: 8px; }

/* Login / no access */
.cacc-rp-gate {
    max-width: 420px; padding: 24px; border: 1px solid #e5e7eb; border-radius: 10px; background: #fff;
}
.cacc-rp-gate h3 { margin-top: 0; }
.cacc-rp-gate input[type="text"], .cacc-rp-gate input[type="password"] { width: 100%; }

/* Mobile-only controls are hidden on desktop */
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mbar,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mselpage,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mbadge,
:is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msuffix { display: none; }

/* ============ Phones: rows become cards ============ */
@media (max-width: 700px) {
    /* Toolbar: Filters toggle + Sort by */
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mbar { display: flex; gap: 8px; margin: 0 0 10px; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mbar .cacc-rp__mfilters { flex: 1 1 0; height: 38px; }
    :is(#cacc-rp, #cacc-rp-portal).filters-open .cacc-rp__mbar .cacc-rp__mfilters { border-color: var(--rp-accent); }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mbar select.cacc-rp__msort { flex: 1.5 1 0; width: auto; height: 38px; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__fcount { color: var(--rp-accent); margin-left: 2px; }

    /* Filters collapse behind the toggle */
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__filters { display: none; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px; gap: 10px; }
    :is(#cacc-rp, #cacc-rp-portal).filters-open .cacc-rp__filters { display: grid; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__field--wide,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__range,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__field--actions { grid-column: 1 / -1; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__field--actions { flex-direction: row; align-items: center; justify-content: space-between; }

    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__head { align-items: center; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__title { font-size: 20px; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mselpage { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; color: var(--rp-ink); }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__per { display: none; }

    /* Table -> stacked cards */
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__tablewrap { border: 0; border-radius: 0; background: transparent; overflow: visible; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody { display: block; width: 100%; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table thead { display: none; }

    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] {
        display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 8px; row-gap: 8px;
        margin: 0 0 8px; padding: 11px 12px;
        border: 1px solid var(--rp-line); border-radius: 12px; background: var(--rp-bg);
        -webkit-user-select: none; user-select: none; -webkit-tap-highlight-color: transparent;
    }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-selected { border-color: var(--rp-accent); box-shadow: inset 0 0 0 1px var(--rp-accent); background: var(--rp-sel); }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-incart { background: var(--rp-soft); }

    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id]:hover > td,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-selected > td,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.is-selected:hover > td {
        padding: 0; border: 0; background: transparent; white-space: normal; text-align: left; min-width: 0;
    }

    /* Row 1: checkbox + username ... price */
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__cb { grid-row: 1; grid-column: 1; width: auto; justify-self: start; align-self: center; z-index: 1; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__user {
        grid-row: 1; grid-column: 1 / 4; align-self: center; padding-left: 26px;
        overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__price { grid-row: 1; grid-column: 4; align-self: center; text-align: right; font-size: 15px; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.has-deal > td.cacc-rp__price { grid-column: 3 / 5; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.has-deal > td.cacc-rp__user { grid-column: 1 / 3; }

    /* Row 2: four stats with labels */
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td[data-label] { grid-row: 2; font-size: 14px; font-weight: 600; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td[data-label]::before {
        content: attr(data-label); display: block; margin-bottom: 1px;
        font-size: 11px; font-weight: 400; color: var(--rp-muted);
    }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-karma  { grid-column: 1; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-ckarma { grid-column: 2; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-age    { grid-column: 3; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-tasks  { grid-column: 4; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-age .cacc-rp__sub2,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-post,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-comment { display: none; }

    /* Row 3: badges (only the ones that apply) */
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__flag,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-type { grid-row: 3; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__c-type { grid-column: span 2; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.is-off { display: none; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr[data-id] > td.cacc-rp__flag .cacc-rp__pill { display: none; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mbadge,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__typetext {
        display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1.5;
    }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__mbadge { background: var(--rp-ok-bg); color: var(--rp-ok); }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__typetext { background: var(--rp-soft); color: var(--rp-muted); }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__msuffix { display: inline; }

    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.cacc-rp__empty,
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__table tbody tr.cacc-rp__empty td { display: block; }

    /* Sticky footer full width */
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__footer { bottom: 0; border-radius: 0; margin-left: -1px; margin-right: -1px; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__footer-actions { width: 100%; }
    :is(#cacc-rp, #cacc-rp-portal) .cacc-rp__footer-actions .cacc-rp__btn--primary { flex: 1; }
}
