.improvement-overview { margin:32px 0 0; padding:36px; background:#fff; border:1px solid #d4e0ea; border-radius:24px; box-shadow:0 12px 32px #173c5906; }
.improvement-kicker { display:block; font-size:12px; color:#526b80; font-weight:700; margin-bottom:12px; }
.improvement-overview figcaption h3 { font-size:clamp(21px,2.3vw,29px); color:#173c59; line-height:1.6; margin:0 0 20px; }
.improvement-map { max-width:100%; margin:0 auto; }
.improvement-process h4, .improvement-next h4 { margin:0; font-size:20px; color:#173c59; line-height:1.6; }
.improvement-process h4>span, .improvement-next h4>span { display:inline-flex; align-items:center; justify-content:center; width:29px; height:29px; border-radius:50%; background:#173c59; color:#fff; margin-right:8px; font-size:16px; }
.improvement-metric { margin:12px 0 0; color:#52697e; font-size:13px; line-height:1.8; }
.improvement-chart { display:block; width:100%; height:auto; margin-top:8px; overflow:visible; }
.improvement-transition { display:flex; align-items:center; justify-content:center; gap:12px; color:#35572b; font-size:14px; padding:12px 0; }
.improvement-transition>span { font-size:30px; line-height:1; }
.improvement-next { background:#eff5e7; border:1px solid #c4d5b0; border-radius:14px; padding:18px 24px; }
.improvement-next ul { list-style:none; padding:0; margin:14px 0 0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.improvement-next li { display:flex; align-items:center; gap:8px; font-size:13px; color:#4d6250; }
.improvement-rule-art { flex:0 0 100px; }
.improvement-rule-art svg { display:block; width:100%; height:auto; }
.improvement-next li strong { display:block; margin-top:4px; color:#24492d; font-size:20px; }
.improvement-note { font-size:12px; line-height:1.9; color:#607080; margin:26px 0 0; }
.improvement-data-note { font-size:13px; line-height:1.9; color:#52697e; margin:20px 0 12px; }
.improvement-details { color:#245e8d; font-size:14px; font-weight:700; }
@media(max-width:700px) {
 .improvement-overview { padding:22px 16px; }
 .improvement-process h4, .improvement-next h4 { font-size:17px; }
 .improvement-next { padding:17px 12px; }
 .improvement-next ul { grid-template-columns:1fr; gap:16px; }
 .improvement-next li strong { font-size:18px; }
}
#improvement-overview-title { scroll-margin-top:180px; }

.improvement-dashboard { margin-top:16px; padding:20px 24px 12px; border:1px solid #e1e8ee; border-radius:14px; background:#f6f9fb; }
.improvement-chart-header { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.improvement-dashboard .improvement-metric { margin:0; color:#496279; font-size:14px; font-weight:600; }
.improvement-target { color:#7a8b99; font-size:11px; white-space:nowrap; }
.improvement-dashboard .improvement-chart { width:100%; max-width:720px; margin:12px auto 0; }
@media(max-width:700px) {
 .improvement-dashboard { padding:16px 10px 8px; border-radius:12px; }
 .improvement-chart-header { flex-wrap:wrap; gap:4px; }
 .improvement-dashboard .improvement-metric { font-size:12px; }
 .improvement-target { font-size:10px; }
 .improvement-chart text { font-size:20px; }
 .improvement-chart-labels text { font-size:22px; }
}

.improvement-dashboard { display:grid; grid-template-columns:240px minmax(0,1fr); align-items:center; gap:24px; }
.improvement-page-example svg { display:block; width:100%; height:auto; }
.improvement-page-example p { margin:6px 0 0; text-align:center; color:#607589; font-size:12px; }
.improvement-chart-panel { min-width:0; }
.improvement-chart-panel .improvement-chart-header { flex-wrap:wrap; gap:4px 12px; }
@media(max-width:900px) {
 .improvement-dashboard { grid-template-columns:190px minmax(0,1fr); gap:16px; }
}
@media(max-width:700px) {
 .improvement-dashboard { grid-template-columns:1fr; gap:18px; }
 .improvement-page-example { width:210px; max-width:100%; margin:0 auto; }
 .improvement-page-example p { font-size:11px; }
}
.improvement-explainer { margin:18px 0 24px; padding:18px 20px; background:#f5f8fb; border-left:3px solid #91aec3; border-radius:4px; color:#173c59; }
.improvement-explainer strong { font-size:17px; }
.improvement-explainer p { font-size:14px; line-height:1.9; margin:8px 0 12px; }
.improvement-explainer a { font-size:14px; font-weight:700; color:#23668e; text-decoration:underline; text-underline-offset:4px; }
