
body {
  --bg: #fce7f1; --paper: #fff0f6; --ink: #301723;
  --muted: #795366; --line: #efc0d6;
  --violet: #b82d75; --violet2: #d45195; --pink: #ef79b4;
  background: #fce7f1; color: #301723;
}
.page-top, .result-top, .sitebar { background: #fff0f6; }
.sitebar { border-bottom-color: #efc0d6; }
.sitebar .brand-mark {
  background: #21131c; color: #f5a7cb; border: 1px solid #dc85ad;
  font-size: 13px; letter-spacing: -.05em;
  box-shadow: 0 4px 12px rgba(166,37,103,.15);
}
.nav-pill, .topic, .eyebrow { background: #f9dce9; color: #a62567; border-color: #efc0d6; }
.card, .editorial-shell, .knowledge-card, .role-card, .commerce-card,
.result-hero, .info-band, .faq details {
  background: #fff0f6; border-color: #efc0d6; color: #301723;
}
.info-band h2 { color: #82194f !important; }
.info-band p { color: #795366; }
.btn-primary, .hero .hero-stage-actions .btn-primary {
  background: linear-gradient(115deg, #b82d75, #ec6bab);
  box-shadow: 0 6px 24px rgba(184,45,117,.25);
}
.btn-secondary { background: #fff0f6; color: #a62567; border-color: #efc0d6; }
.result-scroll main > .section.wrap {
  margin-top: 16px; margin-bottom: 16px; padding: 20px 16px;
  border: 1px solid #efc0d6; border-radius: 20px;
  background: #fff0f6; box-sizing: border-box;
}
.result-scroll main h1 { color: #82194f; }
#answerSummary > p {
  padding: 12px 14px; border: 1px solid #efc0d6; border-radius: 12px;
  background: #fce7f1; color: #603047;
}
.footer { color: #795366; border-color: #efc0d6; }


body:has(.page-scroll),
.page-scroll,
.page-scroll > main,
.page-scroll > main > section,
.page-scroll > .footer {
  background: #fff0f6;
}


.member-profile { padding: 4px 0 24px; }
.member-profile + .member-profile { border-top: 1px solid #efc0d6; padding-top: 24px; }
.member-profile h1 { font-size: clamp(28px, 6vw, 44px); line-height: 1.15; }
.member-profile h2 { margin-top: 28px; font-size: 23px; color: #82194f; }
.member-profile p, .member-profile li { line-height: 1.75; }
.member-profile ul { padding-left: 24px; }
.member-traits { color: #a62567; font-weight: 700; }
.member-vibe { background: #f9dce9; padding: 16px 20px; border-radius: 16px; margin-top: 24px; }
.member-vibe h3 { margin: 0; }
.member-vibe p { margin-bottom: 0; font-style: italic; }
.member-note { font-size: 14px; line-height: 1.65; color: #795366; }
