/* ═══════════════════════════════════════
   v29.57.0 — ダッシュボード「数字で読む、いまの岡崎」（page-dashboard.php）
   このテンプレートの時だけ functions.php から読み込む。接頭辞 dsh-。
   見出しは記事ページ（single.php）と同じクラス（detail-back / detail-meta / detail-title / article-meta-row / post-summary-box）。
   ふわっと出す仕組みは使わない（最初から表示）。グラフはインラインSVG／CSS。
═══════════════════════════════════════ */
.dsh{
  --dsh-red:#C0272D; --dsh-red-d:#8B1A1E; --dsh-red-l:#F8E6E6; --dsh-gold:#C09030; --dsh-gold-l:#F6EEDC;
  --dsh-ink:#1C1916; --dsh-ink2:#4A4540; --dsh-mute:#6F6860; --dsh-line:#E6E1DA; --dsh-kinari:#F3F0EB; --dsh-off:#F8F7F5;
  --dsh-line-g:#06C755;
  --dsh-min:"Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP",serif;
  --dsh-gut:clamp(16px,4vw,40px);
  color:var(--dsh-ink);font-size:16px;line-height:1.9;letter-spacing:.02em;line-break:strict;
  padding-bottom:0 !important;overflow-x:clip;
}
.dsh span{font-weight:inherit}
.dsh a{color:inherit}
.dsh p{margin:0 0 12px}
.dsh .nw{white-space:nowrap}
.dsh :is(p,li,dd,td,summary){text-wrap:pretty;word-break:auto-phrase}
.dsh :is(h1,h2,h3,h4){text-wrap:balance;word-break:auto-phrase}
.dsh .ico{--ico-face:currentColor;--ico-op:.2}
.dsh-w{max-width:calc(1080px + var(--dsh-gut) * 2);margin:0 auto;padding:0 var(--dsh-gut);position:relative}

