/*
 * RisenFynix deep healthcare learning-hub visual polish.
 * Loaded after the structural component and utility styles.
 */

:root {
  --rf-bg: #07141F;
  --rf-bg-soft: #0A1B2A;
  --rf-bg-muted: #0D1E2C;
  --rf-surface: #0E2233;
  --rf-surface-2: #132E44;
  --rf-card: #102638;
  --rf-card-hover: #14314A;
  --rf-border: rgba(148, 184, 198, 0.18);
  --rf-border-strong: rgba(20, 184, 166, 0.42);
  --rf-heading: #F8FCFD;
  --rf-text: #E6F1F4;
  --rf-text-strong: #FFFFFF;
  --rf-muted: #B8C8D4;
  --rf-muted-2: #CEDBE3;
  --rf-link: #5EEAD4;
  --rf-link-hover: #99F6E4;
  --rf-navy: #0A1B2A;
  --rf-navy-2: #163A52;
  --rf-teal: #2DD4BF;
  --rf-teal-dark: #5EEAD4;
  --rf-mint: rgba(45, 212, 191, 0.14);
  --rf-cyan-soft: rgba(103, 232, 249, 0.12);
  --rf-warning: #FBBF24;
  --rf-warning-bg: rgba(251, 191, 36, 0.12);
  --rf-danger: #FB7185;
  --rf-danger-bg: rgba(251, 113, 133, 0.12);
  --rf-success: #34D399;
  --rf-success-bg: rgba(52, 211, 153, 0.12);
  --rf-info: #67E8F9;
  --rf-radius-sm: 10px;
  --rf-radius-md: 16px;
  --rf-radius-lg: 24px;
  --rf-shadow-soft: 0 18px 50px rgba(2, 8, 15, 0.34);
  --rf-shadow-card: 0 12px 32px rgba(2, 8, 15, 0.22);
  --rf-container: 1180px;
  --rf-dashboard: 1200px;
  --rf-reading: 780px;
}

html {
  background: var(--rf-bg);
  color-scheme: dark;
}

body,
.wp-site-blocks {
  min-width: 0;
  background:
    radial-gradient(circle at 12% 0%, rgba(20, 184, 166, 0.08), transparent 30rem),
    var(--rf-bg);
  color: var(--rf-text);
}

.wp-site-blocks {
  overflow-x: clip;
}

main,
.wp-block-template-part,
.wp-block-group,
.wp-block-query,
.wp-block-post-template,
.wp-block-post-content,
.entry-content {
  min-width: 0;
}

body,
p,
li,
dd,
td,
th,
label,
input,
select,
textarea,
button {
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-post-title,
.wp-block-query-title {
  max-width: 100%;
  color: var(--rf-heading);
  line-height: 1.18;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  white-space: normal;
}

h1 { font-size: clamp(2.35rem, 5.4vw, 4.35rem); }
h2 { font-size: clamp(1.8rem, 3.6vw, 2.75rem); }
h3 { font-size: clamp(1.15rem, 2vw, 1.45rem); }

a {
  color: var(--rf-teal-dark);
}

a:hover {
  color: #99F6E4;
}

:focus-visible,
button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--rf-teal);
  outline-offset: 3px;
}

::selection {
  background: var(--rf-teal);
  color: #04151D;
}

/* WordPress block-layout containment */
.rf-container,
.rf-page-shell,
.rf-single-shell {
  width: min(calc(100% - clamp(40px, 8vw, 96px)), var(--rf-container));
  max-width: var(--rf-container);
  margin-inline: auto;
}

.rf-container--wide,
.rf-container-wide,
.rf-dashboard-shell {
  width: min(calc(100% - clamp(40px, 8vw, 96px)), var(--rf-dashboard));
  max-width: var(--rf-dashboard);
  margin-inline: auto;
}

.rf-container--reading,
.rf-reading-container {
  width: min(calc(100% - clamp(40px, 8vw, 96px)), var(--rf-reading));
  max-width: var(--rf-reading);
  margin-inline: auto;
}

.rf-section.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.rf-section > .wp-block-shortcode,
.rf-section > .wp-block-group,
.rf-section > .wp-block-html,
.rf-content-shell > .wp-block-group:not(.rf-single-layout),
.rf-content-shell > .wp-block-query,
.rf-content-shell.is-layout-constrained {
  width: min(calc(100% - clamp(40px, 8vw, 96px)), var(--rf-container));
  max-width: var(--rf-container) !important;
  margin-inline: auto !important;
}

.rf-section.is-layout-constrained > .rf-section-heading,
.rf-section .rf-section-heading {
  width: 100%;
  max-width: 760px !important;
}

