/* Diagrams are HTML/SVG, with readable text, local table scrolling, and no decorative clutter. */
.enriched-lesson{--diagram-ink:#24443d;--diagram-green:#176c61;--diagram-bg:#f2f7f4;overflow-wrap:anywhere}
.enriched-lesson .lesson-goal{border-left:4px solid #378477;background:#edf5ef;border-radius:0 12px 12px 0;padding:16px 20px;margin:24px 0}
.lesson-goal>span{font-size:.875rem;font-weight:750;color:#386759}.lesson-goal p{margin:7px 0 0;font-size:1.0625rem;line-height:1.9}
.lesson-section-nav{padding:22px 24px;border:1px solid #d5e2db;border-radius:16px;margin:30px 0;background:#fff}.lesson-section-nav>span{font-weight:750}.lesson-section-nav ol{padding-left:24px;margin:12px 0 0;columns:2;column-gap:28px}.lesson-section-nav li{break-inside:avoid;padding:3px 0;color:#597568}.lesson-section-nav button{border:0;background:none;text-align:left;color:#276b5d;font:inherit;line-height:1.8;padding:4px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.enriched-lesson .lesson-body>section{padding:18px 0 28px;margin:0;border-bottom:1px solid #e3e9e3}.enriched-lesson .lesson-body>section:last-child{border:0}.lesson-body>section,.worked-case,.lesson-public,#lesson-public-panel{scroll-margin-top:100px}.enriched-lesson .lesson-body>section>p{margin-bottom:22px}.enriched-lesson .lesson-body h2{line-height:1.6}
.learning-visual,.enriched-lesson .concept-figure{margin:20px 0 8px;padding:24px;background:var(--diagram-bg);border:1px solid #d7e4dc;border-radius:18px;color:var(--diagram-ink)}
.learning-visual figcaption,.enriched-lesson .concept-figure figcaption{font-size:1.0625rem;font-weight:750;line-height:1.7;margin-bottom:20px;color:var(--diagram-ink)}
.learning-visual p,.learning-visual li,.enriched-lesson .concept-figure p{font-size:1rem;line-height:1.85}.learning-visual .visual-note,.enriched-lesson .concept-figure>p{font-size:.9375rem;margin:18px 0 0;color:#435e54}.visual-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.visual-cards>div{background:#fff;border:1px solid #dce5df;border-radius:12px;padding:17px}.visual-cards strong{font-size:1.0625rem;color:#1b6558}.visual-cards p{margin:7px 0 0}
.visual-flow{list-style:none;padding:0;margin:0;display:grid;gap:22px}.visual-flow li{position:relative;display:flex;gap:14px;align-items:start;background:#fff;border-radius:12px;padding:16px;border:1px solid #dce5df}.visual-flow li+li:before{content:'↓';position:absolute;top:-27px;left:27px;color:#458577;font-weight:750}.flow-index{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e0eee6;font-weight:750;color:#23675a}.visual-flow p{margin:5px 0 0}.visual-flow strong{font-size:1.0625rem}
.visual-table-scroll{overflow-x:auto;border:1px solid #ccdcd2;border-radius:10px;background:white}.visual-table{width:100%;border-collapse:collapse;min-width:370px;font-size:.9375rem;line-height:1.75}.visual-table th,.visual-table td{padding:13px 15px;text-align:left;vertical-align:top;border-bottom:1px solid #dce5df}.visual-table thead th{background:#e3eee6;color:#214f42;white-space:normal}.visual-table tbody th{font-weight:650;min-width:90px}.visual-table tr:last-child>*{border-bottom:0}.visual-table tbody tr:nth-child(even){background:#f7faf7}
.formula-visual ol{padding:0;list-style:none;margin:0;display:grid;gap:10px}.formula-visual li{display:grid;gap:5px;background:white;border-radius:10px;padding:13px 17px}.formula-visual li>span{font-size:.9375rem;color:#50675b}.formula-visual strong{font-size:1.125rem;line-height:1.65;color:#195f4c;font-variant-numeric:tabular-nums}
.loop-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:30px;grid-template-areas:'one two' 'four three'}.loop-node{position:relative;border:1px solid #bad3c4;border-radius:14px;padding:18px;background:#fff}.loop-0{grid-area:one}.loop-1{grid-area:two}.loop-2{grid-area:three}.loop-3{grid-area:four}.loop-name{display:flex;gap:12px;align-items:center}.loop-name>b{display:grid;place-items:center;flex:none;width:42px;height:42px;background:#dceee1;color:#226350;border-radius:12px;font-size:1.4rem}.loop-name span{display:grid;gap:1px}.loop-name strong{font-size:1.125rem}.loop-name small{font-size:.875rem;color:#4f675b}.loop-node p{margin:12px 0 0}.loop-arrow{position:absolute;font-size:1.5rem;color:#34725e;font-weight:750}.loop-0 .loop-arrow{right:-26px;top:38%}.loop-1 .loop-arrow{bottom:-31px;left:47%}.loop-2 .loop-arrow{left:-27px;top:38%}.loop-3 .loop-arrow{top:-32px;left:47%}.loop-return{text-align:center;font-weight:650;color:#25624f}.loop-node:before{display:block;font-size:.875rem;color:#65796d;margin-bottom:7px}.loop-0:before{content:'①'}.loop-1:before{content:'②'}.loop-2:before{content:'③'}.loop-3:before{content:'④'}
.pert-flow{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.pert-start,.pert-end{grid-column:1/-1;text-align:center;border:2px solid #428774;background:white;padding:14px;border-radius:12px}.pert-start span,.pert-end span{display:block;margin-top:3px;font-size:.9375rem}.pert-route{display:grid;text-align:center;gap:8px;padding:12px}.pert-route>span{font-size:1.6rem;color:#567266}.pert-route strong{padding:14px 8px;background:white;border:1px solid #b9ccc0;border-radius:12px}.pert-route.critical strong{border:2px solid #428774;background:#e5f1e8}.pert-route small{font-size:.875rem}.formula-total{font-size:1.25rem!important;text-align:center;font-weight:650}.formula-total b{color:#13634e}
.chart-key{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;font-size:.875rem;line-height:1.7;margin-bottom:14px}.chart-key span:first-child{color:#176c61}.chart-key span:last-child{color:#91540f}.pareto-plot{position:relative;padding:0 38px 42px 36px;margin-top:28px}.pareto-grid{height:210px;position:relative;display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #789184;border-bottom:1px solid #789184;background:repeating-linear-gradient(to top,transparent 0,transparent calc(50% - 1px),#d9e5de calc(50% - 1px),#d9e5de 50%)}.pareto-column{position:relative;display:flex;flex-direction:column;justify-content:end;align-items:center;min-width:0}.pareto-column>span{width:58%;display:block;background:#5c9e8c;border-radius:5px 5px 0 0}.pareto-column>b{position:absolute;bottom:-25px;font-size:.875rem}.pareto-column>small{position:absolute;bottom:-46px;font-size:.875rem;white-space:nowrap}.pareto-grid svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.pareto-grid svg polyline{fill:none;stroke:#a1641f;stroke-width:2;vector-effect:non-scaling-stroke}.pareto-grid svg circle{fill:#a1641f}.plot-yaxis,.plot-yaxis-right{position:absolute;top:0;height:210px;display:flex;flex-direction:column;justify-content:space-between;font-size:.75rem;color:#50695b}.plot-yaxis{left:0}.plot-yaxis-right{right:0}.chart-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.chart-pair>div{min-width:0;background:#fff;padding:16px;border-radius:12px}.chart-pair h3{font-size:1rem;margin:0 0 16px}.histogram{height:160px;display:flex;align-items:end;gap:1px;border-left:1px solid #789184;border-bottom:1px solid #789184;margin-bottom:40px}.histogram>div{position:relative;flex:1;background:#6ca793;display:flex;justify-content:center;align-items:start}.histogram b{font-size:.875rem;padding-top:4px}.histogram small{position:absolute;top:100%;padding-top:7px;font-size:.75rem;white-space:nowrap}.scatter-mini{position:relative;height:160px;border-left:1px solid #789184;border-bottom:1px solid #789184;margin-bottom:40px}.scatter-mini i{position:absolute;width:9px;height:9px;background:#478a77;border-radius:50%}.scatter-mini:after{content:'右上がりの関係の例';position:absolute;top:100%;padding-top:8px;left:0;font-size:.875rem}.cause-fork{display:grid;grid-template-columns:1fr 1fr;gap:28px 16px;text-align:center}.cause-fork>strong{grid-column:1/-1;padding:14px;border-radius:12px;background:#e2eee5}.cause-fork>span{position:relative;padding:14px;border-radius:12px;background:#fff;border:1px solid #c7d9cc}.cause-fork>span:before{content:'↓';position:absolute;top:-28px;left:48%;font-weight:750;color:#407663}
.break-even-chart{background:white;border-radius:12px;padding:18px;margin-top:20px}.break-even-axis{font-size:.875rem;margin-bottom:8px;color:#506758}.break-even-plot{height:220px;border-left:1px solid #789184;border-bottom:1px solid #789184;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#e4ebe5 calc(25% - 1px),#e4ebe5 25%)}.break-even-plot svg{width:100%;height:100%;overflow:visible}.break-even-plot path{fill:none;stroke-width:3;vector-effect:non-scaling-stroke}.revenue-line{stroke:#176c61}.cost-line{stroke:#a56828;stroke-dasharray:7 5}.break-even-plot circle{fill:#193d30}.break-even-xaxis{display:flex;justify-content:space-between;font-size:.875rem;margin-top:8px}.predict-note{padding:12px 15px;background:#fff4d9;border-radius:10px;color:#604d20!important;margin:0 0 20px!important}.calculator-fields input{font-size:1rem!important;min-height:44px}.calc-result span{overflow-wrap:anywhere}
.worked-case{border:1px solid #e1d3b8;background:#fffbf0;border-radius:18px;padding:26px;margin:30px 0}.worked-case>.eyebrow{font-size:.8125rem;color:#6e612d;line-height:1.8}.worked-case h2{font-size:1.375rem;margin:12px 0 22px;line-height:1.65}.worked-case>ol{list-style:none;padding:0;margin:0;display:grid;gap:18px}.worked-case li>strong{font-size:.875rem;color:#736236}.worked-case li>p{margin:5px 0 0;font-size:1rem;line-height:1.95}.self-explain{margin-top:23px;padding-top:20px;border-top:1px dashed #d3c7a9}.self-explain summary{cursor:pointer;color:#6d5824;font-weight:650;line-height:1.8}.self-explain p{font-size:1rem;line-height:1.9}
.lesson-public{margin:35px 0;border:1px solid #c8dbd0;border-radius:18px;padding:26px;background:#fff}.lesson-public>.eyebrow{color:#41745b;font-size:.875rem}.lesson-public>h2{font-size:1.4rem;margin:10px 0}.lesson-public>p{font-size:1rem;line-height:1.9}.inline-public-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:22px;border-top:1px solid #e3e9e3;font-size:.9375rem}.public-relevance{font-size:.9375rem;line-height:1.85;padding:13px 16px;background:#f3f6f3;border-radius:10px;margin:17px 0 22px;color:#475f52}.inline-fieldset{min-width:0;border:0;margin:0;padding:0}.inline-fieldset legend{display:block;width:100%;font-size:1.0625rem;font-weight:650;line-height:2;margin-bottom:22px;white-space:pre-line}.lesson-public .answer-options{margin-top:20px}.lesson-public input[type=radio]{min-width:18px;min-height:18px;margin-top:7px}.inline-public-footer,.public-review-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:22px}.inline-public-footer .button{min-height:44px}.inline-feedback{margin-top:20px;padding:20px}.inline-feedback h3{font-size:1.2rem;margin:0 0 12px;line-height:1.8}.inline-feedback p{font-size:1rem;line-height:1.9}.inline-feedback .reasons{margin-top:20px}.inline-feedback .reasons p{gap:12px}.public-review-actions button{font:inherit;border:0;background:none;padding:7px 0;cursor:pointer;text-align:left;font-size:.9375rem}.public-question-image{margin:18px 0;background:white}.public-question-image img{display:block;max-width:100%;height:auto;margin:auto}.public-question-image figcaption{font-size:.875rem;line-height:1.8;color:#526457;margin-top:10px}.lesson-public .quiz-origin,.lesson-public .source-note{font-size:.875rem;line-height:1.8}.lesson-public .table-scroll{max-width:100%}.lesson-public .data-table{font-size:.9375rem}.enriched-lesson .more-terms{margin-top:26px}.enriched-lesson .source-note{font-size:.875rem;line-height:1.9}.enriched-lesson .button:disabled{cursor:default;opacity:.48}
@media(max-width:800px){.learning-visual,.enriched-lesson .concept-figure{padding:20px}.enriched-lesson .org-comparison{grid-template-columns:1fr}.chart-pair{grid-template-columns:1fr}.lesson-section-nav ol{columns:1}}
@media(max-width:600px){.enriched-lesson .lesson-goal{padding:14px 16px}.enriched-lesson .conversation .conversation-row{grid-template-columns:1fr!important}.enriched-lesson .conversation .speaker{display:flex;align-items:center;justify-content:flex-start;gap:8px}.enriched-lesson .conversation .speaker .character{width:66px;height:70px}.enriched-lesson .conversation .bubble{max-width:none;width:100%;padding:17px}.learning-visual,.enriched-lesson .concept-figure{padding:17px 14px;border-radius:13px}.learning-visual figcaption{font-size:1rem}.visual-cards{grid-template-columns:1fr}.visual-cards>div{padding:14px}.loop-steps{gap:26px 22px}.loop-node{padding:12px}.loop-name{display:grid;gap:8px}.loop-name>b{width:34px;height:34px;font-size:1.2rem}.loop-name strong{font-size:1rem}.loop-name small{font-size:.8125rem}.loop-node p{font-size:.9375rem;line-height:1.85}.loop-0 .loop-arrow{right:-22px}.loop-2 .loop-arrow{left:-22px}.loop-arrow{font-size:1.25rem}.worked-case,.lesson-public{padding:20px 16px}.lesson-public .quiz-actions{flex-direction:column;align-items:stretch;gap:15px}.lesson-public .quiz-actions>.button{width:100%}.inline-feedback{padding:16px 12px}.enriched-lesson .article-toolbar{gap:14px;flex-wrap:wrap}.enriched-lesson .segmented button{font-size:.875rem;padding:10px 11px}.enriched-lesson .concept-cards{grid-template-columns:1fr}.enriched-lesson .number-line{gap:7px}.enriched-lesson .number-line>span{min-width:0;flex:1;font-size:1.15rem}.enriched-lesson .number-line small{font-size:.75rem}.enriched-lesson .inline-check>div{align-items:center}.enriched-lesson .inline-check h2{font-size:1.2rem}.enriched-lesson .lesson-pager{gap:10px}.enriched-lesson .lesson-pager a{padding:14px 10px;font-size:.9375rem}.enriched-lesson .article-bottom{flex-wrap:wrap;gap:15px}.visual-table-scroll:after{content:'表が収まらないときは横にスクロール';display:block;font-size:.8125rem;padding:9px 12px;color:#5b7162;background:#f4f7f2}.pert-flow{gap:0 7px}.pert-route{padding:9px 3px}.break-even-chart{padding:15px 12px}.break-even-plot{height:180px}}
.plot-yaxis.right{left:auto;right:0}.cumulative-values{display:flex;gap:8px 15px;flex-wrap:wrap;margin-top:17px;font-size:.875rem;color:#765120}.mini-chart-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.mini-chart-pair>section{min-width:0;background:white;padding:17px;border-radius:12px}.mini-chart-pair h3{font-size:1rem;line-height:1.7;margin:0 0 25px}.mini-chart-pair p{font-size:.9375rem}.hist-bars{height:160px;display:flex;align-items:end;gap:1px;border-left:1px solid #789184;border-bottom:1px solid #789184;margin:0 0 40px}.hist-bars>div{position:relative;flex:1;height:var(--h);background:#6ca793;display:flex;justify-content:center;align-items:start}.hist-bars b{font-size:.875rem;padding-top:4px}.hist-bars span{position:absolute;top:100%;padding-top:7px;font-size:.8125rem;white-space:nowrap}.scatter-chart{position:relative;height:160px;border-left:1px solid #789184;border-bottom:1px solid #789184;margin:0 0 40px}.scatter-chart i{position:absolute;width:9px;height:9px;background:#478a77;border-radius:50%}.scatter-y{position:absolute;top:-23px;left:0;font-size:.8125rem}.scatter-x{position:absolute;top:100%;right:0;padding-top:8px;font-size:.8125rem}.cause-fork>div{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:16px}.cause-fork section{display:grid;gap:12px}.cause-fork section>span{font-size:1.5rem;color:#407663}.cause-fork section>b{padding:14px;border-radius:12px;background:#fff;border:1px solid #c7d9cc;font-size:1rem}.cause-fork{row-gap:5px}.enriched-lesson .source-note{font-size:.875rem!important}.enriched-lesson .concept-cards span{font-size:.9375rem}.enriched-lesson .profit-stairs>p{font-size:.9375rem!important}.enriched-lesson .org-leaves small{font-size:.875rem}.enriched-lesson .calc-result span{font-size:.9375rem}.enriched-lesson .speaker>span:last-child{font-size:.875rem}
@media(max-width:800px){.mini-chart-pair{grid-template-columns:1fr}}
@media(max-width:600px){.enriched-lesson .conversation-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important}.enriched-lesson .conversation .speaker{width:auto;justify-content:flex-start}.enriched-lesson .conversation-row .bubble{margin:0;box-sizing:border-box}.enriched-lesson .calculator-fields label{flex-direction:column;align-items:stretch;font-size:.9375rem}.enriched-lesson .calculator-fields input{width:100%}}
@media(max-width:380px){.loop-steps{display:flex;flex-direction:column;gap:25px}.loop-name{display:flex}.loop-node .loop-arrow{inset:auto auto -28px 48%;font-size:0}.loop-node .loop-arrow:after{content:'↓';font-size:1.3rem}.loop-node:last-child .loop-arrow:after{content:'↶'}.enriched-lesson .article-toolbar .segmented{width:100%}.enriched-lesson .article-toolbar .segmented button{flex:1}}

#lesson-body-start{scroll-margin-top:100px}.question-image-text{font-size:.9375rem;line-height:1.9;margin:18px 0}.question-image-text summary{cursor:pointer;color:#34664e}.question-image-text p{margin:12px 0}

/* Introduce the purpose and a real plotted example before applying it in dialogue. */
.graph-basics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:22px 0}.graph-basics-card{min-width:0;padding:18px 14px;background:#fff;border:1px solid #d6e3db;border-radius:12px}.graph-basics-card h3{font-size:1.125rem;line-height:1.7;margin:0 0 8px}.graph-basics-card p{font-size:1rem!important;line-height:1.9;margin:8px 0}.graph-basics-plot{display:block;width:100%;height:auto;margin:18px 0 10px;overflow:visible}.graph-basics-plot text{font-family:inherit;font-size:18px;fill:#29483a}.graph-basics-plot .graph-unit{font-size:18px}.graph-basics-plot rect,.graph-basics-plot circle{fill:#337d6d}.graph-basics-plot .graph-axis{stroke:#5c7768;stroke-width:1.5;fill:none}.graph-basics-plot .graph-gridline{stroke:#d9e5de;stroke-width:1;fill:none}.graph-basics-plot .graph-line{stroke:#337d6d;stroke-width:3;fill:none}.graph-basics-plot .histogram-bin{stroke:#fff;stroke-width:1}.graph-reading{border-top:1px solid #e1e9e4;padding-top:12px}.conversation-intro{font-size:1.3rem;line-height:1.7;margin:34px 0 12px}.lesson-primer{margin-top:24px}@media(max-width:800px){.graph-basics-grid{grid-template-columns:minmax(0,1fr);gap:18px}.graph-basics-card{padding:16px 12px}}
