/* R8.4.6 final UI correction. Scope every override to a named runtime surface. */

/* Remove legacy heading ornaments at their shared source while preserving semantic icons. */
body:not(.is-admin-area):not(.is-staff-area):is(
  .page-login,
  .page-safety-guide,
  .page-mypage,
  .page-settings,
  .page-messages,
  .page-members,
  .page-app-mypage,
  .page-app-settings
) :is(.eyebrow, .koirea-page-header__eyebrow, .v721-kicker)::before,
body:not(.is-admin-area):not(.is-staff-area):is(
  .page-login,
  .page-safety-guide,
  .page-mypage,
  .page-settings,
  .page-messages,
  .page-members,
  .page-app-mypage,
  .page-app-settings
) :is(.eyebrow, .koirea-page-header__eyebrow, .v721-kicker)::after {
  content: none !important;
  display: none !important;
}

body:not(.is-admin-area):not(.is-staff-area):is(
  .page-login,
  .page-safety-guide,
  .page-mypage,
  .page-settings,
  .page-messages,
  .page-members,
  .page-app-mypage,
  .page-app-settings
) :is(.eyebrow, .koirea-page-header__eyebrow, .v721-kicker) {
  border: 0 !important;
  padding-inline-start: 0 !important;
  text-indent: 0 !important;
}

.koirea-ui-icon {display: block;width: 1.35rem;height: 1.35rem;stroke-linecap: round;stroke-linejoin: round;}.koirea-ui-icon:not([data-button-role] *){fill: none;stroke: currentColor;stroke-width: 1.8;}

/* Web My Page */
body.page-mypage .v132-mypage-overview {
  display: grid !important;
  grid-template-columns: minmax(210px, .72fr) minmax(0, 2.28fr) !important;
  gap: 22px !important;
  align-items: center !important;
  width: 100%;
  padding: 22px !important;
  border-radius: 8px !important;
}

body.page-mypage .v132-mypage-overview .v915-mypage-profile {
  min-width: 0;
}

body.page-mypage .v132-mypage-label {
  display: inline-block;
  margin-bottom: 5px;
  color: #455064;
  font-size: 13px;
  font-weight: 800;
}

body.page-mypage .v132-mypage-overview .v915-mypage-status {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100%;
}

body.page-mypage .v132-mypage-overview .v915-mypage-status article {
  min-width: 0;
  min-height: 76px;
  padding: 12px 8px !important;
  border: 1px solid #eadfdc !important;
  border-radius: 8px !important;
  background: #fffdfc !important;
  text-align: center;
}

body.page-mypage .v132-mypage-overview .v915-mypage-status span {
  font-size: 12px !important;
}

body.page-mypage .v132-mypage-overview .v915-mypage-status strong {
  margin-top: 5px;
  color: #e95f61;
  font-size: 19px !important;
  overflow-wrap: anywhere;
}

body.page-mypage .v132-mypage-quick-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 14px 0;
  border: 1px solid #eadfdc;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(32, 24, 26, .06);
  overflow: hidden;
}

body.page-mypage .v132-mypage-quick-grid > a {
  position: relative;
  display: grid;
  place-items: center;
  gap: 7px;
  min-height: 92px;
  padding: 13px 8px;
  border-right: 1px solid #eee5e2;
  border-bottom: 1px solid #eee5e2;
  color: #17233d;
  text-align: center;
  text-decoration: none;
}

