/* Raj E Panchayat - Centralized Public UI
   This file intentionally loads last on public pages. All visual tokens come
   from Admin > System > Public UI Design. Business logic is untouched. */

@media screen {
body.public-site.rp-central-public {
  margin: 0 !important;
  background: var(--rp-ui-bg) !important;
  color: var(--rp-ui-text) !important;
  font-family: var(--rp-ui-font) !important;
  font-size: var(--rp-ui-font-size) !important;
  line-height: var(--rp-ui-line-height) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.public-site.rp-central-public *,
body.public-site.rp-central-public *::before,
body.public-site.rp-central-public *::after { box-sizing: border-box; }
body.public-site.rp-central-public img { max-width:100%; height:auto; }
body.public-site.rp-central-public a { color: var(--rp-ui-primary); text-underline-offset: 2px; }
body.public-site.rp-central-public a:hover { color: var(--rp-ui-primary-dark); }
body.public-site.rp-central-public h1,
body.public-site.rp-central-public h2,
body.public-site.rp-central-public h3,
body.public-site.rp-central-public h4,
body.public-site.rp-central-public h5,
body.public-site.rp-central-public h6 { color:var(--rp-ui-text); font-family:var(--rp-ui-font); letter-spacing:-.015em; }
body.public-site.rp-central-public p,
body.public-site.rp-central-public small,
body.public-site.rp-central-public .text-muted { color:var(--rp-ui-muted); }

/* Containers and section rhythm */
body.public-site.rp-central-public main > .container,
body.public-site.rp-central-public main > .container-fluid,
body.public-site.rp-central-public .rp-page-container,
body.public-site.rp-central-public .rp-container,
body.public-site.rp-central-public .rp-shell,
body.public-site.rp-central-public .page-shell,
body.public-site.rp-central-public .content-shell {
  width:min(calc(100% - (var(--rp-ui-container-pad) * 2)), var(--rp-ui-page-width)) !important;
  max-width:var(--rp-ui-page-width) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.public-site.rp-central-public section { scroll-margin-top: calc(var(--rp-ui-header-height) + 16px); }
body.public-site.rp-central-public :is(div,section,ul)[class$="-grid"],
body.public-site.rp-central-public :is(div,section,ul)[class*="-grid "] { gap:var(--rp-ui-grid-gap) !important; }

/* Modern header, while preserving all existing menu/login behaviour */
body.public-site.rp-central-public #rp-public-header {
  background:rgba(255,255,255,.96) !important;
  color:var(--rp-ui-text) !important;
  border-bottom:1px solid var(--rp-ui-border) !important;
  box-shadow:0 6px 22px rgba(15,23,42,.055) !important;
  backdrop-filter:blur(14px);
}
body.public-site.rp-central-public.rp-ui-header-sticky #rp-public-header { position:sticky !important; top:0 !important; }
body.public-site.rp-central-public #rp-public-header .rp-header-main {
  min-height:var(--rp-ui-header-height) !important;
  max-width:var(--rp-ui-page-width) !important;
  margin:0 auto !important;
  padding-left:var(--rp-ui-container-pad) !important;
  padding-right:var(--rp-ui-container-pad) !important;
}
body.public-site.rp-central-public #rp-public-header .rp-header-logo-wrap { width:var(--rp-ui-header-logo-size) !important; height:var(--rp-ui-header-logo-size) !important; flex:0 0 var(--rp-ui-header-logo-size) !important; }
body.public-site.rp-central-public #rp-public-header .rp-header-logo { width:100% !important; height:100% !important; object-fit:contain !important; }
body.public-site.rp-central-public #rp-public-header .rp-header-title { color:var(--rp-ui-primary-dark) !important; font-weight:850 !important; }
body.public-site.rp-central-public #rp-public-header .rp-header-subtitle,
body.public-site.rp-central-public #rp-public-header .rp-header-description-primary,
body.public-site.rp-central-public #rp-public-header .rp-header-description-secondary { color:var(--rp-ui-muted) !important; }
body.public-site.rp-central-public #rp-public-header .rp-main-navigation { background:var(--rp-ui-surface) !important; border-color:var(--rp-ui-border) !important; }
body.public-site.rp-central-public #rp-public-header .rp-navigation-inner { max-width:var(--rp-ui-page-width) !important; margin:auto !important; padding-left:var(--rp-ui-container-pad) !important; padding-right:var(--rp-ui-container-pad) !important; }
body.public-site.rp-central-public #rp-public-header .rp-nav-link,
body.public-site.rp-central-public #rp-public-header .rp-submenu a {
  color:var(--rp-ui-text) !important; border-radius:var(--rp-ui-button-radius) !important; font-weight:700 !important;
}
body.public-site.rp-central-public #rp-public-header .rp-nav-link:hover,
body.public-site.rp-central-public #rp-public-header .rp-nav-link.active,
body.public-site.rp-central-public #rp-public-header .rp-submenu a:hover { background:var(--rp-ui-surface-alt) !important; color:var(--rp-ui-primary-dark) !important; }
body.public-site.rp-central-public #rp-public-header .rp-header-menu-button,
body.public-site.rp-central-public #rp-public-header .rp-submenu-toggle { border-color:var(--rp-ui-border) !important; background:var(--rp-ui-surface) !important; color:var(--rp-ui-primary-dark) !important; border-radius:var(--rp-ui-button-radius) !important; }

/* Hero families */
body.public-site.rp-central-public :is(
  .rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,
  .rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,
  .rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero
) {
  background:linear-gradient(135deg,var(--rp-ui-surface) 0%,var(--rp-ui-surface-alt) 100%) !important;
  color:var(--rp-ui-text) !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-hero-radius) !important;
  box-shadow:var(--rp-ui-shadow) !important;
  padding:var(--rp-ui-hero-pad) !important;
}
body.public-site.rp-central-public :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero) h1,
body.public-site.rp-central-public :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero) h2 { color:var(--rp-ui-primary-dark) !important; }

/* Central card system: common Bootstrap + project card/panel/box families */
body.public-site.rp-central-public :is(
 .card,.rp-section-card,.rp-stat-card,.rp-module-card,.rp-egram-card,.rp-link-card,.rp-about-card,.rp-legal-card,.rp-contact-card,
 .rp-swamitav-card,.rp-gpdp-card,.rp-egp-card,.rp-ap-card,.viewer-card,.rp-payment-card,.rp-ticket-card,.rp-post-view-card,
 .blog-view-card,.rpb-card,.rp-ege-card,.vbg-side-card,.vbg-stat-card,.vbg-feature-card,.v21c-summary-card,.vdo25-summary-card,
 .vdo25-card,.v21c-card,.vrec-card,.stat-card,.rp-panel-section,.blog-panel,.rp-post-panel,.rp-ap-life-panel,
 .rp-gpdp-entry-panel,.rp-gpdp-pdf-panel,.rp-ap-pdf-panel,.rp-account-gp-panel,.compact-head-panel,.rp-bsr-hero-panel,
 .rp-collapsible-panel,.rp-filter-panel,.rp-head-panel,.vbg-report-panel,.vbg-full-panel,.vdo-panel,
 .rp-search-box,.rp-notice-box,.rp-empty-box,.rphm-box,.rp-pay-policy-box,.rpb-status-box,.rp-warning-box,.empty-box,
 .summary-box,.box
 ) {
  background:var(--rp-ui-surface) !important;
  color:var(--rp-ui-text) !important;
  border:var(--rp-ui-card-border) solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-card-radius) !important;
  box-shadow:var(--rp-ui-shadow) !important;
}
body.public-site.rp-central-public :is(.card-body,.rp-card-pad,.rpb-card-pad) { padding:var(--rp-ui-card-pad) !important; }
body.public-site.rp-central-public :is(.card-header,.card-footer) { background:var(--rp-ui-surface-alt) !important; border-color:var(--rp-ui-border) !important; }

/* Generic legacy card/panel/box bridge: centralizes custom Public modules without renaming backend markup. */
body.public-site.rp-central-public :is(div,article,section,li,a)[class$="-card"],
body.public-site.rp-central-public :is(div,article,section,li,a)[class*="-card "],
body.public-site.rp-central-public :is(div,article,section)[class$="-panel"],
body.public-site.rp-central-public :is(div,article,section)[class*="-panel "],
body.public-site.rp-central-public :is(div,article,section)[class$="-box"],
body.public-site.rp-central-public :is(div,article,section)[class*="-box "] {
  border-color:var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-card-radius) !important;
}
body.public-site.rp-central-public :is(div,article,section,li,a)[class$="-card"]:not(:has(> .card-body, > [class$="-body"], > [class*="-body "], > .card-header, > [class$="-head"], > [class*="-head "], > header)),
body.public-site.rp-central-public :is(div,article,section,li,a)[class*="-card "]:not(:has(> .card-body, > [class$="-body"], > [class*="-body "], > .card-header, > [class$="-head"], > [class*="-head "], > header)) { padding:var(--rp-ui-card-pad) !important; }

/* Tabs / segmented navigation */
body.public-site.rp-central-public :is(nav,div)[class$="-tabs"],
body.public-site.rp-central-public :is(nav,div)[class*="-tabs "] {
  gap:8px !important;
}
body.public-site.rp-central-public :is(nav,div)[class$="-tabs"] > a,
body.public-site.rp-central-public :is(nav,div)[class*="-tabs "] > a {
  background:var(--rp-ui-surface) !important;
  color:var(--rp-ui-text) !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-button-radius) !important;
}
body.public-site.rp-central-public :is(nav,div)[class$="-tabs"] > a.active,
body.public-site.rp-central-public :is(nav,div)[class*="-tabs "] > a.active {
  background:var(--rp-ui-primary) !important;
  border-color:var(--rp-ui-primary) !important;
  color:#fff !important;
}

/* Buttons: existing semantics stay intact; visual design is centralized. */
body.public-site.rp-central-public :is(
  .btn,.rp-home-btn,.rp-hub-btn,.rp-slider-btn,.rp-sso-btn,.rp-filter-btn,.rp-sr-btn,.rp-gpdp-btn,.rp-egp-btn,.rp-ap-btn,
  .rp-dlc-btn,.rp-swamitav-btn,.rp-renew-btn,.inst-btn,.inst-pay-btn,.inst-pdf-btn,.rp-btn-light,.rp-ticket-btn,.rp-contact-btn,
  .rp-post-btn,.rp-post-view-btn,.blog-btn,.rpb-btn,.rp-ege-btn,.vdo-mini-btn,.v21p-btn,.vrec-btn,.vdo25-gate-btn,.vhub-btn,
  .vdo25-btn,.vdo-view-btn,.v21c-filter-btn,.vdo25-filter-btn,.rp-filter-quick-btn,.rpp-modal-btn
) {
  min-height:var(--rp-ui-button-height) !important;
  border-radius:var(--rp-ui-button-radius) !important;
  font-family:var(--rp-ui-font) !important;
  font-size:var(--rp-ui-button-font-size) !important;
  font-weight:750 !important;
  padding:.55em 1em !important;
  display:inline-flex; align-items:center; justify-content:center; gap:.45rem;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease !important;
}
body.public-site.rp-central-public :is(.btn-primary,.rp-home-btn-primary,.blog-btn-primary,.rp-gpdp-btn-primary,[class*="btn-primary"]) {
  background:var(--rp-ui-primary) !important; border-color:var(--rp-ui-primary) !important; color:#fff !important;
}
body.public-site.rp-central-public :is(.btn-primary,.rp-home-btn-primary,.blog-btn-primary,.rp-gpdp-btn-primary,[class*="btn-primary"]):hover {
  background:var(--rp-ui-primary-dark) !important; border-color:var(--rp-ui-primary-dark) !important; color:#fff !important;
}
body.public-site.rp-central-public :is(.btn-light,.btn-outline-primary,.blog-btn-soft,.rp-post-btn-soft,.rp-ege-btn-soft,.rp-gpdp-btn-light,.inst-btn-light,.rp-btn-light) {
  background:var(--rp-ui-surface) !important; color:var(--rp-ui-primary-dark) !important; border-color:var(--rp-ui-border) !important;
}
body.public-site.rp-central-public :is(.btn,.rp-home-btn,.rp-hub-btn,.rp-filter-btn,.blog-btn,.rp-post-btn,.rp-ege-btn,.inst-btn):hover { transform:translateY(-1px); }

/* Generic custom button bridge. */
body.public-site.rp-central-public :is(a,button)[class*="-btn"] {
  min-height:var(--rp-ui-button-height) !important;
  border-radius:var(--rp-ui-button-radius) !important;
  font-family:var(--rp-ui-font) !important;
  font-size:var(--rp-ui-button-font-size) !important;
  font-weight:750 !important;
}
body.public-site.rp-central-public :is(a,button)[class*="-btn"]:not([class*="soft"]):not([class*="light"]):not([class*="outline"]):not([class*="danger"]):not([class*="close"]):not([class*="toggle"]):not([class*="filter"]):not([class*="share"]) {
  background:var(--rp-ui-primary) !important;
  border-color:var(--rp-ui-primary) !important;
  color:#fff !important;
}
body.public-site.rp-central-public :is(a,button)[class*="-btn"][class*="danger"] {
  background:var(--rp-ui-danger) !important;
  border-color:var(--rp-ui-danger) !important;
  color:#fff !important;
}
body.public-site.rp-central-public :is(a,button)[class*="-btn"][class*="soft"],
body.public-site.rp-central-public :is(a,button)[class*="-btn"][class*="light"],
body.public-site.rp-central-public :is(a,button)[class*="-btn"][class*="outline"],
body.public-site.rp-central-public :is(a,button)[class*="-btn"][class*="filter"] {
  background:var(--rp-ui-surface) !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-primary-dark) !important;
}

