/* preview-site article 用 オーバーライド (preview only)
   2026-05-12: humbulls フォントポリシー 適用 — 0 にドット無し / 国内 system font 採用
   詳細: ~/dev/humbulls/brand/docs/font-policy.md */

:root {
  /* 国内 system font stack (= note.com / Apple Japan / SmartHR / freee 等 と 同系統)
     英数字: 各 OS の system font (SF Pro / Segoe UI / Helvetica) → 0 にドット無し
     日本語: Hiragino Sans / Yu Gothic UI / Meiryo UI → OS ネイティブ */
  --hb-font-system:
    -apple-system, BlinkMacSystemFont,
    "Segoe UI", "Helvetica Neue", Helvetica, Arial,
    "Hiragino Sans", "Hiragino Kaku Gothic ProN",
    "Yu Gothic UI", "Yu Gothic", "Meiryo UI", "Meiryo",
    "Noto Sans JP", sans-serif;

  /* モノスペース: Menlo / SF Mono は 0 ドット無し */
  --hb-font-mono:
    ui-monospace, "SF Mono", Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
}

/* 全体強制 — Outfit / JetBrains Mono を 上書き */
body,
.nav, .nav *,
.footer, .footer *,
.blog-breadcrumb, .blog-breadcrumb *,
.blog-post__heading,
.blog-post__body,
.blog-post__body *:not(.brand-post):not(pre):not(code):not(.author-card-flat__avatar span),
.blog-post-list__title, .blog-post-list__title *,
.blog-post-list__date,
.blog-post-list__tag-list__item__inner,
.author-card-flat, .author-card-flat *,
.module-recommended-post, .module-recommended-post *,
.module-sns-share, .module-sns-share *,
.blog-page-title,
.page-blog-index, .page-blog-index *:not(.brand-post),
.body-container, .body-container *:not(.brand-post):not(pre):not(code),
.mobile-nav, .mobile-nav * {
  font-family: var(--hb-font-system) !important;
}

/* コード / プロンプト ブロックは monospace */
pre, pre code, code,
.blog-post__blog-contents pre,
.blog-post__blog-contents pre code,
.blog-post__blog-contents code {
  font-family: var(--hb-font-mono) !important;
}

/* 「POST」バッジ は humbulls ブランド アイデンティティ なので 残す
   (header の .brand-post / SVG ロゴは 触らない) */

/* プロンプト ブロック の 横スクロール防止 (前回追加分) */
.blog-post__blog-contents pre,
.blog-post__blog-contents pre code {
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: anywhere;
}

/* テーブル の URL セル */
.blog-post__blog-contents table td,
.blog-post__blog-contents table th {
  word-break: break-word;
  overflow-wrap: anywhere;
}
.blog-post__blog-contents table td a {
  word-break: break-all;
}

/* 数字 が 等幅 + Old-style を 使わない (= 0 ドット無し の system numerals 維持) */
body, .blog-post__blog-contents, .blog-post-list {
  font-feature-settings: "tnum" 0, "onum" 0, "ss01" 0, "zero" 0;
  font-variant-numeric: normal;
}
