/**
 * KR Premium Visual — Wave overlays (brand Violet 유지)
 * SSOT: docs/design-md/patterns/kr-premium-visual.md
 * Do NOT clone Toss blue / Kakao yellow / Airbnb Rausch.
 */
/* ── Wave 1: Guest funnel ─────────────────────────── */

/* Home — section density + info pyramid + quiet “더보기” */
.r26-section-head {
  margin-bottom: 12px;
  align-items: flex-end;
}
.r26-section-title {
  font-size: 19px;
  letter-spacing: -0.04em;
  line-height: 1.25;
}
.r26-section-subtitle {
  margin-top: 2px;
  font-size: 12px;
  font-weight: 500;
  color: var(--wh-tx3, #8b95a1);
}
.r26-section-more {
  color: var(--wh-tx2, #4e5968);
  font-weight: 600;
  font-size: 13px;
}
.r26-section-more:focus,
.r26-section-more:active {
  color: var(--wh-brand, #681DC7);
  opacity: 1;
  text-decoration: none;
}

/* Listing — photo-first · 가격 스캔 · meta 강등 */
.r26-prop-info {
  padding: 10px 12px 12px;
  gap: 2px;
}
.r26-prop-title {
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--wh-tx, #191f28);
}
.r26-prop-loc {
  color: var(--wh-tx3, #8b95a1);
  font-size: 12px;
}
.r26-prop-price-wrap {
  margin-top: 6px;
}
.r26-prop-price {
  font-weight: 800;
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
}
.r26-prop-price .unit,
.r26-prop-price .per {
  font-size: var(--wh-text-xs, 12px);
  font-weight: 500;
  color: var(--wh-tx3, #8b95a1);
  margin-left: 2px;
}

/* Badge — 단일 액센트, solid brand 과다 금지 */
.r26-badge {
  background: rgba(255, 255, 255, 0.96);
  color: var(--wh-tx, #191f28);
  border: 1px solid rgba(0, 0, 0, 0.06);
  font-weight: 600;
}
.r26-badge-superhost,
.r26-badge-instant {
  color: var(--wh-brand, #681DC7);
  border-color: rgba(104, 29, 199, 0.22);
}

/* Host CTA band — solid brand 1 */
.r26-host-cta-btn,
.r26-keep-promo-cta {
  background: var(--wh-brand, #681DC7) !important;
  color: #fff !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
  box-shadow: none !important;
}
.r26-keep-promo {
  border-radius: var(--wh-radius-md, 20px);
}

/* Search — canvas + chip quiet + price pyramid */
#search-main,
div#content.search-content {
  background: var(--wh-bg, #f2f4f6) !important;
}
.search-filter-chip,
.search-nav-pill {
  background: var(--wh-card, #fff) !important;
  border: 1px solid var(--wh-line, #e5e8eb) !important;
  color: var(--wh-tx2, #4e5968) !important;
  font-weight: 600;
}
.search-filter-chip.is-active,
.search-filter-chip[aria-pressed="true"],
.search-nav-pill.is-active {
  border-color: var(--wh-brand, #681DC7) !important;
  color: var(--wh-brand, #681DC7) !important;
  background: var(--wh-brand-tint, #F3EEFA) !important;
}
.mobile-search-submit,
.mobile_search_overlay .wh-search-go,
.mobile-search-overlay .search-submit {
  background: var(--wh-brand, #681DC7) !important;
  color: #fff !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
}
#result-count-text {
  font-size: 13px;
  font-weight: 600;
  color: var(--wh-tx2, #4e5968);
  letter-spacing: -0.02em;
}

html.search-force-desktop-ui body,
html.search-force-desktop-ui #search-main {
  background: var(--wh-bg, #f2f4f6) !important;
}
html.search-force-desktop-ui .prop-list-item-title {
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--wh-tx, #191f28);
}
html.search-force-desktop-ui .prop-list-item-price {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
html.search-force-desktop-ui .prop-list-item-loc,
html.search-force-desktop-ui .prop-list-item-meta {
  color: var(--wh-tx3, #8b95a1);
  font-size: 12px;
}

/* Room detail — title pyramid + sticky CTA solid */
#rm-wrap {
  background: var(--wh-bg, #f2f4f6);
}
.rm-title {
  font-family: var(--wh-ff-display, var(--wh-ff));
  font-weight: 800;
  letter-spacing: -0.04em;
  color: var(--wh-tx, #191f28);
}
.rm-specs-row,
.rm-trust-sub {
  color: var(--wh-tx3, #8b95a1);
  font-size: 13px;
  font-weight: 500;
}
.rm-sec-tabs {
  background: var(--wh-card, #fff);
  border-bottom: 1px solid var(--wh-line, #e5e8eb);
}
.rm-sec-tab {
  color: var(--wh-tx3, #8b95a1);
  font-weight: 600;
}
.rm-sec-tab.is-active {
  color: var(--wh-tx, #191f28);
  box-shadow: inset 0 -2px 0 var(--wh-brand, #681DC7);
  background: transparent;
}
.rm-book-btn,
.rm-bottom .rm-book-btn {
  background: var(--wh-brand, #681DC7) !important;
  color: #fff !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
  font-weight: 700;
  box-shadow: none !important;
}
.rm-bottom-price {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.03em;
}
.rm-bottom-per,
.rm-total-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--wh-tx3, #8b95a1);
}
.rm-desc-title,
.rm-amen-title,
.rm-review-title {
  font-family: var(--wh-ff-display, var(--wh-ff));
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.03em;
  margin-bottom: 10px;
}

/* Book — form density + single CTA */
#content.book.reservation {
  background: var(--wh-bg, #f2f4f6);
}
.pay-card {
  border-radius: var(--wh-radius-md, 20px);
  border: 1px solid var(--wh-line, #e5e8eb);
  box-shadow: var(--wh-shadow-listing, 0 0 0 1px rgba(0, 0, 0, 0.02), 0 2px 6px rgba(0, 0, 0, 0.04));
  margin-bottom: 10px;
}
.pay-card-title {
  font-size: 12px;
  font-weight: 700;
  color: var(--wh-tx3, #8b95a1);
  letter-spacing: -0.02em;
  margin-bottom: 10px;
}
.prop-title {
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--wh-tx, #191f28);
}
.prop-location {
  font-size: 12px;
  color: var(--wh-tx3, #8b95a1);
}
.pay-btn,
.pay-sticky .pay-btn {
  background: var(--wh-brand, #681DC7) !important;
  color: #fff !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
  font-weight: 700;
  box-shadow: none !important;
}
button.btn_coupon_select {
  background: transparent !important;
  border: 1px dashed var(--wh-line, #e5e8eb) !important;
  color: var(--wh-tx2, #4e5968) !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
}

/* Book done — soft canvas hero + soft-round CTA (pill 폐기) */
body .book-done-m-body,
#content.book_result {
  background: var(--wh-bg, #f2f4f6);
}
.book-done-m-hero {
  background: var(--wh-brand, #681DC7) !important;
  border-radius: 0 0 var(--wh-radius-lg, 24px) var(--wh-radius-lg, 24px);
  padding: 96px 24px 28px;
}
.book-done-m-hero h1 {
  font-family: var(--wh-ff-display, var(--wh-ff));
  font-weight: 800;
  letter-spacing: -0.04em;
}
.book-done-m-card {
  border-radius: var(--wh-radius-md, 20px);
  border: 1px solid var(--wh-line, #e5e8eb);
  box-shadow: var(--wh-shadow-listing, 0 0 0 1px rgba(0, 0, 0, 0.02), 0 2px 6px rgba(0, 0, 0, 0.04));
}
.book-done-m-card-header {
  font-size: 12px;
  font-weight: 700;
  color: var(--wh-tx3, #8b95a1);
  letter-spacing: -0.02em;
}
.book-done-m-card-label {
  color: var(--wh-tx3, #8b95a1);
}
.book-done-m-card-value {
  font-weight: 700;
  color: var(--wh-tx, #191f28);
  letter-spacing: -0.02em;
}
.book-done-m-bottom-btn,
.book-done-btn {
  background: var(--wh-brand, #681DC7) !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
  box-shadow: none !important;
  background-image: none !important;
}

/* ── Wave 2: Host tools ───────────────────────────── */
html.edit-force-desktop-ui .er-page,
html.edit-force-desktop-ui .er-main {
  background: var(--wh-bg, #f2f4f6);
}
html.edit-force-desktop-ui .er-section-title,
html.edit-force-desktop-ui .er-group-title {
  font-family: var(--wh-ff-display, var(--wh-ff));
  font-weight: 800;
  letter-spacing: -0.03em;
  font-size: 18px;
  color: var(--wh-tx, #191f28);
}
html.edit-force-desktop-ui .er-section-desc,
html.edit-force-desktop-ui .er-hint {
  font-size: 13px;
  color: var(--wh-tx3, #8b95a1);
  font-weight: 500;
}
html.edit-force-desktop-ui .er-save-btn,
html.edit-force-desktop-ui .er-sticky-save .er-save-btn {
  background: var(--wh-brand, #681DC7) !important;
  color: #fff !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: 44px;
  font-weight: 700;
  box-shadow: none !important;
}
html.edit-force-desktop-ui .er-lang-tab.on {
  color: var(--wh-tx, #191f28);
  box-shadow: inset 0 -2px 0 var(--wh-brand, #681DC7);
  background: transparent !important;
}

/* Hosting dashboard / create */
html.sp-force-desktop-ui .host-list-wrap,
html.sp-force-desktop-ui #content.hosting,
html.sp-force-desktop-ui .listing-create-wrap {
  background: var(--wh-bg, #f2f4f6);
}
html.sp-force-desktop-ui .hosting-kpi-card,
html.sp-force-desktop-ui .host-stat-card {
  border-radius: var(--wh-radius-md, 20px);
  border: 1px solid var(--wh-line, #e5e8eb);
  box-shadow: var(--wh-shadow-listing, 0 0 0 1px rgba(0, 0, 0, 0.02), 0 2px 6px rgba(0, 0, 0, 0.04));
  background: var(--wh-card, #fff);
}
html.sp-force-desktop-ui .hosting-kpi-value,
html.sp-force-desktop-ui .host-stat-value {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
  color: var(--wh-tx, #191f28);
}
html.sp-force-desktop-ui .hosting-kpi-label,
html.sp-force-desktop-ui .host-stat-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--wh-tx3, #8b95a1);
}
.listing-create-wrap .lc-cta,
.listing-create-wrap .btn-primary,
html.sp-force-desktop-ui .hosting-primary-cta {
  background: var(--wh-brand, #681DC7) !important;
  color: #fff !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
  font-weight: 700;
  box-shadow: none !important;
}

/* ── Wave 3: Account · auth · social ──────────────── */
html.sp-force-desktop-ui #content.acc-wrap,
html.sp-force-desktop-ui #content.edit-profile,
html.sp-force-desktop-ui #content.pt-page,
html.sp-force-desktop-ui #content.account,
html.sp-force-desktop-ui .account-page,
html.sp-force-desktop-ui .wh-sp-shell,
.account-common,
#content.login,
#content.signup {
  background: var(--wh-bg, #f2f4f6);
}
/* 실제 계정 허브 카드 (account_common .acc-* / points .pt-*) */
.acc-profile-card,
.acc-card,
.acc-channeltalk,
.account-hub-card,
.account-menu-card,
.pt-card,
.pt-balance-card,
.wish-card {
  border-radius: var(--wh-radius-md, 20px);
  border: 1px solid var(--wh-line, #e5e8eb);
  background: var(--wh-card, #fff);
  box-shadow: var(--wh-shadow-listing, 0 0 0 1px rgba(0, 0, 0, 0.02), 0 2px 6px rgba(0, 0, 0, 0.04));
}
.acc-info .acc-name,
.account-hub-title,
.wh-sp-dt-page-head h1,
.sp-dt-page-title {
  font-family: var(--wh-ff-display, var(--wh-ff));
  font-weight: 800;
  letter-spacing: -0.04em;
  color: var(--wh-tx, #191f28);
}
.acc-section-label {
  font-family: var(--wh-ff-display, var(--wh-ff));
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--wh-tx3, #8b95a1);
}
.account-hub-desc,
.wh-sp-dt-page-head p {
  font-size: 13px;
  color: var(--wh-tx3, #8b95a1);
  font-weight: 500;
}
#content.login .btn_submit,
#content.signup .btn_submit,
.login-form .btn-primary,
.auth-submit {
  background: var(--wh-brand, #681DC7) !important;
  color: #fff !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
  font-weight: 700;
  box-shadow: none !important;
}
.inbox-thread-title,
.itin-title {
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--wh-tx, #191f28);
}
.inbox-thread-meta,
.itin-meta {
  font-size: 12px;
  color: var(--wh-tx3, #8b95a1);
}

/* ── Wave 4: Admin /backend KR tone ───────────────── */
.mk-nav-outer,
.gh-kpi-row {
  --kr-admin-canvas: #f2f4f6;
}
.gh-kpi-row > div,
.na-grid > div,
.ga-grid > div,
.mk-stat-card {
  border-radius: 16px;
  border: 1px solid #e5e8eb;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}
.gh-kpi-row .num,
.gh-kpi-row .value,
.na-grid .num,
.ga-grid .num {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
  color: #191f28;
}
.gh-kpi-row .label,
.na-grid .label,
.ga-grid .label {
  font-size: 12px;
  font-weight: 600;
  color: #8b95a1;
}
.mk-tab.active {
  color: #191f28 !important;
  box-shadow: inset 0 -2px 0 #681DC7;
  background: transparent !important;
}
.an-tab.active {
  color: #191f28;
  box-shadow: inset 0 -2px 0 #681DC7;
  background: transparent !important;
}
.mk-btn-primary,
.gh-btn-primary,
button.btn-primary.mk-primary {
  background: #681DC7 !important;
  color: #fff !important;
  border-radius: 12px !important;
  font-weight: 700;
  box-shadow: none !important;
}

/* Listing create — step CTA */
.lc-next-btn {
  background: var(--wh-brand, #681DC7) !important;
  border-radius: var(--wh-radius-btn, 18px) !important;
  min-height: var(--wh-touch-cta, 48px);
  font-weight: 700;
  box-shadow: none !important;
}
.lc-input-label,
.lc-counter-group-title,
.lc-check-group-title {
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--wh-tx, #191f28);
}
.lc-input-hint,
.lc-address-hint {
  color: var(--wh-tx3, #8b95a1);
  font-size: 12px;
}