/* Forms and search/filter controls */
body.public-site.rp-central-public :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,textarea,.form-control,.form-select,.rp-search-input,.rpb-input,.vdo25-input,.vdo-search-input) {
  background:var(--rp-ui-surface) !important;
  color:var(--rp-ui-text) !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-input-radius) !important;
  font-family:var(--rp-ui-font) !important;
  font-size:inherit;
  box-shadow:none !important;
}
body.public-site.rp-central-public :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,.form-control,.form-select,.rp-search-input,.rpb-input,.vdo25-input,.vdo-search-input) { min-height:var(--rp-ui-input-height) !important; }
body.public-site.rp-central-public textarea { min-height:110px; }
body.public-site.rp-central-public :is(input,select,textarea,.form-control,.form-select):focus {
  border-color:var(--rp-ui-primary) !important; box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-ui-primary) 16%,transparent) !important; outline:none !important;
}
body.public-site.rp-central-public :is(.rp-filter-bar,.rp-filter-section,.rp-ege-filter,.rp-egp-filter,.psv-filter,.inst-filter,.rp-filter-card,.rp-result-filter,.v21c-filters,.vrec-filter,.vdo25-doc-filter,.vdo25-filters,.rp-compact-filter-form,.rpb-filter) {
  background:var(--rp-ui-surface) !important; border:1px solid var(--rp-ui-border) !important; border-radius:var(--rp-ui-card-radius) !important; box-shadow:var(--rp-ui-shadow) !important;
}

