/* Winners' Circle — scoped marketing feed styles */
body:has(.wc) {
  background: #f5f8f5;
  color: #172d20;
  font-family: Inter, Arial, sans-serif;
}
body:has(.wc) > main.w {
  max-width: none;
  width: 100%;
  padding: 0 !important;
  margin: 0;
  min-height: 65vh;
}
body:has(.wc) header.marketing-header:not(.is-scrolled) {
  background: #f7faf7;
  border-bottom: 1px solid #e2ebe3;
}
body:has(.wc) header.marketing-header:not(.is-scrolled) .pe-header-brand {
  color: #132b1c;
}
body:has(.wc) header.marketing-header:not(.is-scrolled) .pe-header-nav a {
  color: #3b5141;
}
body:has(.wc) header.marketing-header:not(.is-scrolled) .pe-header-nav a.active,
body:has(.wc) header.marketing-header:not(.is-scrolled) .pe-header-nav a:hover {
  color: #079443;
}
body:has(.wc) header.marketing-header:not(.is-scrolled) .pe-header-account {
  background: #142f20;
  border-color: #142f20;
  color: #fff;
}
body:has(.wc) header.marketing-header:not(.is-scrolled) .pe-header-menu {
  color: #143320;
  background: #eaf3eb;
  border-color: #d5e4d8;
}
.wc {
  padding: 82px 22px 100px;
  min-height: 80vh;
}
.wc-intro {
  max-width: 1200px;
  margin: 0 auto;
  padding: 66px 0 50px;
}
.wc-eyebrow,
.wc-feed-overline,
.wc-side-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  color: #24884b;
}
.wc-live-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #15ae59;
  border-radius: 50%;
  margin-right: 7px;
}
.wc-intro h1 {
  font-size: clamp(37px, 5vw, 66px);
  letter-spacing: -0.065em;
  line-height: 1.08;
  max-width: 820px;
  margin: 18px 0 18px;
  font-weight: 850;
}
.wc-intro h1 em {
  font-style: normal;
  color: #17994c;
}
.wc-intro p {
  color: #647469;
  line-height: 1.7;
  max-width: 630px;
  font-size: 16px;
}
.wc-intro-actions {
  display: flex;
  gap: 23px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 28px;
}
.wc-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 14px 20px;
  border-radius: 12px;
  background: #128e46;
  color: white !important;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 8px 18px #148a4020;
}
.wc-primary:hover {
  background: #0d7037;
}
.wc-text-link {
  font-size: 13px;
  color: #21412b;
  font-weight: 750;
  text-decoration: none;
}
.wc-layout {
  max-width: 1200px;
  margin: auto;
  display: grid;
  grid-template-columns: 225px minmax(0, 1fr) 235px;
  align-items: start;
  gap: 23px;
}
.wc-left,
.wc-right {
  display: grid;
  gap: 18px;
  position: sticky;
  top: 104px;
}
.wc-panel,
.wc-post,
.wc-empty {
  background: white;
  border: 1px solid #e7eee8;
  border-radius: 18px;
  box-shadow: 0 6px 24px #153f1c06;
}
.wc-panel {
  padding: 14px;
}
.wc-side-title {
  display: block;
  margin: 0 0 18px;
  color: #829486;
}
.wc-filter {
  display: flex;
  align-items: center;
  width: 100%;
  text-align: left;
  gap: 10px;
  background: transparent;
  border: 0;
  border-radius: 10px;
  padding: 12px 10px;
  color: #405646;
  font:
    600 12px Inter,
    Arial;
  cursor: pointer;
}
.wc-filter > span:first-child {
  font-size: 18px;
  color: #4c9060;
}
.wc-filter.active,
.wc-filter:hover {
  background: #e9f7ed;
  color: #087f3b;
}
.wc-filter-count {
  margin-left: auto;
  font-size: 11px;
  color: #7b9281;
}
.wc-side-note {
  background: #103923;
  color: #fff;
}
.wc-note-icon {
  font-size: 25px;
}
.wc-side-note strong {
  display: block;
  font-size: 17px;
  margin: 12px 0;
}
.wc-side-note p,
.wc-community-panel p {
  font-size: 12px;
  line-height: 1.75;
  color: #a5c3ae;
}
.wc-side-note a,
.wc-event-panel a,
.wc-community-panel a {
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  color: #57d78a;
}
.wc-feed {
  min-width: 0;
}
.wc-feed-top {
  display: flex;
  align-items: end;
  justify-content: space-between;
  margin: 3px 0 19px;
}
.wc-feed-top h2 {
  font-size: 25px;
  letter-spacing: -0.04em;
  margin: 6px 0 0;
}
.wc-feed-count {
  color: #718476;
  font-size: 12px;
}
.wc-post {
  overflow: hidden;
  margin-bottom: 20px;
}
.wc-post-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 23px 23px 8px;
}
.wc-avatar {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #def1e4;
  color: #198246;
  font-size: 18px;
  font-weight: 800;
}
.wc-post-author {
  min-width: 0;
  flex: 1;
}
.wc-post-author strong {
  font-size: 14px;
}
.wc-post-meta {
  display: flex;
  gap: 7px;
  align-items: center;
  font-size: 11px;
  color: #86958a;
  margin-top: 5px;
}
.wc-story-badge {
  background: #edf6ef;
  border: 1px solid #dcecdf;
  color: #4c825d;
  padding: 7px 9px;
  border-radius: 30px;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}
