/* ─────────────────────────────────────────────────────────────
     dreambaku.com 홈 시안 v1
     기준: ~/Documents/애플디자인.md (§1 다크 역전 · §2 시스템 스택 · §3 4px 그리드 · §5 모션)
     골격: Rollbit(좌측 고정 사이드바 3열 + 상단 카운트다운 + 라이브 티커)
     ⛔가져오지 않은 것: 네온·잭팟 카운터·룻박스·「누가 얼마 당첨」 티커
     단일 다크 테마로 확정 — 뷰어 테마와 무관하게 같은 화면을 보여준다.
     ───────────────────────────────────────────────────────────── */
  :root {
    --ground: #000000;
    --surface: #1d1d1f;
    --surface-2: #161617;
    --text: #f5f5f7;
    --muted: #86868b;
    --hairline: #2c2c2e;
    --accent: #0071e3;
    --accent-dim: rgba(0, 113, 227, 0.16);

    --font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Apple SD Gothic Neo",
      "Pretendard", "Noto Sans KR", Helvetica, Arial, sans-serif;

    --rail: 240px;
    --ease: cubic-bezier(0.4, 0, 0.2, 1);
  }

  * { box-sizing: border-box; }

  body {
    margin: 0;
    background: var(--ground);
    color: var(--text);
    font-family: var(--font);
    font-size: 16px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
  }

  a { color: var(--accent); text-decoration: none; }
  a:focus-visible,
  button:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 6px; }

  /* ── 상단바 (44px, 애플 기준 §3) ───────────────────────────── */
  .topbar {
    position: sticky; top: 0; z-index: 20;
    height: 44px;
    display: flex; align-items: center; gap: 16px;
    padding: 0 20px;
    background: rgba(0, 0, 0, 0.72);
    backdrop-filter: saturate(180%) blur(20px);
    border-bottom: 1px solid var(--hairline);
  }
  .wordmark { font-size: 15px; font-weight: 600; letter-spacing: -0.01em; }
  .wordmark span { color: var(--muted); font-weight: 400; }
  .draft-chip {
    font-size: 11px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase;
    color: var(--muted); border: 1px solid var(--hairline);
    padding: 2px 8px; border-radius: 980px;
  }
  .countdown {
    margin-left: auto;
    display: flex; align-items: baseline; gap: 8px;
    font-size: 13px; color: var(--muted);
  }
  .countdown b {
    font-weight: 600; font-size: 14px; color: var(--text);
    font-variant-numeric: tabular-nums;
  }

  /* ── 3열 골격 ─────────────────────────────────────────────── */
  .shell { display: grid; grid-template-columns: var(--rail) minmax(0, 1fr); }

  .rail {
    border-right: 1px solid var(--hairline);
    padding: 24px 12px 48px;
    position: sticky; top: 44px; align-self: start;
    height: calc(100vh - 44px); overflow-y: auto;
  }
  .rail-group + .rail-group { margin-top: 24px; }
  .rail-label {
    font-size: 11px; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase;
    color: var(--muted); padding: 0 12px; margin-bottom: 8px;
  }
  .rail-nav { display: flex; flex-direction: column; gap: 2px; }
  .rail-nav a {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
    padding: 8px 12px; border-radius: 10px;
    color: var(--text); font-size: 15px;
    transition: background 200ms var(--ease);
  }
  .rail-nav a:hover { background: var(--surface); }
  .rail-nav a[aria-current="page"] { background: var(--surface); font-weight: 600; }
  .rail-nav .tag { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }

  main { padding: 40px 32px 96px; }
  .wrap { max-width: 1024px; margin: 0 auto; }
  .section + .section { margin-top: 72px; }

  .eyebrow {
    font-size: 11px; font-weight: 600; letter-spacing: 0.26em; text-transform: uppercase;
    color: var(--muted); margin: 0 0 12px;
  }
  h1, h2, h3 { text-wrap: balance; margin: 0; }
  h1 { font-size: 44px; font-weight: 600; letter-spacing: -0.015em; line-height: 1.15; }
  h2 { font-size: 32px; font-weight: 600; letter-spacing: -0.01em; line-height: 1.2; }
  h3 { font-size: 20px; font-weight: 600; line-height: 1.3; }
  .lead { font-size: 19px; color: var(--muted); margin: 12px 0 0; max-width: 62ch; }

  /* ── 히어로: 오늘 맥이가 먹은 꿈 한 문장 ────────────────────── */
  .hero {
    display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: 40px; align-items: center;
  }
  .dream-line {
    font-size: 30px; font-weight: 600; letter-spacing: -0.012em; line-height: 1.35;
    margin: 0;
  }
  .dream-line em { font-style: normal; color: var(--accent); }
  .dream-meta { margin-top: 16px; color: var(--muted); font-size: 15px; }

  .stack { display: flex; flex-direction: column; gap: 16px; }

  .pick-card {
    background: var(--surface); border-radius: 18px; padding: 28px;
  }
  /* 공식 당첨번호는 맥이의 번호와 «다른 종류»임이 한눈에 보여야 한다.
     같은 볼로 나란히 놓으면 우리 번호가 당첨번호처럼 읽힌다. */
  .win-card {
    background: none; border: 1px solid var(--hairline);
    border-radius: 18px; padding: 24px 28px;
  }
  .ball.win { background: none; border-color: var(--muted); }
  .ball.bonus { background: none; border-style: dashed; border-color: var(--muted); }
  .plus { align-self: center; color: var(--muted); font-size: 16px; }
  .pick-note.src { font-size: 13px; }
  .pick-head {
    display: flex; align-items: baseline; justify-content: space-between; gap: 12px;
    padding-bottom: 16px; border-bottom: 1px solid var(--hairline);
  }
  .pick-head .no { font-size: 15px; font-weight: 600; }
  .pick-head .when { font-size: 13px; color: var(--muted); }
  .balls { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; }
  .ball {
    width: 46px; height: 46px; border-radius: 50%;
    display: grid; place-items: center;
    background: var(--surface-2); border: 1px solid var(--hairline);
    font-size: 17px; font-weight: 600; font-variant-numeric: tabular-nums;
  }
  .pick-note { margin: 20px 0 0; font-size: 14px; color: var(--muted); line-height: 1.6; }
  .pick-note strong { color: var(--text); font-weight: 600; }

  /* ── 티커: 맥이가 먹는 꿈 (사람·금액 없음) ──────────────────── */
  .ticker {
    /* ⚠️.section + .section 규칙이 여기서 끊기므로 아래 간격을 직접 준다 */
    margin: 40px 0 72px;
    border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline);
    padding: 14px 0; overflow: hidden;
    display: flex; align-items: center; gap: 20px;
  }
  .ticker-label {
    flex: none; font-size: 11px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase;
    color: var(--muted); padding-left: 2px; white-space: nowrap;
  }
  /* 오른쪽 끝만 흐린다 — 양쪽을 흐리면 첫 칩이 잘려 라벨 옆에 잔상처럼 보인다 */
  .ticker-track { overflow: hidden; flex: 1; mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 64px), transparent); }
  .ticker-run {
    display: flex; gap: 10px; width: max-content;
    animation: drift 48s linear infinite;
  }
  .ticker-run span {
    flex: none; padding: 6px 14px; border-radius: 980px;
    background: var(--surface); font-size: 14px; color: var(--text);
  }
  @keyframes drift { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  @media (prefers-reduced-motion: reduce) {
    .ticker-run { animation: none; flex-wrap: wrap; width: 100%; }
  }

  /* ── 성적표 ──────────────────────────────────────────────── */
  .scoreboard { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 32px; align-items: start; }
  .table-scroll { overflow-x: auto; }
  table { width: 100%; border-collapse: collapse; font-size: 15px; }
  caption { text-align: left; color: var(--muted); font-size: 13px; padding-bottom: 12px; }
  th, td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--hairline); white-space: nowrap; }
  thead th {
    background: var(--surface-2); font-size: 13px; font-weight: 600; color: var(--muted);
    position: sticky; top: 44px;
  }
  td.no, td.nums { font-variant-numeric: tabular-nums; }
  .hit { color: var(--accent); font-weight: 600; }
  .rank {
    display: inline-block; min-width: 46px; text-align: center;
    font-size: 13px; padding: 2px 8px; border-radius: 980px;
    color: var(--muted); border: 1px solid var(--hairline);
  }
  .rank.win { color: var(--accent); border-color: var(--accent); background: var(--accent-dim); }

  .tally { background: var(--surface); border-radius: 18px; padding: 24px; }
  .tally dl { display: grid; grid-template-columns: 1fr auto; gap: 8px 12px; margin: 16px 0 0; }
  .tally dt { color: var(--muted); font-size: 15px; }
  .tally dd { margin: 0; font-weight: 600; font-variant-numeric: tabular-nums; }
  .tally .math {
    margin: 20px 0 0; padding-top: 16px; border-top: 1px solid var(--hairline);
    font-size: 14px; color: var(--muted); line-height: 1.6;
  }
  .tally .math b { color: var(--text); font-weight: 600; }

  /* ── 오해 차단 한 줄 (용어 카드마다 동반) ───────────────────── */
  .terms { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
  .term { background: var(--surface); border-radius: 18px; padding: 20px 22px; }
  .term h3 { font-size: 17px; }
  .term p { margin: 8px 0 0; font-size: 15px; color: var(--muted); }
  .term .guard {
    margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--hairline);
    font-size: 14px; color: var(--text);
  }

  /* ── 사전 칩 ─────────────────────────────────────────────── */
  .chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; }
  .chips a {
    display: block; padding: 8px 16px; border-radius: 980px;
    background: var(--surface); color: var(--text); font-size: 16px;
    transition: background 200ms var(--ease);
  }
  .chips a:hover { background: #2a2a2c; }

  .btn {
    display: inline-block; border-radius: 980px; padding: 12px 22px;
    background: var(--accent); color: #fff; font-size: 17px;
  }
  .btn.ghost { background: none; color: var(--accent); padding-left: 0; }

  footer {
    margin-top: 96px; padding-top: 32px; border-top: 1px solid var(--hairline);
    color: var(--muted); font-size: 14px;
  }
  .disclaimer { color: var(--text); font-size: 15px; margin: 0 0 12px; }

  @media (max-width: 900px) {
    .shell { grid-template-columns: 1fr; }
    .rail { display: none; }
    main { padding: 32px 20px 72px; }
    .hero, .scoreboard { grid-template-columns: 1fr; gap: 28px; }
    h1 { font-size: 34px; }
    h2 { font-size: 26px; }
    .dream-line { font-size: 24px; }
    thead th { position: static; }
  }

/* ── 생성기 추가분 ─────────────────────────────────────────── */
.stale-banner {
  background: #3a2a00; color: #ffd479; border-bottom: 1px solid #5a4200;
  padding: 10px 20px; font-size: 14px;
}
a.wordmark { color: var(--text); }
.basis { margin-top: 20px; font-size: 13px; color: var(--muted); }
td.kw { color: var(--muted); }
td.nums b { color: var(--accent); font-weight: 600; }
td.hit { color: var(--text); font-weight: 600; }
td.miss { color: var(--muted); }

/* 기사 본문 */
.article h1 { font-size: 36px; margin-bottom: 8px; }
.article h2 { margin-top: 48px; }
.article h3 { margin-top: 32px; }
.article p { max-width: 68ch; }
.article ul { max-width: 68ch; padding-left: 20px; }
.article li { margin: 6px 0; }
.article hr { border: 0; border-top: 1px solid var(--hairline); margin: 40px 0; }
.article pre {
  background: var(--surface-2); border: 1px solid var(--hairline); border-radius: 12px;
  padding: 20px; overflow-x: auto; font-size: 13px; line-height: 1.6;
}
.article code { font-size: 0.92em; }
.article table { margin: 20px 0; }

/* 히어로 카드는 폭이 좁다 — 6볼 + 보너스가 한 줄에 들어가도록 줄인다
   (보너스 볼만 다음 줄로 떨어지면 별개 정보처럼 읽힌다). */
.hero .balls { gap: 8px; }
.hero .ball { width: 40px; height: 40px; font-size: 15px; }
.hero .plus { font-size: 14px; }

@media (max-width: 1080px) {
  .hero { grid-template-columns: 1fr; }
  .scoreboard { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .shell { grid-template-columns: 1fr; }
  .rail { position: static; height: auto; border-right: 0; border-bottom: 1px solid var(--hairline); }
  main { padding: 24px 16px 64px; }
  h1 { font-size: 32px; }
  h2 { font-size: 26px; }
  .dream-line { font-size: 24px; }
}

/* ── 가로 스크롤 차단 ────────────────────────────────────────
   grid·flex 자식의 기본 min-width:auto가 «내용의 최소 폭»으로 늘어난다.
   성적표 표는 white-space:nowrap, 티커는 width:max-content라 그 최소 폭이
   뷰포트보다 넓다 → 페이지 전체가 밀려 가로 스크롤이 생긴다(390px 실측).
   overflow-x:auto는 min-width를 0으로 눌러야 제 컨테이너 안에서 동작한다. */
.shell > main { min-width: 0; }
.scoreboard > * { min-width: 0; }
.table-scroll { min-width: 0; }
.ticker-track { min-width: 0; }
.dream-line, .lead, .pick-note, footer p { overflow-wrap: anywhere; }

@media (max-width: 520px) {
  .cd-label { display: none; }       /* 숫자만 남긴다 — 라벨이 두 줄로 접혔다 */
  .topbar { gap: 10px; padding: 0 14px; }
  .wordmark { font-size: 14px; }
  .wordmark span { display: none; }
}

/* ── 앱 CTA 밴드 ─────────────────────────────────────────── */
.cta-band {
  background: var(--surface); border-radius: 18px; padding: 32px;
}
.cta-band h3 { font-size: 22px; }
.cta-band > p { color: var(--muted); margin: 10px 0 0; max-width: 60ch; }
.cta-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.cta-free { font-size: 14px; }
.cta-free b { color: var(--text); }

/* ── 좁은 화면의 성적표 ───────────────────────────────────
   표는 5열 nowrap이라 좁은 화면에서 오른쪽 열(결과)이 컨테이너 안에서 잘린다.
   가로 스크롤은 되지만 «잘린 것»으로 읽힌다 → 모바일에서는 열을 줄여 다 보이게 한다.
   숨기는 열은 「맥이의 물상」 하나뿐 — 회차·번호·일치·결과가 성적표의 본체다. */
@media (max-width: 640px) {
  table th:nth-child(2), table td:nth-child(2) { display: none; }
  th, td { padding: 10px 8px; white-space: normal; }
  td.nums { word-spacing: 2px; }
  caption { font-size: 12px; }
}
/* 그래도 넘칠 때를 위한 스크롤 힌트 — 오른쪽 끝을 살짝 흐려 «더 있다»를 알린다 */
.table-scroll {
  mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 24px), transparent);
}
@supports not (mask-image: linear-gradient(90deg, #000, #000)) {
  .table-scroll { mask-image: none; }
}

/* ── 회차당 다조합 ───────────────────────────────────────── */
tr.expand td { padding: 0 12px 12px; border-bottom: 1px solid var(--hairline); }
details summary {
  cursor: pointer; color: var(--muted); font-size: 13px; padding: 8px 0;
  list-style: none;
}
details summary::-webkit-details-marker { display: none; }
details summary::before { content: "▸ "; }
details[open] summary::before { content: "▾ "; }
table.inner { font-size: 13px; margin-top: 4px; }
table.inner th, table.inner td { padding: 7px 10px; }
.bonus-inline { color: var(--muted); }

.all-picks { margin-top: 16px; }
.pick-list { list-style: none; margin: 12px 0 0; padding: 0; font-size: 13px; }
.pick-list li {
  display: grid; grid-template-columns: 24px minmax(0, 1fr) auto;
  gap: 10px; align-items: baseline;
  padding: 7px 0; border-top: 1px solid var(--hairline);
}
.pick-list .slot { color: var(--muted); font-variant-numeric: tabular-nums; }
.pick-list .kw { color: var(--muted); }
.pick-list .nums { font-variant-numeric: tabular-nums; white-space: nowrap; }
@media (max-width: 520px) {
  .pick-list li { grid-template-columns: 20px minmax(0, 1fr); }
  .pick-list .nums { grid-column: 1 / -1; color: var(--text); }
}

/* ── 출처 구분 (소급 검증 vs 사전 공개) ─────────────────────
   이 사이트에서 가장 조심해야 할 문단이라 시각적으로도 분리한다. */
.provenance {
  margin-top: 20px; padding: 16px 20px;
  border-left: 2px solid var(--accent); background: var(--surface-2);
  border-radius: 0 12px 12px 0;
}
.provenance p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.6; max-width: 68ch; }
.provenance p + p { margin-top: 8px; }
.provenance b { color: var(--text); }

