:root{--page:#f7f6f2;--surface:#fff;--ink:#171b19;--ink-2:#565d59;--ink-3:#8a908c;--line:#e5e3dc;--brand:#1f7a56;--brand-deep:#12442f;--brand-wash:#eaf3ee;--good:#0ca30c;--good-text:#0a6e0a;--warn:#b98300;--warn-wash:#fdf6e4;--bad:#d03b3b;--bad-wash:#fbecec;--radius:12px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--page);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15.5px;line-height:1.55}a{color:var(--brand)}header.app{background:var(--brand-deep);color:#fff;padding:14px 0}header.app .wrap{align-items:center;gap:12px;display:flex}.logo{width:30px;height:30px;color:var(--brand-deep);letter-spacing:-.5px;background:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex}header.app .t{font-size:15px;font-weight:650}header.app .s{color:#b9cfc4;font-size:12.5px}header.app .who{color:#b9cfc4;align-items:center;gap:12px;margin-left:auto;font-size:12.5px;display:flex}header.app .who button{color:#b9cfc4;cursor:pointer;background:0 0;border:1px solid #3a6e57;border-radius:8px;padding:3px 10px;font-family:inherit;font-size:12px}header.app .who button:hover{color:#fff;border-color:#fff}.wrap{max-width:860px;margin:0 auto;padding:0 20px}main.wrap{padding:44px 20px 70px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px}.card+.card{margin-top:16px}h1{letter-spacing:-.3px;margin-bottom:6px;font-size:26px;line-height:1.25}h2{margin:0 0 10px;font-size:17px}.sub{color:var(--ink-2);font-size:14.5px}p{margin:0 0 12px}p:last-child{margin-bottom:0}.kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin-bottom:10px;font-size:11.5px;font-weight:700;display:inline-block}.progress{color:var(--ink-2);align-items:center;gap:8px;margin:0 0 18px;font-size:13px;display:flex}.dots{gap:6px;display:flex}.dot{background:var(--line);border-radius:50%;width:9px;height:9px}.dot.done{background:var(--brand)}.dot.now{background:var(--brand);outline:3px solid var(--brand-wash)}.scenario{background:var(--brand-wash);border-radius:var(--radius);border:1px solid #d5e6dd;margin-bottom:22px;padding:20px 22px}.scenario .meta{color:var(--ink-2);flex-wrap:wrap;gap:14px;margin-bottom:8px;font-size:12.5px;display:flex}.scenario .meta b{color:var(--ink);font-weight:600}.scenario .msg{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-top:10px;padding:12px 15px;font-size:15px}.scenario .msg .from{color:var(--ink-3);margin-bottom:3px;font-size:12px}.field{margin-bottom:16px}.field label{margin-bottom:3px;font-size:15px;font-weight:700;display:block}.field .hint{color:var(--ink-2);margin-bottom:7px;font-size:13.5px}textarea,input[type=text],input[type=email]{border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:#fcfcfb;border-radius:10px;padding:11px 13px;font-size:14.5px}textarea{resize:vertical;min-height:74px}textarea::placeholder,input::placeholder{color:#7d837f}textarea:focus,input:focus{outline:2px solid var(--brand);outline-offset:-1px;background:#fff}.btn{background:var(--brand);color:#fff;cursor:pointer;font:inherit;border:none;border-radius:10px;padding:11px 22px;font-size:15px;font-weight:650;display:inline-block}.btn:hover{background:#186647}.btn:disabled{cursor:default;background:#9db8ac}.btn.ghost{color:var(--brand);border:1px solid var(--brand);background:0 0}.btn.ghost:hover{background:var(--brand-wash)}.actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px;display:flex}.actions .note{color:var(--ink-3);font-size:12.5px}.error{background:var(--bad-wash);color:#8c2323;border:1px solid #eec3c3;border-radius:10px;margin:12px 0;padding:10px 14px;font-size:14px}.scorehead{flex-wrap:wrap;align-items:center;gap:26px;margin-bottom:6px;display:flex}.big{letter-spacing:-1px;font-size:52px;font-weight:700;line-height:1}.big small{color:var(--ink-3);letter-spacing:0;font-size:18px;font-weight:600}.meter{flex:1;min-width:220px}.meter .track{background:#efeee8;border-radius:6px;height:10px;position:relative;overflow:visible}.meter .fill{background:var(--warn);border-radius:6px 0 0 6px;height:10px}.meter .fill.pass{background:var(--brand)}.meter .pin{background:var(--ink-3);width:2px;position:absolute;top:-5px;bottom:-5px}.meter .pinlab{color:var(--ink-3);margin-top:6px;font-size:11.5px}.meter .cap{color:var(--ink-2);margin-top:6px;font-size:12.5px}ul.fb{list-style:none}ul.fb li{border-bottom:1px solid var(--line);align-items:flex-start;gap:10px;padding:9px 0;font-size:14.5px;display:flex}ul.fb li:last-child{border-bottom:none}.pill{border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-top:2px;font-size:11px;font-weight:800;display:flex}.pill.ok{color:var(--good-text);background:#e2f4e2}.pill.miss{background:var(--warn-wash);color:#7c5800}.pill.x{background:var(--bad-wash);color:#9c2626}.nextfocus{background:var(--warn-wash);border:1px solid #ecd9a4;border-radius:10px;margin-top:18px;padding:13px 16px;font-size:14px}.tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:4px 0 20px;display:grid}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:15px 17px}.tile .l{color:var(--ink-2);margin-bottom:4px;font-size:12.5px}.tile .v{letter-spacing:-.5px;font-size:27px;font-weight:700}.tile .d{color:var(--ink-2);margin-top:3px;font-size:12.5px}.tile .d.up{color:var(--good-text);font-weight:600}.badge{border-radius:99px;align-items:center;gap:6px;padding:4px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.badge.pass{color:var(--good-text);background:#e2f4e2}.badge.fail{background:var(--warn-wash);color:#7c5800}.chart{padding:6px 0 0}.chart .row{align-items:flex-end;gap:18px;height:170px;padding:0 4px;display:flex;position:relative}.chart .passline{border-top:1px solid #c3c2b7;position:absolute;left:0;right:0}.chart .passline span{color:var(--ink-3);background:var(--surface);padding-left:6px;font-size:11.5px;position:absolute;top:-17px;right:0}.col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.col .val{margin-bottom:5px;font-size:13px;font-weight:650}.col .bar{background:var(--brand);border-radius:4px 4px 0 0;width:24px}.col .cap{color:var(--ink-2);text-align:center;margin-top:8px;font-size:12px;line-height:1.3}.chart .base{border-top:1px solid #c3c2b7;margin:0 4px}.chart .caps{gap:18px;padding:0 4px;display:flex}.chart .caps .col{height:auto}.twocol{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:640px){.twocol{grid-template-columns:1fr}}table.plain{border-collapse:collapse;width:100%;margin:8px 0;font-size:14px}table.plain th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);padding:8px 10px;font-size:12px;font-weight:650}table.plain td{border-bottom:1px solid var(--line);vertical-align:top;padding:9px 10px}table.plain td.num{font-variant-numeric:tabular-nums;text-align:right;font-weight:650}table.plain tr:last-child td{border-bottom:none}.spin{border:3px solid var(--brand-wash);border-top-color:var(--brand);vertical-align:-4px;border-radius:50%;width:18px;height:18px;margin-right:8px;animation:.8s linear infinite sp;display:inline-block}@keyframes sp{to{transform:rotate(360deg)}}.grading{color:var(--ink-2);justify-content:center;align-items:center;gap:10px;padding:30px 0;font-size:15px;display:flex}footer.app{text-align:center;color:var(--ink-3);padding:26px 0 40px;font-size:12px}
