:root{--ink:#153c39;--muted:#59716a;--green:#116855;--mint:#d9ede3;--paper:#f5f4ed;--border:#d9dfd4;--orange:#a34b18}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header{max-width:1300px;margin:auto;padding:25px 44px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.brand{text-decoration:none;color:var(--ink);font-size:14px;letter-spacing:1.5px}.brand b{font-weight:800}.logo{display:inline-grid;place-items:center;background:var(--green);color:#fff;width:35px;height:35px;border-radius:50%;margin-right:10px;font-size:24px}main{max-width:1200px;margin:auto;padding:35px 32px}.intro{position:relative;padding:10px 0 35px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:var(--green);margin:0 0 15px}h1{font-size:clamp(35px,5vw,57px);letter-spacing:-2px;line-height:1.1;margin:0 0 20px;font-weight:750}h1 em{font-style:normal;color:var(--green)}.lead{max-width:670px;color:var(--muted);font-size:18px;line-height:1.6}.intro-tags{display:flex;flex-wrap:wrap;gap:8px}.intro-tags span{border:1px solid var(--border);padding:5px 12px;border-radius:30px;font-size:12px;color:var(--muted)}.dashboard{display:grid;grid-template-columns:265px 1fr;gap:28px;align-items:start}aside{position:sticky;top:20px}.system-label{font-size:11px;letter-spacing:1.2px;font-weight:800;display:flex;justify-content:space-between}.track{height:6px;background:#d9dfd4;border-radius:6px;margin:12px 0 25px;overflow:hidden}.track div{height:100%;background:var(--green);transition:width .3s}nav{display:grid;gap:8px}nav button{display:flex;align-items:center;text-align:left;width:100%;padding:15px 12px;border:1px solid var(--border);background:transparent;color:var(--ink);border-radius:12px;gap:12px}nav button.active{background:var(--ink);color:white;border-color:var(--ink)}nav button:disabled{opacity:.55;cursor:not-allowed}nav .num{font-size:12px;border:1px solid currentColor;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;flex:none}nav strong{display:block;font-size:14px}nav small{display:block;font-size:11px;opacity:.8}.save-note{font-size:12px;color:var(--muted);margin:24px 0 12px}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d27b36;outline-offset:3px}.quiet{border:1px solid var(--border);border-radius:8px;background:transparent;padding:8px 12px;color:var(--ink);font-size:13px}aside .quiet{display:block;width:100%;margin:8px 0}.danger{color:var(--orange)}.card{background:white;border:1px solid var(--border);border-radius:18px;padding:30px;box-shadow:0 10px 35px #173e3410}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.pill{font-size:11px;font-weight:750;border-radius:20px;background:var(--mint);color:var(--green);padding:5px 10px}h2{font-size:28px;letter-spacing:-.7px;line-height:1.25;margin:10px 0 20px}h3{font-size:18px}.scenario{background:#f5f7f2;border-left:3px solid var(--green);padding:18px 20px;font-size:15px;border-radius:0 8px 8px 0;margin-bottom:24px}fieldset{border:0;padding:0;margin:20px 0}legend{font-weight:700;font-size:15px;margin-bottom:12px}.question-label{color:var(--green);font-size:11px;letter-spacing:1px;display:block;margin-bottom:5px}.option{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border);border-radius:9px;margin:8px 0;font-size:14px;cursor:pointer;transition:background .15s}.option:has(input:checked){background:#e9f4ef;border-color:var(--green)}.option input{margin-top:5px;accent-color:var(--green);flex:none}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:24px}.primary{border:0;background:var(--green);color:white;border-radius:9px;padding:12px 20px;font-size:14px;font-weight:700}.primary:disabled{opacity:.5;cursor:default}.status{padding:15px 18px;border-radius:9px;background:#fff2e2;color:#844318;margin:20px 0;font-size:14px}.success{background:#e5f3ea;color:#145f43}.hints{padding:16px;background:#fff8e8;border:1px solid #ead9b0;border-radius:10px;margin:20px 0}.hints p{margin:6px 0;font-size:14px}.explanation{margin:20px 0;border-top:1px solid var(--border);padding-top:18px}.explanation h3{color:var(--green);margin:0 0 8px}.explanation p{font-size:15px}.mini-progress{display:flex;gap:6px}.dot{width:28px;height:5px;border-radius:4px;background:#e0e6df}.dot.done{background:var(--green)}.dot.current{background:#d28a3c}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.stat{padding:18px;background:#f4f7f2;border-radius:10px}.stat b{font-size:28px;display:block}.stat span{font-size:12px;color:var(--muted)}table{border-collapse:collapse;width:100%;font-size:13px;margin:15px 0}th,td{padding:10px;border-bottom:1px solid var(--border);text-align:left}th{background:#f2f5ee}.table-scroll{overflow-x:auto}.chart{width:100%;max-width:520px;height:auto;display:block;margin:auto}.chart text{font:12px system-ui;fill:var(--ink)}textarea,input[type=text]{font:inherit;border:1px solid var(--border);border-radius:8px;padding:12px;width:100%;background:white;color:var(--ink)}textarea{min-height:100px;resize:vertical}label.text-label{font-size:14px;display:block;margin:18px 0 8px}#report{margin-top:28px}footer{font-size:12px;color:var(--muted);padding:35px 0}dialog{border:1px solid var(--border);border-radius:18px;max-width:700px;width:calc(100% - 30px);padding:30px;color:var(--ink);line-height:1.7}dialog::backdrop{background:#153c3980}.close{float:right}dialog p,dialog li{font-size:14px}#checkFeedback:empty{display:none}@media(max-width:780px){header{padding:18px 20px;gap:12px}.brand{font-size:11px;letter-spacing:.5px}header .quiet{font-size:11px}main{padding:24px 18px}.dashboard{grid-template-columns:1fr;gap:20px}aside{position:static}nav{grid-template-columns:repeat(3,1fr);gap:6px}nav button{display:block;padding:10px}nav .num{margin-bottom:6px;width:25px;height:25px}nav strong{font-size:11px}nav small{display:none}.save-note{margin:12px 0}aside .quiet{display:inline-block;width:auto}.card{padding:22px 18px}h2{font-size:24px}.stats{gap:6px}.stat{padding:12px}.stat b{font-size:23px}}@media print{header,.intro,aside,#workbench,footer,.actions,button{display:none!important}main{padding:0}.dashboard{display:none}#report{display:block!important}.card{box-shadow:none;border:0;padding:0}textarea,input{border:0}tr{break-inside:avoid}}
