/*═══════════════════════════════════════════════════════════════
  content.css — dacalc 디자인 시스템 SSOT (BEM Block)
  ═══════════════════════════════════════════════════════════════

  설계 원칙 (KISS SSOT 자기진화):
    ① CSS = 시각적 디자인 (기능 부재, 페이지 유형 무관)
    ② us/ 계산기/롱테일 템플릿 사용 중 검증된 정의 채택
    ③ 명명 일반화 — calc-/lt- 접두어 부재 (본문 컴포넌트)
    ④ BEM 표준 — Block / __Element / --Modifier
    ⑤ 색상 직접 Modifier (--blue, --green, --orange) + 가이드 주석
    ⑥ 단일 SSOT — 동일 시각 = 단일 Block + Modifier

  명명 가이드:
    -block      → 큰 시각 모듈 (faq, sources, table, formula, citation, highlight, insight)
    -box        → 작은 강조 박스 (info, tip, warning, ...)
    -card       → 카드 시각 (info, result, related, step, combo, hub)
    -container  → 컨테이너 wrapper (toc, steps)
    -list       → 리스트 (link, source, step)
    -grid       → 그리드 레이아웃 (related, info, hub, cta-buttons)

  Modifier 색상 사용 가이드 (LLM 참조 의무):
    --blue   = 정보, 중립 (default)
    --green  = 팁, 긍정, 성공, 절약
    --orange = 주의, 경고, 점검 의무
    --red    = 위험, 금지, critical
    --yellow = 팩트, 핵심 강조, 빠른 답변
    --purple = 추천, 분석, 프리미엄
    --sky    = 결론, 요약, 인사이트
    --mint   = 분석 흐름, 단계, narrative
    --gray   = 면책, 부수, deprecated

  현재 cascade 절차:
    content.css 가장 먼저 로드 → 기존 components/modules/seo-modules.css 후 로드
    → 기존 분산 정의가 cascade 우선 (호환 유지)
    → 검증 후 사용자 승인 시점에 기존 분산 정의 제거 + content.css 단일 SSOT

  계산기 본체 UI (calc-input/form/toggle/result/donut 등):
    → modules.css 잔존 (계산기 페이지 specific, 본 파일 부재)
═══════════════════════════════════════════════════════════════*/


/*═══════════════════════════════════════════════════════════════
  ① 타이틀 (Titles)
═══════════════════════════════════════════════════════════════*/

.module-section__title {
    font-size: 24px;
    font-weight: 700;
    color: #1a73e8;
    padding-left: 15px;
    padding-bottom: 10px;
    border-left: 4px solid #4285f4;
    border-bottom: 1px solid #e0e0e0;
    margin: 70px 0 15px 0;
    line-height: 1.35;   /* B39(07-18 사용자): 1.7→1.35 — 24px/700 제목 행간 정석(1.2~1.4)·2줄 제목 결속(1.5=본문용·1.7=과대) */
}

.module-section__title--sub {
    /* 모듈 소제목 = 섹션 H2(24px·파란 좌선·하단선)보다 명확히 하위 위계(2026-07-04 사용자 적발:
       동일 스타일이라 이중 제목처럼 보임). 크기·색·보더 축소 — h3 자동 강등(_helpers)과 세트. */
    font-size: 19px;
    font-weight: 700;
    color: var(--color-text-primary, #1e293b);
    padding-left: 12px;
    padding-bottom: 0;
    border-left: 3px solid #cbd5e1;
    border-bottom: none;
    margin: 28px 0 12px 0;
    line-height: 1.7;
}

.module-section__title--accent { color: #dc2626; border-left-color: #ef4444; }
.module-section__title--small  { font-size: 20px; margin: 40px 0 12px 0; }
.module-section__title--large  { font-size: 28px; margin: 80px 0 18px 0; }

.content-subtitle {
    font-size: 20px;
    font-weight: 600;
    color: #334155;
    margin: 24px 0 12px 0;
    line-height: 1.5;
}


/*═══════════════════════════════════════════════════════════════
  ② info-box (Block) + 색상 Modifier
  ───────────────────────────────────────────────────────────────
  사용 가이드 (Modifier 선택 절차):
    --blue   → 일반 정보, 보충 설명
    --green  → 실전 팁, 권장 절차, 절약 팁
    --orange → 주의, 경고, 점검 의무, 시점 검증
    --red    → 위험, 금지, critical 경고
    --yellow → 팩트, 핵심 강조, 빠른 답변
    --purple → 추천, 분석, 프리미엄 절차
    --sky    → 결론, 요약, 인사이트
    --mint   → 분석 흐름, 단계 narrative, 마일스톤
    --gray   → 면책, 부수 정보, deprecated 안내
═══════════════════════════════════════════════════════════════*/

/* Block — 기본 (--blue 시각) */
.module-info-box {
    background: #eff6ff;
    border-left: 4px solid #3b82f6;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 20px 0;
    font-size: 16px;
    line-height: 1.8;
    color: #1e3a5f;
}

/* Element — 하위 구조 */
.module-info-box__title {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 8px 0;
    color: inherit;
}
.module-info-box__desc {        /* __title 과 쌍 — 제목 밑 설명(dacalc hub-block__desc 값 이식) */
    font-size: 0.95rem;
    color: #4b5563;
    line-height: 1.5;
    margin: 0 0 16px;
}
.module-info-box__body {
    font-size: 1rem;       /* 본문 콘텐츠 = 기본 크기 (축소 금지 — disclaimer·sources 만 0.95rem 유지) */
    line-height: 1.7;
    margin: 0;
    color: inherit;
}
/* 내부 마지막 요소 margin-bottom 제거 — 박스 하단 여백을 상단(padding 16px)과 대칭 */
.module-info-box > *:last-child,
.module-info-box__body > *:last-child {
    margin-bottom: 0 !important;
}
.module-info-box strong { font-weight: 700; color: #111827; }
/* specificity 강화 (0,2,1) — components.css line 404 .module-info-box a { color: inherit } cascade override 차단 */
.module-info-box.module-info-box a       { color: #1a73e8; text-decoration: underline; }
.module-info-box.module-info-box a:hover { color: #c2410c; text-decoration: underline; }

/* Modifier — 색상 변형 */
.module-info-box--plain  {       /* 중립 그룹박스(dacalc hub-block) — 옅은 회색·좌측 강조선 없음·얇은 전체 테두리. link-grid explore 그룹 기본 */
    background: #fafbfc;
    border: 1px solid #e5e7eb;
    border-left: 1px solid #e5e7eb;
    color: #1e293b;
}
.module-info-box--blue   { background: #eff6ff; border-left-color: #3b82f6; color: #1e3a5f; }
.module-info-box--green  { background: #f0fdf4; border-left-color: #22c55e; color: #14532d; }
.module-info-box--orange { background: #fff7ed; border-left-color: #f97316; color: #7c2d12; }
.module-info-box--red    { background: #fef2f2; border-left-color: #ef4444; color: #7f1d1d; }
.module-info-box--yellow { background: #fefce8; border-left-color: #eab308; color: #713f12; }
/* specificity 강화 (0,2,0) — components.css line 287 .module-info-box (0,1,0) cascade override 차단 */
.module-info-box.module-info-box--amber { background: #fef3c7; border-left-color: #f59e0b; color: #78350f; }
.module-info-box--purple { background: #faf5ff; border-left-color: #a855f7; color: #581c87; }
.module-info-box--sky    { background: #f0f9ff; border-left-color: #0284c7; color: #075985; }
.module-info-box--mint   { background: #f0fdfa; border-left-color: #14b8a6; color: #134e4a; }
.module-info-box--gray   { background: #f8fafc; border-left-color: #64748b; color: #334155; }

/* Modifier — 변형 */
.module-info-box--dashed  { border-style: dashed; border-left-style: solid; }
.module-info-box--compact { padding: 12px 16px; font-size: 14px; }


/*═══════════════════════════════════════════════════════════════
  ③ header-block (Block) — 페이지/섹션 헤더 (그라데이션 + 큰 타이틀)
  ───────────────────────────────────────────────────────────────
  사용: 계산기/롱테일 페이지 최상단 헤더 (calculator/core/render/header.php)
  bg-gradient-{color} 결합으로 17색 그라데이션 적용
═══════════════════════════════════════════════════════════════*/

.module-header {
    padding: 30px 15px;
    color: #ffffff;
    border-radius: 8px;
    margin-bottom: 40px;
    text-align: center;
    transition: all 0.3s ease;
}

/* `.module-header p { margin-bottom: 0 }` 영역 — `.module-section__body p` (16px margin) 영역 specificity 0,1,1 override 의무 → !important 영역 추가 정합 (사용자 영구 mandate 2026-05-05, components.css 중복 정의 폐기 → 본 영역 SSOT 단일화) */
.module-header p { margin-bottom: 0 !important; }

.module-header__title {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 10px;
    color: #ffffff;
}

/* `.module-header__intro` 영역 SSOT (사용자 영구 mandate 2026-05-05 + 2026-05-25):
   - font-size 16px 통일 (데스크톱·모바일 동일) = 본문 16px 일치 + 사용자 push 정합 2026-05-25
   - font-weight: 500 (semibold) — `<strong>` 영역 (브라우저 default 700) 차별 영역 발생.
   - 기존 18px 데스크톱 / 16px 모바일 반응형 → 16px 통일 (단순성 + 모바일 우선 + 일관성). */
.module-header__intro {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    opacity: 0.9;
    color: #ffffff;
}

.module-header__info {
    background: rgba(255, 255, 255, 0.2);
    padding: 12px 20px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1.1em;
    margin-top: 12px;
    margin-bottom: 0;
    color: #ffffff;
}

/* `.module-header a` 영역 화이트 일관 색상 (사용자 영구 mandate 2026-05-25):
   기존 = 구 테마 안 link 기본 색상 (진한 파란색·보라색) 사용 → gradient 배경 안 가독성 약함.
   정정 = 헤더블록 안 모든 <a> link 흰색 + 밑줄 표시 (가시성·일관성 확보).
   `<strong>` + `<a>` + 본문 텍스트 모두 동일 색상 유지 = 사용자 push 정합. */
.module-header a,
.module-header__title a,
.module-header__intro a,
.module-header__info a {
    color: #ffffff !important;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    transition: opacity 0.2s ease;
}
.module-header a:hover,
.module-header__title a:hover,
.module-header__intro a:hover,
.module-header__info a:hover {
    color: #ffffff !important;
    opacity: 0.85;
    text-decoration-thickness: 2px;
}
.module-header a:visited,
.module-header__intro a:visited,
.module-header__info a:visited {
    color: #ffffff !important;
}

/* `.module-header` 안 모든 텍스트 element 흰색 통일 영역 (사용자 영구 mandate 2026-05-25):
   <strong> + <em> + <span> + <b> + <i> 등 inline element 모두 흰색 유지 의무. */
.module-header strong,
.module-header em,
.module-header span,
.module-header b,
.module-header i,
.module-header__intro strong,
.module-header__intro em,
.module-header__intro span,
.module-header__info strong,
.module-header__info em,
.module-header__info span {
    color: #ffffff;
}

.module-header .module-cta {
    margin-top: 20px;
    min-width: 160px;
}

@media (max-width: 768px) {
    .module-header { padding: 20px 15px; }
    .module-header__title { font-size: 24px; }
    /* .module-header__intro = 16px 통일 (반응형 부담 0) — 데스크톱 SSOT 정의 사용 */
    .module-header__info { font-size: 1em; }
}


/*═══════════════════════════════════════════════════════════════
  ④ bg-gradient-{color} (Utility) — 그라데이션 색상 (17색)
  ───────────────────────────────────────────────────────────────
  header-block + highlight-block + 기타 큰 영역에 결합 가능
  예: <div class="header-block bg-gradient-blue">
═══════════════════════════════════════════════════════════════*/

.bg-gradient-red    { background: linear-gradient(135deg, #ef4444, #dc2626); color: #ffffff; }
.bg-gradient-blue   { background: linear-gradient(135deg, #3b82f6, #1e40af); color: #ffffff; }
.bg-gradient-green  { background: linear-gradient(135deg, #1e7e34, #155d27); color: #ffffff; }
.bg-gradient-purple { background: linear-gradient(135deg, #667eea, #764ba2); color: #ffffff; }
.bg-gradient-orange { background: linear-gradient(135deg, #ff8c42, #ff6b1a); color: #ffffff; }
.bg-gradient-yellow { background: linear-gradient(135deg, #eab308, #a16207); color: #ffffff; }
.bg-gradient-rose   { background: linear-gradient(135deg, #e11d48, #be123c); color: #ffffff; }
.bg-gradient-gray   { background: linear-gradient(135deg, #6b7280, #374151); color: #ffffff; }
.bg-gradient-mint   { background: linear-gradient(135deg, #10b981, #059669); color: #ffffff; }
.bg-gradient-teal   { background: linear-gradient(135deg, #14b8a6, #0d9488); color: #ffffff; }
.bg-gradient-gold   { background: linear-gradient(135deg, #f5d742, #d4af37); color: #5d4e0f; }
.bg-gradient-silver { background: linear-gradient(135deg, #e8e8e8, #a0a0a0); color: #333333; }
.bg-gradient-pink   { background: linear-gradient(135deg, #ec4899, #db2777); color: #ffffff; }
.bg-gradient-indigo { background: linear-gradient(135deg, #6366f1, #4338ca); color: #ffffff; }
.bg-gradient-violet { background: linear-gradient(135deg, #8b5cf6, #6d28d9); color: #ffffff; }
.bg-gradient-cyan   { background: linear-gradient(135deg, #06b6d4, #0891b2); color: #ffffff; }
.bg-gradient-brown  { background: linear-gradient(135deg, #a0522d, #8b4513); color: #ffffff; }


/*═══════════════════════════════════════════════════════════════
  ⑤ highlight-block (Block) — 큰 강조 헤더 (그라데이션 배경)
═══════════════════════════════════════════════════════════════*/

.module-highlight {
    position: relative;
    color: #ffffff;
    border-radius: 12px;
    padding: 1.5rem 2rem 2rem;
    margin: 2rem 0;
    text-align: center;
    overflow: hidden;
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
}

.module-highlight__title {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0.5rem 0 1rem 0;
    color: #ffffff;
    line-height: 1.3;
}

.module-highlight__text {
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 1.5rem;
    color: rgba(255, 255, 255, 0.9);
}

.module-highlight__description {
    color: #ffffff;
    font-size: 1.05em;
    margin-bottom: 12px;
    font-weight: 600;
}

.module-highlight p { color: #ffffff; font-size: 1rem; line-height: 1.6; margin: 0 0 1.5em; }
.module-highlight ul { text-align: left; margin: 24px 0 0 0; padding-left: 0; list-style: none; }
.module-highlight ul li { color: #ffffff; margin-bottom: 8px; list-style: none; }

/* Modifier — 색상 그라데이션 변형 */
.module-highlight--blue   { background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%); }
.module-highlight--green  { background: linear-gradient(135deg, #22c55e 0%, #15803d 100%); }
.module-highlight--purple { background: linear-gradient(135deg, #a855f7 0%, #6b21a8 100%); }
.module-highlight--orange { background: linear-gradient(135deg, #f97316 0%, #c2410c 100%); }
.module-highlight--red    { background: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%); }
.module-highlight--gold   { background: linear-gradient(135deg, #eab308 0%, #a16207 100%); }
.module-highlight--mint   { background: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%); }
.module-highlight--gray   { background: linear-gradient(135deg, #64748b 0%, #334155 100%); }


/*═══════════════════════════════════════════════════════════════
  ④ table-block (Block) — 본문 표 (calc-table 정의 채택, 명명 일반화)

  ⚠️ 공유 사용처: comparison 모듈(core/template/modules/comparison.php)도
     <table class="module-table"> 를 출력해 이 CSS 를 그대로 공유한다.
     → 이 블록을 수정하면 일반 표와 비교표가 함께 바뀐다. (표 디자인 단일 출처 = 이곳)
═══════════════════════════════════════════════════════════════*/

.module-table,
.module-table__table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    /* [v13.44] 구 테마 기본 'table { border: 1px }' 차단 */
    border: 0 !important;
    table-layout: auto;
    /* [v13.50] 글자 크기 17px (master hub 가독성 향상) */
    font-size: 17px;
    margin: 16px 0 8px;
}

/* [v13.50] td-notes mandate (master hub) — 텍스트/문장 컬럼 왼쪽 정렬 */
/* [v13.51] .td-notes (line 2491) font-size: 14px + color: #64748b 영역 차단 — 표 안 td-notes 영역 본문 글자 크기 정합 */
.module-table td.td-notes,
.module-table__table td.td-notes {
    text-align: left !important;
    font-size: inherit !important;
    color: inherit !important;
}
/* [v13.50] td-center — 짧은 라벨 / 날짜 / 코드 가운데 정렬용 */
.module-table td.td-center,
.module-table__table td.td-center {
    text-align: center !important;
}
/* [v4.2.11 2026-06-16] 모듈 실제 출력 클래스 정합 — resolve_type 가 align 옵션을
   module-table__cell--center/--note 로 출력하는데 CSS 규칙이 누락돼 default(우측)로
   떨어지던 결함 정정(gas-station 표에서 발견). 레거시 td-center/td-notes 와 동일 동작. */
.module-table td.module-table__cell--center,
.module-table__table td.module-table__cell--center {
    text-align: center !important;
}
.module-table td.module-table__cell--note,
.module-table__table td.module-table__cell--note {
    text-align: left !important;
}

.module-table thead,
.module-table__head {
    background: #e2e8f0;
    color: #1e293b;
    border-bottom: 2px solid #94a3b8;
}

.module-table caption,
.module-table__caption {
    caption-side: top;
    text-align: left;
    font-size: 16px;
    font-weight: 700;
    color: #0f172a;
    background: #f8fafc;
    padding: 10px 14px;
    /* [v13.43] 표 앞 세로선 제거 — caption border-left 차단 */
    margin-bottom: 10px;
    border-radius: 4px;
}

.module-table:has(caption) { margin-top: 24px; }

/* [v5.6.54 2026-07-19] .module-table__caption 상단 마진 부재 정정(사용자 라이브 실측 신고:
   /deposit/bank/jeonbuk-bank/ — info-box--plain(deposit-cardlist) 바로 다음 캡션 여백 0).
   원인(CDP 실측 확정): dc-runtime.js MODULE 1(initScrollHints)이 표 안 <caption>을 스크롤
   영역 밖으로 꺼내 <div class="module-table__caption">으로 wrapper 앞에 삽입 — 이 div는
   margin-bottom:10px(L413)만 있고 margin-top이 정의된 적이 없음(부재, 상쇄 아님). 평소엔
   앞 모듈의 자체 margin-bottom(대부분 >0)과 collapse 되어 티가 안 나다가, 앞 요소가
   .module-info-box:has(>.module-info-box__body>.deposit-cardlist){margin:0}(L12334, B13
   증분⑪ — 카드 자체 테두리 보유로 래퍼 무테두리화)인 조합만 0 vs 0 collapse → 여백 0.
   원칙 = "뒤에 오는 요소가 자기 앞 간격을 소유"(margin-top) — 어떤 모듈 뒤에 와도 표준 간격
   확보, 마지막 요소 문제 없음(margin-bottom 방식과 달리 이 요소가 last-child가 될 일 없음).
   값 24px = L417 .module-table:has(caption) 표준값과 통일(표 캡션 앞 간격 SSOT 정합).
   margin은 인접 형제 간 max() collapse이므로 기존에 이미 24px 이상이던 조합은 무변화(회귀 0),
   0~23px이던 조합만 24px로 상향 — 전역 축소 사례 없음. */
.module-table__caption { margin-top: 24px; }

.module-table th,
.module-table__table th {
    padding: 12px 10px;
    font-weight: 700;
    text-align: center;
    color: #1e293b;
    /* [v13.44] 구 테마 'th { border: 1px }' 강제 차단 */
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

.module-table td,
.module-table__table td,
.module-table__cell {
    padding: 11px 10px;
    text-align: right;
    border-bottom: 1px solid #e5e7eb !important;
    color: #374151;
    /* [v13.44] 구 테마 'td { border: 1px }' 강제 차단 — bottom만 유지 */
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

.module-table td:first-child { text-align: left; }
/* [v13.43] 짝수 행 옅은 배경 (zebra striping) — 가독성 향상 */
.module-table tbody tr:nth-child(even) td { background: #f8fafc; }
.module-table tr:hover td { background: #f1f5f9; }
.module-table a { text-decoration: none; color: #3b82f6; }
.module-table a:hover { text-decoration: none; color: #1d4ed8; }

/* Element — 본문 노트 셀 (좌측 정렬) */
.module-table__note, .module-table__notes {
    text-align: left;
    font-size: 1rem;       /* 본문 기본 크기 */
    color: #94a3b8;        /* 옅은 회색 — 색으로만 부차 정보 구분 */
    margin-top: 6px;
}
.module-table__note-ic { margin-right: 3px; }   /* note 앞 ※ 표식(모듈 출력) — 회색 그대로, 박스 렌더링 없음 */

/* Element — 본문 노트 «경고 톤» 변형 (2026-08-21 W-B5)
   ─────────────────────────────────────────────────────────────────────────
   용도 = TCGGrail items/pokemon/card-template.php #market 「최저 매물 표」의 note.
     그 표가 시세를 아직 못 모은 카드에서 예시(placeholder) 숫자를 보여줄 때
     (변수 $ofIsEx) note 문장이 "Example figures…"로 시작한다 — 이 캡션은 «수집된
     값이 아니다»라는 경고이지 일반 각주가 아니다. 위 .module-table__note(옅은 회색)를
     그대로 두면 예시 값이 실측처럼 조용히 읽힌다(정보 우선 정책 위반 소지).
   🔒 .module-table__note 자체는 손대지 않는다 — 이 클래스는 표준 module-table 이
      «모든 사이트·모든 표»에서 쓰는 공용 각주라, 거기를 물들이면 예시가 아닌 표까지
      전부 경고색으로 보인다(회귀). 그래서 새 변형 클래스를 신설하고, 부르는 쪽
      (card-template.php)이 note 문자열 «안에서» 이 클래스로 감싼 부분에만 입힌다
      (module-table 모듈은 note 를 wp_kses_post 로 통과시키므로 span+class 가 살아남는다).
   토큰 = item-modules.css .data-provenance-banner 와 동일한 --warn·--warn-s(주황 계열) —
      새 색 발명 0. 그 배너는 페이지 하단 «상자」이고 이 note 는 표 밑 한 줄이라, 상자
      크기만 note 문맥에 맞게 인라인 칩으로 줄였다(색·테두리 톤은 그대로 옮김). */
.module-table__note--warn {
    display: inline-block;
    padding: 3px 9px;
    border-radius: var(--r-s);
    background: var(--warn-s);
    color: var(--warn);
    font-weight: 600;
    border: 1px solid color-mix(in srgb, var(--warn) 30%, transparent);
}

/* Element — 행 변형 */
.module-table__row--highlight td { background: #fef3c7; font-weight: 600; }
.module-table__row--group td {
    background: #f1f5f9;
    font-weight: 700;
    color: #1e293b;
    border-top: 2px solid #94a3b8;
}

/* Element — wrapper (모바일 가로 스크롤) */
.module-table__wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 16px 0;
    border-radius: 8px;
}

/* Modifier */
.module-table--compact td,
/* v14.67 (사용자 mandate "별도 지시 없으면 본문 사이즈"): font-size 영영구 영영구 — padding만 정합 */
.module-table--compact th { padding: 6px 8px; }
.module-table--full { width: 100%; }


/*═══════════════════════════════════════════════════════════════
  ⑤ formula-block (Block) — 수식 모듈
═══════════════════════════════════════════════════════════════*/

.module-calc-example__formula-block {
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 20px 0;
    font-size: 16px;
    line-height: 1.8;
}

.module-calc-example__formula-title {
    font-size: 14px;
    font-weight: 700;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0 0 8px 0;
}

.module-calc-example__formula-expr {
    font-family: 'Courier New', Consolas, monospace;
    font-size: 15px;
    color: #0f172a;
    background: #ffffff;
    padding: 12px 16px;
    border-radius: 4px;
    border: 1px solid #e2e8f0;
    overflow-x: auto;
    white-space: pre-wrap;
}

.module-calc-example__formula-note {
    font-size: 13px;
    color: #64748b;
    margin-top: 8px;
    font-style: italic;
}


/*═══════════════════════════════════════════════════════════════
  ⑥ faq-block (Block) — FAQ
═══════════════════════════════════════════════════════════════*/

.module-faq {
    margin: 2.5rem 0;
}

.module-faq__items {
    background: #ffffff;
    padding: 0;
    margin-top: 20px;
    border-radius: 8px;
    list-style: none;
    margin-left: 0;
    padding-left: 0;
    text-align: left;
}

/* FAQ 스타일 SSOT: .module-faq__list / __item / __q / __a 통합 정의는 이 파일 하단 한 곳에 있음.
   2026-06-05 정리: calc-faq→module-faq BEM 리네임 때 중복으로 남았던 옛 묶음(.module-faq__question/__answer +
   충돌 .module-faq__item)을 제거. 옛 클래스는 현재 마크업(__q/__a)과 안 맞아 사용처 0건이었음. */


/*═══════════════════════════════════════════════════════════════
  ⑦ toc-container (Block) — 목차 (Table of Contents)
═══════════════════════════════════════════════════════════════*/

.module-toc {
    margin: 30px 0;
    padding: 20px 25px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border-left: 4px solid #0284c7;
    border-radius: 8px;
}

.module-toc__title,
.module-toc__title {
    font-size: 1.2em;
    font-weight: 700;
    color: #0c4a6e;
    margin-bottom: 15px;
}

.module-toc__list,
.module-toc__list {
    list-style: none;
    padding: 0;
    margin: 0;
    counter-reset: toc-counter;
}

.module-toc__list li,
.module-toc__list li {
    margin: 8px 0;
    padding-left: 0;
    line-height: 1.6;
    counter-increment: toc-counter;
    display: flex;
    align-items: baseline;
}

.module-toc__list li::before,
.module-toc__list li::before {
    content: counter(toc-counter) ". ";
    color: #075985;
    font-weight: 500;
    margin-right: 8px;
    white-space: nowrap;
    flex-shrink: 0;
}

.module-toc__item--level-2 a,
.module-toc__level--2 a {
    color: #075985;
    flex: 1;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.2s ease;
}

.module-toc__item--level-2 a:hover,
.module-toc__level--2 a:hover {
    color: #0284c7;
    text-decoration: underline;
}

.module-toc__item--level-3,
.toc-level-3 {
    margin-left: 16px;
}

.module-toc__item--level-3 a,
.toc-level-3 a {
    color: #0369a1;
    flex: 1;
    text-decoration: none;
    font-size: 0.95em;
}

.module-toc__item--level-3 a:hover,
.toc-level-3 a:hover {
    color: #0284c7;
    text-decoration: underline;
}

@media (max-width: 768px) {
    .module-toc__list li,
    .module-toc__list li { margin: 12px 0; line-height: 1.7; }
}


/*═══════════════════════════════════════════════════════════════
  ⑧ citation-block / citation-passages (Block) — 본문 인용
  ───────────────────────────────────────────────────────────────
  본문 중간 핵심 사실 + 개별 출처 인용 (statute styling)
  vs sources-block — 하단 출처 모음 (별도 Block)

  명명 호환:
    .module-core-facts + Element  (BEM 표준 명명)
    .module-core-facts__list          (us/ data.php 사용 — wrapper, 복수)
    .module-core-facts__item           (us/ data.php 사용 — 개별, 단수)
═══════════════════════════════════════════════════════════════*/

.module-citation-passage,
.module-citation-passage__list {
    margin-bottom: 24px;
}

.module-citation-passage__item,
.module-citation-passage__item {
    background: #fefce8;
    border: 1px solid #fde68a;
    border-radius: 10px;
    padding: 20px 24px;
    margin-bottom: 16px;
}

.module-citation-passage__item:last-child,
.module-citation-passage__item:last-child {
    margin-bottom: 0;
}

.module-citation-passage__topic,
.module-citation-passage__topic {
    font-size: 1rem;
    font-weight: 600;
    color: #92400e;
    margin: 0 0 8px 0;
}

.module-citation-passage__text,
.module-citation-passage__text {
    font-size: 0.95rem;
    color: #1e293b;
    line-height: 1.75;
    margin: 0 0 8px 0;
}

/* 사용자 영구 mandate (2026-05-27): citation 안 마지막 문단 = margin-bottom 0
   → 박스 padding-bottom 한정 + 텍스트 사후 추가 여백 차단 = 시각 정합 */
.module-citation-passage__text:last-child,
.module-citation-passage__text:last-child {
    margin-bottom: 0;
}

.module-citation-passage__source {
    display: block;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #e2e8f0;
    font-size: 13px;
    color: #6b7280;
    font-style: normal;
}


/*═══════════════════════════════════════════════════════════════
  ⑨ sources-block (Block) — 하단 출처 모음 (참고 자료 리스트)
═══════════════════════════════════════════════════════════════*/

/* dacalc 스타일: 박스(bg·border·radius·padding) 제거 → 깔끔한 리스트·공간 활용(모바일)·2026-06-29 사용자 */
.module-sources {
    margin: 32px 0;
    /* 43호(2026-08-25) — 번호매김 카운터를 모듈 전체(바깥)에서 1회 리셋한다. 방법론 구획
       추가로 .module-sources__list 가 한 모듈 안에 2개 이상 생길 수 있게 됐는데, 리셋이
       각 list 안에 있으면 구획마다 번호가 1부터 다시 시작해 버린다(연속성 깨짐) — 바깥
       1곳으로 옮겨 전체가 이어서 세도록. */
    counter-reset: source-counter;
}

.module-sources__title {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 12px 0;
}

/* (legacy .module-sources__list disc 중복 제거 — flex 배지 정의가 SSOT) */

.module-sources__item {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.7;
    margin-bottom: 6px;
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.module-sources__badge {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #94a3b8;
    flex-shrink: 0;
}

.module-sources__text { flex: 1; }

.module-sources__link {
    color: #1d4ed8;
    text-decoration: underline;
    flex-shrink: 0;
}


/*═══════════════════════════════════════════════════════════════
  ⑩ cta-button (Block) — CTA 버튼 + Modifier
  ───────────────────────────────────────────────────────────────
  사용 가이드:
    (default)        → 파란 강조 버튼 (행동 유도)
    --secondary      → 회색 배경 (back-to-X 등 부수 행동)
    --small          → 작은 크기 (인라인 링크, 태그)
    --green/red/teal → 색상 강조
═══════════════════════════════════════════════════════════════*/

/* .module-cta base/:hover → 이 파일 끝 cta SSOT 블록으로 통합 (2026-06-05, 그라데이션 버전).
   아래 --secondary/--outline/--small 등 고유 변형은 유지. */

/* Modifier — 변형 */
.module-cta--secondary {
    background: #f1f5f9;
    color: #1e293b;
    border: 1px solid #cbd5e1;
}
.module-cta--secondary:hover {
    background: #e2e8f0;
    color: #0f172a;
}

.module-cta--outline {
    background: #ffffff;
    color: #3b82f6;
    border: 2px solid #3b82f6;
}
.module-cta--outline:hover {
    background: #eff6ff;
    color: #1d4ed8;
}

.module-cta--small {
    padding: 6px 12px;
    font-size: 14px;
    border-radius: 4px;
}

/* .module-cta--large + 단색 색상 변형 → 파일 끝 cta SSOT(그라데이션 버전)로 통합 (2026-06-05).
   teal은 미사용(cta.php = blue·green·red·purple 4색 한정 mandate). */

/* CTA 그룹 */
.module-ctas {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: 20px 0;
}

.module-ctas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 12px;
    margin: 20px 0;
}

/* CTA 박스 (그라데이션 배경 + 내부 버튼) */
.module-cta__box {
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
    color: #ffffff;
    border-radius: 12px;
    padding: 24px 28px;
    margin: 24px 0;
    text-align: center;
}

.module-cta__box__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 12px 0;
    color: #ffffff;
}

.module-cta__box__text {
    font-size: 1rem;
    line-height: 1.6;
    margin: 0 0 16px 0;
    color: rgba(255, 255, 255, 0.9);
}

/* CTA 체크리스트 */
.module-cta__checklist {
    list-style: none;
    padding: 0;
    margin: 0 0 16px 0;
    text-align: left;
}

.module-cta__checklist--item {
    position: relative;
    padding-left: 28px;
    margin-bottom: 8px;
    font-size: 0.95rem;
    line-height: 1.6;
}

.module-cta__checklist--item::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: #22c55e;
    font-weight: 700;
}


/*═══════════════════════════════════════════════════════════════
  ⑪ step-card (Block) — 단계 카드 + Modifier
═══════════════════════════════════════════════════════════════*/

.module-steps__item {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #3b82f6;
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 16px;
    display: flex;
    gap: 20px;
    align-items: flex-start;
    transition: border-color .2s ease, box-shadow .2s ease;
}

/* ⑤ 호버 복원 (2026-06-05): 옅은 테두리 강조 + 그림자 (체크리스트 블록 제거 시 사라졌던 호버 복원) */
.module-steps__item:hover {
    border-color: var(--color-primary, #1a73e8);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.module-steps__num {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #3b82f6;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.module-steps__content { flex: 1; }

.module-steps__title {
    font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 8px 0;
}

.module-steps__desc {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.6;
    margin: 0;
}

/* Modifier — 강조/완료 */
.module-steps__item--highlight { background: #fef3c7; border-left-color: #f59e0b; }
.module-steps__item--complete  { background: #d1fae5; border-left-color: #10b981; }
.module-steps__item--warning   { background: #fff7ed; border-left-color: #f97316; }
.module-steps__item--current   { box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2); }

/* steps-container — 단계 wrapper */
.steps-container { margin: 24px 0; }


/*═══════════════════════════════════════════════════════════════
  ⑫ step-list (Block) — 단계 리스트 (번호 자동, 카드 부재 형태)
═══════════════════════════════════════════════════════════════*/

.step-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
    counter-reset: step-counter;
}

.step-list__item {
    position: relative;
    padding: 12px 16px 12px 48px;
    margin-bottom: 8px;
    background: #f8fafc;
    border-radius: 6px;
    counter-increment: step-counter;
    font-size: 16px;
    line-height: 1.6;
    color: #374151;
}

.step-list__item::before {
    content: counter(step-counter);
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #3b82f6;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* step-checklist — 체크박스 단계 */
.step-checklist {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.step-checklist__item {
    position: relative;
    padding: 10px 16px 10px 40px;
    margin-bottom: 6px;
    background: #f8fafc;
    border-radius: 6px;
    font-size: 15px;
    line-height: 1.6;
    color: #374151;
}

.step-checklist__item::before {
    content: "☐";
    position: absolute;
    left: 12px;
    top: 10px;
    color: #94a3b8;
    font-size: 18px;
}

.step-checklist__item--done::before { content: "☑"; color: #22c55e; }


/*═══════════════════════════════════════════════════════════════
  ⑬ info-card (Block) — 정보 카드 + 색상 Modifier
═══════════════════════════════════════════════════════════════*/

.info-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 12px;
    transition: box-shadow 0.2s ease;
}

.info-card:hover { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); }

.info-card__title {
    font-size: 1rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 8px 0;
}

.info-card__body {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.6;
    margin: 0;
}

/* Modifier — 색상 */
.info-card--blue   { background: #eff6ff; border-color: #bfdbfe; }
.info-card--green  { background: #f0fdf4; border-color: #bbf7d0; }
.info-card--orange { background: #fff7ed; border-color: #fed7aa; }
.info-card--yellow { background: #fefce8; border-color: #fde68a; }
.info-card--purple { background: #faf5ff; border-color: #e9d5ff; }
.info-card--gray   { background: #f8fafc; border-color: #cbd5e1; }

/* info-grid — 카드 그리드 */
.info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
    margin: 20px 0;
}


/*═══════════════════════════════════════════════════════════════
  ⑭ result-card (Block) — 결과 카드 (그라데이션 + 큰 숫자)
═══════════════════════════════════════════════════════════════*/

.module-result-card {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-radius: 12px;
    padding: 24px;  /* v14.50 (2026-05-09, 사용자 mandate "padding 통일"): 20px 24px → 24px (stat/result 일관) */
    margin: 0;      /* v14.50: grid container 영영구 외부 margin 영영구 (grid gap 영영구 영영구) */
    text-align: center;
    /* v14.47 (2026-05-09, 사용자 mandate "같은 행 카드 길이 맞춤"): grid stretch 영영구 */
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.module-result-card__label {
    font-size: 0.9rem;
    font-weight: 600;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0 0 8px 0;
}

.module-result-card__value {
    font-size: 2rem;
    font-weight: 700;
    color: #1d4ed8;
    margin: 0;
    line-height: 1.2;
}

.module-result-card__sub {
    font-size: 0.85rem;
    color: #64748b;
    margin-top: 8px;
}

/* Modifier */
.module-result-card--highlight { background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%); }
.module-result-card--highlight .module-result-card__value { color: #92400e; }
.module-result-card--green     { background: linear-gradient(135deg, #f0fdf4 0%, #d1fae5 100%); }
.module-result-card--green .module-result-card__value { color: #15803d; }
.module-result-card--red       { background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%); }
.module-result-card--red .module-result-card__value { color: #b91c1c; }

/* Element — answer paragraph (instant retirement pay narrative answer) */
.module-result-card__answer {
    text-align: left;
    font-size: 1rem;
    line-height: 1.6;
    color: #1e293b;
    margin: 0 0 16px 0;
}
.module-result-card__answer strong {
    color: #1d4ed8;
    font-weight: 700;
}

/* [v13.45] .module-result-card 안 calc-briefing / lt-note — text-align: center 상속 차단 */
.module-result-card .module-briefing,
.module-result-card .lt-note {
    text-align: left;
}

/* Element — basis paragraph (citation + cross-link CTA, "Based on ... Explore: ...") */
.module-result-card__basis {
    text-align: left;
    background: rgba(255, 255, 255, 0.6);
    border-left: 3px solid #3b82f6;
    border-radius: 6px;
    padding: 12px 16px;
    margin: 16px 0 0 0;
    font-size: 0.9rem;
    line-height: 1.55;
    color: #475569;
}
.module-result-card__basis a {
    color: #1d4ed8;
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: rgba(29, 78, 216, 0.3);
}
.module-result-card__basis a:hover {
    text-decoration-color: #1d4ed8;
}


/*═══════════════════════════════════════════════════════════════
  ⑮ related-card (Block) — 관련 글 카드
═══════════════════════════════════════════════════════════════*/

.related-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px 20px;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.related-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-color: #3b82f6;
}

.related-card__title {
    font-size: 1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 8px 0;
}

.related-card__title a { color: #1d4ed8; text-decoration: none; }
.related-card__title a:hover { color: #1e40af; text-decoration: underline; }

.related-card__desc {
    font-size: 0.9rem;
    color: #64748b;
    line-height: 1.5;
    margin: 0;
}

.related-card__cta {
    display: inline-block;
    margin-top: 8px;
    font-size: 0.85rem;
    color: #3b82f6;
    font-weight: 500;
}

/* related-grid */
.related-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
    margin: 24px 0;
}


/*═══════════════════════════════════════════════════════════════
  ⑯ combo-card (Block) — 조합 카드 (호버 효과 + CTA)
═══════════════════════════════════════════════════════════════*/

/* ⑯ 교체(2026-06-19): 죽은 combo-card(미사용 dacalc 잔재) 제거 → module-link-grid 로 통일.
   카드 그리드가 필요하면 card-grid 모듈(.module-card-grid + stat/result/method-card) 사용.
   .module-link-grid = dacalc hub-cell pill 디자인 값 그대로 이식(이름만 4세대 module-* 규칙).
   모듈 = link-grid.php(module_link_grid) · 용도 = 하단 explore 섹션·동네/유종 내부링크 나열. */
.module-link-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 140px), 1fr));   /* min(100%) = 초협소 컨테이너 오버플로 차단 */
    gap: 8px;
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
}

.module-link-grid--narrow {           /* 짧은 라벨(유종 등) */
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 100px), 1fr));
}

.module-link-grid__item {
    display: flex;
}

.module-link-grid__pill {
    flex: 1;
    min-width: 0;          /* 🚨 긴 콘텐츠로 늘어나 열이 줄지 않게 — 열은 트랙 너비로만 */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px 8px;
    background: #fff;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    text-decoration: none;
    color: #1e40af;
    font-size: 0.95rem;
    line-height: 1.3;          /* 박스 안(info-box line-height:1.8) 상속으로 셀이 길어지는 것 방지 — 안/밖 높이 통일 */
    text-align: center;
    transition: all 0.15s ease;
    min-height: 44px;
}

.module-link-grid__pill:hover {
    background: #eff6ff;
    border-color: #2563eb;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(37, 99, 235, 0.1);
    text-decoration: none;
}

.module-link-grid__label {
    font-weight: 600;
    overflow-wrap: break-word;
    word-break: keep-all;   /* 한글=어절 단위 줄바꿈 / 긴 영문 단어만 강제 break(트랙 넘침 방지) */
}

.module-link-grid__meta {
    font-size: 0.85rem;
    color: #6b7280;
    margin-top: 2px;
}

@media (max-width: 640px) {
    .module-link-grid {
        grid-template-columns: repeat(auto-fill, minmax(min(100%, 110px), 1fr));
    }
    .module-link-grid--narrow {
        grid-template-columns: repeat(auto-fill, minmax(min(100%, 84px), 1fr));
    }
}

/* link-grid 가 info-box 박스 안(explore 그룹)일 때: 맨 그리드와 100% 동일하게(info-box a color/hover/underline/좌패딩 상쇄) */
.module-info-box .module-link-grid { padding-left: 0; margin: 8px 0 0; }
/* 스택된 link-grid 그룹 제목 간격(2026-06-23): 앞 그리드 ↔ 다음 그룹 제목 사이 여백(휘발유/경유/LPG 그룹 분리) */
.module-link-grid + .module-info-box__title { margin-top: 1.75rem; }
.module-info-box .module-link-grid__pill,
.module-info-box a.module-link-grid__pill {
    color: #1e40af;
    text-decoration: none;
}
.module-info-box .module-link-grid__pill:hover,
.module-info-box a.module-link-grid__pill:hover {
    color: #1e40af;
    background: #eff6ff;
    border-color: #2563eb;
    text-decoration: none;
}
.module-info-box a.module-link-grid__card,
.module-info-box a.module-link-grid__card:hover {
    color: #1e293b;
    text-decoration: none;
}
.module-info-box .module-link-grid__card-cta { color: #2563eb; }

/* cards 변형 — 디폴트 __card(아이콘+제목+설명·흰 카드 = module-related 흡수) / __card--cta(제목+보조+CTA화살표·그라데이션 = dacalc combo). 2026-06-20 */
.module-link-grid--cards {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 180px), 1fr));   /* min(100%) = 초협소 컨테이너 오버플로 차단(gold-standard) */
    gap: 12px;
}
/* CTA 카드 = 콘텐츠 밀도 높음(제목+보조+CTA) → 디폴트는 본문 너비에 따라 동적 계산(auto-fill·min 230px → 넓은 본문 3열·좁으면 2/1열·stretch 최소화). 고정 열은 cols 옵션. */
.module-link-grid--cta {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));
}
/* cols 옵션 = 동적 디폴트 대신 열 수(카드 너비) 명시 오버라이드. variant 디폴트보다 우선(뒤 선언). auto-fill 반응형 */
.module-link-grid--cols-2 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); }
.module-link-grid--cols-3 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 185px), 1fr)); }
.module-link-grid--cols-4 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 145px), 1fr)); }
/* 디폴트 카드 = 아이콘 카드(중앙 정렬·흰 배경) */
.module-link-grid__card {
    position: relative;    /* B-4(2026-08-14 눈검수 #11) — row-entrance-arrow-badge--card(절대배치)의 위치 기준점 */
    flex: 1;
    min-width: 0;          /* 🚨 grid item이 긴 콘텐츠(영문 타이틀 등)로 늘어나 열이 줄지 않게 — 열은 트랙 너비로만 결정 */
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 16px 12px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    text-decoration: none;
    color: #1e293b;
    transition: border-color .2s, box-shadow .2s, transform .15s;
}
.module-link-grid__card:hover {
    border-color: #3b82f6;
    box-shadow: 0 2px 8px rgba(59,130,246,0.1);
    transform: translateY(-2px);
    text-decoration: none;
}
.module-link-grid__card-icon { font-size: 34px; margin-bottom: 8px; line-height: 1; }
.module-link-grid__card-title { display: block; font-size: 1rem; font-weight: 700; color: #1e293b; line-height: 1.3; overflow-wrap: break-word; word-break: keep-all; }
/* B-1(2026-08-14 눈검수 #3) — 설명 길이 무제한이라 카드가 세로로 길쭉해지던 결함. 3줄로 자르고
   말줄임(…)을 붙인다. 너비별 열 규칙은 이미 minmax(min(100%,Npx),1fr) auto-fill(:1292-1303)이라
   좁은 화면에서 자동 1열로 접힌다 — 별도 미디어쿼리 불필요(점검 완료). */
.module-link-grid__card-desc {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  font-size: 0.9rem;
  color: #4b5563;
  margin-top: 6px;
  line-height: 1.5;
  overflow-wrap: break-word;
  word-break: keep-all;
}
/* 45호(2026-08-25 사용자 확정 — 혼합안) — 제목+큰 숫자는 가운데(카드 정체성·한눈에 식별),
   설명 문장+메타 줄은 왼쪽(2줄 이상 서술의 줄 시작점이 흔들리면 가독 저하 — 특히 축이
   섞인 카드형[at-a-glance류]에서 두드러짐). align-self:stretch로 이 두 요소만 부모의
   align-items:center(제목/값 전용) 밖으로 빼 카드 전체 폭을 쓰게 한다 — 표준 부품 자체
   수정이라 variant=card 쓰는 모든 사용처에 공통 적용(사용처별 보정 CSS 아님). */
.module-link-grid__card-desc,
.module-link-grid__card-meta {
  text-align: left;
  align-self: stretch;
}
/* 45호 반응형 확정(2026-08-25 사용자 확정 — 데스크톱 다열 좁은 카드 관찰 vs 모바일 1열 전폭
   관찰 둘 다 반영): 브레이크포인트 = .module-card-grid가 실제로 1fr(전폭 1열)로 접히는
   지점(components.css:989 max-width:768px)과 «동일» — 그 아래에서는 혼합안(제목·값=가운데)
   자체가 전폭 카드에서 가독 저하이므로 카드 전체를 좌측 정렬로 되돌린다(제목·값도 포함 —
   전폭에서는 desc/meta 뿐 아니라 전부 좌측이 자연스럽다). 데스크톱(768px 초과)은 위 혼합안
   그대로 유지. */
@media (max-width: 768px) {
  .module-link-grid__card { align-items: flex-start; text-align: left; }
}
.module-info-box .module-link-grid__card,
.module-info-box .module-link-grid__card:hover { text-decoration: none; }
/* CTA 변형 = 좌측 정렬 그라데이션 카드(제목+보조+화살표) */
.module-link-grid__card--cta {
    align-items: stretch;
    text-align: left;
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-color: #93c5fd;
    padding: 16px;
}
.module-link-grid__card--cta:hover { border-color: #2563eb; box-shadow: 0 4px 8px rgba(37,99,235,0.15); }
.module-link-grid__card-sub { display: block; font-size: 0.85rem; color: #4b5563; margin-top: 4px; line-height: 1.4; }
.module-link-grid__card-cta { display: inline-block; margin-top: 8px; color: #2563eb; font-size: 0.85rem; font-weight: 600; }

/* 카드색 프리셋(card_color 옵션 → --cards-{color}) — 기본 파랑 외 소프트 톤. specificity 0,2,0 으로 기본 배경 확실히 override.
   색 값 = info-box 파스텔 팔레트와 일관. 더 필요하면 여기 한 줄씩만 추가(전 카드 재사용). */
.module-link-grid--cards-green  .module-link-grid__card { background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%); border-color: #86efac; }
.module-link-grid--cards-amber  .module-link-grid__card { background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%); border-color: #fcd34d; }
.module-link-grid--cards-rose   .module-link-grid__card { background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%); border-color: #fca5a5; }
.module-link-grid--cards-purple .module-link-grid__card { background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%); border-color: #d8b4fe; }
.module-link-grid--cards-gray   .module-link-grid__card { background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%); border-color: #cbd5e1; }


/*═══════════════════════════════════════════════════════════════
  ⑰ hub-block (Block) — 허브 네비게이션
═══════════════════════════════════════════════════════════════*/

.module-hub-nav {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 16px;
}

/* BEM Block 자체 specificity 보강 (element selector 침범 방어) — h3.module-hub-nav__title compound 0,1,1.
   .lt-content / 기타 element-selector wrapper 영역에서도 동일 적용. (사용자 영구 명시 2026-05-04 — wrapper 폐기 + BEM Block 단독 정합) */
h3.module-hub-nav__title,
.module-hub-nav__title {
    font-size: 1.05rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 12px 0;
}

p.module-hub-nav__desc,
.module-hub-nav__desc {
    font-size: 0.9rem;
    color: #64748b;
    line-height: 1.5;
    margin: 0 0 12px 0;
}

p.module-hub-nav__intro,
.module-hub-nav__intro {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.6;
    margin: 0 0 16px 0;
}

/* hub-list — 허브 link list (사용자 영구 mandate 2026-05-27: 카드 양식 → 텍스트 list 양식 전환)
   직관적 BEM class 양식: .module-hub-nav__list / .module-hub-nav__item / .module-hub-nav__link / .module-hub-nav__label
   모바일 접속 영역 공간 큰 효율 + 카드 영역 영역 부담 차단 + 더 많은 link 한 화면 노출 */
.module-hub-nav__list {
    list-style: none;
    margin: 8px 0 0 0;
    padding: 0;
}

/* hub-block 내부 마지막 child = margin-bottom 0 (박스 padding-bottom 만 적용 = 상/하 일관성) */
.module-hub-nav > *:last-child {
    margin-bottom: 0;
}

/* hub-list__item — list 안 개별 item (= 텍스트 행 1개)
   모바일 영역 공간 효율 + 사용자 push 부합 본질 (= 카드 양식 폐기) */
.module-hub-nav__item {
    border-bottom: 1px solid #e2e8f0;
    transition: background 0.2s ease;
}

.module-hub-nav__item:last-child {
    border-bottom: 0;
}

.module-hub-nav__item:hover {
    background: #f1f5f9;
}

.module-hub-nav__link {
    display: block;
    /* 사용자 영구 mandate (2026-05-27): 불렛 양식 hanging indent
       → emoji 영역(= 좌측 1.8em) + 텍스트 줄바꿈 시점 사후 줄 emoji 사후 위치에서 시작
       → padding-left 1.8em + text-indent -1.8em = 첫 줄 emoji 좌측 영역 + 사후 줄 들여쓰기 */
    padding: 10px 4px 10px 1.8em;
    text-indent: -1.8em;
    color: #1e293b;
    text-decoration: none;
    font-size: 0.95rem;
    font-weight: 500;
    /* 사용자 영구 mandate (2026-05-27): 줄바꿈 시점 줄 사이 여유 영역 강화 (1.4 → 1.65) */
    line-height: 1.65;
}

.module-hub-nav__link:hover {
    color: #1d4ed8;
    text-decoration: none;
}

.module-hub-nav__label {
    display: inline;
    color: inherit;
}

/* 모바일 768px 이하 = 사용자 push 부합 본질 (= 공간 큰 효율) */
@media (max-width: 768px) {
    .module-hub-nav__link {
        padding: 12px 4px 12px 1.8em;
        text-indent: -1.8em;
        font-size: 0.95rem;
    }
    .module-hub-nav {
        padding: 12px 14px;
    }
}

/* hub-matrix — 허브 매트릭스 (표 형태) */
.hub-matrix {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    margin: 16px 0;
}

.hub-matrix th,
.hub-matrix td {
    padding: 8px 10px;
    border: 1px solid #e2e8f0;
    text-align: center;
}

.hub-matrix thead {
    background: #f1f5f9;
    font-weight: 700;
}


/*═══════════════════════════════════════════════════════════════
  ⑱ tier-header (Block) — 티어 헤더 (그라데이션 + 텍스트)
═══════════════════════════════════════════════════════════════*/

.tier-header {
    background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
    color: #ffffff;
    border-radius: 8px;
    padding: 16px 24px;
    margin: 24px 0 16px 0;
    text-align: center;
}

.tier-header__title {
    font-size: 1.15rem;
    font-weight: 700;
    margin: 0;
    color: #ffffff;
}

.tier-header__subtitle {
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.85);
    margin: 4px 0 0 0;
}

/* Modifier — 색상 */
.tier-header--blue   { background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%); }
.tier-header--green  { background: linear-gradient(135deg, #22c55e 0%, #15803d 100%); }
.tier-header--purple { background: linear-gradient(135deg, #a855f7 0%, #6b21a8 100%); }
.tier-header--gold   { background: linear-gradient(135deg, #eab308 0%, #a16207 100%); }


/*═══════════════════════════════════════════════════════════════
  ⑲ badge (Block) — 배지 + 색상 Modifier
═══════════════════════════════════════════════════════════════*/

.badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.5;
    background: #e2e8f0;
    color: #1e293b;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* Modifier — 색상 */
.badge--blue    { background: #dbeafe; color: #1e40af; }
.badge--green   { background: #d1fae5; color: #065f46; }
.badge--red     { background: #fee2e2; color: #991b1b; }
.badge--orange  { background: #fed7aa; color: #9a3412; }
.badge--yellow  { background: #fef9c3; color: #854d0e; }
.badge--purple  { background: #ede9fe; color: #5b21b6; }
.badge--silver  { background: #f1f5f9; color: #475569; }
.badge--bronze  { background: #fed7aa; color: #9a3412; }
.badge--gold    { background: #fef3c7; color: #92400e; }
.badge--mint    { background: #ccfbf1; color: #134e4a; }

/* Modifier — 의미 (alias) */
.badge--info     { background: #dbeafe; color: #1e40af; }
.badge--success  { background: #d1fae5; color: #065f46; }
.badge--warning  { background: #fed7aa; color: #9a3412; }
.badge--danger   { background: #fee2e2; color: #991b1b; }
.badge--fact     { background: #fef9c3; color: #854d0e; }
.badge--verified { background: #dcfce7; color: #14532d; }


/*═══════════════════════════════════════════════════════════════
  ⑳ tag (Block) — 작은 태그/링크 (인라인)
═══════════════════════════════════════════════════════════════*/

.tag {
    display: inline-block;
    padding: 4px 10px;
    background: #f1f5f9;
    color: #475569;
    border-radius: 999px;
    font-size: 0.85rem;
    text-decoration: none;
    transition: background 0.2s ease;
    margin: 2px 4px 2px 0;
}

.tag:hover {
    background: #e2e8f0;
    color: #1e293b;
    text-decoration: none;
}

/* tag-cloud — 태그 그룹 */
.tag-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 16px 0;
}

/* Modifier — 색상 */
.tag--blue   { background: #dbeafe; color: #1e40af; }
.tag--blue:hover { background: #bfdbfe; color: #1e3a8a; }
.tag--green  { background: #d1fae5; color: #065f46; }
.tag--green:hover { background: #a7f3d0; color: #064e3b; }


/*═══════════════════════════════════════════════════════════════
  ㉑ link-list (Block) — 링크 리스트
═══════════════════════════════════════════════════════════════*/

.link-list {
    list-style: none;
    padding: 0;
    margin: 16px 0;
}

.link-list__item {
    margin-bottom: 8px;
    padding: 8px 12px;
    background: #f8fafc;
    border-radius: 4px;
    transition: background 0.2s ease;
}

.link-list__item:hover { background: #f1f5f9; }

.link-list__link {
    color: #1d4ed8;
    text-decoration: none;
    font-size: 0.95rem;
}

.link-list__link:hover { color: #1e40af; text-decoration: underline; }


/*═══════════════════════════════════════════════════════════════
  ㉘ bullet-list (Block) — 불렛 리스트 (어디든 사용 단독 BEM, KISS-SSOT)
  ───────────────────────────────────────────────────────────────
  사용: info-box / calc-briefing / citation-passage / 본문 어디든.
  Modifier:
    (default) → 불렛 list (disc)
    --ol      → 번호 list (decimal)
    --none    → 불렛 부재 (padding 0)
═══════════════════════════════════════════════════════════════*/

.bullet-list {
    margin: 8px 0;
    padding-left: 20px;
    list-style: disc;
}

.bullet-list:last-child { margin-bottom: 0; }

.bullet-list__item {
    margin-bottom: 6px;
    line-height: 1.65;
}

.bullet-list__item:last-child { margin-bottom: 0; }

/* Modifier — list 타입 */
.bullet-list--ol { list-style: decimal; }
.bullet-list--none { list-style: none; padding-left: 0; }


/*═══════════════════════════════════════════════════════════════
  ㉙ 박스 내부 마지막 child 마진 정합 (KISS-SSOT, 모든 박스 일괄)
  ───────────────────────────────────────────────────────────────
  글로벌 p { margin-bottom: 1.5em; } 차단 — 박스 padding-bottom 이중 여백 방지.
  direct child > *:last-child = p / div / ul / ol 등 모든 타입 처리.
═══════════════════════════════════════════════════════════════*/

.module-briefing > *:last-child,
.module-briefing__body > *:last-child,
.module-info-box > *:last-child,
.module-faq__a > *:last-child,
.module-core-facts__text > *:last-child,
.module-quick-answer__content > *:last-child,
.module-answer-first > *:last-child,
.module-answer-first__answer > *:last-child,
.module-highlight > *:last-child,
.module-header > *:last-child {
    margin-bottom: 0;
}


/*═══════════════════════════════════════════════════════════════
  ㉒ answer-first (Block) — AI 인용용 Q&A 박스 (SEO 핵심)
  ───────────────────────────────────────────────────────────────
  사용: SEO 답변 우선 영역 (AI 스크래퍼/검색 인용 최적화)
═══════════════════════════════════════════════════════════════*/

.module-answer-first {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border: 1px solid #7dd3fc;
    border-radius: 12px;
    padding: 24px 28px;
    margin-bottom: 24px;
}

.module-answer-first__question {
    font-size: 1.25rem;
    font-weight: 700;
    color: #0c4a6e;
    margin: 0 0 12px 0;
    line-height: 1.4;
}

.module-answer-first__answer {
    font-size: 1.05rem;
    color: #1e293b;
    line-height: 1.7;
    margin: 0 0 8px 0;
}

.module-answer-first__answer p { margin: 0 0 8px 0; }
.module-answer-first__answer p:last-child { margin-bottom: 0; }

.module-answer-first__source {
    font-size: 0.85rem;
    color: #64748b;
    margin: 12px 0 0 0;
    font-style: italic;
}

.module-answer-first__table {
    margin-top: 16px;
    border-radius: 8px;
    overflow: hidden;
}


/*═══════════════════════════════════════════════════════════════
  ㉓ quick-answer-box (Block) — 빠른 답변 박스 (헤더 직후 SEO 핵심)
═══════════════════════════════════════════════════════════════*/

.module-quick-answer {
    background: linear-gradient(135deg, #eff6ff 0%, #f0f9ff 100%);
    border: 1px solid #bfdbfe;
    border-left: 4px solid #3b82f6;
    border-radius: 8px;
    padding: 20px 24px;
    margin: 20px 0 24px;
}

.module-quick-answer__header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.module-quick-answer__icon {
    font-size: 22px;
    line-height: 1;
}

.module-quick-answer__title {
    font-size: 20px;
    font-weight: 700;
    color: #1e40af;
    margin: 0;          /* v14.16 — h2 default margin reset (사용자 mandate: Quick Summary h2 정정) */
    padding: 0;
    line-height: 1.3;
    border-left: none;  /* h2 기본 border-left 차단 (.module-section__body h3 등 영역 영역) */
}

.module-quick-answer__content {
    font-size: 16px;
    color: #374151;
    line-height: 1.75;
}

.module-quick-answer__content p { margin: 0 0 8px; }
.module-quick-answer__content p:last-child { margin-bottom: 0; }

.module-quick-answer__source {
    font-size: 0.85rem;
    color: #64748b;
    margin-top: 12px;
    font-style: italic;
}


/*═══════════════════════════════════════════════════════════════
  ㉔ affiliate-block (Block) — 제휴/스폰서 블록
═══════════════════════════════════════════════════════════════*/

.module-affiliate {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 24px;
}

.module-affiliate__title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 16px 0;
}

.module-affiliate__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 16px;
    margin-bottom: 16px;
}

.module-affiliate__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 16px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    text-decoration: none;
    color: #1e293b;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.module-affiliate__item:hover {
    border-color: #3b82f6;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    text-decoration: none;
}

.module-affiliate__img {
    width: 80px;
    height: 80px;
    object-fit: contain;
    margin-bottom: 8px;
}

.module-affiliate__name {
    font-size: 0.95rem;
    font-weight: 600;
    margin: 4px 0;
    color: #1e293b;
}

.module-affiliate__reason {
    font-size: 0.8rem;
    color: #64748b;
    margin: 0;
}

.module-affiliate__disclaimer {
    font-size: 0.75rem;
    color: #94a3b8;
    margin-top: 12px;
    font-style: italic;
    text-align: center;
}


/*═══════════════════════════════════════════════════════════════
  ㉕ core-facts (Block) — 핵심 사실 모음 (계산기/롱테일 SEO 핵심)
  ───────────────────────────────────────────────────────────────
  대체: calc-core-facts (us/ 사용 중) — 일반화 명명
═══════════════════════════════════════════════════════════════*/



/*═══════════════════════════════════════════════════════════════
  ㉖ briefing-box (Block) — 브리핑 박스 (요약/팁/설명)
  ───────────────────────────────────────────────────────────────
  대체: calc-briefing (us/ 사용 중) — 일반화 명명
═══════════════════════════════════════════════════════════════*/

.module-briefing,
.module-briefing {
    background: #f8fafc;
    border-left: 4px solid #3b82f6;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 16px 0;
}

.module-briefing__title,
.module-briefing__title {
    font-size: 1rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 8px 0;
}

.module-briefing__body,
.module-briefing__body {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.7;
    margin: 0;
}

/* Modifier — 색상 변형 */
.module-briefing--tip,
.module-briefing--tip {
    background: #f0fdf4;
    border-left-color: #22c55e;
}

.module-briefing--explain,
.module-briefing--explain {
    background: #faf5ff;
    border-left-color: #a855f7;
}


/*═══════════════════════════════════════════════════════════════
  ㉗ attr-card (Block) — 속성 카드 (큰 제목 + 본문 + 부수)
═══════════════════════════════════════════════════════════════*/

.attr-card,

.attr-card__title,

.attr-card__body,

.attr-card__brackets,

.attr-list,


/*═══════════════════════════════════════════════════════════════
  ㉘ example-block (Block) — 예시 박스 (계산 예시, 단계 설명)
  ───────────────────────────────────────────────────────────────
  대체: calc-example (us/ 사용 중) — 일반화 명명
═══════════════════════════════════════════════════════════════*/

.module-calc-example,
.module-calc-example {
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 16px 0;
}

.module-calc-example__title,
.module-calc-example__title,
.module-calc-example-title {
    font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 12px 0;
}

/* v13.86 (2026-05-07) — selector 분리 정정 (v13.85 부작용 정정)
   .module-calc-example-step (1세대 단순 schema) — number + 텍스트 한 줄 → display:flex 정합
   .module-calc-example__step (BEM 다단 schema) — header + body 위아래 column → modules.css line 1841 정의 (position:relative + absolute number) */
.module-calc-example-step {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 1px dashed #e2e8f0;
    font-size: 0.95rem;
    color: #374151;
}

.module-calc-example__step {
    /* BEM schema — flex 영역 (modules.css 영역 column flow + absolute number 정의) */
    padding: 8px 0;
    border-bottom: 1px dashed #e2e8f0;
    font-size: 0.95rem;
    color: #374151;
}

.module-calc-example__step:last-child,
.module-calc-example__step:last-child {
    border-bottom: none;
}

.module-calc-example__formula,
.module-calc-example__formula {
    font-family: 'Courier New', Consolas, monospace;
    font-size: 0.9rem;
    color: #0f172a;
    background: #ffffff;
    padding: 8px 12px;
    border-radius: 4px;
    margin: 8px 0;
}

.module-calc-example__formula--final,
.module-calc-example__formula--final {
    background: #fef3c7;
    border: 1px solid #fde68a;
    font-weight: 600;
}

.module-calc-example__step--result,
.module-calc-example__step--result {
    background: #f0fdf4;
    padding: 12px;
    border-radius: 4px;
    margin-top: 12px;
    font-weight: 600;
    color: #14532d;
}


/*═══════════════════════════════════════════════════════════════
  ㉙ method-card (Block) — 방법 카드 (계산 방법 설명)
  ───────────────────────────────────────────────────────────────
  대체: method-card (us/ 사용 중) — 일반화 명명
═══════════════════════════════════════════════════════════════*/

/* v15.80 (2026-05-24 사용자 영구 push) — .module-method-card 사실 = modules.css 정의 사실 사용 본문 사실 (icon layout 사실)
   content.css 안 `.module-method-card` 사실만 보존 사실 (number layout 사실). `.module-method-card` selector 사실 제거 사실 */
.module-method-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 12px;
    position: relative;
    /* v14.47 (2026-05-09, 사용자 mandate "같은 행 카드 길이 맞춤"): grid stretch 영영구 */
    height: 100%;
    /* v15.81 (2026-06-07): icon·title 같은 줄 — 세로 강제(flex-direction:column) 제거.
       카드 레이아웃은 새버전 SSOT(.module-method-card line ~5226, flex-wrap row)가 담당 */
}

.module-method-card__number {
    position: absolute;
    top: 16px;
    left: 16px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #3b82f6;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.module-method-card__title {
    font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 8px 0;
}

.module-method-card__body {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.7;
    margin: 0;
}

.module-method-card__example,
.module-method-card__example {
    margin-top: 12px;
    padding: 12px;
    background: #f8fafc;
    border-radius: 4px;
    font-size: 0.9rem;
}

.module-method-card__badge,
.module-method-card__badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    margin-left: 8px;
}

.module-method-card__badge--recommended,
.module-method-card__badge--recommended {
    background: #d1fae5;
    color: #065f46;
}

.module-method-card__badge--caution,
.module-method-card__badge--caution {
    background: #fef3c7;
    color: #92400e;
}

.module-method-card__badge--warning,
.module-method-card__badge--warning {
    background: #fee2e2;
    color: #991b1b;
}

.module-method-card__icon--red,
.module-method-card__icon--red {
    color: #ef4444;
}

.module-method-card__tag--warning,
.module-method-card__tag--warning {
    color: #f97316;
    font-weight: 600;
}


/*═══════════════════════════════════════════════════════════════
  ㉚ stat-card (Block) — 통계 카드 + 색상 Modifier
═══════════════════════════════════════════════════════════════*/

/* stat-card SSOT는 이 파일 맨 끝으로 이동 (2026-06-05): components.css의 그라데이션·shine·떠오름 호버 버전을
   modules.css 단일 소스로 통합. (이 자리에 있던 단순 버전은 components가 덮어 죽어 있던 dead CSS였음.)
   맨 끝 배치 이유 = 로드 순서 최후 → 기존 components 위치를 재현해 현재 모습 그대로 유지. */


/*═══════════════════════════════════════════════════════════════
  ㉛ change-list (Block) — 변경 항목 리스트 (정책 변경/시점 비교)
═══════════════════════════════════════════════════════════════*/

.change-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.change-item {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 12px;
}

.change-item__badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    margin-right: 8px;
    background: #d1fae5;
    color: #065f46;
}

.change-item__badge--down {
    background: #fee2e2;
    color: #991b1b;
}

.change-item--down {
    background: #fef2f2;
    border-color: #fecaca;
}

.change-item__impact {
    margin-top: 8px;
    font-size: 0.9rem;
    color: #475569;
}

.change-item__impact-bar {
    width: 100%;
    height: 8px;
    background: #e2e8f0;
    border-radius: 4px;
    margin: 8px 0;
    overflow: hidden;
}

.change-item__impact-fill {
    height: 100%;
    background: #3b82f6;
    transition: width 0.3s ease;
}

.change-item__impact-fill--good { background: #22c55e; }
.change-item__impact-fill--high { background: #ef4444; }
.change-item__impact-fill--mid  { background: #f97316; }
.change-item__impact-fill--low  { background: #94a3b8; }

.change-item__impact-label {
    font-size: 0.85rem;
    color: #64748b;
    margin-bottom: 4px;
    font-weight: 600;
}

.change-item__impact-text {
    font-size: 0.9rem;
    color: #374151;
    line-height: 1.5;
    margin-top: 4px;
}


/*═══════════════════════════════════════════════════════════════
  ㉜ reference-table (Block) — 참고 표 (큰 데이터 표)
  ───────────────────────────────────────────────────────────────
  대체: reference-table-block (us/ 사용 중) — 일반화 명명
═══════════════════════════════════════════════════════════════*/

.module-table--reference {
    margin: 24px 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 8px;
}

.module-table--reference table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.reference-table-caption {
    caption-side: top;
    text-align: left;
    font-size: 1rem;
    font-weight: 700;
    color: #1e293b;
    padding: 10px 14px;
    background: #f8fafc;
    border-left: 4px solid #3b82f6;
    margin-bottom: 0;
}

.module-table--reference th {
    padding: 10px;
    background: #e2e8f0;
    color: #1e293b;
    font-weight: 700;
    text-align: center;
    border-bottom: 2px solid #94a3b8;
}

.module-table--reference td {
    padding: 8px 10px;
    text-align: right;
    border-bottom: 1px solid #e5e7eb;
    color: #374151;
}

.module-table--reference td:first-child {
    text-align: left;
}


/*═══════════════════════════════════════════════════════════════
  ㉝ spoke-hero (Block) — 롱테일 스포크 hero (header-block 변형)
  ───────────────────────────────────────────────────────────────
  대체: calc-spoke-hero (us/ 사용 중) — 일반화 명명
═══════════════════════════════════════════════════════════════*/

.spoke-hero,

.spoke-hero__title,

.spoke-hero__subtitle,


/*═══════════════════════════════════════════════════════════════
  ㉞ content-section (Block) — 본문 섹션 wrapper (큰 모듈)
  ───────────────────────────────────────────────────────────────
  대체: calc-content-section (us/ 사용 중) — 일반화 명명
  jiwon.css의 .content-section + Element 절차 정합
═══════════════════════════════════════════════════════════════*/

.content-section,

.content-section__title {
    font-size: 24px;
    color: #1a73e8;
    padding-bottom: 10px;
    border-bottom: 1px solid #e0e0e0;
    margin: 0 0 15px 0;
    line-height: 1.3;
    font-weight: 700;
}

.content-section__intro,
.content-section__text {
    font-size: 16px;
    color: #475569;
    line-height: 1.7;
    margin: 0 0 16px 0;
}

/* content-section Element (us/ 사용 중 — 호환 유지) */
.module-section__body {
    font-size: 16px;
    color: #374151;
    line-height: 1.7;
    margin: 0 0 16px 0;
}

.content-section-note {
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
    margin: 8px 0;
    padding: 8px 12px;
    background: #f8fafc;
    border-radius: 4px;
}

.content-section-fact {
    background: #fef3c7;
    border-left: 4px solid #f59e0b;
    border-radius: 4px;
    padding: 12px 16px;
    margin: 12px 0;
    font-size: 15px;
    color: #78350f;
    line-height: 1.6;
}


/*═══════════════════════════════════════════════════════════════
  ㉟+ 추가 Block — us/ 사용 중 잔존 (호환 정의)
═══════════════════════════════════════════════════════════════*/

/* faq-source — FAQ 출처 표기 */
.faq-source {
    display: block;
    font-size: 0.8rem;
    color: #64748b;
    margin-top: 8px;
    font-style: italic;
}

/* highlight — 인라인 하이라이트 (이미 ⑤ 섹션에 정의 — 잔존) */
.highlight-green {
    color: #065f46;
    font-weight: 600;
    background: linear-gradient(180deg, transparent 60%, #bbf7d0 60%);
    padding: 0 2px;
}

/* overview-banner — 개요 배너 (롱테일 hero 변형) */
.overview-banner {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 16px 0;
    font-size: 16px;
    color: #075985;
    line-height: 1.7;
}

.overview-banner__title {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0c4a6e;
    margin: 0 0 8px 0;
}

/* interaction-box — 상호작용 박스 (CTA 변형) */
.module-info-box--interactive {
    background: #f8fafc;
    border: 1px dashed #94a3b8;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 16px 0;
    text-align: center;
}

/* hub-base-block — 허브 base 블록 (hub-block 변형) */
.module-hub-nav__base {
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 16px;
}

/* row-highlight / row-group-header — 표 행 변형 (table 안 직접 결합) */
.row-highlight td {
    background: #fef3c7;
    font-weight: 600;
}

.row-group-header td {
    background: #f1f5f9;
    font-weight: 700;
    color: #1e293b;
    border-top: 2px solid #94a3b8;
}

/* description — 일반 설명 (utility) */
.description {
    font-size: 0.9rem;
    color: #64748b;
    line-height: 1.6;
    margin: 4px 0 12px 0;
}

/* muted — 부수 텍스트 */
.muted {
    color: #94a3b8;
}

/* positive / negative — 증감 표기 */
.positive { color: #15803d; font-weight: 600; }
.negative { color: #b91c1c; font-weight: 600; }


/*═══════════════════════════════════════════════════════════════
  ㉟ Utility — 색상/정렬/줄간격 (BEM 부재, 단일 클래스)
═══════════════════════════════════════════════════════════════*/

/* 텍스트 색상 */
.text-blue   { color: #1d4ed8; }
.text-green  { color: #065f46; }
.text-red    { color: #991b1b; }
.text-orange { color: #9a3412; }
.text-yellow { color: #92400e; }
.text-purple { color: #5b21b6; }
.text-gray   { color: #475569; }

/* 시세·가격 인라인 강조 (인라인 style 대체 — 시세 관례: 상승 빨강·하락 파랑 / 저렴·최저=빨강 절약 신호) */
.price-low  { color: #dc2626; font-weight: 700; }   /* 최저가·저렴(절약 신호) */
.price-high { color: #475569; }                       /* 비쌈·높음(중립 회색) */
.chg-up     { color: #dc2626; font-weight: 600; }    /* 시세 상승 */
.chg-down   { color: #2563eb; font-weight: 600; }    /* 시세 하락 */
.chg-flat   { color: #64748b; }                       /* 보합 */
/* 표 셀 안 좌우 분리 유틸 (범용·전 아이템 공용) — 명칭(왼쪽, 보통 링크) + 값(오른쪽). 한 셀에 명칭+값 동거 시 (2026-06-18) */
.cell-split { display: flex; justify-content: space-between; align-items: center; gap: .5rem; }
.cell-split > :first-child { text-align: left; min-width: 0; overflow-wrap: anywhere; }
.cell-split .cell-val { white-space: nowrap; flex: 0 0 auto; }   /* 오른쪽 값(가격 등) — 줄바꿈 방지 */
/* 주유소 지도 height — 인라인에서 이관, 모바일 세로 축소(2026-06-18 사용자) */
.module-gst-locator__map { height: 460px; }
.module-naver-map__canvas { height: 340px; }
@media (max-width: 600px) {
  .module-gst-locator__map { height: 320px; }
  .module-naver-map__canvas { height: 260px; }
}
.module-table__row--here { background: #eff6ff; font-weight: 700; }   /* 표 안 '이 항목/이 주유소' 행 강조 */
.module-table__row--best td { font-weight: 700; }                    /* 랭킹/비교 표 최적(최저가·1위) 행 강조 — 전 아이템 공통 */
.text-amber  { color: #92400e; }
.text-mint   { color: #134e4a; }

/* 정렬 */
.align-left   { text-align: left; }
.align-right  { text-align: right; }
.align-center { text-align: center; }

/* 너비 */
.width-100 { width: 100%; }

/* 접근성 — 스크린 리더 전용 (시각 숨김) */
/* v14.59 (2026-05-09, 사용자 mandate "타이틀만 나옴"):
 *   결함: .module-chart-ai-table selector가 visually-hidden과 동일 그룹으로 묶여 항상 시각 차단
 *   원인: v14.57에서 .module-chart-ai-table을 visually-hidden 그룹에 추가 → visible:true schema 무력화
 *   정정: .module-chart-ai-table selector 제거 → class "visually-hidden" 영역만 시각 차단
 *         module markup에서 visible:false 시 "visually-hidden calc-chart-ai-table" 영역 → 차단 정합
 *         visible:true 시 "calc-chart-ai-table" 영역만 → 시각 노출 정합
 */
.visually-hidden,
.screen-reader-text,
table.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    /* 🚨 HSCROLL(2026-07-09): .module-section__body table{width:100%!important}(특이도 0,2,1)가 width 1px(0,1,1)를 이겨
       숨김 차트 데이터표가 646px로 부활 → 모바일 문서 가로 오버플로(주유소 계열 실증·CDP 실측). max-width는 width
       특이도 경쟁과 무관하게 항상 승리(used = min(width, max-width)) → 봉인. min-width 0 = 테이블 min-content 하한 해제. */
    max-width: 1px !important;
    min-width: 0 !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* 줄간격 */
.lineheight-30 { line-height: 30px; }
.lineheight-35 { line-height: 35px; }

/* sr-only — visually-hidden alias (접근성) */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}


/*═══════════════════════════════════════════════════════════════
  ㊱ 호환 alias — 기존 us/ 사용 명명 호환 (cascade 정합)
  ───────────────────────────────────────────────────────────────
  본 영역 = us/ 사용 중 명명 ↔ content.css BEM 표준 명명 호환
  검증 후 사용자 승인 시점에 기존 명명 정리 → 단일 SSOT
═══════════════════════════════════════════════════════════════*/

/* 박스 호환 — tip-box / warning-box (info-box 색상 Modifier 정합) */
.tip-box {
    background: #f0fdf4;
    border-left: 4px solid #22c55e;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 20px 0;
    font-size: 16px;
    line-height: 1.8;
    color: #14532d;
}

.warning-box {
    background: #fff7ed;
    border-left: 4px solid #f97316;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 20px 0;
    font-size: 16px;
    line-height: 1.8;
    color: #7c2d12;
}

/* (CTA 색상 alias 중복 제거 → 파일 끝 cta SSOT로 통합, 2026-06-05) */

/* steps 모듈 컨테이너 SSOT (2026-06-05: grid 오버라이드 정리 — 항목은 ⑪ step-card의 .module-steps__item).
   세로 스택 = 블록 컨테이너 + 항목 자체 margin-bottom. steps.php 출력(__num/__content/__title/__desc)과 1:1. */
.module-steps {
    margin: 24px 0;
}
.module-steps + .info-table {
    margin-top: 32px;
}

.step-num,
.step-number {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #3b82f6;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-title {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 8px 0;
}

.step-desc {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.6;
    margin: 0;
}

/* 표 호환 — table-scroll-wrap / td-notes (table-block 정합) */
.table-scroll-wrap,
.module-table__scroll-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 16px 0;
    border-radius: 8px;
}

.td-notes {
    text-align: left;
    font-size: 14px;
    color: #64748b;
}

/* 표 utility — striped / row-subtotal */
.striped tr:nth-child(odd) td {
    background: #f8fafc;
}

.row-subtotal td {
    background: #e2e8f0;
    font-weight: 600;
    border-top: 1px solid #94a3b8;
}

/* 레이블 utility */
.label-hint {
    font-size: 0.85rem;
    color: #64748b;
    margin-left: 8px;
    font-weight: 400;
}

.unit-label {
    font-size: 0.9rem;
    color: #475569;
    font-weight: 500;
}

/* state-hero — 미국 주(state) 페이지 hero (header-block 변형) */
.state-hero {
    padding: 30px 20px;
    margin: 20px 0;
    border-radius: 8px;
    text-align: center;
    color: #ffffff;
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
}

.state-hero__title {
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 8px 0;
    color: #ffffff;
    line-height: 1.2;
}

.state-hero__subtitle {
    font-size: 1.1rem;
    color: rgba(255, 255, 255, 0.9);
    margin: 0;
}

/* highlight (인라인 강조 — 이미 ⑤ 섹션에 정의됨, 본 alias 잔존 검증) */

/* 좌측 테두리 색상 (어떤 박스에든 결합) */
.border-left-blue   { border-left: 4px solid #3b82f6; }
.border-left-green  { border-left: 4px solid #22c55e; }
.border-left-red    { border-left: 4px solid #ef4444; }
.border-left-orange { border-left: 4px solid #f97316; }
.border-left-yellow { border-left: 4px solid #eab308; }
.border-left-purple { border-left: 4px solid #a855f7; }
.border-left-mint   { border-left: 4px solid #14b8a6; }
.border-left-gray   { border-left: 4px solid #64748b; }
.border-left-sky    { border-left: 4px solid #0284c7; }
.border-left-amber  { border-left: 4px solid #f59e0b; }


/* === END content.css === */

/* =============================================================
 * Step 6-C: calc.css → modules.css 이동 (2026-05-30)
 * 본질: 4세대 framework SSOT 통일 양식
 * 사전 calc.css 안 모든 양식 (= .module-* + 계산기 UI 양식)
 * 정정 본질: .calc-* → .module-calc-{ui}, .lt-* → 사전 4세대 모듈 양식 통합
 * ============================================================ */
/**
 * calc-modules.css v2.0 — Premium Calculator UI
 *
 * Design principles:
 *   - 8px modular spacing grid
 *   - WCAG AA contrast (body #374151 = 5.7:1, secondary #4b5563 = 4.6:1)
 *   - Flat single-card layout (no double boxing)
 *   - Unified input/select height (48px)
 *   - Mobile-first responsive
 *   - color-mix() focus rings for theme-aware styling
 *
 * Depends on: components.css (layout, header, FAQ, CTA, step-cards, stat-cards)
 */

/* ===== Design Tokens ===== */
:root {
  --color-primary: #1a73e8;
  --color-primary-dark: #1557b0;
  --color-primary-light: #e8f0fe;
  --color-radius-sm: 8px;
  --color-radius-md: 12px;
  --color-radius-lg: 16px;
  --color-shadow-sm: 0 1px 3px rgba(0,0,0,.06);
  --color-shadow-md: 0 4px 16px rgba(0,0,0,.08);
  --color-shadow-focus: 0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent);
  --color-text-primary: #111827;
  --color-text-body: #374151;
  --color-text-secondary: #4b5563;
  --color-text-muted: #6b7280;
  --color-border: #e5e7eb;
  --color-border-light: #f3f4f6;
  --color-bg-subtle: #f9fafb;
}

/* ===== Theme Color Variants — DEPRECATED 2026-04-16 =====
   모든 계산기 페이지는 :root 기본 블루(#1a73e8)로 통일.
   .theme-*  클래스 오버라이드 제거.
   사유:
     - 사용자는 단일 계산기만 접근 → 테마 구분 불필요
     - 일관성 우선 (thead/col-highlight/hover/스크롤바 모두 중립 통일)
     - Premium finance UX 표준 (Stripe/Apple/Morningstar 모두 단일 hue)
   HTML에서 .theme-green/red/purple/gold 클래스는 그대로 있어도 무해
   (오버라이드 없으므로 :root 블루 상속)
   ====================================================== */


/* ==========================================================
   CALC MODULE — Single flat card
   ========================================================== */
.module-calc-module {
  background: #fff;
  border: 2px solid color-mix(in srgb, var(--color-primary) 35%, #e5e7eb);
  border-radius: var(--color-radius-lg);
  padding: 32px 24px;
  margin: 24px 0 32px;
  box-shadow: var(--color-shadow-sm);
}
.module-calc-module__title {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 24px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--color-primary-light);
}


/* ==========================================================
   FORM LAYOUT
   ========================================================== */
.module-calc-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.module-calc-input-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.module-calc-input-group label {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text-body);
}
.module-calc-input-group label span.label-hint {
  font-weight: 400;
  color: var(--color-text-secondary);
  font-size: 14px;
  margin-left: 4px;
}

/* ==========================================================
   INPUT ROW (가로 배치 — Month/Day/Year, ft+in, 영역 영역)
   v13.82 (2026-05-07) — modules.css SSOT 정합 (이전 영역 — 영역 — 영역 — calc 영역 inline <style> 영역 정의 — mandate 위반)
   ========================================================== */
.module-calc-input-row {
  display: flex;
  gap: 12px;
  align-items: flex-end;
}
.module-calc-input-row > .module-calc-input-group {
  flex: 1;
  min-width: 0;
}
.module-calc-input-third {
  flex: 1;
  min-width: 0;
}
.module-calc-input-half {
  flex: 1;
  min-width: 0;
}
.module-calc-input-unit--half {
  flex: 1;
  min-width: 0;
}

/* v13.89 (2026-05-07) — Tier 1.M3 inline <style> 영역 — bmi/calc-ui.php + va-disability-rating/calc-ui.php SSOT */
.module-calc-input-row--compact {
  /* bmi ft+in / 영역 영역 영역 — 작은 gap (8px) */
  gap: 8px;
}
.module-calc-input-row--checkbox {
  /* va-disability-rating — checkbox row + margin-bottom */
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}

/* v13.89 — calc-checkbox (va-disability-rating SSOT) */
.module-calc-checkbox {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  color: #475569;
  white-space: nowrap;
  cursor: pointer;
}
.module-calc-checkbox input[type="checkbox"] {
  width: 16px;
  height: 16px;
  cursor: pointer;
}

/* v13.89 — calc-btn--secondary (va-disability-rating SSOT) */
.module-calc-btn--secondary {
  background: #f1f5f9;
  color: #334155;
  border: 1px solid #dbeafe;
  font-size: 13px;
  padding: 8px 12px;
  border-radius: 6px;
  cursor: pointer;
}
.module-calc-btn--secondary:hover {
  background: #e2e8f0;
}

/* v13.89 — calc-chart-wrap--narrow (ss-fairness-act SSOT) */
.module-chart-wrap--narrow {
  max-width: 360px;
  margin: 16px auto;
}

/* v13.89 — action-plan-list (ss-fairness-act SSOT) */
.action-plan-list li {
  margin-bottom: 8px;
}
.action-plan-list a {
  color: #2563eb;
  text-decoration: underline;
}

/* v13.89 — unit-converter (unit-converter SSOT) */
.unit-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 4px;
}
.unit-tab {
  padding: 8px 14px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  background: #f9fafb;
  color: #374151;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all .15s ease;
  white-space: nowrap;
}
.unit-tab:hover {
  border-color: #6366f1;
  color: #4f46e5;
  background: #eef2ff;
}
.unit-tab.active {
  background: #4f46e5;
  color: #fff;
  border-color: #4f46e5;
}
.unit-converter-row {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}
.unit-converter-col {
  flex: 1;
  min-width: 0;
}
.unit-converter-col label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #374151;
  margin-bottom: 4px;
}
.unit-converter-swap {
  display: flex;
  align-items: center;
  padding-bottom: 2px;
}
.swap-btn {
  width: 40px;
  height: 40px;
  border: 1px solid #d1d5db;
  border-radius: 50%;
  background: #f9fafb;
  color: #4f46e5;
  font-size: 20px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .15s ease;
  flex-shrink: 0;
}
.swap-btn:hover {
  background: #4f46e5;
  color: #fff;
  border-color: #4f46e5;
}
@media (max-width: 480px) {
  .unit-converter-row { flex-direction: column; align-items: stretch; }
  .unit-converter-swap { justify-content: center; padding: 4px 0; }
  .swap-btn { transform: rotate(90deg); }
  .unit-tab { padding: 6px 10px; font-size: 12px; }
}


/* ==========================================================
   TOGGLE BUTTONS
   ========================================================== */
.module-calc-toggle {
  display: flex;
  border: 1.5px solid var(--color-border);
  border-radius: var(--color-radius-md);
  overflow: hidden;
}
.module-calc-toggle__btn {
  flex: 1;
  padding: 12px 8px;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background .2s, color .2s;
  border: none;
  background: #fff;
  color: var(--color-text-muted);
}
.module-calc-toggle__btn.active {
  background: var(--color-primary);
  color: #fff;
}
.module-calc-toggle__btn:hover:not(.active) {
  background: var(--color-primary-light);
  color: var(--color-primary);
}
/* Switch toggle — 예/아니오 양쪽 레이블 */
.module-calc-toggle-wrap {
  display: flex;
  justify-content: flex-start;
}
.module-calc-toggle[role="switch"] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: none;
  background: none;
  cursor: pointer;
  padding: 8px 0;
  font-size: 15px;
}
.module-calc-toggle__track {
  position: relative;
  width: 48px;
  height: 26px;
  background: #d1d5db;
  border-radius: 13px;
  transition: background .2s;
  flex-shrink: 0;
}
.module-calc-toggle__thumb {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  background: #fff;
  border-radius: 50%;
  transition: transform .2s;
  box-shadow: 0 1px 3px rgba(0,0,0,.2);
}
.module-calc-toggle[role="switch"].active .module-calc-toggle__track {
  background: var(--color-primary);
}
.module-calc-toggle[role="switch"].active .module-calc-toggle__thumb {
  transform: translateX(22px);
}
.module-calc-toggle__status {
  min-width: 40px;
  font-weight: 600;
  color: var(--color-text-muted);
  transition: color .2s;
  user-select: none;
}
.module-calc-toggle[role="switch"].active .module-calc-toggle__status {
  color: var(--color-primary);
}

/* US toggle pattern (button IS the toggle, not __btn child) */
.module-calc-toggle-group {
  display: flex;
  border: 1.5px solid #d1d5db;
  border-radius: var(--color-radius-md);
  overflow: hidden;
}
.module-calc-toggle-group .module-calc-toggle {
  flex: 1;
  padding: 12px 8px;
  text-align: center;
  /* 2026-07-02 정렬 픽스(모두의카드 발 → 2026-07-11 union 역이식): 상위 .module-calc-toggle{display:flex}
     구식 컨테이너 규칙이 버튼을 플렉스 컨테이너로 만들어 글자가 좌측으로 붙던 결함 → 중앙 정렬 명시 */
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
  border: none;
  background: #f9fafb;
  color: #374151;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.module-calc-toggle-group .module-calc-toggle--active {
  background: var(--color-primary);
  color: #fff;
}
.module-calc-toggle-group .module-calc-toggle:hover:not(.module-calc-toggle--active) {
  background: var(--color-primary-light);
  color: var(--color-primary);
}


/* ==========================================================
   INPUT — Unified 48px height
   ========================================================== */
.module-calc-input {
  width: 100%;
  height: 48px;
  padding: 0 16px;
  font-size: 20px;
  font-weight: 600;
  color: var(--color-text-primary);
  border: 1.5px solid #d1d5db;
  border-radius: var(--color-radius-sm);
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  box-sizing: border-box;
  background: #fff;
}
.module-calc-input:focus {
  border-color: var(--color-primary);
  box-shadow: var(--color-shadow-focus);
}
.module-calc-input::placeholder {
  color: #9ca3af;
  font-weight: 400;
}

/* ════════════════════════════════════════════════════════════════
 * [2026-04-14 인라인 JS 리팩토링] 컬럼 평준화 (Flexbox)
 * ────────────────────────────────────────────────────────────────
 * 대체 대상: 구 자식 테마 functions.php 라인 126-166의
 *           dacalcEqualizeColumns JS (제거됨)
 *
 * 원리:
 *   JS로 sidebar.offsetHeight 읽고 content.style.minHeight 강제 설정 대신
 *   Flexbox의 align-items: stretch로 레이아웃 엔진이 자연 처리.
 *   JS 실행 5회(DOMContentLoaded+load+resize+setTimeout×2) → CSS 규칙 1회.
 *
 * 범위 한정:
 *   body.dacalc-flex-layout 클래스가 있을 때만 적용 (main.php body_class 필터).
 *   modules.css는 $is_calc 조건부 로드이므로 이중 안전장치.
 *   계산기·롱테일 페이지에만 적용 → 홈·카테고리·블로그 영향 없음.
 *
 * 글로벌 규격화:
 *   US 완성 후 dacalc 테마 전체 레이아웃 정규화 시 이 블록 재평가 예정.
 * ════════════════════════════════════════════════════════════════ */
@media (min-width: 769px) {
  .dacalc-flex-layout .site-content {
    display: flex;
    align-items: stretch;
  }
  .dacalc-flex-layout .site-content > .content-area {
    float: none;
    min-width: 0; /* flex 자식 overflow 방지 */
  }
  .dacalc-flex-layout .site-content > .widget-area {
    float: none;
  }
}
/* Elementor 전체 폭 템플릿은 Flexbox 예외 */
.dacalc-flex-layout.elementor-template-full-width .site-content {
  display: block;
}
/* ════ [2026-04-14 컬럼 평준화] 끝 ════ */

/* Input with unit label
 * ═══════════════════════════════════════════════════════════════
 * [2026-04-14] 고정 padding으로 변경 (JS adjustUnitPadding 대체)
 * 이전: calculator.php 라인 290-306의 adjustUnitPadding JS가
 *       label.offsetWidth + 20px를 동적 설정 → 리플로우 유발
 * 현재: 64px 고정 (가장 긴 라벨 "USD/oz", "km/kWh" 등 6자 영문 수용)
 *       Phase 0.3 전수 조사: 한글 최대 2자(만원), 영문 최대 6자
 * 변경 시: 긴 라벨이 추가되면 이 값 조정 또는 .module-calc-input-unit--wide 클래스 신설
 * ═══════════════════════════════════════════════════════════════
 */
.module-calc-input-unit {
  position: relative;
}
.module-calc-input-unit .unit-label {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text-muted);
  pointer-events: none;
}
.module-calc-input-unit .module-calc-input {
  padding-right: 64px;
  text-align: right;
}
/* Unit label on the LEFT side (e.g., $ prefix for USD) */
.module-calc-input-unit .unit-label--left {
  left: 16px;
  right: auto;
}
.module-calc-input-unit .unit-label--left + .module-calc-input {
  padding-left: 32px;
  padding-right: 16px;
  text-align: left;
}


/* ==========================================================
   SELECT — Unified 48px height, custom arrow
   ========================================================== */
.module-calc-select {
  width: 100%;
  height: 48px;
  padding: 0 40px 0 16px;
  font-size: 16px;
  color: var(--color-text-primary);
  border: 1.5px solid #d1d5db;
  border-radius: var(--color-radius-sm);
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236b7280' d='M1.4 0L6 4.6 10.6 0 12 1.4l-6 6-6-6z'/%3E%3C/svg%3E") no-repeat right 14px center;
  outline: none;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
}
.module-calc-select:focus {
  border-color: var(--color-primary);
  box-shadow: var(--color-shadow-focus);
}


/* ==========================================================
   CTA BUTTON (Calculate)
   ========================================================== */
.module-calc-btn {
  width: 100%;
  padding: 16px;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  border: none;
  border-radius: var(--color-radius-md);
  cursor: pointer;
  transition: transform .15s, box-shadow .15s;
  margin-top: 8px;
}
.module-calc-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px color-mix(in srgb, var(--color-primary) 35%, transparent);
}
.module-calc-btn:active {
  transform: translateY(0);
}


/* ==========================================================
   RESULT AREA
   ========================================================== */
.module-calc-result {
  margin-top: 16px;
  display: none;
}
.module-calc-result.active {
  display: block;
  animation: fadeInUp .35s ease-out;
}
.module-calc-result__box {
  background: #fff;
  border: 2px solid #c7d2fe; /* fallback for browsers without color-mix */
  border: 2px solid color-mix(in srgb, var(--color-primary) 25%, #e5e7eb);
  border-radius: var(--color-radius-lg);
  padding: 28px 24px;
  margin-bottom: 24px;
  box-shadow: var(--color-shadow-sm);
}
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Main result hero card */
.module-calc-result__main {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  border-radius: var(--color-radius-md);
  padding: 28px 24px;
  color: #fff;
  text-align: center;
  margin-bottom: 20px;
}
.module-calc-result__label {
  font-size: 15px;
  opacity: .9;
  margin-bottom: 4px;
}
.module-calc-result__value {
  font-size: 36px;
  font-weight: 800;
  letter-spacing: -1px;
  margin-bottom: 6px;
  line-height: 1.2;
  color: #fff !important;
}
.module-calc-result__sub {
  font-size: 15px;
  opacity: .85;
}

/* Calculator result box: 4 cards → 2-col grid */
.module-calc-result__box .module-calc-result__cards {
  grid-template-columns: repeat(2, 1fr);
}


/* ==========================================================
   SALARY SUMMARY — 3-col grid (used by salary, acquisition-tax, etc.)
   ========================================================== */
.salary-summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 20px;
}
.salary-summary__item {
  background: var(--color-bg-subtle);
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 16px 12px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.salary-summary__label {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text-secondary);
}
.salary-summary__value {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-primary);
  word-break: break-all;
}
.salary-summary__value--deduct {
  color: #dc2626;
}


/* ==========================================================
   DETAIL TABLE — Breakdown list
   ========================================================== */
.module-calc-detail__title {
  font-size: 15px;
  font-weight: 600;
  color: #374151;
  margin: 16px 0 8px;
}
.module-calc-detail {
  margin-bottom: 16px;
  border: none !important;
  border-radius: 0 !important;
  overflow: visible;
  box-shadow: none !important;
}
.module-calc-detail table {
  width: 100%;
  border-collapse: collapse;
  font-size: 16px;
  border: none !important;
}
.module-calc-detail thead {
  background: #e2e8f0 !important;  /* slate-200 — 전역 중립 통일 */
  color: #1e293b !important;
}
.module-calc-detail th {
  padding: 10px 14px;
  text-align: left;
  font-weight: 600;
  color: var(--color-text-body);
  border: none !important;
  border-bottom: 2px solid var(--color-border) !important;
  background: transparent !important;
}
.module-calc-detail th:not(:first-child),
.module-calc-detail td:not(:first-child) {
  text-align: right;
}
.module-calc-detail td {
  padding: 12px 14px;
  border: none !important;
  border-bottom: 1px solid var(--color-border-light) !important;
  color: var(--color-text-body) !important;
  background: #fff !important;
}
.module-calc-detail tr.subtotal td {
  padding-top: 14px;
  font-weight: 600;
  color: var(--color-text-primary) !important;
  border-bottom: 1px solid var(--color-border) !important;
  background: #fff !important;
}
.module-calc-detail tr.total td {
  font-weight: 700;
  color: var(--color-primary-dark) !important;
  border-bottom: none !important;
  border-top: 2px solid var(--color-primary) !important;
  background: #fff !important;
}
.module-calc-detail tr.row-highlight td {
  background: #f9fafb !important;
  font-weight: 600;
}
.module-calc-detail tbody tr:last-child td {
  border-bottom: 2px solid var(--color-border) !important;
}


/* ==========================================================
   SALARY TABLE — Comparison/reference table (standalone)
   Reused by: salary, acquisition-tax, etc.
   ========================================================== */
.module-table--salary {
  width: 100%;
  border-collapse: collapse;
  font-size: 16px;
  margin: 16px 0 8px;
}
.module-table--salary thead {
  background: #e2e8f0;  /* slate-200 — 테마 무관 중립, 약간 진하게 */
  color: #1e293b;        /* slate-800 */
  border-bottom: 2px solid #94a3b8;  /* slate-400 */
}
.module-table--salary th {
  padding: 12px 10px;
  font-weight: 700;
  text-align: center;
  color: #1e293b;
}
.module-table--salary td {
  padding: 11px 10px;
  text-align: right;
  border-bottom: 1px solid var(--color-border-light);
  color: var(--color-text-body);
}
.module-table--salary td:first-child:has(a) {
  text-align: center;
}
.module-table--salary tbody tr:nth-child(even) {
  background: var(--color-bg-subtle);
}
.module-table--salary tbody tr:hover {
  background: #f1f5f9;  /* slate-100 — 테마 무관 중립 */
}
.module-table--salary .col-highlight {
  font-weight: 700;
  color: #0f172a;  /* slate-900 — 최고 대비, hue 제거 */
}
.module-table--salary thead .col-highlight {
  color: #92400e;
  background: #fef3c7 !important;
}

/* 기준 금액 행 강조 — 본 포스트 & 롱테일 공통 (zebra보다 한 톤 진한 회색) */
.module-table--salary tr.row-highlight,
.module-table tr.row-highlight {
  background: #f3f4f6;
}
.module-table--salary tr.row-highlight td,
.module-table tr.row-highlight td {
  font-weight: 600;
  background: #f3f4f6 !important;
}
/* v14.90 — 표 행 강조 modifier (PHP inline style 차단 mandate)
   tr.row-highlight--current = blue-50 (현재 페이지/시나리오), 사용자 매칭 row 시각 표시
   tr.row-highlight--green   = lime-100 (Tier A — 가장 유리)
   tr.row-highlight--yellow  = amber-100 (Tier C — 중립/주의)
   tr.row-highlight--red     = red-100  (Tier D — 불리/경고) */
.module-table--salary tr.row-highlight--current,
.module-table tr.row-highlight--current {
  background: #eff6ff !important;
}
.module-table--salary tr.row-highlight--current td,
.module-table tr.row-highlight--current td {
  font-weight: 600;
  background: #eff6ff !important;
}
.module-table tr.row-highlight--green,
.module-table tr.row-highlight--green td {
  background: #ecfccb !important;
  font-weight: 600;
}
.module-table tr.row-highlight--yellow,
.module-table tr.row-highlight--yellow td {
  background: #fef3c7 !important;
  font-weight: 600;
}
.module-table tr.row-highlight--red,
.module-table tr.row-highlight--red td {
  background: #fee2e2 !important;
  font-weight: 600;
}
/* v14.96 — soft 영역 modifier (eitc deep-dive 안 phase highlight)
   .row-highlight--green-soft = green-50 배경 (Phase In 영역 영역 영역)
   .row-highlight--red-soft   = red-50 배경 (Phase Out 영역 영역 영역) */
.module-table tr.row-highlight--green-soft,
.module-table tr.row-highlight--green-soft td {
  background: #f0fdf4 !important;
}
.module-table tr.row-highlight--red-soft,
.module-table tr.row-highlight--red-soft td {
  background: #fef2f2 !important;
}
/* v15.160 — row inactive modifier (tax-bracket JS inline style="opacity:0.4" 차단)
   .row-inactive = 현재 적용 부재 row 시각 약화 (opacity 0.4) */
.module-table tr.row-inactive,
.module-table tr.row-inactive td {
  opacity: 0.4;
}
/* v14.96 — 표 cell 정렬 modifier (PHP inline style="text-align:right|left" 차단)
   balance-transfer / anticipatory 표 영역 우측/좌측 정렬 의무 */
.module-table th.th-right,
.module-table td.td-right {
  text-align: right;
}
.module-table th.th-left,
.module-table td.td-left {
  text-align: left;
}
/* v15.85 — table 모듈 column 'align' => 'center' 정합 (PHP table.php td-center class 매핑)
   default .module-table td (text-align: right) override 강제 — hub-matrix 5건 cell 가운데 정렬 영역 */
/* v15.86 — specificity 강화 (body wrapper + tbody) — 다른 강력 rule 영역 우선 차단 */
/* v15.88 — :has() selector 강화 (hub-matrix__link 영역 자동 가운데 정렬) — paycheck `.module-table__link` 정합
            specificity 0,3,1 — default `.module-table td` (0,1,1) + `.td-center` (0,2,1) 보다 강력 */
body .module-table th.td-center,
body .module-table td.td-center,
.module-table tbody td.td-center,
.module-table thead th.td-center,
.module-table th.td-center,
.module-table td.td-center,
.module-table td:has(a.hub-matrix__link),
.module-table th:has(a.hub-matrix__link) {
  text-align: center !important;
}
/* v14.90 — nearby cell center alignment (lt-nearby-link 영역 PHP inline style="text-align:center" 차단) */
.module-table td.td-nearby,
.longtail-page table td.td-nearby,
.module-section__body table td.td-nearby {
  text-align: center;
}
/* v14.90 — meta-small text (small element grey muted, PHP inline style="color:#6b7280" 차단)
   .module-calc-meta-text — 본문 안 보조 메타 텍스트 (base context, formerly, this page note 등) */
.module-calc-meta-text {
  color: #6b7280;
  font-size: 0.85em;
}
.module-table--salary tr.subtotal td {
  background: var(--color-bg-subtle);
  font-weight: 600;
  border-bottom: 1px solid var(--color-border);
}
.module-table--salary tr.total td {
  background: var(--color-primary-light);
  font-weight: 700;
  color: var(--color-primary-dark);
}
.module-table--salary tbody tr:last-child td {
  border-bottom: 2px solid var(--color-border) !important;
}


/* ==========================================================
   UNIVERSAL CALC-TABLE — Shared table styles
   For any calc that needs a standalone table without salary prefix
   ========================================================== */
.module-table,
.longtail-page table,
.module-section__body table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  table-layout: auto;
  font-size: 16px;
  margin: 16px 0 8px;
  /* v14.77 (사용자 mandate "좌우 테두리 영영구 — 답답해 보임"):
     - 외곽 border 영영구 → 상하 (top + bottom)만 영영구
     - 좌우 (left + right) 영영구 → 시각 답답 영영구 영영구 */
  border-top: 1px solid #dbeafe !important;
  border-bottom: 1px solid #dbeafe !important;
  border-left: none !important;
  border-right: none !important;
}
.longtail-page table thead,
.longtail-page table tbody,
.longtail-page table tr {
  width: 100%;
}
.module-table thead {
  background: #e2e8f0;  /* slate-200 — 테마 무관 중립, CTA와 시각 계층 분리 */
  color: #1e293b;        /* slate-800 */
  border-bottom: 2px solid #94a3b8;  /* slate-400 */
}
/* Table caption — 테이블 위에 표시되는 제목 (Single / MFJ 등 구분용) */
.module-table-caption,
.module-table caption {
  caption-side: top;
  text-align: left;
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  background: #f8fafc;
  padding: 10px 14px;
  border-left: 4px solid var(--color-primary, #3b82f6);
  margin-bottom: 0;
  border-radius: 4px 4px 0 0;
}
.module-table:has(caption) {
  margin-top: 24px;
}
/* v14.75 (사용자 mandate "표준 모듈 SSOT 원천 일괄 반영"): th/td !important 강제
   - 구 테마 override 차단
   - longtail-page table + content-section-body table 동일 selector 영영구 (SSOT 일관성) */
.module-table th,
.longtail-page table th,
.module-section__body table th {
  padding: 12px 10px;
  font-weight: 700;
  text-align: center;
  color: #1e293b;
  border-right: 1px solid #cbd5e1 !important;
}
.module-table th:last-child,
.longtail-page table th:last-child,
.module-section__body table th:last-child {
  border-right: none !important;
}
.module-table td,
.longtail-page table td,
.module-section__body table td {
  padding: 11px 10px;
  text-align: right;
  border-bottom: 1px solid var(--color-border-light);
  color: var(--color-text-body);
  border-right: 1px solid #dbeafe !important;
}
.module-table td:last-child,
.longtail-page table td:last-child,
.module-section__body table td:last-child {
  border-right: none !important;
}
.module-table td:first-child {
  text-align: left;
}
.module-table td:first-child:has(a:not(.module-table__link)) {
  text-align: left;
}
/* 69호(2026-08-28 사용자 확정) — tcggrail 마켓 비교표 「Marketplace」 열이 이제 그 행의 구매
   버튼(.table-inline-purchase-button) 자체다. 위 범용 규칙(같은 특이성 0,3,2)이 이 칸도
   왼쪽으로 미는데, 이 열은 2026-08-14 정본 5-l-2 로 «가운데 정렬»이 확정돼 있었다(장터
   이름은 1~2 낱말 범주형). 같은 특이성 규칙을 뒤에 두어 이 표만 되돌린다 — 이 클래스는
   이 표 1곳에서만 쓰이므로(census 완료) 다른 표에 영향 없음. */
.module-table td:first-child:has(a.table-inline-purchase-button) {
  text-align: center;
}
/* Notes/descriptive column — 왼쪽 정렬 명시 */
/* [v13.63] .td-notes element class (content.css line 2491-2495) font-size: 14px + color: #64748b cascade override */
/*          .module-table td.td-notes (0,2,1) > .td-notes (0,1,0) — !important 영역 영역 (specificity 영역 충분) */
/*          → data-*.php 영역 font-size class (font-size-sm / font-size-lg 등) override 영역 정합 */
/* [v14.66] (2026-05-09, 사용자 mandate "별도 지시 없으면 표 컬럼 글자 크기 = 기본 사이즈"):
            !important 강제 — .td-notes element class cascade 차단 + 본문 일반 크기 정합 */
.module-table td.td-notes,
.module-table th.td-notes {
  text-align: left;
  font-size: inherit !important;
  color: inherit !important;
}

/* v14.66 — .module-table 모든 td 본문 사이즈 default 정합 (사용자 mandate)
   text-align은 column type별 default (right/left/center)에 위임 */
.module-table td,
.module-table th {
  font-size: inherit;
  color: inherit;
}

/* [v13.65] font-size utility class — data-*.php 영역 'font_size' 옵션 영역 영역 적용 (직관 px 영역) */
.font-size-12px { font-size: 12px; }
.font-size-13px { font-size: 13px; }
.font-size-14px { font-size: 14px; }
.font-size-15px { font-size: 15px; }
.font-size-16px { font-size: 16px; }   /* default (root inherit과 동일) */
.font-size-17px { font-size: 17px; }
.font-size-18px { font-size: 18px; }
.font-size-20px { font-size: 20px; }
.font-size-24px { font-size: 24px; }
.module-table a:not(.module-table__link) {
  text-decoration: none;
  color: var(--color-primary);
}
.module-table a:not(.module-table__link):hover {
  text-decoration: underline;
  color: var(--color-primary-dark);
}
/* 2026-05-17 Phase 4-Pilot — 표 안 텍스트 버튼 (touch target 본질 + 사용자 클릭 본질) */
.module-table a.module-table__btn {
  display: inline-block;
  padding: 6px 10px;
  border: 1px solid var(--color-border, #cbd5e1);
  border-radius: 6px;
  background: var(--color-bg-subtle, #f8fafc);
  color: var(--color-primary);
  font-weight: 600;
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease;
  min-height: 36px;
  line-height: 1.4;
}
.module-table a.module-table__btn:hover,
.module-table a.module-table__btn:focus-visible {
  background: var(--color-primary-bg, #eff6ff);
  border-color: var(--color-primary);
  text-decoration: none;
  outline: none;
}
.module-table a.module-table__btn:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
/* 2026-05-17 Phase 4-Pilot — 텍스트 버튼 디폴트 = 셀 내 가운데 정렬 (사용자 mandate) */
/* specificity = .module-table td:first-child (0,2,1) → :has() 본질 = 동일 → 후행 우선 정합 */
.module-table td:has(> a.module-table__btn),
.module-table td:has(> strong > a.module-table__btn),
.module-table td:first-child:has(a.module-table__btn) {
  text-align: center;
}
.module-table tbody tr:nth-child(even) {
  background: var(--color-bg-subtle);
}
.module-table tbody tr:hover {
  background: #f1f5f9;  /* slate-100 — 테마 무관 중립 */
}
.module-table .col-highlight {
  font-weight: 700;
  color: #0f172a;  /* slate-900 — 최고 대비, hue 제거 */
}
.module-table thead .col-highlight {
  color: #92400e;
  background: #fef3c7 !important;
}
.module-table tr.row-highlight td {
  background: #f9fafb;
  font-weight: 600;
}
.module-table tr.subtotal td,
.module-table tr.row-subtotal td {
  background: var(--color-bg-subtle);
  font-weight: 600;
  border-bottom: 1px solid var(--color-border);
}
.module-table tr.total td {
  background: var(--color-primary-light);
  font-weight: 700;
  color: var(--color-primary-dark);
}
.module-table tbody tr:last-child td {
  border-bottom: 2px solid var(--color-border) !important;
}

/* 첫 컬럼 중앙 정렬이 필요한 테이블용 (예: 비교표) */
.module-table--salary.center-first td:first-child,
.module-table.center-first td:first-child {
  text-align: center;
}


/* ==========================================================
   PYUNG TABLE — Area comparison (backward compat)
   ========================================================== */


/* ==========================================================
   AREA TYPE TABLE (backward compat)
   ========================================================== */


/* ==========================================================
   UNIVERSAL ROW VARIANTS
   Apply to any table via class on <tr>
   ========================================================== */
tr.row-highlight td {
  background: #f9fafb;
  font-weight: 600;
}
tr.row-subtotal td {
  background: var(--color-bg-subtle);
  font-weight: 600;
  border-bottom-color: var(--color-border);
}
tr.subtotal td {
  background: var(--color-bg-subtle);
  font-weight: 600;
  border-bottom-color: var(--color-border);
}
tr.total td {
  background: var(--color-primary-light);
  font-weight: 700;
  color: var(--color-primary-dark);
}


/* ==========================================================
   QUICK ANSWER BOX (핵심 요약)
   ========================================================== */
.module-quick-answer {
  background: linear-gradient(135deg, #eff6ff 0%, #f0f9ff 100%);
  border: 1px solid #bfdbfe;
  border-left: 4px solid var(--color-primary);
  border-radius: var(--color-radius-md);
  padding: 20px 24px;
  margin: 20px 0 24px;
}
.module-quick-answer__header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}
.module-quick-answer__icon {
  font-size: 22px;
  line-height: 1;
}
.module-quick-answer__title {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-primary-dark);
}
.module-quick-answer__content {
  font-size: 16px;
  color: var(--color-text-body);
  line-height: 1.75;
}
.module-quick-answer__content p {
  margin: 0 0 8px;
}
.module-quick-answer__content p:last-child {
  margin-bottom: 0;
}
.module-quick-answer__content ul {
  margin: 8px 0 0;
  padding-left: 20px;
}
.module-quick-answer__content li {
  margin-bottom: 6px;
  line-height: 1.65;
}
.module-quick-answer__content li:last-child {
  margin-bottom: 0;
}
.module-quick-answer__content strong {
  color: var(--color-text-primary);
  font-weight: 600;
}
.module-quick-answer__source {
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid #dbeafe;
  font-size: 13px;
  color: var(--color-text-muted);
}

/* ==========================================================
   CITATION PASSAGES — AI 인용 최적화 블록
   ========================================================== */
.module-core-facts__list {
  margin: 28px 0;
}
.module-core-facts__item {
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border: 1px solid #e2e8f0;
  border-left: 4px solid var(--color-primary);
  border-radius: var(--color-radius-md);
  padding: 20px 24px;
  margin: 16px 0;
}
.module-core-facts__topic {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 12px;
}
.module-core-facts__text {
  font-size: 16px;
  color: var(--color-text-body);
  line-height: 1.75;
}
.module-core-facts__text p {
  margin: 0 0 8px;
}
.module-core-facts__text p:last-child {
  margin-bottom: 0;
}
.module-core-facts__text ul {
  margin: 8px 0 0;
  padding-left: 20px;
  list-style: disc;
}
.module-core-facts__text li {
  margin-bottom: 6px;
  line-height: 1.65;
}
.module-core-facts__text li:last-child {
  margin-bottom: 0;
}
.module-core-facts__text strong {
  color: var(--color-text-primary);
  font-weight: 600;
}
.module-core-facts__source {
  display: block;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid #e2e8f0;
  font-size: 13px;
  color: var(--color-text-muted);
  font-style: normal;
}
@media (max-width: 600px) {
  .module-core-facts__item {
    padding: 16px 18px;
  }
}

/* E36 (2026-04-30): .module-core-facts CSS 폐지 — citation_passages 영역의 alias 자가 위반
   Core Facts H2 = .module-core-facts__item (line 872 above) 영역 그대로 활용 */

/* ==========================================================
   BRIEFING INFO BOX
   ========================================================== */
/* Hide briefing when body is empty (before calculate) */
.module-briefing:has(.module-briefing__body:empty) {
  display: none;
}
.module-briefing {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-md);
  padding: 20px 22px;
  margin-bottom: 16px;
  line-height: 1.75;
  font-size: 16px;
  color: var(--color-text-body);
  position: relative;
  overflow: hidden;
}
.module-briefing::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
}
.module-briefing__title {
  font-weight: 700;
  font-size: 17px;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.module-briefing__body {
  font-size: 16px;
  color: var(--color-text-body);
  line-height: 1.75;
}
.module-briefing__body strong {
  color: var(--color-text-primary);
  font-weight: 600;
}
/* v14.90 — calc-briefing 부속 클래스 (PHP inline style 차단 mandate)
   __list — briefing 안 ul 마지막 마진 영영구 (style="margin-bottom:0" 대체)
   __recommend — 강조 권장 메시지 p (style="font-weight:600;margin-top:12px" 대체) */
.module-briefing__list {
  margin-bottom: 0;
}
.module-briefing__recommend {
  font-weight: 600;
  margin-top: 12px;
}
/* v14.90 — calc-result 안 보조 h3 (Calculation Breakdown 등) — style="margin:16px 0 8px 0;font-size:16px" 대체 */
.module-calc-result__sub-h {
  margin: 16px 0 8px 0;
  font-size: 16px;
}

/* Briefing type variants */
.module-briefing--explain::before { background: #3b82f6; }
.module-briefing--explain .module-briefing__title { color: #1d4ed8; }

.module-briefing--tip::before { background: #10b981; }
.module-briefing--tip .module-briefing__title { color: #047857; }
.module-briefing--tip .module-briefing__cta {
  display: inline-block;
  margin-top: 10px;
  padding: 12px 18px;
  min-height: 44px;
  font-size: 16px;
  font-weight: 600;
  border-radius: var(--color-radius-sm);
  text-decoration: none;
  color: #047857;
  border: 1.5px solid #10b981;
  background: #ecfdf5;
  transition: background .2s, color .2s;
}
.module-briefing--tip .module-briefing__cta:hover {
  background: #047857;
  color: #fff;
}

/* Briefing links */
.module-briefing__links {
  list-style: none;
  padding: 0;
  margin: 10px 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.module-briefing__links li {
  background: #fff;
  border: 1px solid var(--color-border);
  border-left: 3px solid var(--color-primary);
  border-radius: 6px;
  transition: border-color .2s, box-shadow .2s;
}
.module-briefing__links li:hover {
  border-left-color: var(--color-primary-dark);
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.module-briefing__links a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  color: var(--color-primary);
  text-decoration: none;
  font-weight: 700;
  font-size: 15px;
}
.module-briefing__links a:hover .link-arrow {
  background: var(--color-primary);
  color: #fff;
}
.module-briefing__links .link-text {
  flex: 1;
}
.module-briefing__links .link-desc {
  color: var(--color-text-muted);
  font-size: 13px;
  font-weight: 400;
  display: block;
  margin-top: 2px;
}
.module-briefing__links .link-arrow {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary);
  background: var(--color-primary-light);
  padding: 4px 10px;
  border-radius: 4px;
  white-space: nowrap;
  margin-left: 12px;
  transition: background .2s, color .2s;
}


/* ==========================================================
   SHARE BUTTONS
   ========================================================== */
.module-share-buttons {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}
/* hidden 속성 존중 — 계산 전/계산기 없는 페이지에서 숨김 (display:flex 가 [hidden] 덮어쓰던 버그 차단) */
.module-share-buttons[hidden] { display: none !important; }
.module-share-buttons button {
  flex: 1;
  padding: 10px 18px;
  min-height: 44px;
  border-radius: var(--color-radius-sm);
  border: none;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: opacity .2s, box-shadow .2s;
}
.module-share-buttons button {
  background: var(--color-primary);
  color: #fff;
}
/* v14.86 (사용자 mandate "Copy / Recalculate hover 짙은 회색 → 분홍/빨강"):
   opacity: 0.85 영영구 → background rose-500 (#f43f5e) 명시 변경
   분홍-빨강 중간 → 액션 버튼 강조 + UI 정합 */
.module-share-buttons button:hover {
  background: #f43f5e;
  color: #fff;
  box-shadow: 0 2px 8px rgba(244, 63, 94, 0.35);
}


/* ==========================================================
   AD SLOT — core-ad 모듈 (2026-08-06 · 옛 죽은 클래스에서 개명)
   근거 = TCGGrail/_시안/광고배치-설계-20260806.md §3-f
   ※ 카드 모듈의 그림자·둥근 모서리·배경을 쓰지 않는다 — 광고가 이웃
     콘텐츠와 닮아 보이면 정책 위반이다(오인 유도 금지).
   ※ position sticky/fixed 금지(Better Ads "Large Sticky Ads").
   ========================================================== */
.module-core-ad {
  margin: 24px 0;
  text-align: center;
  display: block;
  position: static;
  max-width: 100%;
  min-height: var(--ad-min-h, 250px);
  max-height: var(--ad-max-h, 280px);
  overflow: hidden;      /* 광고가 세로로 부풀어 본문을 밀어내는 것을 막는다 */
  contain: layout;       /* 누적 레이아웃 이동(CLS) 차단 */
}

.module-core-ad ins,
.module-core-ad .adsbygoogle {
  max-width: 100%;       /* 가로 스크롤 방지 */
}

.module-core-ad__label {
  display: block;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ink2, #6b7280);
  margin-bottom: 6px;
}

/* 첫 화면 광고 — 한 화면 안에서 끝나야 하므로 높이를 더 조인다 */
.module-core-ad--top {
  --ad-min-h: 90px;
  --ad-max-h: 100px;
  margin: 12px 0;
}

/* 미리보기 전용 자리표시자 (WP_DEBUG 또는 ?adpreview=1) */
.module-core-ad--placeholder {
  border: 1px dashed var(--line, #e2e7ef);
  color: var(--ink2, #6b7280);
  display: grid;
  place-items: center;
}

.module-core-ad__note {
  font-size: 12px;
}

@media print {
  .module-core-ad { display: none; }
}


/* ==========================================================
   STEP CARDS (calc-modules version — overridden by components.css)
   ========================================================== */
.module-calc-module .step-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin: 20px 0 28px;
}
.module-calc-module .step-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-md);
  padding: 20px 18px;
  text-align: center;
  transition: box-shadow .2s;
}
.module-calc-module .step-card:hover {
  box-shadow: var(--color-shadow-md);
}
.module-calc-module .step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--color-primary);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 10px;
}
.module-calc-module .step-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 6px;
}
.module-calc-module .step-desc {
  font-size: 16px;
  color: var(--color-text-secondary);
  line-height: 1.6;
}


/* ==========================================================
   ERROR MESSAGE
   ========================================================== */
.module-calc-error {
  color: #dc2626;
  font-size: 14px;
  font-weight: 500;
  margin-top: 6px;
}
/* v14.96 — calc-error hidden 속성 활용 (inline style="display:none" 차단 mandate)
   초기 상태 hidden 속성 → JS 영역 .removeAttribute('hidden') 영역 영역 노출 */
.module-calc-error[hidden] {
  display: none;
}

/* v14.96 — 본문 텍스트 색상 modifier (PHP inline color hardcoded 차단 mandate)
   .module-calc-text-error      = red-600 (오류/경고 텍스트 — Extra Tax / Not Eligible)
   .module-calc-text-success    = green-600 (성공/적격 텍스트 — Eligible / Fix)
   .module-calc-text-danger     = red-600 (위험/Mistake 텍스트 — ❌ Mistake)
   .module-calc-text-muted      = gray-400 (회색 보조 텍스트 — past dates)
   .module-calc-text-source     = emerald-800 (출처 텍스트 — Source: BEA) */
.module-calc-text-error,
.module-calc-text-danger {
  color: #dc2626;
  font-weight: 600;
}
.module-calc-text-success {
  color: #16a34a;
  font-weight: 600;
}
.module-calc-text-muted {
  color: #9ca3af;
}
.module-calc-text-source {
  color: #065f46;
  font-size: 0.85em;
}

/* v15.160 — BMI grade 색상 modifier (bmi/calc-ui.php JS inline style="color:hex" 차단)
   .bmi-grade--underweight = blue-500   (BMI < 18.5)
   .bmi-grade--normal      = green-500  (BMI 18.5-25)
   .bmi-grade--overweight  = amber-500  (BMI 25-30)
   .bmi-grade--obese1      = red-500    (BMI 30-35)
   .bmi-grade--obese2plus  = red-600    (BMI >= 35) */
.bmi-grade--underweight { color: #3b82f6; font-weight: 600; }
.bmi-grade--normal      { color: #22c55e; font-weight: 600; }
.bmi-grade--overweight  { color: #f59e0b; font-weight: 600; }
.bmi-grade--obese1      { color: #ef4444; font-weight: 600; }
.bmi-grade--obese2plus  { color: #dc2626; font-weight: 600; }

/* v14.96 — 안내 박스 modifier (inline background hardcoded 차단)
   .module-info-box--color--blue  = sky-50 background + blue-500 left border
   eitc / income-tax / tax-refund-estimator 영역 영역 영역 영역 */
.module-info-box--color--blue {
  margin-top: 1.25rem;
  padding: 12px 16px;
  background: #f0f9ff;
  border-left: 4px solid #3b82f6;
  border-radius: 4px;
  font-size: 14px;
  line-height: 1.6;
}

/* v14.96 — 헤딩 modifier (inline margin/font-size hardcoded 차단)
   .h-section-emoji      = ss-fairness 안 이모지 헤딩 (margin:16px 0 8px 0; font-size:16px)
   .h-donut-comparison   = donut chart 비교 제목 (margin:24px 0 12px; font-size:17px)
   .h-section-1099       = 1099-tax 비교 제목 (margin:1.5rem 0 0.75rem; font-size:1.05rem)
   .h-donut-caption      = donut chart 안내 (text-align:center; font-size:13px; color:gray-500) */
.h-section-emoji {
  margin: 16px 0 8px 0;
  font-size: 16px;
}
.h-section-emoji--center {
  text-align: center;
}
.h-donut-comparison {
  margin: 24px 0 12px;
  font-size: 17px;
}
.h-donut-comparison[hidden] {
  display: none;
}
.h-section-1099 {
  margin: 1.5rem 0 0.75rem;
  font-size: 1.05rem;
}
.h-donut-caption {
  text-align: center;
  font-size: 13px;
  color: #6b7280;
  margin-top: 8px;
}

/* v14.96 — bonus-tax 안 method note (inline text-align:center;font-size:13px 차단) */
.r-method-note {
  text-align: center;
  font-size: 13px;
}

/* v14.96 — ss-fairness-act 안 action plan list (inline padding-left:20px;line-height:1.8 차단) */
.action-plan-list {
  padding-left: 20px;
  line-height: 1.8;
}

/* v14.96 — salary affordability state RPP callout (inline gradient + padding 차단)
   green-themed callout for cost-of-living adjustment 정보 */
.module-info-box--rpp {
  margin: 16px 0;
  padding: 14px 18px;
  background: linear-gradient(135deg, #ecfdf5, #d1fae5);
  border-left: 4px solid #059669;
  border-radius: 8px;
}

/* v14.96 — lt-callout--milestone (related sections 안 milestone narrative)
   sky-themed gradient callout (10 calc 일괄 적용) */
.module-info-box--milestone {
  margin: 20px 0;
  padding: 16px 20px;
  background: linear-gradient(135deg, #f0f9ff, #e0f2fe);
  border-left: 4px solid #0284c7;
  border-radius: 8px;
}

/* v14.96 — lt-callout--tfd (Tax Freedom Day narrative — salary derived)
   amber-themed gradient callout */
.module-info-box--tfd {
  margin: 16px 0;
  padding: 14px 18px;
  background: linear-gradient(135deg, #fef3c7, #fde68a);
  border-left: 4px solid #d97706;
  border-radius: 8px;
}

/* v14.96 — _shared/section-insights.php 안 4 callout 블록 (inline background + padding + border-radius 차단)
   .module-info-box--position = 청색 (slate background + blue left border) — 위치/percentile 정보
   .module-info-box--fica     = 황색 (amber background + amber left border) — FICA 경고
   .module-table--credit-map       = 녹색 (emerald background + emerald left border) — 크레딧 적격
   .module-info-box--state-arb        = 주황 (amber background + amber-700 left border) — 주별 절세 */
.module-info-box--position {
  background: #f8fafc;
  border-left: 4px solid #3b82f6;
  padding: 16px 20px;
  margin: 18px 0;
  border-radius: 0 8px 8px 0;
  font-size: 14.5px;
  line-height: 1.65;
}
.module-info-box--fica {
  background: #fef3c7;
  border-left: 4px solid #f59e0b;
  padding: 14px 18px;
  margin: 14px 0;
  border-radius: 0 6px 6px 0;
  font-size: 14px;
  line-height: 1.6;
}
.module-table--credit-map {
  background: #ecfdf5;
  border-left: 4px solid #10b981;
  padding: 14px 18px;
  margin: 14px 0;
  border-radius: 0 6px 6px 0;
  font-size: 13.5px;
  line-height: 1.7;
}
.module-info-box--state-arb {
  background: #fef3c7;
  border-left: 4px solid #d97706;
  padding: 14px 18px;
  margin: 14px 0;
  border-radius: 0 6px 6px 0;
  font-size: 13.5px;
  line-height: 1.7;
}
/* v14.96 — section-insights.php 안 텍스트 정렬 modifier (inline margin + color + font 차단) */
.module-info-box__title {
  margin: 0 0 8px;
  font-weight: 700;
  color: #1e293b;
  font-size: 16px;   /* MODOOCARD-PORT 2026-07-03: 사이트 최소 폰트 16px 원칙(사용자 확정) — 구 15px 상향.
                        L111 선행 정의(1rem=16px)와 정합(이 후행 규칙이 이겨 실효 15px이던 결함 해소). */
}
.module-info-box__title--emerald {
  color: #064e3b;
  margin-bottom: 6px;
}
.module-info-box__title--amber {
  color: #78350f;
  margin-bottom: 6px;
}
.module-info-box__body {
  margin: 0 0 8px;
  color: #334155;
}
.module-info-box__body--last {
  margin-bottom: 0;
}
.module-info-box__body--amber {
  color: #78350f;
}
.module-info-box__list {
  margin: 0;
  padding-left: 18px;
  color: #065f46;
}
.module-info-box__list li {
  margin: 3px 0;
}

/* v14.96 — label-hint block 표시 (inline display:block;margin-top:4px;font-size:12px;color:gray-500 차단)
   eitc 안 "Married Filing Separately is NOT eligible for EITC" */
.module-calc-input-group label span.label-hint--block {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: #6b7280;
}


/* ==========================================================
   TABLE OVERFLOW WRAPPER
   ========================================================== */
.module-table__scroll-wrap,
.module-calc-detail,
.module-table--salary,
.module-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: #94a3b8 #f1f5f9;  /* slate-400 thumb / slate-100 track — 전역 중립 */
}
.module-table__scroll-wrap {
  margin: 16px 0 8px;
}
.module-table__scroll-wrap > table {
  margin: 0;
}

/* Scroll hint — 표시 규칙 SSOT 는 «이 시트»다.
   근거: modules.css 는 전 페이지에 실리고(loader.php 의 calc-modules), item-modules.css 는
   스포크·홈에만 실린다(loader.php :239 `$__spoke || $__home`). 그래서 표시(display)의 참·거짓을
   두 시트가 나눠 가지면 «시트가 안 실리는 페이지»에서 규칙이 반쪽만 선다.
   ⚠️ 이름 이력(2026-08-13 p28-f-7 수리) — JS 가 토글하는 클래스는 `.table-scroll-hint-active` 다
   (assets/js/dc-runtime.js :328·:329·:443·:446). 예전 이름 `.scroll-active` 로 적혀 있던 아래
   표시 규칙은 «영원히 미적중»이라, 기본 숨김(display:none !important)만 남아 스크롤 안내가
   넘치는 표에서도 한 번도 뜨지 않았다. 문법 오류도 경고도 없이 «표시만» 죽는 침묵형 결함이다.
   👉 이름을 바꿀 때는 JS 토글 지점과 이 선택자를 «같은 회차에» 고친다. */
.module-table__scroll-hint {
  display: none !important;
  text-align: center;
  font-size: 16px !important;
  font-weight: 700;
  color: #2563eb !important;  /* blue-600 — 테마 무관 고정 블루 통일 */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  line-height: 1.4 !important;
  padding: 2px 0;
  margin: -10px 0 32px 0 !important;
}
.module-table__scroll-hint--top {
  margin: 0 0 10px 0 !important;
}
/* 본문 콘텐츠 테이블 스크롤 힌트 간격 보정 */
.module-table__scroll-wrap + .module-table__scroll-hint:not(.module-table__scroll-hint--top),
.module-table-wrap + .module-table__scroll-hint:not(.module-table__scroll-hint--top) {
  margin-top: 14px !important;
}
.module-table__scroll-hint--top + .module-table__scroll-wrap,
.module-table__scroll-hint--top + .module-table-wrap {
  margin-top: 2px !important;
}
.module-table__scroll-hint:last-child {
  margin-bottom: 0 !important;
}
.module-table__scroll-hint.table-scroll-hint-active {
  display: block !important;
}

/* Reset theme global table borders
   v14.76 (사용자 mandate "표준 모듈 SSOT 우선"):
   .module-table 영역 reset 제거 — v14.75 정정 (border + th/td border-right) 영영구 영영구 영영구
   .module-calc-detail / .module-table--salary / .pyung-table 영영구 reset 정합 (legacy 표 영영구) */
.module-calc-detail table,
.module-calc-detail td,
.module-calc-detail th,
.module-table--salary,
.module-table--salary td,
.module-table--salary th,
.module-calc-detail td,
.module-table--salary td,

/* Table cells: no line-break → overflow triggers horizontal scroll */
.module-calc-detail th,
.module-calc-detail td,
.module-table__scroll-wrap th,
.module-table__scroll-wrap td,
.module-table--salary th,
.module-table--salary td,
.module-table th,
.module-table td {
  white-space: nowrap !important;
}


/* ==========================================================
   LONGTAIL SPOKE TABLE RULES (v13.47 — moved from core/template/longtail.php inline <style>)
   ========================================================== */
.longtail-page table,
.longtail-page .module-table__scroll-wrap table,
.longtail-page .module-table-wrap table {
  width: auto !important;
  min-width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  table-layout: auto !important;
  display: table !important;
}
.longtail-page .module-table__scroll-wrap { overflow-x: auto; width: 100%; }
.longtail-page table th,
.longtail-page table td {
  border-bottom: 1px solid #e5e7eb;
  white-space: nowrap !important;
}
.longtail-page table thead {
  background: var(--color-primary, #1a73e8);
  color: #fff;
}
.longtail-page table th {
  padding: 12px 10px;
  font-weight: 600;
  text-align: center;
}
.longtail-page table td {
  padding: 11px 10px;
  text-align: right;
  font-size: 16px;
}
.longtail-page table td:first-child { text-align: left; }
/* td-notes mandate — feedback_table_td_notes_convention.md */
.longtail-page table td.td-notes { text-align: left !important; }
/* [v13.49] table td 안 <small> 영역 줄바꿈 강제 — (formerly ...) / (this page) 영역 별도 줄 표시 */
.longtail-page table td small { display: block; font-size: 0.85em; color: #6b7280; }
.longtail-page table[style*="--lt-last-col-align"] td:last-child { text-align: left; }
.longtail-page table tbody tr:hover td { background: #f0f9ff; }

/* [v13.54] tr-current — current_button column 자동 row highlight (module-data-table.php 영역 자동 적용) */
.module-table tr.tr-current td,
.module-table tr.tr-current td,
.module-table__table tr.tr-current td,
.longtail-page table tr.tr-current td {
    background: #eff6ff !important;
    font-weight: 600;
}

/* ==========================================================
   ACCESSIBILITY
   ========================================================== */

/* Focus-visible ring */
.module-calc-toggle__btn:focus-visible,
.module-calc-btn:focus-visible,
.module-calc-input:focus-visible,
.module-calc-select:focus-visible,
.module-share-buttons button:focus-visible,
.module-briefing__cta:focus-visible,
.module-briefing__links a:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
a:focus-visible,
button:focus-visible,
details summary:focus-visible {
  outline: 2px solid var(--color-primary, #1a73e8);
  outline-offset: 2px;
}

/* Screen reader only */
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* TOC links */
.toc-level-2 a {
  color: inherit;
  text-decoration: none;
}
.toc-level-2 a:hover {
  color: #0284c7;
  text-decoration: underline;
}
/* v15.207 라운드 7 정정 — focus-visible 정합 (WCAG 2.1 AA — 2.4.7 Focus Visible) */
.toc-level-2 a:focus-visible {
  outline: 2px solid #0284c7;
  outline-offset: 2px;
  border-radius: 2px;
}

/* ==========================================================
   CALC FAQ — Always-open Q&A cards (jiwon.css 미사용)
   ========================================================== */
/* .module-faq margin/h2 정의 폐기 (사용자 영구 명시 2026-05-04) — 섹션/블록 개별 사용 mandate.
   universal .module-section__title (margin: 70px 0 15px 0) = 모든 섹션 동일 적용. per-section override 차단.
   .module-faq__list 가 첫 child → __list margin-top 0 만 별도 보장하면 박스 시각 일관성 유지. */
.module-faq__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  counter-reset: faq-counter;
}
.module-faq__item {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 18px 18px 16px;
  transition: border-color .2s, box-shadow .2s;
  counter-increment: faq-counter;
}
.module-faq__item:hover {
  border-color: var(--color-primary);
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  background: #eff6ff;
}
.module-faq__q {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-primary-dark);
  margin: 0 0 10px;
  line-height: 1.5;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.module-faq__q::before {
  content: counter(faq-counter);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 50%;
  background: var(--color-primary);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  flex-shrink: 0;
  margin-top: 1px;
}
.module-faq__a {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--color-text-body);
  padding-left: 38px;
}
.module-faq__a p {
  margin: 0;
  font-weight: 400;
}
.module-faq__a strong {
  color: var(--color-primary-dark);
  font-weight: 700;
  background: var(--color-primary-light);
  padding: 1px 6px;
  border-radius: 4px;
}


/* ==========================================================
   REDUCED MOTION
   ========================================================== */
@media (prefers-reduced-motion: reduce) {
  .module-calc-result.active {
    animation: none;
  }
  .module-calc-btn,
  .module-calc-toggle__btn,
  .module-briefing__cta,
  .module-share-buttons button {
    transition: none !important;
  }
  .module-calc-btn:hover,
  .module-calc-btn:active {
    transform: none !important;
  }
}


/* ==========================================================
   RESPONSIVE — Mobile (max-width: 640px)
   ========================================================== */
@media (max-width: 640px) {
  .module-calc-module {
    padding: 20px 16px;
    margin: 16px 0 24px;
    border-radius: var(--color-radius-md);
  }

  .module-calc-result__box {
    padding: 20px 16px;
  }
  .module-calc-result__value {
    font-size: 28px;
  }
  .module-calc-result__main {
    padding: 24px 16px;
  }
  .module-briefing {
    padding: 16px 14px;
  }

  /* Summary → 1 column on mobile */
  .salary-summary {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .salary-summary__item {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
  }
  .salary-summary__value {
    font-size: 18px;
  }

  /* 본 계산기 테이블: 모바일 좌우 스크롤 강제 */
  .module-calc-result__box .module-table,
  .module-table-wrap .module-table { min-width: 420px; }
  .module-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

  /* Tables: webkit scrollbar (thin scrollbar already global) */
  .module-calc-detail::-webkit-scrollbar,
  .module-table__scroll-wrap::-webkit-scrollbar,
  .pyung-table::-webkit-scrollbar,
  .area-type-table::-webkit-scrollbar,
  .module-table--salary::-webkit-scrollbar,
  .module-table::-webkit-scrollbar {
    height: 6px;
  }
  .module-calc-detail::-webkit-scrollbar-track,
  .module-table__scroll-wrap::-webkit-scrollbar-track,
  .pyung-table::-webkit-scrollbar-track,
  .area-type-table::-webkit-scrollbar-track,
  .module-table--salary::-webkit-scrollbar-track,
  .module-table::-webkit-scrollbar-track {
    background: #f1f5f9;  /* slate-100 — 중립 통일 */
    border-radius: 3px;
  }
  .module-calc-detail::-webkit-scrollbar-thumb,
  .module-table__scroll-wrap::-webkit-scrollbar-thumb,
  .pyung-table::-webkit-scrollbar-thumb,
  .area-type-table::-webkit-scrollbar-thumb,
  .module-table--salary::-webkit-scrollbar-thumb,
  .module-table::-webkit-scrollbar-thumb {
    background: #94a3b8;  /* slate-400 — 중립 통일 */
    border-radius: 3px;
  }
  /* Quick answer box compact */
  .module-quick-answer {
    padding: 16px 14px;
    margin: 16px 0 20px;
  }
  .module-quick-answer__title {
    font-size: 16px;
  }
  .module-quick-answer__content {
    font-size: 14px;
  }

  /* Briefing compact */
  .module-briefing {
    padding: 16px 14px;
  }

  /* Step cards single column within calc-module */
  .module-calc-module .step-cards {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================
   FEATURED IMAGE — 헤더~목차 사이 대표 이미지
   ========================================================== */
.featured-image-block {
  margin: 0 0 20px;
  text-align: center;
}
.featured-image-block__image {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}
.featured-image-block__caption {
  font-size: 0.85rem;
  color: #64748b;
  margin: 8px 0 0;
}

/* ==========================================================
   RELATED LINKS (정적, 결과 영역 밖)
   ========================================================== */
.module-related-links {
  margin: 32px 0;
}
.module-related-links__title {
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 12px;
  color: var(--color-text-primary);
}

/* ==========================================================
   DEDUCTION CARDS — Premium content section cards
   Used by: salary deductions, insurance breakdowns, etc.
   ========================================================== */
.deduction-grid {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.deduction-grid__group-title {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--color-primary-light);
  display: flex;
  align-items: center;
  gap: 8px;
}
.deduction-grid__group-title::before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 20px;
  background: var(--color-primary);
  border-radius: 2px;
  flex-shrink: 0;
}
.deduction-grid__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  align-items: stretch;
}
/* 카드 높이를 긴 쪽에 맞춤 — grid stretch + body flex:1 */
.deduction-grid__cards > .module-method-card {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-self: stretch;
  height: 100%;
}
.deduction-grid__cards > .module-method-card > .module-method-card__header {
  flex: 0 0 auto;
  width: 100%;
}
.deduction-grid__cards > .module-method-card > .module-method-card__body {
  flex: 1 1 auto;
  width: 100%;
}
.deduction-card {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 20px 18px;
  transition: box-shadow .2s, border-color .2s, transform .2s;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
/* 인라인 텍스트만 있는 deduction-card: flex→block 전환 (구조화 서브요소 없는 경우) */
.deduction-card:not(:has(.deduction-card__header)) {
  display: block;
}
.deduction-card:hover {
  border-color: var(--color-primary);
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
  transform: translateY(-2px);
}
.deduction-card__icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
  line-height: 1;
}
.deduction-card__icon--pension { background: #ede9fe; }
.deduction-card__icon--health { background: #dcfce7; }
.deduction-card__icon--care { background: #fef3c7; }
.deduction-card__icon--employ { background: #dbeafe; }
.deduction-card__icon--tax { background: #fce7f3; }
.deduction-card__icon--local { background: #e0e7ff; }
.deduction-card__header {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 17px;
  font-weight: 800;
  color: var(--color-primary-dark);
}
.deduction-card__header-text {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.deduction-card__name {
  font-size: 18px;
  font-weight: 800;
  color: var(--color-primary-dark);
}
.deduction-card__rate {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-primary);
  background: var(--color-primary-light);
  padding: 3px 10px;
  border-radius: 20px;
  white-space: nowrap;
  flex-shrink: 0;
}
/* Amount bar with label — shows actual monthly deduction */
.deduction-card__amount {
  background: var(--color-bg-subtle);
  border-radius: 6px;
  padding: 10px 12px;
}
.deduction-card__amount-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-muted);
  margin-bottom: 6px;
}
.deduction-card__amount-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.deduction-card__amount-value {
  font-size: 15px;
  font-weight: 800;
  color: var(--color-primary-dark);
  white-space: nowrap;
  min-width: 72px;
}
.deduction-card__amount-bar {
  flex: 1;
  height: 6px;
  background: var(--color-border);
  border-radius: 3px;
  overflow: hidden;
}
.deduction-card__amount-fill {
  height: 100%;
  border-radius: 3px;
  background: linear-gradient(90deg, var(--color-primary), var(--color-primary-dark));
  transition: width .6s ease-out;
}
.deduction-card__desc {
  font-size: 16px;
  line-height: 1.65;
  color: var(--color-text-secondary);
  margin: 0;
}
.deduction-card__desc strong {
  color: var(--color-text-primary);
  font-weight: 600;
}
/* deduction-card 단순 변형 (icon/header 없이 title+body만 사용) */
.deduction-card__title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary-dark);
  margin: 0 0 6px;
}
.deduction-card__body {
  font-size: 16px;
  line-height: 1.7;
  color: var(--color-text-body);
  margin: 0;
}

/* Deduction card — full-width variant (for items needing more space) */
.deduction-card--wide {
  grid-column: 1 / -1;
}

.deduction-card:only-child {
  grid-column: 1 / -1;
}

@media (max-width: 640px) {
  .deduction-grid__cards {
    grid-template-columns: 1fr;
  }
}


/* ==========================================================
   CALC EXAMPLE — Step-by-step calculation walkthrough
   Used by: salary calc-example, tax examples, etc.
   ========================================================== */
.module-calc-example {
  background: #f8fafc;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 16px 20px;
  margin: 12px 0;
}
.module-calc-example__title {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-primary-dark);
  margin-bottom: 8px;
}
.module-calc-example__premise {
  background: var(--color-primary-light);
  border: 1px solid color-mix(in srgb, var(--color-primary) 20%, transparent);
  border-radius: var(--color-radius-sm);
  padding: 16px 18px;
  margin-bottom: 20px;
}
.module-calc-example__premise-label {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-primary-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
}
.module-calc-example__premise-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.module-calc-example__tag {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-primary-dark);
  background: #fff;
  padding: 5px 14px;
  border-radius: 20px;
  border: 1px solid color-mix(in srgb, var(--color-primary) 25%, transparent);
}
.module-calc-example__steps {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.module-calc-example__step {
  position: relative;
  padding-left: 44px;
  padding-bottom: 24px;
  border-left: 2px solid var(--color-border);
  margin-left: 16px;
}
.module-calc-example__step:last-child {
  border-left-color: transparent;
  padding-bottom: 0;
}
.module-calc-example__step-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}
.module-calc-example__step-num {
  position: absolute;
  left: -15px;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--color-primary);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  flex-shrink: 0;
}
.module-calc-example__step--result .module-calc-example__step-num {
  background: #059669;
  width: 32px;
  height: 32px;
  left: -17px;
}
.module-calc-example__step-title {
  font-size: 17px;
  font-weight: 800;
  color: var(--color-text-primary);
  display: block;
  margin-bottom: 6px;
}
.module-calc-example__step-body {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 16px;
  display: block;
}
.module-calc-example__formula {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 0 0 8px;   /* 8px = 뒤따르는 note와의 간격 전용 */
  line-height: 1.6;
}
/* note 없이 formula가 마지막이면 하단 마진 제거 — step-body padding 16px에 8px가 더해져
   상하 비대칭(하단 ~24px)이 되던 결함(사용자 실측 2026-07-04) */
.module-calc-example__formula:last-child { margin-bottom: 0; }
.module-calc-example__formula strong {
  color: var(--color-primary);
  font-weight: 800;
}
.module-calc-example__formula--final {
  font-size: 18px;
  padding: 12px 16px;
  background: var(--color-bg-subtle);
  border-radius: 6px;
  text-align: center;
}
.module-calc-example__formula--final strong {
  color: #059669;
  font-size: 22px;
}
.module-calc-example__note {
  font-size: 16px;
  line-height: 1.65;
  color: var(--color-text-secondary);
  margin: 8px 0 0;
}
.module-calc-example__note strong {
  color: var(--color-text-primary);
  font-weight: 600;
}
.module-calc-example__step-body table {
  margin-top: 0;
  margin-bottom: 8px;
}
@media (max-width: 640px) {
  .module-calc-example__step {
    padding-left: 0;
    margin-left: 0;
    border-left: none;
    padding-bottom: 16px;
  }
  .module-calc-example__step-num {
    display: none;
  }
  .module-calc-example__step--result .module-calc-example__step-num {
    display: none;
  }
  .module-calc-example__step-header {
    gap: 8px;
    margin-bottom: 8px;
  }
  .module-calc-example__step-title {
    font-size: 15px;
  }
  .module-calc-example__step-body {
    padding: 12px;
  }
  .module-calc-example__formula--final {
    font-size: 15px;
    padding: 10px 12px;
  }
  .module-calc-example__formula--final strong {
    font-size: 18px;
  }
}


/* ==========================================================
   CHANGE LIST — Year-over-year comparison cards
   Used by: tax-changes, rate updates, etc.
   ========================================================== */
.change-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.change-list__baseline {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-muted);
  background: var(--color-bg-subtle);
  border: 1px solid var(--color-border);
  border-radius: 20px;
  padding: 5px 14px;
  align-self: flex-start;
}
.module-table__change-item {
  background: #fff;
  border: 1px solid var(--color-border);
  border-left: 4px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 18px 16px;
  transition: box-shadow .2s, border-color .2s;
}
.module-table__change-item:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.module-table__change-item--up {
  border-left-color: #dc2626;
}
.module-table__change-item--down {
  border-left-color: #059669;
}
.module-table__change-item--good {
  border-left-color: #2563eb;
}
.module-table__change-item__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}
.module-table__change-item__name {
  font-size: 17px;
  font-weight: 800;
  color: var(--color-text-primary);
  flex: 1;
}
.module-table__change-item__badge {
  font-size: 13px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 20px;
  white-space: nowrap;
  flex-shrink: 0;
}
.module-table__change-item__badge--up {
  color: #dc2626;
  background: #fef2f2;
}
.module-table__change-item__badge--down {
  color: #059669;
  background: #ecfdf5;
}
.module-table__change-item__badge--good {
  color: #2563eb;
  background: #eff6ff;
}
.module-table__change-item__values {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: 700;
}
.module-table__change-item__before {
  color: var(--color-text-muted);
  text-decoration: line-through;
}
.module-table__change-item__arrow {
  color: var(--color-text-muted);
  font-size: 14px;
}
.module-table__change-item__after {
  color: var(--color-text-primary);
  font-size: 18px;
}
.module-table__change-item--up .module-table__change-item__after {
  color: #dc2626;
}
.module-table__change-item--down .module-table__change-item__after {
  color: #059669;
}
.module-table__change-item--good .module-table__change-item__after {
  color: #2563eb;
}
/* Delta tag — change magnitude next to before→after */
.module-table__change-item__delta {
  font-size: 13px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 4px;
  white-space: nowrap;
  margin-left: auto;
}
.module-table__change-item__delta--up {
  color: #dc2626;
  background: #fef2f2;
}
.module-table__change-item__delta--good {
  color: #2563eb;
  background: #eff6ff;
}

/* Effect highlight box — key takeaway per change */
.module-table__change-item__effect {
  font-size: 16px;
  font-weight: 600;
  padding: 8px 12px;
  border-radius: 6px;
  margin-bottom: 10px;
  line-height: 1.5;
}
.module-table__change-item__effect--up {
  background: #fef2f2;
  color: #991b1b;
  border-left: 3px solid #dc2626;
}
.module-table__change-item__effect--good {
  background: #eff6ff;
  color: #1e40af;
  border-left: 3px solid #3b82f6;
}
.module-table__change-item__effect strong {
  font-weight: 800;
}

.module-table__change-item__desc {
  font-size: 16px;
  line-height: 1.65;
  color: var(--color-text-secondary);
  margin: 0;
}
.module-table__change-item__desc strong {
  color: var(--color-text-primary);
  font-weight: 600;
}

/* Change item — icon (emoji in header) */
.module-table__change-item__icon {
  font-size: 20px;
  line-height: 1;
  flex-shrink: 0;
}

/* Change item — impact magnitude bar */
.module-table__change-item__impact {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.module-table__change-item__impact-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-muted);
  white-space: nowrap;
  min-width: 36px;
}
.module-table__change-item__impact-bar {
  flex: 1;
  height: 6px;
  background: var(--color-border-light);
  border-radius: 3px;
  overflow: hidden;
}
.module-table__change-item__impact-fill {
  height: 100%;
  border-radius: 3px;
  transition: width .6s ease-out;
}
.module-table__change-item__impact-fill--high {
  background: linear-gradient(90deg, #ef4444, #dc2626);
}
.module-table__change-item__impact-fill--mid {
  background: linear-gradient(90deg, #fb923c, #f97316);
}
.module-table__change-item__impact-fill--low {
  background: linear-gradient(90deg, #fbbf24, #f59e0b);
}
.module-table__change-item__impact-fill--good {
  background: linear-gradient(90deg, #60a5fa, #3b82f6);
}
.module-table__change-item__impact-text {
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  min-width: 28px;
  text-align: right;
}
.module-table__change-item--up .module-table__change-item__impact-text {
  color: #dc2626;
}
.module-table__change-item--good .module-table__change-item__impact-text {
  color: #2563eb;
}


/* ==========================================================
   CONTENT SECTION — Formula / Regulation cards
   Used by: content_sections body HTML (data/*.php)
   ========================================================== */

/* Section sub-heading (h3 inside content_sections) */
.module-calc-section-sub {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 17px;
  font-weight: 800;
  color: var(--color-text-primary);
  margin: 20px 0 10px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--color-border);
}
.module-calc-section-sub::before {
  content: attr(data-icon);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: var(--color-primary-light);
  font-size: 15px;
  flex-shrink: 0;
}

/* Formula highlight box */
.module-calc-example__formula-box {
  background: linear-gradient(135deg, #eff6ff, #f0f9ff);
  border: 1.5px solid color-mix(in srgb, var(--color-primary) 25%, transparent);
  border-radius: var(--color-radius-md);
  padding: 20px 24px;
  margin: 12px 0 16px;
  text-align: left;
}
.module-calc-example__formula-box__expr {
  font-size: 18px;
  font-weight: 800;
  color: var(--color-primary-dark);
  letter-spacing: -0.3px;
  line-height: 1.5;
}
.module-calc-example__formula-box__title {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary-dark);
  margin-bottom: 10px;
}
.module-calc-example__formula-box__body {
  text-align: left;
  font-size: 15px;
  line-height: 1.8;
  color: var(--color-text-body);
}
.module-calc-example__formula-box__note {
  font-size: 14px;
  color: var(--color-text-secondary);
  margin-top: 8px;
}

/* Formula box — extended sub-classes for US calculators */
.module-calc-example__formula-box__header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.module-calc-example__formula-box__header .module-calc-example__formula-box__icon {
  font-size: 22px;
  flex-shrink: 0;
}
.module-calc-example__formula-box__header .module-calc-example__formula-box__title {
  font-size: 17px;
  font-weight: 700;
  color: var(--color-primary-dark, #1e40af);
  margin: 0;
}
.module-calc-example__formula-box__formula {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary-dark, #1e40af);
  line-height: 1.6;
  margin-bottom: 6px;
}
.module-calc-example__formula-box__desc {
  font-size: 16px;
  color: var(--color-text-secondary, #475569);
  line-height: 1.6;
  margin: 0;
}

/* Method cards — repayment types, regulation items */
.module-calc-method-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 12px 0;
}
.module-method-card {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
  gap: 12px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 14px 16px;
  margin-bottom: 10px;
  transition: box-shadow .2s, border-color .2s;
}
.module-method-card > h3,
.module-method-card > h4 {
  width: 100%;
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--color-text-primary, #1e293b);
}
.module-method-card > ul,
.module-method-card > ol {
  width: 100%;
  margin: 0;
}
.module-method-card > p {
  width: 100%;
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: var(--color-text-secondary, #475569);
}
.module-method-card > table,
.module-method-card > .module-table__scroll-wrap {
  width: 100%;
}
/* ── Color variants ── */
.module-method-card--green       { border-left: 4px solid #22c55e; }
.module-method-card--amber       { border-left: 4px solid #f59e0b; }
.module-method-card--blue        { border-left: 4px solid #3b82f6; }
.module-method-card--purple      { border-left: 4px solid #a855f7; }
.module-method-card--red         { border-left: 4px solid #ef4444; }
.module-method-card--gold        { border-left: 4px solid #eab308; }
.module-method-card--recommended { border-color: #22c55e; background: #f0fdf4; }
.module-method-card:last-child {
  margin-bottom: 0;
}
.module-method-card:hover {
  border-color: color-mix(in srgb, var(--color-primary) 40%, transparent);
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.module-method-card__header {
  width: 100%;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--color-text-primary, #1e293b);
  margin: 0;
}
.module-method-card__header .module-method-card__icon {
  display: none;
}
.module-method-card .module-method-card__header .module-method-card__title img.emoji {
  vertical-align: text-top !important;
  height: 1.1em !important;
  width: 1.1em !important;
  margin-right: 3px !important;
}
.module-method-card__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  background: var(--color-primary, #3b82f6);
  border-radius: 6px;
  padding: 0 6px;
  flex-shrink: 0;
  line-height: 1;
}
.module-method-card--green .module-method-card__number  { background: #22c55e; }
.module-method-card--amber .module-method-card__number  { background: #f59e0b; }
.module-method-card--purple .module-method-card__number { background: #a855f7; }
.module-method-card--red .module-method-card__number    { background: #ef4444; }
.module-method-card__badge {
  display: block;
  width: fit-content;
  margin-top: 6px;
  font-size: 13px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 12px;
  line-height: 1.4;
  white-space: nowrap;
  color: #1e40af;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
}
.module-method-card__badge--recommended {
  color: #059669;
  background: #ecfdf5;
}
.module-method-card__badge--caution {
  color: #d97706;
  background: #fffbeb;
}
.module-method-card__badge--warning {
  color: #dc2626;
  background: #fef2f2;
}
.module-method-card__header .module-method-card__title {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}
/* 패턴 A (icon+body 2열): 기본 — 아이콘 좌측, 본문 우측 */
.module-method-card__body {
  flex: 1;
  min-width: 0;
}
/* dl/dt/dd inside card body — US calculator cards (stacked layout) */
.module-method-card__body dl {
  margin: 0;
  display: block;
  font-size: 16px;
  line-height: 1.6;
}
.module-method-card__body dt {
  font-weight: 700;
  color: var(--color-text-primary, #1e293b);
  margin-top: 14px;
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.module-method-card__body dt:first-child {
  margin-top: 0;
}
.module-method-card__body dd {
  margin: 4px 0 0 0;
  color: var(--color-text-secondary, #475569);
  font-size: 16px;
}
/* Card content top-align (not center) */
.module-method-card__body ul {
  align-self: flex-start;
}
/* 패턴 B (header+body 1열): __header 다음에 오는 __body */
.module-method-card__header ~ .module-method-card__body {
  width: 100%;
  flex: none;
}
.module-method-card__example {
  font-size: 14px;
  color: var(--color-text-secondary, #475569);
  background: var(--color-bg-subtle, #f8fafc);
  border-radius: 6px;
  padding: 8px 12px;
  margin-top: 8px;
  line-height: 1.5;
}
.module-method-card__icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
  margin-top: -1px; /* v15.81 2026-06-07: 이모지·타이틀 baseline 1px 보정 */
}
.module-method-card__icon--blue {
  background: #eff6ff;
}
.module-method-card__icon--green {
  background: #f0fdf4;
}
.module-method-card__icon--amber {
  background: #fffbeb;
}
.module-method-card__icon--red {
  background: #fef2f2;
}
.module-method-card__icon--purple {
  background: #faf5ff;
}
/* __body base rule and __header~ override are defined above (line ~2065) */
.module-method-card__title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 4px;
  flex: 1 1 0;
  min-width: 0;
  padding-left: 0;
  min-height: 36px;
}
.module-method-card__formula {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-primary-dark);
  background: var(--color-bg-subtle);
  border-radius: 4px;
  padding: 6px 10px;
  display: inline-block;
  margin-bottom: 4px;
  font-family: 'Courier New', monospace;
}
/* v(2026-07-20 수리): 구조화 자식(desc·value·label)을 아이콘+타이틀 다음 줄 full-width로 강제.
   미적용 시 flex-wrap 컨테이너에서 icon·title·desc가 한 줄(3열)에 놓여 title(flex:1 1 0·min-width:0)이
   desc에 밀려 0폭 → 한글 한 글자씩 세로 wrap(land-investment-guide 자연환경보전지역 실측). */
.module-method-card__desc,
.module-method-card__value,
.module-method-card__label {
  flex: 0 0 100%;
  width: 100%;
}
.module-method-card__desc {
  font-size: 15px;
  color: var(--color-text-secondary);
  line-height: 1.6;
  margin: 0;
}
.module-method-card__tag {
  font-size: 14px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 4px;
  white-space: nowrap;
  flex-shrink: 0;
  line-height: 1.4;
}
.module-method-card__tag--recommended {
  color: #059669;
  background: #ecfdf5;
}
.module-method-card__tag--caution {
  color: #d97706;
  background: #fffbeb;
}
.module-method-card__tag--warning {
  color: #dc2626;
  background: #fef2f2;
}

@media (max-width: 600px) {
  .module-calc-example__formula-box {
    padding: 16px;
  }
  .module-calc-example__formula-box__expr {
    font-size: 15px;
  }
  .module-method-card {
    padding: 12px;
  }
  .module-method-card__icon {
    width: 32px;
    height: 32px;
    font-size: 16px;
  }
  .module-method-card__tag {
    display: none;
  }
}


/* ==========================================================
   DONUT CHART — CSS-only conic-gradient breakdown visual
   Used by: calc-example result step, comparison summaries
   ========================================================== */
.module-calc-donut-wrap {
  display: flex;
  align-items: center;
  gap: 24px;
  margin: 16px 0;
  padding: 16px 20px;
  background: var(--color-bg-subtle);
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
}
.module-calc-donut {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background-color: #e5e7eb;
  background-image: conic-gradient(
    #3b82f6 0% calc(var(--seg1) * 1%),
    #f59e0b calc(var(--seg1) * 1%) 100%
  );
  position: relative;
  flex-shrink: 0;
}
/* Legacy: hide segment divs inside donut circle */
.module-calc-donut > [class*="calc-donut--seg"] {
  position: absolute;
  width: 1px; height: 1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  border: 0;
}
/* Legacy: style legend spans without __legend-item class */
.module-calc-donut__legend > span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--color-text-body, #374151);
  line-height: 1.8;
}
.module-calc-donut__legend > span::before {
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 3px;
  flex-shrink: 0;
}
.module-calc-donut__legend > .module-calc-donut__seg1::before { background: #4CAF50; }
.module-calc-donut__legend > .module-calc-donut__seg2::before { background: #2196F3; }
.module-calc-donut__legend > .module-calc-donut__seg3::before { background: #FF9800; }
/* Legacy: standalone donut without calc-donut-wrap gets basic layout */
.module-calc-donut:not(.module-calc-donut-wrap .module-calc-donut) {
  margin: 16px 0 8px;
}
.module-calc-donut__legend:not(.module-calc-donut-wrap .module-calc-donut__legend) {
  margin: 0 0 16px;
}
.module-calc-donut__center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 72px;
  height: 72px;
  background: var(--color-bg-subtle);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.module-calc-donut__value,
.module-calc-donut__center > strong {
  font-size: 18px;
  font-weight: 800;
  color: var(--color-primary-dark);
  line-height: 1.1;
}
.module-calc-donut__label,
.module-calc-donut__center > span {
  font-size: 10px;
  font-weight: 600;
  color: var(--color-text-muted);
  margin-top: 2px;
}
.module-calc-donut__legend {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.module-calc-donut__legend-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--color-text-body);
  line-height: 1.4;
}
.module-calc-donut__legend-item strong {
  color: var(--color-text-primary);
  font-weight: 700;
}
.module-calc-donut__legend-dot {
  width: 12px;
  height: 12px;
  border-radius: 3px;
  flex-shrink: 0;
}
/* v14.90 — donut legend dot color modifier (inline style 차단 mandate)
   Federal/Tax/Fee = red-500, State/Secondary = orange-500, Net/Take-Home = green-500
   추가 색 필요 시 modifier 확장 */
.module-calc-donut__legend-dot--red    { background: #ef4444; }
.module-calc-donut__legend-dot--orange { background: #f97316; }
.module-calc-donut__legend-dot--green  { background: #22c55e; }
.module-calc-donut__legend-dot--blue   { background: #3b82f6; }
.module-calc-donut__legend-dot--purple { background: #a855f7; }
/* v14.96 — bonus-tax / eitc / gross-to-net 영역 신규 색 modifier */
.module-calc-donut__legend-dot--amber   { background: #f59e0b; }
.module-calc-donut__legend-dot--emerald { background: #10b981; }
/* v14.95 — 51 state-paycheck inline style 차단 마이그레이션 — secondary tax/local tax 영역 violet */
.module-calc-donut__legend-dot--violet  { background: #8b5cf6; }
.module-calc-donut__caption {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-top: 4px;
}
@media (max-width: 640px) {
  .module-calc-donut-wrap {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .module-calc-donut {
    width: 100px;
    height: 100px;
  }
  .module-calc-donut__center {
    width: 60px;
    height: 60px;
  }
  .module-calc-donut__value {
    font-size: 15px;
  }
}


/* ==========================================================
   CHART.JS — Interactive canvas chart container
   Used by: partials with Chart.js (salary, compound-interest, etc.)
   ========================================================== */
/* CSS 막대 차트 (KISS/SSOT) — chart.php가 [label,value]를 width:% 막대로 렌더.
   canvas/JS/Chart.js 없음. .module-chart__bar의 width만 data값(inline), 나머지는 여기 SSOT. */
.module-chart {
  margin: 24px 0;
  padding: 20px;
  background: var(--color-bg-card, #fff);
  border-radius: var(--color-radius-sm, 8px);
  border: 1px solid var(--color-border, #e5e7eb);
}
.module-chart__title {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-text-primary, #111827);
  margin: 0 0 8px;
}
.module-chart__caption {
  font-size: 13px;
  color: var(--color-text-secondary, #6b7280);
  margin: 0 0 16px;
  line-height: 1.6;
}
.module-chart__bars {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;                                            /* R(2026-07-14): flex→grid — 라벨 열 = 가장 긴 라벨 폭(fit-content·고정 132px 제거→왕/특/대 같은 짧은 라벨 빈 여백 해소·트랙 정렬 유지) */
  grid-template-columns: fit-content(160px) minmax(0, 1fr) max-content;
  align-items: center;
  gap: 10px 12px;
}
.module-chart__row {
  display: contents;                                        /* 자식(라벨·트랙·값)이 부모 grid 셀에 직접 배치 → 행 간 라벨 열 폭 공유·정렬 */
}
.module-chart__label {
  font-size: 14px;
  color: var(--color-text-primary, #111827);
  word-break: keep-all;
  line-height: 1.4;
}
.module-chart__track {
  flex: 1 1 auto;
  height: 22px;
  background: var(--color-bg-subtle, #eef2f7);
  border-radius: 4px;
  overflow: hidden;
}
.module-chart__bar {
  display: block;
  height: 100%;
  min-width: 2px;
  background: var(--color-accent, #3b82f6);
  border-radius: 4px;
  transition: width .3s ease;
}
.module-chart__value {
  flex: 0 0 auto;
  min-width: 44px;
  text-align: right;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-primary, #111827);
  font-variant-numeric: tabular-nums;
}
.module-chart__note {
  font-size: 12px;
  color: var(--color-text-secondary, #6b7280);
  margin: 14px 0 0;
  line-height: 1.6;
}
@media (max-width: 640px) {
  .module-chart {
    padding: 16px;
  }
  .module-chart__label {
    font-size: 13px;                                        /* R(2026-07-14): flex-basis 제거 — grid 열(fit-content)이 폭 담당 */
  }
}

/* ── SVG 차트 (chart.php type=line/area/sparkline/range/donut/candle/heatmap) ──
   서버 렌더 inline SVG. JS·canvas 0. 좌표만 PHP가 박고 색·굵기·폰트는 여기 SSOT.
   상승=#dc2626(빨강)·하락=#2563eb(파랑) 한국 관례. 데이터표는 .visually-hidden 재사용. */
.module-chart__svg {
  display: block;
  width: 100%;
  height: auto;
  margin: 4px 0 2px;
  overflow: visible;
  font-variant-numeric: tabular-nums;
}
.module-chart--sparkline .module-chart__svg { max-width: 240px; }
.module-chart--donut .module-chart__svg { max-width: 280px; margin-inline: auto; }

/* ══ 🔧 p28-f(2026-08-13) E① — 색 열쇠(범례) ═══════════════════════════════
   ■ 왜 필요한가 — 도넛은 «색»으로 항목을 가르는데, 그 색이 무엇인지 말하는 자리가 한 곳도
     없었다(실측: 범례 0 · 색 표식 0). 가운데 글자는 1위 하나만 적으므로 나머지 조각은
     색만 남고 뜻을 잃는다. 숨김표는 값을 적을 뿐 색을 못 적는다 — 색을 푸는 열쇠는 눈에 보여야 한다.
   ■ 모양 — 한 줄에 「색칸 · 이름 · 비율」. 항목 수가 데이터마다 달라지므로 열을 못 박지 않고
     흐름(flex-wrap)에 맡긴다. 좁은 화면에서 스스로 접히므로 가로로 넘칠 수 없다.
   🔒 글자 하한 13px(사용자 확정 규칙) — 범례도 «읽어야 하는 글»이라 예외가 아니다.
   🔒 색칸은 «데이터를 재는 도형»이라 이모지·아이콘을 쓰지 않는다(자작 아이콘 금지 규칙과 별개 축). */
.module-chart__legend {
  list-style: none;
  margin: 6px 0 2px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  justify-content: center;
}
.module-chart__legend-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  line-height: 1.4;
}
.module-chart__legend-swatch {
  flex: 0 0 auto;
  width: 11px;
  height: 11px;
  border-radius: 3px;
}
.module-chart__legend-label { color: var(--color-text, inherit); }
.module-chart__legend-value {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

/* ══ 도넛 조각 ↔ 범례 양방향 강조 — 표준 chart 판 (2026-08-13 p28-g · 사용자 확정) ══
   짝 파일 = assets/js/donut-legend-link.js · 열쇠 = chart.php 가 양쪽에 찍는 data-slice-index
   ■ 여기는 조각이 «이미 요소»다(circle.module-chart__seg). 그래서 겹칸을 새로 만들지 않고
     있는 조각을 굵히고, 나머지를 물린다(대비로 말한다 — 밝히기만 하면 옆 조각과 안 갈린다).
   ■ 굵기 30 → 38 = 「살짝 확대」. 반지름을 안 바꾸므로 조각의 각도·자리는 그대로다.
   🔒 켜져 있을 때만 흐려진다 — 켜기 전 화면은 한 픽셀도 안 바뀐다(회귀 0). */
.module-chart__svg.donut-slice-lit .module-chart__seg { opacity: .42; }
.module-chart__svg.donut-slice-lit .module-chart__seg.donut-slice-on { opacity: 1; stroke-width: 38; }
.module-chart__legend-item.donut-legend-lit {
  background: var(--color-bg-subtle, #eef2f7);
  border-radius: 6px;
  box-shadow: inset 0 0 0 1px var(--color-border, #d5dce6);
  font-weight: 800;
}
.module-chart__legend-item { padding: 2px 6px; margin: -2px -6px; border-radius: 6px; }
@media (prefers-reduced-motion: reduce) {
  /* 강조는 «정보»라 남기고 전환만 끈다 */
  .module-chart__seg { transition: none; }
}
.module-chart--range .module-chart__svg,
.module-chart--heatmap .module-chart__svg { max-width: 100%; }
/* line / area */
.module-chart__line {
  fill: none;
  stroke: var(--color-accent, #3b82f6);
  stroke-width: 2;
  stroke-linejoin: round;
  stroke-linecap: round;
}
.module-chart__area { fill: var(--color-accent, #3b82f6); opacity: .10; stroke: none; }
.module-chart__dot { fill: var(--color-accent, #3b82f6); }
.module-chart__grid { stroke: var(--color-border, #e5e7eb); stroke-width: 1; stroke-dasharray: 3 4; }
.module-chart__axis-line { stroke: var(--color-border, #e5e7eb); stroke-width: 1; }   /* D6(2026-07-18): 세로 Y축선 — grid와 동일 색·두께·실선(점선 그리드와 구분) */
.module-chart__axis { fill: var(--color-text-secondary, #6b7280); font-size: 13px; }
.module-chart__vlabel { fill: var(--color-text-primary, #111827); font-size: 13px; font-weight: 700; }
/* sparkline */
.module-chart__spark { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.module-chart__spark--up,  .module-chart__spark-dot--up   { stroke: #dc2626; }
.module-chart__spark--down,.module-chart__spark-dot--down { stroke: #2563eb; }
.module-chart__spark-dot--up   { fill: #dc2626; }
.module-chart__spark-dot--down { fill: #2563eb; }
/* range */
.module-chart__range-track { fill: var(--color-bg-subtle, #eef2f7); }
.module-chart__range-fill  { fill: var(--color-accent, #3b82f6); opacity: .35; }
.module-chart__marker { fill: var(--color-accent, #3b82f6); stroke: #fff; stroke-width: 2; }
/* donut */
/* stroke-dasharray = 드러내기 · opacity/stroke-width = 조각↔범례 강조(p28-g) */
.module-chart__seg { transition: stroke-dasharray .6s ease, opacity .16s ease, stroke-width .16s ease; }
.module-chart__donut-center { fill: var(--color-text-primary, #111827); font-size: 30px; font-weight: 700; }
.module-chart__donut-sub { fill: var(--color-text-secondary, #6b7280); font-size: 13px; }
/* candle */
.module-chart__wick { stroke-width: 1.5; }
.module-chart__candle--up   { fill: #dc2626; stroke: #dc2626; }
.module-chart__candle--down { fill: #2563eb; stroke: #2563eb; }
/* heatmap */
.module-chart__cell { fill: var(--color-accent, #3b82f6); }
.module-chart__cell--empty { fill: var(--color-bg-subtle, #eef2f7); fill-opacity: 1; }
.module-chart__cell-val { fill: var(--color-text-primary, #111827); font-size: 12px; }
/* 라인 그려지는 애니메이션 (점진적 향상 — 꺼져도 완전 렌더) */
@media (prefers-reduced-motion: no-preference) {
  .module-chart__line, .module-chart__spark {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000;
    animation: module-chart-draw 1s ease forwards;
  }
}
@keyframes module-chart-draw { to { stroke-dashoffset: 0; } }
@media (max-width: 640px) {
  .module-chart__axis { font-size: 13px; }
  .module-chart__donut-center { font-size: 26px; }
}


/* ==========================================================
   FULL TABLE — Premium intro/footnote/link styles
   Used by: calc_build_full_table() across all calculators
   ========================================================== */
.full-table__intro {
  background: var(--color-primary-light);
  border: 1px solid color-mix(in srgb, var(--color-primary) 20%, transparent);
  border-radius: var(--color-radius-sm);
  padding: 14px 18px;
  margin-bottom: 16px;
}
.full-table__intro p {
  font-size: 15px;
  line-height: 1.65;
  color: var(--color-primary-dark);
  margin: 0;
  font-weight: 500;
}
.full-table__footnote {
  background: var(--color-bg-subtle);
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 12px 16px;
  margin-top: 12px;
}
.full-table__footnote p {
  font-size: 14px;
  line-height: 1.6;
  color: var(--color-text-muted);
  margin: 0;
}
/* full-table__link → lt-nearby-link으로 통일 */


/* ==========================================================
   SOURCES — Citation block with linked cards
   ========================================================== */
.module-sources__list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
  padding-left: 0;
  margin: 0;
}
/* 43호(2026-08-25) — 방법론 구획(«How we count» 등): 라벨 + 부연설명 1문장 + 그 아래 종속
   출처(API·저장소 등). 시각적으로 «출처 아님 → 출처»의 위계가 보이도록 라벨은 배지 없는
   작은 대문자 캡션, desc는 옅은 본문체로 구분(카드형 박스 대신 여백만 — 출처 카드와 안
   헷갈리게 최소 장식). */
.module-sources__group { margin-top: 20px; }
.module-sources__group-label { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--contrast-2,#6b7280); margin: 0 0 6px; }
.module-sources__group-desc { font-size: 0.95rem; color: #475569; margin: 0 0 10px; }
.module-sources__badge {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #ecfdf5;
  color: #059669;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 800;
  flex-shrink: 0;
  line-height: 1;
}
/* 49호 재수리(2026-08-25) — CSS counter()가 구획마다 리셋되는 현상 실측(원인 미상) →
   PHP가 번호를 직접 echo 하는 방식으로 교체(sources.php module_sources_render_item
   두번째 인자). 이 ::before 규칙은 폐기(살아있으면 실제 번호 위에 빈 counter 텍스트가
   겹쳐 보일 위험) — 배지 span 자체가 이제 실제 텍스트 "1","2"…를 담는다. */
/* 원형 번호 badge = 티어 색의 옅은 톤 (2026-06-29 사용자·dacalc 참고: 짙은 원형 넘버는 너무 튐 → 연한 배경 + 진한 색 숫자). 범례 pill은 짙은 색으로 구분. */
.module-sources__badge--tier-1 { background: #dcfce7; color: #16a34a; }  /* 정부·공공 1차 (연녹색 + 진녹색 숫자) */
.module-sources__badge--tier-2 { background: #fef3c7; color: #b45309; }  /* 협회·연구소·업계 2차 (연호박 + 진호박 숫자) */
.module-sources__badge--tier-3 { background: #f1f5f9; color: #4b5563; }  /* 상업·뉴스 3차 (연회색 + 진회색 숫자) */
.module-sources__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 12px 16px;
  transition: border-color .2s, box-shadow .2s;
  counter-increment: source-counter;
}
.module-sources__item:hover {
  border-color: var(--color-primary);
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
/* meta 영역 영역 = numbering + tier badge 영역 같은 줄 영역 (사용자 영구 mandate 2026-05-05, 모바일 공간 절약) */
.module-sources__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
/* tier legend 영역 영역 (사용자 영역 영역 — H2 직후 영역 영역에 영역 영역 영역, 사용자 영구 mandate 2026-05-05) */
/* 43호(2026-08-25 사용자 제안·지휘자 채택) — 데스크톱 = 2열 격자(배지 열 max-content·설명 열
   잔여). 배지 열 폭이 «가장 긴 배지 라벨»에 자동 통일돼 전 항목의 설명 시작 x좌표가 하드코딩
   없이 맞는다(격자 트랙 자체가 그 일을 한다). .module-sources__legend-item 은 display:contents
   로 «투명해져» 그 자식(배지+설명 텍스트)이 부모 격자에 직접 참여 — 항목 wrapper 자체는
   박스를 안 내는 대신 그 두 자식이 격자의 두 열에 각각 앉는다(항목 수만큼 자동으로 다음 행). */
.module-sources__legend {
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: 16px;
  row-gap: 6px;
  margin-bottom: 16px;
  padding: 12px 16px;
  background: #f8fafc;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  font-size: 14px;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.module-sources__legend-item {
  display: contents;
}
/* tier badge 영역 영역 영역 영역 (legend 영역 영역) — vertical 정합 영역 (text 영역 영역 영역 영역 영역 영역) */
/* 43호 재수리(2026-08-25 사용자 재검수) — grid item 기본값(justify-self/align-self:stretch)이
   배지를 열 폭·행 높이 전체로 늘렸다(설명 줄바꿈 시 배지도 세로로 커짐·짧은 배지도 최장
   열 폭으로 가로 확장). start로 고정 — 배지는 자기 pill 자연 크기 유지, 열 폭 자체(=설명
   시작 x좌표 정렬)는 grid-template-columns:max-content 그대로라 무관(항목 배치만 변경). */
.module-sources__legend-item .module-sources__tier {
  margin-top: 2px;
  justify-self: start;
  align-self: start;
}
@media (max-width: 768px) {
  /* 43호(2026-08-25 사용자 확정) — 모바일은 격자 대신 스택: 배지(등급)+설명이 한 줄에
     이어붙어 설명 폭이 좁아지던 문제. 배지 = 독립 줄(라벨 위계) → 설명 = 그 아래 전폭.
     배지↔설명 세로 여백은 작게, 항목↔항목 여백은 그보다 크게 둬 «항목 묶음»이 한눈에
     갈린다(그룹 인지). display:contents → flex 로 되돌려 item 자신의 박스를 복원해야
     flex-direction:column 이 걸릴 자리가 생긴다(격자→스택 전환의 핵심 한 줄). */
  .module-sources__legend { display: flex; flex-direction: column; gap: 16px; }
  .module-sources__legend-item { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; width: 100%; }
}
/* tier badge 영역 시각 영역 (E-E-A-T 영역 신뢰성 영역 분류 영역, 사용자 영구 mandate 2026-05-05) */
/* 49호(2026-08-25) — 이 배지가 이제 .module-sources__group-label(대문자 변환 스타일) 안에
   직접 앉는다(방법론 구획의 plain-text 라벨과 다른 자리). text-transform:none 명시로
   부모의 uppercase 상속을 끊어 배지 자기 문구(자연 대소문자)를 지킨다.
   🆕 2026-08-27 사용자 격상 — 이 배지가 사실상 «구획 머리글»(Primary official source·
   Industry source) 지위라 일반 13px 하한보다 위(15px급)로 올린다(위계는 H2<24px 아래
   유지). 패딩·둥근모서리도 글자 확대에 비례해 키운다. SSOT=modules.css(이 파일) — item-
   modules.css:12985 의 구 13px 오버라이드도 같은 회차로 15px 맞춤(아래 함께 수정). */
.module-sources__tier {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 5px;
  font-size: 15px;
  font-weight: 700;
  color: white;
  line-height: 1.4;
  flex-shrink: 0;
  letter-spacing: 0.3px;
  text-transform: none;
}
.module-sources__tier--1 { background: #16a34a; }   /* 1차 source — federal/state agency 영역 (IRS / SSA / state TRD / Congress / NMSA 등, 녹색) */
.module-sources__tier--2 { background: #f59e0b; }   /* 2차 source — think tank / association 영역 (Tax Foundation / state CPA society 등, 호박색) */
.module-sources__tier--3 { background: #6b7280; }   /* 3차 source — commercial / news 영역 (TurboTax / NerdWallet 등, 회색) */
/* 62-b(2026-08-28 사용자 확정 — tcggrail buy-cards.php 제휴 범례) — 이 배지의 «모양·타이포»
   (padding·radius·font-weight 등 위 .module-sources__tier 공통 선언)는 그대로 재사용하고
   색만 새 낱말(제휴)에 맞춘다. 형제 규칙(위 3줄)이 이미 site-독립 «순수 hex»로 색을
   적는 관례라 그 관례를 따른다(var(--buy) 는 tcggrail 전용 토큰이라 다른 사이트에서
   이 시트를 공유할 때 값이 없을 수 있다) — #C13A2E = tcggrail --buy 와 동일한 값. */
.module-sources__tier--affiliate { background: #C13A2E; }
.module-sources__text {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
  flex: 1;
  line-height: 1.5;
  /* desktop padding-top — 배지(28px) vs text(21px) 높이 차이 보정 (사용자 push 2026-05-05) */
  padding-top: 3px;
}
@media (max-width: 640px) {
  /* 모바일 = flex-direction column → padding-top 부재 (column 영역에서 별도 줄) */
  .module-sources__text { padding-top: 0; }
}
.module-sources__link {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary) !important;
  background: var(--color-primary-light);
  padding: 4px 12px;
  border-radius: 20px;
  text-decoration: none !important;
  white-space: nowrap;
  flex-shrink: 0;
  transition: background .2s, color .2s;
}
.module-sources__link:hover {
  background: var(--color-primary) !important;
  color: #fff !important;
}
.module-sources__disclaimer {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px 20px;
  margin: 24px 0 8px;
}
.module-sources__disclaimer p {
  font-size: 13px !important;
  font-style: italic;
  line-height: 1.7;
  color: #6b7280;
  margin: 0 0 4px;
}
.module-sources__disclaimer strong {
  color: #111827;
  font-weight: 700;
}
.module-sources__updated {
  font-size: 12px;
  font-style: italic;
  color: #9ca3af;
  margin-top: 6px;
  margin-bottom: 0;
}
@media (max-width: 640px) {
  .module-sources__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}


/* ===== jiwon.css 오버라이드 (jiwon.css 이후 로드) ===== */

/* card-grid--cols-3: components.css로 통합 (중복 충돌 제거) — base가 display/gap/margin, cols-3가 columns 제공. card-grid.php는 항상 base+modifier 동시 출력 */

/* stat-card__value (렌더러 클래스) = stat-card__number (jiwon.css 클래스) */
.module-stat-card__value {
  display: block;
  font-size: 2.5rem;
  font-weight: 900;
  margin-bottom: 8px;
  color: #4F46E5;
  text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}


/* ==========================================================================
   LONGTAIL SECTIONS — Premium Visual UI (lt- prefix)
   8 section renderers, 158 pages auto-applied
   ========================================================================== */

/* ── lt-section 공통 ── */
.module-section {
  margin-bottom: 32px;
  min-width: 0;
  overflow: hidden;
}

.module-section__intro {
  font-size: 16px;
  color: #374151;
  line-height: 1.85;
  margin-bottom: 16px;
}

/* ===== Section 1: 결과 카드 ===== */
.module-result-card--lt {
  background: linear-gradient(135deg, var(--color-primary-light) 0%, #fff 60%);
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-md);
  padding: 24px;
  box-shadow: var(--color-shadow-sm);
}
.module-result-card__answer {
  font-size: 16px;
  line-height: 1.8;
  color: var(--color-text-body);
  margin-bottom: 16px;
}
.module-result-card__highlight {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--color-primary);
  color: #fff;
  border-radius: var(--color-radius-sm);
  padding: 12px 16px;
  margin-bottom: 16px;
}
.module-result-card__label {
  font-size: 14px;
  font-weight: 600;
  opacity: .9;
}
.module-result-card__value {
  font-size: 16px;
  font-weight: 800;
}
.module-result-card__basis {
  font-size: 13px;
  color: var(--color-text-muted);
  background: var(--color-bg-subtle);
  border-radius: 6px;
  padding: 10px 14px;
  margin-top: 12px;
  line-height: 1.6;
}

/* 결과 상세 테이블 → calc-table 클래스 재사용 (본 포스트와 동일) */

/* ===== Section 2: 맥락 인사이트 — Quick Facts ===== */
.module-stat-card--quicks {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 16px 0;
}
.module-stat-card--quick {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-sm);
  padding: 16px 12px;
  transition: box-shadow .2s, border-color .2s;
}
.module-stat-card--quick:hover {
  border-color: var(--color-primary);
  box-shadow: var(--color-shadow-md);
}
.module-stat-card__icon {
  font-size: 28px;
  margin-bottom: 8px;
  line-height: 1;
}
.module-stat-card__label {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-muted);
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: .3px;
}
.module-stat-card__value {
  font-size: 16px;
  font-weight: 800;
  color: var(--color-primary-dark);
}
.module-sources__note {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-top: 12px;
  padding-top: 8px;
  border-top: 1px dashed var(--color-border);
}

/* ===== Section 3: 파생 계산 카드 ===== */
.module-result-card__grid--derived {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 16px;
}
.module-result-card--derived {
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--color-radius-md);
  padding: 20px;
  transition: box-shadow .2s, border-color .2s;
  min-width: 0;
  overflow: hidden;
}
.module-result-card--derived:hover {
  border-color: var(--color-primary);
  box-shadow: var(--color-shadow-md);
}
.module-result-card__header {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 12px;
}
.module-result-card__icon {
  flex-shrink: 0;
}
.module-result-card--derived .module-result-card__header .module-result-card__icon img.emoji,
.module-result-card--derived .module-result-card__header .module-result-card__icon img {
  width: 24px !important;
  height: 24px !important;
  vertical-align: text-bottom !important;
  margin: 0 !important;
}
.module-result-card__title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0;
}
.module-result-card__content {
  padding-left: 0;
}
.module-result-card__value {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary-dark);
  margin-bottom: 8px;
  padding: 8px 12px;
  background: var(--color-primary-light);
  border-radius: 6px;
  border-left: 3px solid var(--color-primary);
}
.module-result-card__body {
  font-size: 15px;
  line-height: 1.8;
  color: var(--color-text-body);
  margin-bottom: 12px;
}
.module-result-card__formula {
  background: var(--color-bg-subtle);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  padding: 12px 14px;
  font-size: 15px;
  color: var(--color-text-secondary);
  margin-bottom: 12px;
  line-height: 1.6;
}
.module-result-card__formula-label {
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary);
  background: var(--color-primary-light);
  padding: 3px 10px;
  border-radius: 4px;
  margin-bottom: 6px;
}
.module-result-card__note {
  font-size: 15px;
  color: var(--color-text-muted);
  padding: 8px 12px;
  background: var(--color-bg-subtle);
  border-radius: 6px;
  margin-bottom: 12px;
}
.module-result-card__link {
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  padding: 10px 20px;
  background: var(--color-primary);
  border: 1px solid var(--color-primary);
  border-radius: 6px;
  transition: background .2s, color .2s;
}
.module-result-card__link:hover {
  background: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  color: #fff;
}
.module-result-card__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  margin: 12px 0;
}
.module-result-card__table caption {
  text-align: left;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-muted);
  padding-bottom: 6px;
}
.module-result-card__table th {
  background: var(--color-primary);
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  padding: 10px 12px;
  text-align: center;
  border-bottom: 2px solid var(--color-primary-dark);
}
.module-result-card__table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--color-border);
  text-align: right;
}
.module-result-card__table td:first-child {
  text-align: center;
}
.module-result-card__table tr.highlight {
  background: var(--color-primary-light);
  font-weight: 700;
}

/* ===== (제거) "최적화 전략 체크리스트" 블록 — 콘텐츠 전용 CSS가 범용 steps 모듈을 덮던 오염. 2026-06-05 제거.
   steps SSOT = ⑪ step-card(.module-steps__item, 865행대) + 컨테이너(.module-steps).
   __icon/__savings/__content>strong 은 steps.php가 출력하지 않는 마크업 = 死 CSS였음.
   본문 내 링크는 .module-section__body a 가 처리(steps는 섹션 본문 안에서 렌더). ===== */

/* ===== Section 5: 인사이트 블록 ===== */
.module-info-box--insight {
  background: #fff;
  border: 1px solid var(--color-border);
  border-left: 4px solid var(--color-primary);
  border-radius: var(--color-radius-sm);
  padding: 20px;
  margin-bottom: 14px;
  transition: box-shadow .2s;
}
.module-info-box--insight:hover {
  box-shadow: var(--color-shadow-sm);
}
.module-info-box--insight h3 {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-primary);
  margin: 0 0 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.module-info-box--insight h3::before {
  content: '💡';
  font-size: 18px;
}
.module-info-box--insight p {
  font-size: 15px;
  line-height: 1.8;
  color: var(--color-text-body);
  margin: 0 0 8px;
}
.module-info-box--insight a {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-primary);
  text-decoration: none;
}
.module-info-box--insight a:hover {
  text-decoration: underline;
}

/* ===== Section 6: 인근 비교 테이블 → calc-table 클래스 재사용 ===== */
.module-table tr.row-current {
  background: var(--color-primary-light);
}
.module-table tr.row-current td {
  font-weight: 700;
  color: var(--color-primary-dark);
}
/* nearby 테이블: 첫 번째 열 — 링크 버튼이므로 가운데 정렬 */
.module-section--nearby .module-table td:first-child {
  text-align: center;
}
.module-table td:has(.module-hub-nav__current):not(.td-notes),
.module-table td:has(.module-table__link):not(.td-notes) {
  text-align: center;
}
/* ── 롱테일 & 본 포스트 공통 테이블 링크 버튼 ── */
.module-table__link {
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-primary-dark);
  background: var(--color-primary-light);
  border: 1.5px solid color-mix(in srgb, var(--color-primary) 35%, transparent);
  padding: 8px 16px;
  min-height: 44px;
  line-height: 26px;
  border-radius: var(--color-radius-sm);
  white-space: nowrap;
  text-decoration: none;
  box-shadow: 0 1px 3px rgba(0,0,0,.04);
  transition: background .2s, color .2s, transform .15s, box-shadow .15s;
}
.module-table__link:hover,
.module-content a.module-table__link:hover {
  background: var(--color-primary-dark);   /* 호버 배경 더 진하게(#1557b0) — 흰 글자 대비 강화 */
  color: #fff !important;                  /* 전역 .module-content a:hover 색 오버라이드(주석 7333·7371 명시) */
  border-color: var(--color-primary-dark);
  transform: translateY(-1px);
  box-shadow: 0 3px 10px color-mix(in srgb, var(--color-primary) 30%, transparent);
}
.module-table__link:active,
.module-content a.module-table__link:active {
  transform: translateY(0) scale(.97);
  background: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  color: #fff !important;
  box-shadow: none;
}
.module-hub-nav__current {
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  background: var(--color-primary);
  border: 1.5px solid var(--color-primary);
  padding: 8px 16px;
  min-height: 44px;
  line-height: 26px;
  border-radius: var(--color-radius-sm);
  white-space: nowrap;
  box-shadow: 0 1px 3px rgba(0,0,0,.04);
}

/* ===== Section 7: 롱테일 FAQ → calc-faq 클래스 재사용 ===== */
.faq-bridge-link {
  display: inline-flex;
  align-items: center;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  background: var(--color-primary);
  text-decoration: none;
  padding: 6px 14px;
  border: 1px solid var(--color-primary);
  border-radius: 6px;
  margin-top: 8px;
  transition: background .2s, color .2s;
}
.faq-bridge-link:hover {
  background: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  color: #fff;
}

/* archive-* CSS 폐기 (2026-05-25 SSOT·KISS 정합):
   사유: hub.php 모듈 폐기 → home.php 양식 (표준 모듈) 사용
   대안: header + hub-nav + card-grid + stats 표준 모듈 사용 본문 */

/* ============================================================================
   Breadcrumb 모듈 (사용자 영구 push 2026-05-25 — Phase 1 AdSense 강화)
   reference: WCAG 2.1 navigation 표준 + Schema.org BreadcrumbList rich results
   ============================================================================ */
.module-breadcrumb {
    margin: -20px 0 20px;
    padding: 0;
    font-size: 14px;
    line-height: 1.5;
    color: #6b7280;
}
.module-breadcrumb__list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}
.module-breadcrumb__item {
    display: inline-flex;
    align-items: center;
    margin: 0;
    padding: 0;
}
.module-breadcrumb__link {
    color: #1e40af;
    text-decoration: none;
    transition: color 0.2s ease;
}
.module-breadcrumb__link:hover {
    color: #1e3a8a;
    text-decoration: underline;
}
.module-breadcrumb__current {
    color: #111827;
    font-weight: 600;
}
.module-breadcrumb__separator {
    margin: 0 8px;
    color: #9ca3af;
    font-size: 16px;
    line-height: 1;
}

@media (max-width: 768px) {
    .module-breadcrumb        { font-size: 13px; margin-bottom: 16px; margin-top: -16px; }
    .module-breadcrumb__separator { margin: 0 6px; }
}

/* ============================================================================
   Social Share 모듈 (사용자 영구 push 2026-05-25 — Phase 2 AdSense 강화)
   콘텐츠 사이트 사실 사실 SNS 공유 + URL 복사 양식
   ============================================================================ */
.module-social-share {
    margin: 40px 0 0;
    padding: 20px 24px;
    background: #f9fafb;
    border-radius: 12px;
    border: 1px solid #e5e7eb;
}
.module-social-share__title {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 12px;
    color: #111827;
}
.module-social-share__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.module-social-share__btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: #374151;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}
.module-social-share__btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}
.module-social-share__btn--twitter:hover  { background: #000000; color: #ffffff; border-color: #000000; }
.module-social-share__btn--facebook:hover { background: #1877f2; color: #ffffff; border-color: #1877f2; }
.module-social-share__btn--linkedin:hover { background: #0a66c2; color: #ffffff; border-color: #0a66c2; }
.module-social-share__btn--kakao:hover    { background: #fee500; color: #3c1e1e; border-color: #fee500; }
/* 2026-08-01 추가: 영어권 공유 세트(site.php share.networks)에 들어온 Reddit 의 브랜드 색.
   규칙 «추가»라 기존 버튼 5종의 모양은 한 픽셀도 바뀌지 않는다. */
.module-social-share__btn--reddit:hover   { background: #ff4500; color: #ffffff; border-color: #ff4500; }
.module-social-share__btn--copy:hover     { background: #1e40af; color: #ffffff; border-color: #1e40af; }
/* 2026-08-03(15차) 추가: 확장 채널 6종 브랜드 색. 규칙 «추가»라 기존 버튼 모양 무변.
   같은 줄에 선 버튼끼리 규칙이 갈리지 않게, 채널을 늘린 회차에 색도 함께 넣는다.
   ⏳ line 은 아직 어느 사이트의 목록에도 없다(일본어판 개시 때 합류) — 그때 이 시트를
      다시 열지 않으려고 규칙만 미리 깔아 둔다. 선택자가 안 걸리면 아무 일도 일어나지 않는다. */
.module-social-share__btn--pinterest:hover { background: #e60023; color: #ffffff; border-color: #e60023; }
.module-social-share__btn--threads:hover   { background: #000000; color: #ffffff; border-color: #000000; }
.module-social-share__btn--whatsapp:hover  { background: #25d366; color: #ffffff; border-color: #25d366; }
.module-social-share__btn--telegram:hover  { background: #229ed9; color: #ffffff; border-color: #229ed9; }
.module-social-share__btn--tumblr:hover    { background: #001935; color: #ffffff; border-color: #001935; }
.module-social-share__btn--line:hover      { background: #06c755; color: #ffffff; border-color: #06c755; }
.module-social-share__btn > span[aria-hidden] {
    font-weight: 700;
    font-size: 14px;
}

@media (max-width: 768px) {
    .module-social-share        { padding: 16px; margin: 32px 0 0; }
    .module-social-share__label { display: none; }
    .module-social-share__btn   { padding: 10px 12px; }
}

/* ============================================================================
   Search page + search form (사용자 영구 push 2026-05-25 — Phase 2 AdSense)
   ============================================================================ */
.search-header {
    max-width: 960px;
    margin: 0 auto 32px;
    padding: 32px 24px;
    text-align: center;
    background: linear-gradient(135deg, #3b82f6, #1e40af);
    color: #ffffff;
    border-radius: 12px;
}
.search-header__title {
    font-size: 32px;
    font-weight: 800;
    margin: 0 0 8px;
    color: #ffffff;
    line-height: 1.2;
}
.search-header__query {
    color: #fbbf24;
    word-break: break-word;
}
.search-header__meta {
    font-size: 15px;
    opacity: 0.9;
    margin: 0 0 20px;
}
.search-form--inline {
    display: flex;
    max-width: 480px;
    margin: 0 auto;
    gap: 8px;
}
.search-form__input {
    flex: 1;
    padding: 12px 16px;
    font-size: 15px;
    border: 0;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.95);
    color: #1a1a1a;
}
.search-form__input:focus {
    outline: 0;
    background: #ffffff;
}
.search-form__btn {
    padding: 12px 20px;
    background: #ffffff;
    color: #1e40af;
    border: 0;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}
.search-form__btn:hover {
    background: #fbbf24;
    color: #111827;
}

.search-results-list {
    max-width: 960px;
    margin: 0 auto;
}

.search-empty {
    max-width: 720px;
    margin: 48px auto;
    padding: 64px 24px;
    text-align: center;
    background: #f9fafb;
    border-radius: 16px;
}
.search-empty h2 {
    font-size: 24px;
    color: #374151;
    margin: 0 0 12px;
}
.search-empty a {
    color: #1e40af;
    font-weight: 600;
}

@media (max-width: 768px) {
    .search-header        { padding: 24px 16px; margin-bottom: 24px; }
    .search-header__title { font-size: 24px; }
    .search-form--inline  { flex-direction: column; }
    .search-form__btn     { width: 100%; }
}

/* ===== .future-link — 사전 결함 양식 (영구 보존 — backward compat) ===== */
/*   사용자 영구 push 2026-05-25: 시각 차이 부재 양식 = "완성 사이트" 강화.
   calc_internal_link() 사실 사실 helpers.php 안 정정 = label 텍스트만 반환 (span 자체 부재).
   본 CSS = 사전 작성 콘텐츠 안 잔존 <span class="future-link"> 영역 안전 처리. */
.future-link {
  /* 시각 차이 부재 — 일반 텍스트와 동일 양식 */
  color: inherit;
  font-weight: inherit;
  border-bottom: none;
  cursor: text;
  text-decoration: none;
}

/* ===== Section 8: 관련 콘텐츠 ===== */
/* ※ 가이드 CTA는 .module-highlight (공용) 사용, lt-guide-cta 제거됨 */
/* ── 관련 계산기 wrap (사용자 영구 mandate 2026-05-25 — related.php 정정 사후 추가) ── */
/*   본인 사전 결함: .module-related__title 정의 부재 → WordPress 기본 h3 (29px) 사용 본문 사실
     정정: module H3 20px 통일 (task #37 mandate 정합) + margin·color 사실 추가. */
.module-related {
  margin: 24px 0 20px;
}
.module-related__title {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.3;
  margin: 8px 0 16px;
  padding-bottom: 10px;
  color: #0f172a;
  text-transform: none;
  border-bottom: 2px solid #3b82f6;
}

/* ── 관련 계산기 카드 (본 계산기 + 롱테일 + 카운티 공용) ── */
.module-related__grid,
.module-related__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 12px;
  margin: 24px 0 20px;
}
.module-related__card,
.module-related__card:hover,
.module-related__card:visited,
.module-related__card,
.module-related__card:hover,
.module-related__card:visited {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px 12px;
  text-decoration: none !important;
  color: #1e293b;
  transition: border-color .2s, box-shadow .2s, transform .15s;
  position: relative;
}
.module-related__card::before,
.module-related__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: transparent;
  border-radius: 8px 8px 0 0;
  transition: background .2s;
}
.module-related__card:hover,
.module-related__card:hover {
  border-color: #3b82f6;
  box-shadow: 0 2px 8px rgba(59,130,246,0.1);
  transform: translateY(-2px);
}
.module-related__card:hover::before,
.module-related__card:hover::before {
  background: #3b82f6;
}
.module-related__card__icon,
.module-related__icon {
  font-size: 36px;
  margin-bottom: 10px;
  line-height: 1;
}
.module-related__card__title {
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: #1e40af;
  margin-bottom: 6px;
}
.module-related__card__desc,
.module-related__desc {
  font-size: 15px;
  color: #475569;
  line-height: 1.5;
}

/* 대표 계산기 돌아가기 */
.module-cta--back {
  margin: 32px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.module-cta--back a,
.module-content .module-cta--back a {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  font-size: 24px;                 /* XL 급 통일 */
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #fff !important;
  background: var(--color-primary);
  text-align: center;
  text-decoration: none !important;
  padding: 20px 44px;               /* XL 급 통일 */
  min-height: 74px;
  border-radius: 14px;              /* 프리미엄 라운드 */
  box-shadow: 0 6px 18px rgba(0,0,0,0.14);
  transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
  box-sizing: border-box;
}
/* Shine — hover 시 1회 diagonal sweep */
.module-cta--back a::before,
.module-content .module-cta--back a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -120%;
  width: 80%;
  height: 100%;
  background: linear-gradient(
    115deg,
    transparent 0%,
    rgba(255,255,255,0.35) 50%,
    transparent 100%
  );
  transform: skewX(-20deg);
  transition: left 0.7s ease;
  pointer-events: none;
}
.module-cta--back a:hover::before,
.module-content .module-cta--back a:hover::before {
  left: 120%;
}
/* 2번째 이후 CTA는 보조 스타일 (아웃라인) */
.module-cta--back a:nth-child(n+2),
.module-content .module-cta--back a:nth-child(n+2) {
  background: transparent;
  color: var(--color-primary) !important;
  border: 2px solid var(--color-primary);
}
.module-cta--back a:nth-child(n+2):hover,
.module-content .module-cta--back a:nth-child(n+2):hover {
  background: var(--color-primary);
  color: #fff !important;
}
.module-cta--back a:hover,
.module-content .module-cta--back a:hover {
  /* 테마색 유지, 명도·리프트·그림자만 강화 */
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(0,0,0,0.22);
  filter: brightness(1.08);
  color: #fff !important;
  text-decoration: none !important;
}
/* 접근성: 모션 축소 */
@media (prefers-reduced-motion: reduce) {
  .module-cta--back a::before,
  .module-content .module-cta--back a::before { display: none; }
  .module-cta--back a,
  .module-content .module-cta--back a { transition: none; }
  .module-cta--back a:hover,
  .module-content .module-cta--back a:hover { transform: none; filter: none; }
}

/* 데이터 출처 → calc-sources 클래스 재사용 (본 포스트와 동일) */

/* 최종 업데이트 */
.post p.module-disclaimer__updated,
.module-disclaimer__updated {
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #9ca3af;
  font-style: italic;
  margin-top: 8px;
}

/* ===== Longtail Responsive ===== */
/* ===== Longtail Article Variant ===== */
.module-result-card--article {
  border-left: 3px solid var(--color-primary);
}

/* ===== Longtail Focus-Visible (WCAG AA) ===== */
.module-result-card__link:focus-visible,
.module-table__link:focus-visible,
.module-cta--back a:focus-visible,
.module-related__card:focus-visible,
.module-related__card:focus-visible,
.module-steps__content a:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
  box-shadow: 0 0 0 4px var(--color-primary-light);
}

/* ===== Longtail Responsive ===== */
@media (max-width: 768px) {
  .module-result-card--lt {
    padding: 16px;
  }
  .module-result-card__highlight {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 12px 16px;
  }
  .module-stat-card--quicks {
    grid-template-columns: 1fr;
  }
  .module-result-card--derived {
    padding: 16px;
  }
  .module-result-card__table {
    font-size: 14px;
  }
  .module-result-card__table th {
    font-size: 14px;
  }
  .module-steps__item {
    padding: 12px;
  }
  .module-info-box--insight {
    padding: 16px;
  }
  .module-related__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .module-related__grid {
    grid-template-columns: 1fr;
  }
  .module-result-card__body {
    line-height: 1.6;
  }
}

@media (max-width: 480px) {
  .module-stat-card--quicks {
    grid-template-columns: 1fr;
  }
  .module-related__grid {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================
   DSR Gauge — 시각적 DSR 비율 바
   ========================================================== */
.dsr-gauge {
  margin: 16px 0;
  background: var(--color-bg-subtle, #f3f4f6);
  border-radius: var(--color-radius-sm);
  height: 32px;
  position: relative;
  overflow: hidden;
}
.dsr-gauge__bar {
  height: 100%;
  border-radius: var(--color-radius-sm);
  transition: width 0.5s ease, background 0.3s;
  width: 0%;
}
.dsr-gauge__bar--safe { background: #16a34a; }
.dsr-gauge__bar--warning { background: #f59e0b; }
.dsr-gauge__bar--danger { background: #dc2626; }
.dsr-gauge__marker {
  position: absolute;
  top: 0;
  height: 100%;
  border-left: 2px dashed;
  z-index: 1;
}
.dsr-gauge__marker--bank {
  left: 57.14%; /* 40/70 */
  border-color: #dc2626;
}
.dsr-gauge__marker--nonbank {
  left: 71.43%; /* 50/70 */
  border-color: #f59e0b;
}
.dsr-gauge__label {
  position: absolute;
  top: -18px;
  font-size: 11px;
  font-weight: 600;
  transform: translateX(-50%);
}
.dsr-gauge__label--bank {
  left: 57.14%;
  color: #dc2626;
}
.dsr-gauge__label--nonbank {
  left: 71.43%;
  color: #f59e0b;
}

/* ===== Longtail Print ===== */
@media print {
  .module-section {
    page-break-inside: avoid;
  }
  .module-result-card--lt,
  .module-result-card--derived,
  .module-steps__item,
  .module-info-box--insight {
    border: 1px solid #ccc;
    box-shadow: none;
    break-inside: avoid;
  }
  .module-result-card__link,
  .module-table__link,
  .module-cta--back {
    display: none;
  }
}

/* ══════════════════════════════════════════════════════════════
   US State Paycheck Calculator — Missing CSS (2026-04-05)
   ══════════════════════════════════════════════════════════════ */

/* ──── State Hero Section ──── */
.state-hero {
  background: linear-gradient(135deg, #f0f9ff, #e0f2fe);
  border-radius: 12px;
  padding: 24px 20px;
  margin-bottom: 24px;
  text-align: center;
}
.state-hero h2 {
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 12px 0;
  color: #1e293b;
}
.state-hero p {
  margin: 12px 0 0 0;
  color: #475569;
  font-size: 15px;
  line-height: 1.6;
}
.state-hero__badges {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 12px;
}

/* ──── Badge System ──── */
.badge {
  display: inline-block;
  padding: 5px 14px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.3px;
}
.badge--green {
  background: #dcfce7;
  color: #166534;
  border: 1px solid #86efac;
}
.badge--blue {
  background: #dbeafe;
  color: #1e40af;
  border: 1px solid #93c5fd;
}
.badge--purple {
  background: #e9d5ff;
  color: #6b21a8;
  border: 1px solid #d8b4fe;
}

/* ──── Result Summary Cards ──── */
.module-calc-result__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 16px 0;
}
.module-calc-result__card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px 14px;
  text-align: center;
}
.module-calc-result__card-label {
  display: block;
  font-size: 15px;
  font-weight: 600;
  color: #475569;
  margin-bottom: 6px;
}
.module-calc-result__card-value {
  display: block;
  font-size: 24px;
  font-weight: 700;
  color: #2563eb;
}
.module-calc-result__card--highlight {
  background: #eff6ff;
  border-color: #2563eb;
  border-width: 2px;
}
.module-calc-result__card--highlight .module-calc-result__card-value {
  font-size: 26px;
  color: #1d4ed8;
}

/* ──── Chart Wrapper (Responsive) ──── */
.module-chart-wrap {
  margin: 20px auto;
  padding: 16px;
  max-width: 360px;
  text-align: center;
}
.module-chart-wrap canvas {
  max-width: 100%;
  height: auto !important;
}

/* ──── Content Section (US Shared) ──── */
.module-calc-content-section {
  margin: 24px 0;
  padding: 0;
}
/* `>` direct child only — nested h3/h4 (combo-card / hub-block / FAQ details 안) 영향 차단 */
.module-calc-content-section > h3,
.module-calc-result > h3,
.module-table__scroll-wrap > h3 {
  font-size: 18px !important;
  font-weight: 700 !important;
  margin: 24px 0 12px 0 !important;
  line-height: 1.4 !important;
  color: #1e293b;
}
.module-calc-content-section > h4 {
  font-size: 16px !important;
  font-weight: 700 !important;
  margin: 20px 0 8px 0 !important;
  line-height: 1.4 !important;
  color: #1e293b;
}
.module-table-caption {
  font-size: 16px;
  font-weight: 700;
  color: #1e293b;
  margin: 24px 0 8px 0;
}
.module-calc-content-section p {
  font-size: 16px;
  line-height: 1.7;
  color: #374151;
  margin: 0 0 12px 0;
}
.module-calc-content-section ul {
  padding-left: 20px;
  margin: 0 0 12px 0;
}
.module-calc-content-section li {
  font-size: 16px;
  line-height: 1.6;
  color: #374151;
  margin-bottom: 6px;
}

/* ──── Calc List ──── */
.module-calc-list {
  list-style: disc;
  padding-left: 20px;
  margin: 8px 0 16px 0;
}
.module-calc-list li {
  font-size: 14px;
  line-height: 1.6;
  color: #374151;
  margin-bottom: 6px;
}
.module-calc-list--links {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 8px;
}
.module-calc-list--links li {
  margin: 0;
}
.module-calc-list--links a {
  display: block;
  padding: 8px 12px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  color: #2563eb;
  text-decoration: none;
  font-size: 14px;
  transition: background 0.15s;
}
.module-calc-list--links a:hover {
  background: #eff6ff;
  border-color: #93c5fd;
}

/* ──── Row Group Header (for deduction table) ──── */
/* v14.85 (사용자 mandate "Monthly Pension (Gross) / State Tax Impact / Lifetime Value 글자 작음 — 본문 사이즈"):
   font-size: 13px 영영구 → inherit (본문 일반 크기) */
.row-group-header td {
  background: #f1f5f9;
  font-weight: 600;
  color: #475569;
  padding: 8px 12px;
  border-bottom: 2px solid #e2e8f0;
}

/* ──── Longtail Page Styles ──── */
/*
 * [2026-04-14] KR 롱테일 테이블 100% 너비 수정
 * 이전: .module-table에 display:block + overflow-x:auto → 테이블이 콘텐츠 기반 폭으로 수축
 * 현재: .module-table은 display:table 유지 + width:100% → 부모 폭 채움
 *       가로 스크롤 책임은 부모 .module-table__scroll-wrap으로 이동
 * US 영향: longtail-master.php:108의 인라인 스타일(!important)이 이 규칙을 덮어쓰므로
 *         US 롱테일 동작은 변화 없음. KR 롱테일만 100% 너비 획득.
 * 장기: US 글로벌 규격화 완료 시 modules.css 재작성으로 이 블록 자연 소멸 예정.
 */
.longtail-page .module-table {
  display: table !important;
  width: 100% !important;
  table-layout: auto;
  margin: 16px 0 8px;
}
.longtail-page .module-table__scroll-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.longtail-page .entry-content > div,
.longtail-page .entry-content table {
  max-width: 100%;
  overflow-wrap: break-word;
}
.module-header--lt {
  margin-bottom: 24px;
}
.module-header--lt h2 {
  font-size: 24px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 8px 0;
}
.module-highlight__tag-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}
.module-highlight--tag {
  display: inline-block;
  padding: 6px 14px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  color: #2563eb;
  font-size: 13px;
  text-decoration: none;
  transition: background 0.15s;
}
.module-highlight--tag:hover {
  background: #dbeafe;
  border-color: #93c5fd;
}
.module-hub-nav__links {
  margin-top: 24px;
}
.module-hub-nav__list {
  list-style: none;
  padding: 0;
  margin: 12px 0;
}
.module-hub-nav__list li {
  padding: 8px 0;
  border-bottom: 1px solid #f1f5f9;
  font-size: 14px;
  line-height: 1.6;
}
.module-hub-nav__list a {
  color: #2563eb;
  text-decoration: none;
  font-weight: 600;
}
.module-hub-nav__list a:hover {
  text-decoration: underline;
}

/* ──── Mobile Responsive ──── */
@media (max-width: 640px) {
  .state-hero {
    padding: 16px 14px;
  }
  .state-hero h2 {
    font-size: 20px;
  }
  .module-calc-result__cards {
    grid-template-columns: repeat(2, 1fr);
  }
  .module-calc-result__card-value {
    font-size: 18px;
  }
  .module-chart-wrap {
    max-width: 280px;
    padding: 12px;
  }
  .module-calc-list--links {
    grid-template-columns: 1fr;
  }
}

/* ══════════════════════════════════════════════════════════════
   US Longtail Content (.module-content) — 2026-04-06
   ══════════════════════════════════════════════════════════════ */

/* ── Base ── */
.module-content { font-size: 16px; line-height: 1.85; color: #374151; max-width: 100%; }
.module-content h2 { font-size: 24px; font-weight: 700; color: #1e293b; margin: 36px 0 16px; padding-bottom: 10px; border-bottom: 2px solid #e5e7eb; }
.module-content h3 { font-size: 20px; font-weight: 700; color: #1e293b; margin: 28px 0 12px; }
.module-content p { font-size: 16px; line-height: 1.85; color: #374151; margin: 0 0 16px; }
.module-content ul, .module-content ol { padding-left: 0; margin: 0 0 16px; list-style-position: inside; }
.module-content li { font-size: 16px; line-height: 1.8; margin-bottom: 8px; }
.module-content a { color: #2563eb; text-decoration: none; }
.module-content a:hover { text-decoration: underline; }
.module-content a.module-table__link:hover { text-decoration: none; }
.module-content strong { color: #111827; font-weight: 700; }

/* ── Tables ── */
.module-content table, .module-content .module-table,
.module-content section table, .module-content div table,
.longtail-page table {
  width: 100% !important; min-width: 100%; border-collapse: collapse; margin: 16px 0;
}
.module-content table { table-layout: auto; }
.module-content table td, .longtail-page table td { text-align: right; font-size: 16px; }
.module-content table td:first-child, .longtail-page table td:first-child { text-align: left; }
.module-content table tr:hover td, .longtail-page table tr:hover td { background: #f1f5f9; }  /* slate-100 — 본 계산기 통일 */
/* 롱테일 thead — 본 계산기와 동일 중립 슬레이트 통일 (2026-04-16) */
.module-content table thead,
.module-content table thead th,
.longtail-page table thead,
.longtail-page table thead th {
  background: #e2e8f0 !important;  /* slate-200 */
  color: #1e293b !important;        /* slate-800 */
  border-bottom: 2px solid #94a3b8;  /* slate-400 */
  font-weight: 700;
}
.module-content .module-table__scroll-wrap,
.module-content .module-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; }
.module-content > table, .module-content section > table,
.module-content div > table { overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* ── Info/Tip/Warning Boxes ── */
.module-content .module-info-box { background: #eff6ff; border-left: 4px solid #3b82f6; border-radius: 8px; padding: 16px 20px; margin: 20px 0; font-size: 16px; line-height: 1.8; color: #1e3a5f; }
.module-content .tip-box { background: #f0fdf4; border-left: 4px solid #22c55e; border-radius: 8px; padding: 16px 20px; margin: 20px 0; font-size: 16px; line-height: 1.8; color: #14532d; }
.module-content .warning-box { background: #fefce8; border-left: 4px solid #eab308; border-radius: 8px; padding: 16px 20px; margin: 20px 0; font-size: 16px; line-height: 1.8; color: #713f12; }

/* ── FAQ Accordion ── */
.module-content .module-faq-item { border: 1px solid #e5e7eb; border-radius: 8px; margin-bottom: 8px; overflow: hidden; }
.module-content .module-faq-item summary,
.module-content .module-faq-q { background: #f8fafc; padding: 14px 18px; font-weight: 600; font-size: 16px; color: #1e293b; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.module-content .module-faq-item summary::after { content: '+'; font-size: 20px; color: #9ca3af; }
.module-content .module-faq-item[open] summary::after { content: '\2212'; }
.module-content .module-faq-item[open] summary { background: #eff6ff; border-bottom: 1px solid #e5e7eb; }
.module-content .module-faq-a,
.module-content .module-faq-item p { padding: 14px 18px; margin: 0; font-size: 16px; line-height: 1.8; color: #374151; }

/* ── Related Calculator Cards — lt-* 는 상단 공용 블록에서 calc-* 와 통합 정의됨 ── */

/* ── State Grid (ss-fairness-act 51-region card grid)
   .module-related__grid + .module-related__card 범용 구조 재사용, 글자만 확대 + 왼쪽 정렬
   ──────────────────────────────────────────────── */
#state-specific-analysis .module-related__grid {
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}
#state-specific-analysis .module-related__card {
  align-items: flex-start;
  text-align: left;
}
#state-specific-analysis .module-related__card__title {
  font-size: 20px;
}
#state-specific-analysis .module-related__card__desc {
  display: block;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 4px;
}
#state-specific-analysis .module-related__card .module-table__link {
  display: block;
  margin-top: 8px;
  width: 100%;
  text-align: center;
  pointer-events: none; /* 카드 전체가 링크 */
}
#state-specific-analysis .module-related__card:hover .module-table__link {
  background: var(--color-primary);
  color: #fff;
  border-color: var(--color-primary);
  transform: translateY(-1px);
  box-shadow: 0 3px 10px color-mix(in srgb, var(--color-primary) 30%, transparent);
}

/* ── Box-nested list (tip/warning/info-box 안 ol/ul spacing 통합 — v15.0 inline style 영역 modules.css SSOT 마이그레이션) ── */
.module-content .tip-box ol,
.module-content .tip-box ul,
.module-content .warning-box ol,
.module-content .warning-box ul { margin: 0.5rem 0 0; padding-left: 1.25rem; }
/* info-box ul/ol — .module-content 컨텍스트 의존 제거 (가상 스포크 페이지엔 .module-content 없어 ul 기본 40px 들여쓰기 과다 → 정정 2026-06-10) */
.module-info-box ol,
.module-info-box ul { margin: 0.5rem 0 1rem; padding-left: 1.25rem; }
/* info-box 안 링크 그리드(.module-calc-list--links, opinet 등): 박스 자체 padding(20px)으로 충분 →
   추가 좌패딩 제거(그리드 전용·불릿 목록은 1.25rem 유지). 51개 내비 링크는 최소 글자(12px). */
.module-info-box .module-calc-list--links { padding-left: 0; }
.module-info-box .module-calc-list--links a { font-size: 16px; }

/* ── Section wrapper spacing (lt-popular-searches / lt-hub-links / lt-sources 영역 inline margin-top 영역 modules.css SSOT 마이그레이션 — v15.0) ── */
.module-content .module-hub-nav__popular,
.module-content .module-hub-nav__links { margin-top: 2em; }
.module-content .lt-sources { margin-top: 2.5em; }

/* ── Sources List ── */
.module-content .lt-sources,
.module-content .lt-source-list { list-style: none; padding: 0; margin: 12px 0; }
.module-content .lt-sources li,
.module-content .lt-source-list li { padding: 10px 14px 10px 20px; border-left: 3px solid #e2e8f0; margin-bottom: 8px; background: #f8fafc; border-radius: 0 6px 6px 0; font-size: 16px; line-height: 1.7; transition: border-color 0.2s; }
.module-content .lt-sources li:hover,
.module-content .lt-source-list li:hover { border-left-color: #3b82f6; }
.module-content .lt-sources a { color: #2563eb; text-decoration: none; }
.module-content .lt-sources a:hover { text-decoration: underline; }

/* ── Link List (More Paycheck Resources) ── */
.module-content .module-hub-nav__list { list-style: none; padding: 0; margin: 12px 0; }
.module-content .module-hub-nav__list li { padding: 10px 14px 10px 20px; border-left: 3px solid #e2e8f0; margin-bottom: 8px; background: #f8fafc; border-radius: 0 6px 6px 0; font-size: 16px; line-height: 1.7; transition: border-color 0.2s; }
.module-content .module-hub-nav__list li:hover { border-left-color: #3b82f6; }

/* ── Disclaimer (작은 italic + 박스) ── */
.module-content .lt-disclaimer { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px 20px; margin: 24px 0 8px; font-size: 13px; font-style: italic; line-height: 1.7; color: #6b7280; }
.module-content .lt-disclaimer p { font-size: 13px; font-style: italic; color: #6b7280; margin: 0 0 4px; }

/* ── CTA Button ── */
.module-content .lt-cta-btn { display: block; width: 100%; padding: 14px 24px; background: linear-gradient(135deg, #2563eb, #1d4ed8); color: #fff !important; font-weight: 600; font-size: 16px; border-radius: 8px; text-decoration: none !important; text-align: center; transition: transform 0.15s, box-shadow 0.15s; margin: 16px 0; box-sizing: border-box; }
.module-content .lt-cta-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(37,99,235,0.3); text-decoration: none !important; }
.module-content .lt-cta-wrap { text-align: center; margin: 1.2em 0; }

/* ── Income Tier Header ── */
.module-header--tier,
.module-content .module-header--tier { font-size: 18px; font-weight: 700; color: #1e293b; margin: 28px 0 12px; padding: 10px 16px; background: linear-gradient(135deg, #f0f9ff, #e0f2fe); border-radius: 8px; border-left: 4px solid #3b82f6; }

/* ══════════════════════════════════════════════════════════
   LONGTAIL — Additional Component Styles
   ══════════════════════════════════════════════════════════ */

/* ── Section BEM Modifiers (layout hooks) ── */
.module-section--result,
.module-section--context,
.module-section--derived,
.module-section--optimize,
.module-section--tax-leakage,
.module-section--state-comparison,
.module-section--affordability,
.module-section--insights,
.module-section--nearby,
.module-section--faq,
.module-section--anticipatory,
.module-section--related,
/* [Phase E-3b 2026-04-24] Comparison page modifiers */
.module-section--comparison-table,
.module-section--narrative,
.module-section--verdict,
.module-section--statutes,
.module-section--focus-narrative,
.module-section--focus-retirement_type,
.module-section--focus-retirement_component,
.module-section--focus-tis,
.module-section--focus-system,
.module-section--focus-rank,
.module-section--focus-state,
.module-section--interaction,
/* [2026-04-27] hub-nav.php 의 "Reading the Rank × TIS Matrix" anchor section — 다른 lt-section modifiers 와 동일 styling */
.module-section--hub-context {
  margin-bottom: 32px;
}

/* ── Comparison page content hierarchy (margins for readability) ── */
/* 주의: .module-content a:hover 등 전역 규칙을 !important 로 오버라이드 필요 */
.module-section--narrative p,
.module-section--verdict p,
.module-section--comparison-table p,
.module-section--focus-narrative p,
.module-section--interaction p,
.module-section--scenarios p,
.entry-content .module-section--narrative p,
.entry-content .module-section--comparison-table p,
.entry-content .module-section--scenarios p {
  margin: 0 0 16px 0 !important;
  line-height: 1.75 !important;
  text-align: left !important;
  color: var(--color-text-body, #1f2937) !important;
}
.module-section--narrative p:last-child {
  margin-bottom: 0 !important;
}
.module-section--narrative h3,
.module-section--focus-narrative h3,
.entry-content .module-section--narrative h3,
.entry-content .module-section--focus-narrative h3 {
  margin-top: 24px !important;
  margin-bottom: 12px !important;
  font-size: 1.15em !important;
  color: var(--color-text-heading, #111827) !important;
  text-align: left !important;
}
/* (제거 2026-04-25: 이전 v7 `lt-section--focus-narrative ul li { list-style: disc outside !important }` 규칙이
    inline `list-style:none` 을 무력화시킴. 기존 `.module-info-box` + inline style 패턴에 맡김.) */

/* ══════════════════════════════════════════════════════════
   COMPARISON PAGE — 기존 CSS 재사용 전략 (v7 2026-04-24)
   ══════════════════════════════════════════════════════════
   원칙: 신규 CSS 추가 금지. 기존 framework convention 재사용.
   - 테이블 좌측 정렬 → `class="td-notes"` convention (자기진화 ⑦)
   - Verdict/Detailed Analysis → 기존 `.module-info-box` class
   - Related hover underline → 전역 `.module-table a:hover` 규칙이 원인이 아님,
     `.module-content a:hover` 전역 underline 이 원인 → 아래 1개 규칙으로 차단
   ══════════════════════════════════════════════════════════ */

/* Related Pages — 카드형 링크의 underline 완전 제거 (전역 .module-content a:hover 오버라이드) */
.module-related__list a,
.module-related__list a:hover,
.module-related__list a:focus,
.module-content .module-related__list a,
.module-content .module-related__list a:hover,
.entry-content .module-related__list a,
.entry-content .module-related__list a:hover {
  text-decoration: none !important;
}

/* (.statute-list 제거 — 2026-04-25: 기존 .module-info-box 래핑 패턴으로 대체.
    Confederate Base Renames 섹션 참고 — <h3> + <div class="info-box"><ul>...</ul></div>) */

/* ══════════════════════════════════════════════════════════
   .module-table 모든 행 border-bottom 일관성 (td + th[scope="row"])
   Problem 1: 기존 규칙 .module-table tbody tr:last-child td { border-bottom: 2px !important }
     → <td> 만 대상, <th scope="row"> 제외 → 첫 컬럼 마지막 행 bottom 없음
   Problem 2: longtail-master inline .longtail-page table td { border-bottom: 1px } (no !important)
     → 다른 CSS rule 에 의해 중간 행 td border 사라짐 → th[scope="row"] 만 border 보이는 불일치
   Fix: th[scope="row"] + td 모두 !important 로 동일 border 강제
   ══════════════════════════════════════════════════════════ */
.module-table tbody tr th[scope="row"],
.module-table tbody tr td,
.longtail-page .module-table tbody tr th[scope="row"],
.longtail-page .module-table tbody tr td {
  border-bottom: 1px solid #e5e7eb !important;
}
.module-table tbody tr:last-child th[scope="row"],
.module-table tbody tr:last-child td,
.longtail-page .module-table tbody tr:last-child th[scope="row"],
.longtail-page .module-table tbody tr:last-child td {
  border-bottom: 2px solid #e5e7eb !important;
}
/* hub-matrix 는 예외 — 자체 스타일 */
.module-table.hub-matrix tbody tr th[scope="row"],
.module-table.hub-matrix tbody tr td,
.longtail-page .module-table.hub-matrix tbody tr th[scope="row"],
.longtail-page .module-table.hub-matrix tbody tr td {
  border-bottom: 1px solid #e5e7eb !important;
}

/* Verdict box — decision emphasis (NOT .module-highlight — that class forces white-text-on-dark) */
.verdict-box,
.entry-content .verdict-box,
.module-content .verdict-box {
  background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 100%) !important;
  border-left: 4px solid #10b981 !important;
  padding: 20px 24px !important;
  border-radius: 8px !important;
  margin: 16px 0 !important;
  color: #064e3b !important;
  text-align: left !important;
}
.verdict-box p,
.entry-content .verdict-box p,
.module-content .verdict-box p {
  color: #064e3b !important;
  line-height: 1.75 !important;
  margin: 0 0 12px 0 !important;
  text-align: left !important;
}
.verdict-box p:last-child,
.entry-content .verdict-box p:last-child {
  margin-bottom: 0 !important;
}
.verdict-box strong,
.entry-content .verdict-box strong {
  color: #065f46 !important;
}

/* Interaction box — E-3a 2-dim analysis (NOT .module-highlight) */
.entry-content .interaction-box,
.module-content .interaction-box {
  background: linear-gradient(135deg, #eff6ff 0%, #f0f9ff 100%) !important;
  border-left: 4px solid #3b82f6 !important;
  padding: 20px 24px !important;
  border-radius: 8px !important;
  margin: 16px 0 !important;
  color: #1e3a8a !important;
  text-align: left !important;
}
.entry-content .interaction-box p,
.module-content .interaction-box p {
  color: #1e3a8a !important;
  line-height: 1.75 !important;
  margin: 0 0 12px 0 !important;
  text-align: left !important;
}
.entry-content .interaction-box strong {
  color: #1e40af !important;
}

/* Statute list — clean bullet styling */
.statute-list {
  margin: 12px 0;
  padding-left: 24px;
}
.statute-list li {
  margin-bottom: 6px;
  line-height: 1.7;
  color: var(--color-text-body, #374151);
}

/* FAQ source attribution */
.faq-source {
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px dashed var(--color-border, #e5e7eb);
  font-size: 0.85em;
  color: var(--color-text-secondary, #6b7280);
}

/* ══════════════════════════════════════════════════════════
   Hub Matrix Override — longtail page global table rule 복원
   ══════════════════════════════════════════════════════════
   Problem: longtail-master.php inline <style>:
     `.longtail-page table { width: 100% !important; table-layout: fixed !important }`
     forces hub-matrix (21 × 11 = 12 cols) into crushed fixed-layout → 버튼 겹침.
   Fix: hub-matrix 전용 auto layout + min-width 900px + cell padding.
   각 셀에 pension $ 3-4자리 + /mo 텍스트 있으니 min-width 70-80px 필요 × 12 cols = 900px+.
   ══════════════════════════════════════════════════════════ */
.longtail-page table.hub-matrix,
.longtail-page .module-table__scroll-wrap table.hub-matrix,
.longtail-page .module-table-wrap table.hub-matrix {
  width: auto !important;
  min-width: 900px !important;
  table-layout: auto !important;
  overflow-x: visible !important;
  display: table !important;
}
.longtail-page table.hub-matrix th,
.longtail-page table.hub-matrix td {
  white-space: nowrap !important;
  padding: 6px 4px !important;
  text-align: center !important;
  min-width: 70px !important;
}
.longtail-page table.hub-matrix td:first-child,
.longtail-page table.hub-matrix th:first-child {
  text-align: left !important;
  padding-left: 12px !important;
  min-width: 60px !important;
}
/* hub-matrix__link font-size 는 components.css:1193 `.hub-matrix__link { font-size: 0.9rem }` 가 담당.
   modules.css override 에서 font-size 오버라이드 제거 (2026-04-25) — 최소 가독 크기 준수. */
.longtail-page table.hub-matrix .hub-matrix__link,
.longtail-page table.hub-matrix .hub-matrix__cell a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px 10px !important;
  min-width: 54px !important;
  min-height: 32px !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

/* ══════════════════════════════════════════════════════════
   📌 Few-column matrix override (4 ~ 7 cols) — 2026-05-05
   ──────────────────────────────────────────────────────────
   배경: hub-matrix 기본 min-width: 900px + width: auto 영역 21×11
         (Rank × YOS, 12 cols) 영역 영역 영역 영역 영역. 4-col / 7-col
         matrix 영역 영역 영역 영역 영역 영역 영역 영역 영역 — 컬럼 너비
         영역 영역 영역 영역 영역 영역 영역 영역 영역 영역 영역 영역.
   Fix: block-specific
     - table: width: auto + min-width: 0 (콘텐츠 영역 영역 영역 자연 너비)
     - td/th: min-width: 0 (영역 영역 영역 영역 영역 영역 영역 영역)
     - 모든 컬럼 자연 너비 영역 영역 (첫 컬럼 + 데이터 컬럼 모두)
   ══════════════════════════════════════════════════════════ */
.longtail-page .hub-block--rank-x-component .hub-matrix,
.longtail-page .hub-block--tis-x-component .hub-matrix,
.longtail-page .hub-block--rank-x-type .hub-matrix,
.longtail-page .hub-block--state-x-service .hub-matrix,
.longtail-page .hub-block--rank-x-component .module-table__scroll-wrap table.hub-matrix,
.longtail-page .hub-block--tis-x-component .module-table__scroll-wrap table.hub-matrix,
.longtail-page .hub-block--rank-x-type .module-table__scroll-wrap table.hub-matrix,
.longtail-page .hub-block--state-x-service .module-table__scroll-wrap table.hub-matrix {
  min-width: 100% !important;   /* 컨테이너 영역 영역 영역 영역 영역 영역 영역 영역 (스크롤 부재) */
  width: auto !important;        /* 콘텐츠 영역 영역 영역 영역 영역 영역 (영역 영역 영역 영역 영역 영역 영역 영역) */
  table-layout: auto !important;
}
.longtail-page .hub-block--rank-x-component .hub-matrix th,
.longtail-page .hub-block--rank-x-component .hub-matrix td,
.longtail-page .hub-block--tis-x-component .hub-matrix th,
.longtail-page .hub-block--tis-x-component .hub-matrix td,
.longtail-page .hub-block--rank-x-type .hub-matrix th,
.longtail-page .hub-block--rank-x-type .hub-matrix td,
.longtail-page .hub-block--state-x-service .hub-matrix th,
.longtail-page .hub-block--state-x-service .hub-matrix td {
  min-width: 0 !important;
  width: auto !important;
  padding: 8px 12px !important;
}
.longtail-page .hub-block--rank-x-component .hub-matrix th:first-child,
.longtail-page .hub-block--rank-x-component .hub-matrix td:first-child,
.longtail-page .hub-block--tis-x-component .hub-matrix th:first-child,
.longtail-page .hub-block--tis-x-component .hub-matrix td:first-child,
.longtail-page .hub-block--rank-x-type .hub-matrix th:first-child,
.longtail-page .hub-block--rank-x-type .hub-matrix td:first-child,
.longtail-page .hub-block--state-x-service .hub-matrix th:first-child,
.longtail-page .hub-block--state-x-service .hub-matrix td:first-child {
  white-space: nowrap !important;
}

/* ══════════════════════════════════════════════════════════
   📌 hub-base-block__title — Top 50 base block 영역 h4 (2026-05-05)
   ──────────────────────────────────────────────────────────
   배경: WordPress 기본 h4 = font-size: 24px + margin-bottom: 20px
         → calc 영역 영역 (.hub-block__title = 1.25rem = 20px) 영역
         영역 영역 영역 영역 영역. .hub-base-block__title CSS 정의 부재.
   Fix: hub-block__title 영역 정합 영역 영역 영역 영역 영역 영역.
   ══════════════════════════════════════════════════════════ */
.hub-base-block {
  margin: 12px 0 8px;
}
.hub-base-block__title {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  margin: 8px 0 6px !important;
  line-height: 1.3 !important;
}

/* ══════════════════════════════════════════════════════════
   📌 calc widget h3 통일 — .module-briefing / .module-chart-wrap (2026-05-06)
   ──────────────────────────────────────────────────────────
   배경: WordPress 기본 h3 = font-size: 29px + margin-bottom: 20px + line-height: 1.2em
         + font-weight: 400 → calc widget 안 h3 ("Your Scenario Summary" /
         "4-System NPV Comparison" 등) 어색하게 큼.
   Fix: calc widget 안 h3 통일 정의 (1.05rem ≈ h4 정합, .hub-base-block__title 정합).
   적용 대상: military-retirement main.php line 233 / 239 + 모든 calc widget h3.
   ══════════════════════════════════════════════════════════ */
.module-briefing h3,
.module-chart-wrap h3,
.module-calc-results h3,
.module-calc-result h3 {
  font-size: 1.05rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
  text-transform: none !important;
}

/* ══════════════════════════════════════════════════════════
   📌 calculator page 안 sections h3 통일 (2026-05-18)
   ──────────────────────────────────────────────────────────
   배경: WordPress 기본 h3 = font-size: 29px (큰 본질) → calculator sections 안
         h3 ("Which Deductions Reduce Which Federal Taxes?" 등) 어색하게 큼.
   Fix: calc / longtail page 안 모든 h3 본질 정합 (1.25rem ≈ 20px, h2 본질 사후 본질).
   적용 대상: sections/*.php 안 모든 h3 + info-box 안 h3 + table 사전 본질 h3 모두.
   ══════════════════════════════════════════════════════════ */
.single-calc h3,
.single-longtail h3,
.module-calc-page-content h3,
.module-calc-section h3,
.dacalc-section h3,
.module-section h3,
.module-info-box h3 {
  font-size: 1.25rem;
  font-weight: 600;
  color: #1e293b;
  margin: 0 0 0.5rem;
  line-height: 1.35;
  text-transform: none;
}

/* (legacy .module-sources__list padding 중복 제거 — flex 배지 정의가 SSOT) */
.module-sources__list li {
  margin-bottom: 6px;
  color: var(--color-text-body, #374151);
}
.module-sources__list a {
  color: var(--color-primary, #1a73e8);
  text-decoration: underline;
  text-decoration-color: rgba(26, 115, 232, 0.3);
}
.module-sources__list a:hover {
  text-decoration-color: var(--color-primary, #1a73e8);
}

/* Disclaimer box — bottom of comparison page */
.module-section--disclaimer {
  margin-top: 24px;
}
/* 면책 = 출처/인용과 동일한 subtle 회색 (원본 .lt-disclaimer 복원 — 앰버 경고박스 아님) */
.module-disclaimer {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 16px 20px;
  margin: 24px 0 8px;
  font-size: 13px;
  font-style: italic;
  line-height: 1.7;
  color: #6b7280;
}
.module-disclaimer p {
  font-size: 13px;
  font-style: italic;
  color: #6b7280;
  margin: 0 0 4px;
}
.module-disclaimer p:last-child { margin-bottom: 0; }

/* Scenario table — comparison page enrichment */
.module-section--scenarios .module-table,
.longtail-page .module-section--scenarios .module-table {
  width: 100% !important;
  margin: 16px 0 !important;
  table-layout: auto !important;
}
.module-section--scenarios .module-table th,
.module-section--scenarios .module-table td,
.longtail-page .module-section--scenarios .module-table th,
.longtail-page .module-section--scenarios .module-table td {
  padding: 10px 12px !important;
  text-align: right !important;
  font-size: 15px !important;
}
.module-section--scenarios .module-table thead th,
.longtail-page .module-section--scenarios .module-table thead th {
  background: #1a73e8 !important;
  color: #fff !important;
  text-align: center !important;
}
.module-section--scenarios .module-table tbody th[scope="row"],
.longtail-page .module-section--scenarios .module-table tbody th[scope="row"] {
  text-align: left !important;
  background: #f9fafb !important;
  font-weight: 600 !important;
  color: #111827 !important;
}

/* Related list — comparison page */
.module-related__list {
  list-style: none;
  padding: 0;
  margin: 16px 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 12px;
}
.module-related__list li a {
  display: block;
  padding: 14px 16px;
  background: var(--color-bg-muted, #f9fafb);
  border: 1px solid var(--color-border, #e5e7eb);
  border-radius: 8px;
  color: var(--color-primary, #1a73e8);
  text-decoration: none;
  font-weight: 500;
  transition: background 0.15s, border-color 0.15s;
}
.module-related__list li a:hover {
  background: #f0f9ff;
  border-color: var(--color-primary, #1a73e8);
}

/* ── Donut 2-segment variant ── */
.module-calc-donut--2seg {
  --seg1: 0; --seg2: 0;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(
    #3b82f6 0% calc(var(--seg1) * 1%),
    #22c55e calc(var(--seg1) * 1%) 100%
  );
  position: relative;
  margin: 0 auto;
}

/* ── Donut 3-segment variant ── */
.module-calc-donut--3seg {
  --seg1: 0; --seg2: 0; --seg3: 0;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(
    #3b82f6 0% calc(var(--seg1) * 1%),
    #f59e0b calc(var(--seg1) * 1%) calc((var(--seg1) + var(--seg2)) * 1%),
    #22c55e calc((var(--seg1) + var(--seg2)) * 1%) 100%
  );
  position: relative;
  margin: 0 auto;
}

/* ── Donut 4-segment variant ── */
.module-calc-donut--4seg {
  --seg1: 0; --seg2: 0; --seg3: 0; --seg4: 0;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(
    #ef4444 0% calc(var(--seg1) * 1%),
    #f97316 calc(var(--seg1) * 1%) calc((var(--seg1) + var(--seg2)) * 1%),
    #3b82f6 calc((var(--seg1) + var(--seg2)) * 1%) calc((var(--seg1) + var(--seg2) + var(--seg3)) * 1%),
    #22c55e calc((var(--seg1) + var(--seg2) + var(--seg3)) * 1%) 100%
  );
  position: relative;
  margin: 0 auto;
}
.module-calc-donut__center {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 120px; height: 120px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.module-calc-donut__value {
  font-size: 24px;
  font-weight: 800;
  color: #1e293b;
}
.module-calc-donut__label {
  font-size: 11px;
  color: #64748b;
  margin-top: 2px;
}
.module-calc-donut-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
  margin: 20px 0;
}
.module-calc-donut__legend {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.module-calc-donut__legend-item {
  font-size: 14px;
  color: #374151;
  display: flex;
  align-items: center;
  gap: 8px;
}
.module-calc-donut__legend-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  flex-shrink: 0;
}

/* ── Compact Table Variant ── */
.module-table--compact {
  font-size: 14px;
}
.module-table--compact th,
.module-table--compact td {
  padding: 8px 10px;
}

/* ── Table Row Highlight ── */
.module-table__row--highlight td {
  background: #eff6ff !important;
  font-weight: 600;
}

/* ── Table Total Row ── */
.module-table__total td {
  font-weight: 700;
  border-top: 2px solid #94a3b8;
  background: #f8fafc;
}

/* ── Table Net Row (final take-home / net result) ── */
.module-table__net td {
  font-weight: 700;
  border-top: 2px solid #22c55e;
  background: #f0fdf4;
  color: #15803d;
}

/* ── S06 State Comparison: first cell 왼쪽 정렬 (링크 + 배지 시각 균형) ── */
.module-section--state-comparison .module-table td:first-child,
.module-section--state-comparison .module-table th:first-child {
  text-align: left !important;
  vertical-align: middle;
}

/* ── Badge System ── */
.badge,
.module-highlight--badge {
  display: inline-block;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
  border-radius: 10px;
  vertical-align: middle;
  line-height: 1.5;
}
.badge--info,
.module-highlight--badge-info {
  background: #dbeafe;
  color: #1d4ed8;
}
.module-highlight--badge-current {
  background: #dbeafe;
  color: #1d4ed8;
}
.module-highlight--badge-notax {
  background: #dcfce7;
  color: #166534;
}

/* ── Callout Boxes ── */
.module-info-box--callout {
  border-radius: 8px;
  padding: 16px 20px;
  margin: 16px 0;
  font-size: 16px;
  line-height: 1.8;
}
.module-info-box--positive {
  background: #f0fdf4;
  border-left: 4px solid #22c55e;
  color: #14532d;
}
.module-info-box--warning {
  background: #fefce8;
  border-left: 4px solid #eab308;
  color: #713f12;
}

/* ── Highlight Box ── */
.module-highlight {
  border-radius: 10px;
  padding: 20px 24px;
  margin: 20px 0;
}
/* flex(아이콘+내용 가로 배치)는 아이콘 있는 변형(savings 등)에만 — 중앙정렬 그라데이션 highlight(제목+CTA)는 세로 stack 유지 */
.module-highlight:has(.module-highlight__icon) {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.module-highlight--savings {
  background: linear-gradient(135deg, #f0fdf4, #dcfce7);
  border: 1px solid #bbf7d0;
}
.module-highlight__icon {
  font-size: 28px;
  flex-shrink: 0;
}
.module-highlight__content {
  flex: 1;
}
.module-highlight__content strong {
  display: block;
  font-size: 18px;
  color: #166534;
  margin-bottom: 4px;
}
.module-highlight__content p {
  margin: 0;
  font-size: 15px;
  color: #374151;
}

/* ── Note Text ── */
.module-info-box--note {
  font-size: 14px;
  color: #6b7280;
  margin: 12px 0;
  line-height: 1.6;
}
/* first-child 기본 center (Year/Rank/Step 등 숫자 컬럼용). .td-notes 지정 시 opt-out */
.module-table td:first-child:not(.td-notes) {
  text-align: center;
}
.module-table th:first-child:not(.td-notes) {
  text-align: center;
}

/* ── Full Table Container ── */
.module-table--full {
  margin-top: 32px;
}

/* ── Popular Searches ── */
.module-hub-nav__popular {
  margin: 24px 0;
}

/* ── Insight Block Modifiers ── */
.module-info-box--benefits { border-left: 4px solid #3b82f6; }
.module-info-box--planning { border-left: 4px solid #8b5cf6; }
.module-info-box--tax      { border-left: 4px solid #f59e0b; }
.module-info-box--wealth   { border-left: 4px solid #059669; }

/* ── FAQ List & Items ── */
.module-faq-list {
  margin: 16px 0;
}
.module-faq-item__question {
  background: #f8fafc;
  padding: 14px 18px;
  font-weight: 600;
  font-size: 16px;
  color: #1e293b;
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.module-faq-item__answer {
  padding: 14px 18px;
  margin: 0;
  font-size: 16px;
  line-height: 1.8;
  color: #374151;
}

/* ── Related Card Sub-elements — 상단 공용 블록에서 통합 정의됨 ── */

/* ── Disclaimer Updated ── */
/* (legacy .module-disclaimer__updated 중복 제거 — 6855 정의가 SSOT) */

/* ── Longtail Mobile ── */
@media (max-width: 640px) {
  .module-content h2 { font-size: 20px; }
  .module-content h3 { font-size: 18px; }
  .module-content .module-related__grid,
  .module-related__grid { grid-template-columns: 1fr; }
  .module-header--tier,
  .module-content .module-header--tier { font-size: 16px; padding: 8px 12px; }
  .module-calc-donut--2seg,
  .module-calc-donut--3seg,
  .module-calc-donut--4seg { width: 160px; height: 160px; }
  .module-calc-donut__center { width: 96px; height: 96px; }
  .module-calc-donut__value { font-size: 20px; }
  .module-calc-donut-wrap { flex-direction: column; }
  .module-highlight { flex-direction: column; gap: 10px; padding: 16px; }
  .module-info-box--callout { padding: 12px 16px; }
  /* 모바일 CTA 버튼 — XL 기반 축소 */
  .module-cta--back a,
  .module-content .module-cta--back a {
    font-size: 20px;
    padding: 18px 20px;
    min-height: 64px;
    border-radius: 12px;
  }
  .module-content .module-table__scroll-wrap,
  .module-content .module-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

/* ============================================================
   KR Minimum Wage Badge (v14.97 — partials/kr/minimum-wage.php inline <style> migration)
   사용처: partials/kr/minimum-wage.php (실수령 결과 카드 상단 배지)
   - .mw-badge--pass: 최저시급 충족 (녹색)
   - .mw-badge--fail: 최저시급 위반 (적색)
   ============================================================ */
.mw-badge {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.5px;
  margin-right: 6px;
}
.mw-badge--pass {
  background: #dcfce7;
  color: #16a34a;
  border: 1px solid #bbf7d0;
}
.mw-badge--fail {
  background: #fef2f2;
  color: #dc2626;
  border: 1px solid #fecaca;
}

/* ============================================================
   Inline Style Migration Utilities (v15.3 — Agent 16)
   사용처: 31건 calc inline style hardcoded 마이그레이션
   - PHP inline style 차단 mandate 정합 (TOP MANDATE)
   - reference markup 100% 정합 mandate 정합
   ============================================================ */

/* margin-top utilities (rem 기반) */
.module-calc-mt-sm { margin-top: 1.25rem; }
.module-calc-mt-md { margin-top: 1.5rem; }

/* margin shorthand (paragraph after heading 패턴) */
.module-calc-mt-tight { margin: 6px 0 0; }

/* list reset (info-box ul / 일반 ul 패턴) */
.module-calc-list-flat {
  margin: 0;
  padding-left: 18px;
}
.module-calc-list-flat--rem {
  margin: 0;
  padding-left: 1.25rem;
}
.module-calc-list-flat--rem-mt {
  margin: 0.75rem 0 0;
  padding-left: 1.25rem;
}
.module-calc-list-flat--tight {
  margin: 6px 0 0;
  padding-left: 18px;
}

/* longtail spacer (h2/h3 직후 hub-nav / divider wrapper 패턴) */
.module-calc-spacer-block {
  margin: 24px 0 36px;
}

/* longtail back-to-calc — sections 사이 변형 (margin/padding override) */
.module-cta--back-inset {
  margin: 36px 0 16px;
  padding: 12px 0;
}

/* donut chart wrapper margin */
.module-calc-donut-wrap--my {
  margin: 24px 0;
}

/* flex row inline (small button group 패턴) */
.module-calc-flex-row {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}

/* info-box example heading reset (h4 first child) */
.module-info-box__heading {
  margin-top: 0;
}
.module-info-box__body {
  margin-bottom: 0;
}

/* ============================================================
   v15.4 — Agent 12 추가 utility (17 file × 21건 inline style 정합)
   `.module-info-box--calc__list` = `.module-calc-list-flat--tight` (이미 존재) 영역 영역 — 중복 제거
   ============================================================ */

/* equal-flex (button row 안 동일 너비) — va-disability-rating add/remove 버튼 */
.module-calc-flex-1 { flex: 1; }

/* ============================================================
   TIMELINE BLOCK (v15.42 — 신규 모듈 timeline.php SSOT)
   3-mode (vertical/horizontal/compact) + semantic tag 색
   + highlight 자동 (today 기준) + Tier 1 출처 인라인 + Schema.org JSON-LD
   ============================================================ */
/* v15.61 (사용자 mandate "모바일 우측 빈 여백 + 가로 스크롤 발생"):
   root cause = .timeline-event--highlight::before 영영구 right: -16px → viewport 우측 영영구
   overflow-x: clip 영영구 가로 스크롤 차단 (sticky positioning 정합 — hidden 영영구 sticky 깨짐) */
.module-timeline {
    margin: 16px 0;
    overflow-x: clip;
}
/* v15.77 (2026-05-24 사용자 영구 push) — S급 시각화 사실 (icon + gradient + border-left accent)
   v15.79 (2026-05-24 전 팀 분석 사실) — 22px → 20px (H2 24px × 1/1.2 = Material Design 정합 사실) */
.module-timeline__title {
    font-size: 20px;
    font-weight: 700;
    color: var(--color-text-primary);
    margin: 0 0 24px;
    padding: 14px 18px 14px 56px;
    background: linear-gradient(135deg, color-mix(in srgb, var(--color-primary, #1a73e8) 8%, transparent), transparent 70%);
    border-left: 4px solid var(--color-primary, #1a73e8);
    border-radius: 8px;
    position: relative;
    line-height: 1.3;
}
.module-timeline__title::before {
    content: '📅';
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 26px;
    line-height: 1;
}

/* Vertical mode (default — events ≥ 6 또는 모바일)
   v15.49 (사용자 mandate "content 영역도 marker만큼 우측 이동 — marker와 content 간격 정합"):
   padding-left 32 → 48px → content 시작 = 부모 + 48px (marker 우측 + 20px 간격)
   세로선 위치 (left: 13px) + marker 위치 (left: -48px) 동기 조정 → marker 위치 유지
   v15.75 (2026-05-24 사용자 영구 push) — S급 시각화 (Material Design + GitHub 정합 사실)
   gradient line + card content + hover effect + marker glow 사실 추가 */
.module-timeline--vertical .timeline-events {
    position: relative;
    padding-left: 48px;
}
.module-timeline--vertical .timeline-events::before {
    content: '';
    position: absolute;
    top: 14px;
    bottom: 14px;
    left: 13px;
    width: 3px;
    background: linear-gradient(180deg, var(--color-primary, #1a73e8) 0%, color-mix(in srgb, var(--color-primary, #1a73e8) 30%, transparent) 100%);
    border-radius: 2px;
}
/* S급 card content (Material Design + Tailwind 정합) */
.module-timeline--vertical .module-timeline__content {
    background: #fff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 10px;
    padding: 16px 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 2px rgba(0, 0, 0, 0.03);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    position: relative;
}
.module-timeline--vertical .timeline-event:hover .module-timeline__content {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.04);
    border-color: color-mix(in srgb, var(--color-primary, #1a73e8) 30%, var(--color-border, #e5e7eb));
}
/* card arrow (왼쪽 marker 방향 화살표) */
.module-timeline--vertical .module-timeline__content::before {
    content: '';
    position: absolute;
    top: 14px;
    left: -8px;
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-right: 8px solid var(--color-border, #e5e7eb);
}
.module-timeline--vertical .module-timeline__content::after {
    content: '';
    position: absolute;
    top: 14px;
    left: -7px;
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-right: 8px solid #fff;
}
/* v15.67 (사용자 결정 "16px vs 20px → 20px"):
   padding-bottom: 16 → 20px (가독성 우선 — 긴 desc 정합 + Tailwind/Material 표준 중간값) */
.module-timeline--vertical .timeline-event {
    position: relative;
    padding-bottom: 20px;
}
.module-timeline--vertical .timeline-event:last-child {
    padding-bottom: 0;
}
/* v15.78 (2026-05-24 사용자 영구 push) — 마지막 event 사실 사후 세로선 사실 차단 사실
   사유: parent .timeline-events::before (top:14px ~ bottom:14px) 사실 = 마지막 marker 사실 사후 사실 = 잔존 사실
   해결: 마지막 event 사실 안 ::after 사실 = 흰색 mask 사실 사용 본문 사실 (marker bottom 사실 사후 사실 ~ parent 끝 사실) */
.module-timeline--vertical .timeline-event:last-child::after {
    content: '';
    position: absolute;
    top: 32px;       /* marker top:4 + height:28 = 32 사후 사실 */
    bottom: -14px;   /* parent .timeline-events::before bottom:14 사실 cover */
    left: -35px;     /* parent padding-left:48 - line left:13 = 35 사실 */
    width: 3px;
    background: #fff;
    z-index: 1;
}
/* v15.49 (사용자 mandate "content 영역 우측 이동 — marker 위치 유지"):
   padding-left 32 → 48 → marker left -32 → -48 동기 조정 (marker 위치 부모 + 0 유지) */
.module-timeline--vertical .timeline-marker {
    position: absolute;
    left: -48px;
    top: 4px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    border: 3px solid #fff;
    box-shadow: 0 0 0 2px var(--color-border);
}
/* v15.55 (사용자 mandate "내부 하단 여백을 상단 여백처럼 줘"):
   highlight ::before bottom: -12px → background가 content 하단까지 확장
   상단 여백 (padding-top 12px) + 하단 여백 (::before bottom -12px = background 12px 추가 확장)
   결과: 박스 안 상단 12px + 하단 12px 동일 여백 정합 */
.module-timeline--vertical .timeline-event--highlight {
    position: relative;
    padding: 12px 0;
    border-radius: var(--color-radius-sm);
}
.module-timeline--vertical .timeline-event--highlight::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: -10px;
    left: -16px;
    right: -16px;
    background: var(--color-bg-subtle);
    border-radius: var(--color-radius-sm);
    z-index: -1;
}

/* Horizontal mode (events 3-5 + 데스크톱 — stepper 형) */
.module-timeline--horizontal .timeline-events {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}
.module-timeline--horizontal .timeline-event {
    flex: 1;
    min-width: 180px;
    position: relative;
    padding-top: 44px;
}
.module-timeline--horizontal .timeline-marker {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}
.module-timeline--horizontal .module-timeline__content {
    text-align: center;
}
.module-timeline--horizontal .timeline-event--highlight {
    background: var(--color-bg-subtle);
    border: 1px solid var(--color-primary);
    border-radius: var(--color-radius-sm);
    padding: 44px 12px 12px;
}

/* Compact mode (print/AEO 친화 — dl 형) */
.module-timeline--compact .timeline-events {
    margin: 0;
    padding: 0;
}
.module-timeline--compact .timeline-event {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--color-border);
}
.module-timeline--compact .timeline-event:last-child {
    border-bottom: none;
}
.module-timeline--compact .timeline-marker {
    display: none;
}
.module-timeline--compact .timeline-event--highlight {
    background: var(--color-bg-subtle);
    border-left: 4px solid var(--color-primary);
    padding-left: 12px;
}

/* Common */
.timeline-event {
    position: relative;
}
/* v15.68 (사용자 결정 "13px vs 15px → 15px"):
   font-size: 13 → 15px (timeline 핵심 정보 — 시간 인지 강조 + title 16px 대비 위계 유지) */
.module-timeline__date {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-text-secondary);
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.timeline-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--color-text-primary);
    margin: 0 0 6px;
    line-height: 1.4;
}
.timeline-title a {
    color: var(--color-primary);
    text-decoration: none;
}
.timeline-title a:hover {
    text-decoration: underline;
}
.module-timeline__desc {
    font-size: 15px;
    line-height: 1.6;
    color: var(--color-text-secondary);
    margin: 0 0 8px;
}
.module-timeline__desc:last-child {
    margin-bottom: 0;
}

/* Sources (Tier 1 출처 인라인 — 이벤트별 출처 link) */
.timeline-sources {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 6px;
    font-size: 13px;
}
/* v15.60 (사용자 mandate "S급 default 채택 — pill 배지"):
   base 스타일 = pill 배지 (Stripe/Linear 패턴) — modifier 영영구 영영구 → 영영구 적용
   span (URL 부재) → plain text 영영구 / a (URL 영영구) → pill 배지 (옅은 파랑 + 호버 짙음)
   hover preview 영영구 영영구 (.timeline-source__preview 영영구 영영구) */
.timeline-source {
    color: var(--color-text-secondary);
}
a.timeline-source {
    display: inline-flex;
    align-items: center;
    padding: 2px 10px;
    background: rgba(59, 130, 246, 0.08);
    border-radius: 4px;
    color: var(--color-primary);
    text-decoration: none;
    font-weight: 600;
    position: relative;
}
a.timeline-source:hover {
    background: rgba(59, 130, 246, 0.15);
    color: var(--color-primary-dark);
}

/* v15.52 — timeline-source 5 옵션 modifier (test verify 영영구 — 사용자 결정 후 1개 채택) */

/* 옵션 A — 외부 링크 아이콘 (Apple/Google 패턴) */
a.timeline-source--icon::after {
    content: ' ↗';
    font-size: 0.85em;
    opacity: 0.7;
    margin-left: 2px;
}

/* 옵션 B — Pill/Tag 배지 (Stripe/Linear 패턴) */
a.timeline-source--pill {
    display: inline-flex;
    align-items: center;
    padding: 2px 10px;
    background: rgba(59, 130, 246, 0.08);
    border-radius: 4px;
    color: var(--color-primary);
    text-decoration: none;
    font-weight: 600;
}
a.timeline-source--pill:hover {
    background: rgba(59, 130, 246, 0.15);
    text-decoration: none;
    text-decoration-thickness: initial;
}

/* 옵션 C — Dot marker + underline (구조 강조) */
a.timeline-source--dot::before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--color-primary);
    margin-right: 6px;
    vertical-align: middle;
}

/* 옵션 D — Wavy underline (현대 트렌드) */
a.timeline-source--wavy {
    text-decoration: underline;
    text-decoration-style: wavy;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

/* 옵션 E — Material 화살표 + hover 애니메이션 */
a.timeline-source--material::after {
    content: ' →';
    margin-left: 4px;
    transition: transform 0.2s;
    display: inline-block;
}
a.timeline-source--material:hover::after {
    transform: translateX(3px);
}

/* ============================================================
   TIMELINE S급 5 옵션 (v15.53 — 디자인 사이트 리서치 결과 통합)
   1. Schema.org 강화 (CSS 부재)
   2. Scroll-driven fade-in animation
   3. Hover card preview (출처 미리보기)
   4. Sticky year headers
   5. Accordion (hover 시 desc 확장)
   ============================================================ */

/* 옵션 2 — Scroll-driven fade-in animation (Intersection Observer + NoScript fallback)
   v15.54 — html.no-js fallback 추가 (JS 미실행 환경 영영구 영영구 영영구)
   v15.73 (2026-05-24 사용자 영구 push) — default visible 사실 (opacity:0 → opacity:1)
   사유: dacalc 안 timeline 사실 사이트 사용 본문 부재 사실 = 검증 부재 사실 + 시세 사이트 안 JS 실행 부재 사실 = 영구 hidden 결함 사실 차단 의무
   .is-visible class 사실 = JS 사후 add 사실 (보존 — 기존 사용 본문) */
.timeline-event {
    opacity: 1;
    transform: none;
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.timeline-event.is-visible {
    opacity: 1;
    transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
    .timeline-event {
        opacity: 1;
        transform: none;
        transition: none;
    }
}
/* NoScript / JS 미실행 fallback — 영구 hidden 차단 */
html.no-js .timeline-event,
.no-js .timeline-event {
    opacity: 1;
    transform: none;
}

/* 옵션 3 — Hover card preview (출처 미리보기 — Tier 1 출처 신뢰성) */
a.timeline-source {
    position: relative;
}
.timeline-source__preview {
    position: absolute;
    bottom: calc(100% + 8px);
    left: 0;
    padding: 10px 14px;
    background: #1f2937;
    color: #fff;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    width: max-content;
    max-width: 280px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s, visibility 0.2s;
    z-index: 100;
    pointer-events: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    text-decoration: none;
}
.timeline-source__preview::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 16px;
    border: 5px solid transparent;
    border-top-color: #1f2937;
}
a.timeline-source:hover .timeline-source__preview,
a.timeline-source:focus .timeline-source__preview {
    opacity: 1;
    visibility: visible;
}
/* v15.62 (사용자 mandate "모바일 preview 깨져 노출 — 영영구 영영구"):
   v15.54 영영구 모바일 인라인 노출은 a.timeline-source 영영구 inline-flex (v15.60) 영영구 wrap 깨짐
   정정: 모바일 영영구 hover preview 영영구 (KISS — 정보 영영구 영영구 영영구)
   a11y 정합: aria-label 영영구 영영구 → 스크린 리더 정합 영영구 */
@media (hover: none) {
    .timeline-source__preview {
        display: none;
    }
}

/* 옵션 4 — Sticky year headers (긴 timeline — group_by_year)
   v15.54 — top 값 CSS 변수화 (--color-sticky-top default 60px — 사이트별 override) */
:root {
    --color-sticky-top: 60px;
}
/* v15.63 (사용자 mandate "연도 배지 sticky 영영구 영영구"):
   position: sticky 영영구 — 일반 inline 배지 (스크롤 시 따라가지 않음)
   top / z-index / --color-sticky-top 변수 영영구 영영구 영영구 영영구 */
.module-timeline--grouped .timeline-year {
    margin: 10px 0 8px;
    padding: 6px 14px;
    background: var(--color-bg-subtle);
    border-radius: var(--color-radius-sm);
    font-size: 14px;
    font-weight: 700;
    color: var(--color-text-primary);
    width: fit-content;
    border: 1px solid var(--color-border);
}
.module-timeline--grouped .timeline-year:first-child {
    margin-top: 0;
}

/* v15.54 — 옵션 5 (Accordion / expandable) 폐기 (3 Agent 만장일치 권장):
   - 모바일 hover 부재 → desc 영구 truncate (사용자 정확 지적)
   - a11y WCAG 1.4.4 위반 (시각/청각 사용자 정보 불일치)
   - 2026 트렌드 역행 (Material 3 / Linear / Vercel 모두 hover-only deprecated)
   복원 시 click-toggle + aria-expanded 패턴 재설계 의무 */

/* Highlight badge (현재 / 예정) */
.module-timeline__badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-left: 8px;
    color: #fff;
    vertical-align: middle;
}
.module-timeline__badge--current {
    background: #059669;
}
.module-timeline__badge--upcoming {
    background: #f59e0b;
}

/* Semantic tag colors (marker background)
   v15.74 (2026-05-24 사용자 영구 push) — specificity 강화 사실
   사유: .module-timeline--horizontal .timeline-marker (0,2,0) > .timeline-marker--{tag} (0,1,0)
         → background override 부재 사실 = invisible marker 결함 사실
   정석 사실: .timeline-marker.timeline-marker--{tag} (0,2,0 specificity) = 동일 사실 + 마지막 정의 적용 사실 */
.timeline-marker.timeline-marker--milestone {
    background: #3b82f6;  /* 파랑 — 법 시행 / 정책 도입 */
}
.timeline-marker.timeline-marker--revision {
    background: #8b5cf6;  /* 보라 — 개정 / 연장 */
}
.timeline-marker.timeline-marker--warning {
    background: #f59e0b;  /* 주황 — 사건 / 피해 */
}
.timeline-marker.timeline-marker--event {
    background: #94a3b8;  /* 회색 — 일반 사건 (default) */
}

/* Mobile responsive */
@media (max-width: 640px) {
    .module-timeline--horizontal .timeline-events {
        flex-direction: column;
    }
    .module-timeline--horizontal .timeline-event {
        padding-top: 0;
        padding-left: 44px;
        text-align: left;
    }
    .module-timeline--horizontal .timeline-marker {
        top: 4px;
        left: 0;
        transform: none;
    }
    .module-timeline--horizontal .module-timeline__content {
        text-align: left;
    }
    .module-timeline--horizontal .timeline-event--highlight {
        padding: 12px 12px 12px 56px;
    }
    .module-timeline--compact .timeline-event {
        grid-template-columns: 100px 1fr;
        gap: 8px;
    }
}



/* ═══════════════════════════════════════════════════════════════════ */
/* v15.194 (2026-05-16) — comparison.php 모듈 (4세대 framework 신규)   */
/* 본질: 비교 시각 효과 (A vs B / dacalc vs 경쟁사)                     */
/* ═══════════════════════════════════════════════════════════════════ */
.module-comparison {
    margin: 32px 0;
}
.module-comparison .comparison-intro {
    margin: 8px 0 16px;
    color: var(--color-text-muted, #555);
    font-size: 16px;
}
/* [2026-06-05] 비교표는 표준 .module-table CSS 를 그대로 재사용한다.
   렌더러(comparison.php)가 <table class="module-table"> 를 출력하므로
   여기에는 comparison 고유 요소(컨테이너 margin · intro · verdict · cta)만 둔다. */
.comparison-verdict {
    margin: 16px 0;
    padding: 12px 16px;
    background: var(--color-bg-info, #e3f2fd);
    border-left: 4px solid var(--color-info, #1976d2);
    border-radius: 4px;
    font-size: 16px;
}
.module-comparison__cta {
    margin: 16px 0 0;
    text-align: center;
}
.module-comparison__cta__btn {
    /* 표준 module-cta--xl 사양 준용 + 전폭(사용자 확정 2026-07-04 — 비교 후 행동 버튼은
       최대 시인성·엄지 타겟. 모듈 레벨 통일 = 전 comparison CTA 동일 적용) */
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    padding: 18px 40px;
    font-size: 24px;
    font-weight: 700;
    min-height: 70px;
    background: var(--color-primary, #0066cc);
    color: #fff !important;
    text-decoration: none;
    border-radius: 6px;
    transition: background 0.2s ease;
}
.module-comparison__cta__btn:hover {
    background: var(--color-primary-hover, #0052a3);
}

/* sources.php 보강 — Updated date + pages 영역 (v15.194 — 4세대 framework) */
.module-sources__updated {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 8px;
    background: var(--color-bg-light, #f7f8fa);
    color: var(--color-text-muted, #666);
    font-size: 13px;
    border-radius: 3px;
}
.module-sources__pages {
    display: inline-block;
    margin-left: 6px;
    color: var(--color-text-muted, #888);
    font-size: 13px;
    font-style: italic;
}

/* 모바일 영역 (표는 표준 .module-table 모바일 처리에 위임) */
@media (max-width: 640px) {
    .module-comparison__cta__btn {
        display: block;
        text-align: center;
    }
}


/* ═══════════════════════════════════════════════════════════════════ */
/* v15.195 (2026-05-16) — Phase 2 확장 6 모듈 (4세대 framework 범용)   */
/* qr-code + download + pdf + player + tts + canvas                     */
/* ═══════════════════════════════════════════════════════════════════ */

/* ── module-qr-code ── */
.module-qr-code {
    margin: 24px 0;
}
.module-qr-code--left   { text-align: left; }
.module-qr-code--center { text-align: center; }
.module-qr-code--right  { text-align: right; }
.qr-code__title {
    margin: 0 0 12px;
    font-size: 20px;
    font-weight: 600;
}
.module-qr-code__img {
    display: inline-block;
    max-width: 100%;
    height: auto;
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 6px;
    padding: 8px;
    background: #fff;
}
.module-qr-code__caption {
    margin: 8px 0 0;
    font-size: 14px;
    color: var(--color-text-muted, #666);
}

/* ── module-download ── */
.module-download {
    margin: 32px 0;
}
.download__intro {
    margin: 8px 0 16px;
    color: var(--color-text-muted, #555);
}
.module-download--list .module-download__items {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.module-download--grid .module-download__items {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 12px;
}
.module-download__item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: var(--color-bg-light, #f7f8fa);
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 6px;
    color: var(--color-text, #222) !important;
    text-decoration: none !important;
    transition: background 0.15s ease, border-color 0.15s ease;
}
.module-download__item:hover {
    background: var(--color-bg-hover, #eef2f7);
    border-color: var(--color-primary, #0066cc);
}
.module-download__icon {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 4px;
    background: var(--color-bg-icon, #e0e7f0) center / 60% no-repeat;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 12px;
    color: var(--color-text-muted, #666);
}
.module-download__icon--pdf::before  { content: 'PDF'; }
.module-download__icon--mp3::before  { content: 'MP3'; }
.module-download__icon--mp4::before  { content: 'MP4'; }
.module-download__icon--jpg::before  { content: 'JPG'; }
.module-download__icon--png::before  { content: 'PNG'; }
.module-download__icon--csv::before  { content: 'CSV'; }
.module-download__icon--xlsx::before { content: 'XLS'; }
.module-download__icon--docx::before { content: 'DOC'; }
.module-download__icon--zip::before  { content: 'ZIP'; }
.module-download__icon--other::before { content: 'FILE'; }
.module-download__meta {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.module-download__name {
    font-weight: 600;
    word-break: break-word;
}
.module-download__size {
    font-size: 13px;
    color: var(--color-text-muted, #888);
}
.module-download__desc {
    font-size: 14px;
    color: var(--color-text-muted, #666);
}
.module-download__arrow {
    flex-shrink: 0;
    font-size: 18px;
    color: var(--color-primary, #0066cc);
}

/* ── module-pdf ── */
.module-pdf {
    margin: 32px 0;
}
.pdf__caption {
    margin: 8px 0 12px;
    color: var(--color-text-muted, #666);
}
.module-pdf__embed-wrap {
    width: 100%;
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 6px;
    overflow: hidden;
    background: #f5f5f5;
}
.module-pdf__embed {
    display: block;
    width: 100%;
    border: 0;
}
.module-pdf__actions {
    margin: 12px 0 0;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.module-pdf__download-link,
.module-pdf__open-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 8px 14px;
    background: var(--color-bg-light, #f7f8fa);
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 4px;
    color: var(--color-text, #222) !important;
    text-decoration: none !important;
    font-size: 14px;
    transition: background 0.15s ease;
}
.module-pdf__download-link:hover,
.module-pdf__open-link:hover {
    background: var(--color-bg-hover, #eef2f7);
}

/* ── module-player ── */
.module-player {
    margin: 24px 0;
}
.player__title {
    margin: 0 0 12px;
    font-size: 20px;
    font-weight: 600;
}
.module-player__media {
    width: 100%;
}
.module-player__audio {
    width: 100%;
    max-width: 600px;
}
.module-player__youtube-wrap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 6px;
    background: #000;
}
.module-player__youtube {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.module-player__video {
    width: 100%;
    max-width: 100%;
    border-radius: 6px;
    background: #000;
}
.module-player__caption {
    margin: 8px 0 0;
    font-size: 14px;
    color: var(--color-text-muted, #666);
}

/* ── module-tts (KoreanSheets 한정 — 인라인 ▶ button) ── */
.module-tts--inline {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    line-height: 1.4;
}
.module-tts--block {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 4px 0;
}
.module-tts__text {
    font-weight: 500;
}
.module-tts__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    padding: 0;
    background: var(--color-bg-icon, #e0e7f0);
    border: 1px solid var(--color-border, #c0d0e0);
    border-radius: 50%;
    color: var(--color-primary, #0066cc);
    cursor: pointer;
    font-size: 10px;
    line-height: 1;
    transition: background 0.15s ease, transform 0.1s ease;
}
.module-tts__btn:hover {
    background: var(--color-primary, #0066cc);
    color: #fff;
}
.module-tts__btn:active {
    transform: scale(0.92);
}

/* ── module-canvas (KoreanSheets 한정 — 한글 자모음 그리기) ── */
.module-canvas {
    margin: 24px 0;
}
.canvas__title {
    margin: 0 0 12px;
    font-size: 18px;
    font-weight: 600;
}
.module-canvas__wrap {
    position: relative;
    max-width: 100%;
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
}
.module-canvas__guide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.25;
    pointer-events: none;
    user-select: none;
}
.module-canvas__cv {
    position: relative;
    display: block;
    max-width: 100%;
    touch-action: none;
    cursor: crosshair;
    background: transparent;
}
.module-canvas__controls {
    margin: 8px 0 0;
    display: flex;
    gap: 8px;
}
.module-canvas__btn {
    padding: 6px 14px;
    background: var(--color-bg-light, #f7f8fa);
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 4px;
    color: var(--color-text, #222);
    cursor: pointer;
    font-size: 14px;
    transition: background 0.15s ease;
}
.module-canvas__btn:hover {
    background: var(--color-bg-hover, #eef2f7);
}
.module-canvas__caption {
    margin: 8px 0 0;
    font-size: 14px;
    color: var(--color-text-muted, #666);
}

/* 모바일 영역 (Phase 2 확장) */
@media (max-width: 640px) {
    .module-download--grid .module-download__items {
        grid-template-columns: 1fr;
    }
    .module-pdf__embed {
        min-height: 400px;
    }
    .module-pdf__actions {
        flex-direction: column;
    }
    .module-pdf__download-link,
    .module-pdf__open-link {
        justify-content: center;
    }
}

/* ═══════════════════════════════════════════════════════════════
   v15.80 (2026-05-25 사용자 push) — .module-title CSS 정의 추가
   사유: 4 모듈 (core-facts, sources, hub-nav, faq) 안 `<h3 class="module-title">` 사용
        CSS 정의 부재 = WordPress 기본 H3 적용 결함 = 사용자 라이브 검수 발견
   양식: timeline-block__title 정합 (20px·gradient·border-left·padding)
   ═══════════════════════════════════════════════════════════════ */
.module-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--color-text-primary);
    margin: 32px 0 20px;
    padding: 14px 18px;
    background: linear-gradient(135deg, color-mix(in srgb, var(--color-primary, #1a73e8) 8%, transparent), transparent 70%);
    border-left: 4px solid var(--color-primary, #1a73e8);
    border-radius: 8px;
    line-height: 1.3;
}
.module-title:first-child {
    margin-top: 0;
}

/*═══════════════════════════════════════════════════════════════
  ㉚ stat-card SSOT (2026-06-05 통합) — components.css에서 이동.
  그라데이션 배경 + shine + 떠오름 호버 보존. 파일 끝 배치 = modules.css 내
  다른 stat-card 규칙(__value 등)에 안 덮이도록(로드 순서 최후 = 기존 components 위치 재현).
═══════════════════════════════════════════════════════════════*/
.module-stat-card {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border-radius: 12px;
    padding: 24px;  /* v14.50 (2026-05-09, 사용자 mandate "padding 통일"): stat/result 일관 24px */
    text-align: center;
    box-shadow: 0 4px 20px rgba(79, 70, 229, 0.12);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    /* v14.47 (사용자 mandate "같은 행 카드 길이 맞춤"): grid stretch */
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* v14.49 (사용자 mandate ".module-related-card__icon 동일 사이즈"): 36px + 10px margin-bottom */
.module-stat-card__icon {
    font-size: 36px;
    line-height: 1;
    margin-bottom: 10px;
    text-align: center;
}

.module-stat-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 8px 30px rgba(79, 70, 229, 0.2);
}

.module-stat-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(79, 70, 229, 0.1), transparent);
    transition: all 0.8s ease;
}

.module-stat-card:hover::before {
    left: 100%;
}

a.module-stat-card:focus-visible {
    outline: 2px solid var(--color-primary, #1a73e8);
    outline-offset: -2px;
}

/* 사용자 영구 mandate (2026-05-27): card-grid 안 link 양식 underline 제거 + 색상 정합 */
a.module-stat-card, a.module-result-card, a.module-method-card,
.module-stat-card--link, .module-result-card--link, .module-method-card--link {
    text-decoration: none;
    color: inherit;
}
a.module-stat-card:hover, a.module-result-card:hover, a.module-method-card:hover,
.module-stat-card--link:hover, .module-result-card--link:hover, .module-method-card--link:hover {
    text-decoration: none;
    color: inherit;
}
.module-stat-card__title, .module-result-card__title, .module-method-card__title {
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 8px;
    color: #1a73e8;
}

.module-stat-card__number,
.module-stat-card__value {
    display: block;
    font-size: 2.5rem;
    font-weight: 900;
    margin-bottom: 8px;
    color: #4F46E5;
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.module-stat-card__label {
    font-size: 1rem;
    font-weight: 700;
    color: #6c757d;
    margin-bottom: 4px;
    display: block;
}

.module-stat-card__desc {
    font-size: 1rem;
    color: #4b5563;
    display: block;
}

/* Stat card color variants */
.module-stat-card--top {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border-top: 4px solid #4F46E5;
    box-shadow: 0 4px 20px rgba(79, 70, 229, 0.12);
}

.module-stat-card--top:hover {
    box-shadow: 0 8px 30px rgba(79, 70, 229, 0.3);
}

.module-stat-card--gold {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border-top: 3px solid #d97706;
}
.module-stat-card--silver {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    border-top: 3px solid #64748b;
}
/* CHANGE2MODE(2026-06-21): --gray = 보합/중립 카드(전엔 CSS 부재로 색 미적용·잠재버그). 보합색(.chg-flat #64748b)과 통일. */
.module-stat-card--gray {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    border-top: 3px solid #64748b;
}
.module-stat-card--red {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border-top: 3px solid #dc2626;
}
.module-stat-card--orange {
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
    border-top: 3px solid #ea580c;
}
.module-stat-card--blue {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-top: 3px solid #2563eb;
}
.module-stat-card--purple {
    background: linear-gradient(135deg, #f3e8ff 0%, #e9d5ff 100%);
    border-top: 3px solid #9333ea;
}
.module-stat-card--green {
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
    border-top: 3px solid #059669;
}

/* Stat card 숫자(__value)를 카드 색에 맞춰 — 복합 선택자(0,2,0)라 components.css 단일 규칙(0,1,0)을 이김 */
.module-stat-card--red    .module-stat-card__value { color: #dc2626; }
.module-stat-card--blue   .module-stat-card__value { color: #2563eb; }
.module-stat-card--gold   .module-stat-card__value { color: #d97706; }
.module-stat-card--green  .module-stat-card__value { color: #059669; }
.module-stat-card--orange .module-stat-card__value { color: #ea580c; }
.module-stat-card--silver .module-stat-card__value { color: #475569; }
.module-stat-card--gray   .module-stat-card__value { color: #475569; }   /* CHANGE2MODE(2026-06-21): 보합/중립 카드 값 색 */
.module-stat-card--purple .module-stat-card__value { color: #9333ea; }

/* 차트 호버 크로스헤어·툴팁 (진보적 향상 — JS off여도 SVG·데이터표 정상) */
.module-chart { position: relative; }
.module-chart__svg[data-points] { cursor: crosshair; }
.module-chart__crosshair { stroke: #94a3b8; stroke-width: 1; stroke-dasharray: 3 3; pointer-events: none; }
.module-chart__hoverdot { fill: #1d4ed8; stroke: #fff; stroke-width: 1.5; pointer-events: none; }
.module-chart__tip { position: absolute; top: 32px; transform: translateX(-50%); display: none; flex-direction: column; gap: 2px; min-width: 84px; background: rgba(17, 24, 39, .92); color: #fff; font-size: 13px; line-height: 1.5; padding: 7px 10px; border-radius: 7px; text-align: left; pointer-events: none; white-space: nowrap; z-index: 6; }
.module-chart__tip:not([hidden]) { display: flex; }   /* hidden 속성으로 토글 — 멀티라인 세로 스택 */
.module-chart__tip strong { color: #fbbf24; margin-bottom: 1px; }
.module-chart__tip-row { font-variant-numeric: tabular-nums; opacity: .95; }

/* R36: chart 기법 6종 — 밴드 호버·포인트 라벨·기준선·구간 음영 */
.module-chart__band { cursor: crosshair; transition: fill .1s; }
.module-chart__band:hover { fill: rgba(99,102,241,.07); }
.module-chart__plabel { font-size: 10px; fill: #475569; }
.module-chart__baseline { stroke: #cbd5e1; stroke-width: 1; stroke-dasharray: 5,4; opacity: .8; }

/* Stat card shine effect */
.module-stat-card.shine::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
    animation: stat-shine 3s ease-in-out infinite;
}
@keyframes stat-shine {
    0% { left: -100%; }
    50%, 100% { left: 150%; }
}

@media (max-width: 480px) {
    .module-stat-card__number {
        font-size: 2rem;
    }
}

/*═══════════════════════════════════════════════════════════════
  ㉘ cta SSOT (2026-06-05 통합) — components.css에서 이동.
  cta.php 모듈 + highlight.php가 품는 cta 모두 이 한 곳이 단일 소스.
  파일 끝 배치 = 로드 최후(기존 components 위치 재현) → 현재 모습 그대로 유지.
  highlight 자체 스타일(설명·목록·제목)은 components.css에 유지(별개 모듈).
═══════════════════════════════════════════════════════════════*/

/* ---- CTA Arrow — JS(wrapCtaArrows)가 .cta-arrow span 주입 ---- */
.cta-arrow {
    display: inline-block;
    margin-left: 0.4em;
    font-weight: 700;
    animation: cta-arrow-bob 1.4s ease-in-out infinite;
    will-change: transform;
    line-height: 1;
}
@keyframes cta-arrow-bob {
    0%, 100% { transform: translateX(0); }
    50%      { transform: translateX(6px); }
}
/* R51(2026-08-20 W3-CSS) — 「더 보기」 줄에도 같은 호버 반응을 준다.
   .holo-thumb-popup-thumb__more 는 R51 수리로 wrapCtaArrows 의 선택자에 들어와 .cta-arrow 를
   받게 됐는데(assets/js), 호버 가속 규칙에는 이름이 없어 «화살표는 있으나 눌러도 반응이
   없는» 절반짜리가 됐다. 위 세 줄과 «같은 문법·같은 값»을 그대로 잇는다(새 값 0).
   🌐 타 사이트 회귀 검토 = 없음 — 이 시트는 전 사이트 공용이지만 이름을 하나 «더할» 뿐이고,
      .holo-thumb-popup-thumb__more 는 tcggrail 전용 이름이라(정의도 item-modules.css:10576
      한 곳뿐) 다른 사이트 마크업에는 존재하지 않는다 → 그 사이트들에서 이 줄은 아무것도 안 집는다.
   ♿ 움직임 줄임 설정에서는 아래 :9637 블록의 `animation:none !important` 가 그대로 이긴다. */
.module-cta[href]:hover .cta-arrow,
.module-cta--back a:hover .cta-arrow,
.module-content .module-cta--back a:hover .cta-arrow,
.holo-thumb-popup-thumb__more:hover .cta-arrow {
    animation-duration: 0.9s;
    animation-name: cta-arrow-bob-hover;
}
@keyframes cta-arrow-bob-hover {
    0%, 100% { transform: translateX(0); }
    50%      { transform: translateX(10px); }
}
@media (prefers-reduced-motion: reduce) {
    .cta-arrow {
        animation: none !important;
    }
}

/* ---- CTA Button System ---- */
.module-cta {
    position: relative;
    overflow: hidden;
    display: inline-block;
    color: white;
    text-decoration: none;
    padding: 14px 30px;
    border-radius: 8px;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
    transition: all 0.3s ease;
    cursor: pointer;
    /* 사용자 영구 mandate (2026-05-27): cta-button 사전·사후 여백 의무 */
    margin-top: 28px;
    margin-bottom: 28px;
}

.module-cta--large {
    padding: 18px 32px;
    font-size: 20px;
    font-weight: 700;
    min-height: 60px;
}

.module-cta--xl {
    padding: 18px 40px;
    font-size: 24px;
    font-weight: 700;
    min-height: 70px;
}

.module-cta--hero {
    padding: 18px 48px;
    font-size: 28px;
    font-weight: 800;
    min-height: 80px;
    border-radius: 16px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.module-cta--hero:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.2);
}

.module-cta + .module-cta,
.module-cta--large + .module-cta--large,
.module-cta--xl + .module-cta--xl,
.module-cta--hero + .module-cta--hero {
    margin-top: 12px;
}

/* Shine sweep on hover */
.module-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: -120%;
    width: 80%;
    height: 100%;
    background: linear-gradient(115deg, transparent 0%, rgba(30, 64, 175, 0.15) 50%, transparent 100%);
    transform: skewX(-20deg);
    transition: left 0.7s ease;
    pointer-events: none;
    z-index: 1;
}
.module-cta:hover::before { left: 120%; }
.module-cta > * { position: relative; z-index: 2; }

/* 기본 fallback hover (color variant 없을 때) */
.module-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
}

@media (max-width: 768px) {
    .module-cta,
    .module-cta--large,
    .module-cta--xl,
    .module-cta--hero {
        width: 100%;
    }

    .module-cta + .module-cta,
    .module-cta--large + .module-cta--large,
    .module-cta--xl + .module-cta--xl,
    .module-cta--hero + .module-cta--hero {
        margin-top: 12px;
    }
}

/* ---- CTA Color Variants (일반 영역 = 그라데이션 배경 + 글자 화이트) ---- */
.module-cta--red {
    background: linear-gradient(135deg, #ef4444, #dc2626) !important;
    color: #fff !important;
    font-weight: 700 !important;
}
.module-cta--red:hover {
    background: linear-gradient(135deg, #dc2626, #b91c1c) !important;
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(220, 38, 38, 0.45);
}

.module-cta--blue {
    background: linear-gradient(135deg, #3b82f6, #1e40af) !important;
    color: #fff !important;
    font-weight: 700 !important;
}
.module-cta--blue:hover {
    background: linear-gradient(135deg, #2563eb, #1e3a8a) !important;
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(30, 64, 175, 0.45);
}

.module-cta--green {
    background: linear-gradient(135deg, #1e7e34, #155d27) !important;
    color: #fff !important;
    font-weight: 700 !important;
}
.module-cta--green:hover {
    background: linear-gradient(135deg, #155d27, #14532d) !important;
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(22, 101, 52, 0.45);
}

.module-cta--purple {
    background: linear-gradient(135deg, #667eea, #764ba2) !important;
    color: #fff !important;
    font-weight: 700 !important;
}
.module-cta--purple:hover {
    background: linear-gradient(135deg, #5b6fd6, #6a4290) !important;
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(124, 58, 237, 0.45);
}

/* ---- Highlight 블록 안 CTA = 배경 화이트 + 글자 색상 (override) ---- */
.module-highlight .module-cta--red {
    background: #fff !important;
    color: #dc2626 !important;
    border: 2px solid #dc2626 !important;
}
.module-highlight .module-cta--red:hover {
    background: #fff !important;
    color: #dc2626 !important;
    box-shadow:
        0 0 0 4px rgba(255, 255, 255, 0.45),
        0 10px 28px rgba(220, 38, 38, 0.32);
}

.module-highlight .module-cta--blue {
    background: #fff !important;
    color: #1e40af !important;
    border: 2px solid #1e40af !important;
}
.module-highlight .module-cta--blue:hover {
    background: #fff !important;
    color: #1e40af !important;
    box-shadow:
        0 0 0 4px rgba(255, 255, 255, 0.45),
        0 10px 28px rgba(30, 64, 175, 0.32);
}

.module-highlight .module-cta--green {
    background: #fff !important;
    color: #166534 !important;
    border: 2px solid #166534 !important;
}
.module-highlight .module-cta--green:hover {
    background: #fff !important;
    color: #166534 !important;
    box-shadow:
        0 0 0 4px rgba(255, 255, 255, 0.45),
        0 10px 28px rgba(22, 101, 52, 0.32);
}

.module-highlight .module-cta--purple {
    background: #fff !important;
    color: #7c3aed !important;
    border: 2px solid #7c3aed !important;
}
.module-highlight .module-cta--purple:hover {
    background: #fff !important;
    color: #7c3aed !important;
    box-shadow:
        0 0 0 4px rgba(255, 255, 255, 0.45),
        0 10px 28px rgba(124, 58, 237, 0.32);
}

/* ---- CTA 버튼 underline 차단 ---- */
a.module-cta,
a.module-cta:hover,
.module-content a.module-cta,
.module-content a.module-cta:hover,
.module-highlight a.module-cta,
.module-highlight a.module-cta:hover,
.module-content .module-highlight a.module-cta:hover {
    text-decoration: none !important;
}

/* ---- Highlight 블록 CTA 버튼 override (padding 제거 — --large/--xl/--hero 승리) ---- */
.module-highlight .module-cta {
    display: block;
    width: 100%;
    background: #fff;
    border-radius: 8px;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    box-sizing: border-box;
    margin-top: 12px;
}

.module-highlight .module-cta:hover {
    background: white !important;
    opacity: 1 !important;
    transform: translateY(-2px);
    box-shadow:
        0 0 0 4px rgba(255, 255, 255, 0.55),
        0 12px 30px rgba(0, 0, 0, 0.35);
}

/* ---- CTA 글자색: highlight 그라데이션 배경별 ---- */
.module-highlight.bg-gradient-blue .module-cta { color: #2563eb !important; }
.module-highlight.bg-gradient-green .module-cta { color: #166534 !important; }
.module-highlight.bg-gradient-orange .module-cta { color: #92400e !important; }
.module-highlight.bg-gradient-purple .module-cta { color: #5b21b6 !important; }
.module-highlight.bg-gradient-red .module-cta { color: #991b1b !important; }
.module-highlight.bg-gradient-teal .module-cta { color: #0d9488 !important; }
.module-highlight.bg-gradient-gold .module-cta { color: #92400e !important; }
.module-highlight.bg-gradient-pink .module-cta { color: #db2777 !important; }
.module-highlight.bg-gradient-indigo .module-cta { color: #4338ca !important; }
.module-highlight.bg-gradient-violet .module-cta { color: #6d28d9 !important; }
.module-highlight.bg-gradient-cyan .module-cta { color: #0891b2 !important; }
.module-highlight.bg-gradient-brown .module-cta { color: #8b4513 !important; }

.module-highlight.bg-gradient-blue .module-cta:hover { color: #1d4ed8 !important; }
.module-highlight.bg-gradient-green .module-cta:hover { color: #059669 !important; }
.module-highlight.bg-gradient-orange .module-cta:hover { color: #78350f !important; }
.module-highlight.bg-gradient-purple .module-cta:hover { color: #4c1d95 !important; }
.module-highlight.bg-gradient-red .module-cta:hover { color: #dc2626 !important; }
.module-highlight.bg-gradient-teal .module-cta:hover { color: #0f766e !important; }
.module-highlight.bg-gradient-gold .module-cta:hover { color: #78350f !important; }
.module-highlight.bg-gradient-pink .module-cta:hover { color: #be185d !important; }
.module-highlight.bg-gradient-indigo .module-cta:hover { color: #3730a3 !important; }
.module-highlight.bg-gradient-violet .module-cta:hover { color: #5b21b6 !important; }
.module-highlight.bg-gradient-cyan .module-cta:hover { color: #0e7490 !important; }
.module-highlight.bg-gradient-brown .module-cta:hover { color: #6b3410 !important; }

/*═══════════════════════════════════════════════════════════════
  ⑤ highlight 자체 스타일 SSOT (2026-06-05 통합) — components.css에서 이동.
  highlight.php 출력: .module-highlight.bg-gradient-{theme} + __title + <p> + 내부 cta.
  배경은 .bg-gradient-* 유틸 클래스에서 옴. 파일 끝 배치 = 로드 최후(현재 모습 유지).
  ※ 앞쪽(288행대)·badge/savings subsystem의 .module-highlight 정의는 이 블록이 덮어
    현재 모습 유지. modules 내부 다중 base 정리는 별도 작업(subsystem 손상 위험).
═══════════════════════════════════════════════════════════════*/
.module-highlight {
    position: relative;
    color: white;
    border-radius: 12px;
    padding: 1.5rem 2rem 2rem;
    margin: 2rem 0;
    text-align: center;
    overflow: hidden;
    border-left: none !important;
}

.module-highlight .module-highlight__title,
.module-highlight p.module-highlight__title,
p.module-highlight__title {
    font-size: 1.5rem !important;
    font-weight: bold !important;
    margin: 0.5rem 0 1rem 0 !important;
    color: white !important;
    line-height: 1.3 !important;
}

.module-highlight__text {
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 1.5rem;
    color: rgba(255, 255, 255, 0.9) !important;
}

.module-highlight p,
.module-content .module-highlight p,
.entry-content .module-highlight p {
    color: white !important;
    font-size: 1rem !important;
    line-height: 1.6 !important;
    margin: 0 0 1.5em !important;
}

.module-highlight__description {
    color: white !important;
    font-size: 1.05em;
    margin-bottom: 12px;
    font-weight: 600;
}

.module-highlight ul,
.entry-content .module-highlight ul,
body .module-highlight ul {
    text-align: left !important;
    margin: 24px 0 0 0 !important;
    padding-left: 0 !important;
    list-style-type: none !important;
    list-style: none !important;
}

.module-highlight ul li,
.entry-content .module-highlight ul li,
body .module-highlight ul li {
    list-style: none !important;
    list-style-type: none !important;
}

.module-highlight li {
    margin-bottom: 8px;
    color: inherit;
}

.module-highlight li:last-child {
    margin-bottom: 0;
}

.module-highlight strong + ul,
.module-highlight p + ul,
.entry-content .module-highlight strong + ul,
.entry-content .module-highlight p + ul {
    margin-top: 16px !important;
}

.module-highlight > strong,
.entry-content .module-highlight > strong {
    display: block;
    margin-bottom: 12px;
}

.module-highlight[class*="bg-gradient-"] a {
    color: #fff !important;
}
.module-highlight[class*="bg-gradient-"] a:hover {
    color: #fff !important;
    opacity: 0.9;
}

@media (max-width: 768px) {
    .module-highlight {
        padding: 1.5rem;
        margin: 1.5rem 0;
    }

    .module-highlight p.module-highlight__title,
    p.module-highlight__title {
        font-size: 1.25rem !important;
    }
}

/* dacalc citation-passage 반응형 (2026-06-07 — 위 .module-citation-passage 섹션 연관) */
@media (max-width: 600px) {
    .module-citation-passage__item { padding: 16px 18px; }
}

/* citation-passage 출처 링크 (공식 1차 출처 연결) */
.module-citation-passage__source a {
    color: #a16207;
    text-decoration: none;
    border-bottom: 1px dotted #a16207;
}
.module-citation-passage__source a:hover {
    border-bottom-style: solid;
}

/* region-select — 지역 순차 드롭다운 (시도→시군구, 정적 URL 이동) · 전 지역 아이템 공용 (2026-06-16) */
.module-region-select {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 16px 18px;
    margin: 20px 0;
    background: linear-gradient(0deg, #eff6ff, #f5faff);   /* 옅은 파랑 틴트 — 회색 대비 눈에 띔 */
    border: 2px solid var(--color-primary, #2563eb);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.10);
}
.module-region-select__label {
    flex: 1 0 100%;            /* B 스택 — 라벨을 항상 자체 줄(컨트롤 그룹 제목), 드롭다운은 아래 줄 */
    font-weight: 800;
    color: var(--color-primary, #1d4ed8);
    margin: 0 0 2px;
    font-size: 1.02rem;
}
.module-region-select__label::before {
    content: "📍 ";
}
.module-region-select select {
    flex: 1 1 160px;
    min-width: 140px;
    padding: 10px 40px 10px 12px;   /* 우측 여백 = 커스텀 화살표 자리(화살표를 우측 끝에서 안쪽으로) */
    font-size: 1rem;
    color: var(--color-text, #1e293b);
    background-color: #fff;
    /* 커스텀 펼침 화살표(우측 끝이 아니라 14px 안쪽 배치) */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%2364748b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 12px 8px;
    border: 1px solid var(--color-border, #cbd5e1);
    border-radius: 8px;
    cursor: pointer;
}
.module-region-select select:focus {
    outline: 2px solid var(--color-primary, #2563eb);
    outline-offset: 1px;
}
@media (max-width: 600px) {
    .module-region-select { flex-direction: column; align-items: stretch; }
    .module-region-select select { flex: 1 1 auto; width: 100%; }
}


/* ==========================================================================
   MODOOCARD-PORT (모두의카드 발 범용 모듈 CSS 이식 · 2026-07-03 · 순수 append)
   포함: stat/result/method __go · card-product-grid(+featured 리본) · case-compare
   (base+tone+method-go/linked) · hero(+cta2) · bento(+__stats) · card-spotlight ·
   core-issuer-ico(+--txt) · module-table__ico-cell(+td:has 좌정렬) · notice 배너
   (--notice·imminent·CTA 전폭) · 흰 버튼 hover 색 고정 · md-top-posts 컴팩트.
   기존 셀렉터와 충돌 0(census 확인). 소스: modoocard modules.css L9301-9315 + L9904-10492.
   ========================================================================== */
/* 링크 카드 목적지 어포던스(사용자 실측 피드백 2026-07-03 "링크는 어떤 의도인지 매칭이 안돼")
   — 렌더러(_render_card_grid)가 link 존재 시 __go 라인 자동 출력·case-compare method-go와 동일 계열 */
.module-stat-card__go, .module-result-card__go, .module-method-card__go {
    margin-top: 8px; text-align: right;
    font-size: 12.5px; font-weight: 700; color: var(--color-primary-dark);
}
.module-stat-card__go::after, .module-result-card__go::after, .module-method-card__go::after {
    content: ' →'; display: inline-block; transition: transform .18s ease;
}
.module-stat-card--link:hover .module-stat-card__go::after,
.module-result-card--link:hover .module-result-card__go::after,
.module-method-card--link:hover .module-method-card__go::after { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) {
    .module-stat-card__go::after, .module-result-card__go::after, .module-method-card__go::after { transition: none; }
}


/* ==========================================================================
   CARD-PRODUCT-GRID (카드 상품 그리드 — korea-pass.kr 초월형·2026-07-02)
   필터 = CSS-only(라디오+형제 선택자·JS 0) · 이미지 lazy · 참고1.jpg 벤치마크
   ========================================================================== */
.module-card-product-grid { margin: 24px 0 32px; }
.module-card-product-grid__radio { position: absolute; opacity: 0; pointer-events: none; }
.module-card-product-grid__filters { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 20px; }
.module-card-product-grid__chip {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 10px 18px; border: 1.5px solid var(--color-border);
  border-radius: 999px; background: #fff; cursor: pointer;
  font-size: 15px; font-weight: 600; color: var(--color-text-secondary);
  transition: all .15s ease; user-select: none;
}
.module-card-product-grid__chip:hover { border-color: var(--color-primary); color: var(--color-primary); }
.module-card-product-grid__chip-n { font-size: 12.5px; font-weight: 700; color: var(--color-text-muted); background: var(--color-border-light); border-radius: 999px; padding: 1px 8px; }
/* 칩 활성(checked) 상태 */
.module-card-product-grid__radio--all:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--all,
.module-card-product-grid__radio--credit:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--credit,
.module-card-product-grid__radio--check:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--check,
.module-card-product-grid__radio--prepaid:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--prepaid,
.module-card-product-grid__radio--mobile:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--mobile {
  background: var(--color-primary); border-color: var(--color-primary); color: #fff;
}
.module-card-product-grid__radio--all:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--all .module-card-product-grid__chip-n,
.module-card-product-grid__radio--credit:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--credit .module-card-product-grid__chip-n,
.module-card-product-grid__radio--check:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--check .module-card-product-grid__chip-n,
.module-card-product-grid__radio--prepaid:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--prepaid .module-card-product-grid__chip-n,
.module-card-product-grid__radio--mobile:checked ~ .module-card-product-grid__filters .module-card-product-grid__chip--mobile .module-card-product-grid__chip-n {
  background: rgba(255,255,255,.25); color: #fff;
}
/* 유형 필터링(선택 유형 외 숨김) */
.module-card-product-grid__radio--credit:checked ~ .module-card-product-grid__grid .module-card-product-grid__item:not(.module-card-product-grid__item--credit),
.module-card-product-grid__radio--check:checked ~ .module-card-product-grid__grid .module-card-product-grid__item:not(.module-card-product-grid__item--check),
.module-card-product-grid__radio--prepaid:checked ~ .module-card-product-grid__grid .module-card-product-grid__item:not(.module-card-product-grid__item--prepaid),
.module-card-product-grid__radio--mobile:checked ~ .module-card-product-grid__grid .module-card-product-grid__item:not(.module-card-product-grid__item--mobile) { display: none; }

/* 인피드 광고 행(카드 every 장마다 — card-product-grid.php ads_every와 세트) */
.module-card-product-grid__ad-row { grid-column: 1 / -1; list-style: none; margin: 0; min-width: 0; }
/* 유형 필터 활성 시 인피드 전부 숨김 — 배수 위치는 전체 61장 기준이라 필터(4~29장)에선
   카드가 숨고 광고 행만 연속으로 몰림 → 전체 보기에서만 노출(CSS-only·JS 0) */
.module-card-product-grid__radio--credit:checked ~ .module-card-product-grid__grid .module-card-product-grid__ad-row,
.module-card-product-grid__radio--check:checked ~ .module-card-product-grid__grid .module-card-product-grid__ad-row,
.module-card-product-grid__radio--prepaid:checked ~ .module-card-product-grid__grid .module-card-product-grid__ad-row,
.module-card-product-grid__radio--mobile:checked ~ .module-card-product-grid__grid .module-card-product-grid__ad-row { display: none; }

.module-card-product-grid__grid {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px;
}
.module-card-product-grid__item {
  display: flex; flex-direction: column;
  border: 1.5px solid var(--color-border); border-radius: var(--color-radius-lg);
  background: #fff; box-shadow: var(--color-shadow-sm); overflow: hidden;
  transition: box-shadow .18s ease, transform .18s ease;
}
.module-card-product-grid__item:hover { box-shadow: var(--color-shadow-md); transform: translateY(-2px); }
.module-card-product-grid__head { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 18px 18px 0; }
.module-card-product-grid__badge {
  display: inline-block; padding: 4px 12px; border-radius: 999px;
  font-size: 12.5px; font-weight: 700; letter-spacing: -.2px;
}
.module-card-product-grid__badge--credit  { background: var(--color-primary-light); color: var(--color-primary-dark); }
.module-card-product-grid__badge--check   { background: #fdeef3; color: #c2185b; }
.module-card-product-grid__badge--prepaid { background: #e6f6ee; color: #0f7a4d; }
.module-card-product-grid__badge--mobile  { background: #f1e9fd; color: #6d28d9; }
.module-card-product-grid__name { margin: 0; font-size: 18px; font-weight: 800; color: var(--color-text-primary); line-height: 1.35; }
.module-card-product-grid__body { display: flex; gap: 16px; padding: 14px 18px 0; align-items: flex-start; }
.module-card-product-grid__img {
  /* 가로/세로 혼재 카드 이미지 시각 통일: 고정 박스 + 비율 유지(contain) — 2026-07-02 */
  flex: 0 0 auto; width: 110px; height: 150px; object-fit: contain; border-radius: 8px;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.18));
}
.module-card-product-grid__benefits { min-width: 0; }
.module-card-product-grid__benefits-title { margin: 0 0 6px; font-size: 14px; font-weight: 700; color: var(--color-text-primary); }
.module-card-product-grid__benefits-list { margin: 0; padding: 0; list-style: none; }
.module-card-product-grid__benefits-list li {
  position: relative; padding-left: 12px; margin: 0 0 4px;
  font-size: 14.5px; color: var(--color-text-body); line-height: 1.5;
}
.module-card-product-grid__benefits-list li::before { content: ''; position: absolute; left: 0; top: .62em; width: 4px; height: 4px; border-radius: 50%; background: var(--color-primary); }
.module-card-product-grid__hook {
  margin: 12px 18px 0; padding: 10px 14px; border-radius: var(--color-radius-sm);
  background: color-mix(in srgb, var(--color-primary) 6%, #fff);
  border-left: 3px solid var(--color-primary);
  font-size: 14px; font-weight: 600; color: var(--color-text-primary); line-height: 1.5;
}
/* CTA = 기본이 채움형(파랑 배경·흰 글자·눈에 띄게 — 사용자 확정 2026-07-02) */
.module-card-product-grid__cta {
  display: block; margin: 14px 18px 0; padding: 12px 16px;
  border: 1.5px solid var(--color-primary); border-radius: 999px;
  text-align: center; font-size: 15px; font-weight: 700;
  background: var(--color-primary); color: #fff;
  box-shadow: 0 2px 8px color-mix(in srgb, var(--color-primary) 35%, transparent);
  text-decoration: none; transition: all .15s ease;
}
.module-card-product-grid__cta:hover {
  background: var(--color-primary-dark); border-color: var(--color-primary-dark); color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 45%, transparent);
}
.module-card-product-grid__conds {
  display: flex; gap: 0; margin: 16px 0 0; padding: 14px 18px;
  background: var(--color-bg-subtle); border-top: 1px solid var(--color-border-light);
}
.module-card-product-grid__cond { flex: 1 1 0; min-width: 0; padding-right: 12px; }
.module-card-product-grid__cond dt { font-size: 12.5px; font-weight: 700; color: var(--color-text-muted); margin: 0 0 4px; }
.module-card-product-grid__cond dd { margin: 0; font-size: 13.5px; font-weight: 600; color: var(--color-text-primary); line-height: 1.5; word-break: keep-all; }
.module-card-product-grid__fee {
  display: inline-block; padding: 1px 7px; margin-right: 4px; border-radius: 4px;
  font-size: 11px; font-weight: 700; vertical-align: 1px;
}
.module-card-product-grid__fee--local  { background: #fde8e8; color: #c81e1e; }
.module-card-product-grid__fee--global { background: var(--color-primary-light); color: var(--color-primary-dark); }
@media (max-width: 480px) {
  .module-card-product-grid__grid { grid-template-columns: 1fr; }
  .module-card-product-grid__img { width: 92px; }
  .module-card-product-grid__chip { padding: 9px 14px; font-size: 14px; }
}

/* ==========================================================================
   CASE-COMPARE (사례별 방식 비교 카드 — 국토부 공식 사례 원형·2026-07-02)
   ========================================================================== */
.module-case-compare { margin: 24px 0 32px; }
.module-case-compare__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
.module-case-compare__card {
  border: 1.5px solid var(--color-border); border-radius: var(--color-radius-lg);
  background: #fff; box-shadow: var(--color-shadow-sm); padding: 20px;
}
.module-case-compare__who { display: flex; align-items: center; gap: 12px; margin: 0 0 4px; }
.module-case-compare__avatar {
  flex: 0 0 auto; width: 42px; height: 42px; border-radius: 50%;
  background: var(--color-primary-light); display: inline-flex; align-items: center; justify-content: center;
  font-size: 20px;
}
.module-case-compare__who-name { margin: 0; font-size: 16px; font-weight: 800; color: var(--color-text-primary); }
.module-case-compare__who-sub { margin: 2px 0 0; font-size: 13.5px; color: var(--color-text-muted); }
.module-case-compare__spend {
  margin: 12px 0 14px; padding: 8px 12px; border-radius: var(--color-radius-sm);
  background: var(--color-bg-subtle); font-size: 14px; font-weight: 700; color: var(--color-text-body);
  display: inline-block;
}
.module-case-compare__methods { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.module-case-compare__method {
  border: 1.5px solid var(--color-border-light); border-radius: var(--color-radius-md);
  padding: 12px 14px; background: #fff;
}
.module-case-compare__method--win {
  border-color: var(--color-primary);
  background: color-mix(in srgb, var(--color-primary) 5%, #fff);
  box-shadow: var(--color-shadow-focus);
}
.module-case-compare__method-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.module-case-compare__method-label { font-size: 14px; font-weight: 700; color: var(--color-text-secondary); }
.module-case-compare__method--win .module-case-compare__method-label { color: var(--color-primary-dark); }
.module-case-compare__win-badge {
  padding: 2px 10px; border-radius: 999px; background: var(--color-primary); color: #fff;
  font-size: 11.5px; font-weight: 700; letter-spacing: -.2px; white-space: nowrap;
}
.module-case-compare__method-bottom { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-top: 6px; }
.module-case-compare__formula { font-size: 13px; color: var(--color-text-muted); flex: 1 1 auto; min-width: 0; }
.module-case-compare__amount { font-size: 20px; font-weight: 800; color: var(--color-text-primary); font-variant-numeric: tabular-nums; white-space: nowrap; flex-shrink: 0; }
.module-case-compare__method--win .module-case-compare__amount { color: var(--color-primary-dark); font-size: 22px; }
.module-case-compare__note { margin: 14px 0 0; font-size: 13.5px; color: var(--color-text-secondary); line-height: 1.6; }
@media (max-width: 480px) { .module-case-compare__grid { grid-template-columns: 1fr; } }

/* case-compare 방식 행 내부 링크 — 클릭 어포던스 → 관련 페이지 학습 순환 (범용) */
.module-case-compare__method-link { display: block; color: inherit; text-decoration: none; }
.module-case-compare__method-go {
  display: block; margin-top: 8px; text-align: right;
  font-size: 12.5px; font-weight: 700; color: var(--color-primary-dark);
}
.module-case-compare__method-go::after {
  content: ' →'; display: inline-block; transition: transform .18s ease;
}
.module-case-compare__method--linked:hover .module-case-compare__method-go::after { transform: translateX(4px); }
.module-case-compare__method--linked {
  cursor: pointer;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background-color .18s ease;
}
/* 링크 행은 평상시에도 테두리로 부각(사용자 실측 피드백 2026-07-03 "테두리선이 없어서 부각이 안 돼")
   — win 행(primary 실선)보다 한 단계 아래 톤·비링크 행(연회색)보다 뚜렷하게 */
.module-case-compare__method--linked:not(.module-case-compare__method--win) {
  border-color: color-mix(in srgb, var(--color-primary) 45%, var(--color-border));
}
.module-case-compare__method--linked:hover, .module-case-compare__method--linked:focus-within {
  border-color: var(--color-primary-dark);
  background: color-mix(in srgb, var(--color-primary) 12%, #fff);
  box-shadow: 0 8px 18px color-mix(in srgb, var(--color-primary) 28%, transparent);
  transform: translateY(-3px);
}
.module-case-compare__method--linked:hover .module-case-compare__method-label {
  color: var(--color-primary-dark); text-decoration: underline;
}
@media (prefers-reduced-motion: reduce) {
  .module-case-compare__method--linked, .module-case-compare__method-go::after { transition: none; }
  .module-case-compare__method--linked:hover { transform: none; }
}

/* case-compare 카드 톤 — 이득(best)/손해(worst) 대비 강조 (범용) */
.module-case-compare__card { position: relative; }
.module-case-compare__card--best {
  border: 2px solid var(--color-primary);
  background: color-mix(in srgb, var(--color-primary) 6%, #fff);
  box-shadow: 0 4px 14px color-mix(in srgb, var(--color-primary) 22%, transparent);
}
.module-case-compare__card--worst {
  border: 2px solid #fca5a5;
  background: color-mix(in srgb, #ef4444 4%, #fff);
}
.module-case-compare__card--worst .module-case-compare__amount { color: #dc2626; }
/* worst 카드 내부 방식 행 = 빨강 테두리(이득 카드의 파랑 win 행과 대칭) + 빨강 호버 */
.module-case-compare__card--worst .module-case-compare__method {
  border-color: #f87171;
  background: color-mix(in srgb, #ef4444 6%, #fff);
}
.module-case-compare__card--worst .module-case-compare__method-label { color: #b91c1c; }
.module-case-compare__card--worst .module-case-compare__method-go { color: #b91c1c; }
.module-case-compare__card--worst .module-case-compare__method--linked:hover,
.module-case-compare__card--worst .module-case-compare__method--linked:focus-within {
  border-color: #dc2626;
  background: color-mix(in srgb, #ef4444 12%, #fff);
  box-shadow: 0 8px 18px color-mix(in srgb, #ef4444 28%, transparent);
}
.module-case-compare__card--worst .module-case-compare__method--linked:hover .module-case-compare__method-label { color: #991b1b; }
.module-case-compare__tone-ribbon {
  position: absolute; top: -12px; right: 14px; padding: 3px 12px; border-radius: 999px;
  font-size: 12px; font-weight: 800; letter-spacing: -.2px; white-space: nowrap; color: #fff;
  box-shadow: var(--color-shadow-sm);
}
.module-case-compare__tone-ribbon--best  { background: var(--color-primary); }
.module-case-compare__tone-ribbon--worst { background: #dc2626; }

/* card-product-grid featured — 혜택 집중 카드 강조 배경 (범용) */
.module-card-product-grid__item--featured {
  position: relative;
  /* 리본 걸침(-12px) 복원용 — 기본 __item의 overflow:hidden이 리본 윗부분을 잘라서(라이브 실측),
     리본이 붙는 featured만 해제. 내부 자식은 전부 여백 보유라 모서리 클리핑 불요(사용자 확정 2026-07-03
     "테두리 걸침이 원 의도" — case-compare tone-ribbon과 동일 디자인 언어). */
  overflow: visible;
  border: 2px solid var(--color-primary);
  background: color-mix(in srgb, var(--color-primary) 5%, #fff);
  box-shadow: 0 4px 14px color-mix(in srgb, var(--color-primary) 22%, transparent);
}
/* overflow 해제로 하단 전폭 바(__conds)의 각진 모서리가 카드 라운드 테두리를 덮음(라이브 실측 2026-07-03)
   → __conds 자체에 하단 내부 라운드(카드 radius − 보더 2px)를 부여해 걸침 리본과 라운드 공존 */
.module-card-product-grid__item--featured .module-card-product-grid__conds {
  border-radius: 0 0 calc(var(--color-radius-lg) - 2px) calc(var(--color-radius-lg) - 2px);
}
.module-card-product-grid__ribbon {
  /* 테두리 걸침 = 원 의도(tone-ribbon 정본과 통일) — 잘림은 featured의 overflow:visible로 해소 */
  position: absolute; top: -12px; right: 14px; padding: 3px 12px; border-radius: 999px;
  background: var(--color-primary); color: #fff; font-size: 12px; font-weight: 800;
  letter-spacing: -.2px; white-space: nowrap; box-shadow: var(--color-shadow-sm);
}

/* ==========================================================================
   CALC UX 픽스 (2026-07-02) — 결과 플래시 반응 + 하단 여백 중첩 해소
   ========================================================================== */
@keyframes calcResultFlash {
  0%   { box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 45%, transparent); }
  100% { box-shadow: 0 0 0 0 transparent; }
}
.module-calc-result--flash .module-calc-result__box { animation: calcResultFlash .7s ease-out; }
@media (prefers-reduced-motion: reduce) {
  .module-calc-result--flash .module-calc-result__box { animation: none; }
}
/* 계산 모듈 하단 내부 여백 이중 제거 — 마지막 자식의 하단 마진 0(상/하 균형) */
.module-calc-module > :last-child,
.module-calc-result__box > :last-child { margin-bottom: 0; }

/* CALC 결과 stale 상태(2026-07-02·v3 상단 배너) — 조건 변경 후 재계산 전
   오버레이 X → 결과 섹션 "맨 위"에 흐름 배치 배너(모바일에서도 항상 보임·내용을 아래로 밀어냄).
   버튼명 = data-stale-btn 속성(모듈별 실제 CTA 라벨) 주입. 2줄 = \A + pre-line. */
.module-calc-result--stale .module-calc-result__box { opacity: .35; filter: grayscale(.35); transition: opacity .2s ease; }
.module-calc-result--stale::before {
  /* 2026-08-08 영어 사이트 한글 노출 소거(렌더 한글 0자 게이트) — 원문: 「조건이 바뀌었어요 …」 */
  content: '🔄 The inputs changed\APress “' attr(data-stale-btn) '” again to refresh the result';
  white-space: pre-line;
  display: block; margin: 0 0 14px; padding: 14px 20px;
  border-radius: var(--color-radius-md);
  background: #fff7ed; border: 2px solid #f59e0b;
  box-shadow: 0 4px 14px rgba(245, 158, 11, .25);
  color: #b45309; font-size: 15.5px; font-weight: 800; line-height: 1.6;
  text-align: center;
}
@media (max-width: 480px) {
  .module-calc-result--stale::before { font-size: 14px; padding: 12px 14px; }
}

/* ==========================================================================
   HERO (범용 히어로 — 정적 센터형·대형 타이포·주 CTA 채움형 + 보조 링크 + 시의성 배지·2026-07-02)
   ========================================================================== */
.module-hero {
  text-align: center;
  padding: 48px 24px 44px;
  margin: 0 0 28px;
  border-radius: var(--color-radius-lg);
  background: linear-gradient(160deg, var(--color-primary-light) 0%, #fff 72%);
  border: 1px solid var(--color-border);
}
.module-hero--green { background: linear-gradient(160deg, #e7f6ec 0%, #fff 72%); }
.module-hero--slate { background: linear-gradient(160deg, #eef2f7 0%, #fff 72%); }
.module-hero__badge {
  display: inline-block; margin: 0 0 18px; padding: 7px 16px;
  border-radius: 999px; text-decoration: none;
  background: #fde8e8; color: #c81e1e; border: 1px solid #f7c4c4;
  font-size: 13.5px; font-weight: 800; letter-spacing: -.2px;
  transition: background-color .18s ease, transform .18s ease;
}
a.module-hero__badge:hover { background: #fbd5d5; transform: translateY(-1px); }
.module-hero__title {
  margin: 0 auto; max-width: 22ch;
  font-size: clamp(26px, 6.2vw, 44px); line-height: 1.22;
  font-weight: 800; letter-spacing: -.6px; color: var(--color-text-primary);
}
.module-hero__sub {
  margin: 18px auto 0; max-width: 46ch;
  font-size: clamp(15px, 2.4vw, 18.5px); line-height: 1.6;
  color: var(--color-text-secondary);
}
.module-hero__sub strong { color: var(--color-primary-dark); font-weight: 800; }
.module-hero__actions {
  margin: 28px 0 0; display: flex; flex-wrap: wrap;
  align-items: center; justify-content: center; gap: 14px 22px;
}
.module-hero__cta {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 15px 30px; border-radius: 999px; text-decoration: none;
  background: var(--color-primary); color: #fff;
  font-size: 16.5px; font-weight: 800; letter-spacing: -.3px;
  box-shadow: 0 6px 18px color-mix(in srgb, var(--color-primary) 28%, transparent);
  transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.module-hero__cta:hover {
  background: var(--color-primary-dark); transform: translateY(-2px);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--color-primary) 36%, transparent);
}
/* 보조 CTA = 아웃라인 버튼(사용자 확정 2026-07-03 "둘 다 버튼식" — 주=채움/보조=아웃라인 위계 유지) */
.module-hero__cta2 {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 15px 30px; border-radius: 999px;
  border: 1.5px solid color-mix(in srgb, var(--color-primary) 45%, var(--color-border));
  background: #fff; color: var(--color-primary-dark); text-decoration: none;
  font-size: 15.5px; font-weight: 700;
  transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}
.module-hero__cta2::after { content: ' →'; transition: transform .18s ease; }
.module-hero__cta2:hover, .module-hero__cta2:focus {
  color: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  background: color-mix(in srgb, var(--color-primary) 7%, #fff);
  transform: translateY(-2px); text-decoration: none;
}
.module-hero__cta2:hover::after { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) {
  .module-hero__cta, .module-hero__cta2::after, a.module-hero__badge { transition: none; }
  .module-hero__cta:hover, a.module-hero__badge:hover { transform: none; }
}
@media (max-width: 480px) {
  .module-hero { padding: 36px 16px 32px; }
  .module-hero__actions { flex-direction: column; gap: 14px; }
  .module-hero__cta, .module-hero__cta2 { width: 100%; justify-content: center; box-sizing: border-box; }
}

/* ==========================================================================
   BENTO-GRID (중요도 가중 타일 내비 — 홈/허브 진입점·CSS-only·2026-07-02)
   ========================================================================== */
.module-bento-grid { margin: 24px 0 32px; }
.module-bento-grid__grid {
  display: grid; grid-template-columns: 1fr; gap: 14px; grid-auto-flow: dense;
}
.module-bento-grid__cell {
  position: relative; display: flex; flex-direction: column;
  padding: 20px 20px 18px; text-decoration: none;
  border: 1.5px solid var(--color-border); border-radius: var(--color-radius-lg);
  background: #fff; box-shadow: var(--color-shadow-sm);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.module-bento-grid__cell:hover, .module-bento-grid__cell:focus-visible {
  border-color: var(--color-primary);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--color-primary) 22%, transparent);
  transform: translateY(-3px); outline: none;
}
.module-bento-grid__badge {
  align-self: flex-start; margin: 0 0 10px; padding: 3px 10px;
  border-radius: 6px; background: var(--color-primary-light);
  color: var(--color-primary-dark); font-size: 12px; font-weight: 800; letter-spacing: -.2px;
}
.module-bento-grid__title {
  font-size: 17px; font-weight: 800; letter-spacing: -.3px; line-height: 1.35;
  color: var(--color-text-primary);
}
.module-bento-grid__cell:hover .module-bento-grid__title { color: var(--color-primary-dark); }
.module-bento-grid__desc {
  margin-top: 7px; font-size: 13.5px; line-height: 1.55; color: var(--color-text-secondary);
}
.module-bento-grid__count {
  margin-top: auto; padding-top: 12px;
  font-size: 12.5px; font-weight: 700; color: var(--color-text-muted);
}
.module-bento-grid__cell--lg {
  background: linear-gradient(155deg, var(--color-primary-light) 0%, #fff 78%);
  border-color: color-mix(in srgb, var(--color-primary) 35%, var(--color-border));
}
.module-bento-grid__cell--lg .module-bento-grid__title { font-size: 20px; }
.module-bento-grid__cell--sm { padding: 16px 18px; }
.module-bento-grid__cell--sm .module-bento-grid__title { font-size: 15.5px; }
@media (min-width: 600px) {
  .module-bento-grid__grid { grid-template-columns: repeat(2, 1fr); }
  .module-bento-grid__cell--lg { grid-column: span 2; }
}
@media (min-width: 980px) {
  .module-bento-grid__grid { grid-template-columns: repeat(3, 1fr); grid-auto-rows: 1fr; }
  .module-bento-grid__cell--lg { grid-column: span 2; grid-row: span 2; justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .module-bento-grid__cell { transition: none; }
  .module-bento-grid__cell:hover { transform: none; }
}

/* ==========================================================================
   CARD-SPOTLIGHT (카드 상품 히어로 — 공식 상품 페이지 히어로 재현·JS 0·2026-07-02)
   좌: 카드 실물 대형(기울임+입체 그림자) / 우: 뱃지·카드명 대형·하이라이트 pill·CTA·note
   ========================================================================== */
.module-card-spotlight {
  display: flex; gap: 30px; align-items: center;
  margin: 24px 0 32px; padding: 30px 32px;
  border: 1.5px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-border));
  border-radius: var(--color-radius-lg);
  background: linear-gradient(135deg, var(--color-primary-light) 0%, #fff 60%);
  box-shadow: var(--color-shadow-md);
}
.module-card-spotlight__visual { flex: 0 0 auto; }
.module-card-spotlight__img {
  width: 260px; height: auto; max-height: 360px; object-fit: contain;
  border-radius: 12px;
  transform: rotate(-4deg);
  filter: drop-shadow(0 16px 30px rgba(0,0,0,.28));
  transition: transform .25s ease;
}
.module-card-spotlight:hover .module-card-spotlight__img { transform: rotate(-2deg) translateY(-4px); }
.module-card-spotlight__body { flex: 1 1 auto; min-width: 0; }
.module-card-spotlight__badge {
  display: inline-block; padding: 4px 13px; border-radius: 999px;
  background: var(--color-primary); color: #fff;
  font-size: 12.5px; font-weight: 700; letter-spacing: -.2px;
}
/* B14(2026-07-17 지휘자 증분⑤) badge_url 앵커화 — 기존 배지 스타일 그대로(위 규칙 공용) + 밑줄 제거·호버 시 색 변화만(작은 요소=버튼화 금지). */
a.module-card-spotlight__badge { text-decoration: none; font-size: 14.5px; padding: 7px 14px; }   /* 2026-07-17 사용자: 모바일 사이즈를 데스크톱에도 동일 적용 */
a.module-card-spotlight__badge:hover,
a.module-card-spotlight__badge:focus-visible { background: var(--color-primary-dark); color: #fff; text-decoration: none; }
/* 배지 앵커 이동 신호 화살표(2026-07-17 사용자 확정 — 링크형 배지에만) */
a.module-card-spotlight__badge::after { content: '\2192'; margin-left: 5px; font-weight: 700; opacity: .75; }   /* → 스타일(2026-07-17 사용자 확정) */
.module-card-spotlight__cta::after { content: '\2192'; margin-left: 6px; font-weight: 700; }   /* CTA 이동 신호(2026-07-17 사용자 확정) */
/* 모바일 배지 링크 중앙 정렬은 철회(2026-07-17 재확정) — 좌정렬 일관성(배지·리드·노트·상품명 필 전부 좌) 우선.
   크기(14.5px·7×14)는 베이스 규칙으로 승격돼 전 뷰포트 동일. */
.module-card-spotlight__name {
  margin: 12px 0 8px; font-size: 26px; font-weight: 800;
  color: var(--color-text-primary); line-height: 1.25; letter-spacing: -.4px; word-break: keep-all;
}
.module-card-spotlight__lead {
  margin: 0 0 18px; font-size: 15px; font-weight: 600; color: var(--color-text-body); line-height: 1.55; word-break: keep-all;
}
.module-card-spotlight__highlights {
  list-style: none; margin: 14px 0 20px; padding: 0;   /* 상단 여백 +14(2026-07-17 사용자: 상품명과 붙어 답답) */
  display: flex; flex-wrap: wrap; gap: 12px;
}
.module-card-spotlight__highlight {
  flex: 1 1 120px; min-width: 108px;
  padding: 12px 14px; border-radius: var(--color-radius-md);
  background: #fff; border: 1.5px solid color-mix(in srgb, var(--color-primary) 16%, var(--color-border));
  box-shadow: var(--color-shadow-sm);
}
.module-card-spotlight__hl-value {
  display: block; font-size: 22px; font-weight: 800;
  color: var(--color-primary-dark); font-variant-numeric: tabular-nums; line-height: 1.15;
}
.module-card-spotlight__hl-label {
  display: block; margin-top: 4px; font-size: 13px; font-weight: 600;
  color: var(--color-text-muted); line-height: 1.4; word-break: keep-all;
}
.module-card-spotlight__cta {
  display: inline-block; padding: 14px 30px; border-radius: 999px;   /* B10 2026-07-17: 12px 26px→14px 30px·CTA 확대(색·radius·그림자 무변경) */
  background: var(--color-primary); color: #fff; text-decoration: none;
  font-size: 16.5px; font-weight: 700;   /* B10: 15px→16.5px */
  box-shadow: 0 4px 12px color-mix(in srgb, var(--color-primary) 38%, transparent);
  transition: background-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.module-card-spotlight__cta:hover,
.module-card-spotlight__cta:focus {
  /* color 미지정 시 테마 전역 a:hover 색이 승리해 글자가 어두워짐(라이브 실측 2026-07-03) → 화이트 고정 */
  color: #fff;
  background: var(--color-primary-dark); transform: translateY(-1px);
  box-shadow: 0 6px 16px color-mix(in srgb, var(--color-primary) 48%, transparent);
}
.module-card-spotlight__note {
  margin: 14px 0 0; font-size: 13px; color: var(--color-text-muted); line-height: 1.6;
}
@media (max-width: 720px) {
  /* 모바일 텍스트=왼쪽 정렬(badge·name·lead·note — 모두의카드 발원·역이식 2026-07-16). 이미지·하이라이트·CTA 텍스트는 가운데 유지. */
  .module-card-spotlight { flex-direction: column; align-items: stretch; text-align: left; padding: 24px 20px; gap: 20px; }
  .module-card-spotlight__visual { align-self: center; }
  .module-card-spotlight__img { width: 200px; }
  .module-card-spotlight__name { font-size: 22px; }
  .module-card-spotlight__highlights { justify-content: center; }
  .module-card-spotlight__highlight { flex: 1 1 100px; }
  /* 모바일 CTA = 전폭(엄지 터치 타겟·notice-banner CTA와 일관 — 사용자 확정 2026-07-03).
     데스크톱은 내용 폭 pill 유지(공식사이트 히어로 관행). 텍스트 중앙 명시=컨테이너 left 전환 보상. */
  .module-card-spotlight__cta { display: block; width: 100%; box-sizing: border-box; text-align: center; padding: 15px 30px; }   /* B10: 모바일 터치 높이 ≈48px(세로 패딩 15px) */
}
@media (prefers-reduced-motion: reduce) {
  .module-card-spotlight__img, .module-card-spotlight__cta { transition: none; }
  .module-card-spotlight:hover .module-card-spotlight__img { transform: rotate(-4deg); }
}

/* ISSUER-ICO(2026-07-02): 발급사 아이콘 — related·link-grid 의 'icon' 이미지 + spotlight 카드명 옆 뱃지.
   이모지 아이콘(font-size 기반)은 무영향, 이미지 아이콘(.core-issuer-ico)만 크기 규칙 적용. */
.core-issuer-ico {
  display: inline-block; width: 34px; height: 34px;
  object-fit: contain; vertical-align: middle; border-radius: 6px;
  background: #fff;
}
.module-related__card__icon--img,
.module-link-grid__card-icon--img { font-size: 0; }              /* 이미지일 땐 이모지용 큰 font-size 무효화 */
.module-related__card__icon--img .core-issuer-ico { width: 36px; height: 36px; }
.module-link-grid__card-icon--img .core-issuer-ico { width: 34px; height: 34px; }
/* ISSUER-ICO(2026-07-02 v4.2.67): 표 셀 안 발급사 아이콘 + 텍스트 = 세로 가운데 정렬·아이콘 축소(20px). */
.module-table__ico-cell { display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
.module-table__ico-cell .core-issuer-ico.module-table__cell-ico { width: 20px; height: 20px; flex: 0 0 auto; border-radius: 4px; }
.module-card-spotlight__name-row {
  display: flex; align-items: center; gap: 10px; margin: 12px 0 8px;
}
.module-card-spotlight__name-row .module-card-spotlight__name { margin: 0; }
.module-card-spotlight__ico {
  flex: 0 0 auto; width: 28px; height: 28px;
  object-fit: contain; border-radius: 6px;
  box-shadow: 0 1px 4px rgba(0,0,0,.12);
}
@media (max-width: 720px) {
  /* 왼쪽 정렬 전환(역이식 2026-07-16)과 정합 — 아이콘+카드명 행도 왼쪽부터 */
  .module-card-spotlight__name-row { justify-content: flex-start; }
}

/* ==========================================================================
   SPOTLIGHT 폴백 비주얼 + variant (2026-07-16 deposit B5 — 기존 규칙 무변경·추가만)
   실물 카드 이미지가 없는 아이템(예금 기관 등)에서 __visual 슬롯에 기관 이니셜/이모지 타일.
   로고 이미지(추후 codes icon_img) 확보 시 img 경로로 드롭인 — 슬롯(__visual) 동일 유지.
   ========================================================================== */
.module-card-spotlight__visual--fallback {
  width: 132px; min-height: 132px; box-sizing: border-box;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
  padding: 18px 14px; border-radius: 18px;
  background: linear-gradient(150deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  box-shadow: 0 12px 26px color-mix(in srgb, var(--color-primary) 34%, transparent);
}
/* 이니셜 아바타 제거(2026-07-17 사용자 확정) — 박스 유지·명칭만(__vname). __initial/__vsub 규칙은 하위호환 잔존 무해라 유지. */
.module-card-spotlight__initial {
  font-size: 40px; font-weight: 800; line-height: 1; color: #fff; letter-spacing: -1px;
}
.module-card-spotlight__vsub {
  font-size: 12.5px; font-weight: 700; color: rgba(255,255,255,.92);
  text-align: center; word-break: keep-all; line-height: 1.3;
}
.module-card-spotlight__vname {
  font-size: 16px; font-weight: 800; color: #fff;
  text-align: center; word-break: keep-all; line-height: 1.35; letter-spacing: -.3px;
}
/* B10(2026-07-17) 명칭 폴백 박스 모바일 폭 보정 — 고정 132px는 모바일 세로 스택에서 과소·기관명 길이 편차(4~11자) 취약 → 내용 기반 유연 폭. 데스크톱 132px·img 분기 무변경. */
@media (max-width: 720px) {
  .module-card-spotlight__visual--fallback {
    width: auto; min-width: 55%; max-width: 85%; align-self: center; padding: 20px 24px;
  }
  /* B13(2026-07-17 증분⑥) 모바일 이미지 대역 존재감 확대 — 18px 고정→가변(clamp)·긴 기관명 2줄 허용(word-break 기존 keep-all 유지) */
  .module-card-spotlight__vname { font-size: clamp(20px, 5.5vw, 24px); line-height: 1.3; }
}
/* variant --rate: 대형 금리 타이포(첫 하이라이트=최고금리 히어로) + 기본금리 회색 병기 */
.module-card-spotlight--rate .module-card-spotlight__highlight:first-child {
  flex: 1 1 160px;
  background: color-mix(in srgb, var(--color-primary) 8%, #fff);
  border-color: color-mix(in srgb, var(--color-primary) 40%, var(--color-border));
}
.module-card-spotlight--rate .module-card-spotlight__highlight:first-child .module-card-spotlight__hl-value {
  font-size: 34px; color: var(--color-primary);
}
.module-card-spotlight--rate .module-card-spotlight__highlight:nth-child(2) .module-card-spotlight__hl-value {
  color: var(--color-text-muted);   /* 기본금리 회색 병기(우대 없이 받는 금리 위계 하향) */
}
/* variant --dday: 특판 마감 배지 톤(정적·카운트다운 JS 없음). #b91c1c = 기존 notice-imminent 임박 경고색 재사용 */
.module-card-spotlight--dday .module-card-spotlight__badge { background: #b91c1c; color: #fff; }

/* ==========================================================================
   CALCULATOR (입력형 즉시 계산기 — calculator.php · deposit B5 2026-07-16)
   노스크립트 폴백: 기본 display:none → JS(.is-ready) 있을 때만 노출(정적 매트릭스 표가 색인 담당).
   산식=source core_deposit_after_tax 미러(모듈=표시전용). 신규 클래스만·기존 규칙 무변경.
   ========================================================================== */
.module-calculator { display: none; }
.module-calculator.is-ready {
  display: block; margin: 20px 0 26px; padding: 22px 24px;
  border: 1.5px solid color-mix(in srgb, var(--color-primary) 22%, var(--color-border));
  border-radius: var(--color-radius-lg);
  background: linear-gradient(135deg, var(--color-primary-light) 0%, #fff 62%);
  box-shadow: var(--color-shadow-sm);
}
.module-calculator__head { margin-bottom: 16px; }
.module-calculator__title { display: block; font-size: 17px; font-weight: 800; color: var(--color-text-primary); letter-spacing: -.3px; }
.module-calculator__sub { display: block; margin-top: 4px; font-size: 13px; font-weight: 600; color: var(--color-text-muted); line-height: 1.5; word-break: keep-all; }
.module-calculator__form { display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: flex-end; }
.module-calculator__field { display: flex; flex-direction: column; gap: 6px; flex: 1 1 130px; min-width: 120px; }
.module-calculator__field--toggle { flex: 1 1 190px; }
.module-calculator__flabel { font-size: 12.5px; font-weight: 700; color: var(--color-text-body); }
.module-calculator__input, .module-calculator__select {
  width: 100%; box-sizing: border-box; padding: 10px 12px;
  border: 1.5px solid var(--color-border); border-radius: var(--color-radius-md);
  background: #fff; font-size: 15px; font-weight: 600; color: var(--color-text-primary); font-variant-numeric: tabular-nums;
}
.module-calculator__input:focus, .module-calculator__select:focus {
  outline: none; border-color: var(--color-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent);
}
.module-calculator__toggle { display: flex; border: 1.5px solid var(--color-border); border-radius: var(--color-radius-md); overflow: hidden; }
.module-calculator__tbtn {
  flex: 1 1 auto; padding: 9px 8px; border: 0; background: #fff; cursor: pointer;
  font-size: 13px; font-weight: 700; color: var(--color-text-muted); line-height: 1.2;
  transition: background-color .12s ease, color .12s ease;
}
.module-calculator__tbtn + .module-calculator__tbtn { border-left: 1.5px solid var(--color-border); }
.module-calculator__tbtn.is-on { background: var(--color-primary); color: #fff; }
.module-calculator__out {
  margin-top: 16px; padding: 14px 16px; border-radius: var(--color-radius-md);
  background: #fff; border: 1.5px solid color-mix(in srgb, var(--color-primary) 14%, var(--color-border));
}
.module-calculator__row {
  display: flex; justify-content: space-between; align-items: baseline; gap: 12px;
  padding: 7px 0; border-bottom: 1px dashed var(--color-border);
}
.module-calculator__row:last-child { border-bottom: 0; }
.module-calculator__rk { font-size: 13.5px; font-weight: 600; color: var(--color-text-body); word-break: keep-all; }
.module-calculator__rv { font-size: 15px; font-weight: 700; color: var(--color-text-primary); font-variant-numeric: tabular-nums; white-space: nowrap; }
.module-calculator__row--total .module-calculator__rk { color: var(--color-text-primary); font-weight: 800; }
.module-calculator__row--total .module-calculator__rv { font-size: 18px; font-weight: 800; color: var(--color-primary); }
.module-calculator__note { margin: 12px 0 0; font-size: 12px; color: var(--color-text-muted); line-height: 1.6; }
@media (max-width: 720px) {
  .module-calculator.is-ready { padding: 18px 16px; }
  .module-calculator__field, .module-calculator__field--toggle { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .module-calculator__tbtn { transition: none; }
}

/* notice-banner 모듈 = 표준 info-box/​module-cta 클래스 재사용(신규 클래스 0 — 사용자 확정 2026-07-02).
   아래 1규칙만 스코프 미세조정: .module-cta 기본 마진 28px(단독 CTA 버튼 의무 여백)이
   공지 info-box "안"에서는 배너 높이를 2배로 불려 과함 → 박스 내부에서만 축소. */
.module-info-box__body .module-cta--small { margin-top: 8px; margin-bottom: 2px; }
/* 공지 배너(--notice) 스코프 — 테마 전역 p{margin-bottom:1.5em} 상속 차단·타이틀 본문 동급 위계. 일반 info-box 무영향 */
.module-info-box--notice .module-info-box__body p { margin: 0 0 1em; }
.module-info-box--notice .module-info-box__body p:last-child { margin-bottom: 0; }
.module-info-box--notice .module-cta--small { display: block; width: 100%; text-align: center; } /* 배너 CTA 전폭(사용자 확정) */
/* 임박 사인(D-1·D-0 자동 부여·사용자 확정 2026-07-03) — 보더·틴트 한 단계 강화(JS 0·절제 유지) */
.module-info-box--notice-imminent { border-left-width: 6px; background: #fee2e2; }
.module-info-box--notice-imminent .module-info-box__title { color: #b91c1c; }

/* ==========================================================================
   2026-07-03 라이브 실측 마감 3종 (설계 정본 §4 결함 카탈로그 반영)
   ========================================================================== */
/* ① 흰 글자 버튼 hover/focus 색 고정 전수 — hover에 color 미지정 시 테마 전역 a:hover(검정)가
     승리(spotlight·hero CTA 실측). 채움형(primary 배경) 버튼만 포함, secondary/outline 변형은 제외. */
.module-hero__cta:hover, .module-hero__cta:focus,
.module-cta--hero:hover, .module-cta--hero:focus,
.module-calc-btn:hover, .module-calc-btn:focus,
.module-cta:not(.module-cta--secondary):not(.module-cta--outline):hover,
.module-cta:not(.module-cta--secondary):not(.module-cta--outline):focus {
  color: #fff;
}
/* ② card-product-grid 비강조 카드 = 호버 시 primary 톤 테두리(사용자 확정 2026-07-03
     "BC만 테두리 있고 다른 카드는 호버 시 테두리라도" — featured 상시 primary와 위계 유지) */
.module-card-product-grid__item:not(.module-card-product-grid__item--featured):hover {
  border-color: color-mix(in srgb, var(--color-primary) 55%, var(--color-border));
}
/* ③ bento lg 셀 데이터 pill(제목+한 줄만으로는 큰 셀 정보 무게 부족 — 사용자 실측 피드백) */
.module-bento-grid__stats { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.module-bento-grid__stat {
  display: inline-flex; align-items: baseline; gap: 5px;
  padding: 6px 12px; border-radius: 999px;
  background: color-mix(in srgb, var(--color-primary) 7%, #fff);
  border: 1px solid color-mix(in srgb, var(--color-primary) 18%, var(--color-border));
  font-size: 12.5px; color: var(--color-text-secondary); white-space: nowrap;
}
.module-bento-grid__stat strong { font-size: 14px; font-weight: 800; color: var(--color-primary-dark); }
/* ④ 발급사 이니셜 배지 폴백(제주은행·네이버페이 — 공식 아이콘 세트 미포함 확정 2026-07-03)
     — 아이콘과 같은 자리·크기의 균일 배지. 크기는 기존 .core-issuer-ico 규칙(w/h)을 그대로 상속. */
.core-issuer-ico--txt {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border-radius: 6px; flex: 0 0 auto;
  background: color-mix(in srgb, var(--color-primary) 10%, #fff);
  border: 1px solid color-mix(in srgb, var(--color-primary) 22%, var(--color-border));
  font-size: 11px; font-weight: 800; letter-spacing: -.5px;
  color: var(--color-primary-dark); line-height: 1;
}
.module-table__ico-cell .core-issuer-ico--txt.module-table__cell-ico { width: 20px; height: 20px; font-size: 8.5px; border-radius: 4px; }
/* ⑥ 사이드바 TOP 인기 글(코드 기반·sidebar.php) 컴팩트 — 이모지 90px 박스=세로 낭비(사용자 실측
     2026-07-03·세로형 애드센스 대비). 위젯 인라인 CSS(.horizontal-*)보다 명시도 우위(0,2,0)로 축소. */
.md-top-posts .horizontal-image { width: 40px; height: 40px; min-width: 40px; border-radius: 6px; }
/* opacity 1 = 위젯 기본 스타일의 opacity:.5(이모지 흐림 — 사용자 실측 2026-07-03) 해제 */
.md-top-posts .horizontal-default { font-size: 24px; line-height: 40px; opacity: 1; }
.md-top-posts .horizontal-post-item { padding: 7px 0; }
.md-top-posts .horizontal-post-link { gap: 10px; align-items: center; }
.md-top-posts .horizontal-title { font-size: 16px; line-height: 1.45; margin: 0; font-weight: 600; }   /* 사이트 최소 16px 기준(사용자 확정) */

/* ⑦ 전체 시세 바로가기 위젯 (.items-list-widget) — 2열 그리드 텍스트 카드 (2026-07-09)
   데이터 SSOT: site.php sidebar.top + footer.columns (items-list-widget.php·sidebar.php 코드 기반)
   카드 톤: 흰 배경·8px 라운드·얇은 그림자·호버 lift — 모두의카드 위젯 계열.
   폰트: 라벨 15px·font-weight 600 / 그룹 제목 14px / 위젯 타이틀 TOP 인기 글 동급(18px).
   터치 타깃: min-height 44px(텍스트+패딩·≥40px 기준 충족). 이모지 미렌더(2026-07-09 확정). */
.widget_items_list_widget .widget-title {
    font-size: 18px; font-weight: 700; color: #1f2937;
    margin: 0 0 16px; padding-bottom: 8px;
    border-bottom: 2px solid #1e40af; line-height: 1.3;
}
.items-list-widget { margin-bottom: 4px; }
.ilw-group { margin-bottom: 0; padding-bottom: 16px; }
.ilw-group:last-child { padding-bottom: 0; }
/* 그룹 간 분리 = 여백만. border-top 제거(2026-07-09 사용자 실측): 제목의 border-bottom과
   이중선이 되어 h3 글자가 두 선 사이에 끼어 보임 — 구분선은 제목 밑줄 1개로 충분. */
.ilw-group + .ilw-group { margin-top: 4px; }
.ilw-group-title {
    font-size: 16px; font-weight: 700; color: #4b5563;   /* 사이트 최소 16px 기준(사용자 확정 2026-07-09) */
    margin: 0 0 10px; padding-bottom: 5px;
    border-bottom: 1px solid #e5e7eb;
}
.ilw-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}
.ilw-card {
    display: flex; align-items: center; justify-content: center;
    padding: 10px 8px; min-height: 44px;
    border-radius: 8px;
    background: #fff; border: 1px solid #e5e7eb;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .06);
    text-decoration: none; color: inherit;
    transition: box-shadow .15s ease, transform .15s ease;
    text-align: center;
}
.ilw-card:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, .10);
    transform: translateY(-1px);
}
.ilw-label {
    font-size: 15px; font-weight: 600; color: #374151;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.ilw-card:hover .ilw-label { color: #1e40af; }

/* ⑤ 발급사(ico) 셀 = 좌측 정렬(사용자 확정 2026-07-03 "가운데 정렬 말고") — label형 열의
     가운데 정렬(!important·cell--center)을 ico 셀 포함 td에서만 해제(동등 !important·후순위 승리).
     :has 미지원 구형 브라우저 = 기존 가운데(무해 폴백). */
.module-table td:has(.module-table__ico-cell),
.module-table__table td:has(.module-table__ico-cell) { text-align: left !important; }
.module-table__ico-cell { justify-content: flex-start; }

/* MODOOCARD-PORT 2026-07-03 추가 3건(지휘자 판정) — ①·③ append(순수 additive)·②는 L4204 인라인 정합 */
/* ① calc-toggle US 그룹 버튼 중앙 정렬 픽스(모두의카드 2026-07-02 검증): 상위
     .module-calc-toggle{display:flex}(L2864 구식 컨테이너 규칙)가 버튼을 플렉스 컨테이너로 만들어
     글자가 좌측(flex-start)으로 붙던 결함 → 플렉스 중앙 정렬 명시. 기존 L2949 동일 셀렉터 규칙에
     이 두 속성은 미선언(census 확인) — 선언 추가만·기존 선언 덮어쓰기 0. */
.module-calc-toggle-group .module-calc-toggle {
  justify-content: center;
  align-items: center;
}
/* ③ stat-card red-value = 흰 배경·값만 빨강(배경 강조가 과할 때 — 주변에 빨강 요소가 많은 페이지용)
     — stat-card.php docblock 'color' 옵션(blue|green|red|amber|purple|red-value)의 CSS 대응 블록. */
.module-stat-card--red-value {
    background: #fff;
    border-top: 3px solid #dc2626;
}
.module-stat-card--red-value .module-stat-card__value { color: #dc2626; }

/* ═══════════════════════════════════════════════════════════════════════════
   time-of-day — 범용 24h 타임라인 (band/mark · CSS-only 툴팁 · JS 0)
   PHP: core/template/modules/time-of-day.php. 위치·색만 인라인(--tod-c/left/width),
   그 외 전부 여기 SSOT. 반응형: 축=width:100%(비율 유지)·얇은 밴드 min-width 보존·
   범례가 모바일 가독 보강. 툴팁=:hover/:focus(데스크톱 hover + 모바일 탭 + 키보드 focus).
   ═══════════════════════════════════════════════════════════════════════════ */
.module-time-of-day {
  margin: 24px 0;
  padding: 20px;
  background: var(--color-bg-card, #fff);
  border-radius: var(--color-radius-sm, 8px);
  border: 1px solid var(--color-border, #e5e7eb);
}
.module-time-of-day__title { font-size: 20px; font-weight: 700; color: var(--color-text-primary, #111827); margin: 0 0 8px; }
.module-time-of-day__caption { font-size: 13px; color: var(--color-text-secondary, #6b7280); margin: 0 0 16px; line-height: 1.6; }
.module-time-of-day__viz { position: relative; padding-top: 40px; }   /* 상단 = 툴팁 공간 */
.module-time-of-day__axis {
  position: relative;
  height: 30px;
  background: #f1f5f9;
  border: 1px solid #cbd5e1;   /* 트랙 경계=테두리+점선 눈금이 잡아주므로 배경은 더 옅게 */
  border-radius: 6px;
}
.module-time-of-day__grid {
  position: absolute; top: 0; bottom: 0; width: 0;
  margin-left: -0.5px;
  border-left: 1px dashed #94a3b8;   /* 점선 눈금 — 밴드보다 은은한 참조선(6·12·18시) */
}
/* ── band(연속 구간) ── */
.module-time-of-day__band {
  position: absolute; top: 3px; bottom: 3px;
  min-width: 8px;
  background: var(--tod-c, #3b82f6);
  border-radius: 4px;
  cursor: pointer; outline: none;
  transition: filter .15s ease, box-shadow .15s ease;
}
.module-time-of-day__band:hover,
.module-time-of-day__band:focus,
.module-time-of-day__band:focus-visible {
  filter: brightness(1.08);
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--tod-c, #3b82f6);
  z-index: 4;
}
/* ── mark(이산 시각) ── */
.module-time-of-day__mark {
  position: absolute; top: -5px; bottom: -5px; width: 2px;
  margin-left: -1px;
  background: var(--tod-c, #3b82f6);
  cursor: pointer; outline: none; z-index: 2;
}
.module-time-of-day__mark-dot {
  position: absolute; top: -6px; left: 50%; transform: translateX(-50%);
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--tod-c, #3b82f6); border: 2px solid #fff;
  box-shadow: 0 0 0 1px var(--color-border, #e5e7eb);
}
.module-time-of-day__mark:hover,
.module-time-of-day__mark:focus,
.module-time-of-day__mark:focus-visible { filter: brightness(1.12); z-index: 5; }
/* ── 툴팁(CSS-only) ── */
.module-time-of-day__tip {
  position: absolute; left: 50%; bottom: calc(100% + 10px);
  transform: translateX(-50%);
  min-width: 118px; max-width: 220px;
  display: flex; flex-direction: column; gap: 2px;
  background: rgba(17, 24, 39, .94); color: #fff;
  font-size: 12px; line-height: 1.5;
  padding: 7px 10px; border-radius: 7px;
  text-align: left; white-space: normal; word-break: keep-all;
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .15s ease; z-index: 10;
}
.module-time-of-day__tip::after {
  content: ""; position: absolute; top: 100%; left: 50%; transform: translateX(-50%);
  border: 5px solid transparent; border-top-color: rgba(17, 24, 39, .94);
}
.module-time-of-day__band:hover  .module-time-of-day__tip,
.module-time-of-day__band:focus  .module-time-of-day__tip,
.module-time-of-day__band:focus-within .module-time-of-day__tip,
.module-time-of-day__mark:hover  .module-time-of-day__tip,
.module-time-of-day__mark:focus  .module-time-of-day__tip,
.module-time-of-day__mark:focus-within .module-time-of-day__tip { opacity: 1; visibility: visible; }
.module-time-of-day__tip strong { color: #fbbf24; }
.module-time-of-day__tip-time { font-variant-numeric: tabular-nums; opacity: .95; }
.module-time-of-day__tip-desc { opacity: .82; }
/* 툴팁 가장자리 정렬(좌/우 오버플로 방지 — 중심 <18% / >82% 밴드·마크) */
.module-time-of-day__band--tl .module-time-of-day__tip,
.module-time-of-day__mark--tl .module-time-of-day__tip { left: 0; transform: none; }
.module-time-of-day__band--tl .module-time-of-day__tip::after,
.module-time-of-day__mark--tl .module-time-of-day__tip::after { left: 16px; }
.module-time-of-day__band--tr .module-time-of-day__tip,
.module-time-of-day__mark--tr .module-time-of-day__tip { left: auto; right: 0; transform: none; }
.module-time-of-day__band--tr .module-time-of-day__tip::after,
.module-time-of-day__mark--tr .module-time-of-day__tip::after { left: auto; right: 16px; transform: none; }
/* ── 눈금 ── */
.module-time-of-day__ticks { position: relative; height: 18px; margin-top: 6px; }
.module-time-of-day__tick {
  position: absolute; transform: translateX(-50%);
  font-size: 11px; color: var(--color-text-secondary, #6b7280);
  font-variant-numeric: tabular-nums; white-space: nowrap;
}
.module-time-of-day__tick--start { transform: none; }
.module-time-of-day__tick--end { transform: translateX(-100%); }
/* ── 범례(가시·모바일 가독·GEO 텍스트) ── */
.module-time-of-day__legend {
  list-style: none; margin: 16px 0 0; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 8px 18px;
}
.module-time-of-day__legend-item {
  display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 3px 8px;
  font-size: 15px; line-height: 1.55;
}
.module-time-of-day__legend-dot {
  width: 12px; height: 12px; border-radius: 3px; background: var(--tod-c, #3b82f6); flex: 0 0 auto;
}
.module-time-of-day__legend-time { font-weight: 700; color: var(--color-text-primary, #111827); font-variant-numeric: tabular-nums; white-space: nowrap; }
.module-time-of-day__legend-label { font-weight: 600; color: var(--color-text-primary, #111827); }
.module-time-of-day__legend-desc { grid-column: 2 / -1; color: var(--color-text-secondary, #6b7280); font-size: 13px; }
.module-time-of-day__note { font-size: 12px; color: var(--color-text-secondary, #6b7280); margin: 14px 0 0; line-height: 1.6; }
@media (max-width: 640px) {
  .module-time-of-day { padding: 16px; }
  .module-time-of-day__legend { grid-template-columns: 1fr; }
  .module-time-of-day__tip { max-width: 180px; }
}

/* ══════════════════════════════════════════════════════════════════════
   랜딩 전용 CSS 증분 (2026-07-10 · kpi-card · link-grid chips · qa-cards)
   ══════════════════════════════════════════════════════════════════════ */

/* ── module-kpi-board: KPI 시세판 그리드 ────────────────────────────── */
.module-kpi-board {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
@media (max-width: 900px) { .module-kpi-board { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 640px) { .module-kpi-board { grid-template-columns: repeat(2, 1fr); } }

.module-kpi-board__card {
  padding: 16px 18px;
  display: block;
  color: inherit;
  text-decoration: none;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.module-kpi-board__card:hover {
  box-shadow: 0 8px 20px rgba(0,0,0,0.10);
  transform: translateY(-1px);
  border-color: #3b82f6;
  color: inherit;
}
.module-kpi-board__group {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: 4px;
}
.module-kpi-board__label {
  font-size: 15px;
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 8px;
}
.module-kpi-board__price {
  font-size: 22px;
  font-weight: 800;
  color: #1e293b;
  line-height: 1.1;
}
.module-kpi-board__unit {
  font-size: 12px;
  font-weight: 400;
  color: #475569;
  margin-left: 3px;
}
.module-kpi-board__chg {
  font-size: 13px;
  font-weight: 700;
  margin-top: 4px;
}
.module-kpi-board__dual {
  display: flex;
  gap: 6px;
  margin-top: 6px;
  flex-wrap: wrap;
  font-size: 12px;
  font-weight: 700;
}
.module-kpi-board__spark {
  display: block;
  margin: 8px 0 4px;
}
.module-kpi-board__ts {
  font-size: 11px;
  color: #94a3b8;
  margin-top: 6px;
}

/* 무버 */
.module-kpi-board__movers {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (max-width: 640px) { .module-kpi-board__movers { grid-template-columns: 1fr; } }
.module-kpi-board__mgroup {
  overflow: hidden;
}
.module-kpi-board__mhead {
  padding: 12px 18px;
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
}
.module-kpi-board__mhead--up   { background: #fef2f2; color: #991b1b; }
.module-kpi-board__mhead--down { background: #eff6ff; color: #1e40af; }
.module-kpi-board__mitem {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 18px;
  border-bottom: 1px solid #f8fafc;
  color: inherit;
  text-decoration: none;
  transition: background .15s;
}
.module-kpi-board__mitem:last-child { border-bottom: 0; }
.module-kpi-board__mitem:hover { background: #f8fafc; color: inherit; }
.module-kpi-board__mrank { font-size: 14px; font-weight: 800; color: #94a3b8; width: 18px; flex-shrink: 0; }
.module-kpi-board__minfo { flex: 1; }
.module-kpi-board__mlabel { font-size: 15px; font-weight: 700; color: #1e293b; }
.module-kpi-board__msub   { font-size: 12px; color: #475569; }
.module-kpi-board__mr     { text-align: right; }
.module-kpi-board__mchg   { font-size: 15px; font-weight: 800; }
.module-kpi-board__mpx    { font-size: 12px; color: #94a3b8; }

/* ── module-link-grid--chips: 히어로 인기 시세 칩 (additive) ─────────── */
.module-link-grid--chips {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  /* max-width 760px 제거(2026-07-10 R3 보완 — 히어로 오른쪽 여백 실원인·컨테이너 전폭 자동) */
}
@media (max-width: 820px) { .module-link-grid--chips { grid-template-columns: repeat(2, 1fr); } }

.module-link-grid__chip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  background: rgba(255,255,255,0.96);
  border-radius: 10px;
  padding: 12px 14px;
  min-height: 52px;
  color: #1e293b;
  text-decoration: none;
  transition: transform .15s ease, box-shadow .2s ease;
}
.module-link-grid__chip:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,0.25);
  color: #1e293b;
}
.module-link-grid__chip-name {
  font-size: 14px;
  font-weight: 700;
}
.module-link-grid__chip-val {
  font-size: 13px;
  font-weight: 700;
  text-align: right;
  line-height: 1.3;
}
.module-link-grid__chip-unit {
  font-size: 11px;
  font-weight: 400;
  color: #475569;
  margin-left: 2px;
}
.module-link-grid__chip-chg {
  display: block;
  font-size: 11px;
  font-weight: 700;
}
/* 히어로 배경(어두움)에서 chip 내부 등락색 반전 없음 — chip 배경이 흰색이라 표준 색 유지 */

/* ── R165(2026-07-16): chips--card 수정자 — 흰 페이지 배경용 카드형 칩(/all/ 전 품목 디렉터리)
     기존 --chips(히어로 흰 칩) 룰 무변경·이 수정자 스코프에서만 오버라이드(additive). */
.module-link-grid--chips--card {
  grid-template-columns: repeat(auto-fill, minmax(158px, 1fr));
  gap: 8px;
}
@media (max-width: 820px) { .module-link-grid--chips--card { grid-template-columns: repeat(2, 1fr); } }
.module-link-grid--chips--card .module-link-grid__chip {
  justify-content: flex-start;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  min-height: 46px;
  padding: 9px 12px;
}
.module-link-grid--chips--card .module-link-grid__chip:hover {
  border-color: var(--color-primary, #2563eb);
  background: #fff;
  box-shadow: 0 6px 16px rgba(37, 99, 235, 0.12);
}
.module-link-grid__chip-ico {
  font-size: 21px;
  line-height: 1;
  flex: 0 0 auto;
}
.module-link-grid--chips--card .module-link-grid__chip-name {
  font-size: 14.5px;
  font-weight: 600;
}
.module-link-grid__chip-ico-img {
  width: 21px;
  height: 21px;
  flex: 0 0 auto;
  display: block;
}

/* ── module-qa-cards: 즉답 밴드 카드 (additive) ─────────────────────── */
.module-qa-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
@media (max-width: 820px) { .module-qa-cards { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .module-qa-cards { grid-template-columns: 1fr; } }

.module-qa-cards__card {
  padding: 20px 22px;
  display: block;
  text-decoration: none;
  color: inherit;
}
.module-qa-cards__tag {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 4px;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.module-qa-cards__tag--buy  { background: #fef2f2; color: #991b1b; }
.module-qa-cards__tag--sell { background: #eff6ff; color: #1e40af; }
.module-qa-cards__tag--low  { background: #f0fdf4; color: #14532d; }
.module-qa-cards__q {
  font-size: 15px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 12px;
  line-height: 1.4;
}
.module-qa-cards__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 12px;
  border-radius: 6px;
  background: #f8fafc;
  margin-bottom: 8px;
}
.module-qa-cards__row:last-of-type { margin-bottom: 0; }
.module-qa-cards__key { font-size: 14px; color: #475569; }
.module-qa-cards__val { font-size: 17px; font-weight: 800; }
.module-qa-cards__foot {
  margin-top: 12px;
  font-size: 12px;
  color: #94a3b8;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.module-qa-cards__cta { font-size: 13px; font-weight: 700; color: #1a73e8; }
.module-qa-cards__ts  { font-size: 12px; color: #94a3b8; }

/* ── 랜딩 공용 섹션 래퍼 ────────────────────────────────────────────── */
.landing-strip {
  background: #1e293b;
  color: #e2e8f0;
  font-size: 14px;
}
.landing-strip__row {
  display: flex;
  gap: 18px;
  align-items: center;
  flex-wrap: wrap;
  padding: 9px 0;
  max-width: 1080px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}
.landing-strip b     { font-weight: 700; color: #fff; }
.landing-strip .s-up   { color: #f87171; font-weight: 700; }
.landing-strip .s-down { color: #93c5fd; font-weight: 700; }
.landing-strip .s-flat { color: #94a3b8; }
.landing-strip .s-ts   { margin-left: auto; color: #94a3b8; }

.landing-hero {
  background: linear-gradient(135deg, #1e3a8a 0%, #1e293b 100%);
  color: #fff;
}
.landing-hero__inner { padding: 40px 0 44px; max-width: 1080px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
.landing-hero__h1 { font-size: 36px; font-weight: 800; line-height: 1.22; margin: 0 0 14px; letter-spacing: -.02em; max-width: 15ch; }
@media (max-width: 640px) { .landing-hero__h1 { font-size: 26px; } }
.landing-hero__sum { font-size: 16px; line-height: 1.85; color: rgba(255,255,255,.9); max-width: 720px; margin: 0 0 22px; }
.landing-hero__sum b { color: #fff; font-weight: 700; }
.landing-hero__chip-label { font-size: 13px; font-weight: 600; color: rgba(255,255,255,.7); margin: 0 0 10px; }
.landing-hero__all {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 20px;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
  padding: 11px 20px;
  border-radius: 24px;
  text-decoration: none;
}
.landing-hero__all:hover { color: #fff; background: rgba(255,255,255,.24); }

.landing-sec { padding: 36px 0; }
.landing-sec--tint { background: #eef2f7; }
.landing-sec__inner { max-width: 1080px; margin: 0 auto; padding: 0 20px; }
.landing-sec__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0 0 16px;
}
.landing-sec__title {
  font-size: 24px;
  font-weight: 700;
  color: #1e293b;
  border-left: 4px solid #4285f4;
  padding-left: 12px;
  margin: 0;
  line-height: 1.2;
}
.landing-sec__title small {
  display: block;
  font-size: 13px;
  font-weight: 400;
  color: #475569;
  border: 0;
  padding: 0;
  margin-top: 4px;
}
.landing-sec__ts   { font-size: 13px; color: #94a3b8; white-space: nowrap; }
.landing-sec__more { font-size: 14px; font-weight: 600; color: #1a73e8; text-decoration: none; }

/* 주목 차트 (농넷 패턴) */
.landing-feature {
  padding: 22px 24px;
  margin-bottom: 18px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.landing-feature__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 14px;
}
.landing-feature__cat { font-size: 13px; font-weight: 700; color: #475569; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 4px; }
.landing-feature__price { font-size: 34px; font-weight: 800; color: #1e293b; line-height: 1.05; }
.landing-feature__unit { font-size: 14px; font-weight: 400; color: #475569; margin-left: 4px; }
.landing-feature__badges { display: flex; gap: 8px; margin-top: 10px; flex-wrap: wrap; }
.landing-feature__badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 20px;
}
.landing-feature__badge--up   { color: #dc2626; background: #fef2f2; }
.landing-feature__badge--down { color: #2563eb; background: #eff6ff; }
.landing-feature__badge small { font-size: 11px; font-weight: 400; opacity: .75; }
.landing-feature__tabs { display: flex; border: 1px solid #e2e8f0; border-radius: 6px; overflow: hidden; width: fit-content; }
.landing-feature__tab {
  padding: 6px 15px;
  font-size: 13px;
  font-weight: 700;
  color: #475569;
  background: #fff;
  border: 0;
  border-right: 1px solid #e2e8f0;
  cursor: pointer;
  font-family: inherit;
}
.landing-feature__tab:last-child { border-right: 0; }
.landing-feature__tab.on { background: #1a73e8; color: #fff; }
.landing-feature__chart-wrap { overflow-x: auto; }
.landing-feature__chart { display: block; width: 100%; max-width: 100%; }   /* 760→100%(2026-07-10 R3 보완 — 주목 차트 오른쪽 여백 실원인) */
.landing-feature__legend { display: flex; gap: 16px; flex-wrap: wrap; margin: 12px 0 0; }
.landing-feature__legend span { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: #475569; }
.landing-feature__legend i { width: 20px; height: 0; border-top-width: 2px; border-top-style: solid; display: inline-block; }
.landing-feature__note { font-size: 13px; color: #94a3b8; margin: 14px 0 0; }
/* CSS 호버 툴팁 */
.lf-cp { cursor: pointer; }
.lf-cp .lf-ct { visibility: hidden; pointer-events: none; }
.lf-cp:hover .lf-ct, .lf-cp:focus .lf-ct { visibility: visible; }

/* 광고 슬롯 */
.landing-ad {
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  background: #f8fafc;
  color: #94a3b8;
  text-align: center;
  padding: 18px;
  font-size: 13px;
  letter-spacing: .02em;
  margin: 4px 0;
}
.landing-ad b { color: #64748b; font-weight: 700; }

/* 지역 관문 */
.landing-region__bar {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.landing-region__sel {
  font-size: 15px;
  font-weight: 700;
  color: #1e293b;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 10px 14px;
  background: #fff;
  font-family: inherit;
  min-height: 44px;
  min-width: 140px;
  cursor: pointer;
}
.landing-region__tabs { display: flex; gap: 8px; }
.landing-region__tab {
  font-size: 14px;
  font-weight: 700;
  padding: 10px 16px;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  background: #fff;
  color: #475569;
  cursor: pointer;
  font-family: inherit;
  min-height: 44px;
}
.landing-region__tab.on { background: #1a73e8; color: #fff; border-color: #1a73e8; }
.landing-region__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
@media (max-width: 640px) { .landing-region__list { grid-template-columns: 1fr; } }
.landing-region__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8fafc;
  text-decoration: none;
  color: inherit;
}
.landing-region__row:hover { border-color: #3b82f6; background: #fff; }
.landing-region__name { font-size: 15px; font-weight: 700; color: #1e293b; }
.landing-region__sub  { font-size: 12px; color: #475569; margin-top: 2px; }
.landing-region__val  { font-size: 17px; font-weight: 800; text-align: right; }
.landing-region__pane { display: none; }
.landing-region__pane.on { display: block; }

/* 가이드 카드 */
.landing-guides {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
@media (max-width: 820px) { .landing-guides { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .landing-guides { grid-template-columns: 1fr; } }
.landing-guide__card {
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  text-decoration: none;
  color: inherit;
  min-height: 104px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.landing-guide__card:hover {
  box-shadow: 0 8px 20px rgba(0,0,0,0.10);
  transform: translateY(-1px);
  border-color: #3b82f6;
  color: inherit;
}
.landing-guide__kicker { font-size: 11px; font-weight: 700; color: #4285f4; text-transform: uppercase; letter-spacing: .05em; }
.landing-guide__title  { font-size: 16px; font-weight: 700; color: #1e293b; line-height: 1.4; }
.landing-guide__desc   { font-size: 13px; color: #475569; line-height: 1.5; margin-top: auto; }

/* ── module-kpi-board__roll — CSS 롤링 다품목 카드 (additive 2026-07-10) ─ */
/* SEO: 전 품목 DOM 실재(opacity 전환·display:none 금지) → 크롤러 전 품목 색인. */
/* CLS=0: 슬라이드 position:absolute → 컨테이너 고정 높이가 레이아웃 결정.   */
.module-kpi-board__card--roll {
  position: relative;  /* contain absolute slides */
}
.module-kpi-board__roll-wrap {
  position: relative;
  min-height: 80px;    /* 슬라이드 콘텐츠 높이 기준 — CLS 방지 */
  overflow: hidden;
}
.module-kpi-board__roll-slide {
  position: absolute;
  top: 0; left: 0; width: 100%;
  opacity: 0;
  /* animation-name/duration/delay — PHP 인라인으로 주입 */
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-fill-mode: both;
}
/* 호버·포커스 시 롤링 일시정지 */
.module-kpi-board__roll-wrap:hover .module-kpi-board__roll-slide,
.module-kpi-board__roll-wrap:focus-within .module-kpi-board__roll-slide {
  animation-play-state: paused;
}
/* 롤 서브 레이블 (품목명) */
.module-kpi-board__roll-sub {
  font-size: 12px;
  font-weight: 700;
  color: #64748b;
  margin-bottom: 3px;
}
/* prefers-reduced-motion: 첫 품목만 정적 표시·애니메이션 없음 */
@media (prefers-reduced-motion: reduce) {
  .module-kpi-board__roll-slide {
    animation: none !important;
    opacity: 0;
    position: absolute;
  }
  .module-kpi-board__roll-slide:first-child {
    opacity: 1;
    position: relative;
  }
}

/* 공통 등락색 SSOT (랜딩 전용 스코프 없이 전역 사용) */
.chg-up   { color: #dc2626; }
.chg-down { color: #2563eb; }
.chg-flat { color: #94a3b8; }

/* ── CSS census 보강 (R2 2026-07-10) ── 아래 클래스 모두 front-page.php 출력 확인 */

/* .lift — 호버 시 위로 이동하는 글로벌 유틸리티 (landing-v1.html 토큰 동일) */
.lift { transition: transform .2s ease, box-shadow .2s ease; }
.lift:hover { transform: translateY(-1px); }

/* .card — FAQ <details> 박스 스타일 기반 (WP 표준 .card 없음·랜딩 전용) */
.card { background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; }

/* .landing-faq-grid — FAQ 2열 그리드 (front-page.php §9) */
.landing-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 640px) { .landing-faq-grid { grid-template-columns: 1fr; } }

/* .landing-sources — 데이터 출처 블록 (항상 렌더·애드센스 신뢰 요소) */
.landing-sources {
  margin-top: 28px;
  padding: 20px 22px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}
.landing-sources__title {
  font-size: 14px;
  font-weight: 700;
  color: #1e293b;
  margin: 0 0 12px;
}
.landing-sources__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}
/* .src-chip — 출처 뱃지 칩 */
.src-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
  color: #1a73e8;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 20px;
  padding: 3px 10px;
  white-space: nowrap;
}
.landing-sources__legal {
  font-size: 12px;
  line-height: 1.75;
  color: #64748b;
  margin: 0;
}

/* =====================================================================
   랜딩 시안 완전 적용 블록 (landing-v1.html → 2026-07-10 R2b)
   전역 선택자(body·a·*·section)는 .landing-page 하위로 스코프
   헤더/푸터 관련 규칙(.site-header .site-footer .brand .nav) 이식 제외
   ===================================================================== */

/* ── 토큰 (CSS 사용자 정의 속성 · :root = 전역 무해) ──────────────── */
:root {
  --lp-up:    #dc2626;
  --lp-down:  #2563eb;
  --lp-flat:  #64748b;
  --lp-amber: #f59e0b;
  --lp-text:  #1e293b;
  --lp-body:  #374151;
  --lp-sec:   #475569;
  --lp-muted: #94a3b8;
  --lp-link:  #1a73e8;
  --lp-point: #4285f4;
  --lp-card:  #ffffff;
  --lp-subtle:#f8fafc;
  --lp-bg:    #f1f5f9;
  --lp-border:#e2e8f0;
  --lp-blt:   #e5e7eb;
  --lp-radius:8px;
  --lp-shadow:0 4px 12px rgba(0,0,0,0.06);
  --lp-shover:0 8px 20px rgba(0,0,0,0.10);
}

/* ── 전역 스코프 리셋 (.landing-page 래퍼 하위) ──────────────────── */
.landing-page * { box-sizing: border-box; }
.landing-page {
  font-family: -apple-system,'Noto Sans KR',sans-serif;
  font-size: 16px;
  color: var(--lp-text);
  background: var(--lp-bg);
  line-height: 1.5;
  overflow-x: hidden; /* R5: full-bleed 밴드 가로 스크롤 방지 */
}
/* R5: full-bleed — 히어로·요약 스트립·tint 블록이 뷰포트 전폭으로 확장 */
.landing-page .hero,
.summary-strip,
.landing-page .block--tint {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
.landing-page a { color: var(--lp-link); text-decoration: none; }
.landing-page a:hover { color: #1557b0; }
/* 앵커 오프셋 SSOT — 전 페이지·전 사이트·chrome-anchor-offset.js가 --chrome-h를 html에 심음·N22-SSOT 2026-08-23 */
html { scroll-padding-top: var(--chrome-h, 96px); }

/* ── 컨테이너 ─────────────────────────────────────────────────────── */
/* R3: div.container로 특이성 상향(0,2,1) + padding !important — GP 테마 override 방지 */
/* R4: shorthand 대신 left/right만 — hero__inner 상하 padding 보호 */
.landing-page div.container { max-width: 1080px; margin: 0 auto !important; padding-left: 20px !important; padding-right: 20px !important; }
@media (min-width:821px) { .landing-page div.container { padding-left: 36px !important; padding-right: 36px !important; } }

/* ── 공통 섹션 헤더 ───────────────────────────────────────────────── */
.landing-page .sec-head  { display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 16px; }
.landing-page .sec-title { font-size:24px;font-weight:700;color:var(--lp-text);border-left:4px solid var(--lp-point);padding-left:12px;margin:0;line-height:1.2; }
.landing-page .sec-title small { display:block;font-size:13px;font-weight:400;color:var(--lp-sec);border:0;padding:0;margin-top:4px; }
.landing-page .sec-ts    { font-size:13px;color:var(--lp-muted);white-space:nowrap; }
.landing-page .more-link { font-size:14px;font-weight:600;color:var(--lp-link); }
.landing-page .block     { padding:36px 0; }
.landing-page .block--tint { background:#eef2f7; }

/* 카드 공통 */
.landing-page .card { background:var(--lp-card);border-radius:var(--lp-radius);border:1px solid var(--lp-border);box-shadow:var(--lp-shadow); }
.landing-page .lift { transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease; }
.landing-page .lift:hover { box-shadow:var(--lp-shover);transform:translateY(-1px);border-color:#3b82f6; }
.landing-page .up   { color:var(--lp-up); }
.landing-page .down { color:var(--lp-down); }

/* 광고 슬롯 */
.landing-page .ad { border:1px dashed #cbd5e1;border-radius:var(--lp-radius);background:#f8fafc;color:#94a3b8;text-align:center;padding:18px;font-size:13px;letter-spacing:.02em; }
.landing-page .ad b { color:#64748b;font-weight:700; }

/* ── 요약 스트립 — CSS 마퀴 티커 (R5: NO JS · DOM 2x · hover pause · reduced-motion) ── */
/* R10: .summary-strip = 풀블리드 배경 밴드 / flex row는 .summary-strip__row(container 내부)로 분리 */
.summary-strip { background:var(--lp-text);color:#e2e8f0;font-size:14px;overflow:hidden;height:38px; }
.summary-strip__row { display:flex;align-items:center;height:100%; }
/* R9증분/R10: strip-label 고정(flex:0 0 auto), container 패딩으로 좌측 여백 확보 */
.strip-label { flex:0 0 auto;font-size:12px;font-weight:700;color:#94a3b8;white-space:nowrap;padding:0 14px 0 0;letter-spacing:.04em;border-right:1px solid rgba(255,255,255,.1); }
.strip-ticker { flex:1 1 auto;overflow:hidden;min-width:0; }
.ticker-track { display:flex;align-items:center;width:max-content;animation:lp-ticker var(--tkdur,27s) linear infinite; }
.summary-strip:hover .ticker-track { animation-play-state:paused; }
@keyframes lp-ticker { 0% { transform:translateX(0); } 100% { transform:translateX(-50%); } }
.ticker-item { display:inline-flex;align-items:center;gap:5px;white-space:nowrap;padding:0 8px;color:#e2e8f0;text-decoration:none;font-size:13px;border-radius:4px; }
.ticker-item:hover { color:#fff;background:rgba(255,255,255,.08); }
.tk-name  { font-weight:700;color:#fff; }        /* 시안: 품목명 #fff 700 */
.tk-price { font-size:13px;color:#e2e8f0; }
.tk-unit  { font-size:11px;color:#94a3b8; }
.tk-chg   { font-size:12px;font-weight:700;color:#94a3b8; } /* 보합 기본색 */
.tk-chg.up   { color:#f87171; }                  /* 시안: 상승 */
.tk-chg.down { color:#93c5fd; }                  /* 시안: 하락 */
.tk-sep { color:#64748b;padding:0 4px; }          /* 시안: 구분점 */
@media (prefers-reduced-motion:reduce) { .ticker-track { animation:none; } }

/* ── 히어로 ───────────────────────────────────────────────────────── */
.landing-page .hero { background:linear-gradient(135deg,#1e3a8a 0%,#1e293b 100%);color:#fff; }
.landing-page .hero__inner { padding:40px 0 44px; }
.landing-page .hero__h1 { font-size:36px;font-weight:800;line-height:1.22;margin:0 0 14px;letter-spacing:-.02em; }
@media(max-width:640px) { .landing-page .hero__h1 { font-size:26px; } }
.landing-page .hero__sum { font-size:16px;line-height:1.85;color:rgba(255,255,255,.9);max-width:720px;margin:0 0 22px; }
.landing-page .hero__sum b { color:#fff;font-weight:700; }
.landing-page .hero__stats { display:flex;gap:10px;flex-wrap:wrap;margin:0 0 26px; }
.landing-page .stat-pill { display:inline-flex;align-items:baseline;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:10px 16px;text-decoration:none;transition:background .15s ease,border-color .15s ease; }
.landing-page .stat-pill:hover { background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.3);color:inherit; }
.landing-page .stat-pill__k { font-size:13px;color:rgba(255,255,255,.72); }
.landing-page .stat-pill__v { font-size:19px;font-weight:800;color:#fff; }
.landing-page .stat-pill__c { font-size:13px;font-weight:700; }
.landing-page .stat-pill .u { color:#fca5a5; }
.landing-page .stat-pill .d { color:#93c5fd; }
/* ── module-stat-pill 범용 승격 (2026-07-10) — .landing-page 스코프 무변경·기존 랜딩 무영향. data-only 계약: pills[{k,v,c:{dir,text}}] + tone='dark'|'light'. */
.module-stat-pill { display:flex;flex-wrap:wrap;gap:8px;padding:10px 0; }
.module-stat-pill .stat-pill { display:inline-flex;align-items:baseline;gap:8px;border-radius:12px;padding:10px 16px; }
.module-stat-pill .stat-pill__k { font-size:13px; }
.module-stat-pill .stat-pill__v { font-size:19px;font-weight:800; }
.module-stat-pill .stat-pill__c { font-size:13px;font-weight:700; }
.module-stat-pill--dark .stat-pill { background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14); }
.module-stat-pill--dark .stat-pill__k { color:rgba(255,255,255,.72); }
.module-stat-pill--dark .stat-pill__v { color:#fff; }
.module-stat-pill--dark .stat-pill .u { color:#fca5a5; }
.module-stat-pill--dark .stat-pill .d { color:#93c5fd; }
.module-stat-pill--light .stat-pill { background:#f5f5f5;border:1px solid #e5e7eb; }
.module-stat-pill--light .stat-pill__k { color:#6b7280; }
.module-stat-pill--light .stat-pill__v { color:#111827; }
.module-stat-pill--light .stat-pill .u { color:#dc2626; }
.module-stat-pill--light .stat-pill .d { color:#2563eb; }
/* 🩹 R5-③ 링크 알약 — 알약이 <a> 로 나올 때만 붙는 «눌러도 된다»는 신호 (2026-08-02)
   url 없는 알약은 여전히 <div> 라 이 규칙에 걸리지 않는다 — 기존 사용처 렌더 무변화.
   값은 시안 .chip 의 계산값을 그대로 옮겼다(playwright 실측 · 발명 0):
     기본 cursor:pointer · text-decoration:none · transition:border-color .12s, color .12s
     호버 color:rgb(59,45,191)=#3B2DBF(--acc-i) · border-color:rgb(87,71,224)=#5747E0(--acc)
   (두 색은 이 파일 :13702 가 이미 시안 :root 실측값으로 기록해 둔 것과 같은 값이다) */
.module-stat-pill .stat-pill--link {
  text-decoration: none; cursor: pointer;
  transition: border-color .12s, color .12s;
}
.module-stat-pill .stat-pill--link:hover,
.module-stat-pill .stat-pill--link:focus-visible { border-color: #5747E0 }
.module-stat-pill--light .stat-pill--link:hover .stat-pill__v,
.module-stat-pill--light .stat-pill--link:focus-visible .stat-pill__v,
.module-stat-pill--light .stat-pill--link:hover .stat-pill__k,
.module-stat-pill--light .stat-pill--link:focus-visible .stat-pill__k { color: #3B2DBF }
.landing-page .hero__chip-label { font-size:13px;font-weight:600;color:rgba(255,255,255,.7);margin:0 0 10px; }
/* R3: 폭 제한 해제 → 컨테이너 전폭(4열 grid·gap 자동 확장). .hero__sum은 가독성 위해 max-width:720px 유지 */
.landing-page .chips { display:grid;grid-template-columns:repeat(4,1fr);gap:10px; }
@media(max-width:820px) { .landing-page .chips { grid-template-columns:repeat(2,1fr); } }
.landing-page .chip { display:flex;align-items:center;justify-content:space-between;gap:8px;background:rgba(255,255,255,.96);border-radius:10px;padding:12px 14px;min-height:52px;color:var(--lp-text);transition:transform .15s ease,box-shadow .2s ease; }
.landing-page .chip:hover { transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.25);color:var(--lp-text); }
.landing-page .chip__name { font-size:14px;font-weight:700; }
.landing-page .chip__val  { font-size:13px;font-weight:700;text-align:right;line-height:1.3; }
.landing-page .chip__unit { font-size:11px;font-weight:400;color:var(--lp-sec); }
.landing-page .chip__val .c { display:block;font-size:11px;font-weight:700; }
.landing-page .hero__all  { display:inline-flex;align-items:center;gap:6px;margin-top:20px;font-size:15px;font-weight:700;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);padding:11px 20px;border-radius:24px; }
.landing-page .hero__all:hover { color:#fff;background:rgba(255,255,255,.24); }

/* ── 오늘 시세판 ──────────────────────────────────────────────────── */
/* 주목 차트 */
.landing-page .feature        { padding:22px 24px;margin-bottom:18px; }
.landing-page .feature__top   { display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:14px; }
.landing-page .feature__label { font-size:13px;font-weight:700;color:var(--lp-sec);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px; }
.landing-page .feature__price { font-size:34px;font-weight:800;color:var(--lp-text);line-height:1.05; }
.landing-page .feature__price .u { font-size:14px;font-weight:400;color:var(--lp-sec);margin-left:4px; }
.landing-page .badges    { display:flex;gap:8px;margin-top:10px;flex-wrap:wrap; }
.landing-page .badge     { display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:700;padding:4px 12px;border-radius:20px; }
.landing-page .badge--up   { color:var(--lp-up);background:#fef2f2; }
.landing-page .badge--down { color:var(--lp-down);background:#eff6ff; }
.landing-page .badge small { font-size:11px;font-weight:400;opacity:.75; }
.landing-page .tabs { display:flex;border:1px solid var(--lp-border);border-radius:6px;overflow:hidden;width:fit-content; }
.landing-page .tabs button { padding:6px 15px;font-size:13px;font-weight:700;color:var(--lp-sec);background:#fff;border:0;border-right:1px solid var(--lp-border);cursor:pointer;font-family:inherit; }
.landing-page .tabs button:last-child { border-right:0; }
.landing-page .tabs button.on { background:var(--lp-link);color:#fff; }
.landing-page .chart-wrap { overflow-x:auto; }
.landing-page .chart-svg  { display:block;width:100%;max-width:100%; }
/* R55: 모바일 SVG 이중 렌더 — 데스크톱 기본/모바일 전환 */
.landing-page .chart-svg--mob { display:none; }
@media (max-width:640px) {
  .landing-page .chart-svg--desk { display:none; }
  .landing-page .chart-svg--mob  { display:block; }
}
.landing-page .legend     { display:flex;gap:16px;flex-wrap:wrap;margin:12px 0 0; }
.landing-page .legend span { display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--lp-sec); }
.landing-page .legend i   { width:20px;height:0;border-top-width:2px;border-top-style:solid;display:inline-block; }
.landing-page .cp { cursor:pointer; }
.landing-page .cp .ct { visibility:hidden;pointer-events:none; }
.landing-page .cp:hover .ct, .landing-page .cp:focus .ct { visibility:visible; }
/* R40: .cp 내 원 기본 hidden — Pass A 정적 원이 보임, 호버 시 .cp 원만 확대 페인트 */
.landing-page .cp circle { visibility:hidden; }
/* R27/R40: 호버 시 .cp 원 표시 + 확대 (r:7 — 모든 정적 요소 위에 페인트) */
.landing-page .cp:hover circle, .landing-page .cp:focus circle { visibility:visible; r:7; }
/* R28: 호버 열 음영 — 현재 열 전체 밴드를 인디고 7% 으로 강조 */
.landing-page .cp:hover .cp__band, .landing-page .cp:focus .cp__band { fill:rgba(99,102,241,.07); }
/* R50: feature-panel 차트 수직 가이드선 (CSS-only hover · 스파크 미적용) */
.landing-page .cp__guide { visibility:hidden; stroke:#94a3b8; stroke-width:1; stroke-dasharray:2,3; pointer-events:none; }
.landing-page .cp:hover .cp__guide, .landing-page .cp:focus .cp__guide { visibility:visible; }
/* R54: 도넛 → feature__top 우측(기존 space-between 활용) — fp-chart-row 제거·차트 단독 100% */
.landing-page .fp-donut-wrap { flex-shrink:0; }
@media (max-width:640px) {
  .landing-page .feature__top { flex-direction:column; }
  .landing-page .fp-donut-wrap { margin-top:12px; }
}
/* R51: module-chart-panel 자립 박스·스코프 — data-only 계약(사용처 보정 CSS 0) */
.module-chart-panel { padding:22px 24px;background:#ffffff;border-radius:8px;border:1px solid #e2e8f0;box-shadow:0 4px 12px rgba(0,0,0,.06);box-sizing:border-box;font-family:-apple-system,'Noto Sans KR',sans-serif;font-size:16px;color:#1e293b;line-height:1.5; }
.module-chart-panel * { box-sizing:border-box; }
/* 홈: .card 안에서는 박스·폰트 중복 제거 — .card+.feature가 동일 값 공급·렌더 불변(padding:0 → .feature 22px 24px 그대로 발효) */
.landing-page .card .module-chart-panel { padding:0;background:none;border:none;border-radius:0;box-shadow:none;font-size:inherit;color:inherit;line-height:inherit; }
/* R54: 차트 폭=컨테이너 100%(R53 고정폭 철회) — .landing-page .chart-svg 기존 100% 규칙으로 충분 */
/* R4: 품목 탭 패널 show/hide */
.landing-page .chart-panel { display:none; }
.landing-page .chart-panel.on { display:block; }
.landing-page .item-tabs { display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px; }
.landing-page .itab { padding:6px 14px;font-size:13px;border-radius:20px;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;font-family:inherit; }
.landing-page .itab.on { background:#1e293b;color:#fff;border-color:#1e293b; } /* 2026-07-11 확정: 선택=중립 다크 채움 — 구 파랑 채움은 하락(파랑) 선택 시 ▼ 매몰·의미 충돌. 인지 최강+의미 중립 */
.landing-page .itab.on small.up { color:#f87171; }   /* 다크 배경 등락 문법(티커·R52 다크 툴팁과 동일 팔레트) */
.landing-page .itab.on small.down { color:#93c5fd; }

/* KPI 그리드 */
/* R13: grid-auto-rows:1fr — 행별 높이 균일(롤링·이중배지 유무 무관) */
.landing-page .board { display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:14px; }
@media(max-width:900px) { .landing-page .board { grid-template-columns:repeat(3,1fr); } }
@media(max-width:640px) { .landing-page .board { grid-template-columns:repeat(2,1fr); } }
/* R13: flex-column+height:100% — 카드가 그리드 셀 전체를 채우고 내부 요소 수직 배치 */
.landing-page .kpi         { padding:16px 18px;display:flex;flex-direction:column;height:100%;color:inherit; }
.landing-page .kpi__group  { font-size:13px;font-weight:700;color:var(--lp-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px; }
.landing-page .kpi__label  { font-size:15px;font-weight:700;color:var(--lp-text);margin-bottom:8px; }
.landing-page .kpi__price  { font-size:22px;font-weight:800;color:var(--lp-text);line-height:1.1; }
.landing-page .kpi__price .u { font-size:13px;font-weight:400;color:var(--lp-sec);margin-left:2px; }
.landing-page .kpi__chg    { font-size:13px;font-weight:700;margin-top:4px; }
.landing-page .kpi__dual   { display:flex;gap:6px;margin-top:6px;flex-wrap:wrap; }
.landing-page .kpi__dual span { font-size:12px;font-weight:700; }
.landing-page .kpi__spark  { margin:8px 0 4px;display:block; }
/* R11/R14: spark-area min-height 예약은 .kpi--has-spark 카드에만 적용
   → spark 전무 카드 40px 여백 소거 / 스파크 보유 카드 내 슬라이드 높이 균일 유지 */
.landing-page .kpi--has-spark .kpi__spark-area { min-height:40px; }
/* R13: margin-top:auto — ts를 카드 하단에 고정(내용 적은 카드는 여백으로 흡수) */
.landing-page .kpi__ts     { font-size:13px;color:var(--lp-muted);margin-top:auto;padding-top:6px; }
/* R24: 1주 소자 — 스파크 동일 소스·방향 색 일관 */
.landing-page .kpi__week        { font-size:11px;color:#64748b;margin-top:2px;line-height:1.4; }
.landing-page .kpi__week--up    { color:#dc2626; }
.landing-page .kpi__week--down  { color:#2563eb; }
/* R4: KPI 롤링 (다품목)
   R122(라이브 실증 — 모바일 카드 높이 출렁): display:none 전환은 "현재 슬라이드만 배치 참여"라
   슬라이드 높이가 다르면(긴 품목명 줄바꿈·추이선 유무) 카드가 3초마다 늘었다 줄고, 보드의
   grid-auto-rows:1fr이 그 출렁임을 전 행(금시세 등 정적 카드까지)에 전파했다.
   → 전 슬라이드를 같은 그리드 칸(1/1)에 겹쳐 상시 배치(카드 높이 = 최대 슬라이드로 고정·CLS 0)하고
   보이기만 visibility로 전환. 부수효과: display:none 소거 = 숨김 텍스트 SEO 우려 해소. */
.landing-page .kpi--multi .kpi__roll { display:grid; } /* R142b: relative 제거(구 절대배치 잔재) — 남아 있으면 전면 클릭 ::after의 기준이 카드가 아닌 롤 영역에 걸려 "일부만 링크"(라이브 실증). 기준=.card.kpi(relative) */
.landing-page .kroll { grid-area:1/1; visibility:hidden; opacity:0; transform:translateY(4px); transition:opacity .45s ease, transform .45s ease, visibility 0s linear .45s; } /* R125: 떠오름 */
.landing-page .kroll.on { visibility:visible; opacity:1; transform:none; transition:opacity .45s ease, transform .45s ease; } /* R142d(라이브 실증 — 전면 클릭이 슬라이드 영역에 갇힘): translateY(0)도 transform이라 ::after의 기준점을 앵커 자신으로 만든다 → none(항등)으로 교체. 떠오름 전환(4px→none 보간)은 동일 */
.landing-page .kroll__name { font-size:11px;font-weight:700;color:var(--lp-muted);letter-spacing:.03em;margin-bottom:2px; }

/* ── 무버 ─────────────────────────────────────────────────────────── */
.landing-page .movers       { display:grid;grid-template-columns:1fr 1fr;gap:16px; }
@media(max-width:640px) { .landing-page .movers { grid-template-columns:1fr; } }
.landing-page .mgroup       { overflow:hidden; }
.landing-page .mgroup__h    { padding:12px 18px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px; }
.landing-page .mgroup__h--up   { background:#fef2f2;color:#991b1b; }
.landing-page .mgroup__h--down { background:#eff6ff;color:#1e40af; }
.landing-page .mitem        { display:flex;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid var(--lp-subtle);color:inherit;transition:background .15s; }
.landing-page .mitem:last-child { border-bottom:0; }
.landing-page .mitem:hover  { background:var(--lp-subtle);color:inherit; }
.landing-page .mitem__rank  { font-size:14px;font-weight:800;color:var(--lp-muted);width:18px;flex-shrink:0; }
.landing-page .mitem__info  { flex:1; }
.landing-page .mitem__label { font-size:15px;font-weight:700;color:var(--lp-text); }
.landing-page .mitem__sub   { font-size:12px;color:var(--lp-sec); }
.landing-page .mitem__r     { text-align:right; }
.landing-page .mitem__chg   { font-size:15px;font-weight:800; }
.landing-page .mitem__px    { font-size:12px;color:var(--lp-muted); }
/* R6b: 미달 정직 문구 — 채우기 왜곡 금지 원칙(TOP3 미달 시 실 후보 수 노출) */
.landing-page .mitem__shortfall { font-size:12px;color:var(--lp-muted);padding:10px 16px;border-top:1px solid var(--lp-subtle); }

/* ── 즉답 밴드 ────────────────────────────────────────────────────── */
.landing-page .answers { display:grid;grid-template-columns:repeat(3,1fr);gap:14px; }
@media(max-width:820px) { .landing-page .answers { grid-template-columns:1fr 1fr; } }
@media(max-width:560px) { .landing-page .answers { grid-template-columns:1fr; } }
/* R4: a-in-a 해소 — 외부<div>+flex, 내부<a>로 분리, .afoot margin-top:auto */
.landing-page .acard  { padding:20px 22px;display:flex;flex-direction:column;color:inherit; }
.landing-page .acard__body { display:block;text-decoration:none;color:inherit;flex:1; }
.landing-page .atag   { display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px;margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em; }
.landing-page .atag--buy  { background:#fef2f2;color:#991b1b; }
.landing-page .atag--sell { background:#eff6ff;color:#1e40af; }
.landing-page .atag--low  { background:#f0fdf4;color:#14532d; }
.landing-page .aq     { font-size:15px;font-weight:700;color:var(--lp-text);margin-bottom:12px;line-height:1.4; }
.landing-page .arow   { display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:6px;background:var(--lp-subtle);margin-bottom:8px; }
.landing-page .arow:last-of-type { margin-bottom:0; }
.landing-page .arow__k { font-size:14px;color:var(--lp-sec); }
.landing-page .arow__v { font-size:17px;font-weight:800; }
.landing-page .afoot  { margin-top:auto;padding-top:10px;border-top:1px solid var(--lp-subtle);font-size:12px;color:var(--lp-muted);display:flex;justify-content:space-between;align-items:center; }
.landing-page .afoot a { font-size:13px;font-weight:700; }

/* ── 지역 관문 ────────────────────────────────────────────────────── */
.landing-page .region      { padding:24px; }
.landing-page .region__bar { display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px; }
/* R5: appearance:none + SVG 화살표 배경 — 브라우저 기본 화살표 제거 후 커스텀 */
.landing-page .region__sel { font-size:15px;font-weight:700;color:var(--lp-text);border:1px solid var(--lp-border);border-radius:8px;padding:10px 34px 10px 14px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%2364748b' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 12px center;background-size:16px 16px;appearance:none;-webkit-appearance:none;font-family:inherit;min-height:44px;min-width:140px;cursor:pointer; }
.landing-page .region__tabs { display:flex;gap:8px; }
.landing-page .rtab        { font-size:14px;font-weight:700;padding:10px 16px;border-radius:8px;border:1px solid var(--lp-border);background:#fff;color:var(--lp-sec);cursor:pointer;font-family:inherit;min-height:44px; }
.landing-page .rtab.on     { background:var(--lp-link);color:#fff;border-color:var(--lp-link); }
.landing-page .rlist       { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
@media(max-width:640px) { .landing-page .rlist { grid-template-columns:1fr; } }
.landing-page .rrow        { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--lp-blt);border-radius:8px;background:var(--lp-subtle);color:inherit; }
.landing-page .rrow:hover  { border-color:#3b82f6;background:#fff; }
.landing-page .rrow__name  { font-size:15px;font-weight:700;color:var(--lp-text); }
.landing-page .rrow__sub   { font-size:12px;color:var(--lp-sec);margin-top:2px; }
.landing-page .rrow__v     { font-size:17px;font-weight:800;text-align:right; }
.landing-page .rrow__badge { font-size:11px;font-weight:700;color:#14532d;background:#f0fdf4;padding:2px 7px;border-radius:4px;margin-left:6px; }
.landing-page .rpane       { display:none; }
.landing-page .rpane.on    { display:block; }

/* ── 가이드 카드 ──────────────────────────────────────────────────── */
.landing-page .guides      { display:grid;grid-template-columns:repeat(4,1fr);gap:12px; }
@media(max-width:820px) { .landing-page .guides { grid-template-columns:repeat(2,1fr); } }
@media(max-width:480px) { .landing-page .guides { grid-template-columns:1fr; } }
.landing-page .gcard       { padding:16px 18px;display:flex;flex-direction:column;gap:6px;color:inherit;min-height:104px; }
.landing-page .gcard__kicker { font-size:11px;font-weight:700;color:var(--lp-point);text-transform:uppercase;letter-spacing:.05em; }
.landing-page .gcard__title  { font-size:16px;font-weight:700;color:var(--lp-text);line-height:1.4; }
.landing-page .gcard__desc   { font-size:13px;color:var(--lp-sec);line-height:1.5;margin-top:auto; }

/* ── FAQ + 출처 ───────────────────────────────────────────────────── */
.landing-page .faq-grid    { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
@media(max-width:720px) { .landing-page .faq-grid { grid-template-columns:1fr; } }
.landing-page .faq         { padding:18px 20px; }
.landing-page .faq__q      { font-size:16px;font-weight:700;color:var(--lp-text);margin:0 0 8px;display:flex;gap:8px; }
.landing-page .faq__q .qmark { color:var(--lp-link);font-weight:800; }
.landing-page .faq__a      { font-size:15px;color:var(--lp-body);line-height:1.7;margin:0; }
.landing-page .faq__a b    { color:var(--lp-text);font-weight:700; }
.landing-page .sources     { margin-top:20px;padding:20px 24px; }
.landing-page .sources__title { font-size:14px;font-weight:700;color:var(--lp-sec);margin:0 0 12px;text-transform:uppercase;letter-spacing:.04em; }
.landing-page .src-list    { display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px; }
.landing-page .src-chip    { font-size:12px;font-weight:600;color:var(--lp-sec);background:var(--lp-subtle);border:1px solid var(--lp-blt);padding:5px 11px;border-radius:20px; }
.landing-page .disclaimer  { font-size:12px;color:var(--lp-muted);line-height:1.7;border-top:1px solid var(--lp-blt);padding-top:12px; }


/* R64: .module-chart-panel 스코프 범용 규칙 — .landing-page 없는 페이지(스포크·일반 콘텐츠)에서 동작 보장
   기존 .landing-page 스코프 무변경·추가만(기존 라인 변경 0). CSS 변수 정적 등가값 사용. */
.module-chart-panel .feature__top   { display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:14px; }
.module-chart-panel .feature__label { font-size:13px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px; }
.module-chart-panel .feature__price { font-size:34px;font-weight:800;color:#1e293b;line-height:1.05; }
.module-chart-panel .feature__price .u { font-size:14px;font-weight:400;color:#475569;margin-left:4px; }
.module-chart-panel .badges    { display:flex;gap:8px;margin-top:10px;flex-wrap:wrap; }
.module-chart-panel .badge     { display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:700;padding:4px 12px;border-radius:20px; }
.module-chart-panel .badge--up   { color:#dc2626;background:#fef2f2; }
.module-chart-panel .badge--down { color:#2563eb;background:#eff6ff; }
.module-chart-panel .badge small { font-size:11px;font-weight:400;opacity:.75; }
.module-chart-panel .chart-wrap { overflow-x:auto; }
.module-chart-panel .chart-svg  { display:block;width:100%;max-width:100%; }
.module-chart-panel .chart-svg--mob { display:none; }
@media (max-width:640px) {
  .module-chart-panel .chart-svg--desk { display:none; }
  .module-chart-panel .chart-svg--mob  { display:block; }
}
.module-chart-panel .legend     { display:flex;gap:16px;flex-wrap:wrap;margin:12px 0 0; }
.module-chart-panel .legend span { display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#475569; }
.module-chart-panel .legend i   { width:20px;height:0;border-top-width:2px;border-top-style:solid;display:inline-block; }
.module-chart-panel .cp { cursor:pointer; }
.module-chart-panel .cp .ct { visibility:hidden;pointer-events:none; }
.module-chart-panel .cp:hover .ct, .module-chart-panel .cp:focus .ct { visibility:visible; }
.module-chart-panel .cp circle { visibility:hidden; }
.module-chart-panel .cp:hover circle, .module-chart-panel .cp:focus circle { visibility:visible; r:7; }
.module-chart-panel .cp:hover .cp__band, .module-chart-panel .cp:focus .cp__band { fill:rgba(99,102,241,.07); }
.module-chart-panel .cp__guide { visibility:hidden; stroke:#94a3b8; stroke-width:1; stroke-dasharray:2,3; pointer-events:none; }
.module-chart-panel .cp:hover .cp__guide, .module-chart-panel .cp:focus .cp__guide { visibility:visible; }
.module-chart-panel .fp-donut-wrap { flex-shrink:0; }
@media (max-width:640px) {
  .module-chart-panel .feature__top { flex-direction:column; }
  .module-chart-panel .fp-donut-wrap { margin-top:12px; }
}
.module-chart-panel .chart-panel { display:none; }
.module-chart-panel .chart-panel.on { display:block; }

/* R68b (2026-07-11): rich가 module: chart 경로(figure 래퍼 .module-chart--rich)로 렌더될 때의 스코프 —
   패널(.module-chart-panel)·랜딩(.landing-page)과 동일 인터랙션 규칙. 부재 시 툴팁 전체 동시 표시·호버 불능. */
.module-chart--rich .chart-svg { display:block;width:100%;max-width:100%; }
.module-chart--rich .chart-svg--mob { display:none; }
@media (max-width:640px) {
  .module-chart--rich .chart-svg--desk { display:none; }
  .module-chart--rich .chart-svg--mob  { display:block; }
}
.module-chart--rich .cp { cursor:pointer; }
.module-chart--rich .cp .ct { visibility:hidden;pointer-events:none; }
.module-chart--rich .cp:hover .ct, .module-chart--rich .cp:focus .ct { visibility:visible; }
.module-chart--rich .cp circle { visibility:hidden; }
.module-chart--rich .cp:hover circle, .module-chart--rich .cp:focus circle { visibility:visible; r:7; }
.module-chart--rich .cp:hover .cp__band, .module-chart--rich .cp:focus .cp__band { fill:rgba(99,102,241,.07); }
.module-chart--rich .cp__guide { visibility:hidden; stroke:#94a3b8; stroke-width:1; stroke-dasharray:2,3; pointer-events:none; }
.module-chart--rich .cp:hover .cp__guide, .module-chart--rich .cp:focus .cp__guide { visibility:visible; }

/* ── scatter/range 호버 툴팁(2026-07-24 — rich .cp 체계 동형 재사용·신규 규칙 0) ──────────────
   RICHCT 지시서 §6: range(게이지)도 동일 .cp/.ct 체계 신설 — 기존 scatter 전용 6규칙에 스코프만
   확장(중복 최소화 판단: 신규 블록 복제 대신 선택자만 추가 → CSS 규칙 수 불변·바이트 최소 증가).
   range는 트랙 전체 단일 .cp(가이드선 없음) — cp__guide 관련 2규칙은 range엔 대응 요소가 없어
   무효과(no-op)이나, 별도 조건부 분리보다 통합 스코프가 더 단순·유지보수 우위로 판단해 포함. ── */
.module-chart--scatter .cp, .module-chart--range .cp { cursor:pointer; }
.module-chart--scatter .cp .ct, .module-chart--range .cp .ct { visibility:hidden;pointer-events:none; }
.module-chart--scatter .cp:hover .ct, .module-chart--scatter .cp:focus .ct,
.module-chart--range .cp:hover .ct, .module-chart--range .cp:focus .ct { visibility:visible; }
.module-chart--scatter .cp:hover .cp__band, .module-chart--scatter .cp:focus .cp__band,
.module-chart--range .cp:hover .cp__band, .module-chart--range .cp:focus .cp__band { fill:rgba(99,102,241,.07); }
.module-chart--scatter .cp__guide, .module-chart--range .cp__guide { visibility:hidden; stroke:#94a3b8; stroke-width:1; stroke-dasharray:2,3; pointer-events:none; }
.module-chart--scatter .cp:hover .cp__guide, .module-chart--scatter .cp:focus .cp__guide,
.module-chart--range .cp:hover .cp__guide, .module-chart--range .cp:focus .cp__guide { visibility:visible; }

/* ── R114: 오늘 오른/내린 시세 롤링 2+2 카드 (2026-07-12) ─────────────────────────
   데스크탑: .lp-updown 2열(상승그룹|하락그룹) × 각 그룹 .lp-updown__cards 2열 = 1행 4카드
   모바일  : .lp-updown 1열 스택 → 상승 2카드 1행, 하락 2카드 1행 */
.landing-page .lp-updown { display:grid;grid-template-columns:1fr 1fr;gap:20px; }
@media(max-width:640px) { .landing-page .lp-updown { grid-template-columns:1fr; } }
.landing-page .lp-updown__gh { font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;padding-left:2px; } /* R119: 13→16px(사용자 확정 최소 16) */
.landing-page .lp-updown__group--up .lp-updown__gh { color:#991b1b; }
.landing-page .lp-updown__group--dn .lp-updown__gh { color:#1e40af; }
.landing-page .lp-updown__cards { display:grid;grid-template-columns:1fr 1fr;gap:12px; }

/* ── R107h: hub-kpi-board — .landing-page 단독 룰 중화(허브 인라인 모듈 컨텍스트) ── */
/* .landing-page { background:var(--lp-bg); overflow-x:hidden } 이 허브 섹션 내부에서 발동하지 않도록 리셋. */
.landing-page.hub-kpi-board { background:transparent;overflow-x:visible; }
/* 하단 각주 스타일 (kpi-board.php module_kpi_board() 출력) */
.landing-page.hub-kpi-board .kpi-board__note { font-size:13px;color:#94a3b8;margin:8px 0 0; }

/* ── R115: 무버 슬라이드 스파크 — 높이 예약·SVG 비율 ──────────────────────────
   .kpi--has-spark .kpi__spark-area { min-height:40px } 는 R11/R14 룰(line 11520)이 이미 담당.
   무버 카드(.lp-updown 내 .kpi--multi.kpi--has-spark)는 동일 룰 재사용 — 추가 셀렉터 불필요.
   슬라이드별 spark SVG는 kpi-card.php _roll_sparks 배열로 주입(series=null → 빈 div · series 有 → SVG). */

/* ── R117: 허브 오른/내린 롤링 섹션 (2026-07-12) ───────────────────────────────
   updown-board 모듈 래퍼(.hub-updown) 중화 — hub-kpi-board 미러(배경·overflow 리셋).
   슬라이드 <a.kroll> 링크 스타일 리셋 — 상속 색·하이라이트 제거.
   display:none/block 제어는 기존 .landing-page .kroll / .kroll.on 룰 그대로 재사용. */
.landing-page.hub-updown { background:transparent;overflow-x:visible; }
.landing-page a.kroll { color:inherit;text-decoration:none; }

/* ── R125: 롤링 점 인디케이터 — "여러 슬라이드+현재 위치" 상시 신호(모션 아님) ── */
.landing-page .kroll-dots { display:flex;gap:5px;justify-content:center;margin-top:6px; }
.landing-page .kroll-dots span { width:5px;height:5px;border-radius:50%;background:#cbd5e1;cursor:pointer;transition:background .3s; } /* R142c3(사용자 확정): 크기 원복(5px)·상태는 색으로만 */
.landing-page .kroll-dots span:hover { background:#64748b; }
.landing-page .kroll-dots span.on { background:#1e293b; } /* R142c4: 활성 점만 최대 대비(중립 잉크색 — 등락 빨강/파랑과 비충돌) */

/* ── R142: 롤 카드 전면 클릭(stretched-link) — "보이는 슬라이드의 링크가 카드 전체를 덮는다" ──
   슬라이드 앵커 구조(내용-링크 일치)를 유지하면서 클릭 영역만 카드 전면으로 확장.
   점 인디케이터는 z-index 상위로 클릭 유지. */
.landing-page .card.kpi { position:relative; }
.landing-page a.kroll.on::after { content:""; position:absolute; inset:0; z-index:1; }
.landing-page .kroll-dots { position:relative; z-index:2; }

/* ==========================================================================
   dv-tier 발산 판정색 토큰(공유 SSOT) — 2026-07-17 B6 신설 · B17 재편성
   정본: 00-공통/평점-장단점-모듈-설계-정본.md §3·§8. 판정색(dv-tier)=등락색과 별개 의미축(혼용 금지·좋고나쁨).
   색 SSOT = .dv-tier-1..5 5개 클래스(타일/바/배지가 참조만). 소비 모듈 = review-panel·overall-score·rate-bar(아래).
   ========================================================================== */
/* 발산 판정색 토큰(공유 SSOT) — 낮음=적(1) → 높음=녹(5). --dv-accent(채움)·--dv-bg(배경)·--dv-fg(글자). */
.dv-tier-1 { --dv-accent:#b91c1c; --dv-bg:#fef2f2; --dv-fg:#b91c1c; }
.dv-tier-2 { --dv-accent:#ea580c; --dv-bg:#fff7ed; --dv-fg:#c2410c; }
.dv-tier-3 { --dv-accent:#ca8a04; --dv-bg:#fefce8; --dv-fg:#a16207; }
.dv-tier-4 { --dv-accent:#65a30d; --dv-bg:#f7fee7; --dv-fg:#4d7c0f; }
.dv-tier-5 { --dv-accent:#16a34a; --dv-bg:#f0fdf4; --dv-fg:#15803d; }

/* 인라인 순위 배지(표 셀·상품 행 "N위/430") — dv-tier 색 참조. */
.dv-rank-badge {
  display:inline-block; padding:3px 9px; border-radius:6px;   /* 2026-07-24 사용자: fresh/delta 배지와 동일 규격(알약→6px 사각·padding 3px 9px). 티어 색(dv-bg/fg/accent)은 유지 */
  background:var(--dv-bg,#f1f5f9); color:var(--dv-fg,#475569);
  border:1px solid color-mix(in srgb, var(--dv-accent,#94a3b8) 40%, transparent);
  font-size:12.5px; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap;
}

/* [색 설계 이력·복원 레시피 2026-07-17]
   1차 확정안(폐기 아님·계약 옵션으로 잔존): 판정 스케일 = dv-tier 5단 상시(타일/바/도넛 색=tier 토큰).
     복원 = 호스트 data에 color_mode:'tier' 1줄(모듈 코드 경로 유지됨).
   검토 후 미채택안(기록만): 한국형 5단 재정의 — tier5 #e43917 / 4 #f97316 / 3 #ca8a04 / 2 #60a5fa / 1 #2563eb.
   현행: color_mode 기본 'accent' = REHub 버밀리언 단색(--rv-accent) + 전 바 "길수록 좋음" 통일(우대갭=정직성 반전). */
/* B18(지휘자 증분⑥·⑥보완): 리뷰 모듈 단색 SSOT — 기본 color_mode='accent'(=--rv-accent 단색·REHub 버밀리언 #E43917). 트랙=#ddd(REHub).
   color_mode='tier'(이식처 선택·--tiercolor 모디파이어)=dv-tier 스케일 참조. dv-tier 토큰 5줄은 무변경(조건 칩 등 기존 사용처 유지). */
.module-review-panel, .module-overall-score, .module-rate-bar { --rv-accent:#e43917; --rv-track:#ddd; }

/* ── review-panel (조립 패널·부유 카드) ── B17 신설(REHub .rate_bar_wrap·R17 §3-6 사상) */
.module-review-panel {
  margin:24px 0 32px; padding:26px 28px;
  border-radius:var(--color-radius-lg); background:#fff;
  box-shadow:0 2px 20px rgba(0,0,0,.08);
}
.module-review-panel > .module-overall-score {
  margin-bottom:18px; padding-bottom:18px; border-bottom:1px solid var(--color-border);
}
.module-review-panel > .module-rate-bar { margin-top:0; }
.module-review-panel > .module-pros-cons { margin-top:22px; }
.module-review-panel__cta { margin-top:22px; display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.module-review-panel__cta-btn {
  display:inline-block; padding:11px 22px; border-radius:10px;
  background:var(--color-primary,#1d4ed8); color:#fff; font-weight:800; font-size:15px;
  text-decoration:none; transition:background .15s;
}
.module-review-panel__cta-btn:hover { background:var(--color-primary-dark,#1e40af); color:#fff; }
.module-review-panel__cta-notice { font-size:11.5px; font-weight:700; color:var(--color-text-muted); }
.module-review-panel__attribution { margin:18px 0 0; font-size:12px; color:var(--color-text-muted); line-height:1.5; }

/* ── overall-score (총점 헤더·tile 기본 / circle·badge 분기) ── B17 신설(REHub .overall-score·Metacritic 타일 사상) */
.module-overall-score { margin:0; }
/* B20(지휘자 증분·사용자 07-18·REHub .overall-score{float:left;margin:0 20px 10px 0} 정합): 타일 좌측 고정 + __meta 우측 잔여 폭·상단 정렬(교차축 flex-start — 요약 첫 줄이 타일 상단과 나란히·세로 가운데 금지). 가로 간격 20px·타일 하단(줄바꿈 시) 여백 10px=row-gap. 모바일=세로 스택(하단 640px 규칙). */
.module-overall-score__head { display:flex; flex-wrap:wrap; gap:10px 20px; align-items:flex-start; }
.module-overall-score__tile {
  flex:0 0 auto; min-width:100px; max-width:210px;
  border-radius:6px; overflow:hidden; text-align:center;
  background:var(--rv-accent,#e43917); box-shadow:var(--color-shadow-sm);   /* B18⑥: 리뷰 단색 rv-accent(REHub 버밀리언) */
}
/* B19(지휘자 재확정 07-18): 타일(tile 변형) 정사각 실루엣 — 폭 110px 고정(REHub 100px 사상·유료 테마 정사각 선호). 축약 라벨(≤12자·source)은 타일 폭 안 2줄 이내.
   circle/badge/donut는 자체 override 유지 → flex-basis/width 누출(원형 왜곡) 방지 위해 tile 변형에만 스코프. */
.module-overall-score--tile .module-overall-score__tile { flex:0 0 110px; width:110px; min-width:0; max-width:110px; }
/* 높이 복원(2026-07-18 사용자 확정: "스코어 박스 높이 이전으로") — 34~42px 축소분 철회.
   48px = 110px 폭에 "11위"(≈2.2em·탭숫자) 물리 수용 상한(52px는 폭 초과 — 넓은 타일 전용). 세로 padding 보강으로 이전 높이 근사. */
.module-overall-score--tile .module-overall-score__value { font-size:clamp(40px,8vw,48px); padding:12px 2px 10px; }
/* B22(07-18 사용자 확정·REHub 적층 분석): 캡션 바가 빨강 위 "띠"로 떠 보이는 편차 차단 — 타일=flex 세로 적층,
   숫자 영역=가변(중앙 배치), 검정 캡션=항상 최하단 전폭 밀착(REHub .overall+overall-text 블록 적층 동형). */
.module-overall-score--tile .module-overall-score__tile { display:flex; flex-direction:column; }
/* B22(07-18 사용자 확정·REHub 원문 채택: .overall-score{float:left;margin:0 20px 10px 0}) — 모바일 우측 여백 낭비 제거:
   요약문이 타일 옆에서 시작해 타일 아래로 자연 감김(전 뷰포트 동일·flex 줄바꿈 방식 폐기). */
.module-overall-score--tile .module-overall-score__head { display:block; }
.module-overall-score--tile .module-overall-score__head::after { content:""; display:block; clear:both; }
.module-overall-score--tile .module-overall-score__tile { float:left; margin:0 20px 10px 0; min-height:110px; }   /* B23(07-18 사용자): 내용이 짧으면 가로로 긴 직사각이 되는 편차 차단 — 최소 높이=폭(정사각 보장·초과는 세로형 허용) */
.module-overall-score--tile .module-overall-score__value { flex:1 1 auto; display:flex; align-items:center; justify-content:center; }
.module-overall-score--tile .module-overall-score__label { margin-top:auto; width:100%; box-sizing:border-box; }
.module-overall-score--tiercolor .module-overall-score__tile { background:var(--dv-accent,#64748b); }   /* B18⑥보완: color_mode=tier(이식처) */
.module-overall-score__value {
  display:block; padding:8px 0; color:#fff; font-weight:400;   /* B18⑦정정: REHub .overall 실측 weight 400(대형+가는 획)·padding 8px 0 */
  font-size:clamp(40px,8vw,52px); line-height:1; letter-spacing:0; font-variant-numeric:tabular-nums;
}
.module-overall-score__label {
  display:block; margin:0; padding:9px 10px;   /* B20(지휘자 증분·사용자 07-18): 캡션 바 세로 padding 6px→9px(REHub 6px 0보다 한 단계 높게). 하단 라운드=타일 래퍼 overflow:hidden+radius 6px가 처리(별도 radius 불요). */
  background:var(--color-text-primary,#1e293b); color:#fff;
  font-size:11.5px; font-weight:700; letter-spacing:.3px; line-height:1.35; word-break:keep-all;
}
.module-overall-score__label a { color:#fff; text-decoration:underline; text-underline-offset:2px; }
.module-overall-score__meta { flex:1 1 240px; min-width:0; text-align:left; }   /* B20(지휘자 증분·사용자 07-18): 우측 텍스트(요약·delta) 좌정렬 명시(상위 정렬 영향 차단·가운데 정렬은 타일 내부만·REHub 동형). */
/* 2026-07-24 사용자: 배지식(알약 아님·라운드 최소 6px)·등락 색 옅은 배경 틴트. */
.module-overall-score__delta { display:inline-block; margin-bottom:6px; padding:3px 9px; border-radius:6px; font-size:12.5px; font-weight:700; font-variant-numeric:tabular-nums; }
.module-overall-score__delta.chg-up { color:#d11507; background:rgba(209,21,7,.09); }
.module-overall-score__delta.chg-down { color:#1554d1; background:rgba(21,84,209,.09); }
.module-overall-score__delta-basis { font-weight:inherit; opacity:.72; }   /* 기준 라벨("전월 대비") — 본체와 동일 크기(사용자 확정)·같은 색 계열 옅게 구분 */
.module-overall-score__summary { margin:0; font-size:16px; font-weight:500; color:var(--color-text-body); line-height:1.65; word-break:keep-all; }   /* B37(07-18 사용자): 판정 요약문 = 본문급 가독(14.5→16px) — 페이지 핵심 결론 문단이라 축소 서체 부적합 */
.module-overall-score__attribution { margin:14px 0 0; font-size:12px; color:var(--color-text-muted); line-height:1.5; }
/* circle 변형(도넛 게이지·중앙 숫자·순수 CSS conic·JS 0·R18 §2-1) */
.module-overall-score--circle .module-overall-score__tile {
  width:100px; height:100px; min-width:0; max-width:none; padding:0; border-radius:50%;
  display:flex; align-items:center; justify-content:center; box-shadow:none;
  /* B20(지휘자 증분·사용자 07-18): 도넛 링=버밀리언(rv-accent)에서 분리 → 파랑 토큰(--color-primary·기존 팔레트 재사용·신규 색 0). 층위 분리 — 판정(순위/경쟁력)=rv-accent 타일·바 / 정보성 비율(비대면·무조건 %)=파랑 도넛. 중앙 숫자·트랙 #ddd·분모 캡션 무변경. */
  background:conic-gradient(var(--color-primary,#1d4ed8) calc(var(--dv-pct,100) * 1%), var(--rv-track,#ddd) 0);
}
.module-overall-score--tiercolor.module-overall-score--circle .module-overall-score__tile {
  background:conic-gradient(var(--dv-accent,#64748b) calc(var(--dv-pct,100) * 1%), var(--color-border,#e2e8f0) 0);
}
.module-overall-score--circle .module-overall-score__value {
  display:flex; align-items:center; justify-content:center; width:72px; height:72px; padding:0;
  border-radius:50%; background:#fff; color:var(--color-primary-dark,#1557b0); font-size:23px; letter-spacing:0;   /* B20fix(07-18 지휘자): 링=파랑(정보성 비율) 분리에 맞춰 중앙 숫자도 동일 파랑 축 — 버밀리언(판정 축)과 혼재 방지 */
}
.module-overall-score--tiercolor.module-overall-score--circle .module-overall-score__value { color:var(--dv-fg,#334155); }
/* B19(지휘자 증분·사용자 07-18): 도넛(circle) 채움도 바와 같은 리듬(1.1s·delay .2s) — @property로 --dv-pct 0→인라인값 스윕(JS 0). 미지원 브라우저=인라인 값 정적 렌더(폴백·최종 상태 정확). */
@property --dv-pct { syntax: '<number>'; initial-value: 0; inherits: true; }
.module-overall-score--circle .module-overall-score__tile { animation:module-donut-fill 1.5s ease-out .2s both; animation-play-state:paused; }   /* B27b(07-18 사용자): 1.1→1.5s 추가 감속. R7ANIM-FIX(07-18 사용자 실측 — JS 타이밍 경쟁으로 "이미 채워짐" 버그): 기본 paused로 경쟁 제거, .rv-anim-go(2클래스·특이성 0,0,3,0 > 이 규칙 0,0,2,0)만 재생. */
@keyframes module-donut-fill { from { --dv-pct:0; } }
/* badge 변형(소형 인라인 칩·표 셀/카드 헤더·R18 §2-1) */
.module-overall-score--badge { display:inline-block; margin:0; }
.module-overall-score--badge .module-overall-score__head { display:inline-flex; }
.module-overall-score--badge .module-overall-score__tile {
  min-width:0; max-width:none; border-radius:999px; overflow:visible; box-shadow:none;
}
.module-overall-score--badge .module-overall-score__value { padding:4px 14px; font-size:15px; line-height:1.5; letter-spacing:0; }
/* badge = 캡션 미표시(정보는 aria-label + 주변 문맥). circle = 링 하단 라벨 표시(B18 지휘자④ 도넛·calc 달성률 라벨). */
.module-overall-score--badge .module-overall-score__label { display:none; }
.module-overall-score--circle .module-overall-score__head { flex-direction:column; align-items:center; gap:8px 0; }
.module-overall-score--circle .module-overall-score__label { display:block; margin:0; padding:0; background:none; color:var(--color-text-body); text-align:center; font-size:12.5px; font-weight:700; letter-spacing:0; line-height:1.35; word-break:keep-all; }
.module-overall-score--circle .module-overall-score__label a { color:var(--color-primary-dark,#1e40af); text-decoration:underline dotted 1px; text-underline-offset:2px; }
/* B19: 도넛 분자/분모 캡션("{den}개 중 {num}개"·라벨 밑) — 표시 전용·num/den source 전달분만 렌더. */
.module-overall-score--circle .module-overall-score__fraction { display:block; margin-top:2px; text-align:center; font-size:11.5px; font-weight:700; color:var(--color-text-muted); font-variant-numeric:tabular-nums; }

/* ── rate-bar (항목 바·얇은 트랙↔채움 강대비·CSS 채움 애니메이션·JS 0 / dist 변형) ── B17 신설(REHub .rate-bar 사상) */
.module-rate-bar { list-style:none; margin:16px 0 0; padding:0; display:flex; flex-direction:column; gap:16px; }
.module-rate-bar__head { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:6px; min-height:20px; }   /* B31(07-18 사용자): min-height=전 바 행 head 높이 통일 floor → 트랙 시작선 정렬(라벨은 패널 폭에서 1줄·wrap 시에도 margin-bottom 6px 일정). */
.module-rate-bar__label { font-size:13.5px; font-weight:600; color:var(--color-text-body); word-break:keep-all; }
.module-rate-bar__label a { color:var(--color-primary-dark,#1e40af); font-weight:700; text-decoration:underline dotted 1px; text-underline-offset:3px; }
.module-rate-bar__label a:hover { text-decoration:underline; }
.module-rate-bar__value { font-size:14px; font-weight:800; color:var(--color-text-primary); font-variant-numeric:tabular-nums; white-space:nowrap; }
.module-rate-bar__track { height:13px; border-radius:7px; background:var(--rv-track,#ddd); overflow:hidden; }   /* B18⑥: 트랙 #ddd(REHub) */
.module-rate-bar__fill {
  display:block; height:100%; border-radius:7px; background:var(--rv-accent,#e43917);   /* B18⑥: 채움 단색 rv-accent */
  transform-origin:left center; animation:module-rate-bar-fill 1.5s linear .2s both;   /* B27b(07-18 사용자): 1.15→1.5s 추가 감속(도넛과 동일 리듬). R7ANIM-V(07-18): ease-out→linear(속도 통일·인라인 duration과 세트 — 도넛은 원형이라 무변경). */
  animation-play-state:paused;   /* R7ANIM-FIX(07-18 사용자 실측 — JS 타이밍 경쟁으로 "이미 채워짐" 버그): 기본 paused로 경쟁 제거, .rv-anim-go(2클래스·특이성 0,0,2,0 > 이 규칙 0,0,1,0)만 재생. */
}
.module-rate-bar--tiercolor .module-rate-bar__fill { background:var(--dv-accent,#94a3b8); }   /* B18⑥보완: color_mode=tier */
@keyframes module-rate-bar-fill { from { transform:scaleX(0); } }
@media (prefers-reduced-motion: reduce) { .module-rate-bar__fill, .module-overall-score--circle .module-overall-score__tile { animation:none; } }   /* B19: 도넛 채움도 감속 애니 비활성(접근성) */
/* B27(07-18 사용자): 채움 = 화면 노출 시 시작 — JS(1회 인라인 관찰자)가 wait 부여→진입 시 go. no-JS=클래스 없음=로드 애니(완전 렌더 불변). */
.module-rate-bar__fill.rv-anim-wait, .module-overall-score--circle .module-overall-score__tile.rv-anim-wait { animation-play-state:paused; }
.module-rate-bar__fill.rv-anim-go, .module-overall-score--circle .module-overall-score__tile.rv-anim-go { animation-play-state:running; }
.module-rate-bar__attribution { margin:14px 0 0; font-size:13px; color:var(--color-text-muted); line-height:1.5; }
/* dist 변형(분포 히스토그램·count 병기·앱마켓 사상) */
.module-rate-bar--dist .module-rate-bar__item { display:flex; align-items:center; gap:10px; }
.module-rate-bar--dist .module-rate-bar__head { flex:0 0 92px; display:block; margin:0; }
.module-rate-bar--dist .module-rate-bar__value { font-size:12.5px; }
.module-rate-bar--dist .module-rate-bar__track { flex:1 1 auto; height:10px; border-radius:5px; }
.module-rate-bar--dist .module-rate-bar__count { flex:0 0 auto; font-size:13px; font-weight:700; color:var(--color-text-muted); font-variant-numeric:tabular-nums; }

/* ── segment 변형(R19 (j)·서열 5구간+위치 핀·B18 신설) — B18⑥: 단일 hue rv-accent 명도 램프(좌 옅음→우 진함)+핀. tier 모드=dv-tier 셀. 서버 left inline·JS 0. ── */
.module-overall-score--segment { margin:0; }
.module-overall-score--segment .module-overall-score__head { display:block; }
.module-overall-score__seg { display:block; }
/* B38(07-18 사용자): 세그먼트 상단 좌측 타이틀 — rate-bar __head/__label과 동일 스펙(시각 언어 통일). 값=핀 정박 칩 전담(중복 0). */
.module-overall-score__seg-head { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:6px; min-height:20px; }
.module-overall-score__seg-label { font-size:13.5px; font-weight:600; color:var(--color-text-body); word-break:keep-all; }
.module-overall-score__seg-track { position:relative; display:flex; height:13px; border-radius:7px; overflow:hidden; box-shadow:var(--color-shadow-sm); }   /* B35(07-18 사용자): 바 지오메트리 통일(전 바 13px/라운드 7px)·overflow로 양끝 라운드 강제 보장 */
.module-overall-score__seg-cell { flex:1 1 20%; height:100%; background:var(--rv-accent,#e43917); }
.module-overall-score__seg-cell:nth-child(1) { background:color-mix(in srgb, var(--rv-accent,#e43917) 22%, #fff); }
.module-overall-score__seg-cell:nth-child(2) { background:color-mix(in srgb, var(--rv-accent,#e43917) 40%, #fff); }
.module-overall-score__seg-cell:nth-child(3) { background:color-mix(in srgb, var(--rv-accent,#e43917) 58%, #fff); }
.module-overall-score__seg-cell:nth-child(4) { background:color-mix(in srgb, var(--rv-accent,#e43917) 78%, #fff); }
.module-overall-score__seg-cell:nth-child(5) { background:var(--rv-accent,#e43917); }
.module-overall-score--tiercolor .module-overall-score__seg-cell { background:var(--dv-accent,#94a3b8); }   /* color_mode=tier */
.module-overall-score__seg-cell:first-child { border-radius:7px 0 0 7px; }   /* B35: 통일 라운드 7px */
.module-overall-score__seg-cell:last-child { border-radius:0 7px 7px 0; }
.module-overall-score__seg-pin { position:absolute; top:0; bottom:0; width:2px; transform:translateX(-50%); background:var(--color-text-primary,#1e293b); border-radius:1px; z-index:2; box-shadow:0 0 0 1px rgba(255,255,255,.6); }   /* B35(07-18 사용자): 핀=불릿 마커와 동일 스펙(트랙 안 봉쇄·돌출 0·흰 헤일로) — 세로선 언어 통일 */
/* R7ANIM-V(07-18 사용자 확정): 핀 = fill과 동일 원리(left:0→인라인 값 자동 수렴)·linear 이징(속도 통일)·duration=PHP 인라인(거리 비례). wait/go·reduce = 아래 통합 규칙. */
.module-overall-score__seg-pin { animation:rv-anim-pos 1.5s linear .2s both; animation-play-state:paused; }   /* R7ANIM-FIX(07-18): 기본 paused(경쟁 제거) — .rv-anim-go(2클래스)만 재생. */
@keyframes rv-anim-pos { from { left:0; } }
/* B32→B33(07-18 사용자): 서열 캡션 칩=핀 x 정박(흐름 유지·넘침 0). 글리프 문자 폐지 — 정박면 border(3px·핀색)=선과 픽셀 정합(칩 라운드/패딩 오프셋 0)·정박면 라운드 2px(곡률로 물러나지 않게). 정박 마진·--r=서버 inline(clamp [1,99]=핀과 동일 기준·100% 구분선도 라운드 안). */
.module-overall-score__seg-caption { display:block; width:max-content; max-width:100%; white-space:nowrap; margin-top:8px; padding:3px 10px; border-left:3px solid var(--color-text-primary,#1e293b); border-radius:2px 10px 10px 2px; background:color-mix(in srgb, var(--color-text-primary,#1e293b) 7%, #fff); font-size:12.5px; font-weight:600; color:var(--color-text-body); word-break:keep-all; line-height:1.35; transform:translateX(-2px); }   /* B34(07-18 사용자): 좌정박 border 중심↔핀 중심 광학 정합(-2px). R7ANIM-V: white-space:nowrap 추가(줄바꿈 방지 — 아래 calc 예약폭 산정의 전제조건). */
.module-overall-score__seg-caption--r { border-left:0; border-right:3px solid var(--color-text-primary,#1e293b); border-radius:10px 2px 2px 10px; transform:translateX(2px); }   /* B34: 우정박 대칭(+2px) */
.module-overall-score__seg-caption strong { color:var(--color-text-primary); font-weight:800; }
/* R7ANIM-V(2026-07-18 사용자 지적 반영 — 직전 45% 출발은 "중간에서 출발"로 라이브 실측 지적됨. 트랙 시작점 상당으로 교정):
   좌정박(margin-left 최종값)=from margin-left:0(핀과 동일 원리·오버플로 0·무변경).
   우정박(--r·margin-left:auto+margin-right 최종값)은 margin-left:auto가 키프레임 보간 불가(비수치 auto)라 margin-right를 대리 변수로 사용.
   기법: from margin-right:calc(100% - 예약폭px) — margin-left:auto 조합 시 실제 위치 = 예약폭(px) - 박스폭(px)(컨테이너 폭에 무관·항상 동일 절대 오프셋).
   예약폭 ≥ 실사용 최장 텍스트 박스폭이면 시작 시 margin-left ≥ 0 보장(오버플로 0)이며 거의 좌측 끝(트랙 시작점 상당)에서 출발.
   예약폭 산정(폰트 12.5px/700·padding 3px 10px·border-left 3px, 시스템 UI 폰트 스택 — 한글 1.0em·공백 .28em·숫자기호 .58em 근사):
     seg-caption 최장 실사용값 = core_deposit_percentile_label() "하위 49.9%"류(한글 2+공백 1+"49.9%" 5자) ≈ 2×12.5 + 1×3.5 + 5×7.25 = 64.75px 텍스트
     + padding 20px + border 3px = 87.75px → 안전 여유 포함 100px 예약. */
.module-overall-score__seg-caption { animation:rv-anim-cap-l 1.5s linear .2s both; animation-play-state:paused; }   /* R7ANIM-FIX(07-18): 기본 paused. */
.module-overall-score__seg-caption--r { animation:rv-anim-cap-r 1.5s linear .2s both; animation-play-state:paused; }   /* R7ANIM-FIX(07-18): --r도 animation 쇼트핸드를 재선언하므로(=play-state 재초기화) paused를 별도 명시 필수 — 생략 시 base 규칙의 paused가 무효화됨(동일 특이성·소스순서로 후행 규칙이 이김). */
@keyframes rv-anim-cap-l { from { margin-left:0; } }
@keyframes rv-anim-cap-r { from { margin-right:calc(100% - 100px); } }
.module-review-panel > .module-overall-score--segment { margin:14px 0 0; padding:0; border:0; }

/* ── bullet 변형(R19 (i)·막대+평균 마커+단일 hue 3밴드·B18 신설) — "평균 대비"의 정직 형식. B18⑥: 밴드=rv-accent 톤 명도 3단(단일 hue). ── */
.module-rate-bar--bullet { padding-bottom:0; }   /* B31: 절대배치 라벨 폐지 → 하단 예약 padding 불요(캡션 줄=정상 흐름). */
.module-review-panel > .module-rate-bar--bullet { margin-top:16px; }   /* B31(07-18 사용자): 불릿 ul을 일반 바 간격(gap 16px)과 동일 리듬으로 — 직전 바와 flush(0) 제거·수직 리듬 통일. */
.module-rate-bar--bullet .module-rate-bar__track--bullet {
  position:relative; height:13px; border-radius:7px; overflow:hidden;   /* B35(07-18 사용자): 바 지오메트리 통일(13px/7px·뭉텅한 5px 라운드 제거)·마커=트랙 안 봉쇄라 hidden 안전+양끝 라운드 보장 */
  background:linear-gradient(to right,
    color-mix(in srgb, var(--color-text-primary,#1e293b) 6%, #fff) 0 33.33%,
    color-mix(in srgb, var(--color-text-primary,#1e293b) 11%, #fff) 33.33% 66.66%,
    color-mix(in srgb, var(--color-text-primary,#1e293b) 17%, #fff) 66.66% 100%);   /* B32(07-18 사용자): 밴드=중립 슬레이트 3단(분홍 워시 제거) — accent 채움과 명확 대비 */
}
.module-rate-bar--bullet .module-rate-bar__fill { height:100%; margin-top:0; border-radius:7px; }   /* B32: 트랙 전 높이 채움(마커=z2 위) / B35: 라운드 7px 통일. R7ANIM-FIX3(2026-07-18 지휘자 실측 — 진범 확정): B32 시절 잔재이던 애니메이션 무효화 선언 제거 — 그 선언이 불릿 채움 애니메이션을 명시적으로 꺼서 항상 완성 상태로 보였음. 제거 후 base .module-rate-bar__fill 규칙의 animation(+기본 일시정지)이 그대로 상속·적용(캐스케이드 검증은 완료보고 참조). */
/* B31(07-18 사용자): 마커 선=트랙 안에 갇힌 얇은 짙은 세로선(돌출 0·z-index로 채움 위·흰 헤일로로 채움 대비). 라벨=트랙 밖 캡션 줄(__marker-cap)로 분리(마커와 같은 색 글리프 ▏로 연결·소형). */
.module-rate-bar__marker { position:absolute; top:0; bottom:0; width:2px; transform:translateX(-50%); background:var(--color-text-primary,#1e293b); border-radius:1px; z-index:2; box-shadow:0 0 0 1px rgba(255,255,255,.6); }
/* R7ANIM-V(07-18): 마커=핀과 동일 키프레임 재사용(left:0→인라인 값 수렴)·linear 이징(속도 통일)·duration=PHP 인라인(거리 비례). */
.module-rate-bar__marker { animation:rv-anim-pos 1.5s linear .2s both; animation-play-state:paused; }   /* R7ANIM-FIX(07-18): 기본 paused(경쟁 제거) — .rv-anim-go(2클래스)만 재생. */
/* B32→B33(07-18 사용자): 마커 캡션 칩=마커 x 정박(흐름 유지·넘침 0). 글리프 문자 폐지 — 정박면 border(3px·마커색)=선과 픽셀 정합(칩 라운드/패딩 오프셋 0)·정박면 라운드 2px. 칩 배경+소형=아래 행 제목(13.5px·무배경)과 분리. 정박 마진·--r=서버 inline(clamp [1,99]·100% 구분선도 라운드 안). */
.module-rate-bar__marker-cap { display:block; width:max-content; max-width:100%; white-space:nowrap; margin-top:6px; padding:2px 9px; border-left:3px solid var(--color-text-primary,#1e293b); border-radius:2px 10px 10px 2px; background:color-mix(in srgb, var(--color-text-primary,#1e293b) 7%, #fff); font-size:11.5px; font-weight:700; color:var(--color-text-primary,#1e293b); line-height:1.35; word-break:keep-all; font-variant-numeric:tabular-nums; transform:translateX(-2px); }   /* B34(07-18 사용자): 좌정박 border 중심↔마커 중심 광학 정합(-2px). R7ANIM-V: white-space:nowrap 추가(줄바꿈 방지 — 아래 calc 예약폭 산정의 전제조건). */
.module-rate-bar__marker-cap--r { border-left:0; border-right:3px solid var(--color-text-primary,#1e293b); border-radius:10px 2px 2px 10px; transform:translateX(2px); }   /* B34: 우정박 대칭(+2px) */
/* R7ANIM-V(07-18): 좌정박=seg-caption과 동일 keyframe(rv-anim-cap-l) 재사용(margin-left:0→오버플로 0, 텍스트 길이 무관 안전).
   우정박(--r)은 seg-caption--r과 예약폭이 달라 전용 키프레임 분리(marker-cap 텍스트가 더 긺 — "{저축은행|은행} 평균 연 N.NN%").
   예약폭 산정(폰트 11.5px/700·padding 2px 9px·border-left 3px, 근사 동일):
     최장 실사용값 = "저축은행 평균 연 10.25%"(한글 7+공백 3+"10.25%" 6자, source.php:2362 marker_label 실측 패턴 기준)
     ≈ 7×12(한글 1.0em 반올림) + 3×3.5(공백 .3em) + 6×6.3(숫자기호 .55em) = 84+10.5+37.8 = 132.3px 텍스트
     + padding 18px + border 3px = 153.3px → 안전 여유 포함 175px 예약(seg-caption보다 텍스트가 길어 100px보다 큰 값 사용). */
.module-rate-bar__marker-cap { animation:rv-anim-cap-l 1.5s linear .2s both; animation-play-state:paused; }   /* R7ANIM-FIX(07-18): 기본 paused. */
.module-rate-bar__marker-cap--r { animation:rv-anim-mcap-r 1.5s linear .2s both; animation-play-state:paused; }   /* R7ANIM-FIX(07-18): --r도 쇼트핸드 재선언(=play-state 재초기화)이라 paused 별도 명시 필수(seg-caption--r과 동일 이유). */
@keyframes rv-anim-mcap-r { from { margin-right:calc(100% - 175px); } }
/* R7ANIM-V(07-18): 4종 신규 대상 — prefers-reduced-motion=즉시 최종 상태(애니메이션 해제). 기존 fill/tile 규칙(위 L12005)은 무변경(추가만). */
@media (prefers-reduced-motion: reduce) {
  .module-overall-score__seg-pin, .module-rate-bar__marker,
  .module-overall-score__seg-caption, .module-rate-bar__marker-cap { animation:none; }
}
/* R7ANIM(2026-07-18): wait(paused)/go(running) — 기존 fill/tile 규칙(위 L12007-12008)과 동일 메커니즘·동일 리듬으로 4종 확장(추가 규칙·기존 라인 무변경). */
.module-overall-score__seg-pin.rv-anim-wait, .module-rate-bar__marker.rv-anim-wait,
.module-overall-score__seg-caption.rv-anim-wait, .module-rate-bar__marker-cap.rv-anim-wait { animation-play-state:paused; }
.module-overall-score__seg-pin.rv-anim-go, .module-rate-bar__marker.rv-anim-go,
.module-overall-score__seg-caption.rv-anim-go, .module-rate-bar__marker-cap.rv-anim-go { animation-play-state:running; }

/* ── review-panel 도넛 행(B18 지휘자④·"전체 중 %" 소형 도넛 나란히·65px) ── */
.module-review-panel__donuts { display:flex; flex-wrap:wrap; gap:18px 30px; margin-top:20px; padding-top:18px; border-top:1px solid var(--color-border); }
.module-review-panel__donut { flex:0 0 auto; }
.module-review-panel__donuts .module-overall-score { margin:0; }
/* B20(지휘자 증분·사용자 07-18 "너무 작다"): 패널 도넛 지름 66→88px(REHub 소형 65/대형 100의 중간·데스크톱)·링 두께 12px((88-64)/2)·중앙 % 숫자 비례 확대(16→19px·가독 우선·tabular-nums 유지). 라벨·분모 캡션 크기 무변경. */
.module-review-panel__donuts .module-overall-score--circle .module-overall-score__tile { width:100px; height:100px; }   /* B22(07-18 사용자): 88→100px — REHub 대형 게이지 실측 규격·타일/썸네일 110px과 리듬 통일 */
.module-review-panel__donuts .module-overall-score--circle .module-overall-score__value { width:72px; height:72px; font-size:22px; }
.module-review-panel__donuts .module-overall-score--circle .module-overall-score__label { max-width:130px; }
@media (max-width:640px) {   /* B22: 모바일 80px(두 도넛 2열 유지)·중앙 숫자 비례 */
  .module-review-panel__donuts .module-overall-score--circle .module-overall-score__tile { width:80px; height:80px; }
  .module-review-panel__donuts .module-overall-score--circle .module-overall-score__value { width:58px; height:58px; font-size:18px; }
}

/* ── review-links 층(B19·사용자 재설계) — 바 라벨 링크 폐지의 이관처(칩 버튼 행·바/도넛 직하·pros_cons 위).
   앵커=기존 .module-table__link 재사용(SSOT 1곳·표 밖이라 화살표 어포던스 자연 적용). 신규 클래스=래퍼 .module-review-links + external 고지 2종뿐. ── */
.module-review-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; padding-top:18px; border-top:1px solid var(--color-border); }
.module-review-links .module-table__link::after { content:' →'; margin-left:5px; font-weight:700; opacity:.6; display:inline-block; transition:transform .18s ease, opacity .18s ease; }
.module-review-links .module-table__link:hover::after { opacity:1; transform:translateX(2px); }
.module-review-links__item { display:inline-flex; align-items:center; gap:7px; }
.module-review-links__ad { flex:0 0 auto; font-size:10.5px; font-weight:800; letter-spacing:.02em; color:var(--color-text-muted); padding:2px 6px; border:1px solid var(--color-border); border-radius:5px; background:#fff; }
/* ── review-links 행 형태(B20·사용자 07-18) — [이미지 슬롯]+정보(명칭 굵게+info 소형)+라운드 CTA 훅. 칩(문자열 label만)과 하위호환 공존(행=flex-basis 100%·칩=inline). 신규 색 정의 0(기존 토큰만). ── */
/* B24(07-18 사용자): 패널 안 행 박스=이중 테두리라 제거 — 무테·무그림자·좌 들여쓰기 0(위 총점 타일과 같은 선상 시작).
   행이 여럿이면 사이 구분선 1개만. */
.module-review-links__row { flex:1 1 100%; display:flex; align-items:center; gap:14px; padding:12px 0; }
.module-review-links__row + .module-review-links__row { margin-top:-10px; }   /* 컨테이너 flex gap 10px 상쇄(행 밀착). 🚨2026-07-24: 구분선 border-top 제거 — 아래 B46 하단 inset 1줄이 구분선 담당(2겹 원인 제거) */
.module-review-links__thumb { flex:0 0 auto; width:110px; height:110px; object-fit:cover; border-radius:10px; border:1px solid var(--color-border); background:#fff; }   /* B22(07-18 사용자): 52→110px — 상품 이미지가 잘 보여야 클릭률↑·총점 타일 폭(110px)과 정렬 통일 */
/* 이미지 폴백 = 텍스트 미니 타일(card-spotlight __visual--fallback/__vname 사상 재사용·클래스 복제 없이 동급·중립 브랜드 틴트·aria-hidden). */
.module-review-links__vtile { flex:0 0 auto; width:110px; height:110px; box-sizing:border-box; display:flex; align-items:center; justify-content:center; padding:8px; border-radius:10px; background:var(--color-primary-light); overflow:hidden; }   /* B22: 썸네일과 동일 110px(타일 폭 정렬 통일) */
.module-review-links__vname { font-size:14px; font-weight:800; line-height:1.3; color:var(--color-primary-dark); text-align:center; word-break:keep-all; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }   /* B22: 110px 타일 비례 확대·3줄 clamp */
.module-review-links__body { flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:3px; }
.module-review-links__name { font-size:16px; font-weight:800; color:var(--color-text-primary); line-height:1.4; word-break:keep-all; }   /* B25(07-18 사용자): 14.5→16px(본문 기본 이상) */
.module-review-links__info { font-size:14px; font-weight:600; color:var(--color-text-muted); line-height:1.45; font-variant-numeric:tabular-nums; word-break:keep-all; }   /* B25: 12.5→14px */
.module-review-links__act { flex:0 0 auto; display:flex; align-items:center; gap:8px; }
/* B25(07-18 사용자: "훅 더 강하게") — 옅은 배경형→솔리드 채움 CTA(프라이머리 그라데이션+흰 글자·기존 토큰 재사용·신규 색 0). */
.module-review-links__cta,
.module-review-links a.module-table__link.module-review-links__cta {
  border-radius:999px; padding:10px 20px;
  background:linear-gradient(135deg, var(--color-primary,#1a73e8), var(--color-primary-dark,#1557b0));
  color:#fff; border:1.5px solid transparent; font-weight:800;
}
.module-review-links a.module-table__link.module-review-links__cta:hover { background:var(--color-primary-dark,#1557b0); color:#fff; }
/* ── B29(07-18) — 금리 가격 타이포(price/price_sub)+순위 미니 배지(.dv-rank-badge 재사용·dv-tier 색 SSOT)+신선도 신호(fresh)+행 호버 틴트.
   신규 색 정의 0(기존 --color-* 토큰·dv-tier 토큰만 참조). 배지=이름 옆(namerow)·가격=이름 아래(body). ── */
.module-review-links__namerow { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
/* 2026-07-24 사용자: overall-score__delta 배지와 동일 사이즈+등락 색(오르면 빨강 배경/글자·내리면 파랑). 방향 불명=중립 primary. */
.module-review-links__fresh { flex:0 0 auto; font-size:12.5px; font-weight:700; letter-spacing:.01em; padding:3px 9px; border-radius:6px; background:var(--color-primary-light); color:var(--color-primary-dark); white-space:nowrap; }
.module-review-links__fresh.chg-up { color:#d11507; background:rgba(209,21,7,.09); }
.module-review-links__fresh.chg-down { color:#1554d1; background:rgba(21,84,209,.09); }
.module-review-links__price { font-size:19px; font-weight:800; line-height:1.2; color:var(--color-primary-dark); font-variant-numeric:tabular-nums; word-break:keep-all; }
.module-review-links__price-sub { font-size:14px; font-weight:600; color:var(--color-text-muted); line-height:1.4; }   /* 2026-07-24 사용자: 12.5→14px(__info 라벨과 동급·가독성) */
/* B36(07-18 사용자): 행 호버=배경 틴트 폐지(좌 로고 타일 primary-light와 동색이라 타일이 묻힘) → 상하 1px 라인만 점등. inset 그림자 방식=레이아웃 불변·행 구분선 구조 무관·마지막 행도 하단 라인 표시.
   B46(2026-07-23 fix2 — 사용자: 상시 표시 요청): 상하 라인이 호버 시에만 나타나 평상시 행 경계가 안 보이던 결함 → 기본 상태부터 중립 회색(--color-border) 라인 상시 표시, 호버 시 프라이머리 강조색으로 전환(라인 유무 변화 0·색만 변화 = 레이아웃 불변 유지). */
/* 🚨2026-07-24 겹침 수리(사용자: 상품 2개 이상 시 경계 2겹 굵게): 행마다 상하(top+bottom) inset → 인접 행에서 위행 하단+아래행 상단 2줄 포개짐.
   → 하단 inset만 상시(=행간 구분선 1줄)·첫 행만 상단 추가(그룹 상단 경계). 인접 경계=위행 하단 1줄뿐 → 항상 1겹. */
/* 경계선 = 각 행의 "하단 inset 1줄"이 담당(첫 행만 상단 추가=그룹 상단). 인접 경계=윗행 하단선 1줄뿐 → 항상 1겹(2겹 방지).
   호버 시 공유 경계선 점등(2026-07-24 사용자: 위/아래 어느 상품 호버든 상하 라인 색 변경):
     · 자기 하단선(=아래쪽 경계) = :hover
     · 자기 위쪽 경계(=윗행의 하단선) = :has(+ :hover) 로 윗행 하단선을 점등 → 아래 상품 호버 시 상단 경계도 바뀜.
   레이아웃 불변(inset 그림자)·1겹 유지. */
.module-review-links__row { transition:box-shadow .18s ease; box-shadow:inset 0 -1px 0 var(--color-border); }
.module-review-links__row:first-child { box-shadow:inset 0 1px 0 var(--color-border), inset 0 -1px 0 var(--color-border); }
.module-review-links__row:hover { box-shadow:inset 0 -1px 0 var(--color-primary-dark,#1e40af); }
.module-review-links__row:first-child:hover { box-shadow:inset 0 1px 0 var(--color-primary-dark,#1e40af), inset 0 -1px 0 var(--color-primary-dark,#1e40af); }
.module-review-links__row:has(+ .module-review-links__row:hover) { box-shadow:inset 0 -1px 0 var(--color-primary-dark,#1e40af); }
.module-review-links__row:first-child:has(+ .module-review-links__row:hover) { box-shadow:inset 0 1px 0 var(--color-border), inset 0 -1px 0 var(--color-primary-dark,#1e40af); }
@media (max-width:640px) {
  .module-review-links .module-table__link { white-space:normal; }
  /* B22(07-18 사용자 확정): 전부 세로 스택=공간 낭비 → [썸네일+이름/설명 한 행] + 줄바꿈 [버튼 100% 너비] */
  .module-review-links__row { flex-direction:row; flex-wrap:wrap; align-items:center; }
  .module-review-links__body { flex:1 1 0; min-width:0; }   /* B41(07-18 사용자): 기준 폭 0 — 좁은 폭에서 본문이 썸네일 아래로 떨어지는 랩 방지(본문=항상 우측 축소·랩은 버튼 줄만) */
  .module-review-links__act { flex:1 1 100%; justify-content:stretch; }
  .module-review-links__cta { display:block; width:100%; text-align:center; align-self:auto; box-sizing:border-box; }
}

/* 반응형(모바일) — review-panel 패딩·overall-score 세로 스택 */
@media (max-width:640px) {
  .module-review-panel { padding:18px; }
  .module-overall-score__head { flex-direction:column; align-items:stretch; }
  .module-overall-score--tile .module-overall-score__tile { align-self:flex-start; }
  .module-overall-score--segment .module-overall-score__head { flex-direction:column; }
  .module-overall-score__value { font-size:36px; }
  .module-overall-score__meta { flex:1 1 auto; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   pros-cons + 서술문 분해(spcl 칩·mtrt 카드) + 권역/필터 스위처 밴드 + G5 카드 리스트
   — 2026-07-17 B9 신설. 판정색=dv-tier 토큰 참조(등락색과 별개). 서버 inline width·JS 0.
   ═══════════════════════════════════════════════════════════════════════════ */
.module-pros-cons { margin:18px 0; }
.module-pros-cons__grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.module-pros-cons__col { border:1px solid var(--color-border); border-radius:12px; padding:16px 18px; background:#fff; }
.module-pros-cons__col--pros { border-color:#bbf7d0; background:#f0fdf4; }
.module-pros-cons__col--cons { border-color:#fecaca; background:#fef2f2; }
.module-pros-cons__title { margin:0 0 10px; font-size:17px; font-weight:800; letter-spacing:-.01em; }
.module-pros-cons__col--pros .module-pros-cons__title { color:#15803d; }
.module-pros-cons__col--pros .module-pros-cons__title::before { content:"\2714"; margin-right:6px; }
.module-pros-cons__col--cons .module-pros-cons__title { color:#b91c1c; }
.module-pros-cons__col--cons .module-pros-cons__title::before { content:"\26A0"; margin-right:6px; }
.module-pros-cons__list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:9px; }
.module-pros-cons__item { position:relative; padding-left:22px; font-size:16px; line-height:1.6; color:var(--color-text-body); word-break:keep-all; }
.module-pros-cons__item::before { position:absolute; left:0; top:0; font-weight:800; }
.module-pros-cons__col--pros .module-pros-cons__item::before { content:"\FF0B"; color:#16a34a; }
.module-pros-cons__col--cons .module-pros-cons__item::before { content:"\FF0D"; color:#dc2626; }
.module-pros-cons__note { margin:12px 0 0; font-size:14px; color:var(--color-text-muted); }
@media (max-width:640px) { .module-pros-cons__grid { grid-template-columns:1fr; } }

/* 권역/필터 스위처 밴드(info-box body 안 렌더·상단 내비) */
.deposit-switch-band { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0; }
.deposit-switch-band .deposit-switch-lbl { font-size:12.5px; font-weight:800; color:var(--color-text-muted); margin-right:2px; }
.deposit-switch-band a, .deposit-switch-band .deposit-switch-cur {
  display:inline-block; padding:5px 13px; border-radius:999px; font-size:13px; font-weight:700; line-height:1.2;
  border:1px solid var(--color-border); text-decoration:none; }
.deposit-switch-band a { color:var(--color-text-body); background:#fff; }
.deposit-switch-band a:hover { border-color:#93c5fd; color:#1d4ed8; }
.deposit-switch-band .deposit-switch-cur { color:#fff; background:#1d4ed8; border-color:#1d4ed8; cursor:default; }

/* spcl_cnd 조건 칩 분해(원문 조각 보존 + %p 배지 + dv-tier 유형색) */
.deposit-cond-chips { display:flex; flex-wrap:wrap; gap:8px; margin:4px 0 12px; }
.deposit-cond-chip { display:inline-flex; align-items:center; gap:7px; max-width:100%; padding:7px 12px; border-radius:10px;
  border:1px solid var(--color-border); background:#fff; font-size:12.5px; line-height:1.4; color:var(--color-text-body); }
.deposit-cond-chip.dv-tier-1,.deposit-cond-chip.dv-tier-2,.deposit-cond-chip.dv-tier-3,.deposit-cond-chip.dv-tier-4,.deposit-cond-chip.dv-tier-5 {
  border-color:var(--dv-accent); background:var(--dv-bg); }
.deposit-cond-chip__type { font-weight:800; color:var(--dv-fg,#334155); white-space:nowrap; }
.deposit-cond-chip__text { word-break:keep-all; }
.deposit-cond-chip__bonus { flex:0 0 auto; padding:1px 7px; border-radius:6px; background:#1d4ed8; color:#fff; font-weight:800; font-size:11.5px; font-variant-numeric:tabular-nums; white-space:nowrap; }
.deposit-cond-raw { margin:0; font-size:12.5px; color:var(--color-text-muted); line-height:1.6; }
blockquote.deposit-spcl { margin:8px 0; padding:10px 14px; border-left:3px solid var(--color-border); background:#f8fafc; font-size:12.5px; color:var(--color-text-body); white-space:pre-line; }
/* mtrt_int 만기후 이자율 기간 구간 카드 */
.deposit-mtrt-cards { display:flex; flex-wrap:wrap; gap:10px; margin:6px 0 10px; }
.deposit-mtrt-card { flex:1 1 150px; border:1px solid var(--color-border); border-radius:10px; padding:11px 14px; background:#fff; }
.deposit-mtrt-card__k { font-size:12px; font-weight:700; color:var(--color-text-muted); }
.deposit-mtrt-card__v { font-size:15px; font-weight:800; color:var(--color-text-primary); margin-top:3px; }

/* G5 모바일 카드 리스트(은행 앱 리스트 문법) — 데스크톱=숨김(표 담당)·모바일=카드 */
.deposit-cardlist { display:none; }
.deposit-cardlist__item { display:block; border:1px solid var(--color-border); border-radius:12px; padding:14px 16px; margin:0 0 10px; background:#fff; text-decoration:none; color:inherit; }
.deposit-cardlist__top { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.deposit-cardlist__co { font-size:12px; font-weight:700; color:var(--color-text-muted); }
.deposit-cardlist__name { display:block; font-size:14.5px; font-weight:800; color:var(--color-text-primary); margin-top:2px; word-break:keep-all; }
.deposit-cardlist__rate { font-size:22px; font-weight:800; color:#d11507; font-variant-numeric:tabular-nums; white-space:nowrap; text-align:right; }
.deposit-cardlist__rate small { display:block; font-size:11.5px; font-weight:700; color:var(--color-text-muted); }
.deposit-cardlist__meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:9px; align-items:center; }
.deposit-cardlist__gap { font-size:12px; color:var(--color-text-muted); font-variant-numeric:tabular-nums; }
.deposit-cardlist__medal { font-size:15px; }
/* B13(2026-07-17 증분⑩) 클릭 어포던스 — meta 행 우측 정렬(margin-left:auto) */
.deposit-cardlist__go { margin-left:auto; font-size:13px; font-weight:700; color:var(--color-primary-dark); white-space:nowrap; transition:transform .15s ease; }
.deposit-cardlist__item:hover .deposit-cardlist__go { transform:translateX(2px); }
/* 밑줄 최종 차단(2026-07-17 사용자 원인 특정: `.module-info-box.module-info-box a`(0,2,1)가 카드 앵커에 승리)
   — 동급 이상 특이성으로 상쇄. 색도 카드 자체 팔레트 상속. */
.module-info-box.module-info-box a.deposit-cardlist__item,
.module-info-box.module-info-box .deposit-cardlist a { text-decoration:none; color:inherit; }
/* 호버 시각 강화(2026-07-17 사용자 확정): 리프트+프라이머리 보더+그림자 — 어포던스 이동과 결합 */
.deposit-cardlist__item { transition:box-shadow .15s ease, transform .15s ease, border-color .15s ease; }
.deposit-cardlist__item:hover { border-color:var(--color-primary); box-shadow:0 6px 18px rgba(0,0,0,.10); transform:translateY(-2px); }
.deposit-cardlist__item:hover .deposit-cardlist__name { color:var(--color-primary); }
@media (max-width:640px) { .deposit-cardlist { display:block; } }
/* B14(2026-07-17 ④ 사용자 확정) --grid 변형 — 3분할 칩(link-grid) 대체용 전 뷰포트 카드 그리드.
   .deposit-cardlist(기본 클래스) 위 modifier 클래스라 특이성(0,2,0)이 위 규칙들(0,1,0)을 이겨 전 뷰포트에서 항상 표시됨 —
   기존 .deposit-cardlist{display:none}(G5 표/카드 쌍) 규칙은 modifier 없는 호출부에 그대로 적용되어 무영향. */
.deposit-cardlist.deposit-cardlist--grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}
.deposit-cardlist.deposit-cardlist--grid .deposit-cardlist__item { margin: 0; }
@media (max-width:640px) {
  .deposit-cardlist.deposit-cardlist--grid { grid-template-columns: 1fr; }
}
/* B13(2026-07-17 증분⑨) 모바일 밑줄 잔존 — 테마 전역 a 밑줄 규칙(추정 .entry-content a 등 0,1,1)이
   .deposit-cardlist__item 단독(0,1,0)보다 특이성 우위 → .entry-content 접두로 특이성 상향(0,2,0). 자식 span도 명시 방어. */
.entry-content .deposit-cardlist__item,
.entry-content .deposit-cardlist__item:hover,
.entry-content .deposit-cardlist__item:visited,
.entry-content .deposit-cardlist__item span { text-decoration: none; }

/* B12(2026-07-17 사용자 확정): 상품명/기관명 텍스트 버튼 링크 — dp-prodlink(SSOT 1곳=core_deposit_product_link 헬퍼).
   '상세' 별도 열 폐지(모바일 가로스크롤 밖=CTR 저하 — 원래 금지 지침 복원) 대체책: 상품/기관명 자체를 버튼화.
   박스형 .module-table__link 와 달리 텍스트 버튼(볼드+화살표만·표 셀 과밀 방지). 수동 조립 링크 셀(기관명 등)도
   컬럼 'wrap'=>'dp-prodlink' 오버라이드로 동일 스타일 적용(전역 table 모듈 변경 없이 deposit 표 한정 격리). */
/* 특이성 상쇄(2026-07-17 사용자 적발): `.module-info-box.module-info-box a`(0,2,1) 류 전역 규칙이
   .dp-prodlink(0,1,0)를 이겨 표 안에서 버튼 스타일 미적용 — 동급 이상 셀렉터 병기로 확정. */
/* B18(2026-07-17 지휘자 증분①): 병기 앵커 `dp-prodlink module-table__link`에서 이 텍스트 버튼 시각 블록이
   버튼(.module-table__link L6431)을 덮어 하이브리드로 깨지는 문제 — 각 셀렉터에 :not(.module-table__link) 한정.
   병기 시 이 블록 미적용 → 버튼 스타일 단독 승리. 표 밖 단독(dp-prodlink만)은 기존 텍스트 버튼 유지. */
.dp-prodlink:not(.module-table__link),
.module-content a.dp-prodlink:not(.module-table__link),
.module-table a.dp-prodlink:not(.module-table__link),
.module-info-box.module-info-box a.dp-prodlink:not(.module-table__link),
.entry-content .module-section a.dp-prodlink:not(.module-table__link) {
    font-weight: 700;
    color: var(--color-primary-dark);
    text-decoration: none;
    padding: 2px 4px;
    border-radius: 4px;
    transition: background .15s, color .15s;
}
.dp-prodlink::after { content: '\2192'; margin-left: 3px; font-weight: 700; opacity: .6; display: inline-block; transition: transform .18s ease, opacity .18s ease; }   /* → 스타일(2026-07-17 사용자 확정)·B19: hover 이동 위해 transition 추가 */
/* 표 셀 안 화살표 제거(2026-07-17 사용자 확정 — 밀도: 화살표=히어로·단독 링크 전용) */
.module-table a.dp-prodlink::after { content: none; }
/* 표 안 버튼 스타일 = 기존 .module-table__link 클래스 재사용(2026-07-17 사용자 확정 — 레시피 복제 삭제·SSOT 1곳).
   헬퍼(core_deposit_product_link)가 `dp-prodlink module-table__link` 병기 출력 — dp-prodlink는 마커·화살표 제어 전용. */
/* deposit 표 링크 셀 좌정렬(전수 — 기존 :has 관례 L6427·L10697 준용) */
.module-table td:has(a.dp-prodlink) { text-align: left !important; }

/* 카드 리스트 래퍼와 다음 요소(표 캡션) 사이 여백(2026-07-17 사용자: 붙어 답답) */
.module-info-box:has(.deposit-cardlist) { margin-bottom: 18px; }
.dp-prodlink:not(.module-table__link):hover,
.module-content a.dp-prodlink:not(.module-table__link):hover,
.module-table a.dp-prodlink:not(.module-table__link):hover,
.module-info-box.module-info-box a.dp-prodlink:not(.module-table__link):hover,
.entry-content .module-section a.dp-prodlink:not(.module-table__link):hover {
    background: color-mix(in srgb, var(--color-primary-dark, #1e40af) 12%, #fff);   /* B40(07-18 사용자): primary-light(#e8f0fe)가 흰 배경과 미구분 → 확실한 틴트로 강화(클릭 가능 인지) */
    color: var(--color-primary-dark);
    text-decoration: none;
}
/* B19(지휘자 증분·사용자 07-18): 표 밖 단독 dp-prodlink hover 시각화 강화 — 화살표 opacity .6→1 + 우측 이동(배경 틴트/색은 위 블록 유지·신규 색 정의 0·병기 module-table__link 앵커는 무변경). */
.dp-prodlink:not(.module-table__link):hover::after { opacity: 1; transform: translateX(2px); }
.dp-prodlink:not(.module-table__link):active { opacity: .75; }

/* B13(2026-07-17 증분⑤⑦·07-17 개정) 스포트라이트 상품명 앵커(name_url) — 전 뷰포트 pill 버튼화
   (사용자 확정: 데스크톱도 클릭 가능성 시각화 — 모바일 문법 통일·크기만 비례). 화살표는 .dp-prodlink::after 공용. */
.module-card-spotlight__name a.dp-prodlink {
  display: inline-block; padding: 6px 16px;
  background: color-mix(in srgb, var(--color-primary) 10%, #fff);
  border-radius: 999px;
}
@media (max-width: 720px) {
  .module-card-spotlight__name a.dp-prodlink {
    display: block;
    width: max-content;
    max-width: 100%;
    margin: 8px 0 12px;   /* 2026-07-17 사용자 확정: 모바일 왼쪽 정렬(중앙→좌)·하단 여백 +8 */
    padding: 11px 22px;
    background: color-mix(in srgb, var(--color-primary) 13%, #fff);
    border-radius: 999px;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
    box-sizing: border-box;
    text-align: center;
  }
}

/* B10 문맥 링크(💡 함께 보면 좋아요) — 섹션 하단 데이터 파생 유도(info-box body 안 렌더) */
.deposit-ctxlink { margin:12px 0 0; padding:10px 14px; border-radius:10px; background:#f0f9ff; font-size:16px; line-height:1.6; color:var(--color-text-body); word-break:keep-all; }
.deposit-ctxlink__tip { font-weight:800; color:#0369a1; margin-right:4px; }
.deposit-ctxlink a { font-weight:700; color:#1d4ed8; text-decoration:none; }
.deposit-ctxlink a:hover { text-decoration:underline; }
/* B13(2026-07-17 증분④) 이중 테두리 제거 — deposit-ctxlink를 감싼 info-box 래퍼만 표적(:has, 전역 info-box 타입 무변경·다른 페이지 무영향).
   deposit-ctxlink 자체 border 제거(위 규칙에서 이미 반영) + 바깥 info-box 프레임(테두리·배경·패딩) 무력화 → 틴트 박스 1겹만 남음. */
.module-info-box:has(> .module-info-box__body > .deposit-ctxlink) {
  background: transparent; border: 0; padding: 0; margin: 0;
}
/* B13(2026-07-17 증분⑪) cardlist 래퍼 무테두리화 — 카드 자체(.deposit-cardlist__item)가 보더+라운드 완결 단위라
   바깥 info-box 프레임은 이중 갑갑 → :has()로 cardlist를 감싼 info-box만 투명 통과(--bare 개념·전역 타입 매핑 불변경). */
.module-info-box:has(> .module-info-box__body > .deposit-cardlist) {
  background: transparent; border: 0; padding: 0; margin: 0;
}

/* ══════════════════════════════════════════════════════════════════════════
   Wave1 R1-M1(2026-07-24) — core 공용 모듈 2건 증강(적대검증 통과 조건 반영)
   ══════════════════════════════════════════════════════════════════════════ */

/* ── A. table 모듈 bar 옵션 — 숫자 셀 배경 반투명 바(JS 0·koczip 패턴 흡수) ──
   td에 position:relative 부여(bar 옵션 열에만 클래스 부착 — 기존 열 무영향).
   cellbar = 열 최대값 대비 비례 폭(inline width%)·배경만(장식) → z-index 0.
   cellbar-text = 실 셀 내용(텍스트 그대로) → z-index 1로 배경 위에 노출.
   색 = 브랜드 주색(--color-primary) 10%(반투명 0.08~0.12 범위) — 신규 색상 하드코딩 없음. */
.module-table td.module-table__cell--bar { position: relative; }
.module-table__cellbar {
  position: absolute;
  top: 2px; left: 0; bottom: 2px;
  background: rgba(26, 115, 232, .12);   /* 🩹 2026-07-24 사용자 지적: color-mix 미지원 브라우저에서 미렌더("안 칠해짐")·색 편차 — 고정 rgba(브랜드 주색·호환 100%)로 교정 */
  border-radius: 0 4px 4px 0;            /* 🩹 2026-07-24: 끝 둥근 모서리+상하 2px 인셋 — "덜 칠해진 배경"이 아니라 "막대"로 읽히게(각주 D와 세트) */
  z-index: 0;
  pointer-events: none;
}
.module-table__cellbar-text {
  position: relative;
  z-index: 1;
  display: block;
}

/* ── B. kpi-board hero 카드 — 첫 카드 대형화(업계 3단 적층 흡수) ──
   kpi-card.php 가 data['hero']===true 일 때만 부착하는 단일 클래스. 그리드 2칸 스팬 +
   값(kpi__price) 폰트 확대 — hero 미부착 카드·보드는 완전 무변화(회귀 0). */
.landing-page .kpi--hero { grid-column: 1 / -1; }   /* 🩹 2026-07-24: span 2는 모바일 1열 그리드에서 암시적 트랙 생성→가로 넘침(깨짐) — 전폭(1/-1)은 어떤 열 수에서도 안전 */
.landing-page .kpi--hero .kpi__price { font-size: 30px; }


/* ══════════════════════════════════════════════════════════════════════════════
   ▼▼▼ 신규 승격 5종 — 경계 시작 (2026-08-01) ▼▼▼
   ──────────────────────────────────────────────────────────────────────────────
   승격 5종  card-grid-page · card-fan · card-holo · energy-symbol · type-relation
   근거      TCGGrail/_시안/모듈매핑표-전22장-20260801.md §5 (598구역 전수 판정)
   출처 조각 TCGGrail/theme-child/assets/css/_tcggrail.css §B
             + _holo.css · _holo-popup.css (원전 이식분)
             + _시안/tcggrail-fallback.html (그림 없는 카드 면 = .pc)
   ──────────────────────────────────────────────────────────────────────────────
   🔒 이 구획 «위»의 기존 라인은 한 줄도 바뀌지 않았다 — 말미 추가만이다.
   🔒 클래스 이름은 시안 이름이 아니라 modules.css BEM 표준으로 옮겨 적었다.
      시안의 .cg / .fan / .lk 같은 짧은 이름은 서버에서 다른 부품과 부딪힌다.
   🔒 data-only 계약 — 사용처에서 보정 CSS 를 쓰게 되면 그것은 그 모듈의 결함이다.
   ⚠️ 이 구획 끝의 «경계 가드»를 지우지 마라 — 원전 이식분이 bare .card 를 잡는데
      프레임워크에도 랜딩용 .card 가 이미 있다(자세한 사유는 그 자리 주석 참조).
   ══════════════════════════════════════════════════════════════════════════════ */


/* ── §신규승격-1  card-fan : 대표 3장을 부채로 + 가운데 항목 정보 띠 ──
   쓰는 곳: 허브·필라·렌즈·조합·세트·작가·순위 상단. JS 없음(전부 CSS). */
.module-card-fan { display: grid; gap: 9px }
.module-card-fan__stage {
  display: flex; justify-content: center; align-items: flex-end;
  gap: 0; padding: 8px 0 4px; perspective: 1000px;
}
.module-card-fan__card {
  position: relative; display: block; text-decoration: none;
  width: 132px; aspect-ratio: var(--module-card-fan-aspect, 745/1040); border-radius: 9px;
  border: 1px solid var(--module-line-2, #d7dde6);
  background-size: cover; background-position: center;
  box-shadow: 0 10px 22px -10px rgba(0,0,0,.5);
  transform-origin: 50% 100%;
  transition: transform .26s cubic-bezier(.18,.75,.28,1), box-shadow .26s, filter .26s;
}
.module-card-fan__card:nth-child(1) { transform: rotate(-9deg) translateX(16px) }
.module-card-fan__card:nth-child(2) { transform: translateY(-10px) scale(1.06); z-index: 2 }
.module-card-fan__card:nth-child(3) { transform: rotate(9deg) translateX(-16px) }
.module-card-fan__stage:hover .module-card-fan__card:nth-child(2),
.module-card-fan__card:hover {
  transform: translateY(-24px) rotateX(9deg) scale(1.1);
  box-shadow: 0 26px 40px -12px rgba(0,0,0,.62); z-index: 3;
}
/* 그림이 없는 사이트·항목 — 빈 네모 대신 이름을 얹은 텍스트 카드로 그린다 */
.module-card-fan__card--bare {
  display: grid; place-items: center; padding: 8px;
  background: var(--module-surface-2, #eef1f6);
}
.module-card-fan__card-name {
  font-size: 13px; font-weight: 800; line-height: 1.35; text-align: center;
  color: var(--module-ink-2, #3f4859);
  display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
}
.module-card-fan__caption {
  text-align: center; font-size: 13px; color: var(--module-muted, #5c6779);
}
/* 가운데 항목의 «개별 정보 띠» — 부채만 두면 무슨 항목인지 알 수 없다 */
.module-card-fan__facts {
  display: flex; flex-wrap: wrap; gap: 3px 12px; padding: 9px 11px;
  border-radius: 10px; font-size: 13px;
  background: var(--module-surface, #fff);
  border: 1px solid var(--module-line-2, #d7dde6);
  color: var(--module-ink-2, #3f4859);
}
.module-card-fan__fact-title { flex: 1 0 100%; color: var(--module-muted, #5c6779) }
.module-card-fan__fact-title b { color: var(--module-ink, #12161f); font-weight: 800 }
@media (prefers-reduced-motion: reduce) {
  .module-card-fan__card { transition: none }
}


/* ── §신규승격-2  card-grid-page : 썸네일 격자 + 넘김 + 잔여 목록 ──
   🔒 주소는 하나 · 화면에서만 N개씩 넘긴다(정본 5-r).
      「N개가 모두 이 페이지에 있다」고 적으려면 실제로 N행이 마크업에 있어야 하고,
      전량 내장 경계는 약 1,000행이다. 그 이상은 문구를 «상위 N + 나눠 보기»로 바꾼다.
      그림은 첫 화면 몫만 담고 나머지는 이름·수치 «행»으로 둔다(20MB 방지).
   짝 JS: assets/js/card-grid-page.js */
/* 간격·바깥 여백 = 시안 `.oppo`·`.oppo__grid` 실측 그대로(2026-08-03 대조 이식).
   전에는 gap 7px 였다. 시안은 12px 다 — 7px 에서는 카드 테두리끼리 붙어 «한 덩어리»로
   읽히고, 순번 배지(왼쪽 위)가 옆 카드 모서리에 닿는다. 블록 위 여백 14px 도 시안값이며,
   없으면 앞 문단과 격자가 한 상자처럼 보여 «어디부터 목록인지»가 사라진다(항목 8 경계·간격). */
.module-card-grid-page { margin-top: 14px }
.module-card-grid-page__grid {
  display: grid; grid-template-columns: repeat(10, 1fr); gap: 12px;
}
.module-card-grid-page__grid > * { min-width: 0 }
@media (max-width: 1100px) { .module-card-grid-page__grid { grid-template-columns: repeat(8, 1fr) } }
@media (max-width: 860px)  { .module-card-grid-page__grid { grid-template-columns: repeat(6, 1fr) } }
@media (max-width: 560px)  { .module-card-grid-page__grid { grid-template-columns: repeat(4, 1fr) } }
.module-card-grid-page__thumb {
  position: relative; display: block; aspect-ratio: var(--module-card-grid-page-aspect, 745/1040);
  border-radius: 6px; border: 1px solid var(--module-line-2, #d7dde6); overflow: hidden;
  transition: transform .18s, border-color .18s, box-shadow .18s;
}
.module-card-grid-page__thumb img { width: 100%; height: 100%; object-fit: cover; display: block }
.module-card-grid-page__thumb:hover {
  transform: translateY(-9px) scale(1.09); border-color: var(--module-accent, #5747e0);
  z-index: 5; box-shadow: 0 18px 30px -10px rgba(0,0,0,.6);
}
/* 순번·값 배지 = 시안 `.oppo__n` 실측(왼쪽 위 5px · padding 1px 6px · 표 숫자 정렬).
   표 숫자 정렬(tabular-nums)이 있어야 1 과 11 의 자릿수가 흔들리지 않는다. */
.module-card-grid-page__rank,
.module-card-grid-page__metric {
  position: absolute; font-size: 13px; line-height: 1.45; font-weight: 800; color: #fff;
  border-radius: 5px; padding: 1px 6px; z-index: 2; pointer-events: none;
  font-variant-numeric: tabular-nums;
}
.module-card-grid-page__rank   { top: 5px; left: 5px;  background: rgba(0,0,0,.62) }
.module-card-grid-page__metric { bottom: 5px; right: 5px; background: rgba(226,60,66,.9) }
/* 이름 띠 (name_strip 옵션) = 시안 `.oppo__t` 실측 그대로.
   썸네일만 늘어놓으면 그림을 아는 사람만 목록을 읽을 수 있다 — 아래 띠가 그 물음을 없앤다. */
.module-card-grid-page__name {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; pointer-events: none;
  padding: 3px 5px; font-size: 11px; font-weight: 700; line-height: 1.35;
  background: linear-gradient(transparent, rgba(0,0,0,.78)); color: #fff; text-align: center;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
/* 이름 띠가 켜지면 값 배지가 그 띠와 겹친다 — 배지를 위 오른쪽으로 옮긴다(둘 다 살린다) */
.module-card-grid-page--named .module-card-grid-page__metric { top: 5px; bottom: auto; right: 5px }
/* 🖼️ 그림 없는 칸 — 정본 폴백 부품(.noimg · 회색 판)을 격자 칸 크기에 맞춰 세운다 (2026-08-04).
   새 모양을 만들지 않는다: 골격(이름 위 · 「No image」 가운데 · 세트·번호 아래)은 시안
   `.row__p--none .noimg` 와 같고, 글자 크기만 격자 칸(약 89px) 자리에 맞춰 키웠다.
   🔒 칸 자신이 이미 테두리·둥근 모서리를 갖고 있다 — 부품은 그 안을 채우기만 하고 제 테두리를
      다시 그리지 않는다(이중 테두리 금지 · 앱층 시각 시안 정본). */
.module-card-grid-page__fb { position: absolute; inset: 0; display: block; overflow: hidden }
.module-card-grid-page__fb .noimg {
  display: grid; grid-template-rows: auto 1fr auto; gap: 2px;
  width: 100%; height: 100%; aspect-ratio: auto; text-align: center; overflow: hidden;
  background: var(--module-surface-2, #eef1f6);
  /* 위 여백 = 순번·값 배지가 앉는 자리를 미리 비운다 — 안 비우면 이름이 배지 뒤로 들어가 잘린다 */
  padding: 24px 5px 5px;
}
.module-card-grid-page__fb .noimg__hd { display: block; min-width: 0 }
.module-card-grid-page__fb .noimg__n {
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  font-size: 10px; font-weight: 800; line-height: 1.2; color: var(--module-ink-2, #3f4859);
}
.module-card-grid-page__fb .noimg__art { display: grid; place-items: center; min-height: 0 }
.module-card-grid-page__fb .noimg__m {
  font-size: 8.5px; font-style: normal; line-height: 1.1; color: var(--module-muted, #5c6779);
}
.module-card-grid-page__fb .noimg__ft { display: flex; justify-content: space-between; gap: 2px; min-width: 0 }
.module-card-grid-page__fb .noimg__set {
  font-size: 8px; font-weight: 700; line-height: 1.1; color: var(--module-muted, #5c6779);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 64%;
}
.module-card-grid-page__fb .noimg__c {
  font-size: 8px; font-style: normal; line-height: 1.1; color: var(--module-muted, #5c6779);
}
/* 폴백 판은 «그림»이 아니라 «글»이다 — 크게 들리면 글자가 흔들려 읽힌다. 들림을 줄인다. */
.module-card-grid-page__thumb--fb:hover { transform: translateY(-4px) scale(1.03) }
/* 넘김 */
.module-card-grid-page__pager {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-top: 11px; flex-wrap: wrap;
}
.module-card-grid-page__pager-note { font-size: 15px; color: var(--module-muted, #5c6779) }
.module-card-grid-page__pages { display: flex; gap: 5px; flex-wrap: wrap }
.module-card-grid-page__page {
  min-width: 31px; height: 31px; display: grid; place-items: center; border-radius: 7px;
  font-size: 13.4px; font-weight: 700; text-decoration: none;
  border: 1px solid var(--module-line-2, #d7dde6);
  background: var(--module-surface, #fff); color: var(--module-ink-2, #3f4859);
}
/* 현재 쪽 = «칠한 판»이다 — 시안 `.pnum a.on{background:var(--acc);color:#fff}` 실측.
   테두리 색만 바꾸면(이전 규칙) 옆 단추와 1px 차이라 어느 쪽에 서 있는지 한눈에 안 잡힌다. */
.module-card-grid-page__page--on {
  background: var(--module-accent, #5747e0);
  border-color: var(--module-accent, #5747e0); color: #fff;
}
.module-card-grid-page__page:hover { border-color: var(--module-accent, #5747e0) }
/* 접힌 자리 «…» — 시안 `.pnum` 안 생략 표시(가운데 정렬·흐린 색). 단추가 아니므로 테두리가 없다. */
.module-card-grid-page__gap {
  align-self: center; color: var(--module-muted, #5c6779); font-size: 13.4px;
}
/* 잔여 «행» — 그림 없이 이름·분류·수치만 */
.module-card-grid-page__rows {
  border: 1px solid var(--module-line, #e3e8ef); border-radius: 10px;
  background: var(--module-surface-2, #eef1f6); margin-top: 12px; overflow: hidden;
}
.module-card-grid-page__row {
  display: grid; grid-template-columns: 56px minmax(0,1fr) 92px 78px 62px;
  gap: 10px; align-items: center; padding: 7px 12px; font-size: 15px;
  border-top: 1px solid var(--module-line, #e3e8ef);
  color: var(--module-ink-2, #3f4859); text-decoration: none;
}
.module-card-grid-page__row:first-child { border-top: 0 }
.module-card-grid-page__row:hover { background: var(--module-surface, #fff); color: var(--module-ink, #12161f) }
.module-card-grid-page__row > * { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap }
.module-card-grid-page__row-rank { font-size: 13px; color: var(--module-muted, #5c6779); font-variant-numeric: tabular-nums }
.module-card-grid-page__row-name { font-weight: 700; color: var(--module-ink, #12161f) }
.module-card-grid-page__row-sub  { font-size: 13px; color: var(--module-muted, #5c6779) }
.module-card-grid-page__row-metric { font-weight: 800; text-align: right; font-variant-numeric: tabular-nums }
.module-card-grid-page__row-tail   { font-size: 13px; color: var(--module-muted, #5c6779); text-align: right }
/* 「값만 있는 수치」에 라벨을 붙인다 — 숫자만 있으면 무슨 수인지 알 수 없다 */
.module-card-grid-page__row-metric small {
  font-size: 13px; font-weight: 700; color: var(--module-muted, #5c6779);
}
.module-card-grid-page__note {
  margin-top: 10px; font-size: 13px; color: var(--module-muted, #5c6779); line-height: 1.6;
}
@media (max-width: 700px) {
  .module-card-grid-page__row { grid-template-columns: 46px minmax(0,1fr) 58px; row-gap: 2px }
  .module-card-grid-page__row-sub { grid-column: 2/4 }
  .module-card-grid-page__row-tail { display: none }
}


/* ── §신규승격-3  type-relation : 작용하는 쪽 → 우리 → 작용받는 쪽 3칸 흐름도 ──
   쓰는 곳: 상성·인과·전후 관계를 가진 구역. JS 없음(전부 CSS). */
.module-type-relation {
  display: grid; grid-template-columns: 1fr auto 1fr auto 1fr;
  gap: 10px; align-items: stretch;
}
.module-type-relation > * { min-width: 0 }
.module-type-relation__cell {
  text-align: center; padding: 14px 12px; border-radius: 10px;
  border: 1px solid var(--module-line-2, #d7dde6);
  background: var(--module-surface, #fff);
}
.module-type-relation__cell--self { border-color: var(--module-accent, #5747e0) }
.module-type-relation__cell--weak { border-color: rgba(226,60,66,.45) }
.module-type-relation__cell--strong { border-color: rgba(61,214,140,.45) }
.module-type-relation__role {
  display: block; font-size: 13px; font-weight: 800; letter-spacing: .05em;
  color: var(--module-muted, #5c6779); margin-bottom: 7px;
}
.module-type-relation__syms { display: flex; justify-content: center; gap: 5px; margin-bottom: 6px }
.module-type-relation__value {
  display: block; font-size: 31px; font-weight: 800; letter-spacing: -.035em; line-height: 1.05;
}
.module-type-relation__value small {
  font-size: 15px; font-weight: 700; color: var(--module-muted, #5c6779); margin-left: 4px;
}
.module-type-relation__desc {
  display: block; font-size: 14px; color: var(--module-ink-2, #3f4859); margin-top: 4px; line-height: 1.5;
}
.module-type-relation__media { display: grid; place-items: center; margin-top: 8px }
.module-type-relation__img {
  display: block; width: 104px; aspect-ratio: var(--module-type-relation-aspect, 745/1040);
  border-radius: 7px; border: 1px solid var(--module-line-2, #d7dde6);
  background-size: cover; background-position: center;
}
/* 흐름 화살표 — 여기는 «인과»라 화살표가 맞다(대조가 아니다).
   획을 SVG 로 그린다 — 글자 → 는 글꼴이 굵기를 정해 키워도 가늘다. */
.module-type-relation__arrow { width: 44px; height: 38px; display: grid; place-items: center; color: var(--module-muted, #5c6779) }
.module-type-relation__arrow svg {
  width: 100%; height: 100%; fill: none; stroke: currentColor;
  stroke-width: 3; stroke-linecap: round; stroke-linejoin: round;
}
@media (max-width: 900px) {
  .module-type-relation { grid-template-columns: 1fr }
  /* 세로로 쌓이면 흐름 화살표는 «아래»를 가리킨다 — 흐름이라 방향이 있기 때문이다 */
  .module-type-relation__arrow { width: 38px; height: 34px; margin: 0 auto }
  .module-type-relation__arrow svg { transform: rotate(90deg) }
}


/* ── §신규승격-4  energy-symbol : 기호 배지(원 바탕 + 흰 문양) ──
   🔒 이모지가 아니라 «인쇄 규격»(원 바탕 + 흰 문양)을 따른 도형이다.
      이모지는 기기마다 그림이 달라 기호로 못 쓴다(사용자 확정 2026-07-30).
   🔒 문양 자체는 이 파일에도 모듈에도 없다 — 아이템 데이터층이 공급한다. */
.module-energy-symbol {
  position: relative; display: inline-grid; place-items: center; flex: 0 0 auto; vertical-align: -.15em;
}
.module-energy-symbol svg { width: 100%; height: 100%; display: block }
/* 문양표에 없는 키 — 지어내지 않고 «모른다»를 화면에 보인다(중립 배지 + 첫 글자) */
.module-energy-symbol__initial {
  position: absolute; inset: 0; display: grid; place-items: center;
  font-style: normal; font-weight: 800; color: #fff; line-height: 1;
  font-size: 62%; pointer-events: none;
}
/* 단계 표기 — 기호를 값만큼 늘어놓는 자리 */
.module-energy-symbol-row { display: inline-flex; align-items: center; gap: 3px }


/* ── §공용-1  module-list-fold : 긴 목록은 «접힌 채»로 ──
   card-grid-page 의 잔여 목록이 쓰는 공용 부품이다(사용자 확정 2026-07-30).
   펼침 단추가 있는데 이미 펼쳐져 있으면 단추가 거짓말이 된다.
   🔒 네이티브 details 라 JS 가 필요 없고, 행은 DOM 에 그대로 있어
      「전량이 이 페이지에 있다」는 주장과 색인 논리가 유지된다. */
.module-list-fold { border: 0; background: transparent; margin: 10px 0 0 }
.module-list-fold__toggle {
  display: inline-block; padding: 8px 15px; border-radius: 10px; cursor: pointer;
  border: 1px solid var(--module-line-2, #d7dde6);
  background: var(--module-surface, #fff); color: var(--module-ink-2, #3f4859);
  font-size: 13.6px; font-weight: 700; list-style: none;
  transition: border-color .15s, color .15s;
}
.module-list-fold__toggle::-webkit-details-marker { display: none }
.module-list-fold__toggle:hover,
.module-list-fold[open] > .module-list-fold__toggle {
  border-color: var(--module-accent, #5747e0); color: var(--module-accent, #5747e0);
}


/* ── §신규승격-5  card-holo : 실물 1장 검분(기울기 + 샤인 + 글레어) ──
   🚨 «엔티티 전용 효과»다 — 목록형(격자·부채)에 이식하지 않는다(정본 5-o-2 호버 이원화).
      모듈이 그 경계를 강제한다: motion 이 꺼져 있으면 구동부가 물리는 .art 훅이 안 나온다.
   🔒 모듈이 크기를 정하지 않는다 — 놓이는 칸의 폭을 그대로 쓰고 높이는 비율로 따라온다.
      글자·여백은 cqw(칸 폭의 1%)에 매달려 있어 어떤 폭에도 맞는다.
   짝 JS: assets/js/card-holo.js → card-holo-popup.js (이 순서로 실행) */
.module-card-holo { display: grid; place-items: center }
.module-card-holo__stage { width: 100%; container-type: inline-size }
/* 🔒 구동부가 꽂아 주기 «전»에도 값이 있어야 한다 — 시안 :2244 .art .card 의 초기값 13종.
      없으면 var(--card-opacity) 가 무효가 되어 opacity 선언이 통째로 버려지고, 그 결과
      무늬·빛이 «처음부터 만개»한 채 그려진다(카드가 하얗게 뜬 것처럼 보인다).
      이 값들은 motion 여부와 무관하게 필요하다: 무늬·빛 층은 정지 카드에도 그려지기 때문이다. */
.module-card-holo .card {
  width: 100%; margin: 0; --card-radius: 12px;
  --rotate-x: 0deg; --rotate-y: 0deg; --card-scale: 1;
  --translate-x: 0px; --translate-y: 0px;
  --pointer-x: 50%; --pointer-y: 50%;
  --background-x: 50%; --background-y: 50%;
  --card-opacity: 0;
  --pointer-from-center: 0; --pointer-from-top: .5; --pointer-from-left: .5;
}
.module-card-holo .card__translater,
.module-card-holo .card__rotator { perspective: 420px }
/* height·border-radius 만 남긴다 — overflow:hidden 은 위쪽 .card__rotator *{overflow:hidden}
   이 이미 주는 값이라 여기 다시 쓰면 같은 말을 두 번 하는 것이다(시안에도 없다). */
.module-card-holo .card__front { width: 100%; height: 100%; border-radius: var(--card-radius) }

/* 🩹 R5-① 호버 시 «흰 조각»이 비치던 원인 — 랜딩 .card 의 흰 판이 홀로 카드에 실려 있었다.
   ──────────────────────────────────────────────────────────────────────────────
   무슨 일이 있었나 (2026-08-02 · 사용자 실기기 지적 「히어로 호버 시 일부 화이트」)
     이 파일 :11433 에 랜딩용 «.card{background:#fff;border:1px solid #e2e8f0}» 가 있다.
     홀로 카드의 뿌리도 클래스가 .card 라 그 흰 판을 그대로 받는다. 원전 이식 구획의
     .card 규칙은 background·border 를 «선언하지 않으므로» 상쇄하지 못하고,
     :13625 경계 가드는 홀로 카드를 :not() 으로 «제외»하니 거기서도 안 걸린다.
     정지 상태에서는 카드 그림이 흰 판을 덮어 안 보인다. 그런데 호버로 기울면
     회전체가 뿌리 상자 밖으로 나간다 — 실측(1440·호버): 뿌리 244×340.6 / 회전체
     250.3×347.6, 어긋남 dx −5px · dy −9.2px. 그 어긋난 자리로 흰 판이 드러난 것이다.
     테두리 1px 도 늘 카드 둘레에 회색 띠로 남아 있었다.
   근거 = 시안 실측 계산값(playwright · 6개 브레이크포인트 전부 동일)
     시안 .card  background-color: rgba(0,0,0,0) · border-top-width: 0px
     라이브 .card background-color: rgb(255,255,255) · border-top-width: 1px
   🔒 홀로 카드에만 되돌린다 — .module-card-holo 안쪽만 잡으므로 랜딩 카드는 무변화다.
      값을 «발명»하지 않았다: 시안 계산값 두 개(투명 · 0)를 그대로 적었다. */
/* 🩹 R6 같은 흰 판이 «판본 대조 데모»(07 구역)에도 실려 있었다 (2026-08-02)
   ──────────────────────────────────────────────────────────────────────────────
   R5-① 은 히어로만 되돌렸다(.module-card-holo 안쪽). 그런데 판본 대조 데모 카드는
   07 구역 `.vfx__hero` 에 서 있어서 이 되돌림에도, :13807 경계 가드의 :not() 사슬에도
   걸리지 않는다 — 그래서 :11433 의 랜딩 흰 판을 «혼자 그대로» 이고 있었다.

   왜 히어로보다 훨씬 크게 보이나 (사용자 실기기 「카드 절반이 하얗다」)
     히어로는 카드가 앞으로 튀어나온다 — .card__translater 의
     `--translate-z: calc(var(--card-scale) * 150px + 0.01px)` 때문에 회전체가 원근에서
     «커진» 채로 그려져, 뿌리 상자(.card)를 덮어 흰 판을 가린다. 그래서 R5 이전에도
     기울임 끝에서 «흰 조각»만 비쳤다.
     데모는 그 튀어나옴을 «꺼 둔» 자리다 — tcggrail-entity.css `.vfx .card__translater
     {--translate-z:0.01px}`(그린 상자가 잡은 자리가 되게 하려고 시안이 그렇게 정했다).
     회전체와 뿌리 상자가 «같은 크기»라, 기울이면 어긋난 만큼이 전부 흰 판으로 드러난다.
     구동부는 ±14.3°까지 돌린다(card-holo.js drive() `center/3.5` · 용수철 오버슈트 포함).

   근거 = 시안 대조 census — 데모 카드에 «닿는» 선택자 40개를 라이브·시안 양쪽에서 뽑아
     대조했고, 그중 흰색을 칠하는 규칙은 아래 하나뿐이었다(나머지 39개는 공백 표기만 다름).
       시안   .card  background 선언 «없음» · border 선언 «없음»
       라이브 .card  background:#fff · border:1px solid #e2e8f0   (:11433 랜딩 전용)
   🔒 값을 발명하지 않았다 — R5-① 이 시안 계산값으로 확정한 두 값을 그대로 쓴다.
   🔒 히어로·격자 팝업 규칙은 한 글자도 바뀌지 않는다 — 무는 자리를 «더할» 뿐이다.

   🩹 2026-08-02 추가 — 격자 팝업(.holo-thumb-popup-preview)이 «같은 결함»의 세 번째 자리였다.
     card-holo-popup.js:47 이 팝업 안쪽에 `<div class="card" data-fx="plain">` 를 만든다.
     그 .card 에는 위 두 선택자가 닿지 않으므로 :11433 의 랜딩 전용 흰 판이 그대로 살아 있고,
     기울임 끝에서 회전체가 어긋난 만큼 «흰 조각»이 드러난다(히어로에서 R5 가 고친 것과 동판).
     그래서 무는 자리에 `.holo-thumb-popup-preview .card` 를 «더한다» — 히어로·모듈 규칙은 손대지 않는다.
     글레어·샤인 규칙도 건드리지 않는다(그 둘은 .card__glare/.card__shine 소관이다). */
.module-card-holo .card,
.vfx__hero .card,
.holo-thumb-popup-preview .card { background: transparent; border: 0 }

/* ── 히어로 카드 폭 계약 — 시안 «렌더 실측» 이식 (2026-08-01 R1 → 2026-08-02 R5 정정) ──
   원본 = _시안/tcggrail-entity-full.html (발명 0 · 아래가 근거)

   🩹 R5 정정 사유 — R1 은 시안의 «CSS 초기값»을 계약으로 오독했다.
     R1 이 근거로 적은 :94·:2561 의 244px 는 시안에서 실제로 쓰이는 폭이 «아니다».
     시안은 그 값을 초기값으로만 두고, 인라인 style 로 폭을 다시 꽂는다. 실측:
       1440 뷰포트 → style="height:606px;width:434px;flex-basis:434px"  → 434px
       1280 뷰포트 → 434px      1024 뷰포트 → 394px      (playwright · 3회 반복 동일)
     즉 라이브 데스크톱 카드는 시안 대비 190~223px 작았다(사용자 지적 「히어로 작음」).

   ▶ 시안이 폭을 정하는 «규칙» (시안 인라인 스크립트 원문 — 값 발명 0)
       var CAP_RATIO = 0.42;   // 가로줄 폭 대비 카드 최대 폭 — 레이아웃에서 나온 값
       target = 오른쪽 열 높이 × 카드종횡비 ;  cap = 가로줄 폭 × CAP_RATIO ;  w = min(target, cap)
     검산: 1024 에서 .agrid 938px × 0.42 = 393.96 → 실측 394px (cap 이 이긴 구간)
           1440 에서 rcol 606px × (745/1040) = 434.1 → 실측 434px (target 이 이긴 구간)

   ▶ 옮기는 방법 — «높이 되먹임»은 옮기지 않는다(시안 주석이 실증한 발산 함정이고,
     라이브 오른쪽 열 구성이 시안과 달라 같은 높이가 나오지도 않는다). 대신 시안이
     실제로 그린 폭(434 · 394)을 브레이크포인트로 못박고, 시안의 CAP 규칙(42%)을
     상한으로 함께 걸어 그 사이 폭에서도 시안과 같은 방식으로 줄어들게 한다.
       ≥1200px  min(434px, 42vw)   ← 시안 1440·1280 실측 434px
       821~1199 min(394px, 42vw)   ← 시안 1024 실측 394px (= 938 × 0.42)
       ≤820px   min(330px, 78vw)   ← 시안 :2602 원문 그대로(R1 이식분 유지)

     :2585 .art .card__translater,.art .card__rotator{perspective:calc(var(--art-w) * 1.6)}
   ⚠️ 폭만 옮기고 원근을 안 옮기면 기울기가 납작해진다 — 시안이 2026-07-28 에 실증하고
      주석으로 남긴 사항이라 그대로 따른다(원근 ÷ 카드 폭 = 1.6 고정).
   🔒 크기를 정하는 자리는 «.art» 훅 하나뿐이다. 모듈 뿌리(.module-card-holo__stage)는
      「놓이는 칸의 폭을 그대로 쓴다」는 위 계약을 유지한다 — .art 는 motion(히어로)에서만
      붙으므로 목록·팝업의 카드는 1바이트도 영향받지 않는다. */
.module-card-holo__stage.art { --art-w: min(434px, 42vw); width: var(--art-w); max-width: 100% }
.module-card-holo--motion .card__translater,
.module-card-holo--motion .card__rotator { perspective: calc(var(--art-w, 434px) * 1.6) }
@media (max-width: 1199px) {
  .module-card-holo__stage.art { --art-w: min(394px, 42vw) }
}
@media (max-width: 820px) {
  .module-card-holo__stage.art { --art-w: min(330px, 78vw) }
}

/* ── 히어로 «기울기» 계약 — 시안 실측 1:1 이식 (2026-08-01 R2) ────────────────
   R1 은 폭과 원근만 옮겼다. 정작 «기울어지게 만드는» 층이 통째로 빠져 있었다.
   원본 = _시안/tcggrail-entity-full.html 인라인 CSS(.art 훅) · 아래가 옮긴 목록이다.
     :2245 .art .card{height:100%}
     :2248 .art .card__translater,.art .card__rotator{width:100%;height:100%}
     :2249 .art .card__translater{transform:translate3d(…) scale(…)}
     :2251 .art .card__rotator{transform:rotateY(--rotate-x) rotateX(--rotate-y)}
     :2254 @media(prefers-reduced-motion:reduce){.art .card__rotator{transition:none}}
     :2610 .art .card.is-live .card__rotator,.card__translater{transition:none}
     :2612 .art .card__rotator{transition:transform .3s cubic-bezier(.22,.61,.36,1)}
     :2614 .art .card.is-live .card__shine,.card__glare{transition:none}
   ⚠️ :2249 의 «폴백 딸린» transform 이 핵심이다. 위쪽 원전 구획의 .card__translater 는
      --translate-z:calc(var(--card-scale) * 150px + .01px) 를 쓰는데, --card-scale 이 없으면
      그 calc 이 무효가 되고 transform 선언이 통째로 버려진다(카드가 아예 안 움직인다).
      시안은 그래서 폴백을 적어 두었다 — 값과 폴백을 같이 옮긴다.
   ⚠️ is-live 두 줄을 빼면 «손보다 한 박자 늦게» 따라온다. 용수철이 도는 동안 CSS 전환이
      같이 돌아 둘이 싸우기 때문이다(시안이 2026-07-28 에 실증하고 주석으로 남긴 사항).
      구동부(card-holo.js)가 그동안 .is-live 를 붙였다 뗐다 하고 있었는데 받는 CSS 가 없었다.
   🔒 .art 는 motion 에서만 붙으므로 목록·팝업 카드는 여기서도 1바이트도 영향받지 않는다. */
.module-card-holo__stage.art {
  aspect-ratio: 745/1040; border-radius: 12px; overflow: hidden; text-align: center;
  filter: drop-shadow(0 16px 30px rgba(0,0,0,.34));
}
.module-card-holo--motion .card { height: 100% }
.module-card-holo--motion .card__translater,
.module-card-holo--motion .card__rotator { width: 100%; height: 100% }
.module-card-holo--motion .card__translater {
  transform: translate3d(var(--translate-x, 0px), var(--translate-y, 0px), .01px) scale(var(--card-scale, 1));
}
.module-card-holo--motion .card__rotator {
  transform: rotateY(var(--rotate-x, 0deg)) rotateX(var(--rotate-y, 0deg));
  transition: transform .3s cubic-bezier(.22, .61, .36, 1);
}
.module-card-holo--motion .card.is-live .card__rotator,
.module-card-holo--motion .card.is-live .card__translater { transition: none }
.module-card-holo--motion .card.is-live .card__shine,
.module-card-holo--motion .card.is-live .card__glare { transition: none }
@media (prefers-reduced-motion: reduce) {
  .module-card-holo--motion .card__rotator { transition: none }
}

/* 그림이 없는 카드 면(.pc) — 원본 = _시안/tcggrail-fallback.html.
   시안에서는 .art 로 걸려 있었으나 여기서는 모듈 뿌리로 옮겼다:
   motion 이 꺼지면 .art 가 안 나오는데 폴백 면은 그때도 그려져야 하기 때문이다.
   🔒 색 12종(--f1~5 · --a1~5 · --pcink · --pcsub)은 data 가 준다 — 고정하지 않는다.
      목록에서 폴백이 여러 장 나올 때 전부 같으면 「사이트가 고장 났다」로 읽힌다. */
.module-card-holo .pc {
  position: relative; display: flex; flex-direction: column; gap: clamp(2px,1.6cqw,5px);
  width: 100%; height: 100%; padding: clamp(3px,2.9cqw,9px); border-radius: 12px; overflow: hidden;
  background: linear-gradient(150deg,var(--f1,#E9EDF3) 0%,var(--f2,#D7DDE6) 26%,var(--f3,#C3CBD8) 55%,var(--f4,#DFE4EC) 78%,var(--f5,#AEB8C7) 100%);
}
/* 글자·여백을 카드 폭(cqw)에 매단다 — 크기별로 미리 만들 필요가 없다.
   244px 기준 13px = 5.3cqw. clamp 로 아주 작을 때·클 때만 막는다. */
.module-card-holo .pc__hd,
.module-card-holo .pc__ft {
  position: relative; z-index: 2; display: flex; align-items: baseline;
  justify-content: space-between; gap: clamp(3px,2.4cqw,7px);
  padding: clamp(2px,1.3cqw,4px) clamp(4px,2.9cqw,9px);
  border-radius: clamp(3px,2cqw,6px); background: rgba(28,18,4,.30); color: var(--pcink,#FFF7E2);
}
.module-card-holo .pc__hd b {
  font-size: clamp(8px,5.4cqw,16px); font-weight: 800; letter-spacing: -.02em;
  min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.module-card-holo .pc__hd em {
  font-style: normal; font-size: clamp(7px,4.6cqw,14px); font-weight: 800;
  color: var(--pcsub,#FFD9A0); flex: 0 0 auto;
}
.module-card-holo .pc__ft b {
  font-size: clamp(7px,4.4cqw,13px); font-weight: 700;
  min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.module-card-holo .pc__ft em {
  font-style: normal; font-size: clamp(7px,4.6cqw,14px); font-weight: 800; flex: 0 0 auto;
  font-family: ui-monospace,Menlo,monospace; color: var(--pcsub,#FFD9A0);
}
.module-card-holo .pc__art {
  position: relative; z-index: 2; flex: 1; border-radius: 7px; overflow: hidden;
  border: 2px solid rgba(255,247,214,.75);
  background: radial-gradient(120% 90% at 26% 18%,var(--a1,#F4F7FB) 0%,var(--a2,#D9E1EC) 22%,var(--a3,#B6C2D3) 48%,var(--a4,#8E9CB1) 70%,var(--a5,#5F6E85) 100%);
}
.module-card-holo .pc__flame {
  position: absolute; inset: -14% -8% -22% -8%;
  background:
    radial-gradient(46% 40% at 34% 62%, rgba(255,236,150,.95) 0%, rgba(255,150,40,.72) 42%, transparent 72%),
    radial-gradient(38% 34% at 70% 40%, rgba(255,110,60,.85) 0%, transparent 70%),
    radial-gradient(30% 26% at 56% 84%, rgba(255,215,120,.8) 0%, transparent 74%);
  opacity: .55; mix-blend-mode: soft-light;
}
.module-card-holo .pc__glow {
  position: absolute; inset: 0;
  background: radial-gradient(60% 44% at 50% 8%, rgba(255,255,255,.55) 0%, transparent 62%);
}
.module-card-holo .pc__holo {
  position: absolute; inset: 0; z-index: 3; pointer-events: none; mix-blend-mode: color-dodge; opacity: .30;
  background: repeating-linear-gradient(112deg,
    rgba(255,80,80,.55) 0 7px, rgba(255,210,60,.55) 7px 14px, rgba(90,235,140,.55) 14px 21px,
    rgba(70,190,255,.55) 21px 28px, rgba(190,110,255,.55) 28px 35px);
}
.module-card-holo .pc__sheen {
  position: absolute; top: -60%; left: -120%; width: 70%; height: 220%; z-index: 4; pointer-events: none;
  transform: rotate(19deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.62) 46%, rgba(255,255,255,.9) 52%, transparent);
  animation: module-card-holo-sheen 4.6s ease-in-out infinite;
}
/* 이름을 module- 로 네임스페이스했다 — 시안의 «sheen» 은 너무 흔해 다른 사이트와 부딪힌다 */
@keyframes module-card-holo-sheen { 0%,64% { left: -120% } 100% { left: 170% } }
/* 불러오는 중 = 빛이 자주 지나간다(곧 바뀐다) · 그림 없음 = 드물게(장식) */
.module-card-holo--loading .pc__sheen { animation-duration: 1.5s; animation-timing-function: linear }
/* cqw 로도 못 담는 것만 뺀다 — 아주 작으면 부제는 어차피 못 읽는다 */
@container (max-width: 120px) { .module-card-holo .pc__ft b { display: none } }
@container (max-width: 80px)  { .module-card-holo .pc__hd em { display: none } }
@media (prefers-reduced-motion: reduce) {
  .module-card-holo .pc__sheen { animation: none; opacity: .28; left: 12% }
}


/* ══════════════════════════════════════════════════════════════════════════════
   §신규승격-5-b  card-holo 원전 이식 구획 — 여기서부터 «원문»이다
   ──────────────────────────────────────────────────────────────────────────────
   원전    simeydotme/pokemon-cards-css (GPL-3.0) · 커밋 acb1197 (2025-12-15)
           원저작자 사용 허락 확보(사용자 확인 2026-07-30)
   조각    TCGGrail/theme-child/assets/css/_holo.css + _holo-popup.css
   SSOT    _시안/스크립트/_entity-fx.css (찍개 sync-server-fx.js 가 조각을 만든다)
   ⚠️ 수치·수식·층 순서를 손대지 마라 — 「그대로 적용」이 사용자 확정 지시다.
      고칠 일이 생기면 «조각»이 아니라 SSOT 를 고치고 찍개를 다시 돌린다.
   ⚠️ 선택자가 bare .card 라 프레임워크 .card 와 부딪힌다 —
      이 구획 «끝»의 경계 가드가 그것을 받는다. 가드를 지우지 마라.
   ══════════════════════════════════════════════════════════════════════════════ */
/* ══════════════════════════════════════════════════════════════════
   모듈 ▸ 홀로 카드 — 효과 CSS(v3)  —  TCGGrail
   ──────────────────────────────────────────────────────────────────
   🚨 이 파일을 직접 고치지 마라. 시안 쪽 «조각»에서 찍어 낸 것이다.
      원본(SSOT)  _시안/스크립트/_entity-fx.js
      찍개        _시안/스크립트/sync-server-fx.js
      시안 반영   _시안/스크립트/inject-entity-fx.js (엔티티 HTML 쪽)
      고칠 때는 «조각»을 고치고 두 찍개를 돌린다. 여기서 고치면 다음에 덮어써진다.
   ──────────────────────────────────────────────────────────────────
   판(version)  v3 — 홀로 효과 원본 이식(simeydotme/pokemon-cards-css · GPL-3.0
                 · 원저작자 사용 허락 확보, 사용자 확인 2026-07-30)
                 + 2026-07-30 팝업 결함 수리(팝업이 옆 칸 hover 를 가로채던 문제)
   짝 파일      ../js/_holo.js · ../js/_holo-popup.js
   ──────────────────────────────────────────────────────────────────
   파일 이름 앞의 _ = 아직 안 올렸다는 표시. loader.php 가 읽지 않는다.
   🔀 이관 순서 (거꾸로 가면 꼬인다)
     1) 클라우드웨이즈 앱 생성 · DNS · 워드프레스 설치
     2) 시세에서 framework 복사 (modules.css 가 들어온다)
     3) 이 파일 내용을 그 modules.css 끝에 구획째 붙인다(css) / assets/js 로 이름에서 _ 를 뗀다(js)
     4) loader.php → core_enqueue_assets() 에 등록 (순서 = holo.js → holo-popup.js)
     5) core/VERSION +1  (?ver 캐시 버스터)
     6) _ 붙은 이 파일들을 지운다
   ──────────────────────────────────────────────────────────────────
   ⚠️ 텍스처(포일·글리터·기하)는 base64 로 파일 안에 들어 있다 —
      바깥 주소를 쓰지 않는다(아티팩트 보안 정책 + 색인 안정).
   ══════════════════════════════════════════════════════════════════ */
/* ─────────── 카드 (v3 = 원본 이식) ───────────
   효과 원본 = simeydotme/pokemon-cards-css (GPL-3.0)
   원저작자 사용 허락 확보(사용자 확인 2026-07-30) · 바인딩만 바닐라 이식
   원본 파일 → 이 자리: cards.css(토큰) · base.css(골격) ·
   regular-holo.css / v-max.css / secret-rare.css (등급별) · img/*(텍스처 내장)
   ⚠️ 수치·수식·층 순서는 원본 그대로다. 손대지 말 것 —
      「그대로 적용」이 사용자 확정 지시다(2026-07-30). */

/* ── 원본 public/css/cards.css ── */
.card{
  --glitter:url("data:image/png;base64,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");
  --glittersize:25%;

  --space:5%;
  --angle:133deg;
  --imgsize:cover;

  --red:#f80e35;
  --yellow:#eedf10;
  --green:#21e985;
  --blue:#0dbde9;
  --violet:#c929f1;

  --clip:inset( 9.85% 8% 52.85% 8% );
  --clip-stage:polygon(91.5% 9.85%, 57% 9.85%, 54% 12%, 17% 12%, 16% 14%, 12% 16%, 8% 16%, 8% 47.15%, 92% 47.15%);
  --clip-trainer:inset(14.5% 8.5% 48.2% 8.5%);
  --clip-borders:inset(2.8% 4% round 2.55% / 1.5%);
  /* 🆕 2026-08-01 — «그림 창을 뺀 나머지»(배경·테두리) 모양. 리버스 홀로가 쓰는 마스크다.
     위 --clip 이 그림 창«안»이라면 아래 -invert 는 그 바깥이다 — 좌표를 우리가 짜지 않았다.
     출처 = simeydotme/pokemon-cards-css · public/css/cards.css 18~25행(.card 토큰 블록)
            https://raw.githubusercontent.com/simeydotme/pokemon-cards-css/main/public/css/cards.css
     🔒 원전에 «있는 것만» 옮긴다 — 원전은 --clip-trainer-invert 를 reverse-holo.css 에서
        쓰면서도 «정의하지 않았다»(실측: cards.css 에 그 이름이 없다). 우리가 좌표를 지어내
        메우면 그것은 이식이 아니라 창작이다 → 옮기지 않고 공백으로 둔다(그 가지는 원전에서도
        마스크 없이 그려진다). 트레이너 카드에 리버스를 세울 일이 생기면 그때 원전에 확인한다. */
  --clip-invert:polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0 47.15%, 91.5% 47.15%, 91.5% 9.85%, 8% 9.85%, 8% 47.15%, 0 50%);
  --clip-stage-invert:polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0 47.15%, 91.5% 47.15%, 91.5% 9.85%, 57% 9.85%, 54% 12%, 17% 12%, 16% 14%, 12% 16%, 8% 16%, 8% 47.15%, 0 50%);
}

.card__shine,.card__glare{
  will-change:transform,opacity,background-image,background-size,
    background-position,background-blend-mode,filter;
}

/* ── 원본 public/css/cards/base.css — 토큰(:root → .card 로 범위만 축소) ── */
.card{
  --card-aspect:0.718;
  --card-radius:4.55% / 3.5%;
  --card-edge:hsl(47, 100%, 78%);
  --card-back:hsl(205, 100%, 25%);
  --card-glow:hsl(175, 100%, 90%);

  --sunpillar-1:hsl(2, 100%, 73%);
  --sunpillar-2:hsl(53, 100%, 69%);
  --sunpillar-3:hsl(93, 100%, 69%);
  --sunpillar-4:hsl(176, 100%, 76%);
  --sunpillar-5:hsl(228, 100%, 74%);
  --sunpillar-6:hsl(283, 100%, 73%);

  --sunpillar-clr-1:var(--sunpillar-1);
  --sunpillar-clr-2:var(--sunpillar-2);
  --sunpillar-clr-3:var(--sunpillar-3);
  --sunpillar-clr-4:var(--sunpillar-4);
  --sunpillar-clr-5:var(--sunpillar-5);
  --sunpillar-clr-6:var(--sunpillar-6);

  /* 원본은 Svelte 가 인라인으로 넣어 주는 초기값 — 정적 판에서는 여기서 준다 */
  --pointer-x:50%; --pointer-y:50%;
  --card-scale:1; --card-opacity:0;
  --translate-x:0px; --translate-y:0px;
  --rotate-x:0deg; --rotate-y:0deg;
  --background-x:var(--pointer-x); --background-y:var(--pointer-y);
  --pointer-from-center:0;
  --pointer-from-top:var(--pointer-from-center);
  --pointer-from-left:var(--pointer-from-center);
}

/* ── 원본 base.css — 골격 ── */
.card{
  transform:translate3d(0px, 0px, 0.01px);
  pointer-events:none;
  z-index:calc(var(--card-scale) * 2);
  will-change:transform,visibility,z-index;
  transform-style:preserve-3d;
}

.card,.card *{outline:1px solid transparent}

.card,.card__rotator{
  aspect-ratio:var(--card-aspect);
  border-radius:var(--card-radius);
}

.card.interacting{z-index:calc(var(--card-scale) * 120)}

.card.active .card__translater,.card.active .card__rotator{touch-action:none}

.card__translater,.card__rotator{
  display:grid;
  perspective:600px;
  will-change:transform,box-shadow;
  transform-origin:center;
  transform-style:preserve-3d;
}

.card__translater{
  width:auto;
  position:relative;
  --translate-z:calc(var(--card-scale) * 150px + 0.01px);
  transform:translate3d(var(--translate-x), var(--translate-y), var(--translate-z)) scale(var(--card-scale));
}

.card__rotator{
  transform:rotateY(var(--rotate-x)) rotateX(var(--rotate-y));
  transform-style:preserve-3d;
  pointer-events:auto;
}

/* 🚨 원본에서는 카드 «자신»이 만지는 대상이라 __rotator 가 손을 받아야 한다.
      그런데 우리 팝업은 손을 따라다니는 «미리보기»다 — 손을 받으면 안 된다.
      받으면 팝업이 옆 칸 위에 떠서 그 칸의 hover 를 가로챈다:
        · elementFromPoint 가 .card__rotator 를 돌려주고
        · closest('.oppo__i') 가 null 이 되어 팝업이 갱신되지 않는다
        · 팝업은 opacity 0 이어도 «자리»는 차지하므로 눈에 안 보이는 벽이 된다
      실측(2026-07-30): 1번 칸에 올린 뒤 2번 칸 좌표를 물으면 DIV.card__rotator 가 나왔다.
      → 팝업 안쪽은 통째로 손을 통과시킨다. 히어로(.art)는 초점을 받아야 하므로 그대로 둔다. */
.holo-thumb-popup-preview,.holo-thumb-popup-preview *{pointer-events:none}

button.card__rotator{
  border:none;background:transparent;padding:0;appearance:none;
}

.card__rotator,.card.active .card__rotator:focus{
  transition:box-shadow 0.4s ease, opacity .33s ease-out;
  box-shadow:
    0 0 3px -1px transparent,
    0 0 2px 1px transparent,
    0 0 5px 0px transparent,
    0px 10px 20px -5px black,
    0 2px 15px -5px black,
    0 0 20px 0px transparent;
}

.card.active .card__rotator,.card__rotator:focus{
  box-shadow:
    0 0 3px -1px white,
    0 0 3px 1px var(--card-edge),
    0 0 12px 2px var(--card-glow),
    0px 10px 20px -5px black,
    0 0 40px -30px var(--card-glow),
    0 0 50px -20px var(--card-glow);
}

.card__rotator *{
  width:100%;
  display:grid;
  grid-area:1/1;
  aspect-ratio:var(--card-aspect);
  border-radius:var(--card-radius);
  image-rendering:optimizeQuality;
  transform-style:preserve-3d;
  pointer-events:none;
  overflow:hidden;
}

.card__rotator img{height:auto}
.card__rotator img:not(.card__back){transform:translate3d(0px, 0px, 0.01px)}

.card__front,.card__front *{backface-visibility:hidden}

.card__front{
  opacity:1;
  transition:opacity 0.33s ease-out;
  transform:translate3d(0px, 0px, 0.01px);
}

/* ── 원본 base.css — 반짝임·표면반사 기본층 ── */
.card__shine{
  display:grid;
  transform:translateZ(1px);
  overflow:hidden;
  z-index:3;

  background:transparent;
  background-size:cover;
  background-position:center;

  filter:brightness(.85) contrast(2.75) saturate(.65);
  mix-blend-mode:color-dodge;

  opacity:var(--card-opacity);
}

.card__shine:before,.card__shine:after{
  --sunpillar-clr-1:var(--sunpillar-5);
  --sunpillar-clr-2:var(--sunpillar-6);
  --sunpillar-clr-3:var(--sunpillar-1);
  --sunpillar-clr-4:var(--sunpillar-2);
  --sunpillar-clr-5:var(--sunpillar-3);
  --sunpillar-clr-6:var(--sunpillar-4);

  grid-area:1/1;
  transform:translateZ(1px);
  border-radius:var(--card-radius);
}

.card__shine:after{
  --sunpillar-clr-1:var( --sunpillar-6 );
  --sunpillar-clr-2:var( --sunpillar-1 );
  --sunpillar-clr-3:var( --sunpillar-2 );
  --sunpillar-clr-4:var( --sunpillar-3 );
  --sunpillar-clr-5:var( --sunpillar-4 );
  --sunpillar-clr-6:var( --sunpillar-5 );

  transform:translateZ(1.2px);
}

.card__glare{
  transform:translateZ(1.41px);
  overflow:hidden;

  background-image:radial-gradient(
    farthest-corner circle at var(--pointer-x) var(--pointer-y),
    hsla(0, 0%, 100%, 0.8) 10%,
    hsla(0, 0%, 100%, 0.65) 20%,
    hsla(0, 0%, 0%, 0.5) 90%
  );

  opacity:var(--card-opacity);
  mix-blend-mode:overlay;
}

/* ══ 원본 public/css/cards/regular-holo.css → [data-fx="holo"] ══ */
.card[data-fx="holo"] .card__shine{
  --scanlines-space:1px;
  --scanlines-light:#666;
  --scanlines-dark:black;

  --bars:3%;
  --bar-color:hsla(0, 0%, 70%, 1);
  --bar-bg:hsla(0, 0%, 0%, 1);

  clip-path:var(--clip);

  background-image:
    repeating-linear-gradient( 110deg,
      var(--violet), var(--blue), var(--green), var(--yellow), var(--red),
      var(--violet), var(--blue), var(--green), var(--yellow), var(--red),
      var(--violet), var(--blue), var(--green), var(--yellow), var(--red)
    ),
    repeating-linear-gradient( 90deg,
      var(--scanlines-dark) calc(var(--scanlines-space) * 0), var(--scanlines-dark) calc(var(--scanlines-space) * 2),
      var(--scanlines-light) calc(var(--scanlines-space) * 2), var(--scanlines-light) calc(var(--scanlines-space) * 4)
    );

  background-position:
    calc(((50% - var(--background-x)) * 2.6) + 50%) calc(((50% - var(--background-y)) * 3.5) + 50%),
    center center;

  background-size:400% 400%, cover;

  background-blend-mode:overlay;
  filter:brightness(1.1) contrast(1.1) saturate(1.2);
  mix-blend-mode:color-dodge;
}

.card[data-fx="holo"] .card__shine:before{
  content:"";
  background-image:
    repeating-linear-gradient( 90deg,
      var(--bar-bg) calc(var(--bars)*2),
      var(--bar-color) calc(var(--bars)*3),
      var(--bar-bg) calc(var(--bars)*3.5),
      var(--bar-color) calc(var(--bars)*4),
      var(--bar-bg) calc(var(--bars)*5),
      var(--bar-bg) calc(var(--bars)*14)
    ),
    repeating-linear-gradient( 90deg,
      var(--bar-bg) calc(var(--bars)*2),
      var(--bar-color) calc(var(--bars)*3),
      var(--bar-bg) calc(var(--bars)*3.5),
      var(--bar-color) calc(var(--bars)*4),
      var(--bar-bg) calc(var(--bars)*5),
      var(--bar-bg) calc(var(--bars)*10)
    );

  background-position:
    calc((((50% - var(--background-x)) * 1.65) + 50% ) + (var(--background-y) * 0.5)) var(--background-x),
    calc((((50% - var(--background-x)) * -0.9) + 50%) - (var(--background-y) * 0.75) ) var(--background-y);

  background-size:200% 200%, 200% 200%;

  background-blend-mode:screen;
  filter:brightness( 1.15 ) contrast( 1.1 );
  mix-blend-mode:hard-light;
}

.card[data-fx="holo"] .card__shine:after{
  content:"";
  background-image:
    radial-gradient(
      farthest-corner circle
        at var(--pointer-x) var(--pointer-y),
        hsla(0, 0%, 90%, 0.8) 0%,
        hsla(0, 0%, 78%, 0.1) 25%,
        hsl(0, 0%, 0%) 90%
    );
  background-position:center center;
  background-size:cover;
  mix-blend-mode:luminosity;
  filter:brightness(0.6) contrast(4);
}

@media screen and (max-width: 900px){
  .card[data-fx="holo"] .card__shine{--scanlines-space:.5px}
}

.card[data-fx="holo"] .card__glare{
  opacity:calc( var(--card-opacity) * .8 );
  filter:brightness(0.8) contrast(1.5);
  mix-blend-mode:overlay;
}

.card[data-fx="holo"] .card__glare:after{
  content:"";
  background-image:
    radial-gradient(
      farthest-corner circle at var(--pointer-x) var(--pointer-y),
      hsl(180, 100%, 95%) 5%,
      hsla(0, 0%, 39%, 0.25) 55%,
      hsla(0, 0%, 0%, 0.36) 110%
    );
  mix-blend-mode:overlay;
  filter:brightness(.6) contrast(3);
}

/* ══ 원본 public/css/cards/v-max.css → [data-fx="vmax"] ══ */
.card[data-fx="vmax"] .card__shine,
.card[data-fx="vmax"] .card__shine:after{
  --mask:none;
  --foil:url("data:image/jpeg;base64,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");
  --imgsize:60% 30%;
}

.card[data-fx="vmax"] .card__shine{
  --space:6%;
  --angle:133deg;
  --imgsize:cover;

  background-image:
    var(--foil),
    repeating-linear-gradient( -33deg,
      hsl(2, 70%, 47%) calc(var(--space)*1),
      hsl(228, 60%, 64%) calc(var(--space)*2),
      hsl(176, 55%, 39%) calc(var(--space)*3),
      hsl(123, 68%, 35%) calc(var(--space)*4),
      hsl(283, 75%, 57%) calc(var(--space)*5),
      hsl(2, 70%, 47%) calc(var(--space)*6)
    ),
    repeating-linear-gradient(
      var(--angle),
      hsla(227, 53%, 12%, 0.5) 0%,
      hsl(180, 10%, 50%) 2.5%,
      hsl(83, 50%, 35%) 5%,
      hsl(180, 10%, 50%) 7.5%,
      hsla(227, 53%, 12%, 0.5) 10% ,
      hsla(227, 53%, 12%, 0.5) 15%
      ),
    radial-gradient(
      farthest-corner circle
      at var(--pointer-x) var(--pointer-y),
      hsla(189, 76%, 77%, 0.6) 0%,
      hsla(147, 59%, 77%, 0.6) 25%,
      hsla(271, 55%, 69%, 0.6) 50%,
      hsla(355, 56%, 72%, 0.6) 75%
    );

  background-blend-mode:difference, luminosity, soft-light;
  background-size:var(--imgsize), 1100% 1100%, 600% 600%, 200% 200%;
  background-position:
    center,
    var(--background-x) var(--background-y),
    var(--background-x) var(--background-y),
    var(--background-x) var(--background-y);

  filter:brightness(calc((var(--pointer-from-center) * .4) + .4)) contrast(2) saturate(1);
}

.card[data-fx="vmax"] .card__shine:after{
  content:"";
  background-image:repeating-linear-gradient( 0deg,
    var(--sunpillar-clr-1) calc(var(--space)*1),
    var(--sunpillar-clr-2) calc(var(--space)*2),
    var(--sunpillar-clr-3) calc(var(--space)*3),
    var(--sunpillar-clr-4) calc(var(--space)*4),
    var(--sunpillar-clr-5) calc(var(--space)*5),
    var(--sunpillar-clr-6) calc(var(--space)*6),
    var(--sunpillar-clr-1) calc(var(--space)*7)
  ),
  repeating-linear-gradient(
    var(--angle),
    #0e152e 0%,
    hsl(180, 10%, 60%) 3.8%,
    hsl(180, 29%, 66%) 4.5%,
    hsl(180, 10%, 60%) 5.2%,
    #0e152e 10% ,
    #0e152e 12%
  );

  background-blend-mode:hue, hard-light;
  background-size:200% 700%, 300% 100%, 200% 100%;
  background-position:0% var(--background-y), var(--background-x) var(--background-y), var(--background-x) var(--background-y);

  mix-blend-mode:lighten;
  opacity:calc( (0.3 * var(--card-opacity)) + var(--card-opacity) * var(--pointer-from-center) * 0.5 );
  filter:saturate(1.5);
}

.card[data-fx="vmax"] .card__glare{
  mix-blend-mode:hard-light;
  filter:brightness(1) contrast(1);

  background-image:
    radial-gradient(
      farthest-corner circle at
      var(--pointer-x) var(--pointer-y),
      hsla(0, 0%, 100%, 0.75) 0%,
      hsl(0, 0%, 0%) 120%
    );

  opacity:calc( (0.2 * var(--card-opacity)) + var(--card-opacity) * var(--pointer-from-center) * 0.8 );
}

/* ══ 원본 public/css/cards/secret-rare.css → [data-fx="secret"] ══ */
.card[data-fx="secret"] .card__shine{
  --shift:1px;
  --imgsize:cover;
  --foil:url("data:image/png;base64,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");

  background-image:
    var(--glitter),
    var(--glitter),
    conic-gradient(
      var(--sunpillar-clr-4),
      var(--sunpillar-clr-5),
      var(--sunpillar-clr-6),
      var(--sunpillar-clr-1),
      var(--sunpillar-clr-4)
    ),
    radial-gradient(
      farthest-corner circle at var(--pointer-x) var(--pointer-y),
      hsla(150, 00%, 0%, .98) 10%,
      hsla(0, 0%, 95%, .15) 90%
    );

  background-size:var(--glittersize) var(--glittersize), var(--glittersize) var(--glittersize), cover, cover;
  background-position:45% 45%, 55% 55%, center center, center center;
  background-blend-mode:soft-light, hard-light, overlay;
  mix-blend-mode:color-dodge;
  filter:brightness( calc( ( var( --pointer-from-center ) * 0.3 ) + 0.2 ) ) contrast(2) saturate(0.75);
}

.card[data-fx="secret"] .card__shine:before{
  content:"";
  --imgsize:33%;
  background-image:
    var(--foil),
    linear-gradient( 45deg, hsl(46, 95%, 50%), hsl(52, 100%, 69%) ),
    radial-gradient(
      farthest-corner circle at var(--pointer-x) var(--pointer-y),
      hsla(10, 20%, 90%, 0.95) 10%,
      hsl(0, 0%, 0%) 70%
    );

  background-size:var(--imgsize), cover, cover;
  background-position:center center, center center, center center;
  background-blend-mode:hard-light, multiply;

  mix-blend-mode:lighten;
  filter:brightness(1.25) contrast(1.25) saturate(0.35);
  opacity:.8;
}

.card[data-fx="secret"] .card__shine:after{
  content:"";
  background-image:var(--glitter);
  background-size:var(--glittersize) var(--glittersize);
  background-position:calc(50% - ((var(--shift)*2) * var(--pointer-from-left)) + var(--shift)) calc(50% - ((var(--shift)*2) * var(--pointer-from-top)) + var(--shift));

  filter:brightness(calc((var(--pointer-from-center)*0.6) + 0.6)) contrast(1.5);
  mix-blend-mode:overlay;
}

.card[data-fx="secret"] .card__glare{
  background-image:
    radial-gradient(
      farthest-corner circle at var(--pointer-x) var(--pointer-y),
      hsla(45, 8%, 80%, 0.3) 0%,
      hsl(22, 15%, 12%) 180%
    );

  filter:brightness(1.3) contrast(1.5);
  mix-blend-mode:hard-light;
}

/* ══ 원본 public/css/cards/basic.css → [data-fx="plain"] ══
   원본도 내용이 없다 — 기본 카드는 base.css 의 shine/glare 만 쓴다.
   우리는 «민무늬»가 무지개를 띠면 안 되므로 반짝임 층만 접는다. */
.card[data-fx="plain"] .card__shine{opacity:0}

/* ══ 원본 public/css/cards/reverse-holo.css → [data-fx="reverse"] ══════════════
   ■ 출처 (2026-08-01 이식 · GPL-3.0 · 원저작자 허락 확보 — 이 파일 머리 주석 참조)
     저장소 simeydotme/pokemon-cards-css · 데모 https://poke-holo.simey.me/
     파일  public/css/cards/reverse-holo.css (그 파일 마지막 커밋 a104b56 · 2023-01-24)
     https://raw.githubusercontent.com/simeydotme/pokemon-cards-css/main/public/css/cards/reverse-holo.css
     마스크 좌표 = public/css/cards.css · 겹 배치(:after 위치·회전)는 base.css — 둘 다 이미 위에 있다.
   ■ 원본과 다른 곳 «두 군데»뿐 (축약 이식 규칙 — 우리 6등급 이식과 같은 방식)
     ① 고르는 말: 원본 [data-rarity$="reverse holo"] → 우리 [data-fx="reverse"]
        (우리는 등급을 원자에서 파생해 data-fx 한 칸에 적는다 — 이름표 문법이 다를 뿐 대상은 같다)
     ② 원본은 «가면 씌운 카드»(.masked)와 아닌 카드를 갈라 두 벌을 둔다. 우리 카드에는
        가면(.masked)이 하나도 없으므로 «가면 없는 쪽» 한 벌만 옮겼다(원본 NO MASK 절).
        그 절이 하는 일이 곧 이 등급의 핵심이다 — 반짝임을 그림 창 «바깥»으로 잘라 낸다.
   ■ 무엇이 보이나 — 그림 창은 그대로 두고 «배경과 테두리»만 기울기 따라 반짝인다.
     그것이 리버스 홀로를 눈으로 가르는 방법이고, 이 등급이 07 구역 캡션을 참으로 만든다.
   🔒 원전이 «정의하지 않은» 트레이너 가지(--clip-trainer-invert)는 옮기지 않았다(위 주석).
   🔒 원본의 속성별 밝기 보정(.card.lightning/.darkness/.metal → --foil-brightness)은
      그 속성 클래스를 우리 카드가 달지 않아 걸릴 자리가 없다 — 옮기지 않고 기본값만 쓴다. */
.card[data-fx="reverse"]{ --foil-brightness:0.55; }

.card[data-fx="reverse"] .card__shine{
  /* 원본 NO MASK 절 — 무늬 그림은 쓰지 않고, 반짝임을 그림 창 바깥으로 자른다 */
  --foil:none;
  clip-path:var(--clip-invert);

  background-image:
    radial-gradient(
      circle at var(--pointer-x) var(--pointer-y),
      #fff 5%,
      #000 50%,
      #fff 80%
    ),
    linear-gradient(
      -45deg,
      #000 15%,
      #fff,
      #000 85%
    ),
    var(--foil);

  background-blend-mode:soft-light, difference;
  background-size:120% 120%, 200% 200%, cover;
  background-position:center center, calc( (100% * var(--pointer-from-left))) calc( (100% * var(--pointer-from-top))), center center;

  filter:brightness(var(--foil-brightness)) contrast(1.5) saturate(1);
  mix-blend-mode:color-dodge;

  opacity:calc( (1.5 * var(--card-opacity)) - var(--pointer-from-center) );
}

/* 진화 카드는 그림 창 모양이 달라 바깥 모양도 다르다 — 원전이 따로 정의해 둔 값 */
.card[data-fx="reverse"][data-subtypes^="stage"] .card__shine{
  clip-path:var(--clip-stage-invert);
}

.card[data-fx="reverse"] .card__glare{
  opacity:var(--card-opacity);

  background-image:
    radial-gradient(
      farthest-corner circle at var(--pointer-x) var(--pointer-y),
      hsla(0, 0%, 100%, 0.8) 10%,
      hsla(0, 0%, 100%, 0.5) 20%,
      hsla(0, 0%, 0%, 0.75) 90%
    );

  filter:brightness(.7) contrast(1.5);
}

/* 빛 겹의 «안쪽» 한 장은 그림 창 안에 남는다(원본 base.css 가 그렇게 자른다) —
   바깥만 반짝이면 그림이 죽은 것처럼 보이므로 원전이 이렇게 짝을 맞춰 두었다. */
.card[data-fx="reverse"] .card__glare:after{
  content:"";
  opacity:var(--card-opacity);
  clip-path:var(--clip);

  background-image:
    radial-gradient(
      farthest-corner circle at var(--pointer-x) var(--pointer-y),
      hsl(0, 0%, 100%) 10%,
      hsla(0, 0%, 100%, 0.5) 20%,
      hsla(0, 0%, 0%, 0.5) 120%
    );

  filter:brightness(1) contrast(1.5);
}

.card[data-fx="reverse"][data-subtypes^="stage"] .card__glare:after{
  clip-path:var(--clip-stage);
}

/* ══ 움직임을 줄여 달라는 설정 ══
   기울기·추종을 멈춘다. 원본에는 없지만 접근성 요구라 남긴다(우리 추가분). */
@media (prefers-reduced-motion:reduce){
  .card__rotator{transform:none!important}
  .card__translater{transform:none!important}
}

/* ══ 길게 누름 → 브라우저 명령창 억제 (2026-07-31 · 전 썸네일 계열) ═══════
   ■ 무엇이 문제였나
     휴대전화에서 카드 그림을 길게 누르면 브라우저가 제 명령창을 띄운다.
     그러면 기울이려던 손가락을 브라우저가 가로채서 기울기·빛무늬·팝업이
     그 자리에서 끊긴다. 뽑기 효과만 있는 그림도 똑같이 끊겼다.
   ■ 왜 두 종류인가
     ①그림 자체를 누르면        → 그림 저장 계열 명령창
     ②누를 거리(연결·단추)를 누르면 → 「새 탭에서 열기」 계열 명령창
     그림 칸은 대개 누를 거리 «안»에 있어서 둘 다 막아야 끊김이 사라진다.
     🔒 이 주석에 여는 태그 문자열을 적지 않는 이유 = 주석 한 줄이 기존 판정식의
        세기를 1 늘린다(그림 수·연결 수를 문자열로 세는 판정식이 이미 있다).
   ■ 여기(조각)에 두는 이유
     이 조각은 열세 개 생성기가 전부 제 결과물 안에 찍어 넣고, 엔티티·성능
     쪽은 주입기가 표식 사이에 찍어 넣는다. 한 곳을 고치면 전부 따라온다 —
     장마다 덮개를 씌우면 다음 장을 잊는다.
   ■ 건드리지 않는 것
     스크롤(touch-action)과 기울기는 그대로다. 이 규칙은 «고르기·끌기·명령창»
     세 가지만 끈다. 데스크톱 오른쪽 단추는 CSS 로 막히지 않으므로 그대로 산다
     (짝이 되는 조각 JS 가 «손가락에서 시작한 것»만 골라 막는다). */
img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
.cg,.cg__i,.cg__p,
.tb,.tb__n,.tb__r,.tb__v,
.fan,.fan__p,
.oppo__i,.oppo__t,.oppo__n,
.chain__c,.chain__p,
.btc,.btc__p,
.lk__i,.arow__w,.lg,.rail__p,
.card,.card__front,.holo-thumb-popup-preview,.holo-thumb-popup-preview__image{
  -webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}

/* ══ 위 목록의 «빠진 자리» 보충 (2026-08-06 38차 · 사용자 실기기 재발) ═══════
   ■ 왜 또 났나 — 위 목록은 시안 조각이 쓰는 이름만 담고 있었다. 그런데 라이브에서
     카드 그림을 가장 많이 세우는 것은 «표준 격자»(module-card-grid-page)와 «순위 줄»
     (row__a)이고, 그 둘의 이름이 목록에 한 번도 오른 적이 없다. 그림 자체는 위
     `img` 규칙이 막아 주지만, 그림을 감싼 «누를 거리»가 안 막히면 길게 누를 때
     「새 탭에서 열기」 계열 명령창이 그대로 뜬다 — 사용자가 본 것이 그 창이다.
   ■ 두 자리로 나눈 이유 — 끄는 것이 다르다.
       자리 A(감싼 누를 거리) = 명령창·끌기만 끈다. 글자 고르기는 «살린다» —
         이 줄들은 카드 이름·값 같은 «읽고 옮길 글»을 함께 지고 있어서, 고르기까지
         끄면 이름을 복사하지 못하는 새 결함이 생긴다.
       자리 B(그림 칸·폴백 판·팝업) = 고르기까지 끈다. 여기 글자는 그림을 대신하는
         표시라 고를 대상이 아니고, 고르기가 켜져 있으면 기울이려는 손가락이
         파란 선택 덩어리를 만들어 효과가 끊긴다.
   ■ 링크 기능은 그대로다 — 누르면 이동한다(막는 것은 «길게 누름»의 명령창뿐이다).
   ■ 담지 않은 것 = 글자만 있는 줄 목록(등락·함께 보기)의 링크. 거기엔 기울기도
     그림도 없어 끊길 것이 없고, 막으면 「주소 복사」라는 정상 사용만 잃는다.
   🔄 2026-08-06(40차) 위 마지막 줄의 전제가 «바뀌었다» — 등락 목록에 카드 그림이 생겼다
      (사용자 지적으로 썸네일을 넣었다 · movers-board.php). 그림을 감싼 누를 거리(.mv__t)가
      새로 생겼으므로 자리 A 에 잇는다. 그림 칸 자체(.row__p·.noimg 계열)는 아래 자리 B 가
      이미 덮고 있어 더할 것이 없다 — «감싼 것»만 빠져 있었다.
      🔒 같은 줄의 이름 링크(.mv__k)는 잇지 않는다 — 거기엔 그림이 없고 카드 이름을
         복사하는 것이 정상 사용이다(위 「담지 않은 것」의 사유가 그 칸에는 그대로 산다). */
.module-card-grid-page__thumb,
.a13__c,
.mv__t,
.row__a{-webkit-touch-callout:none;-webkit-user-drag:none}
.module-card-grid-page__fb,.module-card-grid-page__name,
.module-card-grid-page__rank,.module-card-grid-page__metric,
.a13__p,.a13__no,
.row__p,.row__p--none,
.lgr__p,.vfx__one,
.noimg,.noimg__hd,.noimg__n,.noimg__art,.noimg__m,.noimg__ft,.noimg__set,.noimg__c,
.holo-thumb-popup-preview__inner,.holo-thumb-popup-preview__fallback,.holo-thumb-popup-preview__go,.holo-thumb-popup-preview__go-text{
  -webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}

/* ══════════════════════════════════════════════════════════════════
   썸네일 호버 팝업 스타일  —  TCGGrail
   ──────────────────────────────────────────────────────────────────
   🚨 이 파일을 직접 고치지 마라. 시안에서 뽑아낸 것이다.
      원본   _시안/tcggrail-entity-full.html
      뽑개   _시안/스크립트/extract-server.js
      고칠 때는 시안을 고치고 뽑개를 다시 돌린다. 여기서 고치면 다음에 덮어써진다.
   ──────────────────────────────────────────────────────────────────
   파일 이름 앞의 _ = 아직 안 쓴다는 표시. loader.php 가 읽지 않는다.
   올릴 때 _ 를 떼고 core_enqueue_assets() 에 등록하며 core/VERSION 을 1 올린다.
   ──────────────────────────────────────────────────────────────────
   🔒 겹을 나눈 이유
      .holo-thumb-popup-preview         위치 전용 — 전환(transition)을 걸지 않는다
      .holo-thumb-popup-preview__inner  나타나고 사라지는 효과 전용
      한 요소에 둘 다 걸면 움직일 때마다 0.16초 애니메이션이 붙어
      손가락을 고무줄처럼 늦게 따라온다.
   ══════════════════════════════════════════════════════════════════ */
/* ── 상대 카드 격자 + 더보기 ── */
  .oppo{margin:14px 0 0}
.oppo__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:12px}
/* 🔧 2026-08-02 9차 — 이 칸에서 `cursor:pointer` 를 걷어냈다(확정 규칙 31호 · 전용 시트
   tcggrail-entity.css 의 같은 규칙과 «한 회차에» 함께 고친다).
   카드 그림 칸 자신은 언제나 <span> 이고 누르는 일은 감싼 줄(li.row--l > a.row__a)이나 <a>
   가 한다. 칸이 «자기 힘으로» 손가락을 띄우면, 감싼 것이 없는 칸(li.row--me · .btc)에서도
   손가락이 떠서 「눌러도 갈 곳이 없는」 거짓 신호가 된다(실측 5칸).
   cursor 는 상속되는 성질이라 «지우는 것»이 곧 수리다 — 누를 수 있는 칸은 감싼 것이 이미
   손가락을 지고 있어 그대로 물려받는다(실측: 누를 수 있는 88칸 전부 pointer 유지).
   🔒 한쪽 시트만 고치면 아무 효과가 없다 — 두 시트가 같은 선언을 들고 있어 남은 쪽이 이긴다. */
.oppo__i{position:relative;display:block;border-radius:9px;overflow:hidden;border:1px solid var(--line);
    background:var(--surf2);aspect-ratio:745/1040}
.oppo__i{background-size:cover;background-position:center}
.oppo__t{position:absolute;left:0;right:0;bottom:0;padding:3px 5px;font-size:11px;font-weight:700;
    background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff;text-align:center;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.oppo__i:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.oppo__n{position:absolute;left:5px;top:5px;padding:1px 6px;border-radius:5px;font-size:13px;font-weight:800;
    background:rgba(0,0,0,.62);color:#fff;font-variant-numeric:tabular-nums}
.oppo__more{display:flex;align-items:center;justify-content:center;gap:9px;margin:14px 0 0;padding:13px;
    border-radius:var(--r-s);border:1px solid var(--line2);background:var(--surf2);
    font-size:15px;font-weight:800;color:var(--acc-i);text-decoration:none}
.oppo__more:hover{border-color:var(--acc)}
.oppo__cap{margin:0 0 10px;font-size:14px;color:var(--ink2)}
/* ── 썸네일 호버 → 홀로 팝업 ── */
  /* 원근은 고정값이라 카드가 작으면 납작해 보인다 — 폭에 비례해 좁힌다 (2026-07-27 실측) */
  .holo-thumb-popup-preview__image{width:100%;height:100%;border-radius:12px;background-size:cover;background-position:center}
.holo-thumb-popup-preview{position:fixed;z-index:90;width:260px;aspect-ratio:745/1040;pointer-events:none;
    opacity:0;transform:scale(.94);transition:opacity .16s ease,transform .16s ease;
    filter:drop-shadow(0 22px 44px rgba(0,0,0,.5))}
.holo-thumb-popup-preview.state-current-active{opacity:1;transform:scale(1)}
@media (prefers-reduced-motion:reduce){.holo-thumb-popup-preview{transition:none}}
/* ══ 호버 팝업 홀로 — 데스크톱 마우스 전용 (2026-07-28) ═══════════
     기록(§4-c)대로 모바일 기기 기울기는 넣지 않는다.
     뺀 근거(값 하나 · 성능 · 시선 분산)는 격자·모바일에서만 성립한다. */
  .holo-thumb-popup-preview .card{width:100%;height:100%;--card-radius:12px}
.holo-thumb-popup-preview .card__translater,.holo-thumb-popup-preview .card__rotator{width:100%;height:100%}
/* ══ 팝업 입체감 — 히어로와 따로 잡는다 (2026-07-28 사용자 지시) ═══
     "히어로와 하단 목록형 50개는 각각 적용해"

     입체감의 세기 = 원근 ÷ 카드 폭. 작을수록 세다.
     두 카드는 크기도 쓰임도 달라 같은 값을 쓰면 한쪽이 어색해진다.
       히어로  244px · 페이지의 주인공 · 오래 들여다본다 → 비율 1.6
       팝업    260px · 손가락 따라 스쳐 지나간다 · 짧게 본다 → 비율 1.5 (조금 더 세게)
     짧게 스치는 만큼 한눈에 「움직인다」가 보여야 하므로 팝업을 조금 더 세게 잡는다.
     세기 조절은 아래 숫자 하나만 바꾸면 된다. */
  .holo-thumb-popup-preview{--pop-w:260px}
.holo-thumb-popup-preview .card__translater,.holo-thumb-popup-preview .card__rotator{perspective:calc(var(--pop-w) * 1.5)}
.holo-thumb-popup-preview .card__front{border-radius:12px;background-size:cover;background-position:center}
/* ══ 팝업 움직임 (2026-07-28) ═══════════════════════════════════
     겹을 나눈 이유 — 한 요소에 위치와 나타나는 효과를 같이 걸면
     움직일 때마다 0.16초 애니메이션이 붙어 손가락을 고무줄처럼 늦게 따라온다.
       바깥 .holo-thumb-popup-preview         위치 전용 · 전환 없음
       안쪽 .holo-thumb-popup-preview__inner  나타나고 사라지는 효과 전용 */
  .holo-thumb-popup-preview{left:0;top:0;transform:translate3d(-9999px,-9999px,0);
    transition:none;opacity:1;will-change:transform}
.holo-thumb-popup-preview__inner{width:100%;height:100%;opacity:0;transform:scale(.94);
    transition:opacity .16s ease,transform .16s ease;
    filter:drop-shadow(0 22px 44px rgba(0,0,0,.5))}
.holo-thumb-popup-preview.state-current-active .holo-thumb-popup-preview__inner{opacity:1;transform:scale(1)}
.holo-thumb-popup-preview{filter:none}
/* 손가락으로 훑을 때 브라우저가 「스크롤인가 아닌가」를 망설이지 않게 한다.
     pan-y = 세로 스크롤은 브라우저가, 가로 움직임은 우리가 받는다.
     🔒 길게 누름 차단(고르기·끌기·명령창)은 2026-07-31 에 _holo.css 의
        「길게 누름」 구획 한 곳으로 합쳤다 — 여기에 또 적으면 두 곳이 된다.
        그 구획의 원본은 _시안/스크립트/_entity-fx.css 이고 sync-server-fx.js 가 찍는다. */
  .oppo__i{touch-action:pan-y}
/* ══ 카드 칸 — 배경에서 <img> 로 (2026-07-28) ═══════════════════
     배경일 때는 background-size:cover 가 하던 일을 object-fit 이 대신한다.
     칸에는 이미 position:relative 와 aspect-ratio 가 있어 자리는 그대로다. */
  .oppo__i>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
    /* 그림이 손가락을 받지 않게 — 버튼이 받아야 기울기가 동작한다 */
    pointer-events:none}
/* 글자 딱지가 그림에 가리지 않게 — 그림보다 위층에 둔다 */
  .oppo__t,.oppo__n{z-index:2;pointer-events:none}
/* 🌐 2026-08-02 9차 — 화면에 나오는 글자를 영문으로 바꿨다.
   `.oppo__i` 는 TCGGrail(영어 사이트) 카드 칸의 클래스다. 지금은 noimg 를 붙이는 코드가
   없어 이 글자가 뜨지 않지만, 붙는 순간 영어 페이지에 한국어가 나온다 — 시한폭탄이라
   지금 없앤다. (전용 시트 tcggrail-entity.css :5135 는 이미 "No image" 이고, 그 시트는
   스포크 문맥에서만 실린다. 정책·안내 페이지에는 이 공용 시트만 실리므로 여기가 남으면
   같은 칸이 시트에 따라 다른 말을 하게 된다.) */
.oppo__i.noimg::after{content:"No image";position:absolute;left:0;right:0;top:36%;
    text-align:center;font-size:10px;font-weight:600;letter-spacing:.03em;color:var(--mut)} /* 2026-08-27 지휘자 판정식 오류 정정 — 정본대로 복원 */
/* ⚰️ 아래 두 규칙은 «닿지 않는다»(2026-08-04 확인 후 남겨 둠).
   옛 방식은 팝업 껍데기에 noimg 를 붙였는데(pop.classList.toggle('noimg', …)) 그것이 결함이었다 —
   껍데기에 색을 칠하면 닫아도 상자가 화면에 남았다(닫힘은 안쪽 겹의 투명도로만 처리되기 때문).
   지금 구동부는 껍데기에 «상태 표시»(data-fb)만 남기므로 .holo-thumb-popup-preview.card-image-fallback 은
   어디에도 붙지 않는다
   (실측: card-holo-popup.js 안 pop.classList 사용처는 'state-current-active' 하나뿐). 무해하여 그대로 둔다. */
.holo-thumb-popup-preview.card-image-fallback .card__front{background:var(--surf2)}
.holo-thumb-popup-preview.card-image-fallback .card__front::after{content:"No image";position:absolute;inset:0;
    display:grid;place-items:center;font-size:13px;font-weight:600;color:var(--mut)} /* 2026-08-27 지휘자 판정식 오류 정정 — 정본대로 복원(이 규칙 자체는 위 주석대로 미도달 코드로 확인됨·census 안전만 목적) */

/* ══ 팝업 «그림 없음» 부품 자리 + 행선지 줄 (2026-07-31 · 사용자 실기기 3건 · 2026-08-04 라이브 이식)
   짝 구동부 = assets/js/card-holo-popup.js · SSOT = _시안/스크립트/_entity-fx.js

   ■ ① 그림 없음 자리 (.holo-thumb-popup-preview__fallback)
     그림이 없는 칸을 올려도 팝업은 «빈 카드»만 띄웠다 — 무엇을 보는 자리인지 알 수 없다.
     → 그 칸이 «이미 쓰고 있는» 정본 폴백 부품(.noimg)을 그대로 복제해 띄운다. 새 모양은 없다.
       칸에서 자리가 좁아 접어 두었던 이름·번호가 260px 자리에서는 펴진다.
     🔒 껍데기(.holo-thumb-popup-preview)에는 상태 표시(data-fb)만 둔다 — 위 ⚰️ 주석의 사고가 그 이유다.

   ■ ② 행선지 줄 (.holo-thumb-popup-preview__go)
     손가락으로 누르면 팝업이 화면을 덮는다. 덮은 동안에도 «이 칸이 어디로 가는지»는 보여야 한다.
     🔒 행선지가 실재하는 칸에서만 켠다(주소가 # 인 칸에서는 접는다) —
        「링크 부여 기준 = 행선지 존재」와 같은 기준이다.
     🔒 팝업은 손가락을 가로채지 않는 겹(pointer-events:none)이라 이 줄은 «신호»다.
        실제 이동은 칸 자체가 링크이므로 그 칸을 누르면 일어난다. */
.holo-thumb-popup-preview__inner{position:relative}
.holo-thumb-popup-preview__fallback{position:absolute;left:0;top:0;right:0;bottom:0;z-index:1;display:none;
  aspect-ratio:auto;border-radius:12px;overflow:hidden}
.holo-thumb-popup-preview[data-fb] .holo-thumb-popup-preview__fallback{display:block}
.holo-thumb-popup-preview[data-fb] .card__shine,.holo-thumb-popup-preview[data-fb] .card__glare{opacity:0}
/* 🔒 아래 여백 42px = 행선지 줄(32px)이 앉을 자리를 미리 비워 둔다 —
      안 비우면 번호·연도가 그 띠 뒤로 들어가 잘린다(실측 17px 겹침).
   🔁 확대해도 «카드 한 장»이어야 한다(2026-07-31 사용자 확정). 팝업 껍데기(.card__front)는
      제 테두리가 없다(그림이 곧 카드 면이었기 때문이다). 그림 대신 이 부품이 카드 면을 맡는
      자리에서는 부품이 테두리를 그린다 — 부품이 카드 가장자리에 딱 맞게 깔리므로 이것이 곧
      카드 한 겹 프레임이다(두 겹 아님). 무늬는 넣지 않는다. */
.holo-thumb-popup-preview__fallback .noimg{width:100%;height:100%;aspect-ratio:auto;border-radius:12px;
  border:1px solid var(--line2,#d8dce4);
  display:grid;grid-template-rows:auto 1fr auto;gap:4px;padding:15px 16px 42px;text-align:left;
  background:var(--surf2,#eef1f6)}
/* 🚨 2026-07-31 렌더 실측 — 원본 base.css 의 `.card__rotator *` 가 «카드 안의 모든 것»을
   카드 모양 상자로 만든다(width:100% · display:grid · grid-area:1/1 · aspect-ratio ·
   border-radius · overflow:hidden). 그 자리에는 여태 «그림 한 장»만 들어갔으므로 그 규칙이 맞았다.
   우리는 여기에 «글이 있는 부품»을 넣으므로 그 강제가 글줄에도 걸려, 이름 한 줄이 카드 비율로
   늘어났다 — 실측 318.34px(= 글줄 폭 228.578 ÷ 카드 비율 0.718). 세 줄이 각각 318px 이 되니
   서로를 덮어 한 덩어리로 보였다(사용자가 본 「글자 겹침」의 정체다).
   🔒 되돌리는 범위는 «부품 안쪽 글줄»뿐이다 — 카드 자신의 비율·모서리 규칙은 한 줄도 안 건드린다. */
.holo-thumb-popup-preview__fallback .noimg *{aspect-ratio:auto;overflow:visible;width:auto}
/* 실좌표 네 슬롯 + 가운데 그림 자리 — 칸에서 접혀 있던 것이 260px 에서 전부 펴진다.
   🔒 띠(위·아래)는 «면»으로 선다 — 무채 한 톤 위의 진한 톤. */
.holo-thumb-popup-preview__fallback .noimg__hd,.holo-thumb-popup-preview__fallback .noimg__ft{display:flex;grid-row:auto;align-items:baseline;
  justify-content:space-between;gap:7px;padding:4px 8px;border-radius:5px;overflow:hidden;
  background:var(--line2,#d8dce4)}
.holo-thumb-popup-preview__fallback .noimg__hd{grid-row:1}
.holo-thumb-popup-preview__fallback .noimg__ft{grid-row:3}
.holo-thumb-popup-preview__fallback .noimg__art{display:grid;grid-row:2;place-items:center;border-radius:6px;overflow:hidden;
  background:var(--surf,#f7f9fc)}
.holo-thumb-popup-preview__fallback .noimg__n{display:block;font-size:15px;font-weight:800;line-height:1.3;
  color:var(--ink2,#2b303b)}
.holo-thumb-popup-preview__fallback .noimg__m{display:block;text-align:center;
  font-size:13.5px;font-style:normal;font-weight:700;line-height:1.4;word-break:keep-all;
  color:var(--mut,#6b7280)}
.holo-thumb-popup-preview__fallback .noimg__hp,.holo-thumb-popup-preview__fallback .noimg__set,.holo-thumb-popup-preview__fallback .noimg__c{display:block;
  font-size:13.5px;font-style:normal;font-weight:700;color:var(--mut,#6b7280)}
.holo-thumb-popup-preview__go{position:absolute;left:0;right:0;bottom:0;z-index:6;
  display:flex;align-items:center;justify-content:center;gap:7px;
  padding:6px 9px 7px;border-radius:0 0 12px 12px;text-decoration:none;
  font-size:13px;line-height:1.35;font-weight:800;color:#fff;
  background:linear-gradient(transparent,rgba(0,0,0,.62) 38%,rgba(0,0,0,.92))}
.holo-thumb-popup-preview__go[hidden]{display:none}
.holo-thumb-popup-preview__go-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.holo-thumb-popup-preview__go-arrow{flex:0 0 auto;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;
  background:var(--acc-s,rgba(124,108,245,.16));color:var(--acc-i,#5b4bd6);
  font-size:13px;font-weight:800;line-height:1}
.holo-thumb-popup-preview__go-arrow::after{content:"→"}


/* ══════════════════════════════════════════════════════════════════════════════
   ⚠️ 경계 가드 — 이 3줄을 지우면 «전 사이트»의 랜딩 카드가 깨진다 (2026-08-01)
   ──────────────────────────────────────────────────────────────────────────────
   무슨 일이 있었나
     바로 위 «원전 이식» 구획은 simeydotme/pokemon-cards-css 원문이라
     선택자가 «bare .card» 다(원본이 그렇게 쓰였고, 수치·수식·층 순서는 손대지 않는 것이
     사용자 확정 지시다 — _holo.css 머리 주석).
     그런데 이 modules.css 에는 «이미» 랜딩용 .card 가 있다(위쪽 구획):
       .card { background:#fff; border:1px solid #e2e8f0; border-radius:8px }
       .landing-page .card · .landing-page .card.kpi · .landing-page .card .module-chart-panel
     원전 구획이 뒤에 오므로 캐스케이드에서 이긴다. 실측한 충돌 속성은 12개이고
     그중 셋이 화면을 실제로 깬다:
       pointer-events:none  → 랜딩 카드 안의 링크·버튼이 «전부» 안 눌린다
       aspect-ratio         → 랜딩 카드가 세로로 길쭉한 카드 비율로 찌그러진다
       border-radius        → 8px 계약이 12px 로 덮인다
     (나머지 user-select·transform·outline·will-change 등도 같이 실린다.)

   왜 이렇게 고쳤나
     ① 원전 값을 한 개도 바꾸지 않는다(사용자 확정 「그대로 적용」).
     ② 기존 라인도 한 줄도 바꾸지 않는다(말미 추가만).
     ③ 홀로 카드는 «항상» .module-card-holo / .art / .holo-thumb-popup-preview 안에 있다 —
        구동부(card-holo.js)가 무는 선택자가 '.art .card' 와 '.holo-thumb-popup-preview .card' 뿐이라
        그 «밖»의 .card 는 홀로 카드가 아님이 보장된다.
     그래서 홀로 카드가 아닌 .card 에서만 충돌 3속성을 원래대로 되돌린다.

   충돌 census 재실행(다시 재라 — 이 주석을 믿지 말 것):
     grep -cE "(^|[ ,>+~])\.card([.,: {>+~]|$)" modules.css
   ══════════════════════════════════════════════════════════════════════════════ */
.card:not(.module-card-holo .card):not(.art .card):not(.holo-thumb-popup-preview .card):not(.vfx__hero .card) {
  pointer-events: auto; aspect-ratio: auto; border-radius: 8px;
  transform: none; user-select: auto; -webkit-user-select: auto; will-change: auto;
}

/* ══════════════════════════════════════════════════════════════════════════════
   ▲▲▲ 신규 승격 5종 — 경계 끝 (2026-08-01) ▲▲▲
   ══════════════════════════════════════════════════════════════════════════════ */


/* ══════════════════════════════════════════════════════════════════════════════
   R2-① 앱층 2단 격자 «.app-duo» — 카드 좌 · 수치 우 (2026-08-01)
   ──────────────────────────────────────────────────────────────────────────────
   원본 = _시안/tcggrail-entity-full.html (값 발명 0 · 아래 행번호가 근거)
     :2920  <div class="agrid"> ├ <div class="art">(카드 실물)
                                └ <div class="rcol">(칩줄 · 수치 칸)
     :68    .agrid{display:flex;gap:26px;align-items:stretch}
     :70    .rcol{flex:1 1 auto;display:flex;flex-direction:column;gap:11px;min-width:0}
     :69    @media (max-width:820px){.agrid{flex-direction:column;align-items:center}}

   ⚠️ 시안은 «2겹»(.agrid > .art + .rcol)이고 라이브 DOM 은 «1겹»이다 —
      card-holo · stat-pill · kpi-board 가 래퍼의 형제로 평평하게 들어온다
      (sections.php 의 wrap_class 가 만드는 래퍼는 한 겹이다).
      한 flex 줄은 곧 한 «행»이라, 형제 2·3번째를 같은 열에 세로로 쌓지 못한다.
      그래서 데스크톱은 «오른쪽 열» 자체를 격자 열로 잡는다. 좁은 화면은 시안대로
      flex 세로 적층(:69)을 그대로 쓴다. 수치(26px · 11px · 820px)는 전부 시안 값이다.

   🔒 카드 «폭»은 여기서 정하지 않는다 — .module-card-holo__stage.art 계약이 이미 SSOT 다
      (이 파일 위쪽). 두 곳에서 폭을 정하면 다음 사람이 어느 쪽을 고쳐야 할지 모른다.
      현재 계약(2026-08-02 R5 정정) = min(434px,42vw) / ≤1199px min(394px,42vw)
      / ≤820px min(330px,78vw). 434·394 는 시안 «렌더» 실측값이다 —
      R1 이 적었던 244px 는 시안의 CSS 초기값일 뿐 실제로 쓰이는 폭이 아니었다.

   🔒 아이템 중립 클래스다 — 포켓몬 카드 전용이 아니라 「그림/실물 좌 · 수치 우」
      형상을 쓰는 어느 사이트·어느 엔티티든 wrap_class 로 부르면 된다.
   ══════════════════════════════════════════════════════════════════════════════ */
.app-duo {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 26px;                /* 시안 :68 .agrid gap */
  align-items: start;
}
/* 왼쪽 = 카드. 오른쪽 칸이 몇 개로 늘든 그 전부와 나란히 서야 하므로 행을 넉넉히 건넌다
   (`1 / -1` 은 «암시적» 행을 못 건넌다 — 오른쪽 칸은 전부 암시적 행이다). */
.app-duo > .module-card-holo { grid-column: 1; grid-row: 1 / span 20; align-self: start }
/* 오른쪽 = 나머지 전부(칩줄 · 수치 칸 …)가 한 열에 세로로 쌓인다 */
.app-duo > * { grid-column: 2; min-width: 0 }
/* 🚨 오른쪽 칸 «사이» 간격은 row-gap 이 아니라 여백으로 준다.
      카드가 행을 여러 개 건너므로 row-gap 을 쓰면 내용이 없는 행 사이에도 가터가 붙어
      (격자 가터는 내용 유무를 보지 않는다) 오른쪽 열 아래에 쓰지 않은 공백이 쌓인다.
      값 11px 은 시안 :70 .rcol gap 그대로다. */
.app-duo > :not(.module-card-holo) + :not(.module-card-holo) { margin-top: 11px }

@media (max-width: 820px) {
  /* 시안 :69 — 좁은 화면은 세로 적층 */
  .app-duo { display: flex; flex-direction: column; align-items: center; gap: 11px }
  .app-duo > *,
  .app-duo > .module-card-holo { grid-column: auto; grid-row: auto; width: 100% }
  /* 여기서는 gap 이 간격을 맡는다 — 위 여백을 그대로 두면 11px 이 두 번 붙는다 */
  .app-duo > :not(.module-card-holo) + :not(.module-card-holo) { margin-top: 0 }
}


/* ══════════════════════════════════════════════════════════════════════════════
   R2-② 「Back to summary」 복귀 앵커 = 원형 판 + ↑ 획 (2026-08-01)
   ──────────────────────────────────────────────────────────────────────────────
   원본 = _시안/tcggrail-entity-full.html (값 발명 0)
     :374  .back{margin:14px 0 0;font-size:13px;color:var(--mut);text-decoration:none}
     :872  .back{display:inline-flex;align-items:center;gap:6px;font-weight:700}
     :873  .back::before{content:"↑";display:inline-grid;place-items:center;
             width:19px;height:19px;border-radius:50%;background:var(--surf2);
             border:1px solid var(--line2);color:var(--mut);
             font-size:13px;font-weight:800;line-height:1;transition:…}
     :876  .back:hover::before{background:var(--acc);border-color:var(--acc);
             color:#fff;transform:translateY(-2px)}
     :877  .back:hover{color:var(--acc-i)}

   색은 시안 «라이트» :root(:20-21)를 리터럴로 옮긴다 — 라이브에 --surf2/--line2/
   --mut/--acc/--acc-i 정의가 없다(modules.css grep 0건). 실측값:
     --surf2:#EEF1F6 · --line2:#CFD6E2 · --mut:#727E92 · --acc:#5747E0 · --acc-i:#3B2DBF

   ⚠️ 훅이 클래스가 아니라 «목적지 앵커»(href="#summary")다. link-grid 모듈은 임의
      클래스를 내보내지 않고 모듈 파일 수정은 이번 범위 밖이라 이렇게 물렸다.
      래퍼 id(wrap_id='summary')와 한 쌍이므로 둘은 같이 움직인다.
      다음 회차에 link-grid.php 에 pill 변형 옵션이 생기면 클래스 훅으로 승격한다.
   ⚠️ 화살표는 «글자»가 아니라 판 위의 획이다 — 라벨에서 ↑ 를 뺀 이유(글자 ↑ 는
      굵기가 안 먹어 링크 신호로 약하다 · 정본 §5-q).
   ══════════════════════════════════════════════════════════════════════════════ */
.module-link-grid__pill[href="#summary"] {
  flex: 0 0 auto;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 6px;                        /* 시안 :872 */
  margin: 14px 0 0;                /* 시안 :374 */
  padding: 0;
  min-height: 0;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #727E92;                  /* 시안 --mut */
  font-size: 13px;                 /* 시안 :374 — 13px 하한 준수 */
  font-weight: 700;                /* 시안 :872 */
  text-align: left;
}
.module-link-grid__pill[href="#summary"]::before {
  content: "↑";
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 19px;                     /* 시안 :873 원형 판 지름 */
  height: 19px;
  border-radius: 50%;
  background: #EEF1F6;             /* 시안 --surf2 */
  border: 1px solid #CFD6E2;       /* 시안 --line2 */
  color: #727E92;                  /* 시안 --mut */
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  transition: transform .13s ease, background .13s ease, color .13s ease;
}
.module-link-grid__pill[href="#summary"] .module-link-grid__label { font-weight: 700 }
.module-link-grid__pill[href="#summary"]:hover,
.module-link-grid__pill[href="#summary"]:focus-visible {
  background: none;
  border-color: transparent;
  box-shadow: none;
  transform: none;                 /* 상위 pill 의 translateY(-1px) 중화 — 판만 움직인다 */
  color: #3B2DBF;                  /* 시안 --acc-i */
}
.module-link-grid__pill[href="#summary"]:hover::before,
.module-link-grid__pill[href="#summary"]:focus-visible::before {
  background: #5747E0;             /* 시안 --acc */
  border-color: #5747E0;
  color: #fff;
  transform: translateY(-2px);     /* 시안 :876 — 위로 복귀 신호 */
}
/* 복귀 앵커는 «격자 칸»이 아니라 문단 뒤에 붙는 한 줄 링크다(시안 :3622 .back).
   :has() 미지원 브라우저에서도 위 pill 규칙만으로 읽히므로 이 줄은 다듬기다. */
.module-link-grid:has(.module-link-grid__pill[href="#summary"]) {
  display: block;
  margin: 0;
}

/* ═══════════════════════════════════════════════════════════════════════════
   🔗 «페이지를 떠나는» 타일의 링크 신호 (2026-08-09 r3b · 사용자 지적 → 전수 부착)
   ───────────────────────────────────────────────────────────────────────────
   ■ 사용자 지적(표본 3곳) — 「Open the group…」·「Every card mechanic in the archive」·
     「Every energy type in the archive」 타일이 «눌러야 하는 것으로 안 보인다». 실측해
     보니 표본 3곳이 아니라 이 조각의 pill 전부가 같은 상태였다: 테두리 하나에 글자만
     있어서, 같은 판 위의 «정보 칸»(사실값 격자·분포 줄)과 모양이 구분되지 않았다.
   ■ 무엇을 신호로 삼나 — 바로 위 복귀 앵커가 이미 쓰는 «원형 판 + 화살표»다. 그 문법이
     사용자 검수를 통과한 확정 문법이고(:14035~), 여기서는 방향만 바꿔 쓴다:
       복귀(같은 문서 위로) = ↑   ·   이동(다른 페이지로) = →
     색·지름·테두리·호버 규칙은 «한 글자도» 바꾸지 않는다 — 두 신호가 한 집안으로 읽혀야
     사용자가 「원형 판이 붙으면 눌리는 것」이라는 규칙을 한 번만 배운다.
   ■ 어디에 거는가 = href 가 «/» 로 시작하는 pill 에만.
       · 같은 문서 앵커(#…)는 제외 — 그것은 «떠나는» 링크가 아니고, #summary 는 제 규칙을
         이미 갖는다(위 구획). 두 규칙이 겹치지 않도록 이 선택자에서 빠진다.
       · 클래스를 새로 만들지 않는다 — 조각은 임의 클래스를 안 내보내고, 조각 계약을 고치면
         이 신호를 위해 새 이름이 하나 생긴다(신규 클래스 0 규율). 훅은 «가는 곳»이다.
   ■ 화살표는 «글자»가 아니라 판 위의 획으로 읽힌다 — 원형 판 안에 갇혀 크기·굵기가 판에
     매이기 때문이다(맨 → 글자는 글꼴이 굵기를 정해 키워도 가늘다 · 정본 §5-q).
   🔒 글자는 «가운데 그대로» 선다 — 판은 오른쪽 위 모서리에 얹히지만(position:absolute),
      안 여백을 오른쪽에만 주면 가운데 정렬된 글자가 왼쪽으로 밀린다. 그래서 좌우에 «같이»
      준다: 칸 크기는 그대로고, 판이 앉을 자리만큼 안쪽이 좁아지며, 중심은 안 움직인다.
   ♿ 키보드도 같은 신호를 받는다(:focus-visible) · 움직임 축소 설정에서는 전환만 끈다.
   ══════════════════════════════════════════════════════════════════════════ */
.module-link-grid__pill[href^="/"] {
  position: relative;
  padding-left: 26px;
  padding-right: 26px;
}
.module-link-grid__pill[href^="/"]::after {
  content: "→";
  position: absolute;
  top: 6px;
  right: 6px;
  display: inline-grid;
  place-items: center;
  width: 19px;                     /* 복귀 앵커와 같은 원형 판 지름(:14053) */
  height: 19px;
  border-radius: 50%;
  background: #EEF1F6;             /* 시안 --surf2 */
  border: 1px solid #CFD6E2;       /* 시안 --line2 */
  color: #727E92;                  /* 시안 --mut */
  font-size: 13px;                 /* 13px 하한 준수 */
  font-weight: 800;
  line-height: 1;
  transition: transform .13s ease, background .13s ease, color .13s ease;
}
.module-link-grid__pill[href^="/"]:hover::after,
.module-link-grid__pill[href^="/"]:focus-visible::after {
  background: #5747E0;             /* 시안 --acc */
  border-color: #5747E0;
  color: #fff;
  transform: translateX(2px);      /* 이동 신호 — 복귀는 위로, 이동은 오른쪽으로 */
}
@media (prefers-reduced-motion: reduce) {
  .module-link-grid__pill[href^="/"]::after { transition: none; }
}

/* 🔗 막대 줄의 이름이 링크일 때 (2026-08-09 r3b · 위와 같은 라운드의 전수 부착)
   ───────────────────────────────────────────────────────────────────────────
   ■ 어디인가 — rate-bar 는 항목에 url 이 있으면 이름을 «경량 텍스트 앵커»로 낸다
     (모듈 머리말 계약). 성능판의 다중 모집단 줄이 그 자리로 축 페이지에 간다.
   ■ 왜 앞의 두 문법으로 못 덮나 — 이 앵커는 타일도 아니고 «행 전체 링크»도 아니다
     (줄에서 이름 한 조각만 링크다). 행 전체 링크의 신호는 «행 배경 + 행끝 배지»인데,
     그 신호를 여기 걸면 눌리지 않는 나머지 칸까지 눌리는 것처럼 보인다.
     ▶ 확정 문법 셋 중 이 자리에 맞는 것은 «산문 링크 = 밑줄»이다. 글자만 있는 링크이므로.
   ■ 왜 기존 규칙이 안 닿았나 — 그 규칙의 분모가 `p > a` 와 `li:not([class]) > a` 다
     (user-feedback.css [8]). 이 앵커의 부모는 `span.module-rate-bar__label` 이라 둘 다 아니다.
     선택자를 넓히는 대신 «그 자리만» 같은 선언으로 이어 준다(목차가 딸려 들어간 사고와
     같은 사유로, 넓은 선택자를 다시 넓히지 않는다).
   🔒 값·색을 건드리지 않는다 — 밑줄만 더한다(링크색은 그대로 상속된다).
   🔒 클래스를 진 앵커에는 걸지 않는다 — 그런 앵커는 제 모양으로 이미 말한다(같은 사고). */
.module-rate-bar__label > a:not([class]) {
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   R3-②③ · R4-④ 시각 수리 (2026-08-01) — 시안 tcggrail-entity-full.html 실측 이식
   ① .kpi--gauge      시장 상태 계기판(3색 호 + 바늘)      원본 시안 :507-517 · :2996
   ② __card-value/meta/badge/icon--svg  빠른 이동 카드 실수치  원본 시안 :152-170
   ③ .module-rate-bar__item--self       분포 안 «나» 표시      원본 시안 .row--me
   글자 크기 하한 13px 준수(정본 :185) — 시안의 12px .gt 는 13px 로 올려 옮겼다.
   ═════════════════════════════════════════════════════════════════════════ */

/* ── ① 계기판 카드 ─────────────────────────────────────────────────────── */
.landing-page .kpi--gauge { align-items: center; text-align: center }
.landing-page .kpi--gauge .kpi__label { align-self: stretch; text-align: left }
.landing-page .kpi__gauge-state {
  font-size: 17px; font-weight: 800; letter-spacing: -.03em; line-height: 1.15;
  color: var(--lp-text);
}
.landing-page .kpi__gauge-state.up   { color: var(--lp-up) }
.landing-page .kpi__gauge-state.down { color: var(--lp-down) }
.landing-page .kpi__gauge { width: 100%; display: flex; justify-content: center }
.landing-page .kpi__gauge svg { width: 100%; max-width: 104px; height: auto; margin: 2px 0 -4px }
.landing-page .kpi__gauge-tick { font-size: 13px; font-weight: 700; fill: var(--lp-muted) }
.landing-page .kpi__gauge-note {
  font-size: 13px; color: var(--lp-muted); line-height: 1.45; margin-top: 4px; text-align: left;
}

/* ── ② 빠른 이동 카드 — 아이콘(데이터 도형) · 실수치 · 보조 · 배지 ──────── */
.module-link-grid__card-icon--svg {
  display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px;
  background: rgba(87, 71, 224, .10); color: #3B2DBF;   /* 시안 --acc-s / --acc-i */
  flex: 0 0 auto;
}
.module-link-grid__card-icon--svg svg {
  width: 21px; height: 21px; display: block;
  fill: none; stroke: currentColor; stroke-width: 2.1;
  stroke-linecap: round; stroke-linejoin: round;
}
.module-link-grid__card-icon--svg svg .f,
.module-link-grid__card-icon--svg svg rect { fill: currentColor; stroke: none }
.module-link-grid__card-value {
  font-size: 19px; font-weight: 800; letter-spacing: -.025em; line-height: 1.2;
  margin-top: 2px;
}
.module-link-grid__card-value--up   { color: var(--lp-up, #16a34a) }
.module-link-grid__card-value--down { color: var(--lp-down, #dc2626) }
.module-link-grid__card-meta {
  font-size: 13px; font-weight: 600; line-height: 1.45; margin-top: 3px;
  color: #64748b;
}
.module-link-grid__card-badge {
  display: inline-block; align-self: flex-start; margin-top: 6px;
  padding: 3px 10px; border-radius: 999px;
  font-size: 13px; font-weight: 700; line-height: 1.35;
  background: rgba(100, 116, 139, .15); color: #475569;
}
.module-link-grid__card-badge--paid  { background: rgba(87, 71, 224, .14); color: #3B2DBF }
.module-link-grid__card-badge--never { background: rgba(220, 38, 38, .14);  color: #b91c1c }

/* ── ③ 분포 막대에서 «지금 이 항목» ────────────────────────────────────────
   색(tier)만으로 표시하면 흑백·색약·다크에서 사라진다. 형태로 한 번 더 말한다:
   왼쪽 굵은 획 + 라벨 굵기 + 트랙 테두리. 정본 「의미를 진 요소는 형태로도 무게를」. */
.module-rate-bar__item--self {
  position: relative;
  padding-left: 11px;
}
.module-rate-bar__item--self::before {
  content: ""; position: absolute; left: 0; top: 2px; bottom: 2px;
  width: 3px; border-radius: 2px; background: currentColor; opacity: .75;
}
.module-rate-bar__item--self .module-rate-bar__label,
.module-rate-bar__item--self .module-rate-bar__value { font-weight: 800 }
.module-rate-bar__item--self .module-rate-bar__track {
  box-shadow: 0 0 0 1.5px rgba(15, 23, 42, .22);
}

/* ── ④ 막대 줄의 «얼굴» 한 장 (2026-08-10 r5 · additive) ──────────────────────
   무리 이름은 추상명사라 글자만으로는 그 무리가 그려지지 않는다. 그 무리의 맨 위 한 장이
   막대 옆에 서면 「무엇을 재는 자인가」가 눈에 먼저 읽힌다(축 명부 «대표 얼굴»과 같은 사상).
   🔒 세 규칙뿐이다 — 자리(줄을 가로로 눕힘) · 얼굴 폭 · 나머지가 남은 폭을 다 씀.
      모양(모서리·테두리·잘림)은 사이트 훅이 지므로 여기서 그리지 않는다.
   🔒 얼굴이 없는 줄에는 이 클래스가 안 붙는다 — 기존 산출은 한 글자도 안 바뀐다.
   🔒 폭 46px = 축 명부의 대표 얼굴과 같은 폭(item-modules.css :7533) — 두 자리가 같은
      크기로 서야 「같은 뜻의 그림」으로 읽힌다. 세로는 카드 비율이 정한다. */
.module-rate-bar__item--faced { display: flex; align-items: flex-start; gap: 11px }
.module-rate-bar__face      { flex: 0 0 auto; width: 46px; align-self: center }
.module-rate-bar__face-body { flex: 1 1 0; min-width: 0 }
/* 얼굴이 앞자리를 46px 가져가므로 머리 줄이 좁아진다. 좁아진 채 한 줄을 고집하면 이름과
   값이 서로를 밀어 둘 다 접힌다(실측 900px: 「Every card / in the / archive —」 다섯 줄).
   그래서 «얼굴 있는 줄에서만» 머리를 접히게 둔다 — 이름이 한 줄, 값이 다음 줄로 내려간다.
   🔒 --faced 안에서만이라 얼굴 없는 기존 줄은 전과 한 픽셀도 다르지 않다. */
.module-rate-bar__item--faced .module-rate-bar__head { flex-wrap: wrap }
/* 값 칸의 기본 white-space:nowrap 은 「3.85%」 같은 «한 덩이 수»가 쪼개지지 않게 하는 장치다.
   얼굴 있는 줄의 값은 수가 아니라 «문장»이라(순위 두 벌 + 그 무리의 맨 위 카드) 안 접히면
   좁은 화면에서 통째로 밖으로 흘러나간다(실측 390px: 문서 가로가 710px 로 벌어졌다).
   🔒 --faced 안에서만 접히게 둔다 — 값이 수 하나인 기존 자리는 전과 같이 안 접힌다. */
.module-rate-bar__item--faced .module-rate-bar__value { white-space: normal }

@media (prefers-color-scheme: dark) {
  .module-link-grid__card-meta { color: #94a3b8 }
  .module-rate-bar__item--self .module-rate-bar__track { box-shadow: 0 0 0 1.5px rgba(226, 232, 240, .3) }
}

/* ══════════════════════════════════════════════════════════════════════════
   셸 기본 레이아웃(2026-08-25 · 눈검수 38호) — 외부 벤더 CSS 완전 대체.
   ──────────────────────────────────────────────────────────────────────────
   출처 — 이 페이지 골격(.grid-container·.site-info·.separate-containers 등)에
   실제로 걸려 있던 규칙만 벤더 원본에서 실사용 대조로 추려 옮겨 적었다(사용 안 하는
   레이아웃 모드[one-container·full-width-content·좌우 사이드바 조합 등]는 이 사이트가
   `body class="separate-containers no-sidebar"` «한 조합만» 쓰므로 제외 — site.conf.php
   sidebar_layout='no-sidebar' 고정 확인. 클래스명 자체는 이미 셸 전역에서 이 이름 그대로
   쓰이고 있어 바꾸지 않는다(대상은 어디까지나 "출력물의 벤더 브랜드 문자열" 제거지,
   이 범용 레이아웃 클래스명은 벤더 브랜드 표식이 아니다).
   재사용 조건 — 다른 사이트도 같은 골격(별도 사이드바 시스템·no-sidebar 고정)이면 그대로
   재사용 가능. 좌우 사이드바 모드를 실제로 쓰는 사이트가 생기면 그때 그 사이트 몫만 추가.
   ══════════════════════════════════════════════════════════════════════════ */
/* 🔴 2026-08-25 사후 발견·즉시 수리 — 38호 추출 시 놓친 배경색 2줄(사용자 목격 「본문 테두리
   소멸·회색 페이지 배경→화이트」의 진짜 원인). 제거된 벤더 인라인 블록 원문에 있었던
   `body{background-color:var(--base-2)}`(#f7f8f9 옅은 회색) +
   `.separate-containers .inside-article 등{background-color:var(--base-3)}`(#ffffff)가
   추출 목록에서 빠졌다 — 회색 몸통 위에 흰 본문 박스가 얹혀 «경계(테두리처럼 보이는 명도차)»
   를 만들던 것인데, 몸통 배경이 사라지며 본문 박스도 페이지도 똑같이 흰색이 돼 구분이 지워짐.
   토큰(--base-2/--base-3)은 그 벤더 블록에만 정의돼 있었고 우리 CSS 어디에도 없어(전수 grep
   0건) 그대로 var() 복사로는 못 고친다 — 리터럴 값으로 고정(이 컴포넌트가 쓰는 유일한 소비처
   라 새 토큰 체계 발명 아님). 모두의카드 실측(백서 배경 rgb(247,248,249) vs 흰 패널)과 같은
   원리 — 그쪽은 원래부터 있던 것이고 우리는 «복원». */
body { background-color: #f7f8f9; }
/* 🔴 2026-08-25 41호 — 벤더 CSS 제거로 함께 빠진 «반응형 이미지» 기본 규칙 복원(사용자 목격
   — guide-formats 레귤레이션 마크 구역 카드 사진 7장이 원본 픽셀 크기[745×1040]로 그대로
   렌더돼 컨테이너[46px]를 십수 배 초과). 이 규칙은 GP 전용이 아니라 WordPress 코어 기본값
   (모든 테마 공통 `img{height:auto;max-width:100%}`)인데, 벤더 파일 통째 제거 시 «어디에도
   없는 규칙»이 돼 처음부터 빠져 있었다(38호 완결 census가 HTML 산출물만 보고 이 전역 규칙
   부재를 못 잡은 스코프 결손 — 아래 §41호 교훈 참조). scope: 자유 형식 본문 이미지에만
   적용(카드 스펙 페이지 등 고정 크기가 의도인 위젯형 이미지는 이미 각자 폭 계약이 있어
   영향 없음 — .entry-content 범위로 한정해 다른 이미지 배치 회귀 0). */
.entry-content img { max-width: 100%; height: auto; }
.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.separate-containers .paging-navigation,
.inside-page-header { background-color: #ffffff; }
/* 폭 1300px — 벤더 CSS 기본값(1200px)이 아니라 이 사이트가 실제로 쓰던 값(head-invariant.html
   :root{--site-w:1300px} 옆에 놓였던 인라인 오버라이드, 체크리스트 §43 "1300 통일" 확정과 일치).
   벤더 인라인 블록 제거 시 이 값을 여기로 그대로 옮기지 않으면 1300→1200 폭 회귀가 난다. */
.grid-container { margin-left: auto; margin-right: auto; max-width: var(--site-w, 1300px) }
.separate-containers.no-sidebar .site-main { margin-left: 0; margin-right: 0; margin-top: 20px; margin-bottom: 20px }
.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.separate-containers .paging-navigation { padding: 40px }
/* 71-b(2026-08-28 사용자 확정 "모바일 상단만 30px 정도") — 좌우·하단 40px 유지, 모바일
   상단만 축소(71호의 첫 구역 여백 상쇄와 합산 효과 — 스크린샷으로 최종 시각 판정).
   브레이크포인트 820px = 71호와 동일 모바일 기준(기존 관례 실측 일치). */
@media (max-width: 820px) {
  .separate-containers .inside-article { padding-top: 30px; }
}
.separate-containers .site-main > :last-child { margin-bottom: 0 }
.separate-containers .featured-image { margin-top: 20px }
.separate-containers .inside-article > .featured-image { margin-top: 0; margin-bottom: 2em }
.site-main > * { margin-bottom: 20px }
.site-main .comment-navigation,
.site-main .post-navigation,
.site-main .posts-navigation { margin: 0 0 2em; overflow: hidden }
.site-main .post-navigation { margin-bottom: 0 }
.site-main .gallery { margin-bottom: 1.5em }
.inside-site-info { display: flex; align-items: center; justify-content: center; padding: 20px 40px }
.site-info { text-align: center; font-size: 15px }
@media (max-width: 768px) {
  body:not(.no-sidebar) #main { margin-bottom: 0 }
}

/* 스크롤-맨위 버튼(2026-08-25 · 눈검수 38호 — 벤더 커스터마이저 인라인 블록 제거로 이관 +
   개명: generate-back-to-top → scroll-top-button). 값은 원본과 동일(위치·크기·전환 타이밍
   그대로 — 시각 회귀 0 목적).
   🔴 47호(2026-08-25 사후 발견·2차 정밀실측) — 원본은 폰트 글자 아이콘(line-height 텍스트
   기준선 중앙)이었는데 38호가 SVG로 바꾸며 vertical-align:middle 로 옮겼다. 1차 수정(버튼을
   flex 중앙정렬)으로 «아이콘 칸(span)»은 버튼 정중앙에 정확히 옴(실측 top=840 span
   center=850=btn center). 그런데 svg 자체가 여전히 5px 밀림(svg center=855) — getBBox() 정밀
   실측으로 viewBox(0 0 330 512) 안 잉크 중심=256(정확히 캔버스 중앙, 사용자 최초 추정
   «잉크가 하단 치우침»은 반증됨)이라 뷰박스 크롭은 해당 없음. 진짜 원인 = svg 기본
   display:inline(교체요소) 특유의 «기준선 정렬 잔여공백»(alt 텍스트 없는 이미지류 흔한
   버그) — inline-block span 안에서도 svg 자신은 인라인 흐름을 타 baseline 밑에 하강폭이
   남는다. display:block 한 줄로 그 흐름 자체를 없앰(폰트 지표 의존 0 — KISS). */
.scroll-top-button { font-size: 20px; border-radius: 3px; position: fixed; bottom: 30px; right: 30px; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; z-index: 10; transition: opacity 300ms ease-in-out; opacity: 0.1; transform: translateY(1000px); background-color: rgba(0, 0, 0, .4); color: #fff; }
.scroll-top-button--show { opacity: 1; transform: translateY(0) }
.scroll-top-button:hover, .scroll-top-button:focus { background-color: rgba(0, 0, 0, .6); color: #fff }
.scroll-top-button__icon { display: inline-block; width: 1em; height: 1em; }
.scroll-top-button__icon svg { display: block; width: 100%; height: 100%; fill: currentColor }
