/* DIAG-FIT-1: compact semantic diagrams, no fixed card heights. */
.diagram-fit{font-size:1rem;line-height:1.6;color:#193f48;max-width:100%;padding:.7rem;background:#f7faf9;border:1px solid #d2e0de;border-radius:.6rem}
.diagram-fit *{box-sizing:border-box}.diagram-fit .fit-title{font-size:1rem;font-weight:700;margin:0 0 .7rem}
.diagram-fit .fit-cards{list-style:none!important;padding:0!important;margin:0!important;display:grid;grid-template-columns:1fr;gap:.8rem;align-items:stretch;counter-reset:none}
.diagram-fit .fit-card{font-size:1rem!important;line-height:1.6!important;margin:0!important;padding:.65rem!important;min-width:0;border:1px solid #8aa8a8;border-radius:.4rem;background:white;position:relative;overflow-wrap:break-word;word-break:keep-all}
.diagram-fit .fit-label,.diagram-fit .fit-context,.diagram-fit .fit-action{display:block;font-size:1rem!important;line-height:1.6!important}
.diagram-fit .fit-context{margin-top:.25rem;color:#315b64}.diagram-fit .fit-action{margin-top:.35rem}.diagram-fit .fit-number{font-size:1rem;background:#205d68;color:white;border-radius:50%;padding:.05rem .36rem;white-space:nowrap}
.diagram-fit[data-fit-kind="flow"] .fit-cards{gap:1.4rem}.diagram-fit[data-fit-kind="flow"] .fit-card:not(:last-child):after{content:'↓';position:absolute;bottom:-1.5rem;left:50%;font-size:1rem;color:#205d68}
.diagram-fit .fit-decision{margin-top:.9rem;border-top:1px solid #a8bfbe;padding-top:.65rem;font-size:1rem}.diagram-fit .fit-branches{display:grid;align-items:start;gap:.5rem;margin-top:.5rem}.diagram-fit .fit-branches>div{padding:.5rem;border-left:3px solid #6c9190;background:white;font-size:1rem}
.diagram-fit .fit-note{font-size:1rem!important;margin:.7rem 0 0!important}.diagram-fit .fit-final{margin-top:.7rem!important}
@media(min-width:768px){.diagram-fit[data-fit-kind="comparison"] .fit-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.diagram-fit .fit-branches{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.diagram-fit[data-fit-kind="flow"] .fit-cards{display:flex;gap:1rem;align-items:stretch}.diagram-fit[data-fit-kind="flow"] .fit-card{flex:1}.diagram-fit[data-fit-kind="flow"] .fit-card:not(:last-child):after{content:'→';left:auto;right:-.95rem;top:.65rem;bottom:auto}.diagram-fit .fit-final .fit-card,.diagram-fit .fit-conditional .fit-card{flex:0 1 100%}}

/* Five-or-more steps: wrapped reading order, unchanged mobile cards. */
@media(min-width:768px){
.diagram-fit[data-fit-kind="flow"] > .fit-cards:has(>li:nth-child(5)){display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:1rem}
.diagram-fit[data-fit-kind="flow"] > .fit-cards:has(>li:nth-child(5)) > .fit-card:after{display:none}
}