body.page-mypage .v132-mypage-quick-grid > a:nth-child(4n) { border-right: 0; }
body.page-mypage .v132-mypage-quick-grid > a:nth-last-child(-n + 4) { border-bottom: 0; }
body.page-mypage .v132-mypage-quick-grid > a:hover,
body.page-mypage .v132-mypage-quick-grid > a:focus-visible { background: #fff7f5; }
body.page-mypage .v132-mypage-quick-grid i { color: #152644; }
body.page-mypage .v132-mypage-quick-grid i .koirea-ui-icon { width: 29px; height: 29px; }
body.page-mypage .v132-mypage-quick-grid strong { font-size: 14px; }
body.page-mypage .v132-mypage-quick-grid > a > span {
  position: absolute;
  top: 10px;
  right: calc(50% - 28px);
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  border-radius: 999px;
  background: #ef6665;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  line-height: 20px;
}

body.page-mypage .v104-mission-panel {
  margin: 14px 0 !important;
  padding: 18px !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(32, 24, 26, .05) !important;
}

body.page-mypage .v104-mission-panel .eyebrow {
  margin: 0 0 3px !important;
  color: #17233d !important;
  letter-spacing: 0 !important;
}

body.page-mypage .v132-mypage-media-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
  gap: 14px;
  align-items: start;
  margin-block: 14px;
}

body.page-mypage .v132-mypage-media-grid > section {
  min-width: 0;
  margin: 0 !important;
  border-radius: 8px !important;
}

body.page-mypage .v132-mypage-media-grid .v64-photo-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.page-mypage .v64-quick-profile,
body.page-mypage .v42-home-head,
body.page-mypage .v43-home-stats,
body.page-mypage .v54-account-panel {
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(32, 24, 26, .05) !important;
}

/* Superseded duplicate panels are removed from the rendered information hierarchy. */
body.page-mypage :is(
  .v9735-start-dash-panel,
  .v916-koirea-steps,
  .v806-mypage-beta-coop,
  .v42-action-cards,
  .v43-next-panel,
  .v42-main-menu,
  .v42-card
) { display: none !important; }

body.page-mypage .v43-home-stats {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  overflow: hidden;
}

body.page-mypage .v43-home-stats > a {
  min-height: 78px !important;
  border-right: 1px solid #eee5e2 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Web Settings */
body.page-settings .v132-settings-head {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 22px !important;
  border: 1px solid #eadfdc !important;
  border-radius: 8px !important;
  background: #fff !important;
}

body.page-settings .v132-settings-head-icon {
  display: grid;
  place-items: center;
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: #fff0ed;
  color: #172b4d;
}

body.page-settings .v132-settings-head-icon .koirea-ui-icon { width: 38px; height: 38px; }
body.page-settings .v132-settings-head .koirea-page-header__title { margin: 0 0 5px !important; }

body.page-settings .v132-account-status {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  padding: 18px !important;
  border-radius: 8px !important;
}

body.page-settings .v132-account-status .v127-account-status-head { grid-column: 1 / -1; }
body.page-settings .v132-account-status .v127-account-status-head > span { display: none !important; }
body.page-settings .v132-account-status .v127-account-status-row {
  min-height: 64px !important;
  padding: 10px 12px !important;
  border: 1px solid #eee3df !important;
  border-radius: 8px !important;
  background: #fffdfc !important;
}

body.page-settings .v132-account-status .v127-account-status-row strong::before,
body.page-settings .v132-account-status .v127-account-status-row strong::after {
  content: none !important;
  display: none !important;
}

body.page-settings .v132-account-status .v127-account-status-row strong {
  padding-inline-start: 0 !important;
}

body.page-settings .v132-settings-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .75fr) !important;
  gap: 14px !important;
  align-items: start !important;
}

body.page-settings .v132-settings-layout > article {
  margin: 0 !important;
  padding: 18px !important;
  border-radius: 8px !important;
}

body.page-settings .v126-settings-group {
  margin-top: 10px !important;
  border: 1px solid #eadfdc !important;
  border-radius: 8px !important;
  overflow: hidden;
}

body.page-settings .v126-settings-group > summary {
  min-height: 54px !important;
  padding: 12px 14px !important;
  list-style: none !important;
}

body.page-settings .v126-settings-group > summary::marker,
body.page-settings .v126-settings-group > summary::-webkit-details-marker { display: none !important; content: none !important; }

body.page-settings .v610-settings-menu > :is(a, button) {
  min-height: 58px !important;
  padding: 11px 8px !important;
}

body.page-settings .v610-settings-menu .v132-management-link {
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 10px !important;
  padding: 12px !important;
}

body.page-settings .v132-management-link > i {
  grid-row: 1 / span 2;
  align-self: center;
  color: #172b4d;
}

body.page-settings .v132-management-link > strong,
body.page-settings .v132-management-link > span { grid-column: 2; }
body.page-settings .v819-settings-bug-report-card {
  border-radius: 8px !important;
  box-shadow: none !important;
}

