/* Raj E Panchayat - Installment Central Theme Bridge
   Loads after legacy inline CSS on installment/home and installment/viewer.
   It does not change installment/payment logic; it only centralizes visuals. */

:where(.rp-inst-home,.inst-viewer) {
  --rp-inst-primary: var(--rp-ui-primary, #0b7a67);
  --rp-inst-primary-dark: var(--rp-ui-primary-dark, #075b4d);
  --rp-inst-accent: var(--rp-ui-accent, #d5ad34);
  --rp-inst-bg: var(--rp-ui-bg, #f5f8f7);
  --rp-inst-surface: var(--rp-ui-surface, #ffffff);
  --rp-inst-surface-alt: var(--rp-ui-surface-alt, #f1f7f5);
  --rp-inst-text: var(--rp-ui-text, #15231f);
  --rp-inst-muted: var(--rp-ui-muted, #667085);
  --rp-inst-border: var(--rp-ui-border, #dbe7e3);
  --rp-inst-card-radius: var(--rp-ui-card-radius, 16px);
  --rp-inst-button-radius: var(--rp-ui-button-radius, 12px);
  --rp-inst-input-radius: var(--rp-ui-input-radius, 12px);
  --rp-inst-table-radius: var(--rp-ui-table-radius, 14px);
  --rp-inst-shadow: var(--rp-ui-shadow, 0 8px 24px rgba(15,23,42,.07));
  --rp-inst-card-pad: var(--rp-ui-card-pad, 18px);
  --rp-inst-row-height: var(--rp-ui-table-row-height, 46px);
  color: var(--rp-inst-text) !important;
  font-family: var(--rp-ui-font, inherit) !important;
}

/* Landing page */
.rp-inst-home { background:var(--rp-inst-bg) !important; }
.rp-inst-home .rp-inst-home-wrap { max-width:var(--rp-ui-page-width,1280px) !important; }
.rp-inst-home :is(.rp-inst-home-hero,.rp-inst-home-help,.rp-inst-service) {
  border-color:var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-card-radius) !important;
  box-shadow:var(--rp-inst-shadow) !important;
}
.rp-inst-home .rp-inst-home-hero,
.rp-inst-home .rp-inst-home-help { background:linear-gradient(135deg,var(--rp-inst-surface),var(--rp-inst-surface-alt)) !important; }
.rp-inst-home .rp-inst-service { background:var(--rp-inst-surface) !important; color:var(--rp-inst-text) !important; }
.rp-inst-home .rp-inst-card-icon { background:var(--rp-inst-surface-alt) !important; color:var(--rp-inst-primary) !important; border-color:var(--rp-inst-border) !important; }
.rp-inst-home :is(.rp-inst-card-badge,.rp-inst-home-kicker) { background:var(--rp-inst-surface-alt) !important; color:var(--rp-inst-primary-dark) !important; border-color:var(--rp-inst-border) !important; }
.rp-inst-home .rp-inst-card-action {
  min-height:var(--rp-ui-button-height,44px) !important;
  border-radius:var(--rp-inst-button-radius) !important;
  background:var(--rp-inst-primary) !important;
  color:#fff !important;
  border:1px solid var(--rp-inst-primary) !important;
  box-shadow:none !important;
}


/* Unified landing-card accent: all installment service cards follow the active central theme.
   Legacy viewer/pdf/expense red/orange/green tones are intentionally neutralized here. */
.rp-inst-home .rp-inst-service,
.rp-inst-home .rp-inst-service.viewer,
.rp-inst-home .rp-inst-service.pdf,
.rp-inst-home .rp-inst-service.expense {
  --accent: var(--rp-inst-primary) !important;
  --soft: var(--rp-inst-surface-alt) !important;
  --icon: var(--rp-inst-primary-dark) !important;
  border-color: var(--rp-inst-border) !important;
}
.rp-inst-home .rp-inst-service::before {
  background: var(--rp-inst-primary) !important;
}
.rp-inst-home .rp-inst-service:hover {
  border-color: color-mix(in srgb,var(--rp-inst-primary) 38%,var(--rp-inst-border)) !important;
}
.rp-inst-home .rp-inst-card-subtitle,
.rp-inst-home .rp-inst-feature-list i {
  color: var(--rp-inst-primary) !important;
}
.rp-inst-home .rp-inst-card-icon,
.rp-inst-home .rp-inst-card-badge,
.rp-inst-home .rp-inst-feature-list i {
  background: var(--rp-inst-surface-alt) !important;
  border-color: var(--rp-inst-border) !important;
}
.rp-inst-home .rp-inst-card-action a,
.rp-inst-home .rp-inst-service.viewer .rp-inst-card-action a,
.rp-inst-home .rp-inst-service.pdf .rp-inst-card-action a,
.rp-inst-home .rp-inst-service.expense .rp-inst-card-action a {
  color:#fff !important;
  background:var(--rp-inst-primary) !important;
  border-color:var(--rp-inst-primary) !important;
  box-shadow:none !important;
}

/* Viewer shell, hero, panels */
.inst-viewer { background:var(--rp-inst-bg) !important; }
.inst-viewer .viewer-shell { max-width:var(--rp-ui-page-width,1280px) !important; }
.inst-viewer :is(.viewer-hero,.viewer-card,.rp-account-gp-panel,.summary-box,.compact-head-panel,.rp-inst-access-card,.rp-purchased-card,.rp-expired-wrap) {
  background:var(--rp-inst-surface) !important;
  color:var(--rp-inst-text) !important;
  border-color:var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-card-radius) !important;
  box-shadow:var(--rp-inst-shadow) !important;
}
.inst-viewer .viewer-hero { background:linear-gradient(135deg,var(--rp-inst-surface),var(--rp-inst-surface-alt)) !important; }
.inst-viewer :is(h1,h2,h3,.section-title,.compact-head-title,.result-header) { color:var(--rp-inst-text) !important; }
.inst-viewer :is(p,small,.rp-purchased-location,.rp-purchased-validity,.rp-expired-meta) { color:var(--rp-inst-muted) !important; }

/* Forms */
.inst-viewer .controls { gap:var(--rp-ui-grid-gap,12px) !important; }
.inst-viewer .field :is(select,input,textarea) {
  min-height:var(--rp-ui-input-height,44px) !important;
  border:1px solid var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-input-radius) !important;
  background:var(--rp-inst-surface) !important;
  color:var(--rp-inst-text) !important;
  box-shadow:none !important;
}
.inst-viewer .field :is(select,input,textarea):focus {
  border-color:var(--rp-inst-primary) !important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-inst-primary) 18%,transparent) !important;
  outline:0 !important;
}

/* Buttons/actions */
.inst-viewer :is(.btn,.viewer-btn-link,.rp-add-gp-btn,.rp-view-installment-btn,.rp-renew-btn,.rp-pay-primary) {
  min-height:var(--rp-ui-button-height,44px) !important;
  border-radius:var(--rp-inst-button-radius) !important;
  font-family:var(--rp-ui-font,inherit) !important;
  font-weight:800 !important;
}
.inst-viewer :is(.btn,.rp-add-gp-btn,.rp-view-installment-btn,.rp-pay-primary) {
  background:var(--rp-inst-primary) !important;
  border-color:var(--rp-inst-primary) !important;
  color:#fff !important;
}
.inst-viewer :is(.viewer-btn-link,.rp-renew-btn) {
  background:var(--rp-inst-surface) !important;
  color:var(--rp-inst-primary-dark) !important;
  border:1px solid var(--rp-inst-border) !important;
}

/* CENTRAL TABLE SYSTEM - overrides every legacy installment table variant */
.inst-viewer :is(.table-wrap,.modern-table-wrap,.compact-installment-wrap,.inst-compact-table-wrap) {
  width:100% !important;
  overflow:auto !important;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-table-radius) !important;
  background:var(--rp-inst-surface) !important;
  box-shadow:var(--rp-inst-shadow) !important;
}
.inst-viewer :is(.summary-table,.result-table,.modern-table,.compact-installment-table,.inst-compact-table,table) {
  width:100% !important;
  margin:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:var(--rp-inst-surface) !important;
  color:var(--rp-inst-text) !important;
  font-family:var(--rp-ui-font,inherit) !important;
}
.inst-viewer :is(.summary-table,.result-table,.modern-table,.compact-installment-table,.inst-compact-table,table) thead th {
  background:var(--rp-inst-surface-alt) !important;
  color:var(--rp-inst-primary-dark) !important;
  border-color:var(--rp-inst-border) !important;
  font-weight:850 !important;
  box-shadow:none !important;
}
.inst-viewer :is(.summary-table,.result-table,.modern-table,.compact-installment-table,.inst-compact-table,table) :is(th,td) {
  padding:calc((var(--rp-inst-row-height) - 20px)/2) 12px !important;
  min-height:var(--rp-inst-row-height) !important;
  border-color:var(--rp-inst-border) !important;
  vertical-align:middle !important;
  color:var(--rp-inst-text) !important;
}
.inst-viewer :is(.summary-table,.result-table,.modern-table,.compact-installment-table,.inst-compact-table,table) tbody tr:nth-child(even) td {
  background:color-mix(in srgb,var(--rp-inst-surface-alt) 52%,var(--rp-inst-surface)) !important;
}
.inst-viewer :is(.summary-table,.result-table,.modern-table,.compact-installment-table,.inst-compact-table,table) tbody tr:hover td {
  background:color-mix(in srgb,var(--rp-inst-primary) 8%,var(--rp-inst-surface)) !important;
}
.inst-viewer :is(.amount,.amount-cell,.total-cell,.row-total,.total-amount,.demand) { color:var(--rp-inst-primary-dark) !important; }
.inst-viewer .compact-installment-table tbody tr.pdf-click-row { cursor:pointer; }
.inst-viewer .compact-installment-table tbody tr.pdf-click-row:focus-visible {
  outline:3px solid color-mix(in srgb,var(--rp-inst-primary) 30%,transparent) !important;
  outline-offset:-3px;
}

/* Payment modal follows the same active theme */
.inst-viewer .rp-pay-modal-dialog { background:var(--rp-inst-surface) !important; border-color:var(--rp-inst-border) !important; border-radius:var(--rp-inst-card-radius) !important; }
.inst-viewer :is(.rp-pay-panchayat-card,.rp-pay-plan-item,.rp-pay-choice) { background:var(--rp-inst-surface-alt) !important; border-color:var(--rp-inst-border) !important; border-radius:var(--rp-inst-card-radius) !important; }

/* The old text-only loader remains in DOM for existing JS, but the central glowing logo is the visible loader. */
html:has([data-rp-loader-root]) .inst-viewer .rp-installment-legacy-loading { display:none !important; }

@media (max-width:767.98px) {
  .rp-inst-home,.inst-viewer { padding-left:0 !important; padding-right:0 !important; }
  .rp-inst-home .rp-inst-home-wrap,.inst-viewer .viewer-shell { width:min(100% - 24px,var(--rp-ui-page-width,1280px)) !important; margin-inline:auto !important; }
  .inst-viewer :is(.table-wrap,.modern-table-wrap,.compact-installment-wrap,.inst-compact-table-wrap) { border-radius:max(10px,calc(var(--rp-inst-table-radius) - 2px)) !important; }
  .inst-viewer :is(.summary-table,.result-table,.modern-table,.compact-installment-table,.inst-compact-table,table) :is(th,td) { padding:10px 9px !important; }
}

/* ======================================================================
   INSTALLMENT VIEWER PAYMENT MODAL — FULL CENTRAL UI BRIDGE
   public/installment/viewer.php > #rpInstPaymentModal
   Keeps all payment/plan JS untouched; only maps the modal to Admin > Public UI.
   ====================================================================== */
body.public-site.rp-central-public .inst-viewer .rp-pay-modal {
  font-family:var(--rp-ui-font,inherit) !important;
  color:var(--rp-inst-text) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-backdrop {
  background:color-mix(in srgb,var(--rp-inst-text) 72%,transparent) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-dialog {
  overflow:auto !important;
  background:var(--rp-inst-surface) !important;
  color:var(--rp-inst-text) !important;
  border:var(--rp-ui-card-border,1px) solid var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-card-radius) !important;
  box-shadow:var(--rp-inst-shadow) !important;
}

/* Modal hero follows the central Hero Style. */
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-hero {
  min-height:unset !important;
  padding:var(--rp-ui-hero-pad,24px) !important;
  padding-right:max(var(--rp-ui-hero-pad,24px),72px) !important;
  background:linear-gradient(135deg,var(--rp-inst-surface),var(--rp-inst-surface-alt)) !important;
  color:var(--rp-inst-text) !important;
  border-bottom:1px solid var(--rp-inst-border) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-hero::before,
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-hero::after {
  border-color:color-mix(in srgb,var(--rp-inst-primary) 13%,transparent) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-title {
  color:var(--rp-inst-text) !important;
  font-family:var(--rp-ui-font,inherit) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-subtitle {
  color:var(--rp-inst-muted) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-state {
  background:var(--rp-inst-surface-alt) !important;
  color:var(--rp-inst-primary-dark) !important;
  border-color:var(--rp-inst-border) !important;
  border-radius:var(--rp-ui-badge-radius,999px) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-state::before {
  background:var(--rp-inst-accent) !important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--rp-inst-accent) 20%,transparent) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-lock {
  color:var(--rp-inst-primary) !important;
  background:var(--rp-inst-surface-alt) !important;
  border-color:var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-card-radius) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-lock::after {
  border-color:color-mix(in srgb,var(--rp-inst-primary) 18%,transparent) !important;
  border-radius:max(6px,calc(var(--rp-inst-card-radius) - 6px)) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-close {
  background:var(--rp-inst-surface-alt) !important;
  color:var(--rp-inst-primary-dark) !important;
  border:1px solid var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-button-radius) !important;
  box-shadow:none !important;
}

body.public-site.rp-central-public.rp-hero-gradient .inst-viewer .rp-pay-modal-hero {
  background:linear-gradient(135deg,var(--rp-inst-primary-dark),var(--rp-inst-primary)) !important;
  color:#fff !important;
  border-bottom-color:transparent !important;
}
body.public-site.rp-central-public.rp-hero-dark .inst-viewer .rp-pay-modal-hero {
  background:var(--rp-inst-primary-dark) !important;
  color:#fff !important;
  border-bottom-color:transparent !important;
}
body.public-site.rp-central-public:is(.rp-hero-gradient,.rp-hero-dark) .inst-viewer .rp-pay-modal-hero :is(.rp-pay-modal-title,.rp-pay-modal-subtitle) {
  color:#fff !important;
}
body.public-site.rp-central-public:is(.rp-hero-gradient,.rp-hero-dark) .inst-viewer .rp-pay-state {
  background:color-mix(in srgb,#fff 14%,transparent) !important;
  color:#fff !important;
  border-color:color-mix(in srgb,#fff 30%,transparent) !important;
}
body.public-site.rp-central-public:is(.rp-hero-gradient,.rp-hero-dark) .inst-viewer :is(.rp-pay-lock,.rp-pay-modal-close) {
  background:color-mix(in srgb,#fff 14%,transparent) !important;
  color:#fff !important;
  border-color:color-mix(in srgb,#fff 30%,transparent) !important;
}
body.public-site.rp-central-public.rp-hero-outline .inst-viewer .rp-pay-modal-hero {
  background:transparent !important;
  border-bottom:2px solid var(--rp-inst-border) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-hero-flat .inst-viewer .rp-pay-modal-hero {
  background:var(--rp-inst-surface) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-hero-glass .inst-viewer .rp-pay-modal-hero {
  background:color-mix(in srgb,var(--rp-inst-surface) 76%,transparent) !important;
  -webkit-backdrop-filter:blur(18px) saturate(130%) !important;
  backdrop-filter:blur(18px) saturate(130%) !important;
}

/* Modal body + every inner card now uses the central Card system. */
body.public-site.rp-central-public .inst-viewer .rp-pay-modal-body {
  padding:var(--rp-inst-card-pad) !important;
  background:var(--rp-inst-surface) !important;
  color:var(--rp-inst-text) !important;
}
body.public-site.rp-central-public .inst-viewer :is(
  .rp-pay-panchayat-card,
  .rp-pay-choice,
  .rp-pay-plan-item,
  .rp-pay-benefits-shell
) {
  background:var(--rp-inst-surface) !important;
  color:var(--rp-inst-text) !important;
  border:var(--rp-ui-card-border,1px) solid var(--rp-inst-border) !important;
  border-radius:var(--rp-inst-card-radius) !important;
  box-shadow:var(--rp-inst-shadow) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-panchayat-card::before {
  background:linear-gradient(180deg,var(--rp-inst-accent) 0 32%,var(--rp-inst-primary) 32% 100%) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-panchayat-icon,
body.public-site.rp-central-public .inst-viewer .rp-pay-plan-icon,
body.public-site.rp-central-public .inst-viewer .rp-pay-check {
  background:var(--rp-inst-surface-alt) !important;
  color:var(--rp-inst-primary) !important;
  border-color:var(--rp-inst-border) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-panchayat-icon,
body.public-site.rp-central-public .inst-viewer .rp-pay-plan-icon {
  border-radius:var(--rp-inst-button-radius) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-panchayat-label,
body.public-site.rp-central-public .inst-viewer .rp-pay-location,
body.public-site.rp-central-public .inst-viewer .rp-pay-choice-note,
body.public-site.rp-central-public .inst-viewer .rp-pay-plan-item span,
body.public-site.rp-central-public .inst-viewer .rp-pay-trust {
  color:var(--rp-inst-muted) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-panchayat-name,
body.public-site.rp-central-public .inst-viewer .rp-pay-choice strong,
body.public-site.rp-central-public .inst-viewer .rp-pay-plan-item b,
body.public-site.rp-central-public .inst-viewer .rp-pay-benefits li,
body.public-site.rp-central-public .inst-viewer .rp-pay-choice-title {
  color:var(--rp-inst-text) !important;
  font-family:var(--rp-ui-font,inherit) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice-title::after,
body.public-site.rp-central-public .inst-viewer .rp-pay-trust {
  border-color:var(--rp-inst-border) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice-title::after {
  background:linear-gradient(90deg,var(--rp-inst-border),transparent) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-panchayat-art,
body.public-site.rp-central-public .inst-viewer .rp-pay-benefit-art {
  color:var(--rp-inst-primary) !important;
}

/* Plan cards and selected state. */
body.public-site.rp-central-public .inst-viewer .rp-pay-choice {
  background:var(--rp-inst-surface) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice::before {
  background:var(--rp-inst-surface-alt) !important;
  color:var(--rp-inst-muted) !important;
  border-color:var(--rp-inst-border) !important;
  border-radius:var(--rp-ui-badge-radius,999px) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice:hover {
  border-color:color-mix(in srgb,var(--rp-inst-primary) 48%,var(--rp-inst-border)) !important;
  box-shadow:var(--rp-inst-shadow) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice.selected {
  background:color-mix(in srgb,var(--rp-inst-primary) 9%,var(--rp-inst-surface)) !important;
  border-color:var(--rp-inst-primary) !important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-inst-primary) 14%,transparent),var(--rp-inst-shadow) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice.selected::before {
  background:var(--rp-inst-primary) !important;
  color:#fff !important;
  border-color:var(--rp-inst-primary) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice.selected::after {
  background:var(--rp-inst-primary) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-choice-price,
body.public-site.rp-central-public .inst-viewer .rp-pay-choice.selected .rp-pay-choice-note,
body.public-site.rp-central-public .inst-viewer .rp-pay-choice.selected .rp-pay-choice-note::before,
body.public-site.rp-central-public .inst-viewer .rp-pay-plan-item.amount b,
body.public-site.rp-central-public .inst-viewer .rp-pay-trust-lock {
  color:var(--rp-inst-primary) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-plan-item.amount {
  background:color-mix(in srgb,var(--rp-inst-primary) 7%,var(--rp-inst-surface)) !important;
  border-color:color-mix(in srgb,var(--rp-inst-primary) 32%,var(--rp-inst-border)) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-benefits-shell {
  background:var(--rp-inst-surface-alt) !important;
}

/* Central warning/status colors. */
body.public-site.rp-central-public .inst-viewer .rp-pay-expiry-note {
  background:color-mix(in srgb,var(--rp-ui-warning,#d97706) 10%,var(--rp-inst-surface)) !important;
  color:var(--rp-ui-warning,#d97706) !important;
  border-color:color-mix(in srgb,var(--rp-ui-warning,#d97706) 36%,var(--rp-inst-border)) !important;
  border-radius:var(--rp-inst-button-radius) !important;
}

/* Pay / Premium actions use Admin > Public UI Button Style. */
body.public-site.rp-central-public .inst-viewer :is(.rp-pay-primary,.rp-pay-premium,.rp-pay-later) {
  min-height:var(--rp-ui-button-height,44px) !important;
  border-radius:var(--rp-inst-button-radius) !important;
  font-family:var(--rp-ui-font,inherit) !important;
  font-size:var(--rp-ui-button-font-size,15px) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-primary {
  background:var(--rp-inst-primary) !important;
  color:#fff !important;
  border:1px solid var(--rp-inst-primary) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-primary:hover {
  background:var(--rp-inst-primary-dark) !important;
  border-color:var(--rp-inst-primary-dark) !important;
  color:#fff !important;
  filter:none !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-premium {
  background:color-mix(in srgb,var(--rp-inst-accent) 12%,var(--rp-inst-surface)) !important;
  color:color-mix(in srgb,var(--rp-inst-accent) 62%,var(--rp-inst-text)) !important;
  border:1px solid color-mix(in srgb,var(--rp-inst-accent) 45%,var(--rp-inst-border)) !important;
}
body.public-site.rp-central-public .inst-viewer .rp-pay-later {
  background:transparent !important;
  color:var(--rp-inst-muted) !important;
}
body.public-site.rp-central-public.rp-button-gradient .inst-viewer .rp-pay-primary {
  background:linear-gradient(135deg,var(--rp-inst-primary-dark),var(--rp-inst-primary)) !important;
  border-color:transparent !important;
  color:#fff !important;
  box-shadow:0 7px 18px color-mix(in srgb,var(--rp-inst-primary) 22%,transparent) !important;
}
body.public-site.rp-central-public.rp-button-outline .inst-viewer .rp-pay-primary {
  background:transparent !important;
  color:var(--rp-inst-primary) !important;
  border:1.5px solid var(--rp-inst-primary) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-button-outline .inst-viewer .rp-pay-primary:hover {
  background:color-mix(in srgb,var(--rp-inst-primary) 8%,transparent) !important;
  color:var(--rp-inst-primary-dark) !important;
}
body.public-site.rp-central-public.rp-button-soft .inst-viewer .rp-pay-primary {
  background:var(--rp-inst-surface-alt) !important;
  color:var(--rp-inst-primary-dark) !important;
  border:1px solid var(--rp-inst-border) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-button-pill .inst-viewer :is(.rp-pay-primary,.rp-pay-premium,.rp-pay-later,.rp-pay-modal-close) {
  border-radius:999px !important;
}

/* Central Card Style variants for all payment modal cards. */
body.public-site.rp-central-public.rp-card-elevated .inst-viewer :is(.rp-pay-modal-dialog,.rp-pay-panchayat-card,.rp-pay-choice,.rp-pay-plan-item,.rp-pay-benefits-shell) {
  border-color:transparent !important;
  box-shadow:0 16px 38px color-mix(in srgb,var(--rp-inst-text) 13%,transparent) !important;
}
body.public-site.rp-central-public.rp-card-soft .inst-viewer :is(.rp-pay-panchayat-card,.rp-pay-choice,.rp-pay-plan-item,.rp-pay-benefits-shell) {
  background:var(--rp-inst-surface-alt) !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-card-glass .inst-viewer :is(.rp-pay-modal-dialog,.rp-pay-panchayat-card,.rp-pay-choice,.rp-pay-plan-item,.rp-pay-benefits-shell) {
  background:color-mix(in srgb,var(--rp-inst-surface) 74%,transparent) !important;
  border-color:color-mix(in srgb,var(--rp-inst-border) 70%,transparent) !important;
  -webkit-backdrop-filter:blur(18px) saturate(125%) !important;
  backdrop-filter:blur(18px) saturate(125%) !important;
}
body.public-site.rp-central-public.rp-card-flat .inst-viewer :is(.rp-pay-modal-dialog,.rp-pay-panchayat-card,.rp-pay-choice,.rp-pay-plan-item,.rp-pay-benefits-shell) {
  border-width:0 !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-card-outlined .inst-viewer :is(.rp-pay-modal-dialog,.rp-pay-panchayat-card,.rp-pay-choice,.rp-pay-plan-item,.rp-pay-benefits-shell) {
  border-width:2px !important;
  box-shadow:none !important;
}
body.public-site.rp-central-public.rp-card-accent .inst-viewer :is(.rp-pay-panchayat-card,.rp-pay-choice,.rp-pay-plan-item,.rp-pay-benefits-shell) {
  border-top:3px solid var(--rp-inst-primary) !important;
}

/* Compact mobile layout still follows the same central radius/spacing tokens. */
@media (max-width:760px) {
  body.public-site.rp-central-public .inst-viewer .rp-pay-modal-dialog {
    border-radius:var(--rp-inst-card-radius) !important;
  }
  body.public-site.rp-central-public .inst-viewer .rp-pay-modal-hero {
    padding:calc(var(--rp-ui-hero-pad,24px) * .75) !important;
    padding-right:max(calc(var(--rp-ui-hero-pad,24px) * .75),60px) !important;
  }
  body.public-site.rp-central-public .inst-viewer .rp-pay-modal-body {
    padding:max(12px,calc(var(--rp-inst-card-pad) * .78)) !important;
  }
  body.public-site.rp-central-public .inst-viewer :is(.rp-pay-choice,.rp-pay-plan-item,.rp-pay-panchayat-card,.rp-pay-benefits-shell) {
    border-radius:max(8px,calc(var(--rp-inst-card-radius) * .86)) !important;
  }
}

/* ======================================================================
   COMPACT HEAD BARS — CENTRAL TABLE THEME BRIDGE
   Connects the "Head: ..." strips above each installment table to
   Admin > Public UI Studio > Tables instead of the old hard-coded green.
   ====================================================================== */
body.public-site.rp-central-public .inst-viewer .compact-head-panel{
  border-width:var(--rp-ui-table-border-width,1px) !important;
  border-style:solid !important;
  border-color:var(--rp-ui-table-border,var(--rp-inst-border)) !important;
  border-radius:var(--rp-ui-table-radius,var(--rp-inst-table-radius)) !important;
  background:var(--rp-ui-surface,var(--rp-inst-surface)) !important;
  box-shadow:var(--rp-ui-shadow,var(--rp-inst-shadow)) !important;
}
body.public-site.rp-central-public .inst-viewer .compact-head-title{
  min-height:var(--rp-ui-table-head-height,46px) !important;
  padding:var(--rp-ui-table-cell-pad-y,10px) var(--rp-ui-table-cell-pad-x,12px) !important;
  background:var(--rp-ui-table-head-bg,var(--rp-inst-surface-alt)) !important;
  color:var(--rp-ui-table-head-text,var(--rp-inst-primary-dark)) !important;
  border:0 !important;
  border-bottom:var(--rp-ui-table-border-width,1px) solid var(--rp-ui-table-border,var(--rp-inst-border)) !important;
  border-radius:calc(var(--rp-ui-table-radius,var(--rp-inst-table-radius)) - 1px) calc(var(--rp-ui-table-radius,var(--rp-inst-table-radius)) - 1px) 0 0 !important;
  box-shadow:none !important;
  font-family:var(--rp-ui-font,inherit) !important;
}
body.public-site.rp-central-public .inst-viewer .compact-head-title h3{
  color:inherit !important;
  font-family:var(--rp-ui-heading-font,var(--rp-ui-font,inherit)) !important;
  font-size:max(var(--rp-ui-table-font-size,14px),16px) !important;
  font-weight:850 !important;
}
body.public-site.rp-central-public .inst-viewer .compact-head-title span{
  background:var(--rp-ui-badge-bg,var(--rp-inst-surface-alt)) !important;
  color:var(--rp-ui-badge-text,var(--rp-inst-primary-dark)) !important;
  border:1px solid var(--rp-ui-badge-border-color,var(--rp-ui-table-border,var(--rp-inst-border))) !important;
  border-radius:var(--rp-ui-badge-radius,999px) !important;
  font-size:var(--rp-ui-badge-font-size,12px) !important;
}
body.public-site.rp-central-public .inst-viewer .compact-installment-wrap{
  border:0 !important;
  border-radius:0 0 var(--rp-ui-table-radius,var(--rp-inst-table-radius)) var(--rp-ui-table-radius,var(--rp-inst-table-radius)) !important;
  box-shadow:none !important;
}

/* Respect the table-head variants from Public UI Studio. */
body.public-site.rp-central-public.rp-table-dark-head .inst-viewer .compact-head-title{
  background:var(--rp-ui-primary-dark,#075b4d) !important;
  color:#fff !important;
  border-bottom-color:color-mix(in srgb,var(--rp-ui-primary-dark,#075b4d) 82%,#fff) !important;
}
body.public-site.rp-central-public.rp-table-flat .inst-viewer .compact-head-title{
  box-shadow:none !important;
}

@media (max-width:700px){
  body.public-site.rp-central-public .inst-viewer .compact-head-title{
    min-height:var(--rp-ui-table-head-height,44px) !important;
    padding:var(--rp-ui-table-cell-pad-y,9px) var(--rp-ui-table-cell-pad-x,10px) !important;
  }
}