/* ── 자사 배너 (olo.house 단방향 업셀) ─────────────────────── */
.promo {
  margin: 72px 0 0; padding: 32px;
  border: 1px solid var(--hairline); border-radius: 18px;
  background: linear-gradient(180deg, var(--surface-2), var(--ground));
}
.promo-eyebrow {
  margin: 0 0 10px; font-size: 11px; font-weight: 600;
  letter-spacing: 0.24em; text-transform: uppercase; color: var(--muted);
}
.promo h3 { font-size: 22px; letter-spacing: -0.01em; }
.promo p { color: var(--muted); margin: 10px 0 0; max-width: 60ch; }
.promo-items { font-size: 14px; }
.promo .btn { margin-top: 18px; }

/* 얇은 띠 — 한 페이지에 카드를 여러 장 쌓으면 지면이 광고판이 된다.
   주요 위치 하나만 카드로 두고 나머지는 이걸로 깐다. */
.promo-strip { margin: 44px 0; }
.promo-strip a {
  display: grid; gap: 2px 16px; align-items: baseline;
  grid-template-columns: 1fr auto;
  padding: 14px 18px; border-radius: 14px;
  border: 1px solid var(--hairline); background: var(--surface-2);
  color: var(--text);
}
.strip-eyebrow {
  grid-column: 1 / -1; font-size: 11px; font-weight: 600;
  letter-spacing: 0.2em; text-transform: uppercase; color: var(--muted);
}
.strip-title { font-size: 16px; font-weight: 600; min-width: 0; }
.strip-go { font-size: 14px; color: var(--muted); white-space: nowrap; }
.strip-meta {
  grid-column: 1 / -1; font-size: 13px; color: var(--muted); margin-top: 2px;
}
/* 모바일에서도 2열을 유지한다 — 1열로 풀면 「제목 / 가격 / 링크」가 각자 줄을 차지해
   띠가 카드만큼 두꺼워진다. 짧은 제목(short)을 쓰는 전제이므로 2열이 들어간다. */