.rf-interactive-learning,
.rf-career-dashboard {
  width: 100%;
  max-width: var(--rf-dashboard);
  margin-inline: auto;
}

.rf-interactive-learning {
  display: grid;
  gap: clamp(48px, 6vw, 72px);
}

.rf-interactive-learning > section,
.rf-career-dashboard > section,
.rf-learning-previews > .rf-preview-section {
  margin-block: 0;
}

:where(
  .rf-interactive-learning,
  .rf-career-dashboard,
  .rf-module-experience,
  .rf-resource-experience,
  .rf-archive-card
) p:empty {
  display: none !important;
  margin: 0 !important;
}

.rf-content-shell {
  padding-block: clamp(42px, 6vw, 68px);
  background: transparent;
}

.rf-content-shell .wp-block-post-content {
  max-width: var(--rf-reading);
  color: var(--rf-text);
}

.rf-content-shell > .is-layout-constrained > :where(
  .rf-card-grid,
  .rf-query-grid,
  .rf-archive-shortcode-grid
) {
  width: 100%;
  max-width: var(--rf-container) !important;
}

.rf-content-shell .wp-block-post-content > * + * {
  margin-top: 1.1em;
}

.rf-section {
  padding-block: clamp(56px, 6vw, 72px);
}

.rf-section--tight {
  padding-block: clamp(36px, 4.5vw, 52px);
}

.rf-section--tint {
  background: var(--rf-bg-soft);
  border-block: 1px solid rgba(148, 184, 198, 0.08);
}

.rf-section--white {
  background: var(--rf-bg-muted);
  border-block: 1px solid rgba(148, 184, 198, 0.08);
}

