:root {
  --yakap-navy: #092d50;
  --yakap-ink: #172f45;
  --yakap-blue: #589fda;
  --yakap-sky: #589fda;
  --yakap-gold: #ffb706;
  --yakap-gold-light: #ffe18a;
  --yakap-cream: #fff4d4;
  --yakap-cream-light: #fff9e9;
  --yakap-soft: #fff4d7;
  --yakap-line: #ead9ab;
  --yakap-muted: #5d77a3;
  --yakap-success: #0a9d66;
  --yakap-danger: #ef3f67;
  --yakap-surface: #fff;
  --yakap-shadow: 0 14px 36px rgba(94, 69, 10, 0.09);
}

body.patient-portal.yakap-member-portal {
  --hero-gold-start: #fff4d3;
  --hero-gold-mid: #ffd76b;
  --hero-gold-end: #ffb706;
  --healthlink-blue: var(--yakap-blue);
  --healthlink-blue-dark: var(--yakap-navy);
  --healthlink-navy: var(--yakap-navy);
  --healthlink-cyan: var(--yakap-sky);
  --healthlink-purple: var(--yakap-gold);
  --healthlink-ink: var(--yakap-ink);
  --healthlink-muted: var(--yakap-muted);
  --healthlink-canvas: var(--yakap-cream-light);
  --healthlink-surface: var(--yakap-surface);
  --healthlink-soft: var(--yakap-soft);
  --healthlink-line: var(--yakap-line);
  --healthlink-line-strong: #c6d5e7;
  --blue: var(--yakap-blue);
  --cyan: var(--yakap-sky);
  --purple: var(--yakap-gold);
  --green: var(--yakap-success);
  --amber: #9b6800;
  --red: var(--yakap-danger);
  --navy: var(--yakap-navy);
  --text: var(--yakap-ink);
  --muted: var(--yakap-muted);
  --line: var(--yakap-line);
  --surface: var(--yakap-surface);
  --canvas: var(--yakap-cream-light);
  color: var(--yakap-ink);
  background: #f3f7fc;
  background-image:
    radial-gradient(circle at 5% 0%, rgba(255, 183, 6, .10), transparent 30%),
    radial-gradient(circle at 95% 5%, rgba(88, 159, 218, .12), transparent 32%);
}