.wc-story-badge.is-winner {
  background: #e8f8ed;
  color: #087a38;
}
.wc-post-copy {
  padding: 11px 23px 18px;
}
.wc-post-copy h3 {
  font-size: 18px;
  letter-spacing: -0.025em;
  margin: 0 0 10px;
}
.wc-post-copy p {
  font-size: 13px;
  line-height: 1.85;
  color: #526457;
  margin: 0;
  overflow-wrap: anywhere;
}
.wc-post-image {
  background: #e8efea;
  max-height: 480px;
  overflow: hidden;
}
.wc-post-image img {
  display: block;
  width: 100%;
  max-height: 480px;
  object-fit: cover;
}
.wc-post-stats {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #8b9b8f;
  font-size: 11px;
  padding: 16px 23px;
}
.wc-share-link {
  color: #6d8d75;
  text-decoration: none;
}
.wc-post-actions {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid #edf1ee;
  border-bottom: 1px solid #edf1ee;
  margin: 0 23px;
}
.wc-post-actions button {
  padding: 14px 8px;
  border: 0;
  background: none;
  cursor: pointer;
  font:
    700 12px Inter,
    Arial;
  color: #657a6b;
}
.wc-post-actions button:hover {
  color: #088d40;
  background: #f6faf7;
}
.wc-post-actions button span {
  font-size: 14px;
  vertical-align: middle;
  margin-right: 7px;
}
.wc-comment-teaser {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 23px 22px;
}
.wc-comment-symbol {
  background: #e5f1e9;
  border-radius: 50%;
  height: 32px;
  width: 32px;
  display: grid;
  place-items: center;
  color: #498b5d;
}
.wc-comment-teaser button {
  background: #f3f7f4;
  border: 0;
  border-radius: 30px;
  padding: 12px 15px;
  text-align: left;
  flex: 1;
  color: #91a096;
  font-size: 12px;
  cursor: pointer;
}
.wc-event-panel h3,
.wc-community-panel h3 {
  font-size: 18px;
  line-height: 1.3;
  margin: 0 0 21px;
}
.wc-event {
  display: flex;
  gap: 12px;
  margin-bottom: 18px;
}
.wc-event-icon {
  height: 32px;
  width: 32px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #e7f6eb;
  color: #158e45;
}
.wc-event strong {
  font-size: 12px;
}
.wc-event small {
  display: block;
  color: #859487;
  font-size: 10px;
  line-height: 1.6;
  margin-top: 4px;
}
.wc-event-panel a,
.wc-community-panel a {
  color: #128b44;
}
.wc-community-panel p {
  color: #758879;
}
.wc-mobile-filters {
  display: none;
}
.wc-empty {
  text-align: center;
  padding: 55px 24px;
}
.wc-empty > span {
  font-size: 38px;
  color: #16a34a;
}
.wc-empty h3 {
  font-size: 21px;
  margin: 12px 0;
}
.wc-empty p {
  font-size: 13px;
  color: #728577;
  line-height: 1.7;
  max-width: 360px;
  margin: 0 auto 20px;
}
.wc-filter-empty[hidden] {
  display: none;
}
.wc-modal[hidden] {
  display: none;
}
.wc-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: 20px;
}
.wc-modal-backdrop {
  position: absolute;
  inset: 0;
  background: #102c1dc2;
  backdrop-filter: blur(4px);
}
.wc-dialog {
  position: relative;
  width: min(100%, 420px);
  background: white;
  padding: 38px 30px 30px;
  border-radius: 22px;
  box-shadow: 0 24px 70px #081c1660;
  text-align: center;
}
.wc-close {
  position: absolute;
  right: 17px;
  top: 12px;
  background: transparent;
  border: 0;
  font-size: 26px;
  color: #6c7b70;
  cursor: pointer;
}
.wc-dialog-mark {
  display: grid;
  place-items: center;
  margin: 0 auto 14px;
  width: 55px;
  height: 55px;
  border-radius: 16px;
  background: #e6f8eb;
  color: #15974b;
  font-size: 27px;
}
.wc-dialog h2 {
  font-size: 24px;
  letter-spacing: -0.04em;
}
.wc-dialog p {
  font-size: 13px;
  color: #697c6d;
  line-height: 1.8;
  margin-bottom: 23px;
}
.wc-dialog-login {
  display: flex;
}
.wc-dialog-entry {
  display: block;
  margin-top: 17px;
  color: #198b47;
  font-weight: 700;
  font-size: 12px;
  text-decoration: none;
}
@media (max-width: 1100px) {
  .wc-layout {
    grid-template-columns: 200px minmax(0, 1fr);
  }
  .wc-right {
    display: none;
  }
}
@media (max-width: 760px) {
  .wc {
    padding: 68px 13px 60px;
  }
  .wc-intro {
    padding: 44px 8px 32px;
  }
  .wc-intro p {
    font-size: 14px;
  }
  .wc-layout {
    display: block;
  }
  .wc-left {
    display: none;
  }
  .wc-feed-top {
    padding: 0 6px;
  }
  .wc-mobile-filters {
    display: flex;
    overflow-x: auto;
    gap: 9px;
    margin: 0 -13px 16px;
    padding: 0 13px 5px;
    scrollbar-width: none;
  }
  .wc-mobile-filter {
    flex: 0 0 auto;
    border: 1px solid #dce9df;
    background: white;
    border-radius: 24px;
    padding: 11px 15px;
    font:
      700 12px Inter,
      Arial;
    color: #5e7665;
  }
  .wc-mobile-filter.active {
    background: #148a43;
    color: #fff;
    border-color: #148a43;
  }
  .wc-post-head {
    padding: 17px 15px 7px;
  }
  .wc-post-copy {
    padding: 10px 15px 17px;
  }
  .wc-post-stats {
    padding: 14px 15px;
  }
  .wc-post-actions {
    margin: 0 15px;
  }
  .wc-comment-teaser {
    padding: 14px 15px 18px;
  }
  .wc-story-badge {
    font-size: 9px;
    padding: 6px;
  }
  .wc-post-copy h3 {
    font-size: 17px;
  }
  .wc-feed-top h2 {
    font-size: 23px;
  }
}
@media (max-width: 380px) {
  .wc-post-head {
    gap: 8px;
  }
  .wc-avatar {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }
  .wc-story-badge {
    font-size: 8px;
  }
  .wc-post-meta {
    font-size: 10px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .wc * {
    scroll-behavior: auto !important;
  }
}

/* Winners' Circle visual refinement: full-width How-It-Works-inspired gradient */
.wc-intro {
  position: relative;
  isolation: isolate;
}
.wc-intro::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background:
    linear-gradient(
      to bottom,
      transparent 0%,
      transparent 53%,
      rgba(245, 248, 245, 0.42) 74%,
      #f5f8f5 100%
    ),
    radial-gradient(
      ellipse at 85% 15%,
      rgba(101, 211, 146, 0.24),
      transparent 44%
    ),
    radial-gradient(
      ellipse at 10% 95%,
      rgba(141, 222, 174, 0.23),
      transparent 46%
    ),
    linear-gradient(115deg, #e9f8ef 0%, #f8fcf9 52%, #dff4e7 100%);
}
.wc-intro {
  padding-top: 66px;
  padding-bottom: 62px;
  margin-bottom: 34px;
}
.wc-intro p {
  color: #526f5c;
}
.wc-svg-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}
.wc-icon {
  width: 19px;
  height: 19px;
  display: inline-block;
  vertical-align: middle;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.85;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex-shrink: 0;
}
.wc-filter-icon {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #edf6f0;
  color: #19844a;
}
.wc-filter-icon .wc-icon {
  width: 16px;
  height: 16px;
}
.wc-filter.active .wc-filter-icon {
  background: #d5efde;
}
.wc-story-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.wc-story-badge .wc-icon {
  width: 13px;
  height: 13px;
}
.wc-note-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: linear-gradient(145deg, #3ec879, #168e4c);
  box-shadow: 0 7px 18px #051b1050;
  color: white;
}
.wc-note-icon .wc-icon {
  width: 23px;
  height: 23px;
}
.wc-post-actions button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}
.wc-post-actions button .wc-icon {
  width: 18px;
  height: 18px;
  transition: transform 0.18s ease;
}
.wc-post-actions button:hover .wc-icon {
  transform: translateY(-2px);
}
.wc-comment-symbol .wc-icon {
  width: 16px;
  height: 16px;
}
.wc-event-icon {
  background: linear-gradient(145deg, #eaf8ee, #d5eddf);
  box-shadow: inset 0 1px 0 #fff;
}
.wc-event-icon .wc-icon {
  width: 18px;
  height: 18px;
}
.wc-empty > .wc-icon {
  width: 42px;
  height: 42px;
}
.wc-dialog-mark .wc-icon {
  width: 27px;
  height: 27px;
}
@media (max-width: 760px) {
  .wc-intro {
    padding-top: 44px;
    padding-bottom: 42px;
    margin-bottom: 25px;
  }
}

/* Overflow fix: paint the full-bleed hero on the page container itself.
   The former 100vw pseudo-element extended under the vertical scrollbar. */
.wc {
  background-color: #f5f8f5;
  background-image:
    linear-gradient(
      to bottom,
      transparent 0%,
      transparent 53%,
      rgba(245, 248, 245, 0.42) 74%,
      #f5f8f5 100%
    ),
    radial-gradient(
      ellipse at 85% 15%,
      rgba(101, 211, 146, 0.24),
      transparent 44%
    ),
    radial-gradient(
      ellipse at 10% 95%,
      rgba(141, 222, 174, 0.23),
      transparent 46%
    ),
    linear-gradient(115deg, #e9f8ef 0%, #f8fcf9 52%, #dff4e7 100%);
  background-repeat: no-repeat;
  background-size: 100% 530px;
}
.wc-intro::before {
  content: none;
}
.wc-layout > *,
.wc-post,
.wc-post-image {
  min-width: 0;
}
.wc-post-image img {
  max-width: 100%;
}
@media (max-width: 760px) {
  .wc {
    background-size: 100% 450px;
  }
}

/* Reaction button: fill the glyph, not the button background. */
.wc-post {
  position: relative;
}
.wc-react-trigger .wc-reaction-icon {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linejoin: round;
  stroke-linecap: round;
}
.wc-react-trigger.is-reacted .wc-reaction-icon {
  fill: currentColor;
  stroke: currentColor;
}
.wc-react-trigger.is-like {
  color: #1877f2;
}
.wc-react-trigger.is-love {
  color: #e34465;
}
.wc-react-trigger.is-excited {
  color: #139b50;
}
.wc-post-actions .wc-react-trigger.is-reacted:hover {
  color: inherit;
  background: transparent;
}
.wc-post-actions .wc-react-trigger.is-like:hover {
  color: #1877f2;
}
.wc-post-actions .wc-react-trigger.is-love:hover {
  color: #e34465;
}
.wc-post-actions .wc-react-trigger.is-excited:hover {
  color: #139b50;
}
.wc-reaction-picker {
  position: absolute;
  z-index: 12;
  left: 18px;
  bottom: auto;
  transform: translateY(-100%);
  margin-top: -7px;
  display: flex;
  gap: 9px;
  padding: 9px 13px;
  background: #fff;
  border: 1px solid #dfebe2;
  border-radius: 999px;
  box-shadow: 0 10px 28px #123b2230;
  flex-wrap: nowrap;
}
.wc-reaction-picker button {
  width: 42px;
  height: 42px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  font-size: 23px;
  transition: transform 0.15s ease;
  background: #f5faf6;
  touch-action: manipulation;
}
.wc-reaction-picker button:hover,
.wc-reaction-picker button:focus-visible {
  transform: translateY(-4px) scale(1.12);
  background: #e9f6ed;
}
.wc-react-trigger {
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
}
@media (prefers-reduced-motion: reduce) {
  .wc-reaction-picker button {
    transition: none;
  }
}

/* Keep reaction picker hidden until JS explicitly opens it. */
.wc-reaction-picker[hidden] {
  display: none !important;
}

/* Social comments — restore scoped styling without affecting reaction picker. */
.wc-comments[hidden],
.wc-comment-form[hidden],
.wc-replying[hidden],
.wc-comment-form-actions [hidden] {
  display: none !important;
}

.wc-comments {
  padding: 12px 22px 4px;
  border-top: 1px solid #e7eee8;
}
.wc-comment-list {
  display: grid;
  gap: 12px;
}
.wc-comment {
  min-width: 0;
  padding: 14px 16px;
  border-radius: 15px;
  background: #f3f7f4;
  color: #203b2a;
  font-size: 13px;
  line-height: 1.5;
}
.wc-comment strong {
  display: block;
  font-weight: 750;
  margin-bottom: 5px;
}
.wc-comment p {
  margin: 0 0 5px;
  overflow-wrap: anywhere;
}
.wc-comment-meta {
  color: #85978a;
  font-size: 11px;
  margin-bottom: 7px;
}
.wc-comment button {
  appearance: none;
  border: 0;
  background: transparent;
  color: #16864a;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  padding: 0 10px 0 0;
}
.wc-comment button:hover {
  text-decoration: underline;
}
.wc-comment-reply {
  margin: 12px 0 0 24px;
  background: #eaf3ec;
  border-left: 3px solid #b8ddc5;
}
.wc-comment-form {
  display: grid;
  gap: 9px;
  margin-top: 12px;
}
.wc-comment-form textarea {
  box-sizing: border-box;
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 70px;
  padding: 12px 14px;
  resize: vertical;
  border: 1px solid #d8e7dc;
  border-radius: 13px;
  outline: none;
  background: #fbfdfb;
  color: #203b2a;
  font: inherit;
  font-size: 13px;
}
.wc-comment-form textarea:focus {
  border-color: #219b55;
  box-shadow: 0 0 0 3px #219b551a;
}
.wc-comment-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.wc-comment-form-actions button {
  border: 1px solid #d8e7dc;
  background: #fff;
  color: #216d42;
  border-radius: 9px;
  padding: 9px 13px;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.wc-comment-form-actions button[type="submit"] {
  background: #168d49;
  color: #fff;
  border-color: #168d49;
}
.wc-comment-form-actions button:disabled {
  opacity: 0.6;
  cursor: wait;
}
.wc-replying {
  margin: 0;
  font-size: 12px;
  color: #52705a;
}
.wc-comment-feedback {
  margin: 8px 0 0;
  color: #26814b;
  font-size: 12px;
}
@media (max-width: 600px) {
  .wc-comments {
    padding: 12px 14px 4px;
  }
  .wc-comment-reply {
    margin-left: 14px;
  }
}

/* Community comment bubbles and one-level reply threads */
.wc-comment-list {
  display: grid;
  gap: 16px;
}
.wc-comment {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 0;
  background: transparent;
  border-radius: 0;
  min-width: 0;
}
.wc-avatar {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #dcefe3;
  color: #147b46;
  font-size: 13px;
  font-weight: 750;
}
.wc-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.wc-avatar-small {
  flex-basis: 30px;
  width: 30px;
  height: 30px;
  font-size: 11px;
}
.wc-comment-content {
  flex: 1;
  min-width: 0;
}
.wc-comment-bubble {
  display: inline-block;
  max-width: 100%;
  box-sizing: border-box;
  background: #f0f5f1;
  border-radius: 15px;
  padding: 10px 14px;
}
.wc-comment-bubble strong {
  display: block;
  margin: 0 0 4px;
  font-size: 12px;
}
.wc-comment-bubble p {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 13px;
  line-height: 1.5;
}
.wc-comment-meta {
  margin: 5px 0 0 10px;
  font-size: 11px;
  color: #84968a;
}
.wc-comment-actions {
  display: flex;
  gap: 12px;
  margin: 4px 0 0 10px;
}
.wc-comment-actions button {
  padding: 0;
  font-size: 11px;
}
.wc-replies {
  display: grid;
  gap: 12px;
  margin: 12px 0 0 14px;
  padding-left: 12px;
  border-left: 2px solid #dcebe1;
}
.wc-comment-reply {
  margin: 0;
  background: transparent;
  border: 0;
}
.wc-comment-form textarea {
  min-height: 42px;
  height: 42px;
  border-radius: 22px;
  transition:
    min-height 0.18s ease,
    border-radius 0.18s ease;
}
.wc-comment-form.is-expanded textarea,
.wc-comment-form textarea:focus {
  min-height: 90px;
  border-radius: 14px;
}
@media (max-width: 600px) {
  .wc-comments {
    padding: 12px 14px 4px;
  }
  .wc-replies {
    margin-left: 4px;
    padding-left: 9px;
  }
  .wc-avatar {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
  }
}

/* Floating reaction picker: viewport positioned to escape clipped post cards. */
.wc-reaction-picker:not([hidden]) {
  position: fixed;
  bottom: auto;
  right: auto;
  margin: 0;
  transform: none;
  z-index: 9999;
}
.wc-reaction-picker[hidden] {
  display: none !important;
}

/* B1: scrollable post viewer */
.wc-post-viewer[hidden]{display:none!important}.wc-post-viewer{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px}.wc-post-viewer-backdrop{position:absolute;inset:0;background:rgba(9,27,17,.68)}.wc-post-viewer-dialog{position:relative;width:min(740px,100%);max-height:min(90dvh,950px);display:flex;flex-direction:column;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 25px 90px #0005;outline:none}.wc-post-viewer-header{display:flex;justify-content:space-between;align-items:center;flex:none;padding:14px 20px;border-bottom:1px solid #e4ede7;background:#fff}.wc-post-viewer-header strong{font-size:16px;color:#153e2a}.wc-post-viewer-header button{border:0;border-radius:50%;width:36px;height:36px;background:#edf4ef;color:#1d4931;font-size:24px;cursor:pointer}.wc-post-viewer-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1}.wc-post-in-viewer{border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important}.wc-post-in-viewer .wc-comments{display:block!important}.wc-post-in-viewer .wc-comment-form[hidden]{display:none!important}.wc-post-viewer-open{overflow:hidden!important}.wc-feed .wc-comment-teaser{display:none!important}@media(max-width:640px){.wc-post-viewer{padding:0}.wc-post-viewer-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0}.wc-post-viewer-header{padding:10px 14px}.wc-post-viewer-scroll{padding-bottom:env(safe-area-inset-bottom)}}

/* B1 layout correction: the dialog is a three-row flex layout. */
.wc-post-viewer{box-sizing:border-box;align-items:center;justify-items:center}
.wc-post-viewer-dialog{height:min(90dvh,860px);max-height:90dvh;min-height:0;display:flex;flex-direction:column;justify-content:flex-start!important;gap:0!important;padding:0!important;overflow:hidden}
.wc-post-viewer-header{position:relative;top:auto;flex:0 0 auto;min-height:56px;box-sizing:border-box;margin:0!important;padding:12px 20px!important;z-index:2}
.wc-post-viewer-scroll{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;overscroll-behavior:contain}
.wc-post-viewer-scroll .wc-post{width:100%;max-width:100%;box-sizing:border-box}
.wc-post-viewer-scroll .wc-post img{max-width:100%;height:auto}
.wc-post-viewer-footer{flex:0 0 auto;background:#fff;border-top:1px solid #e3ebe6;padding:12px 20px max(12px,env(safe-area-inset-bottom));z-index:3}
.wc-post-viewer-footer[hidden]{display:none!important}
.wc-post-viewer-footer .wc-comment-form{margin:0!important;padding:0!important;border:0!important;display:flex;flex-direction:column;gap:8px}
.wc-post-viewer-footer .wc-comment-form[hidden]{display:none!important}
.wc-post-viewer-footer textarea{display:block;width:100%;box-sizing:border-box;min-height:42px;height:42px;max-height:130px;overflow-y:auto;resize:none;border-radius:18px;outline-offset:2px}
.wc-post-viewer-footer .wc-comment-form-actions{display:flex;justify-content:flex-end;align-items:center;margin:0!important}
.wc-post-viewer-footer .wc-comment-form-actions button[type=submit]{white-space:nowrap}
.wc-post-in-viewer .wc-comments{padding-bottom:18px}
@media(max-width:640px){.wc-post-viewer-dialog{height:100dvh;max-height:100dvh;min-height:0;border-radius:0}.wc-post-viewer-header{min-height:54px;padding:10px 14px!important}.wc-post-viewer-footer{padding:10px 14px max(10px,env(safe-area-inset-bottom))}.wc-post-viewer-scroll{padding-bottom:0}}

.wc-feed-loading[hidden]{display:none!important}
.wc-skeleton-card{padding:22px;margin:16px 0;border-radius:18px;background:#fff;border:1px solid #e6ede8}
.wc-skeleton-line,.wc-skeleton-image{background:linear-gradient(100deg,#eef2ef 25%,#dfe9e2 40%,#eef2ef 60%);background-size:220% 100%;animation:wc-shimmer 1.4s ease-in-out infinite;border-radius:8px}
.wc-skeleton-line{height:16px;margin-bottom:12px;width:80%}.wc-skeleton-line.short{width:45%}.wc-skeleton-image{height:210px;margin-top:18px}
@keyframes wc-shimmer{to{background-position-x:-220%}}
.wc-post-enter{animation:wc-post-appear .35s ease-out both}
@keyframes wc-post-appear{from{opacity:.45;transform:translateY(10px)}to{opacity:1;transform:none}}
.wc-comments-more,.wc-load-retry{display:block;margin:14px auto;padding:10px 18px;border:1px solid #b8d9c5;border-radius:24px;background:#f2faf5;color:#176c3b;cursor:pointer;font-weight:600}
.wc-comment-skeleton{padding:18px;color:#789081;font-size:13px}
@media(prefers-reduced-motion:reduce){.wc-post-enter,.wc-skeleton-line,.wc-skeleton-image{animation:none}}


/* Replies belong to the comment content column, below its bubble and actions. */
.wc-comment-content > .wc-replies {
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  margin: 12px 0 0;
  padding-left: 12px;
}
.wc-comment-bubble strong {
  overflow-wrap: anywhere;
}
@media (max-width: 640px) {
  .wc-comment-content > .wc-replies {
    margin-left: 0;
    padding-left: 10px;
  }
}


/* Compact text-and-emoji composer, shared by the post and discussion footer. */
.wc-composer [hidden]{display:none!important}
.wc-post-viewer-footer .wc-comment-form.wc-composer,.wc-comment-form.wc-composer{display:flex;flex-direction:row;align-items:flex-start;gap:10px}
.wc-composer-avatar{flex:0 0 32px;padding-top:3px}.wc-composer-avatar .wc-avatar{width:32px;height:32px;flex-basis:32px;font-size:11px}
.wc-composer-box{position:relative;flex:1;min-width:0;background:#eff4f1;border-radius:20px;padding:8px 10px 5px;box-sizing:border-box}
.wc-composer-box:focus-within{box-shadow:0 0 0 2px #b4d6c0}
.wc-post-viewer-footer .wc-composer textarea,.wc-comment-form.wc-composer textarea{display:block;box-sizing:border-box;width:100%;min-height:36px;height:36px;max-height:112px;margin:0;padding:4px 4px 6px;background:transparent;border:0;border-radius:0;resize:none;box-shadow:none;outline:none;font:400 14px/1.5 Inter,Arial,sans-serif;color:#203d2d;overflow-wrap:anywhere}
.wc-composer textarea::placeholder{color:#6f8176}
.wc-composer-tools{display:flex;align-items:center;justify-content:space-between;gap:8px}
.wc-composer-tools button,.wc-composer-reply button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:7px;border:0;border-radius:50%;background:transparent;cursor:pointer;color:#697f71}
.wc-composer-tools svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.wc-composer-tools .wc-composer-send{color:#078347}.wc-composer-send svg{fill:currentColor;stroke-width:1.2}.wc-composer-tools .wc-composer-send:disabled{color:#abbab0;cursor:default;opacity:.7}
.wc-composer-tools button:hover:not(:disabled),.wc-composer-reply button:hover{background:#dfeae3}
.wc-composer :is(button):focus-visible{outline:2px solid #198a50;outline-offset:2px}
.wc-composer-reply{display:flex;align-items:center;justify-content:space-between;gap:8px}.wc-composer .wc-replying{margin:2px 4px 6px;font-size:12px;line-height:1.5;color:#376349;overflow-wrap:anywhere}.wc-composer-reply button{flex:none;width:30px;height:30px;font-size:21px}
.wc-emoji-picker{position:absolute;bottom:calc(100% + 8px);left:0;z-index:5;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;width:min(280px,calc(100vw - 80px));max-width:100%;box-sizing:border-box;padding:8px;background:#fff;border:1px solid #d7e5dc;border-radius:14px;box-shadow:0 8px 28px #143b2426}
.wc-emoji-picker button{border:0;background:transparent;min-height:36px;min-width:0;padding:3px;cursor:pointer;border-radius:8px;font-size:21px}.wc-emoji-picker button:hover{background:#eaf4ed}
.wc-composer-feedback{margin:0 4px;color:#526e5c;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.wc-composer-feedback:empty{display:none}
@media(max-width:640px){.wc-post-viewer{height:var(--wc-visible-height,100dvh);top:var(--wc-visible-top,0px);bottom:auto}.wc-post-viewer-dialog{height:100%;max-height:100%}.wc-post-viewer-footer .wc-comment-form.wc-composer{gap:8px}.wc-post-viewer-footer .wc-composer textarea{font-size:16px}.wc-composer-avatar,.wc-composer-avatar .wc-avatar{width:30px;flex-basis:30px}.wc-composer-avatar .wc-avatar{height:30px}}

/* Keep member photos square before circular clipping, including inside the viewer. */
.wc-comment > .wc-avatar,
.wc-composer-avatar > .wc-avatar {
  --wc-photo-size: 38px;
  display: flex;
  flex: 0 0 var(--wc-photo-size);
  width: var(--wc-photo-size);
  height: var(--wc-photo-size);
  min-width: var(--wc-photo-size);
  max-width: var(--wc-photo-size);
  min-height: var(--wc-photo-size);
  max-height: var(--wc-photo-size);
  box-sizing: border-box;
  border-radius: 50%;
  overflow: hidden;
}
.wc-comment-reply > .wc-avatar { --wc-photo-size: 30px; }
.wc-composer-avatar > .wc-avatar { --wc-photo-size: 32px; }
.wc-comment > .wc-avatar > img,
.wc-composer-avatar > .wc-avatar > img {
  display: block;
  flex: none;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: inherit;
}
@media (max-width: 640px) {
  .wc-composer-avatar > .wc-avatar { --wc-photo-size: 30px; }
}
