/* FluentCommunity embedded desktop layout: keep app navigation inside its page shell. */
@media (min-width: 761px) {
  body.gd-community-shell .feed_layout > .spaces {
    top: 0;
    bottom: 0;
    height: auto;
  }

  body.gd-community-shell #fluent_community_sidebar_menu {
    position: absolute;
    inset: 0 auto 0 0;
    width: 280px;
    height: auto;
    min-height: 100%;
  }

  body.gd-community-shell .fhr_content_layout_header {
    position: relative;
    top: auto;
  }
}

/* Community page shell: restore the shared background and remove the nested card. */
body.gd-community-shell #inner-wrap {
  background-image: linear-gradient(rgba(var(--gd-canvas-rgb), .58), rgba(var(--gd-canvas-rgb), .70)), var(--gd-page-background-image);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
}

body.gd-community-shell #main {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Community's theme container becomes the shared page shell below. */
body.gd-community-shell #primary > .content-container {
  overflow:visible;
}

body.gd-community-shell .gd-layout,
body.gd-community-shell .gd-section--flush {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.gd-community-shell .gd-community-portal-intro {
  margin: 0 0 clamp(18px, 3vw, 28px);
  padding: clamp(28px, 3vw, 36px) var(--gd-space-pad);
  overflow: hidden;
  border: 1px solid rgba(var(--gd-brand-lime-rgb), .4);
  border-radius: var(--gd-shell-radius);
  background: var(--gd-surface);
  box-shadow: var(--gd-shadow-raised);
}

body.gd-community-shell .gd-community-portal-intro .gd-lead:last-child {
  margin-bottom: 0;
}

body.gd-community-shell .fluent_com {
  overflow: hidden;
  border-radius: var(--gd-shell-radius);
  background: var(--gd-surface);
  box-shadow: var(--gd-shadow-raised);
}

/* Community header and application live inside the global outer shell. */
body.gd-community-shell .gd-community-portal-card {
  margin:0;
  padding:0;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.gd-community-shell .gd-community-portal-card .gd-community-portal-intro {
  margin:0 0 clamp(18px,3vw,28px);
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.gd-community-shell .gd-community-portal-card .fluent_com {
  overflow:visible;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

/* Community uses the site-wide keyboard skip link; hide FluentCommunity's duplicate. */
body.gd-community-shell .fluent_com > .fhr_wrap > .screen-reader-shortcut {
  display: none;
}

/* Integrate FluentCommunity's headless authentication document with the shared site shell. */
body.fcom_headless_page.gd-community-shell {
  margin:0;
  background:var(--gd-canvas);
  color:var(--gd-content-navy);
  font-family:Overpass,Arial,sans-serif;
}
body.fcom_headless_page.gd-community-shell .fcom_full_layout.fluent_com_auth.fcom_auth_page {
  display:block;
  width:100%;
  min-height:auto;
  margin:0;
  padding:0;
  border-radius:0;
  background:transparent;
}
body.fcom_headless_page.gd-community-shell .fcom_full_layout.fluent_com_auth.fcom_auth_page > .fcom_layout_side {
  display:none !important;
}
body.fcom_headless_page.gd-community-shell .fcom_full_layout.fluent_com_auth.fcom_auth_page > .fcom_layout_main {
  display:block;
  flex:none;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  overflow:visible;
  border-radius:0;
  box-shadow:none;
}
body.fcom_headless_page.gd-community-shell .fluent_com.fluent_com_auth {
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  border-radius:0;
  background-image:linear-gradient(rgba(var(--gd-canvas-rgb),.58),rgba(var(--gd-canvas-rgb),.70)),var(--gd-page-background-image);
  background-position:center top;
  background-repeat:no-repeat;
  background-size:cover;
}
body.fcom_headless_page.gd-community-shell #masthead {
  width:100%;
  margin:0;
  border-radius:0;
}
body.fcom_headless_page.gd-community-shell #fcom_user_onboard_wrap {
  box-sizing:border-box;
  width:min(calc(100% - 32px),var(--gd-content-width));
  max-width:var(--gd-content-width);
  height:auto;
  min-height:0;
  margin:16px auto 48px;
  padding:var(--gd-space-pad);
  border-radius:var(--gd-shell-radius);
  background:var(--gd-surface);
  box-shadow:var(--gd-shadow-raised);
}
body.fcom_headless_page.gd-community-shell #fcom_user_onboard_wrap :is(.fcom_onboard_header,.fcom_onboard_body) {
  box-sizing:border-box;
  width:min(100%,640px);
  max-width:560px;
  margin-left:auto;
  margin-right:auto;
}
body.fcom_headless_page.gd-community-shell #fcom_user_onboard_wrap .fcom_onboard_body {
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
/* Registration only: centered desktop label/control rows without moving FluentCommunity fields. */
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .fcom_onboard_header {
  text-align:center;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-form {
  box-sizing:border-box;
  display:block;
  width:100%;
  max-width:640px;
  margin:0 auto;
  padding:clamp(20px,3vw,28px);
  border:1px solid rgba(var(--gd-brand-lime-rgb),.34);
  border-radius:var(--gd-radius);
  background:var(--gd-surface-tint);
  color:var(--gd-content-navy);
  box-shadow:var(--gd-shadow-raised);
  font-family:Overpass,Arial,sans-serif;
  font-size:1rem;
  font-style:normal;
  font-weight:400;
  letter-spacing:normal;
  line-height:1.45;
  text-transform:none;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-form * {
  font-family:inherit;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field-stack,
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field {
  box-sizing:border-box;
  width:100%;
  min-width:0;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field {
  margin:0 0 14px;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-layout-root {
  box-sizing:border-box;
  display:grid;
  align-items:center;
  min-width:0;
  margin:0 auto;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-label-box,
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-control-box {
  box-sizing:border-box;
  min-width:0;
  margin:0;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field-label {
  display:block;
  width:auto;
  min-width:0;
  margin:0;
  padding:0;
  color:var(--gd-brand-navy);
  font-size:1rem;
  font-style:normal;
  font-weight:400;
  letter-spacing:normal;
  line-height:1.4;
  text-align:left;
  text-transform:none;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-control {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  margin:0;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field :is(input,select) {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:48px;
  margin:0;
  padding:10px 14px;
  border:var(--gd-control-border-width) solid var(--gd-accent-text);
  border-radius:9px;
  background:var(--gd-surface);
  color:var(--gd-content-navy);
  box-shadow:none;
  font-size:1rem;
  font-style:normal;
  font-weight:400;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field :is(input,select):focus {
  border-color:var(--gd-accent-text);
  box-shadow:0 0 0 3px rgba(var(--gd-brand-lime-rgb),.22);
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field input:-webkit-autofill,
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field input:-webkit-autofill:hover,
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field input:-webkit-autofill:focus {
  -webkit-text-fill-color:var(--gd-content-navy);
  box-shadow:0 0 0 1000px var(--gd-surface) inset;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-terms {
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:8px;
  width:auto;
  max-width:100%;
  margin:4px auto 14px;
  text-align:left;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-terms :is(label,.el-checkbox__label) {
  width:auto;
  max-width:none;
  margin:0;
  color:var(--gd-content-navy);
  font-size:1rem;
  font-style:normal;
  font-weight:400;
  line-height:1.4;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-submit {
  display:flex;
  justify-content:center;
  width:100%;
  margin:0;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-submit-button {
  display:block;
  width:auto;
  min-width:206px;
  min-height:48px;
  margin:0 auto;
  padding:11px 24px;
  border:1px solid var(--gd-accent-text);
  border-radius:9px;
  background:var(--gd-brand-lime);
  color:var(--gd-brand-navy);
  box-shadow:var(--gd-shadow);
  font-family:Overpass,Arial,sans-serif;
  font-size:1rem;
  font-style:normal;
  font-weight:700;
  letter-spacing:normal;
  line-height:1.2;
  text-transform:none;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-submit-button:hover,
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-submit-button:focus-visible {
  background:var(--gd-button-hover-bg);
  border-color:var(--gd-button-hover-border);
  color:var(--gd-button-hover-text);
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-login {
  display:block;
  width:auto;
  max-width:none;
  min-height:0;
  margin:8px auto 0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  text-align:center;
  color:var(--gd-content-navy);
  font-size:1rem;
  font-style:normal;
  font-weight:400;
  line-height:1.4;
}
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-login a,
body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-terms a {
  color:var(--gd-accent-text);
  font-weight:700;
}
@media (min-width:641px) {
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .fcom_onboard_body {
    width:min(100%,680px);
    max-width:680px;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-form {
    width:min(100%,640px);
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-layout-root {
    grid-template-columns:180px 320px;
    column-gap:20px;
    width:520px;
    max-width:100%;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-label-box {
    grid-column:1;
    grid-row:1;
    width:180px;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-control-box {
    grid-column:2;
    grid-row:1;
    width:320px;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-control,
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field :is(input,select) {
    width:320px;
    max-width:320px;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-layout-root > .el-form-item__error {
    grid-column:2;
    grid-row:2;
  }
}
@media (max-width:640px) {
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-form {
    width:100%;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-layout-root {
    grid-template-columns:minmax(0,1fr);
    row-gap:6px;
    width:100%;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-label-box {
    grid-column:1;
    grid-row:1;
    width:100%;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-control-box {
    grid-column:1;
    grid-row:2;
    width:100%;
  }
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-control,
  body.fcom_headless_page.gd-community-shell.gd-registration-auth #fcom_user_onboard_wrap .gd-registration-field :is(input,select) {
    width:100%;
    max-width:none;
  }
}
body.fcom_headless_page.gd-community-shell #masthead .menu-item-has-children {
  position:relative;
}
body.fcom_headless_page.gd-community-shell #masthead .dropdown-nav-special-toggle {
  position:absolute;
  top:0;
  right:0;
  bottom:auto;
  left:auto;
  display:block;
  width:18px;
  min-width:0;
  height:100%;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:inherit;
}
@media (max-width:760px) {
  body.fcom_headless_page.gd-community-shell #fcom_user_onboard_wrap {
    padding:24px;
  }
}

/* Community introduction: shared global heading rhythm with a real client photo. */
body.gd-community-shell .gd-community-portal-card .gd-community-portal-intro.gd-universal-page-header {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,280px);
  gap:var(--gd-space-gap);
  align-items:center;
  margin:0 0 var(--gd-page-intro-gap);
}
body.gd-community-shell .gd-community-portal-intro__copy {
  min-width:0;
}
body.gd-community-shell .gd-community-portal-photo {
  width:100%;
  margin:0;
  overflow:hidden;
  aspect-ratio:5/3;
  border:var(--gd-section-soft-border);
  border-radius:var(--gd-radius);
  background:var(--gd-section-soft-background);
}
body.gd-community-shell .gd-community-portal-photo__image {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 27%;
}
body.gd-community-shell a.fcom_space_meet-the-dogs .community_avatar .fcom_emoji {
  display:block;
  width:20px;
  height:20px;
  background:var(--gd-community-icon-image) center/contain no-repeat;
}
body.gd-community-shell a.fcom_space_meet-the-dogs .community_avatar .fcom_emoji > img {
  display:none !important;
}
@media (max-width:760px) {
  body.gd-community-shell .gd-community-portal-card .gd-community-portal-intro.gd-universal-page-header {
    grid-template-columns:minmax(0,1fr);
  }
  body.gd-community-shell .gd-community-portal-photo {
    aspect-ratio:16/9;
  }
}
/* Community dog display and settings: shared component tokens, no button dimensions. */
html body.gd-site-style-guide .gd-community-dog-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:var(--gd-component-space-md); }
html body.gd-site-style-guide .gd-community-dog-card { display:flex; align-items:center; gap:var(--gd-component-space-sm); padding:var(--gd-component-space-sm); border:1px solid var(--gd-border); border-radius:var(--gd-radius); background:var(--gd-surface); }
html body.gd-site-style-guide .gd-community-dog-card img { width:100px; height:100px; object-fit:cover; border-radius:var(--gd-radius); }
html body.gd-site-style-guide .gd-community-dog-card h4,
html body.gd-site-style-guide .gd-community-dog-card p { margin:0; overflow-wrap:anywhere; }
@media (max-width:760px) { html body.gd-site-style-guide .gd-community-dog-grid { grid-template-columns:minmax(0,1fr); } }


/* Feed and space settings: native editor mounted in the canonical Community shell. */
html body.gd-community-shell.gd-community-settings .gd-community-portal-intro :is(.gd-kicker,.gd-lead,.gd-community-portal-photo),
html body.gd-community-shell.gd-community-settings .gd-community-portal-card > .fluent_com { display:none; }
html body.gd-community-shell.gd-community-settings .fcom_editor_menu { display:flex;flex-wrap:wrap;gap:var(--gd-component-space-xs); }
html body.gd-community-shell.gd-community-settings .gd-community-portal-intro { display:block; }
html body.gd-community-shell.gd-community-settings .gd-community-settings-host > .fcom_full_editor {
  position:relative;inset:auto;z-index:auto;width:100%;height:auto;min-height:0;background:transparent;
}
html body.gd-community-shell.gd-community-settings .fcom_full_editor > .el-container,
html body.gd-community-shell.gd-community-settings .fcom_full_editor_container,
html body.gd-community-shell.gd-community-settings .fcom_full_editor_main,
html body.gd-community-shell.gd-community-settings .fcom_full_editor_main > .el-scrollbar,
html body.gd-community-shell.gd-community-settings .fcom_full_editor_main .el-scrollbar__wrap {
  height:auto;min-height:0;overflow:visible;
}
html body.gd-community-shell.gd-community-settings .fcom_full_editor_header_wrap { height:auto;padding:0;border:0;background:transparent; }
html body.gd-community-shell.gd-community-settings .fcom_full_editor_header {
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--gd-component-space-sm);padding:0;margin:0 0 var(--gd-component-space-lg);border:0;
}
html body.gd-community-shell.gd-community-settings .fcom_full_editor_main { padding:0; }
html body.gd-community-shell.gd-community-settings .fcom_customizer_container {
  box-sizing:border-box;width:100%;max-width:none;margin:0;padding:0;
}
html body.gd-community-shell.gd-community-settings .fcom_section_primary {
  border:var(--gd-card-border);border-radius:var(--gd-radius);background:var(--gd-surface);overflow:hidden;
}
html body.gd-community-shell.gd-community-settings .fcom_section_primary_item {
  display:flex;flex-wrap:wrap;gap:var(--gd-component-space-sm);align-items:center;justify-content:space-between;padding:var(--gd-component-space-md);
}
html body.gd-community-shell.gd-community-settings .fcom_section_primary_item h4 { margin:0; }
html body.gd-community-shell.gd-community-settings .fcom_section_item_actions .gd-btn { margin:0; }
@media (max-width:760px) {
  html body.gd-community-shell.gd-community-settings .fcom_customizer_container .el-drawer { max-width:100%;min-width:min(100%,360px); }
}

/* Community owner profile photo controls use the shared action-button contract. */
html body.gd-community-shell .gd-community-profile-photo-actions { display:flex;flex-wrap:wrap;align-items:center;gap:var(--gd-component-space-xs);min-width:0;max-width:100%;white-space:normal; }
html body.gd-community-shell .gd-community-profile-photo-actions > .gd-btn { margin:0; }
html body.gd-community-shell .fcom_avatar_popover { padding:var(--gd-component-space-xs);border:var(--gd-card-border);border-radius:var(--gd-radius);background:var(--gd-surface); }
@media (max-width:760px) { html body.gd-community-shell .gd-community-profile-photo-actions { width:100%;justify-content:flex-start; } html body.gd-community-shell .fcom_member_profile .object_avatar_uploader { left:auto;right:var(--gd-component-space-xs); } }

/* Community profiles use the shared surfaces, spacing and title-only header. */
html body.gd-community-shell.gd-community-profile #inner-wrap {
  background-image:linear-gradient(rgba(var(--gd-surface-rgb),.58),rgba(var(--gd-surface-rgb),.70)),var(--gd-page-background-image);
  background-color:var(--gd-surface);
}
html body.gd-community-shell.gd-community-profile .gd-community-portal-intro { display:block; }
html body.gd-community-shell.gd-community-profile .gd-community-portal-intro :is(.gd-kicker,.gd-lead,.gd-community-portal-photo) { display:none; }
html body.gd-community-shell.gd-community-profile .fcom_member_profile {
  background:var(--gd-surface);border:var(--gd-card-border);border-radius:var(--gd-radius);overflow:visible;
  --fcom-secondary-bg:var(--gd-surface);--fcom-secondary-content-bg:var(--gd-surface);
}
html body.gd-community-shell.gd-community-profile .fcom_sub_group { background:var(--gd-surface); }

/* Keep the profile-photo action beside its avatar; dimensions stay global. */
html body.gd-community-shell .object_info .object_name .gd-community-change-photo { margin-top:var(--gd-component-space-xs); }
html body.gd-community-shell .object_info .object_name { min-width:0; }
@media (max-width:760px) {
  html body.gd-community-shell .object_info:has(.gd-community-change-photo) { flex-direction:column;align-items:center;gap:var(--gd-component-space-xs); }
  html body.gd-community-shell .object_info:has(.gd-community-change-photo) .object_name { align-self:stretch;width:auto;text-align:center; }
}

/* Element Plus owns the outer field; avoid a second theme border on its input. */
html body.gd-community-shell .el-input .el-input__inner { border:0;padding:0;box-shadow:none;background:transparent; }
html body.gd-community-shell .el-input .el-input__wrapper { border-radius:var(--gd-control-radius);box-shadow:0 0 0 var(--gd-control-border-width) var(--gd-border) inset; }
html body.gd-community-shell .el-input .el-input__wrapper:focus-within { box-shadow:0 0 0 2px var(--gd-brand-lime) inset; }