@media (max-width: 560px) {
  .promo-strip a { padding: 13px 16px; }
  .strip-title { font-size: 15px; }
  .strip-go { font-size: 13px; }
}

/* ── 유료 광고 자리 ───────────────────────────────────────
   「광고」 라벨은 뗄 수 없다(표시광고법). 본문과 확실히 구분되게 둔다. */
.ads { margin: 72px 0 0; display: grid; gap: 12px; }
.ad-card {
  display: block; padding: 20px 24px; border-radius: 14px;
  border: 1px dashed var(--hairline); background: var(--surface-2);
  color: var(--text);
}
.ad-label {
  display: inline-block; font-size: 11px; font-weight: 600; letter-spacing: 0.14em;
  color: var(--muted); border: 1px solid var(--hairline);
  padding: 1px 7px; border-radius: 980px; margin-bottom: 10px;
}
.ad-title { display: block; font-size: 17px; font-weight: 600; }
.ad-body { display: block; color: var(--muted); font-size: 14px; margin-top: 6px; }
.ad-adv { display: block; color: var(--muted); font-size: 12px; margin-top: 10px; }

/* ── 꿈 사전 ─────────────────────────────────────────────── */
.cats { margin-top: 28px; }
.cat + .cat { margin-top: 36px; }
.cat h3 { font-size: 17px; display: flex; align-items: baseline; gap: 8px; }
.cat-n { font-size: 12px; color: var(--muted); font-weight: 400; }
.word-grid {
  list-style: none; margin: 14px 0 0; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 8px;
}
.word-grid li { min-width: 0; }
.word-grid a {
  display: flex; align-items: baseline; gap: 6px;
  padding: 9px 12px; border-radius: 10px; background: var(--surface);
  color: var(--text); font-size: 15px;
  transition: background 200ms var(--ease);
}
.word-grid a:hover { background: var(--hairline); }
.has-note {
  font-size: 10px; color: var(--accent); border: 1px solid var(--accent-dim);
  padding: 0 5px; border-radius: 980px;
}
.pending { color: var(--muted); }

/* ─────────────────────────────────────────────────────────────
   2026-09-17 기능형 개수(A안) — 설계=docs/superpowers/specs/2026-09-17-dreambaku-functional-renewal-design.md
   새 색·새 도형을 만들지 않는다. 위 토큰만 쓴다.
   ───────────────────────────────────────────────────────────── */
.skip {
  position: absolute; left: 12px; top: -48px; z-index: 40;
  background: var(--accent); color: #fff; padding: 8px 14px; border-radius: 980px;
  font-size: 14px; transition: top 160ms var(--ease);
}
.skip:focus { top: 8px; }

.hero { align-items: start; }
.hero-title { font-size: 40px; }
.eyebrow .maegi, .cta-band h3 .maegi { vertical-align: middle; margin-right: 10px; }
.maegi {
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--text); border-radius: 50%; overflow: hidden; line-height: 0;
}
.maegi img { display: block; }

.dream-form { margin-top: 24px; }
.dream-label { display: block; font-size: 13px; color: var(--muted); margin-bottom: 8px; }
.dream-input, .word-search {
  width: 100%; font: inherit; font-size: 17px; line-height: 1.5; color: var(--text);
  background: var(--surface); border: 1px solid var(--hairline); border-radius: 14px;
  padding: 14px 16px; resize: vertical;
  transition: border-color 200ms var(--ease), box-shadow 200ms var(--ease);
}
.dream-input::placeholder, .word-search::placeholder { color: var(--muted); }
.dream-input:focus, .word-search:focus {
  outline: none; border-color: var(--accent); box-shadow: 0 0 0 4px var(--accent-dim);
}
.dream-form .cta-row { margin-top: 14px; }
.reassure { margin: 14px 0 0; font-size: 13px; color: var(--muted); }
.reassure b { color: var(--text); font-weight: 600; }

.bignums {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px;
  margin: 32px 0 0;
}
.bignums > div { background: var(--surface-2); border-radius: 16px; padding: 16px; min-width: 0; }
.bignums dt {
  font-size: 30px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.1;
  font-variant-numeric: tabular-nums;
}
.bignums dd { margin: 6px 0 0; font-size: 12px; line-height: 1.45; color: var(--muted); }

.this-week { margin-top: 36px; padding-top: 28px; border-top: 1px solid var(--hairline); }
.this-week .dream-line { font-size: 22px; }
.dream-gloss { margin: 10px 0 0; font-size: 14px; color: var(--muted); }

.faq h2 { margin-bottom: 8px; }
.faq-item { padding: 20px 0; border-bottom: 1px solid var(--hairline); max-width: 68ch; }
.faq-item h3 { font-size: 18px; }
.faq-item p { margin: 8px 0 0; color: var(--muted); }

.cta-band .dream-form { max-width: 640px; }

