/* Reserve blank drawing space in questions; show diagrams inside explanations. */
.count-question-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,290px);align-items:start;gap:26px;margin:18px 0}
.drawing-space{min-width:0;min-height:285px}
.count-figure{margin:0;min-width:0;padding:12px 10px 0;border:1px solid #d8e3dd;border-radius:12px;background:#fff}
.count-figure figcaption{font-size:.9375rem;color:var(--muted);font-weight:500}
.count-diagram{display:block;width:100%;height:auto;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",system-ui,sans-serif}
.answer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr))}
.answer-input{display:flex;align-items:center;gap:8px}
.answer-input input{flex:1;min-width:0}
.answer-unit{flex:none;color:var(--muted);font-size:.9375rem;white-space:nowrap}
.subquestions{margin:1rem 0;padding-left:1.7em}
.subquestions li,.explanation-steps li{margin:.5rem 0;padding-left:.2em;line-height:1.8}
.explanation-steps{padding-left:1.6em;margin-top:0}
.explanation-steps li::marker{color:var(--green);font-weight:600}
.solution .count-question-layout h4{margin-top:0}
.model-link{margin-top:16px}
@media(max-width:720px){.count-question-layout{grid-template-columns:1fr;gap:14px}.drawing-space{min-height:220px}.count-figure{width:100%;max-width:340px;margin:auto}}
@media print{.count-question-layout{grid-template-columns:1fr 220px;gap:12px}.drawing-space{min-height:244px}.count-figure{break-inside:avoid}.count-diagram{max-width:220px}.model-link{display:none}}

.number-entry-help{font-size:.9375rem;color:var(--muted);line-height:1.8;margin:14px 0}
.prompt,.explanation-steps,.answer-summary{overflow-wrap:anywhere}
.math-token{white-space:nowrap;overflow-wrap:normal}
@media print{.number-entry-help{display:none}}

/* Match the chapter index and keep an area model legible on narrow screens. */
body{font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}
.practice-header h1,.count-diagram{font-family:inherit}

/* v116: consistent typography and distinct explanation step numbers. */
body{font-family:"Hiragino Sans","Yu Gothic","Meiryo",system-ui,sans-serif}
.practice-header h1,.count-diagram{font-family:inherit}
.review-note{padding:16px 20px;border-left:3px solid #366c61;background:#f0f6f3;border-radius:0 12px 12px 0;margin:20px 0;color:#304844;font-size:1rem;line-height:1.8}
.review-note p{margin:4px 0 0}.review-note strong{color:#366c61}
.explanation-steps{list-style-type:decimal;padding-left:1.8em;line-height:1.85}
.explanation-steps li{padding-left:.25em;margin-bottom:12px}
.explanation-steps li:nth-child(1)::marker{content:"①  "}.explanation-steps li:nth-child(2)::marker{content:"②  "}.explanation-steps li:nth-child(3)::marker{content:"③  "}.explanation-steps li:nth-child(4)::marker{content:"④  "}
.practice-nav a,.jump-links a,.actions button,.solution summary{min-height:44px}
.question{scroll-margin-top:18px}.field-hint{min-height:1.6em}
@media(max-width:420px){.math-token{white-space:normal;overflow-wrap:break-word}.review-note{padding:14px 16px}}
@media print{.review-note{display:none}}