/* Tables */
body.public-site.rp-central-public :is(.table-responsive,.rp-table-wrap,.table-wrap,.vbg-table-wrap,.rp-gpdp-table-wrap,.rp-ege-table-box,.rp-egp-table-box,.rp-modern-table-wrap,.v21c-table-wrap,.vrec-table-wrap,.vdo25-table-wrap,.vdo-table-wrap,.psv-table-wrap,.inst-compact-table-wrap) {
  overflow:auto !important; border:1px solid var(--rp-ui-border) !important; border-radius:var(--rp-ui-table-radius) !important; background:var(--rp-ui-surface) !important; box-shadow:var(--rp-ui-shadow) !important;
}
body.public-site.rp-central-public :is(table,.table,.rp-table,.summary-table,.result-table,.vrec-table,.rpp-table,.rp-gpdp-table,.compact-installment-table,.psv-table,.inst-compact-table,.rp-bsr-table,.rp-modern-table,.v21c-table,.vdo25-table,.vdo-table,.vbg-table) {
  width:100%; margin:0; border-collapse:separate !important; border-spacing:0 !important; background:var(--rp-ui-surface) !important; color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public :is(table,.table,.rp-table,.summary-table,.result-table,.vrec-table,.rpp-table,.rp-gpdp-table,.compact-installment-table,.psv-table,.inst-compact-table,.rp-bsr-table,.rp-modern-table,.v21c-table,.vdo25-table,.vdo-table,.vbg-table) thead th {
  background:var(--rp-ui-surface-alt) !important; color:var(--rp-ui-primary-dark) !important; border-color:var(--rp-ui-border) !important; font-weight:800 !important; white-space:nowrap;
}
body.public-site.rp-central-public :is(table,.table,.rp-table,.summary-table,.result-table,.vrec-table,.rpp-table,.rp-gpdp-table,.compact-installment-table,.psv-table,.inst-compact-table,.rp-bsr-table,.rp-modern-table,.v21c-table,.vdo25-table,.vdo-table,.vbg-table) :is(th,td) {
  min-height:var(--rp-ui-table-row-height); padding:calc((var(--rp-ui-table-row-height) - 20px)/2) 12px !important; border-color:var(--rp-ui-border) !important; vertical-align:middle !important;
}
body.public-site.rp-central-public :is(table,.table) tbody tr:hover td { background:color-mix(in srgb,var(--rp-ui-surface-alt) 60%,white) !important; }

/* Badges, pills and chips */
body.public-site.rp-central-public :is(.badge,.rp-pill,.blog-pill,.blog-block-pill,.rp-type-pill,.rp-count-pill,.rp-ap-pill,.rp-year-pill,.rp-badge-list,.rp-section-badge,.rp-egp-badge,.rp-ege-badge,.rp-panel-total-badge,.rp-inst-access-badge,.rp-inst-card-badge,.psv-payment-badge,.rp-post-loaded-badge,.v21p-badge,.vrec-badge,.vdo-access-badge,.vhub-badge,.vdo25-badge,.hero-badge,.rp-filter-chip,.inst-filter-chip,.rp-ticket-chip,.rp-post-view-chip,.rp-ege-step-chip,.vrec-chip,.vdo-chip,.rpm-chip,.rpg-category-chip,.rp-type-chip) {
  border-radius:var(--rp-ui-badge-radius) !important; border:1px solid var(--rp-ui-border) !important; background:var(--rp-ui-surface-alt) !important; color:var(--rp-ui-primary-dark) !important; font-weight:750 !important;
}

body.public-site.rp-central-public :is(span,a)[class$="-badge"],
body.public-site.rp-central-public :is(span,a)[class*="-badge "],
body.public-site.rp-central-public :is(span,a)[class$="-pill"],
body.public-site.rp-central-public :is(span,a)[class*="-pill "],
body.public-site.rp-central-public :is(span,a)[class$="-chip"],
body.public-site.rp-central-public :is(span,a)[class*="-chip "] {
  border-radius:var(--rp-ui-badge-radius) !important;
}

/* Alerts */
body.public-site.rp-central-public :is(.alert,.rp-sr-alert,.rp-gpdp-alert,.rp-ap-alert,.rp-contact-alert,.rpp-alert,.rp-ticket-alert,.rpb-alert,.rp-about-alert,.rp-links-alert,.inst-pay-alert) {
  border-radius:var(--rp-ui-card-radius) !important; border-width:1px !important; box-shadow:none !important;
}
body.public-site.rp-central-public .alert-success { background:#ECFDF3 !important; border-color:#ABEFC6 !important; color:#067647 !important; }
body.public-site.rp-central-public :is(.alert-danger,.rp-alert-danger) { background:#FEF3F2 !important; border-color:#FECDCA !important; color:#B42318 !important; }
body.public-site.rp-central-public .alert-warning { background:#FFFAEB !important; border-color:#FEDF89 !important; color:#B54708 !important; }
body.public-site.rp-central-public .alert-info { background:#EFF8FF !important; border-color:#B2DDFF !important; color:#175CD3 !important; }

/* Modal */
body.public-site.rp-central-public :is(.modal-content,.rpp-modal,.rp-pay-modal-dialog,.rp-blog-share-modal,.rpb-share-modal) {
  background:var(--rp-ui-surface) !important; color:var(--rp-ui-text) !important; border:1px solid var(--rp-ui-border) !important; border-radius:var(--rp-ui-card-radius) !important; box-shadow:0 24px 64px rgba(15,23,42,.22) !important;
}
body.public-site.rp-central-public :is(.modal-header,.modal-footer) { border-color:var(--rp-ui-border) !important; }

/* Pagination */
body.public-site.rp-central-public :is(.pagination,.rpg-pagination) a,
body.public-site.rp-central-public :is(.pagination,.rpg-pagination) span {
  border-radius:var(--rp-ui-button-radius) !important; border-color:var(--rp-ui-border) !important; color:var(--rp-ui-primary-dark) !important; background:var(--rp-ui-surface) !important;
}
body.public-site.rp-central-public .page-item.active .page-link { background:var(--rp-ui-primary) !important; border-color:var(--rp-ui-primary) !important; color:#fff !important; }

/* Footer: centralized dark-surface system.
   IMPORTANT: override the footer's legacy light inner cards as well as text,
   otherwise white text lands on #f8fbfa/white surfaces. */
body.public-site.rp-central-public .rp-site-footer-v2 {
  --rp-ui-footer-panel-bg: rgba(255,255,255,.075);
  --rp-ui-footer-item-bg: rgba(255,255,255,.085);
  --rp-ui-footer-item-hover: rgba(255,255,255,.145);
  --rp-ui-footer-border-strong: rgba(255,255,255,.16);
  --rp-ui-footer-muted-text: rgba(248,250,252,.72);
  background:var(--rp-ui-footer-bg) !important;
  color:var(--rp-ui-footer-text) !important;
  border-top:0 !important;
}
body.public-site.rp-central-public .rp-site-footer-v2 .rp-footer-shell {
  max-width:var(--rp-ui-page-width) !important;
  padding-left:var(--rp-ui-container-pad) !important;
  padding-right:var(--rp-ui-container-pad) !important;
}

/* Outer footer surfaces */
body.public-site.rp-central-public .rp-site-footer-v2 :is(
  .rp-footer-panel,
  .rp-footer-stats,
  .rp-footer-bottom-card
) {
  background:var(--rp-ui-footer-panel-bg) !important;
  border:1px solid var(--rp-ui-footer-border-strong) !important;
  color:var(--rp-ui-footer-text) !important;
  box-shadow:none !important;
  border-radius:var(--rp-ui-card-radius) !important;
}

/* Inner clickable/info surfaces: these were legacy #f8fbfa/white. */
body.public-site.rp-central-public .rp-site-footer-v2 :is(
  .rp-footer-contact-item,
  .rp-footer-links a,
  .rp-footer-stat,
  .rp-scratch-box
) {
  background:var(--rp-ui-footer-item-bg) !important;
  border-color:var(--rp-ui-footer-border-strong) !important;
  color:var(--rp-ui-footer-text) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public .rp-site-footer-v2 :is(
  a.rp-footer-contact-item,
  .rp-footer-links a
):hover {
  background:var(--rp-ui-footer-item-hover) !important;
  border-color:rgba(255,255,255,.28) !important;
  color:#fff !important;
  transform:translateY(-1px);
}

/* Live statistic keeps a subtle green identity without becoming a white card. */
body.public-site.rp-central-public .rp-site-footer-v2 .rp-footer-stat-live {
  background:rgba(34,197,94,.12) !important;
  border-color:rgba(74,222,128,.28) !important;
}

/* Typography and icons */
body.public-site.rp-central-public .rp-site-footer-v2 :is(
  h2,h3,strong,
  .rp-footer-mini-title,
  .rp-footer-item-copy strong,
  .rp-footer-stat strong,
  .rp-scratch-result strong
) { color:var(--rp-ui-footer-text) !important; }
body.public-site.rp-central-public .rp-site-footer-v2 :is(
  p,small,
  .rp-footer-item-copy small,
  .rp-footer-stat small,
  .rp-scratch-result em
) { color:var(--rp-ui-footer-muted-text) !important; }
body.public-site.rp-central-public .rp-site-footer-v2 a { color:var(--rp-ui-footer-text) !important; }
body.public-site.rp-central-public .rp-site-footer-v2 .rp-footer-links a i,
body.public-site.rp-central-public .rp-site-footer-v2 .rp-footer-mini-title i,
body.public-site.rp-central-public .rp-site-footer-v2 .rp-footer-stat > i { color:color-mix(in srgb,var(--rp-ui-accent) 74%,#fff) !important; }
body.public-site.rp-central-public .rp-site-footer-v2 :is(
  .rp-footer-item-icon,
  .rp-footer-heading-icon,
  .rp-footer-notice-icon
) {
  background:rgba(255,255,255,.12) !important;
  color:var(--rp-ui-footer-text) !important;
  border-color:var(--rp-ui-footer-border-strong) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public .rp-site-footer-v2 .rp-scratch-call-link { color:var(--rp-ui-footer-text) !important; }

/* Focus & accessibility */
body.public-site.rp-central-public :focus-visible { outline:3px solid color-mix(in srgb,var(--rp-ui-primary) 35%,transparent) !important; outline-offset:2px !important; }

@media (max-width: 767.98px) {
  body.public-site.rp-central-public { --rp-ui-container-pad:12px; }
  body.public-site.rp-central-public :is(.card-body,.rp-card-pad,.rpb-card-pad) { padding:min(var(--rp-ui-card-pad),16px) !important; }
  body.public-site.rp-central-public :is(table,.table) :is(th,td) { padding:10px !important; }
  body.public-site.rp-central-public h1 { font-size:clamp(1.55rem,7vw,2rem) !important; }
  body.public-site.rp-central-public h2 { font-size:clamp(1.25rem,5.5vw,1.65rem) !important; }
}
}

@media print {
  body.public-site.rp-central-public { background:#fff !important; color:#000 !important; }
  body.public-site.rp-central-public #rp-public-header,
  body.public-site.rp-central-public .rp-site-footer-v2 { display:none !important; }
}

/* ================================================================
   Theme 36 visual variants
   Presets combine these structural modes with the central tokens.
   ================================================================ */
@media screen {
/* Background personalities */
body.public-site.rp-central-public.rp-bg-gradient {
  background:
    linear-gradient(145deg, color-mix(in srgb,var(--rp-ui-primary) 7%,var(--rp-ui-bg)) 0%, var(--rp-ui-bg) 44%, color-mix(in srgb,var(--rp-ui-accent) 6%,var(--rp-ui-bg)) 100%) fixed !important;
}
body.public-site.rp-central-public.rp-bg-mesh {
  background:
    radial-gradient(circle at 8% 5%, color-mix(in srgb,var(--rp-ui-primary) 12%,transparent) 0 15%, transparent 38%),
    radial-gradient(circle at 92% 18%, color-mix(in srgb,var(--rp-ui-accent) 10%,transparent) 0 13%, transparent 36%),
    var(--rp-ui-bg) !important;
  background-attachment:fixed !important;
}
body.public-site.rp-central-public.rp-bg-warm {
  background:linear-gradient(180deg,color-mix(in srgb,var(--rp-ui-accent) 4%,var(--rp-ui-bg)),var(--rp-ui-bg) 36%) fixed !important;
}

/* Header personalities */
body.public-site.rp-central-public.rp-header-dark #rp-public-header,
body.public-site.rp-central-public.rp-header-dark #rp-public-header .rp-main-navigation {
  background:var(--rp-ui-primary-dark) !important;
  color:#fff !important;
  border-color:color-mix(in srgb,#fff 16%,transparent) !important;
  box-shadow:0 9px 28px color-mix(in srgb,var(--rp-ui-primary-dark) 35%,transparent) !important;
}
body.public-site.rp-central-public.rp-header-dark #rp-public-header :is(.rp-header-title,.rp-header-subtitle,.rp-header-description-primary,.rp-header-description-secondary,.rp-nav-link,.rp-submenu-toggle,.rp-header-menu-button){color:#fff !important}
body.public-site.rp-central-public.rp-header-dark #rp-public-header :is(.rp-nav-link,.rp-submenu-toggle,.rp-header-menu-button){background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.14)!important}
body.public-site.rp-central-public.rp-header-dark #rp-public-header .rp-nav-link:hover,
body.public-site.rp-central-public.rp-header-dark #rp-public-header .rp-nav-link.active{background:rgba(255,255,255,.16)!important;color:#fff!important}

body.public-site.rp-central-public.rp-header-gradient #rp-public-header,
body.public-site.rp-central-public.rp-header-gradient #rp-public-header .rp-main-navigation {
  background:linear-gradient(115deg,var(--rp-ui-primary-dark),var(--rp-ui-primary)) !important;
  color:#fff !important;
  border-color:transparent !important;
}
body.public-site.rp-central-public.rp-header-gradient #rp-public-header :is(.rp-header-title,.rp-header-subtitle,.rp-header-description-primary,.rp-header-description-secondary,.rp-nav-link,.rp-submenu-toggle,.rp-header-menu-button){color:#fff!important}
body.public-site.rp-central-public.rp-header-gradient #rp-public-header :is(.rp-nav-link,.rp-submenu-toggle,.rp-header-menu-button){background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.16)!important}

body.public-site.rp-central-public.rp-header-glass #rp-public-header {
  background:color-mix(in srgb,var(--rp-ui-surface) 78%,transparent) !important;
  backdrop-filter:blur(22px) saturate(135%) !important;
  box-shadow:0 10px 32px color-mix(in srgb,var(--rp-ui-text) 9%,transparent) !important;
}
body.public-site.rp-central-public.rp-header-glass #rp-public-header .rp-main-navigation{background:color-mix(in srgb,var(--rp-ui-surface) 62%,transparent)!important}

body.public-site.rp-central-public.rp-header-band #rp-public-header {background:var(--rp-ui-primary)!important;color:#fff!important;border-color:transparent!important}
body.public-site.rp-central-public.rp-header-band #rp-public-header .rp-header-title,
body.public-site.rp-central-public.rp-header-band #rp-public-header :is(.rp-header-subtitle,.rp-header-description-primary,.rp-header-description-secondary){color:#fff!important}
body.public-site.rp-central-public.rp-header-band #rp-public-header .rp-main-navigation{background:var(--rp-ui-surface)!important;color:var(--rp-ui-text)!important}

body.public-site.rp-central-public.rp-header-minimal #rp-public-header {background:var(--rp-ui-bg)!important;box-shadow:none!important;border-bottom:1px solid var(--rp-ui-border)!important;backdrop-filter:none!important}
body.public-site.rp-central-public.rp-header-minimal #rp-public-header .rp-main-navigation{background:transparent!important;border-color:transparent!important}

/* Hero personalities */
body.public-site.rp-central-public.rp-hero-gradient :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero){background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary))!important;border-color:transparent!important;color:#fff!important}
body.public-site.rp-central-public.rp-hero-gradient :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero) :is(h1,h2,h3,p,small){color:#fff!important}

body.public-site.rp-central-public.rp-hero-dark :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero){background:var(--rp-ui-primary-dark)!important;border-color:transparent!important;color:#fff!important}
body.public-site.rp-central-public.rp-hero-dark :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero) :is(h1,h2,h3,p,small){color:#fff!important}

body.public-site.rp-central-public.rp-hero-outline :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero){background:transparent!important;border:2px solid var(--rp-ui-border)!important;box-shadow:none!important}
body.public-site.rp-central-public.rp-hero-flat :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero){background:var(--rp-ui-surface)!important;box-shadow:none!important}
body.public-site.rp-central-public.rp-hero-glass :is(.rp-home-hero,.rp-hub-hero,.rp-links-hero,.rp-sr-hero,.rp-gpdp-hero,.rp-egp-hero,.rp-ap-hero,.rp-dlc-hero,.rpm-hero,.rpg-article-hero,.rpg-hero-public,.rp-swamitav-hero,.viewer-hero,.rp-inst-home-hero,.psv-hero,.rp-blog-hero,.rpb-hero,.rp-legal-hero,.rp-about-hero,.rp-ege-hero,.vbg-hero,.vdo-hero,.vhub-hero){background:color-mix(in srgb,var(--rp-ui-surface) 74%,transparent)!important;backdrop-filter:blur(18px) saturate(130%)!important}

/* Card personalities */
body.public-site.rp-central-public.rp-card-elevated :is(.card,div[class$="-card"],article[class$="-card"],section[class$="-card"],li[class$="-card"],a[class$="-card"]){border-color:transparent!important;box-shadow:0 16px 38px color-mix(in srgb,var(--rp-ui-text) 13%,transparent)!important}
body.public-site.rp-central-public.rp-card-soft :is(.card,div[class$="-card"],article[class$="-card"],section[class$="-card"],li[class$="-card"],a[class$="-card"]){background:var(--rp-ui-surface-alt)!important;box-shadow:none!important}
body.public-site.rp-central-public.rp-card-glass :is(.card,div[class$="-card"],article[class$="-card"],section[class$="-card"],li[class$="-card"],a[class$="-card"]){background:color-mix(in srgb,var(--rp-ui-surface) 72%,transparent)!important;backdrop-filter:blur(18px) saturate(125%)!important;border-color:color-mix(in srgb,var(--rp-ui-border) 70%,transparent)!important}
body.public-site.rp-central-public.rp-card-flat :is(.card,div[class$="-card"],article[class$="-card"],section[class$="-card"],li[class$="-card"],a[class$="-card"]){box-shadow:none!important;border-width:0!important}
body.public-site.rp-central-public.rp-card-outlined :is(.card,div[class$="-card"],article[class$="-card"],section[class$="-card"],li[class$="-card"],a[class$="-card"]){box-shadow:none!important;border-width:2px!important}
body.public-site.rp-central-public.rp-card-accent :is(.card,div[class$="-card"],article[class$="-card"],section[class$="-card"],li[class$="-card"],a[class$="-card"]){border-top:3px solid var(--rp-ui-primary)!important;box-shadow:var(--rp-ui-shadow)!important}

/* Button personalities */
body.public-site.rp-central-public.rp-button-pill :is(.btn,button,a[class*="-btn"]){border-radius:999px!important}
body.public-site.rp-central-public.rp-button-gradient :is(.btn-primary,.rp-home-btn-primary,.blog-btn-primary,.rp-gpdp-btn-primary,a[class*="-btn"]:not([class*="danger"]):not([class*="light"]):not([class*="soft"]):not([class*="outline"]):not([class*="filter"]),button[class*="-btn"]:not([class*="danger"]):not([class*="light"]):not([class*="soft"]):not([class*="outline"]):not([class*="filter"])){background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary))!important;border-color:transparent!important;color:#fff!important;box-shadow:0 7px 18px color-mix(in srgb,var(--rp-ui-primary) 22%,transparent)!important}
body.public-site.rp-central-public.rp-button-outline :is(.btn-primary,.rp-home-btn-primary,.blog-btn-primary,.rp-gpdp-btn-primary){background:transparent!important;color:var(--rp-ui-primary)!important;border:1.5px solid var(--rp-ui-primary)!important;box-shadow:none!important}
body.public-site.rp-central-public.rp-button-soft :is(.btn-primary,.rp-home-btn-primary,.blog-btn-primary,.rp-gpdp-btn-primary){background:var(--rp-ui-surface-alt)!important;color:var(--rp-ui-primary-dark)!important;border:1px solid var(--rp-ui-border)!important;box-shadow:none!important}

/* Table personalities */
body.public-site.rp-central-public.rp-table-dark-head :is(table,.table,.rp-table,.summary-table,.result-table,.vrec-table,.rpp-table,.rp-gpdp-table,.compact-installment-table,.psv-table,.inst-compact-table,.rp-bsr-table,.rp-modern-table,.v21c-table,.vdo25-table,.vdo-table,.vbg-table) thead th{background:var(--rp-ui-primary-dark)!important;color:#fff!important;border-color:color-mix(in srgb,var(--rp-ui-primary-dark) 82%,#fff)!important}
body.public-site.rp-central-public.rp-table-striped :is(table,.table) tbody tr:nth-child(even) td{background:var(--rp-ui-surface-alt)!important}
body.public-site.rp-central-public.rp-table-minimal :is(.table-responsive,.rp-table-wrap,.table-wrap,[class$="-table-wrap"]){box-shadow:none!important;border-left:0!important;border-right:0!important;border-radius:0!important}
body.public-site.rp-central-public.rp-table-minimal :is(table,.table) :is(th,td){border-left:0!important;border-right:0!important}
body.public-site.rp-central-public.rp-table-accent :is(table,.table,.rp-table) thead th{background:var(--rp-ui-surface-alt)!important;color:var(--rp-ui-primary-dark)!important;border-bottom:3px solid var(--rp-ui-primary)!important}

/* Density personalities */
body.public-site.rp-central-public.rp-density-compact{--rp-ui-grid-gap:min(var(--rp-ui-grid-gap),10px);--rp-ui-section-gap:min(var(--rp-ui-section-gap),14px)}
body.public-site.rp-central-public.rp-density-compact :is(.card-body,.rp-card-pad,.rpb-card-pad){padding:min(var(--rp-ui-card-pad),14px)!important}
body.public-site.rp-central-public.rp-density-spacious{--rp-ui-grid-gap:max(var(--rp-ui-grid-gap),18px);--rp-ui-section-gap:max(var(--rp-ui-section-gap),26px)}

/* Dark preset protection: surface/text variables already carry the palette. */
body.public-site.rp-central-public:is(.rp-theme-midnight-gold,.rp-theme-graphite-emerald,.rp-theme-charcoal-cyan,.rp-theme-plum-gold,.rp-theme-black-minimal,.rp-theme-deep-navy) :is(.form-control,.form-select,input,select,textarea){color-scheme:dark}
body.public-site.rp-central-public:is(.rp-theme-midnight-gold,.rp-theme-graphite-emerald,.rp-theme-charcoal-cyan,.rp-theme-plum-gold,.rp-theme-black-minimal,.rp-theme-deep-navy) :is(.dropdown-menu,.rp-submenu){background:var(--rp-ui-surface)!important;color:var(--rp-ui-text)!important;border-color:var(--rp-ui-border)!important}

/* Admin-only real site preview marker. */
body.public-site.rp-central-public.rp-ui-preview-mode::before{
  content:"THEME PREVIEW • NOT LIVE";
  position:fixed;right:12px;bottom:12px;z-index:2147483000;
  padding:8px 11px;border-radius:999px;background:#111827;color:#fff;
  font:800 11px/1.2 Inter,system-ui,sans-serif;letter-spacing:.04em;
  box-shadow:0 8px 24px rgba(0,0,0,.24);pointer-events:none;
}
body.public-site.rp-central-public.rp-ui-preview-mode :is(ins.adsbygoogle,.adsbygoogle,[class*="adsense"],[id*="adsense"]){display:none!important}
}
@media screen {
body.public-site.rp-central-public.rp-button-outline :is(a,button)[class*="-btn"]:not([class*="danger"]):not([class*="close"]):not([class*="toggle"]):not([class*="filter"]):not([class*="share"]){background:transparent!important;color:var(--rp-ui-primary)!important;border:1.5px solid var(--rp-ui-primary)!important;box-shadow:none!important}
body.public-site.rp-central-public.rp-button-soft :is(a,button)[class*="-btn"]:not([class*="danger"]):not([class*="close"]):not([class*="toggle"]):not([class*="filter"]):not([class*="share"]){background:var(--rp-ui-surface-alt)!important;color:var(--rp-ui-primary-dark)!important;border:1px solid var(--rp-ui-border)!important;box-shadow:none!important}
body.public-site.rp-central-public.rp-card-elevated :is(div,article,section,li,a)[class*="-card"],
body.public-site.rp-central-public.rp-card-glass :is(div,article,section,li,a)[class*="-card"],
body.public-site.rp-central-public.rp-card-soft :is(div,article,section,li,a)[class*="-card"],
body.public-site.rp-central-public.rp-card-flat :is(div,article,section,li,a)[class*="-card"],
body.public-site.rp-central-public.rp-card-outlined :is(div,article,section,li,a)[class*="-card"],
body.public-site.rp-central-public.rp-card-accent :is(div,article,section,li,a)[class*="-card"]{border-radius:var(--rp-ui-card-radius)!important}
}

/* ======================================================================
   THEME-INSTALLED FOOTERS
   Footer style is now part of each 36-theme preset (rp-footer-* body class).
   These rules intentionally change both footer palette AND component finish.
   ====================================================================== */
body.public-site.rp-central-public .rp-site-footer-v2 {
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}

/* 1. Solid: restrained dark civic footer. */
body.public-site.rp-central-public.rp-footer-solid .rp-site-footer-v2 {
  background:var(--rp-ui-footer-bg) !important;
  border-top:3px solid color-mix(in srgb,var(--rp-ui-accent) 70%,transparent) !important;
}
body.public-site.rp-central-public.rp-footer-solid .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card) {
  background:color-mix(in srgb,var(--rp-ui-footer-bg) 86%,#fff 14%) !important;
  border-color:color-mix(in srgb,var(--rp-ui-footer-text) 16%,transparent) !important;
  border-radius:max(6px,calc(var(--rp-ui-card-radius) * .7)) !important;
}

/* 2. Gradient: branded gradient + soft frosted blocks. */
body.public-site.rp-central-public.rp-footer-gradient .rp-site-footer-v2 {
  background:
    radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--rp-ui-accent) 18%,transparent),transparent 30%),
    linear-gradient(135deg,var(--rp-ui-footer-bg),var(--rp-ui-primary-dark) 55%,var(--rp-ui-primary)) !important;
}
body.public-site.rp-central-public.rp-footer-gradient .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card) {
  background:rgba(255,255,255,.075) !important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

/* 3. Glass: stronger transparent floating panels and rounded link chips. */
body.public-site.rp-central-public.rp-footer-glass .rp-site-footer-v2 {
  background:
    radial-gradient(circle at 16% 15%,color-mix(in srgb,var(--rp-ui-accent) 28%,transparent),transparent 28%),
    radial-gradient(circle at 88% 85%,color-mix(in srgb,var(--rp-ui-primary) 32%,transparent),transparent 34%),
    linear-gradient(145deg,var(--rp-ui-footer-bg),var(--rp-ui-primary-dark)) !important;
}
body.public-site.rp-central-public.rp-footer-glass .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card) {
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.22) !important;
  box-shadow:0 18px 40px rgba(2,6,23,.14) !important;
  backdrop-filter:blur(16px) saturate(130%);
  -webkit-backdrop-filter:blur(16px) saturate(130%);
  border-radius:max(18px,var(--rp-ui-card-radius)) !important;
}
body.public-site.rp-central-public.rp-footer-glass .rp-site-footer-v2 :is(.rp-footer-contact-item,.rp-footer-links a,.rp-footer-stat,.rp-scratch-box) {
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.20) !important;
  border-radius:max(12px,var(--rp-ui-button-radius)) !important;
}

