/* Provider buttons have a separate brand owner; approved official artwork. */
/* Shared supporting text and informational badges keep their own readable ink. */
html body.v00100-ui :is(.app-footer,.site-footer) :is(a,span,small) { color: #59677d !important; }
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button {
  position: relative; display: flex; align-items: center; justify-content: center;
  gap: 12px; min-height: 48px; padding: 12px; border-radius: 10px;
  font-size: 14px; line-height: 20px; font-weight: 500; box-shadow: none;
}
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button::before,
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button::after { content: none; }
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button.is-google { background: #fff; color: #1f1f1f; border: 1px solid #747775; }
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button.is-apple { background: #000; color: #fff; border: 1px solid #000; }
.v856-social-button .ui2-provider-logo { width: 20px; height: 20px; object-fit: contain; flex: 0 0 20px; }
.v856-social-button.is-apple .ui2-provider-logo { width: 32px; height: 32px; flex-basis: 32px; }
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button:hover { box-shadow: inset 0 0 0 999px rgba(128,128,128,.1); }
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button:focus-visible { outline: 3px solid #d9365d; outline-offset: 3px; }
html body.v00100-ui:not(.is-admin-area):not(.is-staff-area) .v856-social-button[aria-disabled="true"] { opacity: .5; cursor: not-allowed; }

/* Single owner for the approved dialog families. Native sheets keep showModal(). */
body [data-ui2-dialog-overlay] {
  position: fixed; inset: 0; z-index: 20000; display: grid; place-items: center;
  padding: max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));
  background: rgba(23,35,58,.48); backdrop-filter: blur(4px);
}
body [data-ui2-dialog-overlay][hidden] { display: none; }
body [data-ui2-dialog] {
  position: relative; inset: auto; margin: 0; width: min(520px,100%); max-width: 100%;
  max-height: calc(100dvh - 32px); overflow-y: auto; padding: 28px; box-sizing: border-box;
  border: 1px solid #eadfd8; border-radius: 20px; background: #fff; color: #17233a;
  box-shadow: 0 16px 48px rgba(23,35,58,.15); text-align: left;
}
body [data-ui2-dialog] :is(.v744-first-purchase-close,.ui2-recruitment-intro__close,.v916-point-confirm-close) {
  position: absolute; top: 12px; right: 12px; left: auto; width: 44px; height: 44px;
  min-height: 44px; min-width: 44px; padding: 12px;
}
body [data-ui2-dialog] :is(.v744-first-purchase-close,.ui2-recruitment-intro__close,.v916-point-confirm-close):where(:not(body.koirea-member-web [data-button-role])) {
  background: #fff;border: 1px solid #cbd2dd;border-radius: 10px;color: #17233a;
}
body [data-ui2-dialog] :is(.eyebrow,.ui2-dialog-eyebrow) { padding: 0 44px 0 0; margin: 0 0 10px; font-size: 12px; color: #d9365d; background: transparent; border: 0; border-radius: 0; }
body [data-ui2-dialog] h2 { margin: 0 40px 16px 0; font-size: 24px; line-height: 1.4; }
body [data-ui2-dialog] p:not(.eyebrow):not(.ui2-dialog-eyebrow) { margin: 0 0 20px; font-size: 14px; line-height: 1.85; color: #667085; }
body .v744-first-purchase-backdrop { position: absolute; inset: 0; background: transparent; }
body .v744-first-purchase-benefits { display: grid; grid-template-columns: 1fr 1fr; gap: 0; padding: 18px 0; margin: 20px 0; border-top: 1px solid #eadfd8; border-bottom: 1px solid #eadfd8; background: transparent; }
body .v744-first-purchase-benefits span { display: grid; place-items: center; padding: 0 10px; color: #17233a; border: 0; border-radius: 0; background: transparent; font-size: 18px; font-weight: 750; box-shadow: none; }
body .v744-first-purchase-benefits span+span { border-left: 1px solid #eadfd8; }
body :is(.v744-first-purchase-actions,.ui2-recruitment-intro__actions,.v916-point-confirm-actions) { display: grid; grid-template-columns: 1fr; gap: 10px; }
body :is(.v744-first-purchase-actions,.ui2-recruitment-intro__actions,.v916-point-confirm-actions) > * { width: 100%; min-height: 48px; }
body:not(.is-admin-area):not(.is-staff-area) :is(.native-page-head,.koirea-page-header,.v43-safety-shell) h1 { max-width: 100%; overflow-wrap: anywhere; font-size: clamp(26px,3vw,36px) !important; line-height: 1.4; }
body.page-mypage .koirea-page-header__title { display: block; font-size: clamp(24px,2.3vw,32px); overflow-wrap: anywhere; }
body.page-mypage .koirea-page-header__title small { display: inline-block; white-space: nowrap; margin-left: 8px; }
@media(max-width:430px) { body [data-ui2-dialog] { padding: 24px 20px; } body [data-ui2-dialog] h2 { font-size: 22px; } }
@media(prefers-reduced-motion:reduce) { [data-button-role],[data-ui2-dialog] { transition: none; animation: none; } }
/* Only compact controls identified in the approved audit receive a larger hit area.
 * Page layout and already-correct 48/56px controls are preserved. */
body:not(.is-admin-area):not(.is-staff-area) :is(.v00044-attachment-button,.v644-send-button,.v127-chat-overflow-trigger,.message-cancel,.v878-simple-pin-button,.koirea-official-rules__toggle,.koirea-app-like-button,[data-photo-move],[data-password-toggle],[data-post-a-mission-restore]),
body:not(.is-admin-area):not(.is-staff-area) :is(.r6-conversation-hint,.v639-mail-list-filter,.v878-simple-actions) button {
  min-height: 44px !important; min-width: 44px !important;
}
html body.v00100-ui.koirea-member-web.page-members .v639-member-actions :is(a,button).button,
html body.koirea-member-web.page-members :is(.v639-member-message-action,.v639-member-like-action,.v916-super-like-button):is(a,button),
html body.koirea-member-web.page-members :is(.v639-member-message-action,.v639-member-like-action) button { min-height: 44px !important; }
/* Existing mobile/app and inline legacy sizes have higher specificity than the compact group. */
html body.koirea-member-web.page-mypage .v64-photo-grid .v127-photo-order-actions button[data-photo-move],
html body.v886-chat-page .message-chat-list-tabs button[data-chat-list-filter],
body:not(.is-admin-area):not(.is-staff-area) :is(.v140-template-modal-card > header > button,.v00044-camera-capture-head > button) { min-height:44px !important; min-width:44px !important; }
/* Current filter summaries can include long canonical labels and never constrain result cards. */
body :is(.koirea-search-current-filters,.ui2b-notification-copy) { overflow-wrap: anywhere; }
body .koirea-search-current-filters { margin: 8px 0 12px; color: var(--muted,#667085); font-size: 12px; line-height: 1.6; }