.rf-section--navy {
  background: linear-gradient(145deg, #0B2131, #102D42);
  color: var(--rf-text);
}

.rf-section-heading {
  margin-bottom: clamp(24px, 3.4vw, 36px);
}

.rf-section-heading p,
.rf-lede,
.rf-post-meta {
  color: var(--rf-muted-2);
}

.rf-kicker {
  color: var(--rf-teal-dark);
  letter-spacing: 0.12em;
}

/* Header and navigation */
.rf-site-header {
  min-height: 70px;
  background: rgba(7, 20, 31, 0.92);
  border-bottom-color: var(--rf-border);
  box-shadow: 0 10px 28px rgba(2, 8, 15, 0.22);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.rf-header-inner {
  min-height: 70px;
}

.rf-brand,
.rf-brand:hover,
.rf-brand-copy strong {
  color: var(--rf-heading);
}

.rf-brand-copy small {
  color: var(--rf-muted);
}

.rf-brand-mark {
  background: linear-gradient(145deg, var(--rf-surface-2), #17415C);
  border: 1px solid var(--rf-border-strong);
  color: var(--rf-teal);
  box-shadow: 0 8px 20px rgba(2, 8, 15, 0.24);
}

.rf-desktop-nav {
  gap: clamp(12px, 1.35vw, 18px);
}

.rf-desktop-nav a {
  color: var(--rf-muted-2);
  font-size: 0.82rem;
}

.rf-desktop-nav a:hover,
.rf-desktop-nav a[aria-current="page"] {
  color: var(--rf-teal);
}

.rf-menu-toggle {
  color: var(--rf-heading);
}

.rf-menu-toggle:hover {
  background: var(--rf-mint);
}

.rf-mobile-menu {
  background: rgba(7, 20, 31, 0.985);
  border-top: 1px solid var(--rf-border);
}

.rf-mobile-menu a {
  border-bottom-color: var(--rf-border);
  color: var(--rf-heading);
}

.rf-header-vault {
  display: none;
}

/* Heroes */
.rf-home-hero,
.rf-page-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 0%, rgba(20, 184, 166, 0.2), transparent 42%),
    linear-gradient(155deg, #081823 0%, #0C2232 55%, #0A1B2A 100%);
  border-bottom: 1px solid var(--rf-border);
  color: var(--rf-text);
}

.rf-home-hero {
  padding-block: clamp(58px, 7vw, 88px);
}

.rf-page-hero {
  padding-block: clamp(44px, 6vw, 66px);
  text-align: center;
}

.rf-page-hero.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  width: min(calc(100% - clamp(40px, 8vw, 96px)), 760px);
  max-width: 760px !important;
  margin-inline: auto !important;
}

.rf-page-hero h1,
.rf-home-hero h1,
.rf-hero-copy h1 {
  color: var(--rf-heading);
}

.rf-page-hero p,
.rf-home-hero p,
.rf-hero-assurances li {
  color: var(--rf-muted-2);
}

.rf-hero-copy h1 span {
  color: var(--rf-teal);
}

.rf-hero-panel {
  background: linear-gradient(145deg, rgba(19, 46, 68, 0.94), rgba(14, 34, 51, 0.97));
  border-color: var(--rf-border-strong);
  box-shadow: var(--rf-shadow-soft);
}

.rf-mini-path li,
.rf-mini-path b {
  background: var(--rf-bg-soft);
  border-color: var(--rf-border);
}

.rf-mini-path li:first-child {
  background: var(--rf-mint);
  border-color: var(--rf-border-strong);
}

.rf-mini-path strong,
.rf-mini-path b {
  color: var(--rf-heading);
}

.rf-mini-path small {
  color: var(--rf-muted-2);
}

.rf-learning-rule {
  background: rgba(45, 212, 191, 0.1);
  border-color: var(--rf-teal);
  color: var(--rf-text);
}

.rf-path-selector {
  background: linear-gradient(145deg, var(--rf-surface), #0D2638);
  border-color: var(--rf-border-strong);
  box-shadow: var(--rf-shadow-card);
}

.rf-path-choice {
  background: var(--rf-bg-soft);
  border-color: var(--rf-border);
  color: var(--rf-heading);
}

.rf-path-choice:hover,
.rf-path-choice[aria-pressed="true"] {
  background: var(--rf-mint);
  border-color: var(--rf-teal);
  color: var(--rf-heading);
}

/* Buttons, badges, and controls */
.rf-button {
  border-radius: 12px;
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.rf-button--primary {
  background: var(--rf-teal);
  border-color: var(--rf-teal);
  color: #04151D;
  box-shadow: 0 10px 26px rgba(20, 184, 166, 0.22);
}

.rf-button--primary:hover {
  background: #5EEAD4;
  border-color: #5EEAD4;
  color: #04151D;
  box-shadow: 0 14px 32px rgba(20, 184, 166, 0.3);
}

.rf-button--secondary,
.rf-button--light {
  background: var(--rf-surface-2);
  border-color: var(--rf-border-strong);
  color: var(--rf-heading);
}

.rf-button--secondary:hover,
.rf-button--light:hover {
  background: var(--rf-card-hover);
  border-color: var(--rf-teal);
  color: var(--rf-heading);
}

.rf-text-link {
  color: var(--rf-teal-dark);
}

.rf-badge,
.rf-card-tags span {
  background: rgba(181, 198, 211, 0.08);
  border-color: var(--rf-border);
  color: var(--rf-muted-2);
}

.rf-badge--beginner,
.rf-badge--workflow {
  background: var(--rf-mint);
  border-color: var(--rf-border-strong);
  color: #99F6E4;
}

.rf-badge--warning {
  background: var(--rf-warning-bg);
  border-color: rgba(251, 191, 36, 0.35);
  color: #FDE68A;
}

.rf-badge--danger {
  background: var(--rf-danger-bg);
  border-color: rgba(251, 113, 133, 0.36);
  color: #FECDD3;
}

.rf-badge--success {
  background: var(--rf-success-bg);
  border-color: rgba(52, 211, 153, 0.35);
  color: #A7F3D0;
}

input,
textarea,
select,
.rf-search,
.rf-search-field input,
.rf-focus-fields select,
.rf-tabs textarea {
  background: #091A28;
  border-color: rgba(148, 184, 198, 0.28);
  color: var(--rf-text);
}

input::placeholder,
textarea::placeholder {
  color: var(--rf-muted);
  opacity: 1;
}

/* Card system and safe grid widths */
.rf-card-grid,
.rf-query-grid,
.rf-archive-shortcode-grid,
.rf-query-grid .wp-block-post-template,
.rf-workflow-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
  gap: 20px;
}

.rf-track-grid,
.rf-path-choice-grid,
.rf-recommendation-grid,
.rf-career-tool-grid,
.rf-panel-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)) !important;
  gap: 18px;
}

.rf-mini-card-grid,
.rf-offer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)) !important;
  gap: 18px;
}

.rf-module-roadmap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px;
  margin-top: 18px;
}