.yakap-member-portal .portal-sidebar,
.yakap-member-portal .mobile-header {
  background: linear-gradient(180deg, #fff, var(--yakap-cream-light));
}

.yakap-member-portal .sidebar-panel {
  border-color: #e7cf8d;
  background: linear-gradient(180deg, #fff 0%, #fff7e0 100%);
  box-shadow: 0 18px 44px rgba(94, 69, 10, .09);
}

.yakap-member-portal .portal-nav-group { border-bottom-color: #f0ead8; }
.yakap-member-portal .portal-nav-label,
.yakap-member-portal .portal-nav-label i { color: #936200; }
.yakap-member-portal .portal-nav-link:hover,
.yakap-member-portal .logout-link:hover {
  color: var(--yakap-navy);
  background: #fff7dd;
}

.yakap-member-portal .support-card {
  border-color: #eadba9;
  background: linear-gradient(145deg, #fff, #fff8df);
}
.yakap-member-portal .support-icon {
  color: var(--yakap-navy);
  background: #ffe699;
}
.yakap-member-portal .support-card p { color: var(--yakap-muted); }

.yakap-member-portal .portal-brand {
  position: relative;
  display: grid;
  gap: 4px;
}

.yakap-member-portal .portal-brand img {
  width: 100%;
  max-height: 78px;
  object-fit: contain;
}

.yakap-member-portal .mobile-header img {
  width: min(185px, 54vw);
  height: auto;
  max-height: 46px;
  object-fit: contain;
}

.yakap-member-portal .portal-program-badge {
  width: fit-content;
  margin-inline: auto;
  padding: 3px 8px;
  border-radius: 999px;
  color: #805600;
  background: #fff0b9;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.yakap-member-portal .yakap-dashboard-banner {
  border-color: #ecd58a;
  background: linear-gradient(125deg, var(--yakap-cream), #fff 58%, #fff0b9);
  color: var(--yakap-navy);
  box-shadow: 0 18px 42px rgba(157, 108, 0, .12);
}

.yakap-member-portal .yakap-dashboard-banner .banner-copy > span {
  color: #8d5e00;
}

.yakap-member-portal .yakap-dashboard-banner .banner-copy h2 { color: var(--yakap-navy); }
.yakap-member-portal .yakap-dashboard-banner .banner-copy p { color: var(--yakap-muted); }
.yakap-member-portal .yakap-dashboard-banner .ghost-button {
  border-color: #d4b552;
  color: var(--yakap-navy);
  background: rgba(255,255,255,.72);
}
.yakap-member-portal .yakap-dashboard-banner .pulse-orbit {
  border-color: rgba(11,103,218,.22);
  color: var(--yakap-blue);
  background: rgba(255,255,255,.76);
  box-shadow: 0 0 0 24px rgba(255,184,0,.09), 0 0 0 50px rgba(255,184,0,.05);
}
.yakap-member-portal .yakap-dashboard-banner .art-pill {
  border-color: #ead17b;
  color: var(--yakap-navy);
  background: rgba(255,255,255,.88);
}

.yakap-member-portal .portal-nav-link.active {
  color: var(--yakap-navy);
  background: linear-gradient(90deg, #ffd966, #ffbd12);
  box-shadow: inset 4px 0 #c48a00, 0 7px 15px rgba(160, 111, 0, .15);
}

.yakap-member-portal .portal-nav-link.active b {
  color: #7b5200;
  background: #fff;
}

.yakap-member-portal .page-header,
.yakap-member-portal .native-page-header { color: var(--yakap-ink); }
.yakap-member-portal .native-page-header {
  padding-bottom: 15px;
  border-bottom: 2px solid #efd58d;
}
.yakap-member-portal .title-row > span {
  color: #805600;
  background: #fff0b9;
}
.yakap-member-portal .icon-button {
  border-color: #e6dcc0;
  color: var(--yakap-navy);
  box-shadow: 0 7px 18px rgba(94,69,10,.07);
}

.yakap-member-portal .stat-card,
.yakap-member-portal .portal-card,
.yakap-member-portal .native-card,
.yakap-member-portal .native-catalog-card {
  border-color: #ead8a8;
  box-shadow: 0 12px 32px rgba(94,69,10,.07);
}
.yakap-member-portal .stat-card,
.yakap-member-portal .portal-card,
.yakap-member-portal .native-card {
  border-top-color: #ebc457;
}
.yakap-member-portal .stat-icon.blue,
.yakap-member-portal .quick-grid span.blue,
.yakap-member-portal .stat-icon.purple,
.yakap-member-portal .quick-grid span.purple {
  color: #966500;
  background: #fff3c8;
}
.yakap-member-portal .stat-icon.teal,
.yakap-member-portal .quick-grid span.teal {
  color: var(--yakap-blue);
  background: #edf6ff;
}
.yakap-member-portal .quick-grid a:hover,
.yakap-member-portal .quick-grid button:hover { border-color: #e4bd3c; }
.yakap-member-portal .native-card-head,
.yakap-member-portal .thread-list-head,
.yakap-member-portal .native-table th { border-color: #eee8d7; }
.yakap-member-portal .native-table th { background: #fffdf7; }

.yakap-member-portal .portal-nav-link.active i,
.yakap-member-portal .eyebrow {
  color: #805600;
}

.yakap-member-portal .account-mode-switch button.active {
  color: var(--yakap-navy);
  background: linear-gradient(180deg, #ffe18a, #ffbd12);
  box-shadow: 0 7px 15px rgba(160, 111, 0, .18);
}

.yakap-member-portal .primary-button,
.yakap-member-portal button.primary-button,
.yakap-login .action-button-primary,
.yakap-login .modal-signin-button {
  color: var(--yakap-navy) !important;
  border-color: var(--yakap-gold) !important;
  background: linear-gradient(180deg, var(--yakap-gold-light), var(--yakap-gold)) !important;
  box-shadow: 0 9px 20px rgba(216, 151, 0, 0.2);
}

.yakap-member-portal .primary-button:hover,
.yakap-member-portal .primary-button:focus-visible,
.yakap-login .action-button-primary:hover,
.yakap-login .action-button-primary:focus-visible,
.yakap-login .modal-signin-button:hover,
.yakap-login .modal-signin-button:focus-visible {
  filter: saturate(1.06);
  box-shadow: 0 12px 24px rgba(216, 151, 0, 0.28);
}

.yakap-member-portal :focus-visible,
.yakap-login :focus-visible {
  outline: 3px solid rgba(11, 103, 218, 0.28);
  outline-offset: 2px;
}

.yakap-page {
  color: var(--yakap-ink);
}

.yakap-page-header {
  padding: 22px;
  border: 1px solid #efd98a;
  border-radius: 18px;
  background: linear-gradient(125deg, var(--yakap-cream), #fff 55%, #fff0b9);
  box-shadow: var(--yakap-shadow);
}

.yakap-page-header .title-row span,
.yakap-section-heading > span {
  color: #805600;
  background: #fff0b9;
}

.yakap-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.yakap-flash {
  margin: 12px 0;
  padding: 12px 15px;
  border: 1px solid #9edfc8;
  border-radius: 12px;
  color: #056b45;
  background: #ecfaf4;
  font-weight: 700;
}

.yakap-flash.error {
  border-color: #f4b1c1;
  color: #a72147;
  background: #fff0f4;
}

.yakap-family-bar {
  display: flex;
  margin: 12px 0;
  padding: 10px 14px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid var(--yakap-line);
  border-radius: 14px;
  background: #fff;
}

.yakap-active-member,
.yakap-active-member > span,
.yakap-family-empty {
  display: flex;
  align-items: center;
  gap: 10px;
}

.yakap-active-member > span {
  width: 42px;
  height: 42px;
  justify-content: center;
  border-radius: 50%;
  color: var(--yakap-navy);
  background: #fff0ba;
}

.yakap-active-member small,
.yakap-active-member strong,
.yakap-active-member em {
  display: block;
}

.yakap-active-member small,
.yakap-active-member em,
.yakap-family-empty {
  color: var(--yakap-muted);
  font-size: 12px;
  font-style: normal;
}

.yakap-family-switcher label {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--yakap-muted);
  font-size: 12px;
  font-weight: 700;
}

.yakap-family-switcher select,
.yakap-facility-filters select,
.yakap-risk-form select,
.yakap-risk-form textarea {
  border: 1px solid var(--yakap-line);
  border-radius: 10px;
  color: var(--yakap-ink);
  background: #fff;
}
.yakap-return-primary { margin-left:auto; }
.yakap-integrity-warning { margin:9px 0 0; color:#9d2448; font-size:10px; font-weight:800; }

.yakap-family-switcher select,
.yakap-facility-filters select,
.yakap-risk-form select {
  min-height: 42px;
  padding: 0 12px;
}

.yakap-enrollment-card {
  display: grid;
  grid-template-columns: minmax(260px, 0.85fr) minmax(520px, 1.4fr);
  gap: 24px;
  padding: 20px;
  border-color: #eedb99;
  background: linear-gradient(110deg, #fffdf6, #fff);
}

.yakap-enrollment-copy p,
.yakap-section-heading p,
.yakap-feature-columns header p,
.yakap-facility-panel > header p {
  margin: 0 0 4px;
  color: #906000;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.yakap-enrollment-copy h2,
.yakap-section-heading h2,
.yakap-feature-columns h2,
.yakap-facility-panel h2 {
  margin: 0;
  color: var(--yakap-navy);
}

.yakap-enrollment-copy > span {
  display: block;
  margin-top: 8px;
  color: var(--yakap-muted);
  line-height: 1.55;
}

.yakap-enrollment-states {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}

.yakap-enrollment-states article {
  display: flex;
  min-width: 0;
  padding: 12px;
  align-items: flex-start;
  gap: 8px;
  border: 1px solid var(--yakap-line);
  border-radius: 12px;
  background: var(--yakap-soft);
}

.yakap-enrollment-states article > i { color: #b07a00; }
.yakap-enrollment-states article.done > i { color: var(--yakap-success); }
.yakap-enrollment-states small,
.yakap-enrollment-states strong { display: block; }
.yakap-enrollment-states small { color: var(--yakap-muted); font-size: 10px; }
.yakap-enrollment-states strong { margin-top: 3px; font-size: 12px; }

.yakap-section-heading {
  display: flex;
  margin: 24px 0 11px;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.yakap-section-heading > span {
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
}

.yakap-benefit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 11px;
}

.yakap-benefit-card {
  display: flex;
  min-height: 285px;
  padding: 16px;
  flex-direction: column;
  border: 1px solid var(--yakap-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(13, 50, 111, 0.05);
}

.yakap-benefit-card.monetary_limit {
  border-color: #efd27a;
  background: linear-gradient(150deg, var(--yakap-cream), #fff 62%);
}

.yakap-benefit-card > header,
.yakap-feature-columns header,
.yakap-facility-panel > header,
.yakap-benefit-card > footer,
.yakap-facility-grid article > header,
.yakap-facility-grid article > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.yakap-benefit-card > header > span,
.yakap-facility-grid article > header > span {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  color: var(--yakap-blue);
  background: #edf6ff;
}

.yakap-benefit-card.monetary_limit > header > span {
  color: #916100;
  background: #ffefaf;
}

.yakap-status {
  display: inline-flex;
  width: fit-content;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
}

.yakap-status.success { color: #05744b; background: #e6f8f0; }
.yakap-status.danger { color: #b3254d; background: #ffeaf0; }
.yakap-status.info { color: #075ebf; background: #eaf4ff; }
.yakap-status.warning { color: #8d6000; background: #fff0ba; }

.yakap-benefit-card > p {
  margin: 14px 0 3px;
  color: var(--yakap-muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.yakap-benefit-card h3 {
  margin: 0;
  color: var(--yakap-navy);
  font-size: 17px;
  line-height: 1.3;
}

.yakap-money-row { margin-top: 15px; }
.yakap-money-row strong { display: block; color: #8d5d00; font-size: 25px; }
.yakap-money-row span,
.yakap-unverified-amount span,
.yakap-service-state span { display: block; margin-top: 3px; color: var(--yakap-muted); font-size: 11px; line-height: 1.45; }
.yakap-progress { height: 9px; margin: 12px 0; overflow: hidden; border-radius: 999px; background: #f0ead7; }
.yakap-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #d99c00, var(--yakap-gold)); }
.yakap-benefit-card dl { display: grid; grid-template-columns: 1fr 1fr; margin: 0; gap: 8px; }
.yakap-benefit-card dl div { padding: 8px; border-radius: 9px; background: rgba(255,255,255,.72); }
.yakap-benefit-card dt { color: var(--yakap-muted); font-size: 10px; }
.yakap-benefit-card dd { margin: 2px 0 0; font-weight: 800; }
.yakap-unverified-amount,
.yakap-service-state { margin-top: 14px; padding: 12px; border-radius: 11px; background: var(--yakap-soft); }
.yakap-unverified-amount { background: #fff4ce; }
.yakap-unverified-amount strong,
.yakap-service-state strong { display: block; font-size: 12px; }
.yakap-benefit-card > footer { margin-top: auto; padding-top: 13px; border-top: 1px solid var(--yakap-line); }
.yakap-benefit-card > footer a,
.yakap-benefit-card > footer button { border: 0; color: var(--yakap-blue); background: transparent; font-size: 11px; font-weight: 800; text-decoration: none; }

.yakap-feature-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 12px;
}

.yakap-feature-columns > section,
.yakap-facility-panel { padding: 18px; }
.yakap-feature-columns header,
.yakap-facility-panel > header { margin-bottom: 14px; }

.yakap-rx-list,
.yakap-referral-list { display: grid; gap: 8px; }
.yakap-rx-list article,
.yakap-referral-list article { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 10px; border: 1px solid var(--yakap-line); border-radius: 11px; }
.yakap-rx-list article > span,
.yakap-referral-list article > span { display:grid; width:38px; height:38px; place-items:center; border-radius:50%; color:var(--yakap-blue); background:#edf6ff; }
.yakap-rx-list small,.yakap-rx-list strong,.yakap-rx-list em,.yakap-referral-list small,.yakap-referral-list strong { display:block; }
.yakap-rx-list small,.yakap-rx-list em,.yakap-referral-list small,.yakap-referral-list p { color:var(--yakap-muted); font-size:10px; font-style:normal; }
.yakap-rx-list strong { font-size:12px; }
.yakap-rx-list article > b { color:#875c00; font-size:10px; }

.yakap-risk-form { display:grid; gap:10px; }
.yakap-risk-form > label > span { display:block; margin-bottom:4px; color:var(--yakap-muted); font-size:11px; font-weight:700; }
.yakap-risk-form select,.yakap-risk-form textarea { width:100%; padding:10px; }
.yakap-risk-options { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.yakap-risk-options label { padding:8px; border:1px solid var(--yakap-line); border-radius:9px; font-size:11px; }
.yakap-risk-form .primary-button { width:fit-content; }

.yakap-panel-note { margin:12px 0 0; padding:10px; border-radius:10px; color:#6e5b25; background:var(--yakap-cream); font-size:11px; line-height:1.5; }
.yakap-empty { display:grid; min-height:130px; place-items:center; align-content:center; gap:5px; color:var(--yakap-muted); text-align:center; }
.yakap-empty i { color:var(--yakap-gold); font-size:25px; }
.yakap-empty strong { color:var(--yakap-navy); }
.yakap-empty span { max-width:420px; font-size:11px; line-height:1.5; }

.yakap-path-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.yakap-path-grid article { display:flex; gap:9px; padding:11px; border:1px solid var(--yakap-line); border-radius:11px; }
.yakap-path-grid article > span { color:var(--yakap-danger); }
.yakap-path-grid strong,.yakap-path-grid small { display:block; }
.yakap-path-grid small { margin-top:2px; color:#916100; font-size:10px; font-weight:800; }
.yakap-path-grid p { margin:6px 0 0; color:var(--yakap-muted); font-size:10px; line-height:1.45; }

.yakap-facility-panel { margin-top:12px; }
.yakap-facility-filters { display:grid; grid-template-columns:minmax(240px,1fr) 190px auto auto; gap:8px; margin-bottom:12px; }
.yakap-facility-filters > label:first-child { display:flex; min-height:42px; align-items:center; gap:8px; padding:0 12px; border:1px solid var(--yakap-line); border-radius:10px; }
.yakap-facility-filters input[type=search] { width:100%; border:0; outline:0; }
.yakap-filter-check { display:flex; align-items:center; gap:6px; padding:0 10px; border:1px solid var(--yakap-line); border-radius:10px; font-size:11px; font-weight:700; }
.yakap-facility-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; max-height:590px; overflow:auto; }
.yakap-facility-grid > article { display:flex; min-height:210px; padding:13px; flex-direction:column; border:1px solid var(--yakap-line); border-radius:13px; background:#fff; }
.yakap-facility-grid h3 { margin:11px 0 4px; color:var(--yakap-navy); font-size:15px; }
.yakap-facility-grid p { margin:0; color:var(--yakap-muted); font-size:11px; }
.yakap-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:10px; }
.yakap-tags span { padding:4px 7px; border-radius:999px; color:#315b91; background:#edf5fd; font-size:9px; font-weight:700; }
.yakap-facility-grid article > footer { margin-top:auto; padding-top:10px; border-top:1px solid var(--yakap-line); }
.yakap-facility-grid footer small { color:var(--yakap-muted); font-size:9px; }
.yakap-facility-grid footer button { border:0; color:var(--yakap-danger); background:transparent; }

.yakap-education-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.yakap-education-grid > article { display:flex; gap:11px; padding:15px; }
.yakap-education-grid > article > span { color:#966500; font-size:22px; }
.yakap-education-grid h3 { margin:0; color:var(--yakap-navy); }
.yakap-education-grid p { color:var(--yakap-muted); font-size:11px; line-height:1.55; }
.yakap-education-grid summary,.yakap-education-grid a { color:var(--yakap-blue); cursor:pointer; font-size:11px; font-weight:800; }
.yakap-disclaimer { margin-top:14px; padding:13px; border:1px solid #eadba9; border-radius:11px; color:#665b3a; background:var(--yakap-cream); font-size:10px; line-height:1.5; text-align:center; }

body.login-page.yakap-login {
  --login-blue: var(--yakap-blue);
  --login-blue-dark: var(--yakap-navy);
  --login-navy: var(--yakap-navy);
  --login-cyan: var(--yakap-sky);
  --login-purple: var(--yakap-gold);
  --login-canvas: var(--yakap-cream-light);
  --login-ink: var(--yakap-ink);
  --login-muted: var(--yakap-muted);
  --login-line: var(--yakap-line);
  background:
    radial-gradient(circle at 18% 10%, rgba(255, 217, 102, .24), transparent 32%),
    linear-gradient(180deg, #fff, var(--yakap-cream-light)) !important;
}

.yakap-login .login-shell {
  position: relative;
}
.yakap-login .login-shell::before {
  position: absolute;
  z-index: -1;
  inset: 56px -26px auto;
  height: 360px;
  border: 1px solid rgba(234, 211, 133, .55);
  border-radius: 32px;
  background: rgba(255,255,255,.58);
  box-shadow: 0 24px 70px rgba(94,69,10,.07);
  content: "";
}

.yakap-login .brand-hero {
  min-height: 160px;
  margin: 20px 0 18px;
}

.yakap-login .brand-hero-wordmark { width:min(100%,390px); height:auto; max-height:none; }
.yakap-login .security-note i,.yakap-login .modal-security-note i { color:#a16b00; }
.yakap-login .login-modal .modal-content { border-color:#efd98a; }
.yakap-login .modal-kicker { color:#986600; }

body.registration-page.yakap-registration {
  --registration-blue: var(--yakap-blue);
  --registration-blue-dark: var(--yakap-navy);
  --registration-navy: var(--yakap-navy);
  --registration-cyan: var(--yakap-sky);
  --registration-purple: #a46e00;
  --registration-ink: var(--yakap-ink);
  --registration-muted: var(--yakap-muted);
  --registration-canvas: var(--yakap-cream-light);
  --registration-line: #e5dfcf;
  --registration-line-strong: #e1c663;
  background:
    radial-gradient(circle at 10% 4%, rgba(255,217,102,.24), transparent 30rem),
    radial-gradient(circle at 94% 6%, rgba(77,156,220,.10), transparent 30rem),
    linear-gradient(180deg, #fff, var(--yakap-cream-light)) !important;
}
.yakap-registration .registration-brand-group { display:flex; align-items:center; gap:12px; }
.yakap-registration .registration-brand { width:min(310px,52vw); }
.yakap-registration .registration-brand img { height:auto; max-height:76px; }
.yakap-registration .registration-program-badge {
  padding:5px 9px;
  border-radius:999px;
  color:#805600;
  background:#fff0b9;
  font-size:9px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.yakap-registration .registration-signin strong { color:var(--yakap-blue); }
.yakap-registration .registration-card {
  border-color:#e8d99f;
  box-shadow:0 24px 70px rgba(94,69,10,.11);
}
.yakap-registration .registration-step-icon,
.yakap-registration .registration-progress li.active > span,
.yakap-registration .registration-progress li.complete > span,
.yakap-registration .registration-primary-button {
  color:var(--yakap-navy);
  background:linear-gradient(180deg,var(--yakap-gold-light),var(--yakap-gold));
  box-shadow:0 10px 24px rgba(216,151,0,.20);
}
.yakap-registration .registration-progress li.complete:not(:last-child)::after {
  background:linear-gradient(90deg,#e0a000,var(--yakap-gold-light));
}
.yakap-registration .registration-field input:focus,
.yakap-registration .registration-field select:focus { border-color:#d7a800; box-shadow:0 0 0 3px rgba(255,184,0,.14); }

/* Patient-only visual layout inspired by the supplied portal reference. */
body.patient-portal.yakap-member-portal .portal-shell {
  grid-template-columns: 286px minmax(0, 1fr);
}
.yakap-member-portal .portal-sidebar { padding: 18px 0 18px 14px; }
.yakap-member-portal .sidebar-panel {
  padding: 22px 17px 18px;
  border: 1px solid #d7e5f2;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 20px 50px rgba(30, 67, 107, .09);
}
.yakap-member-portal .portal-brand {
  margin-bottom: 16px;
  padding: 12px 8px 8px;
  text-align: center;
}
.yakap-member-portal .portal-brand img { max-height: 84px; }
.yakap-member-portal .portal-program-badge {
  margin-top: 5px;
  color: #805600;
  background: #fff2c6;
}
.yakap-member-portal .portal-nav { gap: 3px; }
.yakap-member-portal .portal-nav-group { gap: 4px; padding-block: 9px 12px; }
.yakap-member-portal .portal-nav-label { padding: 4px 13px 8px; color: #6b83a0; }
.yakap-member-portal .portal-nav-label i { color: var(--yakap-blue); }
.yakap-member-portal .portal-nav-link,
.yakap-member-portal .logout-link {
  min-height: 51px;
  gap: 11px;
  border-radius: 14px;
  color: var(--yakap-navy);
  font-weight: 750;
}
.yakap-member-portal .portal-nav-link i { color: var(--yakap-blue); }
.yakap-member-portal .portal-nav-link:hover { background: #edf5fc; transform: none; }
.yakap-member-portal .portal-nav-link.active {
  color: #092d50;
  background: linear-gradient(105deg, #ffd05a, #ffb706);
  box-shadow: 0 10px 22px rgba(255, 183, 6, .22);
}
.yakap-member-portal .portal-nav-link.active i { color: #092d50; }
.yakap-member-portal .portal-nav-link.active b { color: #092d50; }
.yakap-member-portal .support-card {
  border: 1px solid #d7e5f2;
  border-radius: 18px;
  background: linear-gradient(145deg, #fff, #f3f8fd);
}
.yakap-member-portal .support-card button {
  color: #092d50;
  background: #ffedb1;
}
.yakap-member-portal .portal-main {
  max-width: 1600px;
  padding: 29px clamp(20px, 2.6vw, 42px) 48px;
}
.yakap-member-portal .page-header { margin-bottom: 22px; }
.yakap-member-portal .eyebrow { color: #3d77a8; }
.yakap-member-portal .title-row h1 {
  color: #092d50;
  font-size: clamp(34px, 3.1vw, 48px);
  letter-spacing: -.04em;
}
.yakap-member-portal .title-row > span {
  color: #745000;
  background: #fff0c0;
}
.yakap-member-portal .subtitle { color: #607992; }
.yakap-member-portal .icon-button,
.yakap-member-portal .outline-button,
.yakap-member-portal .stat-card > button,
.yakap-member-portal .stat-card > a {
  border: 1px solid #d7e5f2;
  color: #225b8b;
  background: #fff;
}
.yakap-member-portal .care-banner {
  min-height: 200px;
  margin-bottom: 20px;
  border-radius: 23px;
}
.yakap-member-portal .care-banner .banner-copy { padding: 28px 30px; }
.yakap-member-portal .care-banner .banner-copy > span { letter-spacing: .09em; }
.yakap-member-portal .care-banner .banner-copy h2 { font-size: clamp(26px, 2.4vw, 36px); }
.yakap-member-portal .care-banner .banner-copy p { color: #465c70; }
.yakap-member-portal .care-banner .primary-button {
  color: #092d50 !important;
  border-color: #dc9d00 !important;
  background: #ffb706 !important;
}
.yakap-member-portal .care-banner .ghost-button {
  color: #092d50 !important;
  border-color: #d0ae52 !important;
  background: rgba(255, 255, 255, .86) !important;
}
.yakap-member-portal .stat-grid { gap: 15px; margin-bottom: 19px; }
.yakap-member-portal .stat-card,
.yakap-member-portal .portal-card,
.yakap-member-portal .native-card,
.yakap-member-portal .yakap-benefit-card,
.yakap-member-portal .yakap-facility-grid > article {
  border: 1px solid #dbe7f3;
  border-radius: 21px;
  background: #fff;
  box-shadow: 0 15px 36px rgba(37, 75, 115, .08);
}
.yakap-member-portal .stat-card {
  min-height: 132px;
  padding: 20px;
  gap: 12px;
}
.yakap-member-portal .stat-icon { border-radius: 16px; }
.yakap-member-portal .stat-icon.blue,
.yakap-member-portal .quick-grid span.blue { color: #286ca4; background: #e8f3fd; }
.yakap-member-portal .stat-icon.teal,
.yakap-member-portal .quick-grid span.teal { color: #176798; background: #e6f5fa; }
.yakap-member-portal .stat-icon.purple,
.yakap-member-portal .quick-grid span.purple,
.yakap-member-portal .quick-grid span.gold { color: #8b5b00; background: #fff2c8; }
.yakap-member-portal .stat-card strong { color: #092d50; }
.yakap-member-portal .stat-card em { color: #4c789b; }
.yakap-member-portal .dashboard-grid { gap: 19px; }
.yakap-member-portal .portal-card { padding: 24px; }
.yakap-member-portal .card-head { margin-bottom: 18px; }
.yakap-member-portal .card-head h2 { color: #092d50; font-size: 21px; }
.yakap-member-portal .card-head p { color: #607992; }
.yakap-member-portal .quick-grid { gap: 11px; }
.yakap-member-portal .quick-grid button,
.yakap-member-portal .quick-grid a {
  min-height: 112px;
  border: 1px solid #dce8f5;
  border-radius: 16px;
  color: #092d50;
  background: #f2f7ff;
}
.yakap-member-portal .quick-grid button:nth-child(2),
.yakap-member-portal .quick-grid a:nth-child(2) { background: #edf9fb; }
.yakap-member-portal .quick-grid button:nth-child(3),
.yakap-member-portal .quick-grid a:nth-child(3) { background: #fff7dd; }
.yakap-member-portal .quick-grid button:nth-child(4),
.yakap-member-portal .quick-grid a:nth-child(4) { background: #edf5fc; }
.yakap-member-portal .health-tip {
  border-radius: 21px;
  background: linear-gradient(115deg, #2679b9, #589fda 68%, #ffca44);
  box-shadow: 0 15px 34px rgba(45, 117, 178, .15);
}
.yakap-member-portal .health-tip span,
.yakap-member-portal .health-tip h2,
.yakap-member-portal .health-tip p { color: #fff; }
.yakap-member-portal .service-link-grid > button,
.yakap-member-portal .service-link-grid > a {
  border-color: #dce8f5;
  border-radius: 15px;
  background: #fbfdff;
}
.yakap-member-portal .service-link-grid > button > span,
.yakap-member-portal .service-link-grid > a > span { color: #286ca4; background: #e8f3fd; }
.yakap-member-portal .native-page-header { border-bottom-color: #dce8f5; }
.yakap-member-portal .yakap-benefit-card.monetary_limit { background: linear-gradient(150deg, #fff5d5, #fff 65%); }
.yakap-member-portal .yakap-benefit-card > footer { border-top-color: #dce8f5; }

@media (max-width: 1180px) {
  body.patient-portal.yakap-member-portal .portal-shell { grid-template-columns: 250px minmax(0, 1fr); }
  .yakap-member-portal .portal-sidebar { padding-left: 12px; }
  .yakap-member-portal .portal-brand img { max-height: 72px; }
}
@media (max-width: 920px) {
  body.patient-portal.yakap-member-portal .portal-shell { display: block; }
  .yakap-member-portal .portal-sidebar { padding: 10px; }
  .yakap-member-portal .mobile-header { background: rgba(255, 255, 255, .96); }
}
@media (max-width: 720px) {
  .yakap-member-portal .portal-main { padding: 20px 14px 38px; }
  .yakap-member-portal .care-banner .banner-copy { padding: 24px 20px; }
  .yakap-member-portal .stat-card { min-height: 110px; }
  .yakap-member-portal .portal-card { padding: 19px; }
}

@media (max-width: 1180px) {
  .yakap-benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .yakap-enrollment-card { grid-template-columns:1fr; }
  .yakap-facility-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .yakap-page-header,.yakap-family-bar,.yakap-section-heading { align-items:flex-start; flex-direction:column; }
  .yakap-header-actions { width:100%; flex-wrap:wrap; }
  .yakap-benefit-grid,.yakap-feature-columns,.yakap-education-grid,.yakap-facility-grid { grid-template-columns:1fr; }
  .yakap-enrollment-states { grid-template-columns:1fr 1fr; }
  .yakap-facility-filters { grid-template-columns:1fr; }
  .yakap-risk-options,.yakap-path-grid { grid-template-columns:1fr; }
  .yakap-family-switcher,.yakap-family-switcher label,.yakap-family-switcher select,.yakap-return-primary,.yakap-return-primary button { width:100%; }
  .yakap-registration .registration-brand-group { align-items:flex-start; flex-direction:column; gap:2px; }
  .yakap-registration .registration-program-badge { margin-left:6px; }
}

@media print {
  .yakap-member-portal { background:#fff !important; }
  .yakap-page-header,.yakap-benefit-card,.yakap-enrollment-card { box-shadow:none; }
  .yakap-header-actions,.yakap-family-switcher,.yakap-risk-form,.yakap-facility-filters { display:none !important; }
}
