@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{--navy:#0a253f;--orange:#ff8a24;--muted:#435a6b}*{box-sizing:border-box}body{margin:0;background:#f5f5f1;color:var(--navy);font:18px/1.5 Montserrat,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,a{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button,input,a{outline-offset:4px}h1,h2,p{margin:0}h1:focus{outline:none}a{color:inherit;text-underline-offset:3px}.app{width:100%;max-width:480px;min-height:100svh;margin:auto;background:white;display:flex;flex-direction:column}header{display:flex;align-items:center;gap:17px;padding:17px 24px;border-bottom:3px solid var(--orange);background:var(--navy);color:white}header img{width:65px;height:auto}header span{font-size:13px;font-weight:600;line-height:1.4}main{padding:26px 24px 20px;flex:1}.quiz-name{font-size:19px;font-weight:800;margin-bottom:23px}.progress-row{display:flex;justify-content:space-between;gap:12px;font-size:15px;color:var(--muted)}.progress{display:flex;gap:5px;margin:10px 0 24px}.progress>span{height:5px;background:#dfe5e9;flex:1;border-radius:4px}.progress .active{background:var(--navy)}h1{font-size:25px;font-weight:700;line-height:1.4;letter-spacing:-.3px}.answers{display:grid;gap:13px;margin-top:26px}.answers button{min-height:60px;border:2px solid #9babb8;background:#fff;color:var(--navy);padding:14px 16px;border-radius:6px;font-size:20px;font-weight:600;text-align:left;line-height:1.4}.answers button:hover,.answers .chosen{background:#edf3f7;border-color:var(--navy)}.back{border:0;background:none;min-height:48px;padding:12px 0;font-size:17px;color:var(--muted);text-decoration:underline;text-underline-offset:4px;margin-top:13px}.helper{font-size:16px;color:var(--muted);margin-top:21px}.sub{font-size:17px;line-height:1.5;color:var(--muted);margin:9px 0 20px}label:not(.opt){display:block;font-size:16px;font-weight:600;margin:13px 0 6px}input:not([type=checkbox]){width:100%;min-width:0;height:51px;border:1.5px solid #8b9ca9;border-radius:5px;padding:9px 12px;background:#fff;color:var(--navy);font-size:20px}.name-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.opt{display:flex;align-items:flex-start;gap:10px;font-size:16px;margin:20px 0 12px;cursor:pointer}.opt input{width:23px;height:23px;accent-color:var(--navy);margin:1px 0;flex-shrink:0}.optional{color:var(--muted)}.privacy{font-size:13px;line-height:1.6;color:var(--muted);margin-bottom:18px}.primary,.secondary{display:flex;align-items:center;justify-content:center;width:100%;padding:15px 12px;min-height:58px;border-radius:6px;font-size:20px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none}.primary{background:var(--orange);border:2px solid transparent;color:var(--navy)}.primary:hover{border-color:var(--navy)}.primary:disabled{opacity:.6;cursor:wait}.secondary{background:#fff;border:2px solid var(--navy);color:var(--navy);font-size:17px;margin-top:13px}.secondary:hover{background:#edf3f7}.result{text-align:center;padding-top:4px}.result .quiz-name{margin-bottom:10px;font-weight:600;color:var(--muted)}.grade{font-size:82px;font-weight:800;line-height:1.15;letter-spacing:-3px;color:var(--navy)}.score{font-size:19px;margin-top:9px}.result h2{font-size:25px;line-height:1.35;margin:27px 0 24px;letter-spacing:-.4px}.notice{font-size:16px;color:var(--muted);line-height:1.6;margin-top:17px;overflow-wrap:anywhere}.error{font-size:16px;color:#a32120;line-height:1.5;margin-bottom:14px}.trap{display:none}footer{font-size:12px;text-align:center;line-height:1.6;padding:17px 15px;color:var(--muted);border-top:1px solid #e0e5e7}@media(min-width:600px){.app{margin:32px auto;min-height:680px;border:1px solid #dce2e6;border-radius:10px;overflow:hidden}main{padding:28px}}

/* Standalone version: screen visibility, submission feedback, and keyboard accessibility. */
main section[hidden] { display: none !important; }
.integration-note { margin: 12px 0 15px; color: var(--muted); font-size: 13px; line-height: 1.5; }
button:focus-visible, input:focus-visible, a:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; }
#question-heading { scroll-margin-top: 12px; }
