/* 生成ページ(org/ country/ topic/)用の追加スタイル。既存の assets/style.css の変数を使う。 */
.page-head{border-bottom:1px solid var(--line);background:#f1f6f1;padding:14px 0}
.page-head .wrap{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.site-name{font-weight:700;font-size:18px;color:var(--ink);text-decoration:none}
.site-tag{font-size:12px;color:var(--muted)}
.page-main{padding:22px 22px 48px}
.page-main h1{font-size:clamp(24px,5vw,34px);letter-spacing:.02em;margin:6px 0 10px}
.page-main h2{font-size:18px;margin:30px 0 10px;padding-top:14px;border-top:1px solid var(--line)}
.page-main .lead{font-size:16px;color:#3c4a43}
.crumbs{font-size:12px;color:var(--muted);margin-bottom:8px}
.links{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 6px}
.btn{display:inline-flex;align-items:center;padding:10px 16px;border-radius:9px;border:1px solid #c4d2c7;text-decoration:none;font-weight:600;color:var(--ink);background:#fff}
.btn.primary{background:var(--green);border-color:var(--green);color:#fff}
.muted{color:var(--muted)}.small,small{font-size:12px}
small{color:var(--muted);margin-left:6px}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:18px 0;padding:14px;background:var(--soft);border-radius:12px}
.facts dt{color:var(--muted);font-size:13px}.facts dd{margin:0}
table.disc{width:100%;min-width:0;border-collapse:collapse;table-layout:fixed}
table.disc th{background:none;position:static}
.page-main{overflow-wrap:anywhere}
table.disc th,table.disc td{border-bottom:1px solid var(--line);padding:10px 6px;vertical-align:top;text-align:left}
table.disc th{width:9em;font-size:13px;color:var(--muted);font-weight:600}
table.disc td.mark{width:2em;text-align:center}
table.disc p{margin:4px 0}
ul.src,ul.d10,ul.acts,ul.orglist{padding-left:1.1em}
ul.src{margin:4px 0;font-size:12px}
ul.d10 li,ul.acts li,ul.orglist li{margin-bottom:10px}
ul.d10 p,ul.acts p,ul.orglist p{margin:2px 0}
.topics,.related{display:flex;flex-wrap:wrap;gap:8px}
.topics a,.related a{border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:13px;text-decoration:none}
.page-foot{border-top:1px solid var(--line);padding:18px 0 32px;font-size:12px;color:var(--muted)}
@media (max-width:520px){.page-main{padding:16px 16px 40px}.facts{grid-template-columns:1fr}table.disc,table.disc tbody,table.disc tr,table.disc th,table.disc td{display:block;width:auto}table.disc tr{border-bottom:1px solid var(--line);padding:8px 0}table.disc th,table.disc td{border:0;padding:2px 0}table.disc td.mark{display:inline;text-align:left}}
