/* Case, analysis, proposal and work: one readable route in both languages. */
.problem-route .tool-intro{display:block;max-width:1000px;margin:0 auto;padding:30px 0 24px}
.problem-route .tool-intro .intro{max-width:48em}
.problem-route .tool-intro h1{font-size:clamp(49px,5vw,65px);margin-bottom:20px}
.problem-route .tool-intro .lead{font-size:clamp(27px,3vw,37px);line-height:1.22;max-width:25em;margin-bottom:18px}
.problem-route .tool-intro .intro-note{max-width:45em;font-size:var(--font);line-height:1.65}
.problem-route .hero-actions{margin-top:20px;gap:8px 26px}
.problem-route .hero-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--font);line-height:1.45}
.problem-route .text-route-nav{display:grid;grid-template-columns:repeat(4,max-content);gap:0 30px}
.problem-route .text-route-nav a{padding:4px 0}
.reported-cases,.learned-descriptions{max-width:1000px;margin:0 auto;padding:46px 0 40px;border-bottom:1px solid var(--line)}
.reported-cases h2,.learned-descriptions>h2{font-size:clamp(29px,3.2vw,38px);line-height:1.22;max-width:27em;margin:12px 0 26px}
.case-position{max-width:45em;margin:26px 0}
.case-position h3,.other-cases>h3{font-size:calc(var(--font) + 2px);font-weight:550;line-height:1.4;margin:0 0 10px}
.case-position>p,.case-detail>p,.case-context,.learned-descriptions>p{font-size:var(--font);line-height:1.65;max-width:45em;margin:0 0 16px}
.case-position .case-sources,.case-detail .case-sources{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:10px;font-size:calc(var(--font) - 2px);line-height:1.5}
.case-sources a{min-height:44px;padding:8px 0;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.other-cases{max-width:45em;margin:32px 0 24px;border-block:1px solid var(--line);padding:22px 0 0}
.case-detail{margin:0;background:none;border:0;border-top:1px solid var(--line);padding:0}
.case-detail summary{cursor:pointer;padding:18px 0;font-size:var(--font);line-height:1.5;font-weight:500}
.case-detail[open] summary{margin-bottom:5px}
.case-detail .case-sources{padding-bottom:18px}
.reported-cases .case-context{font-size:calc(var(--font) - 1px);color:var(--sub);margin-bottom:0}
.learned-descriptions>.eyebrow,.reported-cases>.eyebrow{font-size:12px;letter-spacing:.1em;line-height:1.5}
.learned-descriptions .proposal-status{font-size:calc(var(--font) - 1px);color:var(--sub)}
.learned-descriptions .global-bridge{max-width:none;margin:26px 0 0;padding:26px 0 0;border-bottom:0;border-top:1px solid var(--line)}
.problem-route .governance{margin:0 auto;padding-top:42px}
.problem-route .proposal-task-link{margin-left:0;margin-top:24px;min-height:44px;display:inline-flex;align-items:center}
.problem-route .workspace{margin-top:30px}
.problem-route .concrete-example{margin:26px 0 0;border:0;border-block:1px solid var(--line);background:none;padding:0}
.concrete-example>summary{cursor:pointer;min-height:44px;padding:19px 0;font-size:var(--font);line-height:1.5}
.concrete-example .gva-figure{margin-top:20px}
.problem-method-nav{display:flex;flex-wrap:wrap;gap:8px 25px;border-block:1px solid var(--line);padding:13px 0;margin:26px 0 32px}
.problem-method-nav a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5}
.problem-route-link{font-size:var(--font,18px);line-height:1.6;margin:20px 0}
.problem-route-link a,.text-mode-direct{min-height:44px;display:inline-flex;align-items:center;line-height:1.5}
.text-mode-direct{margin-top:15px;text-decoration:underline;text-underline-offset:5px;font-size:var(--font,18px)}
.problem-route :is(a,summary):focus-visible,.problem-method-nav a:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}
@media(max-width:620px){
 .problem-route .tool-intro{padding-top:22px;padding-bottom:20px}
 .problem-route .tool-intro h1{font-size:52px;margin-bottom:17px}
 .problem-route .tool-intro .lead{font-size:29px}
 .problem-route .text-route-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
 .problem-route .text-route-nav a{font-size:calc(var(--font) - 1px);min-height:44px}
 .reported-cases,.learned-descriptions{padding:30px 0}
 .reported-cases h2,.learned-descriptions>h2{font-size:29px;margin-bottom:24px}
 .case-position .case-sources,.case-detail .case-sources{font-size:calc(var(--font) - 1px)}
 .problem-route .hero-actions{display:block}
 .problem-route .hero-actions a{display:flex;margin:5px 0}
 .problem-method-nav{display:grid;grid-template-columns:1fr;gap:0}
 .problem-route .governance{padding-top:30px}
}
@media print{.problem-route .text-route-nav{position:static}.case-position{break-inside:avoid}.case-detail{display:block}}

