:root{--ink:#112824;--green:#0d483d;--dark:#102d27;--lime:#d5f370;--paper:#f7faf7;--mint:#e5f1e9;--line:#bed1c5;--muted:#3d5850;--amber:#8a5c10;--ochre:#f5e9cd}*{box-sizing:border-box}html{scroll-padding-top:1rem}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.6 Arial,sans-serif}h1,h2,h3{line-height:1.15;text-wrap:balance}h1{font-size:clamp(2.2rem,5vw,3.7rem);max-width:16ch;margin:.6rem 0 1.2rem}h2{font-size:clamp(1.6rem,3vw,2.15rem);margin:.5rem 0 1rem}h3{font-size:1.5rem;margin:.4rem 0 1rem}a{color:var(--green);text-underline-offset:.18em;overflow-wrap:anywhere}button,input,select,textarea{font:inherit}button,.button{display:inline-block;min-height:44px;border:0;border-radius:.35rem;background:var(--green);color:#fff;padding:.7rem 1rem;font-weight:700;cursor:pointer;text-decoration:none}button:disabled{background:#d9e1dc;color:#495b53;cursor:not-allowed}.secondary{background:transparent;color:var(--green);border:1px solid var(--green)}:focus-visible{outline:3px solid #b66c08;outline-offset:4px}.wrap{width:min(1120px,calc(100% - 2.5rem));margin-inline:auto}header{background:#fff;border-bottom:1px solid var(--line)}.bar{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1rem 0;flex-wrap:wrap}.brand{font-size:1.3rem;font-weight:800;text-decoration:none}.brand span{display:inline-block;font-size:.8rem;font-weight:400;margin-left:1rem}nav{display:flex;flex-wrap:wrap;gap:1.4rem}nav a{padding:.5rem 0}.hero{background:var(--dark);color:#fff;border-bottom:5px solid var(--lime)}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center;padding:3rem 0}.hero p{max-width:60ch}.eyebrow{font-size:.78rem;text-transform:uppercase;font-weight:700;letter-spacing:.07em}.hero .eyebrow{color:var(--lime)}.lime{background:var(--lime);color:var(--dark);margin:.5rem 0}.small,figcaption{font-size:.8rem}figure{margin:0}figure img{display:block;width:100%;max-height:370px;object-fit:cover;border-radius:.6rem}figcaption{padding-top:.5rem;color:#d8e4dc}.intro{max-width:78ch;padding:2.5rem 0}.progress-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}progress{accent-color:var(--green);height:.8rem;width:min(300px,60%)}.section-title{padding:1rem 0}.cases{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:1.2rem}.case{display:grid;min-width:0;max-width:100%;grid-template-columns:3.2rem minmax(0,1fr);gap:1.3rem;background:#fff;border:1px solid var(--line);padding:1.7rem;border-radius:.5rem}.number{font-size:1.6rem;color:var(--green);font-weight:700;border-top:4px solid var(--lime);padding-top:.3rem}.tag{margin:0;color:var(--muted);font-size:.85rem}.scroll{min-width:0;max-width:100%;overflow-x:auto;margin:1.4rem 0}table{border-collapse:collapse;width:100%;font-size:.95rem}caption{text-align:left;font-weight:700;margin-bottom:.5rem}th{text-align:left;background:var(--mint)}td,th{padding:.6rem .75rem;border-bottom:1px solid var(--line)}label{display:block;margin:.7rem 0}input:not([type=checkbox]),select,textarea{max-width:100%;width:100%;border:1px solid #7b9488;border-radius:.25rem;padding:.55rem;background:#fff;color:var(--ink)}input[type=number]{max-width:10rem;display:block}input[type=checkbox]{width:1.2rem;height:1.2rem;vertical-align:middle}.fields{display:flex;gap:1.5rem;flex-wrap:wrap}form{margin:1rem 0;padding:1.2rem;background:var(--paper);border:1px solid var(--line);border-radius:.4rem}details{margin:.65rem 0;border-top:1px solid var(--line);padding-top:.65rem}summary{font-weight:700;cursor:pointer;min-height:44px;padding:.45rem 0}.diagram{width:100%;display:block;margin:1rem 0}.feedback{white-space:pre-wrap}.feedback:empty{display:none}.feedback.good{border-left:4px solid var(--green);padding-left:.8rem}.feedback.again{border-left:4px solid var(--amber);padding-left:.8rem}.resource-panel,.help-panel,.save-panel,.terms{margin:2.5rem 0;padding:1.8rem;border-radius:.5rem}.resource-panel{background:var(--mint)}.resource-list{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 2rem;padding:0;list-style:none}.resource-list a{font-weight:700}.resource-list span{display:block;font-size:.88rem;color:var(--muted)}.help-panel{display:grid;grid-template-columns:1fr 1fr;gap:2rem;border:1px solid var(--line);background:#fff}.help-panel form{margin:0}.save-panel{border:1px solid var(--line)}.save-panel button{margin:.3rem .5rem .3rem 0}.terms{background:#fff}.term{background:transparent;color:var(--green);padding:0;min-height:0;border-radius:0;text-decoration:underline;font-weight:400}.versions{padding-left:1.4rem}.versions li{margin:.7rem 0}footer{padding:1.5rem 0;background:var(--dark);color:#fff;font-size:.85rem}.skip{position:absolute;top:0;left:1rem;transform:translateY(-140%);padding:.7rem;background:#fff;z-index:3}.skip:focus{transform:translateY(0)}@media(max-width:760px){.hero-grid,.help-panel{grid-template-columns:1fr;gap:1.2rem}.hero-grid{padding:2rem 0}.hero figure img{max-height:230px}.case{grid-template-columns:minmax(0,1fr);padding:1.2rem;gap:.6rem}.number{width:2.5rem}.resource-list{grid-template-columns:1fr}.resource-panel,.help-panel,.save-panel,.terms{padding:1.2rem}.fields{display:block}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{body{background:#fff}header,form,.save-panel,.hero figure,.skip{display:none}.hero{background:#fff;color:var(--ink);border-color:var(--green)}.hero .eyebrow{color:var(--green)}.hero-grid{display:block;padding:1rem 0}.case{break-inside:avoid}.wrap{width:100%}details{display:block}.resource-panel,.terms{background:#fff}footer{background:#fff;color:var(--ink)}}

/* R7: release intrinsic grid minima; keep table scrolling inside its bounded frame. */
.case>*{min-width:0}
.case :where(h3,p,label,summary,button,li){overflow-wrap:anywhere}
.case button{max-width:100%;white-space:normal}
