
.case-body{margin:0;background:#f5f5f0;color:#172d3d}
.case-shell{display:grid;grid-template-columns:minmax(245px,310px) minmax(0,1fr);gap:24px;max-width:1500px;margin:0 auto;padding:24px 20px;min-height:75vh}
.case-side{border:1px solid #d2dce0;background:white;border-radius:11px;padding:21px;height:max-content;position:sticky;top:15px}
.case-side h2{margin:0 0 8px;font-size:1.22rem}.case-side p{margin:0 0 14px;line-height:1.45}
.case-side label{display:block;font-weight:700;margin:12px 0 5px}.case-side input,.case-side select{width:100%;border:1px solid #bacad2;padding:11px;background:white;border-radius:6px;color:#14314a}
.case-side-actions{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}.case-side button,.case-actions button,.case-feedback button{border:1px solid #9db7c4;border-radius:7px;padding:10px 13px;background:white;color:#0c344e;cursor:pointer;font-weight:650}
.case-side button:hover,.case-actions button:hover,.case-feedback button:hover{background:#edf6fa}
.case-progress{border-top:1px solid #dce4e7;margin-top:22px;padding-top:10px}.case-progress h3{font-size:1rem}
.case-main{min-width:0;max-width:970px}.case-heading h1{font-size:2.2rem;margin:.1em 0}.case-heading p{max-width:780px;line-height:1.55}
.case-toolbar{display:flex;justify-content:space-between;gap:10px;margin:25px 0 12px;font-size:.9rem;font-weight:700;color:#38546a}
.case-card{background:white;border:1px solid #cbd8de;border-radius:12px;padding:clamp(20px,4vw,42px);box-shadow:0 7px 24px #1833440b;min-height:300px}
.case-card h2{font-size:1.48rem;margin:.1em 0 20px}.case-card h3{margin:26px 0 8px;font-size:1.04rem}.case-card p{line-height:1.72;font-size:1.05rem}
.case-stem{padding:18px 21px;background:#eef5f8;border-left:4px solid #3c7698;border-radius:4px}.case-task{color:#3d586d;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em}
.case-answer{padding:18px;border-radius:8px;border:1px solid #b2cfc8;background:#f2faf6;margin:18px 0}.case-answer p{margin:.55em 0}.case-answer[hidden]{display:none!important}
.case-actions,.case-feedback{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:18px 0}.case-actions button{padding:11px 18px}.case-actions .case-primary{background:#164966;color:#fff}.case-actions .case-primary:hover{background:#0a3249}
.case-feedback[hidden]{display:none!important}.case-help{font-size:.92rem;line-height:1.55;color:#536474;max-width:840px}
.case-small{font-size:.88rem}.kicker{letter-spacing:.07em;text-transform:uppercase;font-size:.77rem;font-weight:750;color:#457b9d}
@media(max-width:820px){.case-shell{grid-template-columns:1fr;gap:12px;padding:12px}.case-side{position:static}.case-main{width:100%}.case-heading h1{font-size:1.6rem}.case-actions{justify-content:space-between}}