/* Compact Search list only. Existing two- and three-column contracts remain unchanged. */
@media (min-width: 761px) {
  body.page-members .v103-member-list.is-layout-list > .v128c-member-card.v00090-member-row {
    grid-template-columns: 136px minmax(0, 1fr) 146px !important;
    grid-template-rows: minmax(148px, auto) !important;
    gap: 14px !important;
    min-height: 0 !important;
    padding: 11px !important;
  }

  body.page-members .v103-member-list.is-layout-list > .v128c-member-card > .v639-member-photo {
    width: 136px !important;
    min-width: 136px !important;
    max-width: 136px !important;
    height: 148px !important;
    min-height: 148px !important;
    aspect-ratio: 1 / 1 !important;
  }

  body.page-members .v103-member-list.is-layout-list > .v128c-member-card > .v639-member-main {
    align-self: center !important;
    padding: 0 !important;
  }

  body.page-members .v103-member-list.is-layout-list > .v128c-member-card > .v639-member-actions {
    align-self: center !important;
    gap: 7px !important;
  }
}

/* Message list controls wrap instead of disappearing. Row moderation remains in chat detail. */
body.page-messages .v787-message-page-head {
  align-items: flex-end !important;
  gap: 14px !important;
}

body.page-messages .v863-message-view-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 7px !important;
  max-width: 620px;
}

body.page-messages .v863-message-view-actions > .button { display: inline-flex !important;
  width: auto !important;

  padding-inline: 12px !important; }
body.page-messages .v863-message-view-actions > .button:where(:not(body.koirea-member-web :is([data-button-role],[data-member-control]))) { min-height: 38px !important; }

body.page-messages .v878-simple-pin-button .koirea-ui-icon {
  width: 17px;
  height: 17px;
}

/* Public login */
body.page-login .v721-auth-screen {
  align-items: start !important;
  gap: 28px !important;
}

body.page-login .v721-auth-copy,
body.page-login .v721-auth-card {
  border-radius: 8px !important;
}

body.page-login .v721-auth-copy > h1 { margin-top: 0 !important; }
body.page-login .v721-auth-note { border-left: 0 !important; }

/* App My Page and Settings */
body.koirea-app-body:is(.page-app-mypage, .page-app-settings) .koirea-app-main {
  padding-inline: 12px !important;
}

body.koirea-app-body .v132-app-profile-card,
body.koirea-app-body .v132-app-progress-card,
body.koirea-app-body .v132-app-media-actions,
body.koirea-app-body .v132-app-settings-group {
  border-radius: 8px !important;
  box-shadow: 0 8px 22px rgba(18, 31, 52, .06) !important;
}

body.koirea-app-body .v132-app-media-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

