/* ja/yougo/yougo.css — 用語集ページ共通スタイル
 * 2026-04-28 新設（I92 / I93）。住民税非課税世帯ページから抽出して
 * 9ページ共通で使う。各ページの inline <style> 重複を排除し、
 * 名前空間を `yougo-` / `hikazei-` 系に統一する。
 */

.yougo-tool { margin: 32px 0; padding: 24px; border-radius: 14px; background: linear-gradient(135deg,#f6fbf8 0%,#eaf3ed 100%); border: 1px solid #cfe5d6; }
.yougo-tool-title { margin: 0 0 8px; font-size: 1.18em; color: #1f6b3d; }
.yougo-tool-desc { margin: 0 0 16px; line-height: 1.8; }
.yougo-tool-form { display: grid; gap: 12px; grid-template-columns: 1fr; margin-bottom: 14px; }
@media(min-width:720px){ .yougo-tool-form { grid-template-columns: 1fr 1fr 1fr auto; align-items: end; } }
.yougo-tool-form label { display: flex; flex-direction: column; font-size: .92em; font-weight: 600; color: #234; }
.yougo-tool-form input,.yougo-tool-form select { margin-top: 6px; padding: 10px; border: 1px solid #b9d4c2; border-radius: 8px; font-size: 1em; background: #fff; }
.yougo-tool-btn { padding: 12px 22px; background: #1f6b3d; color: #fff; border: 0; border-radius: 8px; font-weight: 700; font-size: 1em; cursor: pointer; }
.yougo-tool-btn:hover { background: #16562f; }
.yougo-tool-result { display: block; margin-top: 14px; padding: 14px 16px; border-radius: 10px; background: #fff; border-left: 4px solid #1f6b3d; font-weight: 600; line-height: 1.7; min-height: 1.5em; }
.yougo-tool-result.is-yes { background: #eaf7ee; border-color: #1f6b3d; color: #16562f; }
.yougo-tool-result.is-edge { background: #fff7e6; border-color: #c98a1b; color: #7a5510; }
.yougo-tool-result.is-no { background: #fdecec; border-color: #c54040; color: #8a2828; }
.yougo-tool-note { margin-top: 10px; font-size: .85em; color: #566; }

.yougo-table-wrap { margin: 24px 0; overflow-x: auto; }
.yougo-table-cap { font-weight: 700; color: #1f6b3d; margin-bottom: 8px; font-size: .95em; }
.yougo-table { width: 100%; border-collapse: collapse; background: #fff; min-width: 520px; }
.yougo-table th,.yougo-table td { border: 1px solid #d6e3da; padding: 10px 12px; text-align: left; font-size: .96em; }
.yougo-table thead th { background: #1f6b3d; color: #fff; font-weight: 700; }
.yougo-table tbody th { background: #f4f9f6; font-weight: 600; width: 30%; }
.yougo-table--compact th,.yougo-table--compact td { padding: 8px 10px; font-size: .92em; }
.yougo-table-note { font-size: .86em; color: #566; margin: -12px 0 24px; }

.yougo-flow-wrap,.yougo-map-wrap { margin: 24px 0; padding: 18px; background: #fafdfb; border-radius: 12px; border: 1px solid #d6e3da; }
.yougo-flow-cap,.yougo-map-cap { font-weight: 700; color: #1f6b3d; margin-bottom: 10px; text-align: center; font-size: .95em; }
.yougo-flow-svg,.yougo-map-svg { width: 100%; height: auto; max-width: 720px; display: block; margin: 0 auto; }

.yougo-related-terms { margin: 14px 0; padding-left: 1.2em; line-height: 1.9; }
.yougo-related-terms li { margin-bottom: 6px; }

/* 後方互換: hikazei-setai.html は旧クラス名で書かれているため、同じスタイルを別名で再定義する（@extend は標準CSSに無いため）。 */
.hikazei-tool { margin: 32px 0; padding: 24px; border-radius: 14px; background: linear-gradient(135deg,#f6fbf8 0%,#eaf3ed 100%); border: 1px solid #cfe5d6; }
.hikazei-tool-title { margin: 0 0 8px; font-size: 1.18em; color: #1f6b3d; }
.hikazei-tool-desc { margin: 0 0 16px; line-height: 1.8; }
.hikazei-tool-form { display: grid; gap: 12px; grid-template-columns: 1fr; margin-bottom: 14px; }
@media(min-width:720px){ .hikazei-tool-form { grid-template-columns: 1fr 1fr 1fr auto; align-items: end; } }
.hikazei-tool-form label { display: flex; flex-direction: column; font-size: .92em; font-weight: 600; color: #234; }
.hikazei-tool-form input,.hikazei-tool-form select { margin-top: 6px; padding: 10px; border: 1px solid #b9d4c2; border-radius: 8px; font-size: 1em; background: #fff; }
.hikazei-tool-btn { padding: 12px 22px; background: #1f6b3d; color: #fff; border: 0; border-radius: 8px; font-weight: 700; font-size: 1em; cursor: pointer; }
.hikazei-tool-btn:hover { background: #16562f; }
.hikazei-tool-result { display: block; margin-top: 14px; padding: 14px 16px; border-radius: 10px; background: #fff; border-left: 4px solid #1f6b3d; font-weight: 600; line-height: 1.7; min-height: 1.5em; }
.hikazei-tool-result.is-yes { background: #eaf7ee; border-color: #1f6b3d; color: #16562f; }
.hikazei-tool-result.is-edge { background: #fff7e6; border-color: #c98a1b; color: #7a5510; }
.hikazei-tool-result.is-no { background: #fdecec; border-color: #c54040; color: #8a2828; }
.hikazei-tool-note { margin-top: 10px; font-size: .85em; color: #566; }
.hikazei-table-wrap { margin: 24px 0; overflow-x: auto; }
.hikazei-table-cap { font-weight: 700; color: #1f6b3d; margin-bottom: 8px; font-size: .95em; }
.hikazei-table { width: 100%; border-collapse: collapse; background: #fff; min-width: 520px; }
.hikazei-table th,.hikazei-table td { border: 1px solid #d6e3da; padding: 10px 12px; text-align: left; font-size: .96em; }
.hikazei-table thead th { background: #1f6b3d; color: #fff; font-weight: 700; }
.hikazei-table tbody th { background: #f4f9f6; font-weight: 600; width: 30%; }
.hikazei-table--compact th,.hikazei-table--compact td { padding: 8px 10px; font-size: .92em; }
.hikazei-table--timeline tbody th { width: 12%; }
.hikazei-table-note { font-size: .86em; color: #566; margin: -12px 0 24px; }
.hikazei-flow-wrap,.hikazei-map-wrap { margin: 24px 0; padding: 18px; background: #fafdfb; border-radius: 12px; border: 1px solid #d6e3da; }
.hikazei-flow-cap,.hikazei-map-cap { font-weight: 700; color: #1f6b3d; margin-bottom: 10px; text-align: center; font-size: .95em; }
.hikazei-flow-svg,.hikazei-map-svg { width: 100%; height: auto; max-width: 720px; display: block; margin: 0 auto; }
.hikazei-related-terms { margin: 14px 0; padding-left: 1.2em; line-height: 1.9; }
.hikazei-related-terms li { margin-bottom: 6px; }
