/* Functional diagrams: no decorative people, no fixed text heights, always one column. */
.pattern-nav{max-width:42rem;margin:0 auto;background:white;color:#252525;padding:1rem 1.25rem;border-bottom:1px solid #ddd;font:1rem/1.7 Meiryo,sans-serif;box-sizing:border-box}
.pattern-nav p{font-weight:700;margin:0 0 .4rem}.pattern-nav summary{cursor:pointer;color:#943909;text-decoration:underline}
.pattern-nav a{display:block;padding:.55rem 0;color:#943909}.pattern-nav [aria-current]{font-weight:700}
#main-content .outcome-diagram{display:block;background:#fff;margin:1.5rem 0 2rem;padding:1.25rem;border:1px solid #ddd;border-radius:.75rem;color:#252525;text-align:left}
#main-content .outcome-diagram p,#main-content .outcome-diagram li,#main-content .outcome-diagram dt,#main-content .outcome-diagram dd{font-size:1.0625rem;line-height:1.75;letter-spacing:normal}
#main-content .outcome-diagram .diagram-goal{display:block;font-size:clamp(1.25rem,5.5vw,1.55rem);line-height:1.6;margin:0 0 1.4rem;padding:0 0 1.2rem;border-bottom:2px solid #ca4b00}
#main-content .diagram-goal strong{font-size:inherit;line-height:inherit;color:#252525}
#main-content .goal-mark{display:block;color:#ca4b00;font-size:2rem;line-height:1.1;margin:0 0 .5rem}
#main-content .diagram-label{font-size:.9375rem;font-weight:700;display:block;margin:0 0 .35rem;color:#555}
#main-content .diagram-before{padding:1rem;background:#f3f3f3;border:1px dashed #999;border-radius:.5rem}
#main-content .diagram-before p,#main-content .diagram-after p{margin:0}
#main-content .diagram-arrow{text-align:center;font-size:1.8rem;line-height:1.25;color:#ca4b00;margin:.5rem 0}
#main-content .diagram-action{margin:0;text-align:center;font-weight:700}
#main-content .diagram-after{padding:1rem;border:2px solid #ca4b00;border-radius:.5rem;background:#fff8f2;font-weight:700}
#main-content .diagram-after .diagram-label{color:#943909}
#main-content .diagram-checks{display:block;list-style:none;padding:0;margin:0}
#main-content .diagram-checks li{display:block;margin:0;padding:1.1rem 0;border-bottom:1px solid #ddd}
#main-content .decision-mark{display:block;width:fit-content;font-size:2rem;font-weight:700;color:#943909;line-height:1.1;margin:0 0 .6rem}
#main-content .diagram-checks strong{display:block;font-size:1.125rem}
#main-content .diagram-checks p{margin:.4rem 0 0}
#main-content .outcome-diagram .diagram-caption{font-size:.9375rem;color:#555;line-height:1.7;margin:1rem 0 0}
#main-content .diagram--3{border-top:.4rem solid #ca4b00;border-radius:0}
#main-content .diagram--3 .diagram-goal{border:0;padding-bottom:0}
#main-content .diagram--4{background:#f4f4f4;border:0}
#main-content .diagram-sheet{background:#fff;border:1px solid #aaa;border-top:.45rem solid #ca4b00;padding:1rem 1.1rem;box-shadow:0 .2rem 0 #ddd}
#main-content .diagram-sheet .sheet-title{font-size:1.25rem;line-height:1.6;font-weight:700;margin:0 0 1rem}
#main-content .diagram-sheet dl{display:block;margin:0}
#main-content .diagram-sheet dt{display:block;font-size:.9375rem;color:#555;margin:1rem 0 .25rem}
#main-content .diagram-sheet dd{display:block;margin:0;padding:0 0 .7rem;border-bottom:1px solid #ddd;font-weight:700}
#main-content .diagram--5{background:#fff;border:0;padding:0}
#main-content .diagram-steps{list-style:none;display:block;margin:0;padding:0}
#main-content .diagram-steps li{display:block;text-align:center;border:1px solid #bcbcbc;border-radius:.65rem;margin:0 0 2.25rem;padding:1rem;position:relative}
#main-content .diagram-steps li:not(:last-child)::after{content:"↓";position:absolute;left:0;right:0;bottom:-2.15rem;font-size:1.5rem;color:#ca4b00}
#main-content .step-dot{display:block;border:2px solid #ca4b00;border-radius:50%;width:2rem;height:2rem;margin:0 auto .55rem;color:#943909;font-size:1rem;line-height:1.8rem;font-weight:700}
#main-content .diagram-steps strong{display:block;font-size:1.125rem;line-height:1.7}
#main-content .diagram-steps li:last-child{border:2px solid #ca4b00;background:#fff8f2;margin-bottom:0}