body.koirea-app-body .v132-app-media-actions > a {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  min-height: 72px;
  padding: 11px;
  border: 1px solid var(--app-line, #eadfdc);
  border-radius: 8px;
  background: #fff;
  color: var(--app-navy, #172b4d);
  text-decoration: none;
}

body.koirea-app-body .v132-app-media-actions span,
body.koirea-app-body .v132-app-action-list a > span,
body.koirea-app-body .v132-app-settings-group a > span {
  display: grid;
  min-width: 0;
  gap: 3px;
}

body.koirea-app-body .v132-app-media-actions small,
body.koirea-app-body .v132-app-action-list small,
body.koirea-app-body .v132-app-settings-group small {
  color: var(--app-muted, #667085);
  font-size: 11px;
  line-height: 1.45;
}

body.koirea-app-body .v132-app-action-list > a {
  display: grid !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 68px !important;
  padding: 12px 14px !important;
}

body.koirea-app-body .v132-app-action-list > a > i {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

body.koirea-app-body .v132-app-action-list > a > span {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: auto !important;
  min-width: 0 !important;
}

body.koirea-app-body .v132-app-action-list > a strong,
body.koirea-app-body .v132-app-action-list > a small {
  grid-column: auto !important;
  width: auto !important;
  writing-mode: horizontal-tb !important;
}

body.koirea-app-body .v132-app-action-list > a::after { content: none !important; display: none !important; }

body.koirea-app-body .v132-app-settings-head > div > p {
  margin: 5px 0 0;
  color: var(--app-muted, #667085);
  font-size: 12px;
  font-weight: 700;
}

body.koirea-app-body .v132-app-settings-group {
  margin-top: 10px;
  overflow: hidden;
  border: 1px solid var(--app-line, #eadfdc);
  background: #fff;
}

body.koirea-app-body .v132-app-settings-group h2 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  padding: 12px 13px;
  border-bottom: 1px solid var(--app-line, #eadfdc);
  color: var(--app-navy, #172b4d);
  font-size: 15px;
}

body.koirea-app-body .v132-app-settings-group > a {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 58px;
  padding: 9px 13px;
  border-bottom: 1px solid var(--app-line, #eadfdc);
  color: var(--app-navy, #172b4d);
  text-decoration: none;
}

body.koirea-app-body .v132-app-settings-group > a:last-child { border-bottom: 0; }
body.koirea-app-body .v132-online-dot {
  justify-self: center;
  width: 14px;
  height: 14px;
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px #cbd5df;
}
body.koirea-app-body .v132-online-dot.is-on { background: #21a366; }
body.koirea-app-body .v132-online-dot.is-off { background: #98a2b3; }

/* TOP: refine only the supplied blue-marked composition around unchanged people imagery. */
@media (min-width: 980px) {
  body.page-home .k33-home .v140-hero-grid {
    grid-template-columns: minmax(420px, .88fr) minmax(560px, 1.12fr) !important;
    gap: 22px !important;
    align-items: center !important;
  }

  body.page-home .k33-home .v140-hero-copy {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    min-width: 0;
  }

  body.page-home .k33-home .v141-hero-title { order: 1; }
  body.page-home .k33-home .v129-hero-bubble { order: 2; margin-top: 18px !important; }
  body.page-home .k33-home .k33-hero-lead { order: 3; }
  body.page-home .k33-home .k33-purpose-row { order: 4; }
  body.page-home .k33-home .k33-hero-actions { order: 5; }
  body.page-home .k33-home .v129-hero-age-note { order: 6; }
  body.page-home .k33-home .v162-gender-route-switch { order: 7; }
  body.page-home .k33-home .v135-hero-price-note { order: 8; }
  body.page-home .k33-home .v129-hero-trust { order: 9; width: 100% !important; }
  body.page-home .k33-home .v129-reasons-grid > article { min-height: 220px !important; }
}

@media (max-width: 760px) {
  body.page-mypage .v132-mypage-overview {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    padding: 14px !important;
  }

  body.page-mypage .v132-mypage-overview .v915-mypage-status {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.page-mypage .v132-mypage-overview .v915-mypage-status article:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  body.page-mypage .v132-mypage-quick-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-mypage .v132-mypage-quick-grid > a:nth-child(4n) { border-right: 1px solid #eee5e2; }
  body.page-mypage .v132-mypage-quick-grid > a:nth-child(2n) { border-right: 0; }
  body.page-mypage .v132-mypage-quick-grid > a:nth-last-child(-n + 4) { border-bottom: 1px solid #eee5e2; }
  body.page-mypage .v132-mypage-quick-grid > a:nth-last-child(-n + 2) { border-bottom: 0; }
  body.page-mypage .v132-mypage-media-grid { grid-template-columns: 1fr; }
  body.page-mypage .v132-mypage-media-grid .v64-photo-grid { grid-template-columns: 1fr !important; }
  body.page-mypage .v43-home-stats { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }

  body.page-settings .v132-settings-head { padding: 16px !important; }
  body.page-settings .v132-settings-head-icon { flex-basis: 54px; width: 54px; height: 54px; }
  body.page-settings .v132-settings-head-icon .koirea-ui-icon { width: 30px; height: 30px; }
  body.page-settings .v132-account-status { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; padding: 12px !important; }
  body.page-settings .v132-settings-layout { grid-template-columns: 1fr !important; }

  body.page-members .v103-member-list.is-layout-list > .v128c-member-card.v00090-member-row {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 10px !important;
    min-height: 0 !important;
    padding: 10px !important;
  }
  body.page-members .v103-member-list.is-layout-list > .v128c-member-card > .v639-member-photo {
    width: 92px !important;
    min-width: 92px !important;
    height: 108px !important;
    min-height: 108px !important;
    aspect-ratio: 4 / 5 !important;
  }
  body.page-members .v103-member-list.is-layout-list > .v128c-member-card > .v639-member-main {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  body.page-members .v103-member-list.is-layout-list > .v128c-member-card > .v639-member-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.page-messages .v787-message-page-head { align-items: stretch !important; }
  body.page-messages .v863-message-view-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    max-width: none;
  }
  body.page-messages .v863-message-view-actions > .button {width: 100% !important;padding-inline: 8px !important;}body.page-messages .v863-message-view-actions > .button:not([data-button-role]){font-size: 12px !important;}
  body.koirea-app-body .v132-app-media-actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-mypage .v132-mypage-quick-grid > a,
  body.koirea-app-body .v132-app-settings-group > a { transition: none !important; }
}