:where(
  .rf-start-card,
  .rf-card,
  .rf-resource-card,
  .rf-workflow-card,
  .rf-role-card,
  .rf-glossary-card,
  .rf-track-card,
  .rf-module-step-card,
  .rf-mini-learning-card,
  .rf-query-grid .wp-block-post,
  .rf-career-tool-grid article,
  .rf-offer-grid article,
  .rf-roadmap-timeline article,
  .rf-practice-reveal
) {
  min-width: 0;
  height: 100%;
  padding: clamp(20px, 2.5vw, 26px);
  background: linear-gradient(145deg, var(--rf-card), #0D2131);
  border: 1px solid var(--rf-border);
  border-radius: 20px;
  box-shadow: var(--rf-shadow-card);
  color: var(--rf-text);
}

:where(
  .rf-start-card,
  .rf-card,
  .rf-resource-card,
  .rf-workflow-card,
  .rf-role-card,
  .rf-track-card,
  .rf-module-step-card,
  .rf-query-grid .wp-block-post,
  .rf-career-tool-grid article,
  .rf-offer-grid article
):hover {
  background: linear-gradient(145deg, var(--rf-card-hover), #102A3D);
  border-color: var(--rf-border-strong);
  box-shadow: var(--rf-shadow-soft);
  transform: translateY(-2px);
}

:where(
  .rf-card,
  .rf-resource-card,
  .rf-workflow-card,
  .rf-role-card,
  .rf-glossary-card,
  .rf-track-card,
  .rf-module-step-card,
  .rf-query-grid .wp-block-post
) :where(h2, h3, h4),
:where(
  .rf-card,
  .rf-resource-card,
  .rf-workflow-card,
  .rf-role-card,
  .rf-glossary-card,
  .rf-track-card,
  .rf-module-step-card,
  .rf-query-grid .wp-block-post
) :where(h2, h3, h4) a {
  color: var(--rf-heading);
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: none;
  white-space: normal;
}

:where(
  .rf-card,
  .rf-resource-card,
  .rf-workflow-card,
  .rf-role-card,
  .rf-track-card,
  .rf-module-step-card,
  .rf-query-grid .wp-block-post
) p {
  color: var(--rf-muted-2);
}

.rf-resource-card,
.rf-workflow-card,
.rf-role-card,
.rf-query-grid .wp-block-post {
  display: flex;
  flex-direction: column;
}

.rf-archive-card {
  min-width: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.rf-archive-card .rf-text-link {
  margin-top: auto;
  padding-top: 12px;
}

.rf-card-meta {
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  border-color: var(--rf-border);
}

.rf-card-meta span {
  border-color: var(--rf-border);
  color: var(--rf-muted);
}

.rf-review-note {
  color: #A7F3D0;
}

.rf-module-group {
  margin-top: 30px;
  padding: clamp(20px, 3vw, 28px);
  background: rgba(14, 34, 51, 0.72);
  border: 1px solid var(--rf-border);
  border-radius: var(--rf-radius-lg);
}

.rf-module-group-heading {
  border-bottom-color: var(--rf-border-strong);
}

.rf-module-group-heading span {
  background: var(--rf-mint);
  color: #99F6E4;
}

.rf-module-step-card {
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
}

.rf-module-step-card > div {
  min-width: 0;
}

.rf-module-step-card h4 {
  margin-bottom: 7px;
  font-size: 1.08rem;
  line-height: 1.24;
}

.rf-module-step-card p {
  margin-bottom: 10px;
  line-height: 1.55;
}

.rf-module-index,
.rf-track-number,
.rf-card-icon {
  background: var(--rf-mint);
  border: 1px solid var(--rf-border-strong);
  color: #99F6E4;
}

.rf-inline-details div,
.rf-meta-list div {
  border-color: var(--rf-border);
}

.rf-inline-details dt,
.rf-meta-list dt {
  color: var(--rf-muted);
}

.rf-inline-details dd,
.rf-meta-list dd {
  color: var(--rf-heading);
}

/* Learning interactions and panels */
.rf-lifecycle,
.rf-lead-scorer {
  background:
    radial-gradient(circle at 92% 8%, rgba(45, 212, 191, 0.12), transparent 25rem),
    linear-gradient(145deg, #091C2A, #102A3D);
  border: 1px solid var(--rf-border);
  box-shadow: var(--rf-shadow-soft);
  color: var(--rf-text);
}

.rf-lifecycle-step,
.rf-funnel-track button,
.rf-lead-scorer label {
  background: rgba(181, 198, 211, 0.07);
  border-color: var(--rf-border);
  color: var(--rf-heading);
}

.rf-lifecycle-step:hover,
.rf-lifecycle-step[aria-expanded="true"],
.rf-funnel-track button[aria-expanded="true"] {
  background: rgba(45, 212, 191, 0.16);
  border-color: var(--rf-teal);
  color: var(--rf-heading);
}

.rf-lifecycle-panel,
.rf-funnel-panels article,
.rf-recommendation-panel,
.rf-focus-result {
  background: var(--rf-surface-2);
  border: 1px solid var(--rf-border-strong);
  color: var(--rf-text);
}

.rf-panel-grid p,
.rf-recommendation-grid p {
  background: rgba(181, 198, 211, 0.07);
  color: var(--rf-text);
}

.rf-module-hero-panel,
.rf-tool-hero {
  background:
    radial-gradient(circle at 100% 0%, rgba(45, 212, 191, 0.15), transparent 24rem),
    linear-gradient(145deg, #0B2234, #163A52);
  border: 1px solid var(--rf-border-strong);
  box-shadow: var(--rf-shadow-soft);
  color: var(--rf-text);
}

.rf-module-hero-panel dl div,
.rf-tool-hero dl div {
  background: rgba(7, 20, 31, 0.38);
  border: 1px solid var(--rf-border);
}

.rf-module-hero-panel dt,
.rf-tool-hero dt {
  color: var(--rf-muted-2);
}

.rf-lesson-nav {
  background: rgba(10, 27, 42, 0.94);
  border-color: var(--rf-border);
  box-shadow: 0 12px 30px rgba(2, 8, 15, 0.24);
  backdrop-filter: blur(14px);
}

.rf-lesson-nav a {
  color: var(--rf-muted-2);
}

.rf-lesson-nav a:hover,
.rf-lesson-nav a[aria-current="true"] {
  background: var(--rf-mint);
  color: #99F6E4;
}

.rf-tabs,
.rf-copy-block,
.rf-vault-controls,
.rf-resource-guidance > div,
.rf-practice-reveal {
  background: linear-gradient(145deg, var(--rf-surface), #0D2131);
  border-color: var(--rf-border);
  box-shadow: var(--rf-shadow-card);
}

.rf-tab-list {
  background: #091A28;
  border-bottom-color: var(--rf-border);
}

.rf-tab-list button {
  color: var(--rf-muted-2);
}

.rf-tab-list button[aria-selected="true"] {
  background: var(--rf-teal);
  color: #04151D;
}

.rf-lesson-content h2 {
  background: rgba(45, 212, 191, 0.08);
  border-left-color: var(--rf-teal);
  color: var(--rf-heading);
}

.rf-copy-block pre {
  background: #081824;
  border-color: var(--rf-border);
  color: var(--rf-text);
}

.rf-use-when,
.rf-related-learning,
.rf-preview-panel,
.rf-next-step-card,
.rf-reveal-panel,
.rf-accent-panel,
.rf-learning-rule {
  background: rgba(45, 212, 191, 0.08);
  border-color: var(--rf-border-strong);
  color: var(--rf-text);
}

.rf-visual-points li {
  background: rgba(7, 20, 31, 0.36);
  border-color: var(--rf-border);
}

.rf-check-list li {
  color: var(--rf-text);
}

/* Resource Vault */
.rf-downloads {
  color: var(--rf-text);
}

.rf-downloads--card {
  margin-top: 14px;
}

.rf-downloads--single {
  margin-block: 24px;
  padding: clamp(20px, 3vw, 28px);
  background: linear-gradient(145deg, var(--rf-surface), #0D2131);
  border: 1px solid var(--rf-border-strong);
  border-radius: var(--rf-radius-lg);
  box-shadow: var(--rf-shadow-card);
}

.rf-downloads__title {
  margin-block: 6px 10px;
  color: var(--rf-heading);
}

.rf-downloads__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.rf-downloads--card .rf-downloads__button {
  width: 100%;
  justify-content: center;
}

.rf-downloads__fallback {
  margin-block: 12px 0;
  color: var(--rf-muted-2);
}

.rf-vault-controls {
  max-width: 100%;
  padding: clamp(22px, 3.5vw, 34px);
}

.rf-search-field {
  max-width: 760px;
  color: var(--rf-heading);
}

.rf-chip-nav {
  flex-wrap: wrap;
  overflow: visible;
}

.rf-chip-nav button {
  background: var(--rf-bg-soft);
  border-color: var(--rf-border);
  color: var(--rf-muted-2);
}

.rf-chip-nav button:hover,
.rf-chip-nav button[aria-pressed="true"] {
  background: var(--rf-mint);
  border-color: var(--rf-teal);
  color: #99F6E4;
}

.rf-starter-pack {
  background: rgba(45, 212, 191, 0.08);
  border: 1px solid var(--rf-border-strong);
}

.rf-placeholder-banner {
  background: var(--rf-warning-bg);
  border-left-color: var(--rf-warning);
  color: #FDE68A;
}

/* Career tool hub */
.rf-career-dashboard > section {
  margin-block: 0 clamp(40px, 5vw, 60px);
}

.rf-career-template,
.rf-focus-builder,
.rf-direct-client-path {
  background: linear-gradient(145deg, var(--rf-surface), #0D2436);
  border: 1px solid var(--rf-border);
  box-shadow: var(--rf-shadow-card);
}

.rf-career-template > h3 a,
.rf-focus-fields label,
.rf-roadmap-timeline article > button {
  color: var(--rf-heading);
}

.rf-funnel-track button span,
.rf-offer-grid span,
.rf-roadmap-timeline article > button span {
  color: var(--rf-teal-dark);
}

.rf-score-card {
  background: var(--rf-bg-soft);
  border: 1px solid var(--rf-border);
  color: var(--rf-heading);
}

.rf-score-card strong {
  color: var(--rf-teal);
}

.rf-roadmap-timeline article > button[aria-expanded="true"] {
  background: var(--rf-mint);
}

.rf-roadmap-timeline label {
  background: rgba(181, 198, 211, 0.06);
  color: var(--rf-text);
}

/* Single learning pages */
.rf-content-shell > .rf-single-layout {
  width: min(calc(100% - clamp(40px, 8vw, 96px)), var(--rf-container));
  max-width: var(--rf-container);
  margin-inline: auto;
}

.rf-single-layout {
  grid-template-columns: minmax(0, 780px) minmax(280px, 320px);
  justify-content: center;
  gap: 36px;
  align-items: start;
}

.rf-single-layout > .wp-block-group:first-child {
  width: 100%;
  max-width: var(--rf-reading);
  min-width: 0;
}

.rf-single-layout h1 {
  font-size: clamp(2.25rem, 4.8vw, 3.7rem);
  line-height: 1.1;
}

.rf-single-layout .wp-block-post-excerpt,
.rf-single-layout .wp-block-post-content {
  color: var(--rf-muted-2);
}

.rf-single-sidebar {
  width: 100%;
  min-width: 0;
  padding: 12px;
  background: rgba(14, 34, 51, 0.78);
  border: 1px solid var(--rf-border);
  border-radius: var(--rf-radius-lg);
  box-shadow: var(--rf-shadow-card);
}

.rf-meta-card {
  padding: 20px;
  background: linear-gradient(145deg, var(--rf-surface-2), #102B40);
  border-color: var(--rf-border-strong);
  color: var(--rf-text);
}

.rf-meta-card p,
.rf-meta-card dd {
  color: var(--rf-muted-2);
}

.single-rf_workflow .wp-block-post-content > h2,
.single-rf_role_guide .wp-block-post-content > h2,
.single-rf_glossary .wp-block-post-content > h2 {
  margin-top: 30px;
  margin-bottom: 14px;
  padding: 16px 18px;
  background: linear-gradient(145deg, var(--rf-surface-2), #102A3D);
  border: 1px solid var(--rf-border);
  border-left: 4px solid var(--rf-teal);
  border-radius: var(--rf-radius-md);
  font-size: clamp(1.3rem, 2.2vw, 1.75rem);
}

.single-rf_workflow .wp-block-post-content :where(ul, ol),
.single-rf_role_guide .wp-block-post-content :where(ul, ol) {
  padding: 18px 18px 18px 40px;
  background: rgba(14, 34, 51, 0.52);
  border: 1px solid var(--rf-border);
  border-radius: var(--rf-radius-md);
}

/* Alerts, notices, footer, and supporting areas */
.rf-empty-state {
  background: var(--rf-surface);
  border-color: rgba(148, 184, 198, 0.28);
  color: var(--rf-text);
}

.rf-alert {
  border: 1px solid var(--rf-border);
  color: var(--rf-text);
}

.rf-alert-icon {
  background: rgba(7, 20, 31, 0.45);
}

.rf-alert--danger {
  background: var(--rf-danger-bg);
  border-color: rgba(251, 113, 133, 0.38);
}

.rf-alert--warning,
.rf-compliance-panel {
  background: var(--rf-warning-bg);
  border-color: rgba(251, 191, 36, 0.38);
  color: #FDE68A;
}

.rf-alert--info {
  background: var(--rf-cyan-soft);
  border-color: rgba(103, 232, 249, 0.3);
}

.rf-trust-strip {
  background: var(--rf-bg-soft);
  border-color: var(--rf-border);
}

.rf-trust-item {
  border-color: var(--rf-border);
}

.rf-trust-item strong {
  color: var(--rf-heading);
}

.rf-mobile-cta {
  background: rgba(7, 20, 31, 0.96);
  border-top-color: var(--rf-border);
  box-shadow: 0 -12px 30px rgba(2, 8, 15, 0.3);
}

.rf-vault-cta {
  background:
    radial-gradient(circle at 80% 0%, rgba(45, 212, 191, 0.18), transparent 24rem),
    linear-gradient(145deg, #0B2635, #0E3B46);
  color: var(--rf-text);
}

.rf-footer {
  background: #06111B;
  color: var(--rf-muted-2);
}

.rf-footer h2,
.rf-footer h3,
.rf-footer strong {
  color: var(--rf-heading);
}

.rf-footer-nav a {
  color: var(--rf-muted-2);
}

@media (min-width: 768px) {
  .rf-header-vault {
    display: inline-flex;
  }
}

@media (min-width: 900px) {
  .rf-single-sidebar {
    position: sticky;
    top: calc(var(--rf-header-height) + 24px);
  }
}

@media (max-width: 1119px) {
  .rf-desktop-nav {
    display: none;
  }
}

@media (max-width: 899px) {
  .rf-single-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  .rf-single-layout > .wp-block-group:first-child {
    max-width: none;
  }

  .rf-single-sidebar {
    position: static;
    max-width: var(--rf-reading);
  }
}

@media (max-width: 767px) {
  .rf-section {
    padding-block: clamp(36px, 10vw, 44px);
  }

  .rf-content-shell {
    padding-block: 36px;
  }

  .rf-page-hero {
    padding-block: 40px;
  }

  .rf-header-vault {
    display: none !important;
  }

  .rf-chip-nav {
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .rf-module-hero-panel,
  .rf-tool-hero,
  .rf-resource-guidance {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 639px) {
  .rf-card-grid,
  .rf-query-grid,
  .rf-archive-shortcode-grid,
  .rf-query-grid .wp-block-post-template,
  .rf-track-grid,
  .rf-path-choice-grid,
  .rf-recommendation-grid,
  .rf-career-tool-grid,
  .rf-panel-grid,
  .rf-mini-card-grid,
  .rf-offer-grid,
  .rf-module-roadmap {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .rf-module-group {
    padding: 16px;
  }

  .rf-module-step-card {
    padding: 18px;
  }

  .rf-start-card {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .rf-start-card > :last-child {
    grid-column: 1 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* Final public-site contrast patch (1.2.4).
 * Color-only overrides keep inherited light-theme and WordPress preset colors
 * from becoming dark or low-contrast on deep-mode surfaces.
 */
body,
.wp-site-blocks,
.entry-content,
.wp-block-post-content,
.rf-card,
.rf-panel,
.rf-single-main,
.rf-single-sidebar,
.rf-learning-snapshot,
.rf-module-card,
.rf-resource-card,
.rf-workflow-card,
.rf-scenario-card,
.rf-dashboard-card {
  color: var(--rf-text);
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-site-blocks h1,
.wp-site-blocks h2,
.wp-site-blocks h3,
.wp-site-blocks h4,
.wp-site-blocks h5,
.wp-site-blocks h6,
.wp-block-heading,
.wp-block-post-title,
.wp-block-query-title,
.wp-block-group h1,
.wp-block-group h2,
.wp-block-group h3,
.wp-block-group h4,
.wp-block-group h5,
.wp-block-group h6,
:where(
  .rf-card,
  .rf-module-card,
  .rf-resource-card,
  .rf-dashboard-card,
  .rf-track-card,
  .rf-path-card,
  .rf-panel,
  .rf-lifecycle-panel
) :where(h1, h2, h3, h4, h5, h6) {
  color: var(--rf-heading);
}

.rf-card-title,
.rf-module-title,
.rf-resource-title,
.rf-workflow-title,
.rf-scenario-title,
.rf-track-title,
.rf-path-title,
.rf-dashboard-title,
.entry-title,
.wp-block-post-title,
.wp-block-post-title a,
.rf-module-step-card h4,
.rf-module-step-card h4 a,
.rf-mini-learning-card :where(h2, h3, h4),
.rf-mini-learning-card :where(h2, h3, h4) a,
.rf-mini-learning-card h2 a,
.rf-mini-learning-card h3 a,
.rf-mini-learning-card h4 a,
.rf-resource-card :where(h2, h3, h4, a),
.rf-workflow-card :where(h2, h3, h4),
.rf-role-card :where(h2, h3, h4),
.rf-glossary-card :where(h2, h3, h4),
.rf-archive-card :where(h2, h3, h4),
.rf-query-grid .wp-block-post-title a {
  color: var(--rf-text-strong);
}

.rf-card p,
.rf-panel p,
.rf-card-description,
.rf-description,
.rf-summary,
.rf-helper,
.rf-intro,
.rf-subtitle,
.rf-excerpt,
.rf-small,
.wp-block-post-excerpt,
.wp-block-post-excerpt__excerpt,
.rf-module-step-card p,
.rf-mini-learning-card p,
.rf-resource-card p,
.rf-workflow-card p,
.rf-archive-card p {
  color: var(--rf-muted-2);
}

.wp-site-blocks :where(a:not(.rf-button):not(.wp-block-button__link)) {
  color: var(--rf-link);
}

.wp-site-blocks :where(a:not(.rf-button):not(.wp-block-button__link):hover),
.wp-site-blocks :where(a:not(.rf-button):not(.wp-block-button__link):focus-visible) {
  color: var(--rf-link-hover);
}

:where(
  .rf-cta,
  .rf-final-cta,
  .rf-final-learning-cta,
  .rf-resource-vault-cta,
  .rf-vault-cta
) {
  color: var(--rf-text);
}

:where(
  .rf-cta,
  .rf-final-cta,
  .rf-final-learning-cta,
  .rf-resource-vault-cta,
  .rf-vault-cta
) :where(h2, h3) {
  color: var(--rf-heading);
}

:where(
  .rf-cta,
  .rf-final-cta,
  .rf-final-learning-cta,
  .rf-resource-vault-cta,
  .rf-vault-cta
) p {
  color: var(--rf-text);
}

.rf-path-selector,
.rf-path-selector button,
.rf-path-option,
.rf-path-option span,
.rf-path-option strong,
.rf-path-option p,
.rf-selector-option,
.rf-selector-option span,
.rf-selector-option strong,
.rf-path-choice,
.rf-path-choice strong,
.rf-path-choice p {
  color: var(--rf-text);
}

.rf-path-choice span {
  color: var(--rf-link-hover);
}

:where(
  .rf-path-option,
  .rf-selector-option,
  .rf-path-choice
):where(:hover, :focus-visible, .is-active, [aria-pressed="true"]) {
  border-color: var(--rf-teal);
  color: var(--rf-text-strong);
}

.rf-lifecycle {
  color: var(--rf-text);
}

.rf-lifecycle :where(p, li, dd),
.rf-lifecycle-node,
.rf-lifecycle-step,
.rf-lifecycle-button,
.rf-lifecycle-panel {
  color: var(--rf-text);
}

.rf-lifecycle :where(h2, h3, h4),
.rf-lifecycle-title,
.rf-lifecycle-node strong,
.rf-lifecycle-panel .rf-panel-grid strong,
.rf-lifecycle-panel :where(h2, h3, h4),
.rf-lifecycle-panel-title {
  color: var(--rf-heading);
}

.rf-lifecycle :where(
  .rf-lifecycle-node,
  .rf-lifecycle-step,
  .rf-lifecycle-button
):where(.is-active, [aria-expanded="true"]) {
  color: var(--rf-text-strong);
}

.rf-module-sequence,
.rf-module-roadmap,
.rf-module-group {
  color: var(--rf-text);
}

:where(.rf-module-sequence, .rf-module-roadmap, .rf-module-group)
  :where(h2, h3, h4, .rf-card-title, .rf-module-title, .wp-block-post-title, .wp-block-post-title a) {
  color: var(--rf-text-strong);
}

:where(.rf-module-sequence, .rf-module-roadmap, .rf-module-group)
  :where(p, .rf-card-description, .rf-excerpt) {
  color: var(--rf-muted-2);
}

.rf-meta,
.rf-card-meta,
.rf-card-meta span,
.rf-learning-details,
.rf-learning-snapshot,
.rf-learning-snapshot :where(p, li, span, dd),
.rf-meta-card :where(p, dd),
.rf-inline-details dd,
.rf-post-meta {
  color: var(--rf-muted-2);
}

.rf-meta-label,
.rf-learning-snapshot :where(strong, dt),
.rf-sidebar-label,
.rf-meta-card dt,
.rf-inline-details dt {
  color: var(--rf-heading);
}

.wp-block-paragraph,
.wp-block-group p,
.wp-block-post-content p,
.wp-block-list,
.wp-block-list li {
  color: var(--rf-text);
}

.wp-site-blocks :where(
  .has-text-color,
  .has-primary-color,
  .has-secondary-color,
  .has-foreground-color,
  .has-navy-color,
  .has-navy-2-color
):not(.rf-button):not(.wp-block-button__link) {
  color: var(--rf-text) !important;
}

.rf-eyebrow,
.rf-section-label,
.rf-badge,
.rf-chip,
.rf-pill {
  color: var(--rf-link-hover);
}

/* Deliberately dark text remains accessible on solid mint controls. */
.rf-button--primary,
.rf-button--primary:hover,
.rf-tab-list button[aria-selected="true"] {
  color: #04151D;
}
