:root {
  --qc-ivory: #fce9e9;
  --qc-paper: #fffafa;
  --qc-blush: #f9c8cc;
  --qc-burgundy: #dc0b17;
  --qc-wine: #050166;
  --qc-chocolate: #050166;
  --qc-gold: #dc0b17;
  --qc-gold-light: #f9c8cc;
  --qc-muted: #55536f;
  --qc-line: rgba(5, 1, 102, .12);
  --qc-display: "Fraunces", Georgia, serif;
  --qc-serif: "Spectral", Georgia, serif;
  --qc-sans: "Jost", sans-serif;
}

body.queen-club-member-area,
body.fcom_headless_page,
body:has(.fluent_com) {
  margin: 0;
  background: var(--qc-ivory);
  color: var(--qc-chocolate);
  font-family: var(--qc-sans);
  -webkit-font-smoothing: antialiased;
}

.queen-club-member-area :focus-visible,
.fcom_headless_page :focus-visible,
body:has(.fluent_com) :focus-visible {
  outline: 2px solid var(--qc-gold);
  outline-offset: 3px;
}

/* FluentCommunity portal */
.queen-club-fluent-community,
.fcom_headless_page,
.fluent_com {
  --fcom-primary-bg: var(--qc-paper);
  --fcom-secondary-bg: var(--qc-ivory);
  --fcom-primary-text: var(--qc-chocolate);
  --fcom-secondary-text: var(--qc-muted);
  --fcom-primary-border: var(--qc-line);
  --fcom-menu-text: var(--qc-muted);
  --fcom-menu-text-active: var(--qc-burgundy);
  --fcom-active-bg: rgba(220, 11, 23, .08);
  --fcom-primary-button: var(--qc-burgundy);
  position: relative;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.fhr_wrap, .fhr_content, .feed_layout, .spaces) {
  position: relative;
  z-index: 1;
  background: transparent;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) .fcom_top_menu {
  border-bottom: 1px solid var(--qc-line);
  background: rgba(255, 250, 242, .96);
  box-shadow: none;
  backdrop-filter: blur(18px);
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.fhr_logo img, .community_avatar img) {
  border-radius: 50%;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) .community_name {
  color: var(--qc-wine);
  font: 500 .72rem/1.2 var(--qc-display);
  letter-spacing: .08em;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(#fcom_sidebar_wrap, .fcom_sidebar_wrap) {
  position: relative;
  border-right: 1px solid var(--qc-line);
  background: rgba(255, 255, 255, .94) !important;
  box-shadow: none;
  overflow: hidden;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(#fcom_sidebar_wrap, .fcom_sidebar_wrap)::after {
  content: none;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.fcom_space_group_header, .space_section_title) {
  color: var(--qc-gold);
  font: 500 .95rem/1.3 var(--qc-display);
  letter-spacing: 0;
  text-transform: none;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.fcom_menu_link, .space_menu_item) {
  border-radius: 8px;
  color: var(--qc-muted);
  font-family: var(--qc-sans);
  font-size: .92rem;
  font-weight: 400;
  letter-spacing: .02em;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.fcom_menu_link, .space_menu_item):hover,
:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.fcom_menu_link, .space_menu_item).active,
:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) .router-link-exact-active {
  background: rgba(220, 11, 23, .08) !important;
  color: var(--qc-burgundy) !important;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(h1, h2, h3, .space_contents h1, .space_contents h2) {
  color: var(--qc-wine);
  font-family: var(--qc-display);
  font-weight: 400;
  letter-spacing: -.03em;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.feed_item, .fcom_post_card, .fcom_card, .el-card, .profile_main, .object_header, .fcom_update_profile) {
  border: 1px solid var(--qc-line);
  border-radius: 8px;
  background: var(--qc-paper);
  box-shadow: 0 14px 34px rgba(5, 1, 102, .05);
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.profile_header, .profile_navs, .fcom_profile_header) {
  border-color: var(--qc-line);
  background: rgba(255, 255, 255, .86);
  box-shadow: none;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(button, .el-button, .fcom_primary_button, .fcom_secondary_button) {
  min-height: 2.5rem;
  padding: .55rem 1rem;
  border-radius: 8px;
  font-family: var(--qc-sans);
  font-size: .86rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  box-shadow: none;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.el-button--primary, .fcom_primary_button) {
  border-color: var(--qc-burgundy);
  background: var(--qc-burgundy);
  color: #fff;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(.el-button--default, .fcom_secondary_button) {
  border-color: rgba(220, 11, 23, .18);
  background: rgba(255, 255, 255, .75);
  color: var(--qc-burgundy);
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) :is(input, textarea, select, .el-input__wrapper) {
  border-color: var(--qc-line);
  border-radius: 8px;
  background: var(--qc-paper);
  box-shadow: none;
  font-family: var(--qc-sans);
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) textarea {
  border-radius: 1.2rem;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) .fcom_profile_membership {
  border-top: 1px solid var(--qc-line);
  background: linear-gradient(135deg, rgba(232, 201, 197, .22), rgba(255, 250, 242, .7));
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) .fcom_profile_membership_link,
:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) .fcom_manage_membership {
  color: var(--qc-burgundy);
  font-weight: 500;
}

:is(.queen-club-fluent-community, .fcom_headless_page, .fluent_com) .fcom_manage_membership_cancel {
  color: var(--qc-muted);
}

.fluent_com {
  min-height: 100vh;
  background: var(--qc-ivory) !important;
  color: var(--qc-chocolate);
  font-family: var(--qc-sans);
}

.fluent_com :is(.fcom_single_layout, .feeds, .feeds_main) {
  background: transparent !important;
}

.fluent_com :is(.space_contents, .fcom_sidebar_contents, .fcom_side_footer) {
  background: rgba(255, 255, 255, .94) !important;
  color: var(--qc-chocolate) !important;
}

.fluent_com :is(.fcom_top_menu, .fcom_top_menu .fcom_menu_link, .fcom_sidebar_wrap .fcom_menu_link) {
  color: var(--qc-chocolate) !important;
}

.fluent_com :is(.feed_create, .feed_create_box, .fcom_post_input, .fcom_post_input_placeholder) {
  background: var(--qc-paper) !important;
  color: var(--qc-muted) !important;
}

.fluent_com .fhr_content_layout_header {
  border-bottom: 1px solid rgba(5, 1, 102, .12);
  background: rgba(255, 250, 242, .96);
  backdrop-filter: blur(16px);
}

.fluent_com .fhr_content_layout_body {
  max-width: 74rem;
  margin: 0 auto;
}

@media (min-width: 783px) {
  .fluent_com .space_contents {
    left: 0 !important;
  }
}

.fluent_com .object_header {
  overflow: hidden;
}

.fluent_com .object_cover.no_cover,
.fluent_com .object_cover {
  min-height: 11rem;
  background: linear-gradient(135deg, rgba(220, 11, 23, .12), rgba(178, 139, 82, .16)) !important;
  border-radius: 8px 8px 0 0 !important;
}

.fluent_com .object_cover.no_cover::after,
.fluent_com .object_cover::after {
  content: none;
}

.fluent_com .object_info {
  background: rgba(255, 250, 242, .96) !important;
  border-top: 1px solid rgba(255, 250, 242, .2);
}

.fluent_com .object_info h3 {
  color: var(--qc-wine);
  font: 400 1.7rem/1.1 var(--qc-display);
  letter-spacing: 0;
}

.fluent_com .object_info :is(span, p) {
  color: var(--qc-muted);
}

.fluent_com :is(.fcom_no_avatar, .fcom_shape) {
  background: var(--qc-burgundy) !important;
  color: #fff !important;
}

.fluent_com .fcom_update_profile {
  padding: 1.25rem !important;
  border-color: rgba(5, 1, 102, .14) !important;
  background: var(--qc-paper) !important;
}

.fluent_com .el-form-item__label,
.fluent_com label {
  color: var(--qc-muted) !important;
  font: 500 .85rem/1.2 var(--qc-sans) !important;
  letter-spacing: 0;
  text-transform: none;
}

.fluent_com .el-input__wrapper,
.fluent_com .el-textarea__inner {
  min-height: 3.1rem;
  border: 1px solid rgba(5, 1, 102, .18) !important;
  background: rgba(255, 255, 255, .86) !important;
  box-shadow: none !important;
}

.fluent_com .el-input__wrapper:hover,
.fluent_com .el-textarea__inner:hover,
.fluent_com .el-input__wrapper.is-focus,
.fluent_com .el-textarea__inner:focus {
  border-color: rgba(220, 11, 23, .46) !important;
}

.fluent_com .fcom_sub_group {
  border: 1px solid rgba(220, 11, 23, .1);
  border-radius: 8px !important;
  background: rgba(255, 250, 242, .72) !important;
}

.fluent_com .fcom_sub_group h5,
.fluent_com .fcom_mb_20 h5 {
  color: var(--qc-wine);
  font: 400 1.25rem/1.1 var(--qc-display);
  letter-spacing: 0;
}

/* Paid Memberships Pro pages */
.queen-club-member-area:not(.queen-club-fluent-community) .site-main,
.queen-club-member-area:not(.queen-club-fluent-community) main {
  width: min(100% - 2rem, 68rem);
  margin: 0 auto;
  padding: clamp(3rem, 8vw, 7rem) 0;
}

.queen-club-member-area .pmpro {
  color: var(--qc-chocolate);
  font-family: var(--qc-sans);
}

.queen-club-member-area .pmpro :is(h1, h2, h3, .pmpro_card_title) {
  color: var(--qc-wine);
  font-family: var(--qc-display);
  font-weight: 400;
}

.queen-club-member-area .pmpro :is(.pmpro_card, .pmpro_section, .pmpro_checkout-fields) {
  border: 1px solid var(--qc-line);
  border-radius: 1.2rem;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 24px 60px rgba(5, 1, 102, .08);
  backdrop-filter: blur(14px);
}

.queen-club-member-area .pmpro :is(.pmpro_form_heading, .pmpro_card_title) {
  padding-bottom: .9rem;
  border-bottom: 1px solid var(--qc-line);
}

.queen-club-member-area .pmpro :is(.pmpro_form_field, .pmpro_form_fields) {
  gap: .65rem;
}

.queen-club-member-area .pmpro label {
  color: var(--qc-muted);
  font-size: .68rem;
  font-weight: 500;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.queen-club-member-area .pmpro :is(.pmpro_btn, button, input[type="submit"]) {
  min-height: 3rem;
  padding: .65rem 1.3rem;
  border: 1px solid var(--qc-burgundy);
  border-radius: 999px;
  background: var(--qc-burgundy);
  color: #fff;
  font-family: var(--qc-sans);
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.queen-club-member-area .pmpro :is(.pmpro_btn-outline, .pmpro_btn-cancel, .pmpro_btn-plain) {
  background: transparent;
  color: var(--qc-burgundy);
}

.queen-club-member-area .pmpro :is(.pmpro_alert, .pmpro_message) {
  border: 1px solid var(--qc-line);
  border-left: 3px solid var(--qc-gold);
  border-radius: 0;
  background: rgba(232, 201, 197, .18);
  color: var(--qc-chocolate);
}

.queen-club-member-area .pmpro table {
  border-collapse: collapse;
}

.queen-club-member-area .pmpro :is(th, td) {
  padding: .9rem;
  border-bottom: 1px solid var(--qc-line);
}

.queen-club-member-area .pmpro :is(input, select, textarea) {
  border: 1px solid var(--qc-line);
  border-radius: 999px;
  background: rgba(255, 255, 255, .88);
  font-family: var(--qc-sans);
}

.queen-club-member-area .pmpro textarea {
  border-radius: 1.2rem;
}

.queen-club-return-to-profile {
  width: min(100% - 2rem, 68rem);
  margin: 1.5rem auto 0;
}

.queen-club-return-to-profile a {
  color: var(--qc-burgundy);
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .12em;
  text-decoration: none;
  text-transform: uppercase;
}

@media (max-width: 782px) {
  :is(.queen-club-fluent-community, .fcom_headless_page) #fcom_sidebar_wrap {
    border-right: 0;
  }

  :is(.queen-club-fluent-community, .fcom_headless_page) .fcom_top_menu {
    background: rgba(255, 250, 242, .98);
  }
}

/* Disable dark mode — the landing page has no dark variant, so the
   community stays on the single light/brand palette. Force the dark
   theme to use the same tokens and hide the color-mode toggle. */
html.dark body {
  --fcom-primary-bg: var(--qc-paper);
  --fcom-secondary-bg: var(--qc-ivory);
  --fcom-secondary-content-bg: var(--qc-paper);
  --fcom-active-bg: rgba(220, 11, 23, .08);
  --fcom-light-bg: var(--qc-blush);
  --fcom-deep-bg: var(--qc-wine);
  --fcom-menu-text: var(--qc-muted);
  --fcom-primary-text: var(--qc-chocolate);
  --fcom-secondary-text: var(--qc-muted);
  --fcom-text-off: var(--qc-muted);
  --fcom-primary-button: var(--qc-burgundy);
  --fcom-primary-button-text: #ffffff;
  --fcom-primary-border: var(--qc-line);
  --fcom-secondary-border: var(--qc-gold-light);
  --fcom-highlight-bg: var(--qc-ivory);
  --fcom-text-link: var(--qc-burgundy);
  background: var(--qc-ivory);
  color: var(--qc-chocolate);
}

html.dark body .fcom_top_menu,
html.dark body .spaces {
  --fcom-primary-bg: var(--qc-paper);
  --fcom-primary-border: var(--qc-line);
  --fcom-menu-text: var(--qc-muted);
  --fcom-menu-text-active: var(--qc-burgundy);
  --fcom-active-bg: rgba(220, 11, 23, .08);
  --fcom-menu-text-hover: var(--qc-burgundy);
  --fcom-menu-bg-hover: var(--qc-ivory);
}

/* Hide the light/dark toggle control entirely */
.fcom_color_mode_core,
.fcom_color_mode_action {
  display: none !important;
}