.word-tools { margin-top: 24px; max-width: 640px; }
.word-none { margin: 12px 0 0; color: var(--muted); font-size: 14px; }
.cat-jump { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.cat-jump a {
  display: inline-flex; gap: 6px; align-items: baseline; padding: 6px 12px;
  border-radius: 980px; background: var(--surface); color: var(--text); font-size: 14px;
}
.cat-jump a:hover { background: var(--hairline); }
.cat { scroll-margin-top: 64px; }

@media (max-width: 720px) {
  .hero-title { font-size: 28px; }
  .bignums dt { font-size: 22px; }
  .bignums > div { padding: 12px; }
  .countdown { gap: 6px; font-size: 12px; }
  .countdown b { font-size: 13px; }
}

/* 움직임은 둘뿐 — 제목이 떠오르고, 공개 번호 공이 하나씩 놓인다. */
@media (prefers-reduced-motion: no-preference) {
  .hero-title { animation: rise 600ms var(--ease) both; }
  .pick-card .balls .ball { animation: rise 420ms var(--ease) both; }
  .pick-card .balls .ball:nth-child(2) { animation-delay: 70ms; }
  .pick-card .balls .ball:nth-child(3) { animation-delay: 140ms; }
  .pick-card .balls .ball:nth-child(4) { animation-delay: 210ms; }
  .pick-card .balls .ball:nth-child(5) { animation-delay: 280ms; }
  .pick-card .balls .ball:nth-child(6) { animation-delay: 350ms; }
  @keyframes rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
}
/* 한국어 제목은 글자 단위로 끊기면 「분류 / 대로」가 된다 — 낱말 단위로만 끊는다. */
h1, h2, h3, .dream-line { word-break: keep-all; }

/* 해설이 긴 표제어에서 입력칸이 1.6화면 아래로 밀린다(9/17 리허설) — 제목 밑에 바로가기 한 줄. */
.jump { margin: 12px 0 20px; font-size: 15px; }
.dream-input { scroll-margin-top: 120px; }
main:focus { outline: none; }

/* 제목 글꼴 — Noto Serif KR 600(SIL OFL 1.1, /fonts/OFL.txt). 서체는 시스템 고딕 + 이것, 둘뿐이다
   (애플디자인.md: 3종 이상 금지). 숫자 칸·버튼·본문에는 쓰지 않는다 — 제목과 히어로 문장만.
   font-display: swap — 글꼴이 늦어도 제목은 시스템 글꼴로 먼저 보인다. */
:root { --font-title: "Maegi Serif", var(--font); }
h1, h2, .dream-line { font-family: var(--font-title); letter-spacing: -0.02em; }

/* ── @font-face 생성 구역 시작 (site/tools/build_fonts.py) ── */
@font-face { font-family: "Maegi Serif"; font-style: normal; font-weight: 600; font-display: swap;
  src: url("/fonts/maegi-serif-600-a.woff2?v=0d0cc922") format("woff2");
  unicode-range: U+20-21,U+27-29,U+2C-2E,U+30-3F,U+48-49,U+4D,U+53,U+61-70,U+72-75,U+78,U+7B,U+7D,U+AB,U+B7,U+BB,U+2014,U+2193,U+4E2D,U+4E7E,U+4E95,U+4EBA,U+514C,U+525D,U+5347,U+540C,U+5426,U+54B8,U+55D1,U+566C,U+56F0,U+5730,U+574E,U+5764,U+58EF,U+5927,U+5929,U+592C,U+5937,U+5984,U+59B9,U+59E4,U+5B5A,U+5BB6,U+5C0F,U+5C65,U+5C6F,U+5C71,U+5DFD,U+5E2B,U+5FA9,U+6052,U+640D,U+65C5,U+65E0,U+65E3,U+660E,U+6649,U+6709,U+672A,U+6B78,U+6BD4,U+6C34,U+6CF0,U+6E19,U+6F38,U+6FA4,U+6FDF,U+706B,U+7232,U+755C,U+76CA,U+777D,U+7BC0,U+81E8,U+826E,U+8403,U+8499,U+8831,U+89C0,U+89E3,U+8A1F,U+8B19,U+8C50,U+8C6B,U+8CC1,U+8E47,U+904E,U+906F,U+96A8,U+96E2,U+96F7,U+9700,U+9707,U+9769,U+9824,U+98A8,U+9F0E,U+AC00-AC01,U+AC04,U+AC08,U+AC10-AC11,U+AC15,U+AC19,U+AC1C,U+AC70,U+AC74,U+AC78,U+AC83,U+AC8C,U+ACA0,U+ACA8,U+ACB0,U+ACB8,U+ACBD,U+ACC4,U+ACE0,U+ACE4,U+ACE7,U+ACF0,U+ACF5,U+ACFC,U+AD00,U+AD1C,U+AD50,U+AD6C-AD6D,U+AD70,U+AD73-AD74,U+AD81,U+AD8C,U+AD90,U+ADC0,U+ADDC,U+ADE4,U+ADF8,U+AE08,U+AE0B,U+AE30,U+AE38,U+AE40,U+AE43,U+AE4C,U+AE68,U+AF43,U+AFB8,U+AFC0,U+AFC8,U+AFE9,U+B04A,U+B07C,U+B098,U+B09A,U+B09C,U+B0A0,U+B0A8,U+B0B4,U+B0C4,U+B124,U+B140,U+B144,U+B178,U+B18D,U+B1CC,U+B204,U+B208,U+B290-B291,U+B294,U+B298,U+B2AA,U+B2C8,U+B2D8-B2D9,U+B2E4,U+B2E8,U+B2EC-B2ED,U+B2F4,U+B2F9,U+B300,U+B354,U+B35C,U+B364,U+B3C4-B3C5,U+B3C8,U+B3CC,U+B3D9,U+B3DB,U+B3FC,U+B418,U+B41C,U+B429,U+B450-B451,U+B454,U+B458,U+B461,U+B4DC,U+B4E3-B4E4,U+B4ED,U+B4F1,U+B529,U+B530,U+B545,U+B5A1,U+B5A8,U+B5BB,U+B610,U+B625,U+B73B,U+B77C,U+B780,U+B78C,U+B791,U+B798,U+B7EC,U+B7F0,U+B807-B808,U+B80C,U+B824,U+B839,U+B840,U+B85C-B85D,U+B8B0,U+B8E8,U+B958,U+B960,U+B974,U+B978,U+B97C,U+B984,U+B987,U+B9AC,U+B9B0,U+B9BC-B9BD,U+B9C8-B9C9,U+B9CC,U+B9D0,U+B9DD-B9DE,U+B9E1,U+B9E4-B9E5,U+BA38-BA39,U+BA48,U+BA54,U+BA69,U+BA74,U+BA85,U+BAA8-BAA9,U+BABB,U+BABD,U+BB34,U+BB38,U+BB3B-BB3C,U+BBF8,U+BBFF-BC00,U+BC08,U+BC14-BC15,U+BC18,U+BC1B-BC1D,U+BC24-BC25,U+BC29,U+BC2D,U+BC30,U+BC40,U+BC43,U+BC84-BC85,U+BC88,U+BC8C,U+BC95,U+BC97,U+BCA0,U+BCBD,U+BCC4,U+BCD1,U+BCF4-BCF5,U+BD04-BD05,U+BD09,U+BD80-BD81,U+BD84,U+BD88,U+BE44,U+BE60,U+BE68,U+BF51,U+C05C,U+C068,U+C0AC,U+C0B0,U+C0BC,U+C0C1,U+C0C8,U+C0DD,U+C11C-C11D,U+C12C,U+C12F,U+C131,U+C138,U+C148,U+C168,U+C18C-C18D,U+C190,U+C194,U+C1A1,U+C1A5,U+C1E0,U+C218,U+C21C,U+C220,U+C228,U+C22B,U+C22D,U+C2A4,U+C2AC,U+C2B4-C2B5,U+C2B9,U+C2DC-C2DD,U+C2E0,U+C2E4,U+C2EC,U+C2F9,U+C300,U+C313,U+C500,U+C544-C545,U+C548,U+C54A,U+C558,U+C560,U+C570,U+C57C-C57D,U+C591,U+C5B4,U+C5BC,U+C5C6-C5C7,U+C5D0,U+C5D8,U+C5EC-C5ED,U+C5F0,U+C5F4,U+C601,U+C608,U+C61B,U+C624-C625,U+C628,U+C634,U+C637,U+C644,U+C655,U+C65C,U+C694-C695,U+C6A9,U+C6B0,U+C6B4,U+C6B8,U+C6C0,U+C6C3,U+C6D0,U+C704,U+C720-C721,U+C73C,U+C740,U+C744,U+C74C,U+C751,U+C758,U+C774-C775,U+C778,U+C77C-C77D,U+C784-C785,U+C788,U+C790-C791,U+C7A1,U+C7A5,U+C801,U+C804,U+C808,U+C810-C811,U+C815,U+C81C,U+C84C,U+C870,U+C8FC-C8FD,U+C900,U+C90C,U+C911,U+C950,U+C9C0-C9C1,U+C9C4,U+C9D0-C9D1,U+C9D3,U+C9DD,U+CAD3,U+CC28,U+CC2E,U+CC30,U+CC38,U+CC44-CC45,U+CC98,U+CC9C,U+CCAD,U+CCB4,U+CD1D,U+CD94-CD95,U+CDA4,U+CDCC,U+CE58,U+CE5C,U+CE68,U+CE74,U+CE7C,U+CEE4,U+CF54,U+CF69,U+CF8C,U+D034,U+D070,U+D07C,U+D0A4,U+D0C0,U+D0D1,U+D0D4,U+D0DC-D0DD,U+D130,U+D154,U+D1A0,U+D1B5,U+D23C,U+D310,U+D3B8,U+D3C9,U+D3EC-D3ED,U+D3F0,U+D480,U+D48D,U+D53C,U+D558-D559,U+D55C,U+D560,U+D568-D569,U+D56D,U+D574,U+D588-D589,U+D5A5,U+D5C8,U+D5D8,U+D600-D601,U+D614-D615,U+D638,U+D63C,U+D640,U+D64D,U+D654-D655,U+D658,U+D669,U+D68C,U+D734,U+D769,U+D798; }
@font-face { font-family: "Maegi Serif"; font-style: normal; font-weight: 600; font-display: swap;
  src: url("/fonts/maegi-serif-600-b.woff2?v=59fcf199") format("woff2");
  unicode-range: U+22-23,U+25-26,U+2A-2B,U+2F,U+40-46,U+4B-4C,U+4E-50,U+52,U+54-55,U+57,U+5B-5D,U+5F-60,U+71,U+76-77,U+79-7A,U+7C,U+7E,U+A7,U+D7,U+2026,U+203A,U+20A9,U+2191-2192,U+2460-2463,U+2465,U+2500,U+2610,U+26A0,U+26D4,U+2705,U+274C,U+2B1C,U+300C-300F,U+3046,U+304F,U+3055,U+307E,U+4FE1,U+5360,U+5366,U+540D,U+547D,U+5B85,U+901A,U+AC07,U+AC09,U+AC12,U+AC14,U+AC16,U+AC2F,U+AC31,U+AC71,U+AC77,U+AC80-AC81,U+AC89,U+ACA9-ACAA,U+ACAC,U+ACB9,U+ACBC,U+ACC1,U+ACE1,U+ACE8,U+ACF3,U+AD04,U+AD11,U+AD18,U+AD75,U+AD7F,U+ADE0,U+ADFC,U+AE00-AE01,U+AE09,U+AE34,U+AE37,U+AE41,U+AE4A,U+AE4E,U+AE50,U+AE5C-AE5D,U+AE65,U+AE6C,U+AEBC,U+AEBE,U+AECD,U+AECF,U+AED1,U+AED8,U+AEF4,U+AF2C-AF2D,U+AF49,U+AF80,U+AFBC,U+AFC9,U+AFD4,U+AFE8,U+AFF0,U+B00C,U+B010,U+B01C-B01D,U+B044,U+B04C,U+B057,U+B05D,U+B08C,U+B099,U+B0A9,U+B0AB-B0AC,U+B0AE-B0AF,U+B0B1,U+B0B3,U+B0B8,U+B0BC,U+B0C5,U+B0C8,U+B0D0,U+B0E5,U+B108,U+B113,U+B118,U+B11C-B11D,U+B123,U+B154,U+B179,U+B17C,U+B180,U+B192-B193,U+B1E8,U+B20C,U+B214-B215,U+B220,U+B234,U+B258,U+B25C,U+B2A0,U+B2A5-B2A6,U+B2CC,U+B2D0,U+B2E5-B2E6,U+B2EB,U+B2EE,U+B2F5,U+B2FF,U+B308,U+B311,U+B314,U+B355,U+B358,U+B35F,U+B365,U+B367,U+B369,U+B36E,U+B370,U+B3D5,U+B410,U+B420,U+B460,U+B465,U+B4A4,U+B4B7,U+B4DD,U+B4E0,U+B4E6,U+B4EC,U+B4EF,U+B514,U+B518,U+B51B,U+B52A,U+B531,U+B538,U+B540,U+B54C,U+B560,U+B5A0,U+B5A4,U+B5BC,U+B611,U+B69C,U+B6AB,U+B6F0,U+B700,U+B728-B729,U+B738,U+B744,U+B748,U+B77D,U+B78D,U+B790,U+B79C,U+B7AB,U+B7C9,U+B7F4,U+B7FC-B7FD,U+B7FF-B801,U+B825,U+B828,U+B82C,U+B835,U+B837-B838,U+B860,U+B86D,U+B86F,U+B8CC,U+B8EC,U+B8F0,U+B8F9,U+B904,U+B959,U+B985,U+B9AD,U+B9B4,U+B9BF,U+B9C1,U+B9CE-B9CF,U+B9D1,U+B9DB,U+B9E8,U+B9F5,U+B9FA,U+BA3C,U+BA40,U+BA4D-BA4E,U+BA70,U+BA87,U+BAAB,U+BAB0,U+BAB8-BAB9,U+BB18,U+BB35-BB36,U+BB45,U+BB47,U+BB4D,U+BB58,U+BBC0,U+BBD0,U+BBFC,U+BC11,U+BC16,U+BC1F,U+BC31,U+BC94,U+BCC0,U+BCCD,U+BCD5,U+BCF8,U+BCFC,U+BD10,U+BD24,U+BD48,U+BD59,U+BD89,U+BD95,U+BD99,U+BE0C,U+BE14,U+BE48,U+BE4C,U+BE55,U+BE59,U+BE5B,U+BE61,U+BE74,U+BE7C,U+BED7,U+BF08,U+BFB0,U+BFCC,U+BFD0,U+BFD4,U+C058,U+C0AD,U+C0AF,U+C0B4,U+C0B6,U+C0C9,U+C11E,U+C120,U+C124,U+C12D,U+C13C,U+C149,U+C14B-C14C,U+C19F,U+C1C4,U+C219,U+C232,U+C26C,U+C270,U+C27C-C27D,U+C2A8,U+C2B7,U+C2ED,U+C2F6,U+C2F8,U+C308,U+C30D,U+C368-C369,U+C37C,U+C3D8,U+C3DF-C3E0,U+C465,U+C4F0,U+C4F4,U+C4F8,U+C501,U+C528-C529,U+C53B,U+C549,U+C54C,U+C553,U+C555,U+C559,U+C55E,U+C571,U+C598,U+C5B5,U+C5B8-C5B9,U+C5BB,U+C5BD,U+C5C4-C5C5,U+C5C8-C5C9,U+C5CC,U+C5CE,U+C5FD,U+C600,U+C606,U+C62C,U+C62E,U+C635,U+C640,U+C654,U+C678,U+C6C1,U+C6CC,U+C6D4,U+C6E0,U+C6F9,U+C717,U+C728,U+C783,U+C787,U+C78A,U+C78E,U+C794,U+C798,U+C7A0,U+C7AC,U+C800,U+C80A,U+C816,U+C82F,U+C838,U+C871,U+C874,U+C878,U+C880-C881,U+C885,U+C88B,U+C904,U+C90D,U+C918,U+C954,U+C988,U+C998,U+C99D,U+C9C8,U+C9D5-C9D6,U+C9DC,U+C9E7,U+C9F8,U+CA4D,U+CABC-CABD,U+CB10,U+CBE4,U+CC0D,U+CC14,U+CC1D,U+CC22,U+CC29,U+CC2C,U+CC3C-CC3E,U+CC59,U+CC99,U+CCA8,U+CCAB,U+CCD0,U+CCE4,U+CD08-CD09,U+CD18,U+CD5C,U+CD98,U+CD9C,U+CDA5,U+CDA9,U+CDB0,U+CDC4,U+CDE8,U+CE20-CE21,U+CE35,U+CE59,U+CE60,U+CE69,U+CE6B,U+CE6D,U+CE78,U+CE90,U+CE94,U+CEF8,U+CF1C,U+CF30,U+CF58,U+CFE8,U+D06C,U+D074,U+D07D,U+D0A8,U+D0AC,U+D0B4-D0B5,U+D0B9,U+D0C1,U+D0C4,U+D0C8,U+D0D0,U+D0D5,U+D0F1,U+D134,U+D138,U+D145,U+D14C,U+D150,U+D15C,U+D1F4,U+D22C,U+D280,U+D2B8-D2B9,U+D2C0,U+D2C8,U+D2F0,U+D300,U+D30C,U+D30E,U+D314,U+D320,U+D328,U+D37C,U+D391,U+D398,U+D3B4,U+D3BC,U+D3C5,U+D3D0,U+D3F4,U+D45C,U+D478,U+D488,U+D508,U+D50C,U+D514-D515,U+D540,U+D544,U+D54C,U+D54F,U+D575,U+D587,U+D5DB,U+D5E4,U+D5F7,U+D604,U+D65C,U+D68D,U+D6A1,U+D6C4,U+D6C8,U+D718,U+D729,U+D749,U+D750,U+D754,U+D758-D759,U+D765,U+D770,U+D788,U+D78C,U+D799,U+FE0F,U+1F4CA,U+1F534,U+1F536,U+1FAA4; }
@font-face { font-family: "Maegi Serif"; font-style: normal; font-weight: 600; font-display: swap;
  src: url("/fonts/maegi-serif-600-c.woff2?v=6c7b7912") format("woff2");
  unicode-range: U+24,U+47,U+4A,U+51,U+56,U+58-5A,U+5E,U+2013,U+2018-2019,U+201C-201D,U+2039,U+203B,U+2190,U+25B8,U+25BE,U+3001-3002,U+3008-300B,U+AC0A,U+AC13,U+AC17,U+AC1A-AC1B,U+AC1D,U+AC20,U+AC24,U+AC2C-AC2D,U+AC30,U+AC38-AC39,U+AC3C,U+AC40,U+AC4B,U+AC4D,U+AC54,U+AC58,U+AC5C,U+AC7A,U+AC84-AC86,U+AC8A-AC8B,U+AC90,U+AC94,U+AC9C-AC9D,U+AC9F,U+ACA1,U+ACAF,U+ACBB,U+ACC8,U+ACCC,U+ACD5,U+ACD7,U+ACEA,U+ACEC,U+ACEF,U+ACF1,U+ACF6,U+ACFD,U+AD06,U+AD0C-AD0D,U+AD0F,U+AD20,U+AD29,U+AD2C-AD2D,U+AD34-AD35,U+AD38,U+AD3C,U+AD44-AD45,U+AD47,U+AD49,U+AD54,U+AD58,U+AD61,U+AD63,U+AD76,U+AD7B-AD7D,U+AD82,U+AD88-AD89,U+AD9C-AD9D,U+ADA4,U+ADB7,U+ADC1,U+ADC4,U+ADC8,U+ADD0-ADD1,U+ADD3,U+ADF9,U+ADFF,U+AE0D,U+AE14,U+AE31,U+AE3A,U+AE45-AE46,U+AE4D,U+AE54,U+AE56,U+AE5F-AE61,U+AE69,U+AE70,U+AE78-AE79,U+AE7B-AE7D,U+AE84-AE85,U+AE8C,U+AEBD,U+AEC0,U+AEC4,U+AECC,U+AED0,U+AED9,U+AEDC,U+AEE8,U+AEEB,U+AEED,U+AEF8,U+AEFC,U+AF07-AF08,U+AF0D,U+AF10,U+AF30,U+AF32,U+AF34,U+AF3C-AF3D,U+AF3F,U+AF41-AF42,U+AF48,U+AF50,U+AF5C-AF5D,U+AF64-AF65,U+AF79,U+AF84,U+AF88,U+AF90-AF91,U+AF95,U+AF9C,U+AFB9,U+AFC7,U+AFCB,U+AFCD-AFCE,U+AFDC,U+AFF1,U+AFF4,U+AFF8,U+B000-B001,U+B004,U+B014,U+B028,U+B045,U+B048,U+B04E,U+B053-B055,U+B059,U+B07D,U+B080,U+B084,U+B08D,U+B08F,U+B091,U+B09F,U+B0A1-B0A2,U+B0AD,U+B0B5,U+B0C7,U+B0C9,U+B0D1,U+B0D4,U+B0D8,U+B0E0,U+B109,U+B10B-B10C,U+B110,U+B112,U+B119,U+B11B,U+B125,U+B128,U+B12C,U+B134-B135,U+B137-B139,U+B141,U+B148,U+B150-B151,U+B155,U+B158,U+B15C,U+B160,U+B182,U+B188-B189,U+B18B,U+B194,U+B198,U+B19C,U+B1A8,U+B1D0,U+B1D4,U+B1DC-B1DD,U+B1DF,U+B1E9,U+B1EC,U+B1F0,U+B1F9,U+B1FB,U+B1FD,U+B205,U+B20B,U+B217,U+B219,U+B23C,U+B260,U+B268-B269,U+B274-B275,U+B27C,U+B284-B285,U+B289,U+B299-B29A,U+B2A1,U+B2A3,U+B2AC,U+B2B0,U+B2B4,U+B2C9,U+B2D2,U+B2DB,U+B2DD,U+B2E2,U+B2EF,U+B2F3,U+B2F7-B2F8,U+B2FA-B2FB,U+B301,U+B304,U+B310,U+B313,U+B315,U+B31C,U+B356,U+B35B,U+B35E,U+B36B,U+B371,U+B374,U+B378,U+B380-B381,U+B383-B385,U+B38C,U+B390,U+B394,U+B3A0-B3A1,U+B3A8,U+B3AC,U+B3CB,U+B3CE,U+B3D0,U+B3D4,U+B3D7,U+B3DD,U+B3E0,U+B3E4,U+B3E8,U+B428,U+B42B,U+B434,U+B463,U+B46C,U+B480,U+B488,U+B49D,U+B4A8,U+B4AC,U+B4B5,U+B4B9,U+B4C0,U+B4C4,U+B4C8,U+B4D0,U+B4D5,U+B4F8,U+B515,U+B51C,U+B524-B525,U+B527-B528,U+B534,U+B541,U+B543-B544,U+B54B,U+B54D,U+B550,U+B554,U+B55C-B55D,U+B55F,U+B561,U+B5AA-B5AB,U+B5B0-B5B1,U+B5B3-B5B5,U+B5BD,U+B5C0,U+B5C4,U+B5CC-B5CD,U+B5CF-B5D1,U+B5D8,U+B5EC,U+B614,U+B618,U+B62C,U+B634,U+B648,U+B664,U+B668,U+B69D,U+B6A0,U+B6A4,U+B6AC,U+B6B1,U+B6D4,U+B6F4,U+B6F8,U+B701,U+B705,U+B72C,U+B72F-B730,U+B739,U+B74C,U+B754-B755,U+B760,U+B764,U+B768,U+B770-B771,U+B773,U+B775,U+B784,U+B78F,U+B792,U+B796-B797,U+B799,U+B7A0,U+B7A8-B7A9,U+B7AC-B7AD,U+B7B4-B7B5,U+B7B8,U+B7C7,U+B7ED,U+B809,U+B810,U+B818-B819,U+B81B,U+B81D,U+B834,U+B844,U+B851,U+B853,U+B864,U+B86C,U+B871,U+B878,U+B87C,U+B88D,U+B8A8,U+B8B4,U+B8B8,U+B8C0-B8C1,U+B8C3,U+B8C5,U+B8D0,U+B8D4,U+B8DD,U+B8DF,U+B8E1,U+B8E9,U+B8F8,U+B8FB,U+B8FD,U+B918,U+B920,U+B93C-B93D,U+B940,U+B944,U+B94C,U+B94F,U+B951,U+B95C,U+B968-B969,U+B96B,U+B96D,U+B975,U+B989-B98A,U+B98D-B98E,U+B9D2,U+B9D8-B9D9,U+B9E3,U+B9EC,U+B9F4,U+B9F7-B9F9,U+BA00-BA01,U+BA08,U+BA15,U+BA42,U+BA49,U+BA4B,U+BA53,U+BA55,U+BA58,U+BA5C,U+BA64-BA65,U+BA67-BA68,U+BA71,U+BA78,U+BA83-BA84,U+BA8C,U+BAAC,U+BAB2,U+BAC4,U+BAC8,U+BAD8-BAD9,U+BAFC,U+BB00,U+BB04,U+BB0D,U+BB0F,U+BB11,U+BB1C,U+BB20,U+BB29,U+BB2B,U+BB3D-BB3E,U+BB44,U+BB49,U+BB4F-BB50,U+BB54,U+BB61,U+BB63,U+BB6C,U+BB88,U+BB8C,U+BB90,U+BBA4,U+BBA8,U+BBAC,U+BBB4,U+BBB7,U+BBC4,U+BBC8,U+BBD3,U+BBF9,U+BC02,U+BC09,U+BC0B-BC0D,U+BC0F,U+BC17,U+BC1E,U+BC27,U+BC34,U+BC38,U+BC41,U+BC44-BC45,U+BC49,U+BC4C-BC4D,U+BC50,U+BC5D,U+BC8B,U+BC8E,U+BC99-BC9A,U+BCA1,U+BCA4,U+BCA7-BCA8,U+BCB0-BCB1,U+BCB3-BCB5,U+BCBC,U+BCCF-BCD0,U+BCD8,U+BCDC,U+BCF6,U+BD07,U+BD14,U+BD2C,U+BD40,U+BD49,U+BD4C,U+BD50,U+BD58,U+BD64,U+BD68,U+BD87,U+BD8A,U+BD90-BD91,U+BD93,U+BD9A,U+BD9C,U+BDA4,U+BDB0,U+BDB8,U+BDD4-BDD5,U+BDD8,U+BDDC,U+BDE9,U+BDF0,U+BDF4,U+BDF8,U+BE00,U+BE03,U+BE05,U+BE0D,U+BE10,U+BE1C-BE1D,U+BE1F,U+BE45,U+BE4E,U+BE54,U+BE57,U+BE5A,U+BE64,U+BE6A,U+BE70-BE71,U+BE73,U+BE75,U+BE7B,U+BE7D,U+BE80,U+BE84,U+BE8C-BE8D,U+BE8F-BE91,U+BE98-BE99,U+BEA8,U+BED0-BED1,U+BED4,U+BED8,U+BEE0,U+BEE3-BEE5,U+BEEC,U+BF01,U+BF09,U+BF18-BF19,U+BF1B-BF1D,U+BF40-BF41,U+BF44,U+BF48,U+BF50,U+BF55,U+BF94,U+BFC5,U+BFCD,U+BFDC,U+BFDF,U+BFE1,U+C03C,U+C051,U+C060,U+C069,U+C090-C091,U+C094,U+C098,U+C0A0-C0A1,U+C0A3,U+C0A5,U+C0B3,U+C0B5,U+C0BD,U+C0BF-C0C0,U+C0C5,U+C0CC,U+C0D0,U+C0D8-C0D9,U+C0DB-C0DC,U+C0E4-C0E5,U+C0E8,U+C0EC,U+C0F4-C0F5,U+C0F7,U+C0F9,U+C100,U+C104,U+C108,U+C110,U+C115,U+C11F,U+C123,U+C126-C127,U+C130,U+C136,U+C139,U+C140,U+C14D,U+C154-C155,U+C158,U+C15C,U+C164-C165,U+C167,U+C169,U+C170,U+C174,U+C178,U+C185,U+C18E,U+C196,U+C19C-C19D,U+C1A8-C1A9,U+C1AC,U+C1B0,U+C1BD,U+C1C8,U+C1CC,U+C1D4,U+C1D7-C1D8,U+C1E4,U+C1E8,U+C1F0-C1F1,U+C1F3,U+C1FC-C1FD,U+C200,U+C204,U+C20C-C20D,U+C20F,U+C211,U+C21F,U+C229,U+C22F,U+C231,U+C234,U+C248,U+C250-C251,U+C254,U+C258,U+C260,U+C265,U+C26D,U+C274,U+C27F,U+C281,U+C288-C289,U+C290,U+C298,U+C29B,U+C29D,U+C2A5,U+C2AD,U+C2E3,U+C2EB,U+C2EF,U+C2F1,U+C2FB-C2FC,U+C309,U+C30C,U+C314-C315,U+C318,U+C31C,U+C324-C325,U+C328-C329,U+C345,U+C36C,U+C370,U+C372,U+C378-C379,U+C37D,U+C384,U+C388,U+C38C,U+C3C0,U+C3D9,U+C3DC,U+C3E2,U+C3E8-C3E9,U+C3ED,U+C3F4-C3F5,U+C3F8,U+C408,U+C410,U+C424,U+C42C,U+C430,U+C434,U+C43C-C43D,U+C448,U+C464,U+C468,U+C46C,U+C474-C475,U+C479,U+C480,U+C494,U+C49C,U+C4B8,U+C4BC,U+C4E9,U+C4F1,U+C4FA,U+C4FF,U+C50C,U+C510,U+C514,U+C51C,U+C52C,U+C530,U+C538-C539,U+C53D,U+C54D-C54E,U+C554,U+C557,U+C55D,U+C561,U+C564,U+C568,U+C573-C575,U+C580,U+C584,U+C587,U+C58C-C58D,U+C58F,U+C595,U+C597,U+C59C,U+C5A0,U+C5A9,U+C5BE,U+C5CA,U+C5D1,U+C5D4,U+C5E0-C5E1,U+C5E3,U+C5E5,U+C5EE,U+C5F6-C5F7,U+C5FC,U+C5FE-C5FF,U+C605,U+C607,U+C60C,U+C610,U+C618-C619,U+C61C,U+C62D,U+C630,U+C633,U+C639,U+C63B,U+C641,U+C648,U+C650-C651,U+C653,U+C65D,U+C660,U+C66C,U+C66F,U+C671,U+C679,U+C67C,U+C680,U+C688-C689,U+C68B,U+C68D,U+C698,U+C69C,U+C6A4-C6A5,U+C6A7,U+C6B1,U+C6B9-C6BA,U+C6C5,U+C6CD,U+C6DC-C6DD,U+C6E1,U+C6E8-C6E9,U+C6EC,U+C6F0,U+C6F8,U+C6FD,U+C705,U+C708,U+C70C,U+C714-C715,U+C719,U+C724,U+C730-C731,U+C733,U+C735,U+C737,U+C73D,U+C74A,U+C74D,U+C74F,U+C752-C757,U+C75C,U+C760,U+C768,U+C76B,U+C77E,U+C789,U+C796-C797,U+C79A,U+C7A3-C7A4,U+C7A6,U+C7AD,U+C7B0,U+C7B4,U+C7BC-C7BD,U+C7BF-C7C1,U+C7C8-C7C9,U+C7CC,U+C7CE,U+C7D0,U+C7D8,U+C7DD,U+C7E4,U+C7E8,U+C7EC,U+C813,U+C81D,U+C820,U+C824,U+C82C-C82D,U+C831,U+C83C,U+C840,U+C848-C849,U+C84D,U+C854,U+C87A,U+C883,U+C886-C887,U+C88C-C88D,U+C894,U+C89D,U+C89F,U+C8A1,U+C8A8,U+C8BC-C8BD,U+C8C4,U+C8C8,U+C8CC,U+C8D4-C8D5,U+C8D7,U+C8D9,U+C8E0-C8E1,U+C8E4,U+C8F5,U+C905-C906,U+C90F,U+C92C,U+C934,U+C951,U+C958,U+C960-C961,U+C963,U+C96C,U+C970,U+C974,U+C97C,U+C989,U+C98C,U+C990,U+C999,U+C99B,U+C9C7,U+C9CA,U+C9D9-C9DA,U+C9E0,U+C9E2,U+C9E4,U+C9EC-C9ED,U+C9EF-C9F1,U+C9F9,U+C9FC,U+CA00,U+CA08-CA09,U+CA0B-CA0D,U+CA14,U+CA18,U+CA29,U+CA4C,U+CA50,U+CA54,U+CA5C-CA5D,U+CA5F-CA61,U+CA68,U+CA7D,U+CA84,U+CA98,U+CAC0,U+CAC4,U+CACC-CACD,U+CACF,U+CAD1,U+CAD8-CAD9,U+CAE0,U+CAEC,U+CAF4,U+CB08,U+CB14,U+CB18,U+CB20-CB21,U+CB41,U+CB48-CB49,U+CB4C,U+CB50,U+CB58-CB59,U+CB5D,U+CB64,U+CB78-CB79,U+CB9C,U+CBB8,U+CBD4,U+CBE7,U+CBE9,U+CC0C,U+CC10,U+CC1C,U+CC21,U+CC27,U+CC39,U+CC3B,U+CC48,U+CC4C,U+CC54-CC55,U+CC57-CC58,U+CC60,U+CC64,U+CC66,U+CC68,U+CC70,U+CC75,U+CCA0,U+CCA9,U+CCAC,U+CCB5,U+CCB8,U+CCBC,U+CCC4-CCC5,U+CCC7,U+CCC9,U+CCD4,U+CCEC,U+CCF0,U+CD01,U+CD0C,U+CD10,U+CD19,U+CD1B,U+CD24,U+CD28,U+CD2C,U+CD39,U+CD60,U+CD64,U+CD6C-CD6D,U+CD6F,U+CD71,U+CD78,U+CD88,U+CDA7,U+CDD0,U+CDEC,U+CDF0,U+CDF8-CDF9,U+CDFB,U+CDFD,U+CE04,U+CE08,U+CE0C,U+CE14,U+CE19,U+CE24,U+CE28,U+CE30-CE31,U+CE33,U+CE5F,U+CE61,U+CE75,U+CE84-CE85,U+CE87,U+CE89,U+CE91,U+CE98,U+CEA0-CEA1,U+CEA3-CEA5,U+CEAC-CEAD,U+CEC1,U+CEE5,U+CEE8,U+CEEB-CEEC,U+CEF4-CEF5,U+CEF7,U+CEF9,U+CF00-CF01,U+CF04,U+CF08,U+CF10-CF11,U+CF13,U+CF15,U+CF20,U+CF24,U+CF2C-CF2D,U+CF2F,U+CF31,U+CF38,U+CF55,U+CF5C,U+CF64-CF65,U+CF67,U+CF70-CF71,U+CF74,U+CF78,U+CF80,U+CF85,U+CFA1,U+CFA8,U+CFB0,U+CFC4,U+CFE0-CFE1,U+CFE4,U+CFF0-CFF1,U+CFF3,U+CFF5,U+CFFC,U+D000,U+D004,U+D011,U+D018,U+D02D,U+D035,U+D038,U+D03C,U+D044-D045,U+D047,U+D049,U+D050,U+D054,U+D058,U+D060,U+D06D,U+D081,U+D0A5,U+D0B7,U+D0C9,U+D0D3,U+D0E0,U+D0E4,U+D0EC-D0ED,U+D0EF-D0F0,U+D0F8,U+D10D,U+D131,U+D13A,U+D140-D141,U+D143-D144,U+D14D,U+D15D,U+D15F,U+D161,U+D168,U+D16C,U+D17C,U+D184,U+D188,U+D1A1,U+D1A4,U+D1A8,U+D1B0-D1B1,U+D1B3,U+D1BA,U+D1BC,U+D1C0,U+D1D8,U+D1F8,U+D207,U+D209,U+D210,U+D22D,U+D230,U+D234,U+D23D,U+D23F,U+D241,U+D248,U+D25C,U+D264,U+D281,U+D284,U+D288,U+D290-D291,U+D295,U+D29C,U+D2A0,U+D2A4,U+D2AC,U+D2B1,U+D2BC,U+D2BF,U+D2C2,U+D2C9,U+D2CB,U+D2D4,U+D2D8,U+D2DC,U+D2E4-D2E5,U+D2F1,U+D2F4,U+D2F8,U+D301,U+D303,U+D305,U+D30D,U+D316,U+D31C-D31D,U+D31F,U+D321,U+D325,U+D329,U+D32C,U+D330,U+D338-D339,U+D33B-D33D,U+D344-D345,U+D37D,U+D380,U+D384,U+D38C-D38D,U+D38F-D390,U+D399,U+D39C,U+D3A0,U+D3A8-D3A9,U+D3AB,U+D3AD,U+D3C4,U+D3C8,U+D3D8,U+D3E1,U+D3E3,U+D3FC-D3FD,U+D3FF,U+D401,U+D408,U+D41D,U+D440,U+D444,U+D460,U+D464,U+D46D,U+D46F,U+D479,U+D47C,U+D47F,U+D482,U+D489,U+D48B,U+D494,U+D4A9,U+D4CC,U+D4D0,U+D4D4,U+D4DC,U+D4DF,U+D4E8,U+D4EC,U+D4F0,U+D4F8,U+D4FB,U+D4FD,U+D504,U+D517,U+D53D,U+D54D,U+D551,U+D565,U+D56B,U+D578,U+D57C,U+D584-D585,U+D590,U+D5C9,U+D5CC,U+D5D0,U+D5D2,U+D5D9,U+D5DD,U+D5E5,U+D5E8,U+D5EC,U+D5F4-D5F5,U+D5F9,U+D608,U+D610-D611,U+D613,U+D61C,U+D620,U+D624,U+D62D,U+D639,U+D645,U+D648-D649,U+D64B,U+D651,U+D667,U+D670-D671,U+D674,U+D683,U+D685,U+D690,U+D694,U+D69D,U+D69F,U+D6A8,U+D6AC,U+D6B0,U+D6B9,U+D6BB,U+D6C5,U+D6CC,U+D6D1,U+D6D4,U+D6D7,U+D6D9,U+D6E0,U+D6E4,U+D6E8,U+D6F0,U+D6F5,U+D6FC-D6FD,U+D700,U+D704,U+D711,U+D719,U+D71C,U+D720,U+D728,U+D72B,U+D72D,U+D735,U+D738,U+D73C,U+D744,U+D747,U+D751,U+D756-D757,U+D760-D761,U+D763,U+D76C,U+D774,U+D77C-D77D,U+D781,U+D789,U+D790,U+D79B,U+D79D; }
/* ── @font-face 생성 구역 끝 ── */