/* 4. Light: footer follows light-theme surfaces rather than forcing dark. */
body.public-site.rp-central-public.rp-footer-light .rp-site-footer-v2 {
  --rp-ui-footer-text:var(--rp-ui-text);
  --rp-ui-footer-muted-text:var(--rp-ui-muted);
  --rp-ui-footer-border-strong:var(--rp-ui-border);
  --rp-ui-footer-panel-bg:var(--rp-ui-surface);
  --rp-ui-footer-item-bg:var(--rp-ui-surface-alt);
  --rp-ui-footer-item-hover:color-mix(in srgb,var(--rp-ui-primary) 9%,var(--rp-ui-surface));
  background:linear-gradient(180deg,var(--rp-ui-surface-alt),var(--rp-ui-bg)) !important;
  color:var(--rp-ui-text) !important;
  border-top:1px solid var(--rp-ui-border) !important;
}
body.public-site.rp-central-public.rp-footer-light .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card) {
  background:var(--rp-ui-surface) !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-text) !important;
  box-shadow:var(--rp-ui-shadow) !important;
}
body.public-site.rp-central-public.rp-footer-light .rp-site-footer-v2 :is(.rp-footer-contact-item,.rp-footer-links a,.rp-footer-stat,.rp-scratch-box) {
  background:var(--rp-ui-surface-alt) !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public.rp-footer-light .rp-site-footer-v2 :is(h2,h3,strong,.rp-footer-mini-title,.rp-footer-item-copy strong,.rp-footer-stat strong,.rp-scratch-result strong) { color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.rp-footer-light .rp-site-footer-v2 :is(p,small,.rp-footer-item-copy small,.rp-footer-stat small,.rp-scratch-result em) { color:var(--rp-ui-muted) !important; }
body.public-site.rp-central-public.rp-footer-light .rp-site-footer-v2 a { color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.rp-footer-light .rp-site-footer-v2 :is(.rp-footer-item-icon,.rp-footer-heading-icon,.rp-footer-notice-icon) {
  background:color-mix(in srgb,var(--rp-ui-primary) 10%,var(--rp-ui-surface)) !important;
  color:var(--rp-ui-primary) !important;
  border-color:color-mix(in srgb,var(--rp-ui-primary) 18%,var(--rp-ui-border)) !important;
}

/* 5. Minimal: no boxed footer, compact separators only. */
body.public-site.rp-central-public.rp-footer-minimal .rp-site-footer-v2 {
  background:var(--rp-ui-footer-bg) !important;
  border-top:1px solid color-mix(in srgb,var(--rp-ui-footer-text) 18%,transparent) !important;
}
body.public-site.rp-central-public.rp-footer-minimal .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card) {
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-footer-minimal .rp-site-footer-v2 .rp-footer-primary-grid > .rp-footer-panel:not(:last-child) {
  border-right:1px solid color-mix(in srgb,var(--rp-ui-footer-text) 14%,transparent) !important;
}
body.public-site.rp-central-public.rp-footer-minimal .rp-site-footer-v2 :is(.rp-footer-contact-item,.rp-footer-links a,.rp-footer-stat,.rp-scratch-box) {
  background:transparent !important;
  border-color:color-mix(in srgb,var(--rp-ui-footer-text) 12%,transparent) !important;
  border-radius:max(4px,calc(var(--rp-ui-button-radius) * .65)) !important;
}

/* 6. Accent: footer uses theme accent as a real design element. */
body.public-site.rp-central-public.rp-footer-accent .rp-site-footer-v2 {
  background:linear-gradient(180deg,var(--rp-ui-footer-bg),color-mix(in srgb,var(--rp-ui-footer-bg) 82%,#000 18%)) !important;
  border-top:5px solid var(--rp-ui-accent) !important;
}
body.public-site.rp-central-public.rp-footer-accent .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-bottom-card) {
  border-top:2px solid color-mix(in srgb,var(--rp-ui-accent) 72%,transparent) !important;
}
body.public-site.rp-central-public.rp-footer-accent .rp-site-footer-v2 :is(.rp-footer-heading-icon,.rp-footer-item-icon,.rp-footer-notice-icon) {
  background:color-mix(in srgb,var(--rp-ui-accent) 20%,transparent) !important;
  color:color-mix(in srgb,var(--rp-ui-accent) 78%,#fff) !important;
  border-color:color-mix(in srgb,var(--rp-ui-accent) 40%,transparent) !important;
}

/* 7. Split: strong two-tone footer with differentiated primary sections. */
body.public-site.rp-central-public.rp-footer-split .rp-site-footer-v2 {
  background:linear-gradient(118deg,var(--rp-ui-footer-bg) 0 52%,var(--rp-ui-primary-dark) 52% 100%) !important;
}
body.public-site.rp-central-public.rp-footer-split .rp-site-footer-v2 .rp-footer-primary-grid > .rp-footer-panel:first-child {
  background:color-mix(in srgb,var(--rp-ui-primary) 22%,transparent) !important;
  border-color:color-mix(in srgb,var(--rp-ui-primary) 45%,#fff 10%) !important;
}
body.public-site.rp-central-public.rp-footer-split .rp-site-footer-v2 .rp-footer-stats {
  background:color-mix(in srgb,var(--rp-ui-accent) 12%,rgba(255,255,255,.07)) !important;
}

/* 8. Heritage: warm accent linework for Rajasthan/heritage presets. */
body.public-site.rp-central-public.rp-footer-heritage .rp-site-footer-v2 {
  background:
    linear-gradient(90deg,transparent 0 3%,color-mix(in srgb,var(--rp-ui-accent) 25%,transparent) 3% 3.25%,transparent 3.25% 96.75%,color-mix(in srgb,var(--rp-ui-accent) 25%,transparent) 96.75% 97%,transparent 97%),
    linear-gradient(145deg,var(--rp-ui-footer-bg),var(--rp-ui-primary-dark)) !important;
  border-top:4px double color-mix(in srgb,var(--rp-ui-accent) 75%,#fff 10%) !important;
}
body.public-site.rp-central-public.rp-footer-heritage .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-bottom-card) {
  background:color-mix(in srgb,var(--rp-ui-footer-bg) 82%,#fff 8%) !important;
  border-color:color-mix(in srgb,var(--rp-ui-accent) 28%,transparent) !important;
  border-radius:max(6px,calc(var(--rp-ui-card-radius) * .65)) !important;
}
body.public-site.rp-central-public.rp-footer-heritage .rp-site-footer-v2 :is(.rp-footer-heading-icon,.rp-footer-item-icon,.rp-footer-notice-icon) {
  color:color-mix(in srgb,var(--rp-ui-accent) 78%,#fff) !important;
  border-color:color-mix(in srgb,var(--rp-ui-accent) 34%,transparent) !important;
}

@media (max-width:900px) {
  body.public-site.rp-central-public.rp-footer-minimal .rp-site-footer-v2 .rp-footer-primary-grid > .rp-footer-panel:not(:last-child) {
    border-right:0 !important;
    border-bottom:1px solid color-mix(in srgb,var(--rp-ui-footer-text) 14%,transparent) !important;
  }
  body.public-site.rp-central-public.rp-footer-split .rp-site-footer-v2 {
    background:linear-gradient(180deg,var(--rp-ui-footer-bg),var(--rp-ui-primary-dark)) !important;
  }
}


/* ======================================================================
   Footer/Header sync v3
   Built-in themes mirror the active header architecture in the footer.
   This block intentionally comes last so old footer CSS cannot win.
   ====================================================================== */
body.public-site.rp-central-public.rp-footer-sync .rp-site-footer-v2 {
  --rp-footer-sync-radius: var(--rp-ui-card-radius);
}

/* Light header -> light footer, same surfaces and text palette. */
body.public-site.rp-central-public.rp-footer-sync-light .rp-site-footer-v2 {
  background:var(--rp-ui-bg) !important;
  color:var(--rp-ui-text) !important;
  border-top:1px solid var(--rp-ui-border) !important;
}
body.public-site.rp-central-public.rp-footer-sync-light .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card) {
  background:var(--rp-ui-surface) !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-text) !important;
  box-shadow:var(--rp-ui-shadow) !important;
}
body.public-site.rp-central-public.rp-footer-sync-light .rp-site-footer-v2 :is(.rp-footer-contact-item,.rp-footer-links a,.rp-footer-stat,.rp-scratch-box) {
  background:var(--rp-ui-surface-alt) !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public.rp-footer-sync-light .rp-site-footer-v2 :is(h2,h3,strong,.rp-footer-mini-title,.rp-footer-item-copy strong,.rp-footer-stat strong,.rp-scratch-result strong,a) { color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.rp-footer-sync-light .rp-site-footer-v2 :is(p,small,.rp-footer-item-copy small,.rp-footer-stat small,.rp-scratch-result em) { color:var(--rp-ui-muted) !important; }

/* Minimal header -> minimal LIGHT footer (not a dark footer). */
body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 {
  background:var(--rp-ui-bg) !important;
  color:var(--rp-ui-text) !important;
  border-top:1px solid var(--rp-ui-border) !important;
}
body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card) {
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 .rp-footer-primary-grid > .rp-footer-panel:not(:last-child) {
  border-right:1px solid var(--rp-ui-border) !important;
}
body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 :is(.rp-footer-contact-item,.rp-footer-links a,.rp-footer-stat,.rp-scratch-box) {
  background:transparent !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 :is(h2,h3,strong,.rp-footer-mini-title,.rp-footer-item-copy strong,.rp-footer-stat strong,.rp-scratch-result strong,a) { color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 :is(p,small,.rp-footer-item-copy small,.rp-footer-stat small,.rp-scratch-result em) { color:var(--rp-ui-muted) !important; }
body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 :is(.rp-footer-heading-icon,.rp-footer-item-icon,.rp-footer-notice-icon) {
  background:var(--rp-ui-surface-alt) !important;
  color:var(--rp-ui-primary) !important;
  border-color:var(--rp-ui-border) !important;
}

/* Dark header -> same dark branded footer. */
body.public-site.rp-central-public.rp-footer-sync-dark .rp-site-footer-v2 {
  background:var(--rp-ui-primary-dark) !important;
  border-top:1px solid color-mix(in srgb,var(--rp-ui-footer-text) 18%,transparent) !important;
}

/* Gradient header -> matching theme gradient in footer. */
body.public-site.rp-central-public.rp-footer-sync-gradient .rp-site-footer-v2 {
  background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary) 72%,color-mix(in srgb,var(--rp-ui-accent) 22%,var(--rp-ui-primary))) !important;
}

/* Glass header -> matching glass/frosted footer. */
body.public-site.rp-central-public.rp-footer-sync-glass .rp-site-footer-v2 {
  background:
    radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--rp-ui-accent) 20%,transparent),transparent 30%),
    linear-gradient(145deg,color-mix(in srgb,var(--rp-ui-primary-dark) 88%,#fff 12%),var(--rp-ui-primary-dark)) !important;
}
body.public-site.rp-central-public.rp-footer-sync-glass .rp-site-footer-v2 :is(.rp-footer-panel,.rp-footer-stats,.rp-footer-bottom-card,.rp-footer-contact-item,.rp-footer-links a,.rp-footer-stat,.rp-scratch-box) {
  backdrop-filter:blur(16px) saturate(125%);
  -webkit-backdrop-filter:blur(16px) saturate(125%);
}

/* Color-band header -> same primary band plus a light secondary strip, like header + nav. */
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 {
  background:linear-gradient(180deg,var(--rp-ui-primary) 0 64%,var(--rp-ui-surface-alt) 64% 100%) !important;
  border-top:0 !important;
}
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 .rp-footer-primary-grid > .rp-footer-panel {
  background:color-mix(in srgb,var(--rp-ui-primary-dark) 36%,transparent) !important;
  border-color:color-mix(in srgb,#fff 20%,transparent) !important;
}
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 .rp-footer-stats,
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 .rp-footer-bottom-card {
  background:var(--rp-ui-surface) !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 .rp-footer-stats :is(strong,small,i),
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 .rp-footer-bottom-card :is(strong,p,small,.rp-footer-mini-title,a) {
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 .rp-footer-bottom-card p,
body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 .rp-footer-bottom-card small {
  color:var(--rp-ui-muted) !important;
}

@media (max-width:900px) {
  body.public-site.rp-central-public.rp-footer-sync-minimal .rp-site-footer-v2 .rp-footer-primary-grid > .rp-footer-panel:not(:last-child) {
    border-right:0 !important;
    border-bottom:1px solid var(--rp-ui-border) !important;
  }
  body.public-site.rp-central-public.rp-footer-sync-band .rp-site-footer-v2 {
    background:linear-gradient(180deg,var(--rp-ui-primary) 0 56%,var(--rp-ui-surface-alt) 56% 100%) !important;
  }
}


/* ================================================================
   Theme component bridge v2
   - Keeps one global font across the whole public project.
   - Applies card variants to link-based cards (<a ...-card>) too.
   - Makes home service/e-Gram cards visibly follow each theme.
   ================================================================ */
@media screen {
/* One project font. Theme installs change visual personality, not font family. */
body.public-site.rp-central-public :is(
  h1,h2,h3,h4,h5,h6,p,a,span,strong,b,small,em,label,button,input,select,textarea,
  th,td,li,summary,legend,caption
):not(.fa):not(.fas):not(.far):not(.fal):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands):not([class^="fa-"]):not([class*=" fa-"]) {
  font-family:var(--rp-ui-font) !important;
}

/* Link-card bridge. A large part of the public project uses anchors as cards. */
body.public-site.rp-central-public :is(a[class$="-card"],a[class*="-card "]) {
  color:var(--rp-ui-text) !important;
  border-color:var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-card-radius) !important;
  box-shadow:var(--rp-ui-shadow) !important;
}

/* Home main modules + e-Gram tools use the same theme tokens. */
body.public-site.rp-central-public :is(.rp-module-card,.rp-egram-card) {
  background:var(--rp-ui-surface) !important;
  color:var(--rp-ui-text) !important;
  border:var(--rp-ui-card-border) solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-card-radius) !important;
  box-shadow:var(--rp-ui-shadow) !important;
  padding:var(--rp-ui-card-pad) !important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease !important;
}
body.public-site.rp-central-public .rp-module-card::before {
  background:color-mix(in srgb,var(--rp-ui-primary) 10%,var(--rp-ui-surface-alt)) !important;
}
body.public-site.rp-central-public :is(.rp-module-card,.rp-egram-card) :is(h3,strong) {
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public :is(.rp-module-card,.rp-egram-card) :is(p,small) {
  color:var(--rp-ui-muted) !important;
}
body.public-site.rp-central-public :is(.rp-module-icon,.rp-egram-icon) {
  background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary)) !important;
  color:#fff !important;
  box-shadow:0 10px 22px color-mix(in srgb,var(--rp-ui-primary) 22%,transparent) !important;
  border-radius:calc(var(--rp-ui-card-radius) * .72) !important;
}
body.public-site.rp-central-public .rp-module-arrow {
  color:var(--rp-ui-primary) !important;
}
body.public-site.rp-central-public .rp-egram-card em {
  background:var(--rp-ui-surface-alt) !important;
  border-color:var(--rp-ui-border) !important;
  color:var(--rp-ui-primary-dark) !important;
  border-radius:var(--rp-ui-badge-radius) !important;
}
body.public-site.rp-central-public :is(.rp-module-card,.rp-egram-card):hover {
  transform:translateY(-3px) !important;
  border-color:color-mix(in srgb,var(--rp-ui-primary) 55%,var(--rp-ui-border)) !important;
}

/* Density now changes the actual service-card silhouette, not only grid gaps. */
body.public-site.rp-central-public.rp-density-compact .rp-module-card { min-height:148px !important; }
body.public-site.rp-central-public.rp-density-comfortable .rp-module-card { min-height:178px !important; }
body.public-site.rp-central-public.rp-density-spacious .rp-module-card { min-height:208px !important; }
body.public-site.rp-central-public.rp-density-compact :is(.rp-module-icon,.rp-egram-icon) { width:44px !important;height:44px !important;font-size:17px !important; }
body.public-site.rp-central-public.rp-density-spacious :is(.rp-module-icon,.rp-egram-icon) { width:62px !important;height:62px !important;font-size:23px !important; }

/* Card personalities for service links. */
body.public-site.rp-central-public.rp-card-bordered :is(.rp-module-card,.rp-egram-card) {
  background:var(--rp-ui-surface) !important;
  border:1px solid var(--rp-ui-border) !important;
}
body.public-site.rp-central-public.rp-card-elevated :is(.rp-module-card,.rp-egram-card) {
  background:var(--rp-ui-surface) !important;
  border-color:transparent !important;
  box-shadow:0 18px 42px color-mix(in srgb,var(--rp-ui-text) 14%,transparent) !important;
}
body.public-site.rp-central-public.rp-card-elevated :is(.rp-module-icon,.rp-egram-icon) {
  transform:translateY(-2px);
  box-shadow:0 14px 26px color-mix(in srgb,var(--rp-ui-primary) 30%,transparent) !important;
}
body.public-site.rp-central-public.rp-card-soft :is(.rp-module-card,.rp-egram-card) {
  background:var(--rp-ui-surface-alt) !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-card-soft .rp-module-card::before {
  background:color-mix(in srgb,var(--rp-ui-primary) 14%,transparent) !important;
}
body.public-site.rp-central-public.rp-card-glass :is(.rp-module-card,.rp-egram-card) {
  background:color-mix(in srgb,var(--rp-ui-surface) 72%,transparent) !important;
  border-color:color-mix(in srgb,var(--rp-ui-border) 68%,transparent) !important;
  box-shadow:0 16px 38px color-mix(in srgb,var(--rp-ui-text) 11%,transparent) !important;
  backdrop-filter:blur(18px) saturate(125%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(125%) !important;
}
body.public-site.rp-central-public.rp-card-flat :is(.rp-module-card,.rp-egram-card) {
  background:var(--rp-ui-surface) !important;
  border:0 !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-card-flat .rp-module-card::before { display:none !important; }
body.public-site.rp-central-public.rp-card-flat :is(.rp-module-icon,.rp-egram-icon) {
  background:var(--rp-ui-surface-alt) !important;
  color:var(--rp-ui-primary) !important;
  box-shadow:none !important;
  border:1px solid var(--rp-ui-border) !important;
}
body.public-site.rp-central-public.rp-card-outlined :is(.rp-module-card,.rp-egram-card) {
  background:transparent !important;
  border:2px solid var(--rp-ui-border) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-card-outlined .rp-module-card::before { display:none !important; }
body.public-site.rp-central-public.rp-card-outlined :is(.rp-module-icon,.rp-egram-icon) {
  background:transparent !important;
  color:var(--rp-ui-primary) !important;
  border:2px solid var(--rp-ui-primary) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-card-accent :is(.rp-module-card,.rp-egram-card) {
  background:var(--rp-ui-surface) !important;
  border:1px solid var(--rp-ui-border) !important;
  border-left:4px solid var(--rp-ui-primary) !important;
  box-shadow:var(--rp-ui-shadow) !important;
}
body.public-site.rp-central-public.rp-card-accent .rp-module-card::before {
  background:color-mix(in srgb,var(--rp-ui-accent) 20%,transparent) !important;
}
body.public-site.rp-central-public.rp-card-accent :is(.rp-module-icon,.rp-egram-icon) {
  background:linear-gradient(135deg,var(--rp-ui-primary),color-mix(in srgb,var(--rp-ui-primary) 72%,var(--rp-ui-accent))) !important;
}

/* Theme button personality also reaches text-actions inside service cards. */
body.public-site.rp-central-public.rp-button-pill .rp-module-arrow {
  align-self:flex-start;background:var(--rp-ui-surface-alt);border:1px solid var(--rp-ui-border);
  border-radius:999px;padding:7px 11px !important;
}
body.public-site.rp-central-public.rp-button-soft .rp-module-arrow {
  align-self:flex-start;background:var(--rp-ui-surface-alt);border-radius:var(--rp-ui-button-radius);padding:7px 10px !important;
}
body.public-site.rp-central-public.rp-button-outline .rp-module-arrow {
  align-self:flex-start;border:1px solid var(--rp-ui-primary);border-radius:var(--rp-ui-button-radius);padding:6px 10px !important;
}
body.public-site.rp-central-public.rp-button-gradient .rp-module-arrow {
  align-self:flex-start;background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary));
  color:#fff !important;border-radius:var(--rp-ui-button-radius);padding:7px 11px !important;
}
}

/* ======================================================================
   FULL PUBLIC THEME BRIDGE v4
   Every legacy public card/panel/box/table/button is mapped to the same
   central theme engine. Typography remains one global project font.
   ====================================================================== */
@media screen {
/* Theme surface tokens. These change silhouette, not only colour. */
body.public-site.rp-central-public {
  --rp-theme-card-bg:var(--rp-ui-surface);
  --rp-theme-card-border-color:var(--rp-ui-border);
  --rp-theme-card-border-width:var(--rp-ui-card-border);
  --rp-theme-card-shadow:var(--rp-ui-shadow);
  --rp-theme-card-backdrop:none;
  --rp-theme-card-accent-width:0px;
  --rp-theme-card-accent-color:transparent;
  --rp-theme-icon-bg:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary));
  --rp-theme-icon-fg:#fff;
  --rp-theme-icon-border:transparent;
  --rp-theme-icon-shadow:0 8px 20px color-mix(in srgb,var(--rp-ui-primary) 22%,transparent);
}
body.public-site.rp-central-public.rp-card-bordered {
  --rp-theme-card-bg:var(--rp-ui-surface);--rp-theme-card-border-width:1px;--rp-theme-card-shadow:none;
}
body.public-site.rp-central-public.rp-card-elevated {
  --rp-theme-card-bg:var(--rp-ui-surface);--rp-theme-card-border-width:0px;--rp-theme-card-shadow:0 18px 42px color-mix(in srgb,var(--rp-ui-text) 14%,transparent);
}
body.public-site.rp-central-public.rp-card-soft {
  --rp-theme-card-bg:var(--rp-ui-surface-alt);--rp-theme-card-border-color:transparent;--rp-theme-card-border-width:1px;--rp-theme-card-shadow:none;
  --rp-theme-icon-bg:color-mix(in srgb,var(--rp-ui-primary) 11%,var(--rp-ui-surface));--rp-theme-icon-fg:var(--rp-ui-primary);--rp-theme-icon-border:color-mix(in srgb,var(--rp-ui-primary) 20%,var(--rp-ui-border));--rp-theme-icon-shadow:none;
}
body.public-site.rp-central-public.rp-card-glass {
  --rp-theme-card-bg:color-mix(in srgb,var(--rp-ui-surface) 72%,transparent);--rp-theme-card-border-color:color-mix(in srgb,var(--rp-ui-border) 68%,transparent);--rp-theme-card-border-width:1px;--rp-theme-card-shadow:0 16px 38px color-mix(in srgb,var(--rp-ui-text) 11%,transparent);--rp-theme-card-backdrop:blur(18px) saturate(125%);
}
body.public-site.rp-central-public.rp-card-flat {
  --rp-theme-card-bg:transparent;--rp-theme-card-border-width:0px;--rp-theme-card-shadow:none;
  --rp-theme-icon-bg:var(--rp-ui-surface-alt);--rp-theme-icon-fg:var(--rp-ui-primary);--rp-theme-icon-border:var(--rp-ui-border);--rp-theme-icon-shadow:none;
}
body.public-site.rp-central-public.rp-card-outlined {
  --rp-theme-card-bg:transparent;--rp-theme-card-border-color:var(--rp-ui-border);--rp-theme-card-border-width:2px;--rp-theme-card-shadow:none;
  --rp-theme-icon-bg:transparent;--rp-theme-icon-fg:var(--rp-ui-primary);--rp-theme-icon-border:var(--rp-ui-primary);--rp-theme-icon-shadow:none;
}
body.public-site.rp-central-public.rp-card-accent {
  --rp-theme-card-bg:var(--rp-ui-surface);--rp-theme-card-border-width:1px;--rp-theme-card-shadow:var(--rp-ui-shadow);--rp-theme-card-accent-width:4px;--rp-theme-card-accent-color:var(--rp-ui-primary);
}

/* Runtime-tagged legacy surfaces: applies to Home, Blog, Post, BSR,
   Installment, eGramSwaraj, VBGRAMG, VDO, Guides, Premium, Contact, etc. */
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-surface {
  background:var(--rp-theme-card-bg) !important;
  color:var(--rp-ui-text) !important;
  border-style:solid !important;
  border-color:var(--rp-theme-card-border-color) !important;
  border-width:var(--rp-theme-card-border-width) !important;
  border-left-width:max(var(--rp-theme-card-border-width),var(--rp-theme-card-accent-width)) !important;
  border-left-color:var(--rp-theme-card-accent-color,var(--rp-theme-card-border-color)) !important;
  border-radius:var(--rp-ui-card-radius) !important;
  box-shadow:var(--rp-theme-card-shadow) !important;
  backdrop-filter:var(--rp-theme-card-backdrop) !important;
  -webkit-backdrop-filter:var(--rp-theme-card-backdrop) !important;
}
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-surface:is(a) {
  text-decoration:none !important;
}
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-surface :is(h1,h2,h3,h4,h5,h6,strong,b) { color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-surface :is(p,small,.text-muted) { color:var(--rp-ui-muted) !important; }

/* Icon tiles inside any card automatically follow the card personality. */
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-icon,
body.public-site.rp-central-public.rp-theme-modern :is(.rp-module-icon,.rp-egram-icon,.rp-card-icon,.vbg-card-icon) {
  background:var(--rp-theme-icon-bg) !important;
  color:var(--rp-theme-icon-fg) !important;
  border:1px solid var(--rp-theme-icon-border) !important;
  border-radius:max(7px,calc(var(--rp-ui-card-radius) * .7)) !important;
  box-shadow:var(--rp-theme-icon-shadow) !important;
}

/* Theme actions. JS catches legacy buttons that central CSS cannot know by name. */
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-action {
  min-height:var(--rp-ui-button-height) !important;
  border-radius:var(--rp-ui-button-radius) !important;
  font-family:var(--rp-ui-font) !important;
  font-size:var(--rp-ui-button-font-size) !important;
  font-weight:750 !important;
}
body.public-site.rp-central-public.rp-button-solid .rp-ui-theme-action:not([class*="light"]):not([class*="soft"]):not([class*="outline"]):not([class*="danger"]):not([class*="close"]):not([class*="toggle"]) {
  background:var(--rp-ui-primary) !important;border-color:var(--rp-ui-primary) !important;color:#fff !important;
}
body.public-site.rp-central-public.rp-button-gradient .rp-ui-theme-action:not([class*="light"]):not([class*="soft"]):not([class*="outline"]):not([class*="danger"]):not([class*="close"]):not([class*="toggle"]) {
  background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary)) !important;border-color:transparent !important;color:#fff !important;box-shadow:0 7px 18px color-mix(in srgb,var(--rp-ui-primary) 22%,transparent) !important;
}
body.public-site.rp-central-public.rp-button-outline .rp-ui-theme-action:not([class*="danger"]):not([class*="close"]):not([class*="toggle"]) {
  background:transparent !important;border:1.5px solid var(--rp-ui-primary) !important;color:var(--rp-ui-primary) !important;box-shadow:none !important;
}
body.public-site.rp-central-public.rp-button-soft .rp-ui-theme-action:not([class*="danger"]):not([class*="close"]):not([class*="toggle"]) {
  background:var(--rp-ui-surface-alt) !important;border:1px solid var(--rp-ui-border) !important;color:var(--rp-ui-primary-dark) !important;box-shadow:none !important;
}
body.public-site.rp-central-public.rp-button-pill .rp-ui-theme-action { border-radius:999px !important; }

/* Text-actions inside cards visibly reflect button personality too. */
body.public-site.rp-central-public .rp-ui-theme-inline-action { color:var(--rp-ui-primary) !important; }
body.public-site.rp-central-public.rp-button-gradient .rp-ui-theme-inline-action {
  display:inline-flex;align-items:center;gap:.35rem;width:max-content;padding:7px 11px !important;border-radius:var(--rp-ui-button-radius) !important;background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary)) !important;color:#fff !important;
}
body.public-site.rp-central-public.rp-button-outline .rp-ui-theme-inline-action {
  display:inline-flex;align-items:center;gap:.35rem;width:max-content;padding:6px 10px !important;border:1px solid var(--rp-ui-primary) !important;border-radius:var(--rp-ui-button-radius) !important;color:var(--rp-ui-primary) !important;
}
body.public-site.rp-central-public.rp-button-soft .rp-ui-theme-inline-action,
body.public-site.rp-central-public.rp-button-pill .rp-ui-theme-inline-action {
  display:inline-flex;align-items:center;gap:.35rem;width:max-content;padding:7px 10px !important;background:var(--rp-ui-surface-alt) !important;border:1px solid var(--rp-ui-border) !important;border-radius:var(--rp-ui-button-radius) !important;color:var(--rp-ui-primary-dark) !important;
}
body.public-site.rp-central-public.rp-button-pill .rp-ui-theme-inline-action { border-radius:999px !important; }

/* Tables are global, even if a legacy page uses a plain <table>. */
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-table-wrap {
  overflow:auto !important;background:var(--rp-ui-surface) !important;border:1px solid var(--rp-ui-border) !important;border-radius:var(--rp-ui-table-radius) !important;box-shadow:var(--rp-ui-shadow) !important;
}
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-table {
  width:100% !important;background:var(--rp-ui-surface) !important;color:var(--rp-ui-text) !important;border-collapse:separate !important;border-spacing:0 !important;
}
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-table :is(th,td) { border-color:var(--rp-ui-border) !important; }
body.public-site.rp-central-public.rp-table-soft .rp-ui-theme-table thead th { background:var(--rp-ui-surface-alt) !important;color:var(--rp-ui-primary-dark) !important; }
body.public-site.rp-central-public.rp-table-dark-head .rp-ui-theme-table thead th { background:var(--rp-ui-primary-dark) !important;color:#fff !important; }
body.public-site.rp-central-public.rp-table-striped .rp-ui-theme-table tbody tr:nth-child(even) td { background:var(--rp-ui-surface-alt) !important; }
body.public-site.rp-central-public.rp-table-minimal .rp-ui-theme-table-wrap { border-left:0 !important;border-right:0 !important;border-radius:0 !important;box-shadow:none !important; }
body.public-site.rp-central-public.rp-table-minimal .rp-ui-theme-table :is(th,td) { border-left:0 !important;border-right:0 !important; }
body.public-site.rp-central-public.rp-table-accent .rp-ui-theme-table thead th { background:var(--rp-ui-surface-alt) !important;color:var(--rp-ui-primary-dark) !important;border-bottom:3px solid var(--rp-ui-primary) !important; }

/* Chips/badges from legacy modules. */
body.public-site.rp-central-public.rp-theme-modern .rp-ui-theme-chip {
  background:var(--rp-ui-surface-alt) !important;color:var(--rp-ui-primary-dark) !important;border:1px solid var(--rp-ui-border) !important;border-radius:var(--rp-ui-badge-radius) !important;
}

/* Density applies to every tagged surface so different themes feel different. */
body.public-site.rp-central-public.rp-density-compact .rp-ui-theme-surface { padding:min(var(--rp-ui-card-pad),14px) !important; }
body.public-site.rp-central-public.rp-density-comfortable .rp-ui-theme-surface { padding:var(--rp-ui-card-pad) !important; }
body.public-site.rp-central-public.rp-density-spacious .rp-ui-theme-surface { padding:max(var(--rp-ui-card-pad),20px) !important; }

/* Hover personality for clickable card surfaces. */
body.public-site.rp-central-public a.rp-ui-theme-surface:hover {
  transform:translateY(-2px) !important;
  border-color:color-mix(in srgb,var(--rp-ui-primary) 50%,var(--rp-theme-card-border-color)) !important;
}

/* One font across the full public project. Theme presets may change layout,
   colors and component shapes, but never create mixed typography. */
body.public-site.rp-central-public :where(*):not(.fa):not(.fas):not(.far):not(.fal):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands):not([class^="fa-"]):not([class*=" fa-"]) {
  font-family:var(--rp-ui-font) !important;
}
}

/* ======================================================================
   VDO FOLDER — FULL CENTRAL THEME BRIDGE v6
   Applies one Admin-selected Public Theme to every visual VDO page:
   dashboard, recruitment, 2021, 2025, transfers, document viewer,
   download/access gates and AJAX/dynamic content. Backend logic untouched.
   ====================================================================== */
@media screen {
body.public-site.rp-central-public.vdo-page {
  --rp-vdo-surface:var(--rp-theme-card-bg,var(--rp-ui-surface));
  --rp-vdo-border:var(--rp-theme-card-border-color,var(--rp-ui-border));
  --rp-vdo-shadow:var(--rp-theme-card-shadow,var(--rp-ui-shadow));
  background:var(--rp-ui-bg) !important;
  color:var(--rp-ui-text) !important;
}

/* Page shells: one width/rhythm for the entire /vdo/ folder. */
body.public-site.rp-central-public.vdo-page :is(
  .vdo-dashboard-wrap,.v21p-wrap,.vrec-wrap,.vdo25-shell,.vdo-access-wrap,
  .vdo-view-wrap,.vdo-download-wrap,.vtr-wrap,.vdot-view-wrap,.vdot-download-wrap,
  .vdo25-gate-wrap,.v21c-layout
) {
  width:min(calc(100% - (var(--rp-ui-container-pad) * 2)),var(--rp-ui-page-width)) !important;
  max-width:var(--rp-ui-page-width) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard,.v21p,.vrec,.vdo25-page,.vdo-access-page,.vdo-view-page,.vdo-download-page,.vtr-page) {
  background:var(--rp-ui-bg) !important;
  color:var(--rp-ui-text) !important;
}

/* Every VDO hero follows the installed hero personality. */
body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) {
  background:linear-gradient(135deg,var(--rp-ui-surface),var(--rp-ui-surface-alt)) !important;
  color:var(--rp-ui-text) !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-hero-radius) !important;
  box-shadow:var(--rp-ui-shadow) !important;
  padding:var(--rp-ui-hero-pad) !important;
}
body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) :is(h1,h2,h3,strong,b) { color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) :is(p,small,span:not(.vdo-dashboard-kicker):not(.v21p-kicker):not(.vdo25-badge)) { color:var(--rp-ui-muted) !important; }

body.public-site.rp-central-public.vdo-page.rp-hero-gradient :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) {
  background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary)) !important;
  border-color:transparent !important;color:#fff !important;
}
body.public-site.rp-central-public.vdo-page.rp-hero-dark :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) {
  background:var(--rp-ui-primary-dark) !important;border-color:transparent !important;color:#fff !important;
}
body.public-site.rp-central-public.vdo-page:is(.rp-hero-gradient,.rp-hero-dark) :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) :is(h1,h2,h3,p,small,strong,b,span) { color:#fff !important; }
body.public-site.rp-central-public.vdo-page.rp-hero-outline :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) { background:transparent !important;border:2px solid var(--rp-ui-border) !important;box-shadow:none !important; }
body.public-site.rp-central-public.vdo-page.rp-hero-flat :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) { background:var(--rp-ui-surface) !important;box-shadow:none !important; }
body.public-site.rp-central-public.vdo-page.rp-hero-glass :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) { background:color-mix(in srgb,var(--rp-ui-surface) 74%,transparent) !important;backdrop-filter:blur(18px) saturate(130%) !important; }

