/* ux-kit: 両媒体(まなび・補助金)の build が読む共通部品。正本はこの1本(SEOAI/lib/ux-kit/ux-kit.css)。build が dist/assets/ux-kit.css へバイト一致で書き出す。
   使い方と写し元の対応は lib/ux-kit/README.md。クラスは ux- と kit- の接頭辞だけ(row-head-link は build が表の1列目リンクに付ける例外)。
   色は全部 var(--kit-名前)。既定値は下の :root(写し元の16進)。媒体は自分の CSS の :root で値だけ上書きする。
   既存クラス(list-check・row-head・svc・art-band と caption 要素)を指す規則は入れない。
   写し元: affiliate/manabi/ux_upgrade_20261028/publication_20261105_css/release/ の
   hierarchy-842bb95d.css(md5 6b0ae41a)・reading-9e9b2f99.css(md5 a30f7854)・story-bc1eb734.css(md5 811b1272)・density-761fc3d1.css(md5 c1e818df)・enrichment-45dac251.css(md5 10aa725c)・experience-ed61c05e.css(md5 5d0e2742) */
:root{--kit-ink:#233a3c;--kit-accent:#245e65;--kit-badge:#2f7078;--kit-teal:#1f6f78;--kit-soft:#edf5f1;--kit-tint:#f3f7f4;--kit-surface:#fff;--kit-border:#d6e3de;--kit-border-soft:#dce6e1;--kit-border-card:#d7e4de;--kit-border-row:#e3ebe7;--kit-muted:#526768;--kit-sub:#425b5e;--kit-condition-line:#d5bc82;--kit-mark:#f1deb1;--kit-bullet:#377c80;--kit-case-line:#b9d5ce;--kit-warm:#fffaf3;--kit-warm-border:#e8d9c4;--kit-add-bg:#f4f7f3;--kit-first-line:#b8d3ca;--kit-quote-border:#d5e3dd;--kit-flow-bg:#fcfaf5;--kit-flow-line:#9fb8aa;--kit-flow-box-border:#cadbd2;--kit-flow-branch-border:#dacdbb;--kit-flow-branch-label:#795635;--kit-flow-question-border:#c7d8ce;--kit-cost-2:#faecde;--kit-cost-3:#eef0f8;--kit-cost-line:#d7e2db;--kit-example-bg:#fff8f0;--kit-example-border:#ecd9c4;--kit-example-cell-border:#ebdfd0;--kit-example-total-line:#dcc7b0;--kit-example-total:#71421f;--kit-on-head:#fff}

/* 表の1列目のリンク(build が th の中の a に class="row-head-link" を付ける)。PC幅は見出し行の背景の上なので白、カード化した幅(600px以下の table.stack)では地が白に戻るので --brand */
.entry-content a.row-head-link{color:var(--kit-on-head)}
@media(max-width:600px){.entry-content table.stack a.row-head-link{color:var(--brand)}}

/* 項目名と説明(hierarchy-term・reading-definition → kit-def) */
.article .entry-content dl.kit-defs{margin:24px 0 30px;padding:0;min-width:0;max-width:100%}
.article .entry-content .kit-def{box-sizing:border-box;min-width:0;max-width:100%;padding:20px 0;border-bottom:1px solid var(--kit-border-soft)}
.article .entry-content .kit-def:first-child{padding-top:0}
.article .entry-content .kit-def:last-child{border-bottom:0}
.article .entry-content .kit-def dt{display:flex;align-items:flex-start;gap:12px;margin:0;color:var(--kit-accent);font-size:17.5px;font-weight:750;line-height:1.6;min-width:0;max-width:100%}
.article .entry-content .kit-term{min-width:0;overflow-wrap:anywhere;text-wrap:balance}
.article .entry-content .kit-def dd{margin:10px 0 0;min-width:0;max-width:100%}
.article .entry-content .kit-def dd p{font-size:16px;font-weight:400;line-height:1.9;margin:10px 0;color:var(--kit-ink)}
.article .entry-content .kit-def dd>:last-child{margin-bottom:0}
.article .entry-content .kit-defs--cards .kit-def{border:1px solid var(--kit-border-card);border-radius:10px;background:var(--kit-surface);padding:20px 22px;margin:14px 0}
.article .entry-content .kit-defs--cards dd{margin-left:38px}
.article .entry-content .kit-def-num{flex:0 0 26px;width:26px;height:26px;border-radius:7px;background:var(--kit-badge);color:var(--kit-surface);font-size:14px;line-height:26px;font-weight:750;text-align:center}
.article .entry-content .kit-prose{margin:16px 0 20px;min-width:0;max-width:100%}
.article .entry-content .kit-prose p{margin:10px 0;line-height:1.9}
.article .entry-content p.kit-condition{padding-left:12px;border-left:2px solid var(--kit-condition-line);color:var(--kit-sub);font-size:16px;line-height:1.9}
.article .entry-content p.kit-summary{font-weight:700;color:var(--kit-accent)}
.article .entry-content .kit-keyterm{display:inline-block;font-weight:750;color:var(--kit-accent)}
.article .entry-content p.kit-formula{padding:14px 0;margin:10px 0;border-bottom:1px solid var(--kit-border)}
.article .entry-content .kit-formula-name{display:block;font-size:17px;font-weight:750;line-height:1.65;color:var(--kit-accent);margin-bottom:8px}
.article .entry-content .kit-formula-expr{display:block;font-size:16px;font-weight:400;line-height:1.9}
.article .entry-content .kit-fit-label{display:block;font-size:13px;font-weight:750;line-height:1.6;color:var(--kit-accent);margin-bottom:5px}

/* 本文の区切り・注記・事例・箇条書き(reading-系 → kit-系) */
.article .entry-content .kit-block,.article .entry-content .kit-note,.article .entry-content .kit-case{min-width:0;max-width:100%;box-sizing:border-box;margin:20px 0 26px;overflow-wrap:anywhere}
.article .entry-content :is(.kit-block,.kit-note,.kit-case) p{margin:10px 0;line-height:1.9}
.article .entry-content :is(.kit-block,.kit-note,.kit-case)>:first-child{margin-top:0}
.article .entry-content :is(.kit-block,.kit-note,.kit-case)>:last-child{margin-bottom:0}
.article .entry-content .kit-note{padding:20px 22px;background:var(--kit-tint);border:1px solid var(--kit-border);border-radius:10px}
.article .entry-content .kit-case{padding:4px 0 4px 18px;border-left:3px solid var(--kit-case-line)}
.article .entry-content :is(h3,h4).kit-label{font-size:15px;line-height:1.65;font-weight:750;color:var(--kit-accent);margin:0 0 12px;padding:0;background:none;border:0;box-shadow:none}
.article .entry-content .kit-label::before{content:none}
.article .entry-content ul.kit-list{margin:12px 0 16px;padding:0;list-style:none}
.article .entry-content ul.kit-list>li{margin:0;padding:9px 0 9px 19px;line-height:1.9;border-bottom:1px solid var(--kit-border-row);min-width:0;max-width:100%;box-sizing:border-box}
.article .entry-content ul.kit-list>li:last-child{border-bottom:0;padding-bottom:2px}
.article .entry-content ul.kit-list>li::before{left:1px;top:21px;width:5px;height:5px;border-radius:50%;background:var(--kit-bullet);transform:none}
.article .entry-content strong.kit-key{font-weight:750;color:var(--kit-ink)}
.article .entry-content .kit-marker{background:linear-gradient(transparent 70%,var(--kit-mark) 70%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 1px}
.article .entry-content .kit-sideline{display:block;margin:9px 0;padding-left:14px;border-left:2px solid var(--kit-border)}
.article .entry-content p.kit-fine{font-size:13px;line-height:1.85;color:var(--kit-muted)}

/* 図の枠と自然高(rich-figure → kit-figure。図ごとの縦横比と記事固有の id の規則は持ち込まない) */
.article .entry-content figure.kit-figure{box-sizing:border-box;max-width:100%;min-width:0;margin:26px 0 34px;padding:22px 22px 16px;border:1px solid var(--kit-border);border-radius:14px;background:var(--kit-surface)}
.kit-figure picture,.kit-figure img{display:block;width:100%;max-width:100%;height:auto}
.article .entry-content .kit-figure figcaption{font-size:11px!important;line-height:1.8!important;overflow-wrap:anywhere;margin-top:14px;color:var(--kit-muted)}
.article .entry-content figure.kit-figure--warm{background:var(--kit-warm);border-color:var(--kit-warm-border)}

/* 試算の段(story-calc-step・story-add・story-first と、結果の枠 ux-quote-results) */
.article .entry-content .ux-quote-results{align-self:start;position:static;min-width:0;background:var(--kit-surface);border:1px solid var(--kit-quote-border);border-radius:14px;padding:18px;margin-top:24px}
.article .entry-content .kit-story-step{display:grid;grid-template-columns:160px minmax(0,1fr);gap:14px;align-items:center;min-width:0;padding:12px 0}
.article .entry-content .kit-story-step img{display:block;width:100%;max-width:160px;height:auto}
.article .entry-content .kit-story-step p{margin:3px 0;font-size:15px;line-height:1.7}
.article .entry-content .kit-story-step .kit-story-label{color:var(--kit-accent);font-weight:700;font-size:13px;margin-bottom:8px}
.article .entry-content .kit-story-add{font-size:14px;line-height:1.8;padding:13px 12px 13px 35px;background:var(--kit-add-bg);border-radius:8px;margin:10px 0;position:relative;color:var(--kit-sub)}
.article .entry-content .kit-story-add::before{content:'＋';position:absolute;left:11px;top:12px;font-size:18px;font-weight:700;color:var(--kit-accent)}
.article .entry-content .kit-story-first{padding:15px 12px;border-top:2px solid var(--kit-first-line);margin-top:10px}
.article .entry-content .kit-story-first>p:first-child{margin:0 0 6px;font-size:15px}

/* 枠(ux-module)・分岐フロー(ux-flow)・費用カード(ux-cost-grid)・試算例(ux-example) */
.ux-module{border:1px solid var(--kit-border);border-radius:20px;padding:28px;margin:30px 0 36px;background:var(--kit-surface)}
.ux-module h2,.ux-module h3{background:none;border:0;padding:0;line-height:1.6}
.ux-module h3::before{content:none}
.ux-module h2{font-size:24px;margin:5px 0 12px}
.ux-module h3{font-size:20px}
.article .entry-content .ux-module>h3:first-child{margin-top:0}   /* 枠の先頭の h3 に .entry-content h3 の margin-top(32.4px)が効いて上が空きすぎるのを打ち消す(9章1-B 3周目 B3) */
.ux-module p{font-size:14px;line-height:1.85;margin:10px 0}
.ux-flow{background:var(--kit-flow-bg)}
.ux-flow-start,.ux-flow-end{padding:16px;border:1px solid var(--kit-flow-box-border);border-radius:12px;background:var(--kit-soft);text-align:center;font-weight:700;font-size:15px}
.ux-flow-line{height:22px;width:1px;background:var(--kit-flow-line);margin:0 auto}
.ux-flow-branches{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}
.ux-flow-branch{padding:16px;border:1px solid var(--kit-flow-branch-border);border-radius:12px;background:var(--kit-surface);font-size:14px;line-height:1.8;text-align:center}
.ux-flow-branch strong{display:block;font-size:12px;color:var(--kit-flow-branch-label);margin-bottom:5px}
.ux-flow-start .ux-pair,.ux-flow-branch .ux-pair,.ux-flow-end .ux-pair{display:inline-block}/* 括弧の組: 枠に入る間は1つの箱で次の行へ送り、枠より広い時だけ中の文節の境目で折れる(build._bind_pairs) */
.ux-flow-question{padding:16px;background:var(--kit-surface);border:1px solid var(--kit-flow-question-border);border-radius:12px;text-align:center;font-size:15px;font-weight:700}
.ux-flow-end{margin-top:0}
.ux-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.ux-cost-card{border-radius:14px;padding:20px 16px;background:var(--kit-soft)}
.ux-cost-card:nth-child(2){background:var(--kit-cost-2)}
.ux-cost-card:nth-child(3){background:var(--kit-cost-3)}
.ux-cost-card h4{font-size:15px;margin:0 0 10px}
.ux-cost-card ul{list-style:none!important;padding:0!important;margin:0!important}
.ux-cost-card li{font-size:13px;padding:7px 0!important;border-top:1px solid var(--kit-cost-line);line-height:1.7;list-style:none}
.ux-cost-card li:before{display:none!important}
.ux-cost-card p{font-size:12px}
.ux-example{background:var(--kit-example-bg);border-color:var(--kit-example-border)}
.ux-example-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 12px}
.ux-example-values div{background:var(--kit-surface);border:1px solid var(--kit-example-cell-border);border-radius:12px;padding:16px 10px;text-align:center;font-size:12px}
.ux-example-values strong{display:block;font-size:23px;margin-top:8px;letter-spacing:-.02em}
.ux-example-total{border-top:1px solid var(--kit-example-total-line);padding-top:15px;display:flex;align-items:baseline;justify-content:space-between;gap:15px}
.ux-example-total strong{font-size:34px;color:var(--kit-example-total);white-space:nowrap}

@media(max-width:767px){
.article .entry-content .kit-defs--cards .kit-def{padding:17px 15px;margin:14px 0}
.article .entry-content .kit-defs--cards dd{margin-left:0;margin-top:12px}
.article .entry-content .kit-def dt{font-size:17px;gap:10px}
.article .entry-content .kit-formula-name{font-size:16px}
.article .entry-content .kit-note{padding:17px 16px;margin:22px 0;border-radius:9px}
.article .entry-content .kit-case{padding-left:13px;margin:22px 0}
.article .entry-content :is(h3,h4).kit-label{font-size:14px;margin-bottom:10px}
.article .entry-content ul.kit-list>li{padding-left:16px}
.article .entry-content figure.kit-figure{padding:14px 14px 16px;margin:24px 0 30px;border-radius:12px}
.article .entry-content .kit-figure figcaption{font-size:12px!important}
.article .entry-content .ux-quote-results{padding:16px}
.article .entry-content .kit-story-step{grid-template-columns:72px minmax(0,1fr);gap:10px}
.ux-module{margin:26px 0;padding:20px 16px;border-radius:15px}
.ux-module h2{font-size:21px}
.ux-module h3{font-size:18px}
.ux-cost-grid{grid-template-columns:1fr;gap:10px}
.ux-cost-card{padding:17px}
.ux-example-values{grid-template-columns:1fr;gap:8px}
.ux-example-values div{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:12px 14px}
.ux-example-values strong{display:inline;font-size:22px;margin:0}
.ux-example-total{flex-direction:column;align-items:flex-start;gap:8px}
.ux-example-total strong{font-size:30px;align-self:flex-end}
.ux-flow-branches{gap:9px;grid-template-columns:1fr}
.ux-flow-branch{font-size:15px;padding:16px;line-height:1.8}
.ux-flow-start,.ux-flow-end,.ux-flow-question{font-size:14px}
}