.pva-figure{grid-column:1/-1;container-type:inline-size;container-name:learned-instructions;max-width:920px;margin:2em 0;color:var(--ink,#25251f);font-size:var(--font,18px);line-height:1.6}
.pva-figure *{box-sizing:border-box}
.pva-figure .pva-title{font-size:1.3em;line-height:1.35;font-weight:550;margin:0 0 .65em;max-width:34em}
.pva-figure .pva-intro{color:var(--sub,#66645c);margin:0 0 1.3em;max-width:45em}
.pva-figure .pva-stages{list-style:none;margin:0;padding:0}
.pva-figure .pva-stage{display:grid;grid-template-columns:minmax(200px,31%) minmax(0,1fr);align-items:center;gap:.95em 2em;margin:0;padding:1.4em 0;border-top:1px solid var(--line,#d1cdc2)}
.pva-figure .pva-stage h4{grid-column:1/-1;font-size:1.05em;line-height:1.45;font-weight:550;letter-spacing:0;margin:0}
.pva-figure .pva-number{color:var(--sub,#66645c);font-size:.9em;font-variant-numeric:tabular-nums;margin-right:.5em}
.pva-figure .pva-copy{min-width:0;overflow-wrap:break-word}
.pva-figure p{margin:0;max-width:45em}
.pva-figure .pva-object{position:relative;justify-self:center;min-width:0;width:100%;max-width:310px;padding:1.5em 1.4em 1.8em}
.pva-figure .pva-object>svg{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}
.pva-figure svg path{vector-effect:non-scaling-stroke}
.pva-figure .pva-quote{position:relative;z-index:1;margin:0;padding:0;border:0;background:none;font:inherit;line-height:1.55;text-align:center;overflow-wrap:break-word}
.pva-figure .pva-quote::before,.pva-figure .pva-quote::after{content:none}
.pva-figure .pva-learning{padding:0;min-height:0}
.pva-figure .pva-learning>svg{position:static;height:auto;max-height:145px;width:100%}
.pva-figure .pva-learning .pva-quote{margin-top:.3em}
.pva-figure .pva-condition{padding-top:3.2em;min-height:10em}
.pva-figure .pva-reply{padding-bottom:2.4em;min-height:10.5em}
.pva-figure .pva-decision{padding-top:1.8em;min-height:8.5em}
.pva-figure .pva-proposal{padding:1.4em 0;border-block:1px solid var(--line,#d1cdc2);margin-top:.25em}
.pva-figure .pva-proposal h4{font-size:1.1em;line-height:1.4;font-weight:550;letter-spacing:0;margin:0 0 .7em}
.pva-figure .pva-proposal p+p{margin-top:.7em}
.pva-figure figcaption{margin-top:1em;color:var(--sub,#66645c);font-size:1em;line-height:1.65;max-width:52em}
@media(max-width:720px){
 .pva-figure .pva-stage{grid-template-columns:1fr;gap:1em;padding:1.3em 0}
 .pva-figure .pva-object{max-width:280px}
 .pva-figure .pva-copy{width:100%}
}
@container learned-instructions (max-width:720px){
 .pva-figure .pva-stage{grid-template-columns:1fr;gap:1em;padding:1.3em 0}
 .pva-figure .pva-object{max-width:280px}
 .pva-figure .pva-copy{width:100%}
}