/* Dashboard/service/recruitment/document/gate/viewer surfaces. */
body.public-site.rp-central-public.vdo-page :is(
  .vdo-dashboard-card,.vdo-dashboard-service,.vdo-dashboard-stat,
  .v21p-card,.v21p-stat,.v21d-category-card,.v21d-section,.v21d-summary-item,
  .v21c-card,.v21c-summary-card,.v21c-side,.v21c-setup,
  .vrec-card,.vrec-hero-stat,.vrec-field,.vrec-protect,
  .vdo25-card,.vdo25-doc-stat,.vdo25-featured-doc,.vdo25-doc-row,.vdo25-summary-card,.vdo25-side,.vdo25-empty,
  .vdo25-download-card,.vdo25-gate-card,.vdo-access-card,.vdo-access-option,
  .vdo-view-card,.vdo-download-card,.vtr-card,.vdot-view-card,.vdot-download-card
) {
  background:var(--rp-theme-card-bg,var(--rp-ui-surface)) !important;
  color:var(--rp-ui-text) !important;
  border-style:solid !important;
  border-color:var(--rp-theme-card-border-color,var(--rp-ui-border)) !important;
  border-width:var(--rp-theme-card-border-width,var(--rp-ui-card-border)) !important;
  border-left-width:max(var(--rp-theme-card-border-width,var(--rp-ui-card-border)),var(--rp-theme-card-accent-width,0px)) !important;
  border-left-color:var(--rp-theme-card-accent-color,var(--rp-theme-card-border-color,var(--rp-ui-border))) !important;
  border-radius:var(--rp-ui-card-radius) !important;
  box-shadow:var(--rp-theme-card-shadow,var(--rp-ui-shadow)) !important;
  backdrop-filter:var(--rp-theme-card-backdrop,none) !important;
  -webkit-backdrop-filter:var(--rp-theme-card-backdrop,none) !important;
}
body.public-site.rp-central-public.vdo-page :is(
  .vdo-dashboard-card,.vdo-dashboard-service,.vdo-dashboard-stat,.v21p-card,.v21p-stat,.v21d-category-card,.v21d-section,.v21d-summary-item,
  .v21c-card,.v21c-summary-card,.v21c-side,.vrec-card,.vrec-hero-stat,.vdo25-card,.vdo25-doc-stat,.vdo25-featured-doc,.vdo25-doc-row,
  .vdo25-summary-card,.vdo25-side,.vdo-access-card,.vdo-access-option,.vdo-view-card,.vdo-download-card,.vtr-card,.vdot-view-card,.vdot-download-card
) :is(h1,h2,h3,h4,h5,h6,strong,b) { color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.vdo-page :is(
  .vdo-dashboard-card,.vdo-dashboard-service,.v21p-card,.v21d-category-card,.v21d-section,.v21c-card,.vrec-card,.vdo25-card,.vdo25-featured-doc,.vdo25-doc-row,
  .vdo-access-card,.vdo-access-option,.vdo-view-card,.vdo-download-card,.vtr-card
) :is(p,small,.vdo-dashboard-meta,.v21p-desc,.v21p-meta,.vrec-sub,.vdo25-doc-meta,.vtr-card-meta) { color:var(--rp-ui-muted) !important; }

/* Central icon tiles. */
body.public-site.rp-central-public.vdo-page :is(
  .vdo-dashboard-icon,.v21p-icon,.v21d-category-icon,.v21d-section-icon,.v21d-title-icon,
  .vdo25-doc-icon,.vdo25-download-icon,.vdo-download-icon,.vdot-download-icon
) {
  background:var(--rp-theme-icon-bg) !important;
  color:var(--rp-theme-icon-fg) !important;
  border:1px solid var(--rp-theme-icon-border) !important;
  border-radius:max(9px,calc(var(--rp-ui-card-radius) * .7)) !important;
  box-shadow:var(--rp-theme-icon-shadow) !important;
}
body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-icon,.v21p-icon,.v21d-category-icon,.v21d-section-icon,.v21d-title-icon,.vdo25-doc-icon,.vdo25-download-icon,.vdo-download-icon,.vdot-download-icon) :is(i,svg) { color:inherit !important; }

