.rrp-badges { display: inline; }
.rrp-badge {
    display: inline-flex;
    align-items: center;
    gap: .4em;
    padding: .3em .65em;
    margin: .15em .25em .15em 0;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 5px;
    background: var(--rrp-bg, #536B7A);
    color: var(--rrp-fg, #FFFFFF) !important;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none !important;
    vertical-align: middle;
    overflow-wrap: anywhere;
    max-width: 100%;
    box-sizing: border-box;
}
a.rrp-badge:hover { filter: brightness(.93); }
a.rrp-badge:focus-visible { outline: 2px solid #7A3948; outline-offset: 3px; }
.rrp-badge > i, .rrp-badge > svg { flex: 0 0 auto; color: inherit; }
.rrp-options { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0; padding: 0; border: 0; min-width: 0; }
.rrp-choice { position: relative; display: inline-flex; align-items: center; cursor: pointer; max-width: 100%; }
/* Visually hidden, still focusable and exposed as a checkbox to assistive technology. */
.rrp-choice input[type="checkbox"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}
.rrp-choice .rrp-badge { min-height: 32px; cursor: inherit; }
.rrp-choice input:checked + .rrp-badge {
    box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #7A3948;
}
.rrp-choice input:focus-visible + .rrp-badge {
    outline: 2px dashed #343A40;
    outline-offset: 6px;
}
.rrp-choice input:disabled + .rrp-badge { opacity: .8; cursor: default; }
@media (forced-colors: active) {
    .rrp-choice input:checked + .rrp-badge { border: 3px solid Highlight; }
}
.rrp-choice:has(input:disabled) { cursor: default; opacity: .8; }
.rrp-filter { clear: both; margin: 12px 0 18px; }
.rrp-filter fieldset { min-width: 0; }
.rrp-filter legend { display: block; color: #536B7A; font-size: 14px; font-weight: 700; padding: 0; }
.rrp-filter .rrp-help { margin: 6px 0 12px; font-size: 12px; }
.rrp-filter-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 14px; }
.rrp-active { color: #7A3948; font-size: 12px; }
.rrp-picker dt small { font-weight: normal; }
@media (max-width: 700px) {
    .rrp-picker dt, .rrp-picker dd { float: none; width: auto; margin-inline-start: 0; }
    .rrp-picker dd { margin-top: 8px; }
    .rrp-filter-actions { gap: 10px; }
}
