/* Component customizations — the rest of rv-theme/src/scss/_custom.scss,
   expanded from its Sass @each loops. Loaded after Bootstrap's component CSS. */

/* Logo */
.logo { font-weight: 700; font-style: italic; letter-spacing: -0.024em }
.logo-part-1-color { color: var(--rv-logo-part-1) }
.logo-part-2-color { color: var(--rv-logo-part-2) }

/* Typography weights */
.fw-bold, strong { font-weight: var(--rv-text-bold) !important }
h1, h2, h3, h4, .h1, .h2, .h3, .h4 { font-weight: var(--rv-text-bold); letter-spacing: -0.02em }
h5, h6, .h5, .h6 { letter-spacing: -.01em }

/* Buttons — 2px border; padding-y trimmed by 1px vs form controls so inline
   .btn + .form-control rows share the same computed height. */
.btn { --bs-btn-font-weight: var(--rv-text-bold); --bs-btn-border-width: 2px; --bs-btn-padding-y: calc(.375rem - 1px); --bs-btn-font-size: .9375rem }
.btn-sm { --bs-btn-padding-y: calc(.25rem - 1px); --bs-btn-font-size: .8203125rem }
.btn-lg { --bs-btn-padding-y: calc(.5rem - 1px); --bs-btn-font-size: 1.171875rem }

