:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17212b;background:#eef2f5;line-height:1.55;font-size:16px}*{box-sizing:border-box}body{margin:0;min-width:320px}.skip-link{position:absolute;left:.75rem;top:-6rem;background:#fff;color:#111;padding:.65rem 1rem;z-index:100;border:2px solid #111}.skip-link:focus{top:.75rem}.masthead{display:flex;justify-content:space-between;gap:2rem;align-items:center;padding:1rem clamp(1rem,4vw,4rem);background:#101820;color:#fff;border-bottom:4px solid #cfd8df}.masthead strong{display:block;font-size:1.25rem}.eyebrow{display:block;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#dbe5ea}.save-state{max-width:32rem;font-size:.9rem}.banner{padding:.7rem clamp(1rem,4vw,4rem);border-bottom:1px solid #62717e;background:#fff}.banner.warning{border-left:7px solid #7e4b00}.banner.notice{border-left:7px solid #1c5a75}.banner.update{border-left:7px solid #4c5f19}.inline-button{font:inherit;text-decoration:underline;background:transparent;border:0;padding:.2rem .35rem;min-height:44px;cursor:pointer}.shell{max-width:1320px;margin:0 auto;padding:2rem clamp(1rem,4vw,3rem) 4rem}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:2rem;align-items:start}.main-column{min-width:0}.support-rail{display:grid;gap:1rem;position:sticky;top:1rem}.card,.rail-card,.choice-card,.result-card{background:#fff;border:1px solid #c2ccd3;border-radius:10px;padding:1rem 1.15rem;box-shadow:0 2px 8px rgba(16,24,32,.05)}h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.06;margin:.35rem 0 1.2rem;max-width:24ch}h2{font-size:1.3rem;margin:1.4rem 0 .65rem}h3{font-size:1rem}.lead{font-size:1.12rem;max-width:72ch}.kicker{font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#43515d}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.case-list{display:grid;gap:.8rem}.case-row{display:flex;gap:1rem;align-items:center;justify-content:space-between;background:#fff;border:1px solid #c2ccd3;border-radius:9px;padding:.9rem}.case-meta{font-size:.9rem;color:#475661}.choice-card{display:block;border:2px solid #bcc8d0;margin:.75rem 0;cursor:pointer}.choice-card.selected{border:3px solid #203d51;padding:calc(1rem - 1px)}.choice-card input{margin-right:.7rem}.primary,.secondary,.danger{font:inherit;font-weight:700;border-radius:7px;padding:.72rem 1rem;min-height:44px;cursor:pointer}.primary{background:#183b52;color:#fff;border:2px solid #183b52}.secondary{background:#fff;color:#152633;border:2px solid #52616c}.danger{background:#6c1a1a;color:#fff;border:2px solid #6c1a1a}.primary:disabled{opacity:.55;cursor:not-allowed}.button-row{display:flex;gap:.7rem;flex-wrap:wrap}.scene p{max-width:78ch}.dialogue{border-left:4px solid #617180;padding:.55rem .9rem;background:#f8fafb;margin:.6rem 0}.disclosure{border-top:1px solid #d2d9de;padding:.45rem 0}.disclosure summary{font-weight:700;cursor:pointer;min-height:44px;padding:.5rem 0}.evidence-body{padding:.5rem 0}.result-card{max-width:900px}.result-card h1:focus,h1:focus{outline:3px solid #1b76a5;outline-offset:4px}.status-pill{display:inline-block;border:1px solid #617180;border-radius:999px;padding:.15rem .6rem;font-size:.82rem}.error-box{border:3px solid #8c2020;background:#fff;padding:1rem}.notice{border-left:4px solid #1c5a75;padding:.6rem .9rem;background:#fff}.warning{border-left:4px solid #7e4b00;padding:.6rem .9rem;background:#fff}.form-row{display:grid;gap:.35rem;margin:.8rem 0}.form-row input,.form-row select{font:inherit;min-height:44px;padding:.55rem;border:1px solid #617180;border-radius:6px;background:#fff}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.small{font-size:.88rem}.backup-drop{border:2px dashed #7f8b94;border-radius:9px;padding:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid #1b76a5;outline-offset:3px}footer{padding:1.5rem clamp(1rem,4vw,4rem);background:#18222b;color:#dce5ea;font-size:.85rem}
@media(max-width:1099px){.workspace{grid-template-columns:1fr}.support-rail{position:static;grid-template-columns:1fr 1fr}.masthead{align-items:flex-start}}
@media(max-width:719px){.masthead{display:block}.save-state{margin-top:.65rem}.shell{padding-top:1.25rem}.grid,.support-rail{grid-template-columns:1fr}.button-row>*{width:100%}.case-row{display:block}.case-row .button-row{margin-top:.7rem}h1{font-size:2rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
.badge-family{margin:1.2rem 0}.badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.8rem}.badge-tile{border:1px solid #c2ccd3;border-radius:9px;padding:.9rem;background:#f9fbfc}.badge-tile h4{margin:.55rem 0 .4rem;font-size:1.02rem}.health-list{display:grid;gap:.45rem;margin:.8rem 0}.health-list div{display:grid;grid-template-columns:minmax(9rem,1fr) minmax(0,1.4fr);gap:.8rem;border-bottom:1px solid #d9e0e5;padding:.35rem 0}.health-list dt{font-weight:700}.health-list dd{margin:0}.echo-list{display:grid;gap:.2rem}
@media(max-width:719px){.health-list div{grid-template-columns:1fr;gap:.1rem}.badge-grid{grid-template-columns:1fr}}
.key-panel{border-top:1px solid #d9e0e5;margin-top:.8rem;padding-top:.8rem}.key-reveal{margin-top:.8rem}.secret-key{font-size:1rem;font-weight:800;letter-spacing:.04em;word-break:break-word;background:#f6f8f9;border:1px solid #9aa8b2;border-radius:6px;padding:.75rem}.key-panel .form-row{margin-top:1rem}
@media print{.masthead,.banner,footer,.key-reveal .button-row,.key-panel>:not(.key-reveal){display:none!important}.shell{max-width:none;padding:1rem}.key-reveal{border:2px solid #000;background:#fff}.secret-key{font-size:14pt}}