/* ── 見出し（記事の形） ── */
.dsh .detail-back{padding-bottom:20px}
.dsh-head{max-width:860px}
.dsh .detail-meta{margin-bottom:14px}
.dsh .detail-cat.dsh-cat{position:static;display:inline-block;line-height:1.6}
.dsh .detail-title{margin-bottom:16px}
.dsh .article-meta-row .ico{margin-right:2px}
.dsh-summary{margin:22px 0 0 !important}
.dsh-summary .psb-ico .ico{color:var(--dsh-red)}
.dsh-summary .dsh-lead{font-size:16.5px;font-weight:500;line-height:1.95;margin:0 0 10px}
.dsh-summary .dsh-lead b{font-weight:700;background:linear-gradient(transparent 62%,var(--dsh-red-l) 62%)}
.dsh-legend{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--dsh-ink2);margin:14px 0 0;padding-top:12px;border-top:1px dashed rgba(192,39,45,.18)}
.dsh-legend span{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.dsh-legend i{display:inline-block;width:18px;height:12px;border-radius:2px}
.dsh-legend .sw-fact{background:#fff;border:1px solid var(--dsh-ink2)}
.dsh-legend .sw-mine{background:var(--dsh-red-l);border-left:3px solid var(--dsh-red)}

/* ── ページ内の目次（上に貼りつく） ── */
.dsh-pnav{position:sticky;top:84px;z-index:40;margin:28px 0 0;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid var(--dsh-line);border-bottom:1px solid var(--dsh-line)}
.dsh-pnav ul{list-style:none;margin:0 auto;padding:0 var(--dsh-gut);max-width:calc(1080px + var(--dsh-gut) * 2);display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.dsh-pnav ul::-webkit-scrollbar{display:none}
.dsh-pnav a{display:block;padding:10px 10px;font-size:13px;color:var(--dsh-ink2);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent}
.dsh-pnav a.on{color:var(--dsh-red);border-bottom-color:var(--dsh-red);font-weight:700}
@media (max-width:960px){
  .dsh-pnav{top:60px}
  .dsh-pnav ul{-webkit-mask-image:linear-gradient(90deg,#000 84%,transparent);mask-image:linear-gradient(90deg,#000 84%,transparent);padding-right:40px}
}
.dsh [id]{scroll-margin-top:140px}
@media (max-width:960px){.dsh [id]{scroll-margin-top:112px}}

/* ── 区切り ── */
.dsh-sec{padding:64px 0}
.dsh-alt{background:var(--dsh-off)}
.dsh-kicker{display:block;text-align:center;font-family:var(--dm);font-size:12px;letter-spacing:.3em;color:var(--dsh-red);font-weight:700;margin-bottom:8px}
.dsh-h2{font-family:var(--dsh-min);font-weight:700;text-align:center;font-size:clamp(23px,4.4vw,32px);line-height:1.5;margin:0 0 14px;color:var(--dsh-ink)}
.dsh .dsh-sub{text-align:center;color:var(--dsh-ink2);max-width:36em;margin:0 auto 36px}
@media (max-width:600px){.dsh .dsh-sub{text-align:left}.dsh-h2 br{display:none}}

/* ── ① 3つの数字 ── */
.dsh-now{padding:32px 0 48px}
.dsh-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.dsh-k3{background:#fff;border:1px solid var(--dsh-line);border-radius:10px;padding:20px 20px 16px;display:flex;flex-direction:column}
.dsh-k3 .lab{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--dsh-ink2);font-weight:700;margin:0 0 4px}
.dsh-k3 .lab .ico{font-size:20px;color:var(--dsh-red)}
.dsh-k3 .num{font-family:var(--dsh-min);font-weight:700;font-size:44px;line-height:1.15;letter-spacing:.01em;white-space:nowrap;margin:0}
.dsh-k3 .num small{font-family:var(--sans);font-size:15px;font-weight:700;margin-left:3px}
.dsh-k3 .cap{font-size:13px;color:var(--dsh-mute);margin:4px 0 10px;line-height:1.7}
.dsh-k3 .say{font-size:15px;font-weight:700;margin:auto 0 0;padding-top:12px;border-top:1px dashed var(--dsh-line)}
.dsh-k3 .go{color:var(--dsh-red-d);text-decoration:none;display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;margin-top:2px;align-self:flex-start}
.dsh-k3 .go .ico{font-size:14px}
.dsh-upd{font-size:12.5px;color:var(--dsh-mute);margin:14px 0 0 !important}
@media (max-width:860px){.dsh-three{grid-template-columns:minmax(0,1fr)}.dsh-k3 .num{font-size:40px}}

/* ── ② 課題カード ── */
.dsh-issue{background:#fff;border:1px solid var(--dsh-line);border-radius:12px;margin:0 0 36px;overflow:hidden}
.dsh-issue:last-child{margin-bottom:0}
.dsh-issue-h{display:flex;gap:16px;align-items:flex-start;padding:26px 28px 6px}
.dsh-issue-h .no{flex:none;width:52px;height:52px;border-radius:50%;background:var(--dsh-red);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--dsh-min);font-weight:700;font-size:24px}
.dsh-issue-h .tag{font-size:12px;color:var(--dsh-red);font-weight:700;letter-spacing:.14em;margin:2px 0 2px}
.dsh-issue-h h3{font-family:var(--dsh-min);font-size:clamp(20px,3.2vw,26px);line-height:1.5;margin:0;font-weight:700}
.dsh-issue-b{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;padding:18px 28px 28px}
.dsh-fig .big{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px;margin:0 0 4px}
.dsh-fig .big b{font-family:var(--dsh-min);font-size:40px;line-height:1.2;white-space:nowrap}
.dsh-fig .big b small{font-family:var(--sans);font-size:15px;margin-left:2px}
.dsh-fig .big span{font-size:14px;color:var(--dsh-ink2)}
.dsh-fig .chip{display:inline-block;font-size:12.5px;font-weight:700;color:var(--dsh-red-d);background:var(--dsh-red-l);border-radius:3px;padding:2px 8px;line-height:1.7}
.dsh-chart{width:100%;max-width:520px;height:auto;display:block;margin:10px 0 2px;font-family:var(--sans);overflow:visible}
.dsh-chart .c-grid{stroke:var(--dsh-line);stroke-width:1}
.dsh-chart .c-ax{font-size:14px;fill:var(--dsh-mute)}
.dsh-chart .c-ln{fill:none;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}
.dsh-chart .c-ln.red{stroke:var(--dsh-red)}.dsh-chart .c-ln.ink{stroke:var(--dsh-ink2)}
.dsh-chart .c-pt.red{fill:var(--dsh-red)}.dsh-chart .c-pt.ink{fill:var(--dsh-ink2)}
.dsh-chart .c-vl{font-size:15px;font-weight:700}
.dsh-chart .c-vl.red{fill:var(--dsh-red)}.dsh-chart .c-vl.ink{fill:var(--dsh-ink2)}
.dsh-chart .c-band{fill:var(--dsh-gold-l)}
.dsh-chart .c-bandt{font-size:11.5px;fill:#7A5C1C}
.dsh-chart .c-bhi{fill:var(--dsh-red)}.dsh-chart .c-blo{fill:#CFC8BF}
@media (min-width:600px) and (max-width:1023px){.dsh-chart .c-ax{font-size:12px}.dsh-chart .c-vl{font-size:13px}}
.dsh-keyl{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:var(--dsh-ink2);margin:0 !important}
.dsh-keyl span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.dsh-keyl i{display:inline-block;width:14px;height:3px;border-radius:2px}
.dsh-src{font-size:12px;color:var(--dsh-mute);line-height:1.7;margin:6px 0 0 !important}
.dsh-small{font-size:12.5px;color:var(--dsh-mute);line-height:1.7;margin:8px 0 0 !important}
.dsh-minis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 0}
.dsh-mini{background:var(--dsh-off);border-radius:8px;padding:10px 12px}
.dsh-mini .l{font-size:12.5px;color:var(--dsh-ink2);margin:0;font-weight:700}
.dsh-mini .v{font-family:var(--dsh-min);font-weight:700;font-size:22px;line-height:1.3;margin:0;white-space:nowrap}
.dsh-mini .v small{font-family:var(--sans);font-size:12px;margin-left:2px}
.dsh-mini .d{font-size:12.5px;color:var(--dsh-mute);margin:0;line-height:1.6}
.dsh-cmp-h{font-weight:700;font-size:13.5px;margin:16px 0 6px !important}
.dsh-read dl{margin:0}
.dsh-read dt{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--dsh-ink2);letter-spacing:.06em;margin:0 0 4px}
.dsh-read dt .ico{font-size:18px;color:var(--dsh-red)}
.dsh-read dd{margin:0 0 18px;font-size:15.5px;line-height:1.9}
.dsh-read dd p{margin:0 0 8px}
.dsh-read dd b{background:linear-gradient(transparent 64%,var(--dsh-red-l) 64%)}
.dsh-do{list-style:none;margin:0;padding:0}
.dsh-do li{position:relative;padding-left:22px;margin:0 0 6px;font-size:15px}
.dsh-do li::before{content:"";position:absolute;left:4px;top:.72em;width:8px;height:8px;border-radius:50%;border:2px solid var(--dsh-red)}
.dsh-do a,.dsh-acts a,.dsh-tl a{color:var(--dsh-red-d);text-decoration:underline;text-underline-offset:3px}
.dsh-mine{background:var(--dsh-red-l);border-left:4px solid var(--dsh-red);padding:22px 28px 20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
.dsh-mine h4{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--dsh-red-d);letter-spacing:.06em;margin:0 0 6px;font-weight:700}
.dsh-mine h4 .ico{font-size:20px}
.dsh-mine p{font-size:15.5px;margin:0 0 8px}
.dsh-mine b{font-weight:700}
.dsh-acts{list-style:none;margin:0;padding:0}
.dsh-acts li{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px}
.dsh-acts li .w{flex:none;font-size:12px;font-weight:700;color:#fff;background:var(--dsh-red);border-radius:3px;padding:1px 7px;line-height:1.7;margin-top:3px;white-space:nowrap}
.dsh-acts li p{flex:1;min-width:0;font-size:14.5px;line-height:1.75;margin:0}
details.dsh-srcd{margin:10px 0 0}
details.dsh-srcd>summary,.dsh-tbl>summary{font-size:12.5px;color:var(--dsh-ink2);cursor:pointer;display:inline-flex;gap:6px;align-items:center;list-style:none;padding:4px 0}
details.dsh-srcd>summary::-webkit-details-marker,.dsh-tbl>summary::-webkit-details-marker{display:none}
details.dsh-srcd>summary .ico,.dsh-tbl>summary .ico{font-size:16px;color:var(--dsh-red)}
@media (max-width:860px){
  .dsh-issue-h{padding:22px 18px 4px;gap:12px}
  .dsh-issue-h .no{width:42px;height:42px;font-size:20px}
  .dsh-issue-b{grid-template-columns:minmax(0,1fr);gap:18px;padding:14px 18px 22px}
  .dsh-mine{grid-template-columns:minmax(0,1fr);gap:16px;padding:20px 18px}
}

/* 表 */
.dsh .tw{overflow-x:auto;max-width:100%}
.dsh-tbl{margin:6px 0 0}
.dsh-tbl table{border-collapse:collapse;font-size:13px;margin-top:8px;min-width:100%}
.dsh-tbl th,.dsh-tbl td{border-bottom:1px solid var(--dsh-line);padding:5px 10px;text-align:right;white-space:nowrap;font-weight:400}
.dsh-tbl th{color:var(--dsh-mute);font-size:12px}
.dsh-tbl th:first-child,.dsh-tbl td:first-child{text-align:left}
.dsh-cmp{width:100%;border-collapse:collapse;font-size:14px}
.dsh-cmp th,.dsh-cmp td{padding:8px;border-bottom:1px solid var(--dsh-line);text-align:right;white-space:nowrap;font-weight:400}
.dsh-cmp th:first-child,.dsh-cmp td:first-child{text-align:left;white-space:normal}
.dsh-cmp thead th{font-size:12px;color:var(--dsh-mute)}
.dsh-cmp .chg{font-weight:700}
@media (max-width:480px){.dsh-cmp{font-size:13px}.dsh-cmp th,.dsh-cmp td{padding:7px 4px}}

/* 年齢の帯 */
.dsh-stack{display:flex;height:28px;border-radius:6px;overflow:hidden;margin:14px 0 8px}
.dsh-stack span{display:block;height:100%}
.dsh-stackl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 10px;font-size:12.5px;color:var(--dsh-ink2);margin:0}
.dsh-stackl div{line-height:1.5}
.dsh-stackl i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px}
.dsh-stackl b{display:block;font-size:14px;color:var(--dsh-ink)}
.dsh-stackl-in{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:480px){.dsh-stackl-in{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 横棒 */
.dsh-hb{list-style:none;margin:0;padding:0}
.dsh-hb li{display:grid;grid-template-columns:8.5em minmax(0,1fr) 6.6em;align-items:center;gap:10px;margin:0 0 8px;font-size:14px;line-height:1.5}
.dsh-hb .k{white-space:nowrap}
.dsh-hb .k small{display:block;font-size:11px;color:var(--dsh-mute);line-height:1.3}
.dsh-hb .tr{height:14px;background:var(--dsh-kinari);border-radius:7px;overflow:hidden}
.dsh-hb .f{display:block;height:100%;background:#BDB4A9;border-radius:7px}
.dsh-hb li.on .f{background:var(--dsh-red)}
.dsh-hb li.on .k,.dsh-hb li.on .v b{color:var(--dsh-red-d);font-weight:700}
.dsh-hb .v{text-align:right;white-space:nowrap;font-size:13px}
.dsh-hb .v b{font-size:15px;margin-right:1px}
.dsh-hb .v small{color:var(--dsh-mute);margin-left:6px;font-size:11.5px}
.dsh-hb-cmp li{grid-template-columns:7em minmax(0,1fr) 4.4em}
.dsh-hb-money li{grid-template-columns:6.6em minmax(0,1fr) 7.6em}
@media (max-width:480px){
  .dsh-hb li{grid-template-columns:7.4em minmax(0,1fr) 4.6em;gap:8px;font-size:13px}
  .dsh-hb .v small{display:block;margin:0;line-height:1.2}
  .dsh-hb-cmp li{grid-template-columns:5.4em minmax(0,1fr) 4.4em}
  .dsh-hb-money li{grid-template-columns:6em minmax(0,1fr) 5.4em}
}

/* ── ③ 市民の声 ── */
.dsh-status{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px 12px;font-size:13px;color:var(--dsh-ink2);margin:-18px 0 22px !important}
.dsh-status span{display:inline-flex;align-items:center;gap:6px;background:var(--dsh-gold-l);color:#6E5318;font-weight:700;border-radius:100px;padding:2px 12px}
.dsh-vsum{display:grid;grid-template-columns:repeat(3,auto);gap:12px 28px;justify-content:center;margin:0 0 34px}
.dsh-vsum div{text-align:center}
.dsh-vsum b{display:block;font-family:var(--dsh-min);font-size:40px;line-height:1.2}
.dsh-vsum b small{font-family:var(--sans);font-size:15px;margin-left:2px}
.dsh-vsum span{font-size:13px;color:var(--dsh-ink2)}
.dsh-voice{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:36px}
.dsh-voice h3{font-size:15px;margin:0 0 14px;display:flex;align-items:center;gap:8px;font-weight:700}
.dsh-voice h3 .ico{font-size:20px;color:var(--dsh-red);flex:none}
.dsh-vnote{background:var(--dsh-red-l);border-left:4px solid var(--dsh-red);padding:18px 22px;margin:30px 0 0;font-size:15.5px}
.dsh-vnote p{margin:0 0 6px}.dsh-vnote p:last-child{margin:0}
.dsh-caution{display:flex;gap:8px;background:#fff;border:1px solid var(--dsh-line);border-radius:8px;padding:14px 16px;font-size:13.5px;color:var(--dsh-ink2);margin:20px 0 0 !important}
.dsh-caution .ico{flex:none;margin-top:5px;color:var(--dsh-ink2)}
@media (max-width:860px){.dsh-voice{grid-template-columns:minmax(0,1fr);gap:28px}}
@media (max-width:480px){.dsh-vsum{gap:8px 14px}.dsh-vsum b{font-size:28px}.dsh-vsum span{font-size:11.5px}}

/* ── ④ 行動の記録 ── */
.dsh-tl{list-style:none;margin:0 auto;padding:0;max-width:820px;position:relative}
.dsh-tl::before{content:"";position:absolute;left:calc(6.4em + 19px);top:6px;bottom:6px;width:2px;background:var(--dsh-line)}
.dsh-tl li{display:grid;grid-template-columns:6.4em minmax(0,1fr);gap:40px;margin:0 0 22px;position:relative}
.dsh-tl li::before{content:"";position:absolute;left:calc(6.4em + 14px);top:8px;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid var(--dsh-red)}
.dsh-tl .when{font-family:var(--dm);font-size:13px;font-weight:700;color:var(--dsh-red-d);text-align:right;white-space:nowrap;padding-top:2px}
.dsh-tl .what b{display:block;font-size:15.5px;line-height:1.6;margin:0 0 2px;font-weight:700}
.dsh-tl .what p{font-size:14px;color:var(--dsh-ink2);margin:0}
.dsh-tl .kind{display:inline-block;font-size:11px;font-weight:700;border:1px solid currentColor;border-radius:3px;padding:0 6px;margin-right:6px;vertical-align:2px;color:var(--dsh-ink2);line-height:1.6}
.dsh-tl .kind.q{color:var(--dsh-red)}
@media (max-width:600px){
  .dsh-tl::before{left:5px}
  .dsh-tl li{grid-template-columns:minmax(0,1fr);gap:2px;padding-left:26px}
  .dsh-tl li::before{left:0}
  .dsh-tl .when{text-align:left}
}

/* ── ⑤ 詳しいデータ ── */
.dsh-acc>details{background:#fff;border:1px solid var(--dsh-line);border-radius:10px;margin:0 0 12px}
.dsh-acc>details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:16px 20px;font-weight:700;font-size:16px}
.dsh-acc>details>summary::-webkit-details-marker{display:none}
.dsh-acc>details>summary .lead{font-size:22px;color:var(--dsh-red);flex:none}
.dsh-acc>details>summary .s{font-weight:400;font-size:13px;color:var(--dsh-mute);margin-left:auto;text-align:right}
.dsh-acc>details>summary .car{flex:none;color:var(--dsh-mute);transition:transform .2s}
.dsh-acc>details[open]>summary .car{transform:rotate(180deg)}
.dsh-acc .in{padding:4px 20px 22px}
.dsh-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.dsh-tiles-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.dsh-tile{background:var(--dsh-off);border-radius:8px;padding:12px 14px}
.dsh-tile .l{font-size:12.5px;color:var(--dsh-ink2);margin:0;font-weight:700}
.dsh-tile .v{font-family:var(--dsh-min);font-weight:700;font-size:24px;line-height:1.3;margin:2px 0;white-space:nowrap}
.dsh-tile .v small{font-family:var(--sans);font-size:12px;margin-left:2px}
.dsh-tile .d{font-size:12.5px;color:var(--dsh-mute);margin:0;line-height:1.6}
.dsh-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin-top:18px}
.dsh-three-pop{list-style:none;margin:0 0 10px;padding:0}
.dsh-three-pop li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 10px;padding:8px 0;border-bottom:1px solid var(--dsh-line)}
.dsh-three-pop .k{font-size:13.5px;font-weight:700}
.dsh-three-pop b{font-family:var(--dsh-min);font-size:20px;text-align:right;white-space:nowrap}
.dsh-three-pop b small{font-family:var(--sans);font-size:12px;margin-left:2px}
.dsh-three-pop .d{grid-column:1/3;font-size:12px;color:var(--dsh-mute)}
.dsh-three-pop li.on .k,.dsh-three-pop li.on b{color:var(--dsh-red-d)}
@media (max-width:860px){
  .dsh-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dsh-two{grid-template-columns:minmax(0,1fr)}
  .dsh-acc>details>summary .s{display:none}
  .dsh-acc>details>summary .car{margin-left:auto}
}
@media (max-width:420px){.dsh-tiles-3{grid-template-columns:minmax(0,1fr)}.dsh-acc .in{padding:4px 14px 18px}}

/* 税金の試算 */
.dsh-sim{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.dsh-sim-lab{display:block;font-size:13.5px;font-weight:700;color:var(--dsh-ink2);margin:0 0 4px !important}
.dsh-sim-income{display:flex;align-items:baseline;gap:4px}
.dsh-sim-income b{font-family:var(--dsh-min);font-size:40px;line-height:1.2}
.dsh-sim-income small{font-size:14px}
.dsh-sim input[type=range]{width:100%;accent-color:var(--dsh-red);margin:6px 0 10px}
.dsh-sim-chk{display:flex;align-items:center;gap:8px;font-size:14px;margin:0 0 14px;cursor:pointer}
.dsh-sim-chk input{width:18px;height:18px;accent-color:var(--dsh-red)}
.dsh-sim-out{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dsh-sim-out div{background:var(--dsh-off);border-radius:8px;padding:10px 12px}
.dsh-sim-out .k{display:block;font-size:12.5px;color:var(--dsh-ink2)}
.dsh-sim-out b{display:block;font-family:var(--dsh-min);font-size:22px;line-height:1.3;white-space:nowrap}
.dsh-sim-out b.city{color:var(--dsh-red-d)}
.dsh-sim-warn{font-size:13px;font-weight:700;color:var(--dsh-red-d);margin:10px 0 0 !important}
.dsh-uso>div{display:grid;grid-template-columns:7.6em minmax(0,1fr) 5.4em;gap:8px;align-items:center;font-size:13px;margin:0 0 7px}
.dsh-uso span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dsh-uso i{display:block;height:10px;background:var(--dsh-kinari);border-radius:5px;overflow:hidden}
.dsh-uso em{display:block;height:100%;background:var(--dsh-red);border-radius:5px}
.dsh-uso b{text-align:right;white-space:nowrap}
@media (max-width:860px){.dsh-sim{grid-template-columns:minmax(0,1fr);gap:24px}}
@media (max-width:420px){.dsh-uso>div{grid-template-columns:6.6em minmax(0,1fr) 5em}}

/* ── ⑥ 導線 ── */
.dsh-cta{background:var(--dsh-ink);color:#fff;padding:64px 0}
.dsh-cta .dsh-kicker{color:#F5C6C8}
.dsh-cta .dsh-h2{color:#fff}
.dsh-cta .dsh-sub{color:#D9D3CC}
.dsh-cbtns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dsh-cbtn{display:flex;flex-direction:column;gap:6px;background:#fff;color:var(--dsh-ink) !important;border-radius:10px;padding:20px;text-decoration:none}
.dsh-cbtn .ico{font-size:26px;color:var(--dsh-red)}
.dsh-cbtn b{font-size:16px;font-weight:700}
.dsh-cbtn span{font-size:13px;color:var(--dsh-ink2);line-height:1.7}
.dsh-cbtn.main{background:var(--dsh-red);color:#fff !important}
.dsh-cbtn.main .ico,.dsh-cbtn.main span{color:#fff;--ico-face:#fff}
.dsh-cbtn.line .ico{color:var(--dsh-line-g)}
.dsh-blogs{margin:28px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}
.dsh-blogs a{display:flex;gap:8px;align-items:flex-start;color:#fff;font-size:14px;text-decoration:none;border-bottom:1px solid #4A4540;padding:8px 0}
.dsh-blogs a .ico{color:#F5C6C8;flex:none;margin-top:5px}
@media (max-width:860px){.dsh-cbtns{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.dsh-blogs{grid-template-columns:minmax(0,1fr)}}

/* ── ⑦ 出典 ── */
.dsh-howto{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 28px}
.dsh-howto div{background:#fff;border:1px solid var(--dsh-line);border-radius:8px;padding:14px 16px}
.dsh-howto b{display:block;font-size:14px;margin:0 0 4px;font-weight:700}
.dsh-howto p{font-size:13px;margin:0}
.dsh-sources{font-size:13px;color:var(--dsh-ink2);max-width:860px;padding-left:1.6em;margin:0}
.dsh-sources li{margin:0 0 8px;line-height:1.7}
.dsh-sources a{color:var(--dsh-red-d);text-decoration:underline;text-underline-offset:3px}
.dsh-sources a .ico{margin-left:3px}
@media (max-width:860px){.dsh-howto{grid-template-columns:minmax(0,1fr)}}
.dsh-keyl .note{flex-basis:100%;white-space:normal;display:block;color:var(--dsh-mute)}

/* 長めの文章は、記事本文（v29.56.4）と同じく文節で早めに折らない（右端がガタガタにならないように）。
   1文字・句点だけの行は footer.php の仕上げJSと .nw で防ぐ */
.dsh :is(.dsh-lead,.dsh-read dd p,.dsh-mine p,.dsh-vnote p,.dsh-acts p,.dsh-tl .what p,.dsh-caution>span,.dsh-small,.dsh-src,.dsh-howto p,.dsh-do li,.dsh-k3 .cap,.dsh-mini .d,.dsh-tile .d){
  word-break:normal;text-wrap:wrap;line-break:strict;overflow-wrap:anywhere;hanging-punctuation:allow-end}
.dsh-acts li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 10px}
.dsh-acts li .dsh-more{grid-column:2}
.dsh .dsh-more{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;color:var(--dsh-red-d);text-decoration:none;margin:2px 0 0;justify-self:start}
.dsh .dsh-more .ico{font-size:13px}
.dsh-tl .what .dsh-more{margin-top:2px}
.dsh-fig .chip+.dsh-hb{margin-top:16px}
.dsh-status>.nw{background:none;padding:0;font-weight:400;color:var(--dsh-ink2)}
/* v29.57.2：スマホで1段落3行ほどに分けたので、行動の記録の2つ目の段落も右の列に置く */
.dsh-acts li p+p{grid-column:2;margin-top:4px}
.dsh-summary .dsh-lead+.dsh-lead{margin-top:2px}

/* v29.59.1 ページの一番上の人口の1行 */
.dsh-popnow{font-size:16px;line-height:1.9;margin:14px 0 18px;padding:12px 16px;background:#fff;border:1px solid var(--dsh-line,#e4dcd4);border-radius:12px}
.dsh-popnow b{font-size:20px;font-weight:800;color:var(--dsh-red,#c8102e)}
.dsh-popnow-src{display:block;font-size:12px;color:var(--dsh-mute,#6b6461);margin-top:2px}
