/* KORMOYA Data — 방한 통계. 색·모서리는 kormoya-design 토큰을 쓰고 없을 때를 위한 기본값만 둔다. */
.kdata-wrap {
  --kb: var(--kd-blue, #2447B8);
  --kt: var(--kd-tint, #E6EEFF);
  --kbg: var(--kd-bg, #F4F7FD);
  --kink: var(--kd-ink, #13203B);
  --ksoft: var(--kd-soft, #57657F);
  --kline: var(--kd-line, #D5DFF2);
  --kr: var(--kd-r, 6px);
  --krl: var(--kd-r-lg, 10px);
  color: var(--kink);
  font-size: 16px;
  line-height: 1.6;
}
.kdata-wrap *, .kdata-wrap *::before, .kdata-wrap *::after { box-sizing: border-box; }
.kdata-wrap h2 { font-size: 18px; line-height: 1.3; margin: 0 0 8px; }
.kdata-wrap p { margin: 0 0 12px; }
.kdata-lead { color: var(--ksoft); font-size: 17px; max-width: 760px; }
.kdata-note { font-size: 13px; color: var(--ksoft); margin: 0 0 12px; }

.kdata-card { background: #fff; border: 1px solid var(--kline); border-radius: var(--krl); padding: 18px 20px; margin-bottom: 16px; min-width: 0; }
.kdata-empty { text-align: center; padding: 40px 20px; }
.kdata-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.kdata-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
@media (max-width: 860px) { .kdata-grid3 { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 700px) { .kdata-grid2 { grid-template-columns: minmax(0, 1fr); } }

.kdata-nav { display: flex; align-items: center; gap: 10px; background: var(--kbg); border-radius: var(--krl); padding: 10px 14px; margin: 14px 0; flex-wrap: wrap; }
.kdata-nav__cur { font-size: 18px; flex: 1; text-align: center; min-width: 110px; }
.kdata-section-nav { display: flex; justify-content: flex-end; margin: -4px 0 14px; }
.kdata-btn { display: inline-block; background: #fff; border: 1px solid var(--kline); border-radius: var(--kr); padding: 7px 14px; font-weight: 700; font-size: 14px; color: var(--kb) !important; text-decoration: none !important; cursor: pointer; }
.kdata-btn.is-off { opacity: .35; pointer-events: none; }
.kdata-select { margin: 0 0 14px; }
.kdata-select label { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; font-size: 14px; color: var(--ksoft); }
.kdata-select select { height: 42px; border: 1px solid var(--kline); border-radius: var(--kr); padding: 0 12px; background: #fff; color: var(--kink); font: inherit; max-width: 100%; }

.kdata-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
@media (max-width: 860px) { .kdata-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.kdata-stat { background: var(--kbg); border-radius: var(--krl); padding: 14px 16px; display: flex; flex-direction: column; min-width: 0; }
.kdata-stat span { font-size: 13px; color: var(--ksoft); font-weight: 700; }
.kdata-stat strong { font-size: 24px; color: var(--kb); line-height: 1.25; overflow-wrap: anywhere; }
.kdata-stat em { font-style: normal; font-size: 12px; color: var(--ksoft); }

.kdata-canvas { position: relative; height: 240px; }
.kdata-canvas canvas { max-width: 100%; }
.kdata-table-wrap { overflow-x: auto; }
.kdata-table { width: 100%; border-collapse: collapse; font-size: 14px; margin: 0; }
.kdata-table th, .kdata-table td { border-bottom: 1px solid var(--kline); padding: 9px 10px; text-align: left; }
.kdata-table thead th { background: var(--kbg); color: var(--ksoft); font-weight: 700; }
.kdata-table td:nth-child(n+3), .kdata-table th:nth-child(n+3) { text-align: right; }
