:root{font-family:Arial,"Segoe UI",sans-serif;color:#24282c;background:#f2f3f4;line-height:1.65;--accent:#007b98;--line:#d8dee2;--green:#247447}*{box-sizing:border-box}body{margin:0;padding-bottom:116px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}.brand{background:#303030;color:white;text-align:center;padding:27px 20px 24px;border-bottom:4px solid #00b8df}.brand img{display:block;max-width:60%;height:auto;max-height:85px;object-fit:contain;margin:0 auto 14px}.brand h1{font-size:27px;margin:0;font-weight:600}.page{max-width:1160px;margin:auto;padding:24px}.instructions{background:white;border:1px solid var(--line);border-radius:12px;padding:18px 24px;margin-bottom:22px}.instructions p{margin:5px 0 10px}.instructions p:last-child{margin-bottom:0}.subtle{color:#5d6871;font-size:14px}.overall{background:white;border:1px solid var(--line);border-radius:12px;padding:17px 20px;margin-bottom:24px}.overall>div{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.overall progress{width:100%;height:9px;display:block;margin:12px 0 14px;accent-color:var(--accent);border:0;border-radius:20px;overflow:hidden}.overall progress::-webkit-progress-bar{background:#e8edf0}.overall progress::-webkit-progress-value{background:var(--accent)}.unanswered-toggle{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;min-height:30px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start}#chapters{position:sticky;top:18px;display:grid;gap:7px}#chapters button{border:1px solid transparent;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:right;padding:12px;border-radius:8px;color:#414b52;min-height:48px;font-size:14px}#chapters button[aria-current=step]{background:#e2f2f6;border-color:#a6d4df;color:#005f77;font-weight:700}.chapter-count{font-size:12px;white-space:nowrap;border-radius:5px;background:white;padding:2px 5px;color:#536168}.chapter-count.complete{color:var(--green);background:#e6f4eb}.chapter-heading{margin-bottom:20px}.chapter-heading h2{font-size:25px;margin:4px 0 7px;line-height:1.4}.chapter-heading p{margin:0;color:#515b63}.question{margin:0 0 18px;padding:23px 24px;border:1px solid var(--line);border-radius:12px;background:white;min-width:0}.question.answered{border-color:#9fc6ac}.question-top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:9px}.question-number{font-size:13px;color:#66737c}.answer-badge{font-size:12px;white-space:nowrap;background:#eaf5ee;color:#256c42;padding:3px 9px;border-radius:20px}.question h3{font-size:18px;line-height:1.6;margin:0 0 9px;font-weight:650}.help{color:#5c6770;font-size:14px;margin:0 0 15px}.options{display:grid;gap:9px}.option{display:flex;align-items:start;gap:10px;padding:12px 13px;border:1px solid var(--line);border-radius:8px;cursor:pointer;min-height:48px;font-size:15px}.option:has(input:checked){background:#edf8fb;border-color:#1e94ae}.option input{flex:0 0 auto;margin-top:5px;width:18px;height:18px;accent-color:var(--accent)}.option span{min-width:0}.text-label{font-size:14px;display:block;margin:14px 0 6px;font-weight:600}textarea{display:block;width:100%;min-height:100px;padding:12px;border:1px solid #bfc9d0;background:white;color:#24282c;border-radius:8px;resize:vertical;font-size:16px;line-height:1.6}textarea:focus,select:focus{outline:2px solid #008aac;outline-offset:2px}.notes{margin-top:12px}.notes summary{color:#53636e;font-size:13px;cursor:pointer;min-height:30px;padding-block:4px}.notes textarea{min-height:72px;margin-top:5px}.question-foot{display:flex;justify-content:flex-end;margin-top:9px}.clear{font-size:12px;border:0;background:transparent;color:#65727b;padding:5px 0;text-decoration:underline}.primary,.secondary{padding:10px 19px;border-radius:8px;min-height:46px;font-weight:600;font-size:14px}.primary{background:var(--accent);border:1px solid var(--accent);color:white}.primary:hover:not(:disabled){background:#006b85}.secondary{background:white;border:1px solid #c6d0d6;color:#34424c}.pagination{display:flex;justify-content:space-between;gap:12px;padding:9px 0 20px}.savebar{position:fixed;bottom:0;left:0;right:0;background:#fffffff5;backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -3px 15px #00000008;padding:14px max(24px,calc((100vw - 1112px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:5}.savebar>div:first-child{font-size:14px;min-width:0}.savebar small{display:block;color:#6a747d;font-size:12px}.save-actions{display:flex;gap:9px;flex-shrink:0}#save-status.saved{color:var(--green)}#save-status.error{color:#aa2f24}.notice,.conflicts{background:#fff1db;border:1px solid #e0b86f;color:#624719;padding:15px 20px;border-radius:10px;margin:18px 0}.notice.success{background:#eaf5ed;border-color:#a6ceb3;color:#245638}.notice.error{background:#fff0ec;border-color:#e4b3a7;color:#8a2f22}.conflicts h3{margin:0 0 10px}.conflict-item{background:white;padding:12px;margin:10px 0;border-radius:8px}.conflict-item p{white-space:pre-wrap;font-size:14px;margin:5px 0}.conflict-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.loading,.empty,.closing{background:white;border:1px solid var(--line);border-radius:12px;padding:25px;margin:18px 0}.closing h3{margin-top:0}.mobile-nav{display:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #12a6cc;outline-offset:3px}#chapter-title:focus{outline:none}
@media(max-width:760px){body{padding-bottom:142px}.brand{padding:22px 16px 20px}.brand img{width:175px;margin-bottom:12px}.brand h1{font-size:24px}.page{padding:17px 13px}.instructions{padding:15px 16px;font-size:14px}.instructions .subtle{font-size:12px}.overall{padding:14px 16px;margin-bottom:14px}.overall strong{font-size:14px}.layout{display:block}#chapters{display:none}.mobile-nav{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-bottom:22px}.mobile-nav label{font-size:14px;font-weight:600}.mobile-nav select{width:100%;min-width:0;padding:11px 9px;border:1px solid #bdcbd2;border-radius:8px;background:white;color:#26363f;font-size:16px}.chapter-heading h2{font-size:22px}.chapter-heading p{font-size:14px}.question{padding:18px 16px}.question h3{font-size:17px}.option{font-size:14px;padding:12px 11px}.help{font-size:13px}.savebar{padding:10px 13px max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr;gap:8px}.savebar>div:first-child{display:flex;align-items:center;gap:9px;justify-content:space-between;font-size:12px}.savebar small{font-size:11px}.save-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.primary,.secondary{font-size:14px;min-height:45px;padding:9px 12px}.pagination{padding-bottom:12px}.conflicts{padding:15px}.conflict-actions{display:grid}}
@media(prefers-reduced-motion:no-preference){.primary,.secondary,.option{transition:background-color .12s,border-color .12s}}