/* Kicker/badge/chip/pill system. */
body.public-site.rp-central-public.vdo-page :is(
  .vdo-dashboard-kicker,.vdo-dashboard-badge,.v21p-kicker,.v21p-badge,.v21c-pill,.vrec-badge,.vrec-chip,
  .vdo25-badge,.vdo25-pill,.vdo25-doc-badge,.vdo25-gate-pill,.vdo-access-badge,.vdot-pill
) {
  background:var(--rp-ui-surface-alt) !important;
  color:var(--rp-ui-primary-dark) !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-badge-radius) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.vdo-page:is(.rp-hero-gradient,.rp-hero-dark) :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) :is(.vdo-dashboard-kicker,.vdo-dashboard-badge,.v21p-kicker,.vdo25-badge) {
  background:rgba(255,255,255,.13) !important;color:#fff !important;border-color:rgba(255,255,255,.22) !important;
}

/* All VDO actions use the central button personality. */
body.public-site.rp-central-public.vdo-page :is(
  .vdo-dashboard-btn,.v21p-btn,.v21d-mini-btn,.v21c-filter-btn,.vrec-btn,.vdo25-btn,.vdo25-filter-btn,.vdo25-gate-btn,
  .vdo-access-btn,.vdo-access-back,.vdo-view-btn,.vdo-download-btn,.vdot-btn,.vdot-download-btn,.vtr-back
) {
  min-height:var(--rp-ui-button-height) !important;
  border-radius:var(--rp-ui-button-radius) !important;
  font-family:var(--rp-ui-font) !important;
  font-size:var(--rp-ui-button-font-size) !important;
  font-weight:750 !important;
}
body.public-site.rp-central-public.vdo-page.rp-button-solid :is(.vdo-dashboard-btn,.v21p-btn,.v21d-mini-btn,.v21c-filter-btn,.vrec-btn,.vdo25-btn,.vdo25-filter-btn,.vdo25-gate-btn,.vdo-access-btn,.vdo-view-btn,.vdo-download-btn,.vdot-btn,.vdot-download-btn):not(.light):not(.gray):not([class*="reset"]):not([class*="back"]) { background:var(--rp-ui-primary) !important;border-color:var(--rp-ui-primary) !important;color:#fff !important; }
body.public-site.rp-central-public.vdo-page.rp-button-gradient :is(.vdo-dashboard-btn,.v21p-btn,.v21d-mini-btn,.v21c-filter-btn,.vrec-btn,.vdo25-btn,.vdo25-filter-btn,.vdo25-gate-btn,.vdo-access-btn,.vdo-view-btn,.vdo-download-btn,.vdot-btn,.vdot-download-btn):not(.light):not(.gray):not([class*="reset"]):not([class*="back"]) { background:linear-gradient(135deg,var(--rp-ui-primary-dark),var(--rp-ui-primary)) !important;border-color:transparent !important;color:#fff !important; }
body.public-site.rp-central-public.vdo-page.rp-button-outline :is(.vdo-dashboard-btn,.v21p-btn,.v21d-mini-btn,.v21c-filter-btn,.vrec-btn,.vdo25-btn,.vdo25-filter-btn,.vdo25-gate-btn,.vdo-access-btn,.vdo-view-btn,.vdo-download-btn,.vdot-btn,.vdot-download-btn) { background:transparent !important;border:1.5px solid var(--rp-ui-primary) !important;color:var(--rp-ui-primary) !important;box-shadow:none !important; }
body.public-site.rp-central-public.vdo-page.rp-button-soft :is(.vdo-dashboard-btn,.v21p-btn,.v21d-mini-btn,.v21c-filter-btn,.vrec-btn,.vdo25-btn,.vdo25-filter-btn,.vdo25-gate-btn,.vdo-access-btn,.vdo-view-btn,.vdo-download-btn,.vdot-btn,.vdot-download-btn) { background:var(--rp-ui-surface-alt) !important;border:1px solid var(--rp-ui-border) !important;color:var(--rp-ui-primary-dark) !important;box-shadow:none !important; }
body.public-site.rp-central-public.vdo-page.rp-button-pill :is(.vdo-dashboard-btn,.v21p-btn,.v21d-mini-btn,.v21c-filter-btn,.vrec-btn,.vdo25-btn,.vdo25-filter-btn,.vdo25-gate-btn,.vdo-access-btn,.vdo-view-btn,.vdo-download-btn,.vdot-btn,.vdot-download-btn) { border-radius:999px !important; }

/* Filters/forms. */
body.public-site.rp-central-public.vdo-page :is(.v21p-tools,.v21c-filters,.vrec-filter,.vdo25-doc-filter,.vdo25-filters) {
  background:var(--rp-theme-card-bg,var(--rp-ui-surface)) !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-card-radius) !important;
  box-shadow:var(--rp-theme-card-shadow,var(--rp-ui-shadow)) !important;
  padding:var(--rp-ui-card-pad) !important;
}
body.public-site.rp-central-public.vdo-page :is(.v21p-tools,.v21c-filters,.vrec-filter,.vdo25-doc-filter,.vdo25-filters) :is(input,select,textarea,.vdo25-input,.vdo25-select) {
  min-height:var(--rp-ui-input-height) !important;background:var(--rp-ui-surface) !important;color:var(--rp-ui-text) !important;
  border:1px solid var(--rp-ui-border) !important;border-radius:var(--rp-ui-input-radius) !important;box-shadow:none !important;
}
body.public-site.rp-central-public.vdo-page :is(.v21p-tools,.v21c-filters,.vrec-filter,.vdo25-doc-filter,.vdo25-filters) :is(input,select,textarea):focus { border-color:var(--rp-ui-primary) !important;box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-ui-primary) 16%,transparent) !important;outline:none !important; }

