/* ポケカルテの枠（ヘッダー・パンくず・一覧・フッター）と、本文 .rte の土台だけ。
   本文の見た目は本文内で読み込む Shopify Files の CSS（price-article-ver2.css など）が持つ。docs/65「本文・デザインを変えない」 */
:root { --fg:#1f2328; --muted:#636c76; --line:#d0d7de; --bg:#fff; --accent:#c8102e; --wrap:1080px; }
* { box-sizing:border-box; }
body { margin:0; color:var(--fg); background:var(--bg); font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP",sans-serif; line-height:1.8; }
a { color:inherit; }
img { max-width:100%; height:auto; }
.wrap { max-width:var(--wrap); margin:0 auto; padding:0 16px; }
.site-header { border-bottom:1px solid var(--line); }
.site-header .wrap { display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; padding-top:12px; padding-bottom:12px; }
.site-name { font-weight:700; font-size:1.25rem; text-decoration:none; color:var(--accent); }
.site-nav ul { display:flex; flex-wrap:wrap; gap:4px 16px; margin:0; padding:0; list-style:none; font-size:.9rem; }
.site-nav a { text-decoration:none; }
.site-nav a:hover { text-decoration:underline; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:4px; margin:16px 0; padding:0; list-style:none; font-size:.8rem; color:var(--muted); }
.breadcrumbs li + li::before { content:"›"; margin-right:4px; }
.breadcrumbs a { text-decoration:none; }
.article { max-width:760px; margin:0 auto; }
.article-title, .list-title { font-size:1.6rem; line-height:1.4; margin:8px 0 4px; }
.article-meta { color:var(--muted); font-size:.85rem; margin:0 0 16px; }
.article-meta .author { margin-left:8px; }
.hero { margin:0 0 24px; }
.hero img { width:100%; }
.rte { overflow-wrap:anywhere; }
.rte table { border-collapse:collapse; width:100%; margin:16px 0; display:block; overflow-x:auto; }
.rte th, .rte td { border:1px solid var(--line); padding:6px 8px; }
.rte h2 { font-size:1.35rem; margin:40px 0 16px; }
.rte h3 { font-size:1.15rem; margin:32px 0 12px; }
.tags { margin:32px 0 0; font-size:.85rem; color:var(--muted); }
.tags a { margin-right:8px; }
.pager { display:flex; justify-content:space-between; gap:16px; margin:32px auto; max-width:760px; font-size:.9rem; }
.pager .count { color:var(--muted); }
.cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:16px; margin:16px 0; padding:0; list-style:none; }
.card a { display:block; text-decoration:none; }
.card img { width:100%; aspect-ratio:16/9; object-fit:cover; border:1px solid var(--line); }
.card-title { display:block; font-size:.9rem; line-height:1.5; margin-top:6px; }
.card-date { display:block; font-size:.75rem; color:var(--muted); }
.home-section h2 { font-size:1.2rem; margin:32px 0 8px; }
.home-section .more { text-align:right; font-size:.9rem; }
.tagline { color:var(--muted); }
.site-footer { border-top:1px solid var(--line); margin-top:48px; padding:24px 0; font-size:.85rem; color:var(--muted); }
.footer-links { display:flex; flex-wrap:wrap; gap:4px 16px; margin:0 0 8px; padding:0; list-style:none; }