/* Outline buttons: gray label, colored border, transparent fill on hover */
.btn-outline-primary, .btn-outline-secondary, .btn-outline-success, .btn-outline-info,
.btn-outline-warning, .btn-outline-danger, .btn-outline-light, .btn-outline-dark {
  --bs-btn-color: var(--rv-gray-700);
  --bs-btn-border-width: 2px;
  --bs-btn-hover-color: var(--rv-gray-900);
  --bs-btn-hover-bg: transparent;
  --bs-btn-active-color: var(--rv-gray-900);
  --bs-btn-active-bg: transparent;
  --bs-btn-disabled-color: var(--rv-gray-500);
  --bs-btn-disabled-bg: transparent;
}
.btn-outline-primary { --bs-btn-border-color: var(--rv-accent); --bs-btn-hover-border-color: var(--rv-accent-hover); --bs-btn-active-border-color: var(--rv-accent-active); --bs-btn-disabled-border-color: var(--rv-accent); --bs-btn-focus-shadow-rgb: var(--rv-accent-rgb) }
.btn-outline-secondary { --bs-btn-border-color: #797a7f; --bs-btn-hover-border-color: rgb(96.8,97.6,101.6); --bs-btn-active-border-color: rgb(84.7,85.4,88.9); --bs-btn-disabled-border-color: #797a7f; --bs-btn-focus-shadow-rgb: 121,122,127 }
.btn-outline-success { --bs-btn-border-color: #75C31B; --bs-btn-hover-border-color: rgb(93.6,156,21.6); --bs-btn-active-border-color: rgb(81.9,136.5,18.9); --bs-btn-disabled-border-color: #75C31B; --bs-btn-focus-shadow-rgb: 117,195,27 }
.btn-outline-info { --bs-btn-border-color: #0e8fce; --bs-btn-hover-border-color: rgb(11.2,114.4,164.8); --bs-btn-active-border-color: rgb(9.8,100.1,144.2); --bs-btn-disabled-border-color: #0e8fce; --bs-btn-focus-shadow-rgb: 14,143,206 }
.btn-outline-warning { --bs-btn-border-color: #ffc037; --bs-btn-hover-border-color: rgb(204,153.6,44); --bs-btn-active-border-color: rgb(178.5,134.4,38.5); --bs-btn-disabled-border-color: #ffc037; --bs-btn-focus-shadow-rgb: 255,192,55 }
.btn-outline-danger { --bs-btn-border-color: #d83e7c; --bs-btn-hover-border-color: rgb(172.8,49.6,99.2); --bs-btn-active-border-color: rgb(151.2,43.4,86.8); --bs-btn-disabled-border-color: #d83e7c; --bs-btn-focus-shadow-rgb: 216,62,124 }
.btn-outline-light { --bs-btn-border-color: #d5d6dd; --bs-btn-hover-border-color: rgb(170,171.2,176.8); --bs-btn-active-border-color: rgb(148.75,149.8,154.7); --bs-btn-disabled-border-color: #d5d6dd; --bs-btn-focus-shadow-rgb: 213,214,221 }
.btn-outline-dark { --bs-btn-border-color: #20222a; --bs-btn-hover-border-color: rgb(25.6,26.4,33.6); --bs-btn-active-border-color: rgb(22.4,23.1,29.4); --bs-btn-disabled-border-color: #20222a; --bs-btn-focus-shadow-rgb: 32,34,42 }

/* Solid buttons — fill + readable label straight from the per-mode palette */
.btn-primary, .btn-secondary, .btn-success, .btn-info, .btn-warning, .btn-danger, .btn-light, .btn-dark { --bs-btn-border-width: 2px }
.btn-primary { --bs-btn-color: var(--rv-on-primary); --bs-btn-bg: var(--rv-fill-primary); --bs-btn-border-color: var(--rv-fill-primary); --bs-btn-hover-color: var(--rv-on-primary); --bs-btn-hover-bg: var(--rv-hover-primary); --bs-btn-hover-border-color: var(--rv-hover-primary); --bs-btn-active-color: var(--rv-on-primary); --bs-btn-active-bg: var(--rv-active-primary); --bs-btn-active-border-color: var(--rv-active-primary); --bs-btn-disabled-color: var(--rv-on-primary); --bs-btn-disabled-bg: var(--rv-fill-primary); --bs-btn-disabled-border-color: var(--rv-fill-primary); --bs-btn-focus-shadow-rgb: var(--rv-accent-rgb); color: var(--rv-on-primary) }
.btn-secondary { --bs-btn-color: var(--rv-on-secondary); --bs-btn-bg: var(--rv-fill-secondary); --bs-btn-border-color: var(--rv-fill-secondary); --bs-btn-hover-color: var(--rv-on-secondary); --bs-btn-hover-bg: var(--rv-hover-secondary); --bs-btn-hover-border-color: var(--rv-hover-secondary); --bs-btn-active-color: var(--rv-on-secondary); --bs-btn-active-bg: var(--rv-active-secondary); --bs-btn-active-border-color: var(--rv-active-secondary); --bs-btn-disabled-color: var(--rv-on-secondary); --bs-btn-disabled-bg: var(--rv-fill-secondary); --bs-btn-disabled-border-color: var(--rv-fill-secondary); color: var(--rv-on-secondary) }
.btn-success { --bs-btn-color: var(--rv-on-success); --bs-btn-bg: var(--rv-fill-success); --bs-btn-border-color: var(--rv-fill-success); --bs-btn-hover-color: var(--rv-on-success); --bs-btn-hover-bg: var(--rv-hover-success); --bs-btn-hover-border-color: var(--rv-hover-success); --bs-btn-active-color: var(--rv-on-success); --bs-btn-active-bg: var(--rv-active-success); --bs-btn-active-border-color: var(--rv-active-success); --bs-btn-disabled-color: var(--rv-on-success); --bs-btn-disabled-bg: var(--rv-fill-success); --bs-btn-disabled-border-color: var(--rv-fill-success); color: var(--rv-on-success) }
.btn-info { --bs-btn-color: var(--rv-on-info); --bs-btn-bg: var(--rv-fill-info); --bs-btn-border-color: var(--rv-fill-info); --bs-btn-hover-color: var(--rv-on-info); --bs-btn-hover-bg: var(--rv-hover-info); --bs-btn-hover-border-color: var(--rv-hover-info); --bs-btn-active-color: var(--rv-on-info); --bs-btn-active-bg: var(--rv-active-info); --bs-btn-active-border-color: var(--rv-active-info); --bs-btn-disabled-color: var(--rv-on-info); --bs-btn-disabled-bg: var(--rv-fill-info); --bs-btn-disabled-border-color: var(--rv-fill-info); color: var(--rv-on-info) }
.btn-warning { --bs-btn-color: var(--rv-on-warning); --bs-btn-bg: var(--rv-fill-warning); --bs-btn-border-color: var(--rv-fill-warning); --bs-btn-hover-color: var(--rv-on-warning); --bs-btn-hover-bg: var(--rv-hover-warning); --bs-btn-hover-border-color: var(--rv-hover-warning); --bs-btn-active-color: var(--rv-on-warning); --bs-btn-active-bg: var(--rv-active-warning); --bs-btn-active-border-color: var(--rv-active-warning); --bs-btn-disabled-color: var(--rv-on-warning); --bs-btn-disabled-bg: var(--rv-fill-warning); --bs-btn-disabled-border-color: var(--rv-fill-warning); color: var(--rv-on-warning) }
.btn-danger { --bs-btn-color: var(--rv-on-danger); --bs-btn-bg: var(--rv-fill-danger); --bs-btn-border-color: var(--rv-fill-danger); --bs-btn-hover-color: var(--rv-on-danger); --bs-btn-hover-bg: var(--rv-hover-danger); --bs-btn-hover-border-color: var(--rv-hover-danger); --bs-btn-active-color: var(--rv-on-danger); --bs-btn-active-bg: var(--rv-active-danger); --bs-btn-active-border-color: var(--rv-active-danger); --bs-btn-disabled-color: var(--rv-on-danger); --bs-btn-disabled-bg: var(--rv-fill-danger); --bs-btn-disabled-border-color: var(--rv-fill-danger); color: var(--rv-on-danger) }
.btn-light { --bs-btn-color: var(--rv-on-light); --bs-btn-bg: var(--rv-fill-light); --bs-btn-border-color: var(--rv-fill-light); --bs-btn-hover-color: var(--rv-on-light); --bs-btn-hover-bg: var(--rv-hover-light); --bs-btn-hover-border-color: var(--rv-hover-light); --bs-btn-active-color: var(--rv-on-light); --bs-btn-active-bg: var(--rv-active-light); --bs-btn-active-border-color: var(--rv-active-light); --bs-btn-disabled-color: var(--rv-on-light); --bs-btn-disabled-bg: var(--rv-fill-light); --bs-btn-disabled-border-color: var(--rv-fill-light); color: var(--rv-on-light) }
.btn-dark { --bs-btn-color: var(--rv-on-dark); --bs-btn-bg: var(--rv-fill-dark); --bs-btn-border-color: var(--rv-fill-dark); --bs-btn-hover-color: var(--rv-on-dark); --bs-btn-hover-bg: var(--rv-hover-dark); --bs-btn-hover-border-color: var(--rv-hover-dark); --bs-btn-active-color: var(--rv-on-dark); --bs-btn-active-bg: var(--rv-active-dark); --bs-btn-active-border-color: var(--rv-active-dark); --bs-btn-disabled-color: var(--rv-on-dark); --bs-btn-disabled-bg: var(--rv-fill-dark); --bs-btn-disabled-border-color: var(--rv-fill-dark); color: var(--rv-on-dark) }

/* Text / link utilities — light mode darkens pale accents for legibility */
.text-primary { --bs-text-opacity: 1; color: var(--rv-accent-shade) !important }
.link-primary { color: var(--rv-accent-shade) !important }
.link-primary:hover, .link-primary:focus-visible { color: color-mix(in srgb, var(--rv-accent-shade), #000 10%) !important }

/* Dark mode routes chromatic text utilities to the per-mode palette fill */
[data-bs-theme='dark'] .text-primary { color: var(--rv-fill-primary) !important }
[data-bs-theme='dark'] .text-secondary { color: var(--rv-fill-secondary) !important }
[data-bs-theme='dark'] .text-success { color: var(--rv-fill-success) !important }
[data-bs-theme='dark'] .text-info { color: var(--rv-fill-info) !important }
[data-bs-theme='dark'] .text-warning { color: var(--rv-fill-warning) !important }
[data-bs-theme='dark'] .text-danger { color: var(--rv-fill-danger) !important }
[data-bs-theme='dark'] .link-primary { color: var(--rv-fill-primary) !important }
[data-bs-theme='dark'] .btn-outline-primary, [data-bs-theme='dark'] .btn-outline-primary:hover, [data-bs-theme='dark'] .btn-outline-primary:focus-visible, [data-bs-theme='dark'] .btn-outline-primary:active, [data-bs-theme='dark'] .btn-outline-primary.active { border-color: var(--rv-fill-primary) }
[data-bs-theme='dark'] .btn-outline-secondary, [data-bs-theme='dark'] .btn-outline-secondary:hover, [data-bs-theme='dark'] .btn-outline-secondary:focus-visible, [data-bs-theme='dark'] .btn-outline-secondary:active, [data-bs-theme='dark'] .btn-outline-secondary.active { border-color: var(--rv-fill-secondary) }
[data-bs-theme='dark'] .btn-outline-success, [data-bs-theme='dark'] .btn-outline-success:hover, [data-bs-theme='dark'] .btn-outline-success:focus-visible, [data-bs-theme='dark'] .btn-outline-success:active, [data-bs-theme='dark'] .btn-outline-success.active { border-color: var(--rv-fill-success) }
[data-bs-theme='dark'] .btn-outline-info, [data-bs-theme='dark'] .btn-outline-info:hover, [data-bs-theme='dark'] .btn-outline-info:focus-visible, [data-bs-theme='dark'] .btn-outline-info:active, [data-bs-theme='dark'] .btn-outline-info.active { border-color: var(--rv-fill-info) }
[data-bs-theme='dark'] .btn-outline-warning, [data-bs-theme='dark'] .btn-outline-warning:hover, [data-bs-theme='dark'] .btn-outline-warning:focus-visible, [data-bs-theme='dark'] .btn-outline-warning:active, [data-bs-theme='dark'] .btn-outline-warning.active { border-color: var(--rv-fill-warning) }
[data-bs-theme='dark'] .btn-outline-danger, [data-bs-theme='dark'] .btn-outline-danger:hover, [data-bs-theme='dark'] .btn-outline-danger:focus-visible, [data-bs-theme='dark'] .btn-outline-danger:active, [data-bs-theme='dark'] .btn-outline-danger.active { border-color: var(--rv-fill-danger) }
[data-bs-theme='dark'] .btn-outline-light, [data-bs-theme='dark'] .btn-outline-light:hover, [data-bs-theme='dark'] .btn-outline-light:focus-visible, [data-bs-theme='dark'] .btn-outline-light:active, [data-bs-theme='dark'] .btn-outline-light.active { border-color: var(--rv-fill-light) }
[data-bs-theme='dark'] .btn-outline-dark, [data-bs-theme='dark'] .btn-outline-dark:hover, [data-bs-theme='dark'] .btn-outline-dark:focus-visible, [data-bs-theme='dark'] .btn-outline-dark:active, [data-bs-theme='dark'] .btn-outline-dark.active { border-color: var(--rv-fill-dark) }

/* Badges — pill radius, medium weight, palette fill + label */
.badge { --bs-badge-border-radius: var(--rv-pill-border-radius); --bs-badge-font-weight: 500; /* @kind font */ vertical-align: text-bottom; letter-spacing: 0 }
.badge.bg-primary, .badge.text-bg-primary, .text-bg-primary { --bs-badge-color: var(--rv-on-primary); color: var(--rv-on-primary) !important; background-color: var(--rv-fill-primary) !important }
.badge.bg-secondary, .badge.text-bg-secondary, .text-bg-secondary { --bs-badge-color: var(--rv-on-secondary); color: var(--rv-on-secondary) !important; background-color: var(--rv-fill-secondary) !important }
.badge.bg-success, .badge.text-bg-success, .text-bg-success { --bs-badge-color: var(--rv-on-success); color: var(--rv-on-success) !important; background-color: var(--rv-fill-success) !important }
.badge.bg-info, .badge.text-bg-info, .text-bg-info { --bs-badge-color: var(--rv-on-info); color: var(--rv-on-info) !important; background-color: var(--rv-fill-info) !important }
.badge.bg-warning, .badge.text-bg-warning, .text-bg-warning { --bs-badge-color: var(--rv-on-warning); color: var(--rv-on-warning) !important; background-color: var(--rv-fill-warning) !important }
.badge.bg-danger, .badge.text-bg-danger, .text-bg-danger { --bs-badge-color: var(--rv-on-danger); color: var(--rv-on-danger) !important; background-color: var(--rv-fill-danger) !important }
.badge.bg-light, .badge.text-bg-light, .text-bg-light { --bs-badge-color: var(--rv-on-light); color: var(--rv-on-light) !important; background-color: var(--rv-fill-light) !important }
.badge.bg-dark, .badge.text-bg-dark, .text-bg-dark { --bs-badge-color: var(--rv-on-dark); color: var(--rv-on-dark) !important; background-color: var(--rv-fill-dark) !important }

/* Alerts — tinted from the palette (subtle fill, emphasis text, soft border) */
.alert-primary { --bs-alert-color: var(--rv-emphasis-primary); --bs-alert-bg: var(--rv-subtle-primary); --bs-alert-border-color: var(--rv-border-primary); --bs-alert-link-color: var(--rv-emphasis-primary) }
.alert-secondary { --bs-alert-color: var(--rv-emphasis-secondary); --bs-alert-bg: var(--rv-subtle-secondary); --bs-alert-border-color: var(--rv-border-secondary); --bs-alert-link-color: var(--rv-emphasis-secondary) }
.alert-success { --bs-alert-color: var(--rv-emphasis-success); --bs-alert-bg: var(--rv-subtle-success); --bs-alert-border-color: var(--rv-border-success); --bs-alert-link-color: var(--rv-emphasis-success) }
.alert-info { --bs-alert-color: var(--rv-emphasis-info); --bs-alert-bg: var(--rv-subtle-info); --bs-alert-border-color: var(--rv-border-info); --bs-alert-link-color: var(--rv-emphasis-info) }
.alert-warning { --bs-alert-color: var(--rv-emphasis-warning); --bs-alert-bg: var(--rv-subtle-warning); --bs-alert-border-color: var(--rv-border-warning); --bs-alert-link-color: var(--rv-emphasis-warning) }
.alert-danger { --bs-alert-color: var(--rv-emphasis-danger); --bs-alert-bg: var(--rv-subtle-danger); --bs-alert-border-color: var(--rv-border-danger); --bs-alert-link-color: var(--rv-emphasis-danger) }
.alert-light { --bs-alert-color: var(--rv-emphasis-light); --bs-alert-bg: var(--rv-subtle-light); --bs-alert-border-color: var(--rv-border-light); --bs-alert-link-color: var(--rv-emphasis-light) }
.alert-dark { --bs-alert-color: var(--rv-emphasis-dark); --bs-alert-bg: var(--rv-subtle-dark); --bs-alert-border-color: var(--rv-border-dark); --bs-alert-link-color: var(--rv-emphasis-dark) }

/* Progress bars — same per-mode fills as buttons/badges */
.progress-bar.bg-primary { --bs-progress-bar-bg: var(--rv-fill-primary); background-color: var(--rv-fill-primary) !important }
.progress-bar.bg-secondary { --bs-progress-bar-bg: var(--rv-fill-secondary); background-color: var(--rv-fill-secondary) !important }
.progress-bar.bg-success { --bs-progress-bar-bg: var(--rv-fill-success); background-color: var(--rv-fill-success) !important }
.progress-bar.bg-info { --bs-progress-bar-bg: var(--rv-fill-info); background-color: var(--rv-fill-info) !important }
.progress-bar.bg-warning { --bs-progress-bar-bg: var(--rv-fill-warning); background-color: var(--rv-fill-warning) !important }
.progress-bar.bg-danger { --bs-progress-bar-bg: var(--rv-fill-danger); background-color: var(--rv-fill-danger) !important }
.progress-bar.bg-light { --bs-progress-bar-bg: var(--rv-fill-light); background-color: var(--rv-fill-light) !important }
.progress-bar.bg-dark { --bs-progress-bar-bg: var(--rv-fill-dark); background-color: var(--rv-fill-dark) !important }

/* Cards — elevated panels on the body, no shadow, no border */
.card { --bs-card-bg: var(--rv-surface); --bs-card-cap-bg: transparent; --bs-card-border-width: 0; /* @kind spacing */ --bs-card-border-radius: 1.125rem; --bs-card-inner-border-radius: 1.125rem; --bs-card-spacer-y: var(--rv-card-padding-y); --bs-card-spacer-x: var(--rv-card-padding-x); --bs-card-cap-padding-y: .75rem; --bs-card-cap-padding-x: 1.25rem; box-shadow: none }
.card-header { background-color: transparent; border-bottom: 0 }
.card-title { font-size: 1.2rem; font-weight: 600 }
.card-header .card-title { margin-bottom: 0 }
.card.bg-transparent, .card.card-outline { --bs-card-bg: transparent; background-color: transparent; border: 1px solid var(--rv-gray-200) }
.card-header:first-child { padding: var(--rv-card-padding-x) var(--rv-card-padding-x) 0 var(--rv-card-padding-x) }
.card-footer { background-color: transparent; border-top: 0; padding: var(--rv-card-padding-x) }
.card-body { padding: var(--rv-card-padding-y) var(--rv-card-padding-x) }
.card-body:first-child { padding-top: var(--rv-card-padding-x) }
.card-body:last-child { padding-bottom: var(--rv-card-padding-x) }
.card > .card-header + .table-responsive { margin-top: 1rem }

/* Tables — header same weight/color as body */
.table { --bs-table-bg: transparent; --bs-table-color: var(--rv-gray-700) }
.table th { font-weight: 600; font-size: .8rem; border-bottom-width: 1px }
.table-responsive table.padding-no-margins th:first-child, .table-responsive table.padding-no-margins td:first-child { padding-left: var(--rv-card-padding-x) }
.table-responsive table.padding-no-margins th:last-child, .table-responsive table.padding-no-margins td:last-child { padding-right: var(--rv-card-padding-x) }
.table.padding-no-margins th:first-child, .table.padding-no-margins td:first-child, .table.padding-no-margins th:last-child, .table.padding-no-margins td:last-child { padding-left: .5rem; padding-right: .5rem }
.table.padding-no-margins .table-responsive:last-child { padding-bottom: var(--rv-card-padding-y) }

/* Forms */
.form-label { font-weight: 600; margin-bottom: .33rem }
.form-control, .form-select { border-radius: .625rem; font-size: .9375rem; box-shadow: none }
.form-control::placeholder { color: var(--rv-gray-400) }

/* Nav pills */
.nav-link { --bs-nav-link-color: var(--rv-gray-700); --bs-nav-link-hover-color: var(--rv-gray-900); --bs-nav-link-disabled-color: var(--rv-gray-400); font-size: .95rem; font-weight: 600 }
.nav-pills { --bs-nav-pills-border-radius: var(--rv-pill-border-radius); --bs-nav-pills-link-active-bg: var(--rv-gray-200) }
.nav-pills .nav-link.active { color: inherit }
.nav-pills-small { --bs-nav-link-padding-x: var(--rv-nav-pills-padding-x-small); --bs-nav-link-padding-y: var(--rv-nav-pills-padding-y-small) }
.nav-pills-background { background-color: var(--rv-surface); border-radius: var(--rv-pill-border-radius); padding: 2px; width: fit-content }

/* List group — active item follows the brandable accent */
.list-group { --bs-list-group-bg: transparent; --bs-list-group-active-color: var(--rv-accent-emphasis); --bs-list-group-active-bg: var(--rv-accent-subtle); --bs-list-group-active-border-color: var(--rv-accent-border-subtle) }
.list-group-pills { --bs-list-group-border-width: 0; /* @kind spacing */ --bs-list-group-border-radius: var(--rv-pill-border-radius); --bs-list-group-bg: transparent; --bs-list-group-color: var(--rv-gray-700); --bs-list-group-active-color: inherit; --bs-list-group-active-bg: var(--rv-gray-200); --bs-list-group-active-border-color: transparent; --bs-list-group-disabled-color: var(--rv-gray-400); --bs-list-group-action-color: var(--rv-gray-700); --bs-list-group-action-hover-color: inherit; --bs-list-group-action-hover-bg: var(--rv-gray-200); --bs-list-group-action-active-color: inherit; --bs-list-group-action-active-bg: var(--rv-gray-200); display: flex; flex-direction: column; gap: .25rem }
.list-group-pills > .list-group-item { border-radius: var(--rv-pill-border-radius); font-weight: 600 }
.list-group-pills > .list-group-item + .list-group-item { border-top-width: 0; margin-top: 0 }
.list-group-pills-background { background-color: var(--rv-surface); border-radius: var(--rv-pill-border-radius); padding: 2px; width: fit-content }
.list-group.list-group-padding-no-margins .list-group-item { padding-left: var(--rv-card-padding-x); padding-right: var(--rv-card-padding-x) }

/* Pagination — pill page numbers tracking --rv-gray-* per mode */
.pagination { --bs-pagination-padding-y: .25rem; --bs-pagination-padding-x: .5rem; --bs-pagination-border-width: 0; /* @kind spacing */ --bs-pagination-margin-start: .25rem; --bs-pagination-border-radius: var(--rv-pill-border-radius); --bs-pagination-color: var(--rv-gray-700); --bs-pagination-bg: transparent; --bs-pagination-border-color: transparent; --bs-pagination-hover-color: var(--rv-gray-900); --bs-pagination-hover-bg: var(--rv-gray-200); --bs-pagination-hover-border-color: transparent; --bs-pagination-focus-color: var(--rv-gray-900); --bs-pagination-focus-bg: var(--rv-gray-200); --bs-pagination-focus-box-shadow: none; --bs-pagination-active-color: var(--rv-gray-900); --bs-pagination-active-bg: var(--rv-gray-200); --bs-pagination-active-border-color: transparent; --bs-pagination-disabled-color: var(--rv-gray-400); --bs-pagination-disabled-bg: transparent; --bs-pagination-disabled-border-color: transparent }
.pagination .page-link { font-weight: 600; font-size: .95rem }
.page-item.active .page-link { background-image: none }

/* Popover / dropdown / navbar */
.popover { --bs-popover-header-color: var(--rv-gray-900) }
.dropdown-menu { --bs-dropdown-item-padding-x: 1.5rem; --bs-dropdown-header-padding-x: 1.5rem; --bs-dropdown-bg: var(--rv-surface); --bs-dropdown-border-width: 0; /* @kind spacing */ --bs-dropdown-border-radius: var(--rv-pill-border-radius) }
.main-navbar { background-color: var(--rv-surface) }