/* Section navigation/tabs. */
body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.v21d-category-nav,.vrec-list-tabs,.vdo25-section-nav) {
  background:transparent !important;border:0 !important;box-shadow:none !important;gap:8px !important;
}
body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.v21d-category-nav,.vrec-list-tabs,.vdo25-section-nav) > :is(a,button) {
  background:var(--rp-ui-surface) !important;color:var(--rp-ui-text) !important;border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-button-radius) !important;box-shadow:none !important;
}
body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.v21d-category-nav,.vrec-list-tabs,.vdo25-section-nav) > :is(a,button):hover,
body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.v21d-category-nav,.vrec-list-tabs,.vdo25-section-nav) > :is(a,button).active,
body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.v21d-category-nav,.vrec-list-tabs,.vdo25-section-nav) > :is(a,button).is-active { background:var(--rp-ui-primary) !important;color:#fff !important;border-color:var(--rp-ui-primary) !important; }

/* All VDO data tables. */
body.public-site.rp-central-public.vdo-page :is(.v21c-table-wrap,.vrec-table-wrap,.vdo25-table-wrap) {
  overflow:auto !important;background:var(--rp-ui-surface) !important;border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-table-radius) !important;box-shadow:var(--rp-ui-shadow) !important;
  -webkit-overflow-scrolling:touch;
}
body.public-site.rp-central-public.vdo-page :is(.v21c-table,.vrec-table,.vdo25-table) {
  width:100% !important;background:var(--rp-ui-surface) !important;color:var(--rp-ui-text) !important;border-collapse:separate !important;border-spacing:0 !important;
}
body.public-site.rp-central-public.vdo-page :is(.v21c-table,.vrec-table,.vdo25-table) :is(th,td) { border-color:var(--rp-ui-border) !important;color:var(--rp-ui-text) !important; }
body.public-site.rp-central-public.vdo-page.rp-table-soft :is(.v21c-table,.vrec-table,.vdo25-table) thead th { background:var(--rp-ui-surface-alt) !important;color:var(--rp-ui-primary-dark) !important; }
body.public-site.rp-central-public.vdo-page.rp-table-dark-head :is(.v21c-table,.vrec-table,.vdo25-table) thead th { background:var(--rp-ui-primary-dark) !important;color:#fff !important; }
body.public-site.rp-central-public.vdo-page.rp-table-striped :is(.v21c-table,.vrec-table,.vdo25-table) tbody tr:nth-child(even) td { background:var(--rp-ui-surface-alt) !important; }
body.public-site.rp-central-public.vdo-page.rp-table-accent :is(.v21c-table,.vrec-table,.vdo25-table) thead th { background:var(--rp-ui-surface-alt) !important;color:var(--rp-ui-primary-dark) !important;border-bottom:3px solid var(--rp-ui-primary) !important; }
body.public-site.rp-central-public.vdo-page.rp-table-minimal :is(.v21c-table-wrap,.vrec-table-wrap,.vdo25-table-wrap) { border-left:0 !important;border-right:0 !important;border-radius:0 !important;box-shadow:none !important; }

/* Progress, meta rows, summaries and results. */
body.public-site.rp-central-public.vdo-page :is(.v21c-progress,.vdo25-progress) { background:var(--rp-ui-surface-alt) !important;border-radius:999px !important;overflow:hidden; }
body.public-site.rp-central-public.vdo-page :is(.v21c-progress,.vdo25-progress) > * { background:var(--rp-ui-primary) !important; }
body.public-site.rp-central-public.vdo-page :is(.v21c-result,.v21p-result,.vdo25-result-count,.vdo25-download-status,.vdo-download-status,.vdot-download-status) { color:var(--rp-ui-primary-dark) !important; }
body.public-site.rp-central-public.vdo-page :is(.v21c-empty,.v21p-empty,.v21d-no-docs,.v21d-section-empty,.vrec-empty,.vdo25-empty,.vdo-error,.vdot-error,.vdo-access-empty,.vdo-access-disabled) {
  background:var(--rp-ui-surface-alt) !important;color:var(--rp-ui-muted) !important;border:1px dashed var(--rp-ui-border) !important;border-radius:var(--rp-ui-card-radius) !important;
}

/* PDF/document viewers and access gates. */
body.public-site.rp-central-public.vdo-page :is(.vdo-viewer-box,.vdo25-viewer,.vdot-frame) {
  background:var(--rp-ui-surface-alt) !important;border:1px solid var(--rp-ui-border) !important;border-radius:var(--rp-ui-card-radius) !important;overflow:hidden !important;
}
body.public-site.rp-central-public.vdo-page :is(.vdo-view-loader,.vdo25-loader,.vdot-loader) { color:var(--rp-ui-primary) !important;background:color-mix(in srgb,var(--rp-ui-surface) 88%,transparent) !important; }
body.public-site.rp-central-public.vdo-page :is(.vdo-access-note,.vdo-security-notice) { background:color-mix(in srgb,var(--rp-ui-primary) 7%,var(--rp-ui-surface)) !important;color:var(--rp-ui-text) !important;border:1px solid color-mix(in srgb,var(--rp-ui-primary) 24%,var(--rp-ui-border)) !important;border-radius:var(--rp-ui-card-radius) !important; }

/* Transfer list cards. */
body.public-site.rp-central-public.vdo-page :is(.vtr-year-heading,.vtr-top,.v21p-card-head,.v21d-section-head,.v21c-card-head,.vdo25-card-head,.vdo-view-top,.vdot-view-top) { border-color:var(--rp-ui-border) !important; }
body.public-site.rp-central-public.vdo-page :is(.vtr-date,.vtr-district,.vtr-order,.v21d-section-stat,.v21d-summary-item,.v21p-count) { color:var(--rp-ui-muted) !important; }

/* Density is respected across module-specific surfaces. */
body.public-site.rp-central-public.vdo-page.rp-density-compact :is(.vdo-dashboard-card,.vdo-dashboard-service,.v21p-card,.v21d-category-card,.v21d-section,.v21c-card,.vrec-card,.vdo25-card,.vdo25-featured-doc,.vdo25-doc-row,.vtr-card) { padding:min(var(--rp-ui-card-pad),14px) !important; }
body.public-site.rp-central-public.vdo-page.rp-density-spacious :is(.vdo-dashboard-card,.vdo-dashboard-service,.v21p-card,.v21d-category-card,.v21d-section,.v21c-card,.vrec-card,.vdo25-card,.vdo25-featured-doc,.vdo25-doc-row,.vtr-card) { padding:max(var(--rp-ui-card-pad),20px) !important; }

/* Responsive: compact, readable and no giant mobile cards. */
@media (max-width:767.98px) {
  body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-wrap,.v21p-wrap,.vrec-wrap,.vdo25-shell,.vdo-access-wrap,.vdo-view-wrap,.vdo-download-wrap,.vtr-wrap,.vdot-view-wrap,.vdot-download-wrap,.vdo25-gate-wrap) {
    width:calc(100% - 20px) !important;
  }
  body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-hero,.v21p-hero,.vrec-hero,.vdo25-hero) { padding:max(18px,min(var(--rp-ui-hero-pad),24px)) !important; }
  body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-service-grid,.vdo-dashboard-grid,.v21p-grid,.v21d-category-nav,.v21d-section-list,.vdo25-grid,.vdo25-featured-grid) { grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important; }
  body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-service,.vdo-dashboard-card,.v21p-card,.v21d-category-card,.vrec-card,.vdo25-featured-doc,.vdo25-doc-row) { min-height:0 !important;padding:14px !important; }
  body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-service,.vdo-dashboard-card,.v21p-card,.v21d-category-card,.vrec-card,.vdo25-featured-doc) :is(h2,h3,h4) { font-size:clamp(15px,4vw,18px) !important;line-height:1.25 !important; }
  body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-stats,.v21p-stats,.vdo25-doc-stats,.vdo25-summary,.v21c-summary) { grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important; }
  body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.vrec-list-tabs,.vdo25-section-nav) { overflow-x:auto !important;display:flex !important;flex-wrap:nowrap !important;scrollbar-width:none; }
  body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.vrec-list-tabs,.vdo25-section-nav)::-webkit-scrollbar { display:none; }
  body.public-site.rp-central-public.vdo-page :is(.v21c-nav,.vrec-list-tabs,.vdo25-section-nav) > * { flex:0 0 auto !important;white-space:nowrap !important; }
}
@media (max-width:430px) {
  body.public-site.rp-central-public.vdo-page :is(.vdo-dashboard-service-grid,.vdo-dashboard-grid,.v21p-grid,.v21d-category-nav,.v21d-section-list,.vdo25-grid,.vdo25-featured-grid) { grid-template-columns:1fr !important; }
}
}

