/* =======================================================================
   Gold Apple · theme-detail-v3.css
   8개 상세페이지(buy/transfer/withdrawal/withdrawal_list/reward/member/rules/join) 공통 디자인 시스템.
   asset_list에서 검증된 패턴 일반화. PC + 모바일 native 패턴 동시 적용.
   - 베이지 배경 + 골드 액센트
   - 레거시 헤더(#header-wrap, #subNavi, lm-info) 강제 숨김 (.goldapple-topnav만 노출)
   - topgobtn 셀렉터 버그 fix (글로벌)
   - LoginNew-Wrap absolute 해제 + 박스 wrap (모바일 chip 정렬)
   - 검색 폼 .gonum 골드 input (asset_list 외 페이지)
   - 테이블 .table-01 카드형
   - 빈 상태 .ga-empty
   - mcont01 mobile padding (CTA 가림 방지 + safe-area)
   ========================================================================= */

/* === Page 식별 (page-* 8종 공통 적용) === */
body.skin-v2.page-buy,
body.skin-v2.page-transfer,
body.skin-v2.page-withdrawal,
body.skin-v2.page-withdrawal-list,
body.skin-v2.page-reward,
body.skin-v2.page-member,
body.skin-v2.page-rules,
body.skin-v2.page-join {
  background:
    radial-gradient(1200px 600px at 80% -10%, rgba(199,162,74,0.10), transparent 60%),
    radial-gradient(900px 500px at 10% 120%, rgba(199,162,74,0.06), transparent 60%),
    var(--paper, #f5efe0);
  font-family: 'Pretendard Variable', 'Pretendard', system-ui, sans-serif;
  color: var(--ink, #1a1208);
  letter-spacing: -0.01em;
}

/* === Floating Start Investing CTA — 로그인 후 페이지에선 숨김 === */
body.skin-v2.page-buy .ga-float-cta,
body.skin-v2.page-transfer .ga-float-cta,
body.skin-v2.page-withdrawal .ga-float-cta,
body.skin-v2.page-withdrawal-list .ga-float-cta,
body.skin-v2.page-reward .ga-float-cta,
body.skin-v2.page-member .ga-float-cta { display: none !important; }
/* join은 그 자체가 가입 페이지라 모바일 CTA 숨김 (폼 가림 critical fix) */
body.skin-v2.page-join .ga-float-cta { display: none !important; }
/* rules는 유지 (rules → join 유도) */

/* === Legacy 헤더 완전 숨김 (8 페이지 공통) === */
body.skin-v2.page-buy #header-wrap, body.skin-v2.page-buy #subNavi, body.skin-v2.page-buy .lm-info,
body.skin-v2.page-transfer #header-wrap, body.skin-v2.page-transfer #subNavi, body.skin-v2.page-transfer .lm-info,
body.skin-v2.page-withdrawal #header-wrap, body.skin-v2.page-withdrawal #subNavi, body.skin-v2.page-withdrawal .lm-info,
body.skin-v2.page-withdrawal-list #header-wrap, body.skin-v2.page-withdrawal-list #subNavi, body.skin-v2.page-withdrawal-list .lm-info,
body.skin-v2.page-reward #header-wrap, body.skin-v2.page-reward #subNavi, body.skin-v2.page-reward .lm-info,
body.skin-v2.page-member #header-wrap, body.skin-v2.page-member #subNavi, body.skin-v2.page-member .lm-info,
body.skin-v2.page-rules #header-wrap, body.skin-v2.page-rules #subNavi, body.skin-v2.page-rules .lm-info,
body.skin-v2.page-join #header-wrap, body.skin-v2.page-join #subNavi, body.skin-v2.page-join .lm-info { display: none !important; }

body.skin-v2.page-buy .NEW_NAV3, body.skin-v2.page-transfer .NEW_NAV3,
body.skin-v2.page-withdrawal .NEW_NAV3, body.skin-v2.page-withdrawal-list .NEW_NAV3,
body.skin-v2.page-reward .NEW_NAV3, body.skin-v2.page-member .NEW_NAV3,
body.skin-v2.page-rules .NEW_NAV3, body.skin-v2.page-join .NEW_NAV3,
body.skin-v2.page-buy .Top-intro, body.skin-v2.page-transfer .Top-intro,
body.skin-v2.page-withdrawal .Top-intro, body.skin-v2.page-withdrawal-list .Top-intro,
body.skin-v2.page-reward .Top-intro, body.skin-v2.page-member .Top-intro,
body.skin-v2.page-rules .Top-intro, body.skin-v2.page-join .Top-intro,
body.skin-v2.page-buy .language, body.skin-v2.page-transfer .language,
body.skin-v2.page-withdrawal .language, body.skin-v2.page-withdrawal-list .language,
body.skin-v2.page-reward .language, body.skin-v2.page-member .language,
body.skin-v2.page-rules .language, body.skin-v2.page-join .language { display: none !important; }

/* === topgobtn 셀렉터 버그 fix (img는 a의 자식이므로 descendant) === */
body.skin-v2 .mcont01 .topgobtn,
body.skin-v2 .mcont01 a:has(.topgobtn) { display: none !important; }

/* === mcont01 정리 (8 페이지 공통) === */
body.skin-v2.page-buy .mcont01,
body.skin-v2.page-transfer .mcont01,
body.skin-v2.page-withdrawal .mcont01,
body.skin-v2.page-withdrawal-list .mcont01,
body.skin-v2.page-reward .mcont01,
body.skin-v2.page-member .mcont01,
body.skin-v2.page-rules .mcont01,
body.skin-v2.page-join .mcont01 {
  font-family: 'Pretendard Variable', 'Pretendard', system-ui, sans-serif !important;
  color: var(--ink, #1a1208);
  padding: clamp(20px, 3vw, 40px) 0 0 !important;
  margin: 0 auto !important;
  max-width: 1440px !important;
  width: 96% !important;
}

/* === LoginNew-Wrap 정상화 (8 페이지 공통) === */
body.skin-v2.page-buy #doc .mcont01 > .LoginNew-Wrap,
body.skin-v2.page-transfer #doc .mcont01 > .LoginNew-Wrap,
body.skin-v2.page-withdrawal #doc .mcont01 > .LoginNew-Wrap,
body.skin-v2.page-withdrawal-list #doc .mcont01 > .LoginNew-Wrap,
body.skin-v2.page-reward #doc .mcont01 > .LoginNew-Wrap,
body.skin-v2.page-member #doc .mcont01 > .LoginNew-Wrap,
body.skin-v2.page-rules #doc .mcont01 > .LoginNew-Wrap,
body.skin-v2.page-join #doc .mcont01 > .LoginNew-Wrap {
  position: static !important;
  width: auto !important; top: auto !important; right: auto !important;
  margin: 0 0 18px !important; padding: 0 !important;
  display: flex !important;
  justify-content: flex-end !important;
  flex-wrap: wrap !important; gap: 8px !important;
}
body.skin-v2.page-buy #doc .mcont01 > .LoginNew-Wrap a,
body.skin-v2.page-transfer #doc .mcont01 > .LoginNew-Wrap a,
body.skin-v2.page-withdrawal #doc .mcont01 > .LoginNew-Wrap a,
body.skin-v2.page-withdrawal-list #doc .mcont01 > .LoginNew-Wrap a,
body.skin-v2.page-reward #doc .mcont01 > .LoginNew-Wrap a,
body.skin-v2.page-member #doc .mcont01 > .LoginNew-Wrap a,
body.skin-v2.page-rules #doc .mcont01 > .LoginNew-Wrap a,
body.skin-v2.page-join #doc .mcont01 > .LoginNew-Wrap a {
  position: static !important; float: none !important; width: auto !important;
  display: inline-flex !important; align-items: center !important;
  padding: 8px 14px !important; margin: 0 !important;
  border: 1px solid var(--line, #d3c7a7) !important;
  border-radius: 999px !important;
  background: transparent !important; background-image: none !important;
  color: var(--subink, #3a2f1a) !important;
  font-family: 'JetBrains Mono', ui-monospace, monospace !important;
  font-size: 11px !important; line-height: 1 !important;
  letter-spacing: 0.10em !important; text-transform: uppercase !important;
  text-decoration: none !important; text-align: center !important;
  transition: all 0.18s ease !important;
}
body.skin-v2.page-buy #doc .mcont01 > .LoginNew-Wrap a:hover,
body.skin-v2.page-transfer #doc .mcont01 > .LoginNew-Wrap a:hover,
body.skin-v2.page-withdrawal #doc .mcont01 > .LoginNew-Wrap a:hover,
body.skin-v2.page-withdrawal-list #doc .mcont01 > .LoginNew-Wrap a:hover,
body.skin-v2.page-reward #doc .mcont01 > .LoginNew-Wrap a:hover,
body.skin-v2.page-member #doc .mcont01 > .LoginNew-Wrap a:hover,
body.skin-v2.page-rules #doc .mcont01 > .LoginNew-Wrap a:hover,
body.skin-v2.page-join #doc .mcont01 > .LoginNew-Wrap a:hover {
  background: var(--ink, #1a1208) !important;
  color: #f5efe0 !important; border-color: var(--ink, #1a1208) !important;
}

/* === 페이지 hero 헤더 (.ga-dashboard-v3-head) — page-header-inject.js로 자동 주입 === */
body.skin-v2[class*="page-"] .ga-dashboard-v3-head {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 24px; padding: 0 4px 18px;
  border-bottom: 1px solid rgba(199,162,74,0.20);
  margin-bottom: 24px;
}
body.skin-v2[class*="page-"] .ga-dashboard-v3-head .eyebrow {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--gold-deep, #8c6b1f);
}
body.skin-v2[class*="page-"] .ga-dashboard-v3-head h2 {
  font-family: 'Cormorant Garamond', 'Playfair Display', serif;
  font-style: italic; font-weight: 500;
  font-size: clamp(28px, 3.4vw, 44px);
  color: var(--ink, #1a1208);
  margin: 6px 0 0; line-height: 1.05;
}
body.skin-v2[class*="page-"] .ga-dashboard-v3-head .meta {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px; letter-spacing: 0.10em; color: var(--subink, #3a2f1a);
  text-align: right; line-height: 1.6;
  display: flex; flex-direction: column; gap: 2px;
}
body.skin-v2[class*="page-"] .ga-dashboard-v3-head .meta-line { display: block; }
body.skin-v2[class*="page-"] .ga-dashboard-v3-head .meta b {
  color: var(--ink, #1a1208); font-weight: 600;
}

/* === 본문 콘텐츠 카드 wrapper (페이지별 form/list/section 자동 카드화) === */
body.skin-v2[class*="page-"]:not(.page-asset-list) #contents > div:not(.mcont01):not(.space20):not(.space30):not(.space50):not(.space_10):not(.space_20):not(.space_30):not(.line01):not(.line02),
body.skin-v2[class*="page-"]:not(.page-asset-list) .mcont01 + div,
body.skin-v2[class*="page-"]:not(.page-asset-list) .div-cont:has(form),
body.skin-v2[class*="page-"]:not(.page-asset-list) form.ga-section,
body.skin-v2[class*="page-"]:not(.page-asset-list) .gonum:not(.asset_list),
body.skin-v2[class*="page-"]:not(.page-asset-list) .mcont02,
body.skin-v2[class*="page-"]:not(.page-asset-list) .mcont03 {
  background: #fffaf0;
  border: 1px solid rgba(199,162,74,0.20);
  border-radius: 16px;
  padding: clamp(18px, 2.4vw, 32px);
  margin: 0 0 18px;
  position: relative;
  box-shadow: 0 1px 0 rgba(199,162,74,0.06), 0 24px 48px -28px rgba(58,47,26,0.18);
}
/* 2026-04-23: space20/space30 유틸 여백 div가 위 카드 규칙에 매치돼 빈 흰 pill 박스로 렌더되던 버그 — 배경/테두리 제거 강제 */
body.skin-v2[class*="page-"]:not(.page-asset-list) #contents > .space20,
body.skin-v2[class*="page-"]:not(.page-asset-list) #contents > .space30,
body.skin-v2[class*="page-"]:not(.page-asset-list) #contents > .space50 {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* === 페이지 헤더 (h2 + sub-title 통일 — 둥근 박스 래퍼) === */
body.skin-v2.page-buy .sub-title-02,
body.skin-v2.page-transfer .sub-title-02,
body.skin-v2.page-withdrawal .sub-title-02,
body.skin-v2.page-withdrawal-list .sub-title-02,
body.skin-v2.page-reward .sub-title-02,
body.skin-v2.page-member .sub-title-02,
body.skin-v2.page-rules .sub-title-02,
body.skin-v2.page-join .sub-title-02 {
  font-family: 'Cormorant Garamond', 'Playfair Display', serif !important;
  font-style: italic; font-weight: 500;
  font-size: clamp(22px, 2.4vw, 30px) !important;
  color: var(--ink, #1a1208) !important;
  margin: 0 0 24px !important;
  padding: 14px 22px !important;
  min-height: 60px;
  background: #fffaf0 !important;
  border: 1px solid rgba(199,162,74,0.25) !important;
  border-bottom: 1px solid rgba(199,162,74,0.25) !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 3px rgba(26,18,8,0.04);
  text-align: left !important;
  display: flex; align-items: center; justify-content: flex-start; gap: 14px;
}
body.skin-v2.page-buy .sub-title-02 b,
body.skin-v2.page-transfer .sub-title-02 b,
body.skin-v2.page-withdrawal .sub-title-02 b,
body.skin-v2.page-withdrawal-list .sub-title-02 b,
body.skin-v2.page-reward .sub-title-02 b,
body.skin-v2.page-member .sub-title-02 b,
body.skin-v2.page-rules .sub-title-02 b,
body.skin-v2.page-join .sub-title-02 b {
  font-weight: 500 !important; color: inherit !important;
}
body.skin-v2.page-buy .sub-title-02::before,
body.skin-v2.page-transfer .sub-title-02::before,
body.skin-v2.page-withdrawal .sub-title-02::before,
body.skin-v2.page-withdrawal-list .sub-title-02::before,
body.skin-v2.page-reward .sub-title-02::before,
body.skin-v2.page-member .sub-title-02::before,
body.skin-v2.page-rules .sub-title-02::before,
body.skin-v2.page-join .sub-title-02::before {
  content: "·"; color: var(--gold-deep, #8c6b1f); margin-right: 10px;
  font-style: normal; font-size: 1.2em;
}

/* === 폼 input/select 골드 톤 (.gonum 외 일반 .form-input 같은 류도) === */
body.skin-v2.page-buy input[type="text"],
body.skin-v2.page-buy input[type="number"],
body.skin-v2.page-buy input[type="password"],
body.skin-v2.page-buy input[type="email"],
body.skin-v2.page-buy select,
body.skin-v2.page-transfer input[type="text"],
body.skin-v2.page-transfer input[type="number"],
body.skin-v2.page-transfer input[type="password"],
body.skin-v2.page-transfer select,
body.skin-v2.page-withdrawal input[type="text"],
body.skin-v2.page-withdrawal input[type="number"],
body.skin-v2.page-withdrawal input[type="password"],
body.skin-v2.page-withdrawal select,
body.skin-v2.page-reward input[type="text"],
body.skin-v2.page-reward input[type="number"],
body.skin-v2.page-reward select,
body.skin-v2.page-member input[type="text"],
body.skin-v2.page-member input[type="email"],
body.skin-v2.page-member select,
body.skin-v2.page-join input[type="text"],
body.skin-v2.page-join input[type="email"],
body.skin-v2.page-join input[type="password"],
body.skin-v2.page-join select {
  padding: 11px 14px !important;
  border: 1px solid var(--line, #d3c7a7) !important;
  border-radius: 10px !important;
  background: #f5efe0 !important;
  color: var(--ink, #1a1208) !important;
  font-family: 'Pretendard Variable', 'Pretendard', system-ui, sans-serif !important;
  font-size: 14px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease !important;
}
body.skin-v2.page-buy input:focus, body.skin-v2.page-buy select:focus,
body.skin-v2.page-transfer input:focus, body.skin-v2.page-transfer select:focus,
body.skin-v2.page-withdrawal input:focus, body.skin-v2.page-withdrawal select:focus,
body.skin-v2.page-reward input:focus, body.skin-v2.page-reward select:focus,
body.skin-v2.page-member input:focus, body.skin-v2.page-member select:focus,
body.skin-v2.page-join input:focus, body.skin-v2.page-join select:focus {
  outline: none !important;
  border-color: var(--gold, #c7a24a) !important;
  box-shadow: 0 0 0 3px rgba(199,162,74,0.18) !important;
}

/* === 버튼 — 골드 primary CTA ===
   2026-04-21: .btn-confirm은 <div> 컨테이너이므로 background 직접 적용 시 자식 <a>와 ghost 박스 중첩 발생.
   컨테이너는 리셋하고 실제 버튼(.btn-confirm > a)에만 스타일 적용 */
body.skin-v2.page-buy .btn-confirm,
body.skin-v2.page-transfer .btn-confirm,
body.skin-v2.page-withdrawal .btn-confirm,
body.skin-v2.page-reward .btn-confirm,
body.skin-v2.page-member .btn-confirm,
body.skin-v2.page-join .btn-confirm {
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  height: auto !important;
  display: block !important;
  box-shadow: none !important;
}
body.skin-v2.page-buy .btn-primary, body.skin-v2.page-buy button[type="submit"], body.skin-v2.page-buy .btn-confirm > a,
body.skin-v2.page-transfer .btn-primary, body.skin-v2.page-transfer button[type="submit"], body.skin-v2.page-transfer .btn-confirm > a,
body.skin-v2.page-withdrawal .btn-primary, body.skin-v2.page-withdrawal button[type="submit"], body.skin-v2.page-withdrawal .btn-confirm > a,
body.skin-v2.page-reward .btn-primary, body.skin-v2.page-reward button[type="submit"], body.skin-v2.page-reward .btn-confirm > a,
body.skin-v2.page-member .btn-primary, body.skin-v2.page-member button[type="submit"], body.skin-v2.page-member .btn-confirm > a,
body.skin-v2.page-join .btn-primary, body.skin-v2.page-join button[type="submit"], body.skin-v2.page-join .btn-confirm > a {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  height: 44px !important; padding: 0 28px !important;
  background: linear-gradient(135deg, var(--gold-deep, #8c6b1f), var(--gold, #c7a24a)) !important;
  color: #1a1208 !important;
  border: 1px solid var(--gold-deep, #8c6b1f) !important;
  border-radius: 10px !important;
  font-family: 'JetBrains Mono', ui-monospace, monospace !important;
  font-size: 12px !important; font-weight: 600 !important;
  letter-spacing: 0.16em !important; text-transform: uppercase !important;
  text-decoration: none !important; cursor: pointer !important;
  transition: all 0.2s ease !important;
  width: auto !important;
  min-width: 120px !important;
  margin-top: 0 !important;
  box-shadow: none !important;
}
body.skin-v2.page-buy .btn-primary:hover, body.skin-v2.page-transfer .btn-primary:hover,
body.skin-v2.page-withdrawal .btn-primary:hover, body.skin-v2.page-reward .btn-primary:hover,
body.skin-v2.page-member .btn-primary:hover, body.skin-v2.page-join .btn-primary:hover {
  background: linear-gradient(135deg, var(--ink, #1a1208), #2a1d0c) !important;
  color: #f5efe0 !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 20px -8px rgba(26,18,8,0.5);
}

/* === 테이블 .table-01 카드형 === */
body.skin-v2.page-buy .table-01,
body.skin-v2.page-transfer .table-01,
body.skin-v2.page-withdrawal .table-01,
body.skin-v2.page-withdrawal-list .table-01,
body.skin-v2.page-reward .table-01,
body.skin-v2.page-member .table-01,
body.skin-v2.page-rules .table-01 {
  background: #fffaf0 !important;
  border: 1px solid rgba(199,162,74,0.20) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  margin: 0 0 32px !important;
}
body.skin-v2.page-buy .table-01 table,
body.skin-v2.page-transfer .table-01 table,
body.skin-v2.page-withdrawal .table-01 table,
body.skin-v2.page-withdrawal-list .table-01 table,
body.skin-v2.page-reward .table-01 table,
body.skin-v2.page-member .table-01 table,
body.skin-v2.page-rules .table-01 table {
  width: 100% !important; border-collapse: collapse !important; border: 0 !important;
  background: transparent !important;
}
body.skin-v2.page-buy .table-01 thead, body.skin-v2.page-transfer .table-01 thead,
body.skin-v2.page-withdrawal .table-01 thead, body.skin-v2.page-withdrawal-list .table-01 thead,
body.skin-v2.page-reward .table-01 thead, body.skin-v2.page-member .table-01 thead,
body.skin-v2.page-rules .table-01 thead {
  background: linear-gradient(180deg, rgba(199,162,74,0.10), rgba(199,162,74,0.04)) !important;
}
body.skin-v2.page-buy .table-01 thead td, body.skin-v2.page-transfer .table-01 thead td,
body.skin-v2.page-withdrawal .table-01 thead td, body.skin-v2.page-withdrawal-list .table-01 thead td,
body.skin-v2.page-reward .table-01 thead td, body.skin-v2.page-member .table-01 thead td,
body.skin-v2.page-rules .table-01 thead td,
body.skin-v2.page-buy .table-01 thead th, body.skin-v2.page-transfer .table-01 thead th,
body.skin-v2.page-withdrawal .table-01 thead th, body.skin-v2.page-withdrawal-list .table-01 thead th,
body.skin-v2.page-reward .table-01 thead th, body.skin-v2.page-member .table-01 thead th,
body.skin-v2.page-rules .table-01 thead th {
  font-family: 'JetBrains Mono', ui-monospace, monospace !important;
  font-size: 11px !important; font-weight: 600 !important;
  letter-spacing: 0.14em !important; text-transform: uppercase !important;
  color: var(--gold-deep, #8c6b1f) !important;
  padding: 16px 20px !important; border: 0 !important;
  border-bottom: 1px solid rgba(199,162,74,0.25) !important;
  text-align: center !important;
  vertical-align: middle !important;
}
body.skin-v2.page-buy .table-01 tbody td, body.skin-v2.page-transfer .table-01 tbody td,
body.skin-v2.page-withdrawal .table-01 tbody td, body.skin-v2.page-withdrawal-list .table-01 tbody td,
body.skin-v2.page-reward .table-01 tbody td, body.skin-v2.page-member .table-01 tbody td,
body.skin-v2.page-rules .table-01 tbody td {
  padding: 16px 20px !important; border: 0 !important;
  border-bottom: 1px solid rgba(199,162,74,0.10) !important;
  font-family: 'Pretendard Variable', 'Pretendard', system-ui, sans-serif !important;
  font-size: 14px !important; color: var(--ink, #1a1208) !important;
  background: transparent !important;
  text-align: center !important;
  vertical-align: middle !important;
}
body.skin-v2.page-buy .table-01 tbody tr:hover td,
body.skin-v2.page-transfer .table-01 tbody tr:hover td,
body.skin-v2.page-withdrawal .table-01 tbody tr:hover td,
body.skin-v2.page-withdrawal-list .table-01 tbody tr:hover td,
body.skin-v2.page-reward .table-01 tbody tr:hover td,
body.skin-v2.page-member .table-01 tbody tr:hover td,
body.skin-v2.page-rules .table-01 tbody tr:hover td {
  background: rgba(199,162,74,0.04) !important;
}

/* === 빈 상태 .ga-empty (asset_list와 동일) === */
.s-page-empty,
body.skin-v2 .ga-empty {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 50px 20px; gap: 0;
}
body.skin-v2 .ga-empty__icon { color: var(--gold-deep, #8c6b1f); opacity: 0.45; margin-bottom: 16px; }
body.skin-v2 .ga-empty__title {
  font-family: 'Cormorant Garamond', 'Playfair Display', serif;
  font-style: italic; font-weight: 500;
  font-size: clamp(20px, 2.4vw, 28px);
  color: var(--ink, #1a1208); margin-bottom: 8px;
}
body.skin-v2 .ga-empty__sub {
  font-family: 'Pretendard Variable', 'Pretendard', system-ui, sans-serif;
  font-size: 13px; color: rgba(58,47,26,0.62);
  margin-bottom: 18px; text-align: center;
}
body.skin-v2 .ga-empty__reset {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 10px 22px; min-height: 40px;
  border: 1px solid var(--gold-deep, #8c6b1f);
  background: transparent; color: var(--gold-deep, #8c6b1f);
  border-radius: 999px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
  cursor: pointer; transition: all 0.18s ease;
}
body.skin-v2 .ga-empty__reset:hover {
  background: var(--gold-deep, #8c6b1f); color: #f5efe0;
}

/* === 글로벌 nowrap 보강 — 모든 button/a/cta/submit/confirm 강제 줄바꿈 차단 (전 페이지) === */
body.skin-v2[class*="page-"] button,
body.skin-v2[class*="page-"] input[type="submit"],
body.skin-v2[class*="page-"] input[type="button"],
body.skin-v2[class*="page-"] a.btn,
body.skin-v2[class*="page-"] a.btn-confirm,
body.skin-v2[class*="page-"] .btn-confirm,
body.skin-v2[class*="page-"] .btn-primary,
body.skin-v2[class*="page-"] .btn-search a,
body.skin-v2[class*="page-"] .btn-cancel,
body.skin-v2[class*="page-"] .btn-action {
  white-space: nowrap !important;
  word-break: keep-all !important;
  min-width: 80px !important; /* "CO/NF/IR/M" 세로 1글자씩 fix */
}
/* 폼 라벨 nowrap — "withdraw/able" 강제 줄바꿈 차단 */
body.skin-v2[class*="page-"] form label,
body.skin-v2[class*="page-"] dl dt,
body.skin-v2[class*="page-"] .form-label,
body.skin-v2[class*="page-"] .label-row,
body.skin-v2[class*="page-"] th {
  white-space: nowrap !important; word-break: keep-all !important;
}
/* 라디오/체크박스 라벨 nowrap (USDT 등 짧은 단어 강제 줄바꿈 차단) */
body.skin-v2.page-buy label, body.skin-v2.page-transfer label,
body.skin-v2.page-withdrawal label, body.skin-v2.page-withdrawal-list label,
body.skin-v2.page-reward label, body.skin-v2.page-member label,
body.skin-v2.page-rules label, body.skin-v2.page-join label {
  white-space: nowrap !important; word-break: keep-all !important;
}

/* === form-input-wrap.js로 자동 wrapping 된 input + 단위 (.ga-input-wrap) === */
body.skin-v2[class*="page-"] .ga-input-wrap {
  position: relative !important;
  display: block !important;
  width: 100%;
}
body.skin-v2[class*="page-"] .ga-input-wrap input {
  padding-right: 60px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.skin-v2[class*="page-"] .ga-input-wrap .ga-input-unit {
  position: absolute !important;
  right: 14px !important; top: 50% !important;
  transform: translateY(-50%) !important;
  font-family: 'JetBrains Mono', ui-monospace, monospace !important;
  font-size: 11px !important; letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: var(--gold-deep, #8c6b1f) !important;
  font-weight: 600 !important;
  pointer-events: none !important;
  background: transparent !important;
  z-index: 2 !important;
}

/* === input 안 USDT 단위 겹침 fix — transfer/withdrawal 폼 input padding-right 확보 === */
body.skin-v2.page-transfer input[type="text"],
body.skin-v2.page-transfer input[type="number"],
body.skin-v2.page-withdrawal input[type="text"],
body.skin-v2.page-withdrawal input[type="number"] {
  padding-right: 60px !important; /* USDT/단위 자리 확보 */
}

/* === 폼 input 옆 단위(USDT 등) 컨테이너 분리 — 단위가 input 안 absolute 또는 별도 라벨로 떠있는 경우
   wrapper(.input-wrap, .form-row, dl 등)에 position:relative + 단위 absolute 우측 fix === */
body.skin-v2.page-transfer .input-wrap,
body.skin-v2.page-transfer dl,
body.skin-v2.page-transfer .form-row,
body.skin-v2.page-withdrawal .input-wrap,
body.skin-v2.page-withdrawal dl,
body.skin-v2.page-withdrawal .form-row {
  position: relative !important;
}
body.skin-v2.page-transfer .input-unit,
body.skin-v2.page-transfer .unit-suffix,
body.skin-v2.page-transfer .form-row .unit,
body.skin-v2.page-transfer dd > .unit,
body.skin-v2.page-withdrawal .input-unit,
body.skin-v2.page-withdrawal .unit-suffix,
body.skin-v2.page-withdrawal .form-row .unit,
body.skin-v2.page-withdrawal dd > .unit {
  position: absolute !important;
  right: 14px !important; top: 50% !important; transform: translateY(-50%) !important;
  font-family: 'JetBrains Mono', ui-monospace, monospace !important;
  font-size: 11px !important; letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: var(--gold-deep, #8c6b1f) !important;
  pointer-events: none !important;
  background: transparent !important;
}

/* === select 잘림 fix (join Nationality 등) === */
body.skin-v2[class*="page-"] select {
  max-width: 100% !important;
  text-overflow: ellipsis !important;
  background-image: linear-gradient(45deg, transparent 50%, var(--gold-deep, #8c6b1f) 50%),
                    linear-gradient(135deg, var(--gold-deep, #8c6b1f) 50%, transparent 50%) !important;
  background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 13px) calc(50% - 2px) !important;
  background-size: 5px 5px, 5px 5px !important;
  background-repeat: no-repeat !important;
  appearance: none !important;
  padding-right: 36px !important;
}

/* === pre/code overflow + 가로 스크롤 (rules 페이지) === */
body.skin-v2[class*="page-"] pre,
body.skin-v2[class*="page-"] code {
  max-width: 100% !important;
  overflow-x: auto !important;
  white-space: pre-wrap !important;
  word-break: break-all !important;
  -webkit-overflow-scrolling: touch !important;
}

/* === rules 모바일 ga-float-cta max-width 보장 === */
@media (max-width: 640px) {
  body.skin-v2.page-rules .ga-float-cta {
    left: 12px !important; right: 12px !important;
    max-width: calc(100vw - 24px) !important;
    box-sizing: border-box !important;
    text-align: center !important;
    padding: 14px 12px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  /* placeholder 글자 짧게 (join) */
  body.skin-v2.page-join input::placeholder,
  body.skin-v2.page-join select { font-size: 11px !important; }
}

/* === 모바일 반응형 헤더 (asset_list와 통일) === */
@media (max-width: 640px) {
  body.skin-v2[class*="page-"]:not(.page-asset-list) .ga-dashboard-v3-head .eyebrow { display: none !important; }
  body.skin-v2[class*="page-"]:not(.page-asset-list) .ga-dashboard-v3-head {
    flex-direction: row !important; align-items: baseline !important; justify-content: space-between !important;
    gap: 14px !important; padding: 0 4px 12px !important;
  }
  body.skin-v2[class*="page-"]:not(.page-asset-list) .ga-dashboard-v3-head h2 { font-size: 24px !important; margin: 0 !important; }
  body.skin-v2[class*="page-"]:not(.page-asset-list) .ga-dashboard-v3-head .meta { text-align: right !important; }
  body.skin-v2[class*="page-"]:not(.page-asset-list) .ga-dashboard-v3-head .meta-currency { display: none !important; }
}

/* === 모바일 반응형 === */
@media (max-width: 640px) {
  body.skin-v2.page-buy .mcont01,
  body.skin-v2.page-transfer .mcont01,
  body.skin-v2.page-withdrawal .mcont01,
  body.skin-v2.page-withdrawal-list .mcont01,
  body.skin-v2.page-reward .mcont01,
  body.skin-v2.page-member .mcont01,
  body.skin-v2.page-rules .mcont01,
  body.skin-v2.page-join .mcont01 {
    width: 92% !important;
    padding: 16px 0 calc(80px + env(safe-area-inset-bottom, 0px)) !important;
  }
  /* chip 3개 모바일 — 3등분 그리드 */
  body.skin-v2.page-buy #doc .mcont01 > .LoginNew-Wrap,
  body.skin-v2.page-transfer #doc .mcont01 > .LoginNew-Wrap,
  body.skin-v2.page-withdrawal #doc .mcont01 > .LoginNew-Wrap,
  body.skin-v2.page-withdrawal-list #doc .mcont01 > .LoginNew-Wrap,
  body.skin-v2.page-reward #doc .mcont01 > .LoginNew-Wrap,
  body.skin-v2.page-member #doc .mcont01 > .LoginNew-Wrap,
  body.skin-v2.page-rules #doc .mcont01 > .LoginNew-Wrap,
  body.skin-v2.page-join #doc .mcont01 > .LoginNew-Wrap {
    background: rgba(255,250,240,0.8) !important;
    border: 1px solid rgba(199,162,74,0.18) !important;
    border-radius: 12px !important;
    padding: 8px !important;
    margin-bottom: 14px !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
  body.skin-v2.page-buy #doc .mcont01 > .LoginNew-Wrap a,
  body.skin-v2.page-transfer #doc .mcont01 > .LoginNew-Wrap a,
  body.skin-v2.page-withdrawal #doc .mcont01 > .LoginNew-Wrap a,
  body.skin-v2.page-withdrawal-list #doc .mcont01 > .LoginNew-Wrap a,
  body.skin-v2.page-reward #doc .mcont01 > .LoginNew-Wrap a,
  body.skin-v2.page-member #doc .mcont01 > .LoginNew-Wrap a,
  body.skin-v2.page-rules #doc .mcont01 > .LoginNew-Wrap a,
  body.skin-v2.page-join #doc .mcont01 > .LoginNew-Wrap a {
    padding: 8px 4px !important; font-size: 8px !important; letter-spacing: 0.04em !important;
    text-align: center !important; min-width: 0;
    white-space: nowrap !important; line-height: 1.2 !important; min-height: 32px !important;
  }
  /* chip 짧은 폼 자동 전환 (chip-shorten.js가 ga-chip-full/short span 분기 inject) */
  body.skin-v2 .LoginNew-Wrap a .ga-chip-full,
  body.skin-v2 .ga-chip-auto .ga-chip-full { display: none !important; }
  body.skin-v2 .LoginNew-Wrap a .ga-chip-short,
  body.skin-v2 .ga-chip-auto .ga-chip-short { display: inline !important; }
  /* 모바일 테이블 카드형 변환 — 모든 detail 페이지 공통 (가로 스크롤 fix) */
  body.skin-v2.page-buy .table-01 table, body.skin-v2.page-transfer .table-01 table,
  body.skin-v2.page-withdrawal .table-01 table, body.skin-v2.page-reward .table-01 table,
  body.skin-v2.page-member .table-01 table, body.skin-v2.page-rules .table-01 table {
    display: block !important; width: 100% !important;
  }
  body.skin-v2.page-buy .table-01 thead, body.skin-v2.page-transfer .table-01 thead,
  body.skin-v2.page-withdrawal .table-01 thead, body.skin-v2.page-reward .table-01 thead,
  body.skin-v2.page-member .table-01 thead, body.skin-v2.page-rules .table-01 thead {
    display: none !important;
  }
  body.skin-v2.page-buy .table-01 tbody, body.skin-v2.page-transfer .table-01 tbody,
  body.skin-v2.page-withdrawal .table-01 tbody, body.skin-v2.page-reward .table-01 tbody,
  body.skin-v2.page-member .table-01 tbody, body.skin-v2.page-rules .table-01 tbody { display: block !important; }
  body.skin-v2.page-buy .table-01 tbody tr, body.skin-v2.page-transfer .table-01 tbody tr,
  body.skin-v2.page-withdrawal .table-01 tbody tr, body.skin-v2.page-reward .table-01 tbody tr,
  body.skin-v2.page-member .table-01 tbody tr, body.skin-v2.page-rules .table-01 tbody tr {
    display: block !important; padding: 12px; margin: 8px;
    background: #fffaf0; border: 1px solid rgba(199,162,74,0.18); border-radius: 12px;
  }
  body.skin-v2.page-buy .table-01 tbody td, body.skin-v2.page-transfer .table-01 tbody td,
  body.skin-v2.page-withdrawal .table-01 tbody td, body.skin-v2.page-reward .table-01 tbody td,
  body.skin-v2.page-member .table-01 tbody td, body.skin-v2.page-rules .table-01 tbody td {
    display: flex !important; justify-content: space-between !important;
    padding: 6px 0 !important; border: 0 !important;
  }
  /* 모바일 input — Asset/Amount 같은 숫자 input만 단위(USDT) 자리 확보 */
  body.skin-v2.page-transfer input[type="number"],
  body.skin-v2.page-transfer input[name*="amount" i],
  body.skin-v2.page-transfer input[name*="asset" i],
  body.skin-v2.page-withdrawal input[type="number"],
  body.skin-v2.page-withdrawal input[name*="amount" i],
  body.skin-v2.page-withdrawal input[name*="asset" i] {
    padding-right: 56px !important;
    font-size: 13px !important;
  }
  /* wallet/address/target ID input은 단위 없음 — padding 작게 + monospace 작은 폰트 */
  body.skin-v2.page-transfer input[name*="target" i],
  body.skin-v2.page-transfer input[name*="address" i],
  body.skin-v2.page-transfer input[name*="wallet" i],
  body.skin-v2.page-withdrawal input[name*="target" i],
  body.skin-v2.page-withdrawal input[name*="address" i],
  body.skin-v2.page-withdrawal input[name*="wallet" i] {
    padding-right: 14px !important;
    font-family: 'JetBrains Mono', ui-monospace, monospace !important;
    font-size: 11px !important;
    text-overflow: ellipsis !important;
  }
  /* 폼 라벨 — 짧은 라벨만 nowrap. ellipsis 제거 (R7 회귀 fix) */
  body.skin-v2[class*="page-"] form label,
  body.skin-v2[class*="page-"] dl dt,
  body.skin-v2[class*="page-"] .form-label {
    max-width: 100% !important;
    word-break: keep-all !important;
  }
  /* placeholder 글자 짧게 (안 잘리게) */
  body.skin-v2.page-join input::placeholder,
  body.skin-v2.page-member input::placeholder {
    font-size: 11px !important;
  }
  /* 모바일 테이블 카드형 변환 */
  body.skin-v2.page-withdrawal-list .table-01 table,
  body.skin-v2.page-withdrawal-list .table-01 thead,
  body.skin-v2.page-withdrawal-list .table-01 tbody,
  body.skin-v2.page-withdrawal-list .table-01 tr,
  body.skin-v2.page-withdrawal-list .table-01 td { display: block !important; width: auto !important; }
  body.skin-v2.page-withdrawal-list .table-01 thead { display: none !important; }
  body.skin-v2.page-withdrawal-list .table-01 tbody tr {
    background: #fffaf0; border: 1px solid rgba(199,162,74,0.18);
    border-radius: 12px; padding: 12px; margin: 8px;
  }
  body.skin-v2.page-withdrawal-list .table-01 tbody td {
    padding: 6px 0 !important; border: 0 !important;
    display: flex !important; justify-content: space-between !important; align-items: baseline !important;
  }
}

/* === 768 태블릿 헤더 안전 영역 === */
@media (min-width: 641px) and (max-width: 1024px) {
  body.skin-v2.page-buy .mcont01,
  body.skin-v2.page-transfer .mcont01,
  body.skin-v2.page-withdrawal .mcont01,
  body.skin-v2.page-withdrawal-list .mcont01,
  body.skin-v2.page-reward .mcont01,
  body.skin-v2.page-member .mcont01,
  body.skin-v2.page-rules .mcont01,
  body.skin-v2.page-join .mcont01 {
    padding-top: 48px !important;
  }
}

/* === R10 마지막 보강 (transfer/withdrawal/join 폼 plateau) === */
@media (max-width: 640px) {
  body.skin-v2.page-transfer .ga-input-wrap input,
  body.skin-v2.page-withdrawal .ga-input-wrap input {
    font-size: 12px !important;
  }
  body.skin-v2.page-transfer dl, body.skin-v2.page-transfer .form-row,
  body.skin-v2.page-withdrawal dl, body.skin-v2.page-withdrawal .form-row,
  body.skin-v2.page-join dl, body.skin-v2.page-join .form-row {
    margin-bottom: 16px !important;
  }
  body.skin-v2.page-transfer dt, body.skin-v2.page-withdrawal dt, body.skin-v2.page-join dt {
    display: block !important; margin-bottom: 6px !important;
    font-size: 11px !important; letter-spacing: 0.06em !important;
    color: var(--gold-deep, #8c6b1f) !important;
    text-transform: uppercase !important; white-space: nowrap !important;
  }
  body.skin-v2.page-transfer dd, body.skin-v2.page-withdrawal dd, body.skin-v2.page-join dd {
    display: block !important; margin: 0 !important; padding: 0 !important;
  }
}

/* 2026-04-23: page-member 모바일 카드 — 셀 내용 가운데 정렬 (라벨 없는 단일 값) */
@media (max-width: 640px) {
  body.skin-v2.page-member .table-01 tbody tr {
    text-align: center !important;
  }
  body.skin-v2.page-member .table-01 tbody td {
    justify-content: center !important;
    text-align: center !important;
  }
}