/* ============================================================
   CENTRAL SELECT / DROPDOWN SYSTEM — 2026-09-06
   Shared by VDO Contact and every normal Public <select>.
   Colors are controlled from Admin -> Public UI Themes ->
   Advanced Custom Design -> Dropdown / Select Design.
   ============================================================ */
body.public-site.rp-central-public select:not([multiple]):not([size]),
body.public-site.rp-central-public .form-select:not([multiple]):not([size]),
body.public-site.rp-central-public .vdo-select,
body.public-site.rp-central-public .vdo25-select {
  -webkit-appearance:none !important;
  appearance:none !important;
  width:100%;
  min-height:var(--rp-ui-input-height) !important;
  padding:0 46px 0 14px !important;
  border:1px solid var(--rp-ui-select-border,var(--rp-ui-border)) !important;
  border-radius:var(--rp-ui-input-radius) !important;
  color:var(--rp-ui-select-text,var(--rp-ui-text)) !important;
  background-color:var(--rp-ui-select-bg,var(--rp-ui-surface)) !important;
  background-image:
    linear-gradient(45deg,transparent 50%,var(--rp-ui-select-arrow,var(--rp-ui-primary)) 50%),
    linear-gradient(135deg,var(--rp-ui-select-arrow,var(--rp-ui-primary)) 50%,transparent 50%) !important;
  background-position:
    calc(100% - 18px) calc(50% - 1px),
    calc(100% - 13px) calc(50% - 1px) !important;
  background-size:5px 5px,5px 5px !important;
  background-repeat:no-repeat !important;
  font-family:var(--rp-ui-font) !important;
  font-weight:650;
  line-height:1.25;
  box-shadow:0 1px 0 color-mix(in srgb,var(--rp-ui-select-border,var(--rp-ui-border)) 38%,transparent) !important;
  cursor:pointer;
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease,transform .16s ease;
}
body.public-site.rp-central-public select:not([multiple]):not([size]):hover,
body.public-site.rp-central-public .form-select:not([multiple]):not([size]):hover,
body.public-site.rp-central-public .vdo-select:hover {
  border-color:color-mix(in srgb,var(--rp-ui-select-focus,var(--rp-ui-primary)) 56%,var(--rp-ui-select-border,var(--rp-ui-border))) !important;
}
body.public-site.rp-central-public select:not([multiple]):not([size]):focus,
body.public-site.rp-central-public .form-select:not([multiple]):not([size]):focus,
body.public-site.rp-central-public .vdo-select:focus {
  outline:none !important;
  border-color:var(--rp-ui-select-focus,var(--rp-ui-primary)) !important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--rp-ui-select-focus,var(--rp-ui-primary)) 16%,transparent) !important;
}
body.public-site.rp-central-public select:not([multiple]):not([size]):disabled,
body.public-site.rp-central-public .form-select:not([multiple]):not([size]):disabled,
body.public-site.rp-central-public .vdo-select:disabled {
  opacity:.58 !important;
  cursor:not-allowed !important;
  color:var(--rp-ui-muted) !important;
  background-color:color-mix(in srgb,var(--rp-ui-select-bg,var(--rp-ui-surface)) 74%,var(--rp-ui-surface-alt)) !important;
  border-color:color-mix(in srgb,var(--rp-ui-select-border,var(--rp-ui-border)) 76%,transparent) !important;
}
body.public-site.rp-central-public select option,
body.public-site.rp-central-public .form-select option,
body.public-site.rp-central-public .vdo-select option {
  color:var(--rp-ui-select-text,var(--rp-ui-text));
  background:var(--rp-ui-select-bg,var(--rp-ui-surface));
  font-family:var(--rp-ui-font);
}

/* VDO Contact: compact, polished filter/search card. */
body.public-site.rp-central-public .vdo-page-bg {
  background:var(--rp-ui-bg) !important;
  color:var(--rp-ui-text) !important;
}
body.public-site.rp-central-public .vdo-page-shell {
  width:min(calc(100% - (var(--rp-ui-container-pad) * 2)),var(--rp-ui-page-width));
  margin-inline:auto;
  padding-block:var(--rp-ui-section-gap);
}
body.public-site.rp-central-public .vdo-panel {
  padding:clamp(14px,2vw,var(--rp-ui-card-pad)) !important;
  border:var(--rp-ui-card-border) solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-card-radius) !important;
  background:var(--rp-ui-surface) !important;
  box-shadow:var(--rp-ui-shadow) !important;
}
body.public-site.rp-central-public .vdo-panel-title {
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  margin:0 0 15px !important;
  color:var(--rp-ui-text) !important;
  font-size:clamp(16px,2vw,20px) !important;
  line-height:1.25 !important;
}
body.public-site.rp-central-public .vdo-panel-title i { color:var(--rp-ui-primary) !important; }
body.public-site.rp-central-public .vdo-filter-grid {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) auto auto !important;
  gap:12px !important;
  align-items:end !important;
}
body.public-site.rp-central-public .vdo-search-field { grid-column:1/-1 !important; }
body.public-site.rp-central-public .vdo-field { min-width:0; }
body.public-site.rp-central-public .vdo-field label {
  display:block !important;
  margin:0 0 7px !important;
  color:var(--rp-ui-muted) !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.01em;
}
body.public-site.rp-central-public .vdo-search-wrap { position:relative !important; }
body.public-site.rp-central-public .vdo-search-input {
  width:100% !important;
  min-height:var(--rp-ui-input-height) !important;
  padding-left:43px !important;
  padding-right:44px !important;
  background:var(--rp-ui-select-bg,var(--rp-ui-surface)) !important;
  color:var(--rp-ui-select-text,var(--rp-ui-text)) !important;
  border:1px solid var(--rp-ui-select-border,var(--rp-ui-border)) !important;
  border-radius:var(--rp-ui-input-radius) !important;
}
body.public-site.rp-central-public .vdo-search-input:focus {
  border-color:var(--rp-ui-select-focus,var(--rp-ui-primary)) !important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--rp-ui-select-focus,var(--rp-ui-primary)) 16%,transparent) !important;
}
body.public-site.rp-central-public .vdo-search-icon {
  position:absolute !important;
  left:15px !important;
  top:50% !important;
  translate:0 -50%;
  color:var(--rp-ui-select-arrow,var(--rp-ui-primary)) !important;
  pointer-events:none;
}
body.public-site.rp-central-public .vdo-search-clear {
  position:absolute !important;
  right:7px !important;
  top:50% !important;
  translate:0 -50%;
  width:32px !important;
  height:32px !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:calc(var(--rp-ui-input-radius) - 2px) !important;
  background:var(--rp-ui-surface-alt) !important;
  color:var(--rp-ui-primary) !important;
}
body.public-site.rp-central-public .vdo-btn {
  min-height:var(--rp-ui-button-height) !important;
  padding:0 16px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  border-radius:var(--rp-ui-button-radius) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  white-space:nowrap;
}
body.public-site.rp-central-public .vdo-btn-primary {
  background:var(--rp-ui-primary) !important;
  border:1px solid var(--rp-ui-primary) !important;
  color:#fff !important;
}
body.public-site.rp-central-public .vdo-btn-soft {
  background:var(--rp-ui-surface-alt) !important;
  border:1px solid var(--rp-ui-border) !important;
  color:var(--rp-ui-primary-dark) !important;
}
body.public-site.rp-central-public .vdo-filter-note {
  grid-column:1/-1 !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin-top:1px !important;
}
body.public-site.rp-central-public .vdo-chip {
  min-height:34px;
  padding:6px 10px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  border:1px solid var(--rp-ui-border) !important;
  border-radius:var(--rp-ui-badge-radius) !important;
  background:var(--rp-ui-surface-alt) !important;
  color:var(--rp-ui-text) !important;
  font-size:12px !important;
  font-weight:750 !important;
  text-decoration:none !important;
}

@media (max-width:760px) {
  body.public-site.rp-central-public .vdo-page-shell {
    width:calc(100% - 24px) !important;
    padding-block:14px !important;
  }
  body.public-site.rp-central-public .vdo-filter-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  body.public-site.rp-central-public .vdo-search-field,
  body.public-site.rp-central-public .vdo-filter-grid > .vdo-field { grid-column:1/-1 !important; }
  body.public-site.rp-central-public .vdo-filter-grid > .vdo-field select { width:100% !important; }
  body.public-site.rp-central-public #vdoSearchButton { grid-column:1 !important; width:100% !important; }
  body.public-site.rp-central-public #vdoLoadAll { grid-column:2 !important; width:100% !important; }
  body.public-site.rp-central-public .vdo-filter-note { grid-column:1/-1 !important; }
  body.public-site.rp-central-public .vdo-panel-title { font-size:18px !important; }
}

@media (max-width:420px) {
  body.public-site.rp-central-public .vdo-panel { padding:13px !important; }
  body.public-site.rp-central-public .vdo-filter-grid { gap:9px !important; }
  body.public-site.rp-central-public .vdo-btn { padding-inline:10px !important; font-size:13px !important; }
  body.public-site.rp-central-public .vdo-chip { font-size:11px !important; }
}
