:root{--navy:#17365d;--deep:#0b3d73;--orange:#f47a14;--muted:#626f83;--line:#dce5ed;--pale:#f2f6fc;--correct:#176c42;--wrong:#a32727}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:75px}body{margin:0;background:linear-gradient(180deg,#f3f7fc 0,#fff8ef 100%);color:var(--navy);font:17px/1.55 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}a{color:var(--deep)}.topbar{background:#fff;border-bottom:1px solid var(--line)}.top-inner{max-width:1060px;min-height:76px;margin:auto;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:24px}.back{font-weight:750;text-decoration:none}.brand{font-size:13px;color:var(--muted)}.hero{background:linear-gradient(110deg,#f37a08,#ffa13e);color:white}.hero-inner{max-width:1060px;margin:auto;padding:46px 24px 42px}.eyebrow{font-size:13px;letter-spacing:.16em;font-weight:850;margin:0 0 12px}h1{font-size:clamp(38px,6vw,64px);letter-spacing:-.025em;line-height:1.12;margin:0 0 16px}.hero p:not(.eyebrow){max-width:820px;margin:0;line-height:1.55}.hero .meta{margin-top:23px}.meta{display:flex;flex-wrap:wrap;gap:9px}.meta span{font-size:13px;font-weight:700;padding:6px 11px;border:1px solid #ffffff80;background:#ffffff15;border-radius:999px}.container{max-width:1060px;margin:auto;padding:30px 24px 65px}.intro,.info-card{border:1px solid var(--line);border-radius:20px;padding:22px 26px;background:#fff;margin-bottom:24px}.intro p{margin:0 0 12px}.intro p:last-child{margin:0}.small,.source-note{font-size:13px;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{display:flex;flex-direction:column;text-decoration:none;color:var(--navy);border:1px solid var(--line);border-top:6px solid var(--orange);border-radius:22px;background:#fff;padding:26px;box-shadow:0 10px 25px #17365d09;min-width:0;transition:box-shadow .15s,transform .15s}.card:hover{box-shadow:0 12px 25px #17365d19;transform:translateY(-2px)}.card .tag{font-size:12px;font-weight:800;letter-spacing:.12em;color:#a85008}.card h2{font-size:29px;line-height:1.18;margin:18px 0 12px}.card p{font-size:15px;color:var(--muted);margin:0 0 20px}.card-bottom{border-top:1px solid var(--line);padding-top:16px;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;font-weight:750}.card-action{color:#bd5500}.wide-card{max-width:850px;min-height:180px}.wide-card h2{margin-top:12px}.study-note{font-size:13px;margin:28px 0 0;color:var(--muted)}.notice{padding:15px 20px;border:1px solid #e4bb72;border-radius:13px;background:#fff5df;color:#713900;margin-bottom:20px}.notice.error{background:#fff0ef;border-color:#d6918a;color:#8a2020}.progressbar{max-width:1060px;margin:0 auto 24px;background:#fff;border:1px solid var(--line);padding:17px 20px;border-radius:14px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.progressbar progress{height:8px;max-width:250px;flex:1;accent-color:var(--deep)}.progressbar #save-status{font-size:13px;flex-basis:100%;color:var(--muted)}.section-nav{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 22px}.section-nav a{font-size:13px;border:1px solid var(--line);padding:6px 10px;background:white;border-radius:999px;text-decoration:none}.question-section{font-size:23px;border-bottom:3px solid var(--orange);padding:18px 0 11px;margin:22px 0}.question{min-width:0;margin:0 0 24px;border:1px solid var(--line);border-radius:18px;background:#fff;padding:23px 25px;break-inside:avoid}.question legend{font-size:18px;font-weight:750;line-height:1.55;float:left;width:100%;padding:0;margin:0 0 18px}.question legend+.choices{clear:both}.number{color:#b54c00;margin-right:4px}.choices{display:grid;gap:10px}.choice{border:1px solid #cfd9e5;border-radius:12px;padding:13px 15px;display:flex;align-items:flex-start;gap:11px;color:#26374c;cursor:pointer;min-height:52px}.choice input{margin:5px 0 0;flex:0 0 auto;width:17px;height:17px;accent-color:var(--deep)}.letter{display:flex;justify-content:center;align-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:7px;background:#eef3fa;color:#395372;font-size:13px;font-weight:850}.choice-text{overflow-wrap:anywhere}.choice:hover{background:#f7faff}.choice.selected{background:#edf5ff;border-color:#5381ad}.choice:has(input:focus-visible){outline:3px solid #1766af;outline-offset:2px}.question.missing{border:2px solid #b13333}.missing-message{font-size:14px;color:var(--wrong);font-weight:700}.submit-area{border:1px solid var(--line);border-top:5px solid var(--orange);padding:28px;border-radius:20px;background:white;margin-top:30px}.submit-area h2{margin-top:0}.primary,.secondary{font:inherit;font-weight:800;border-radius:12px;cursor:pointer;padding:14px 20px;min-height:50px}.primary{background:var(--deep);border:1px solid var(--deep);color:#fff}.secondary{background:#fff;border:1px solid #b6c5d6;color:var(--navy)}button:disabled{opacity:.6;cursor:not-allowed}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}dialog{border:1px solid #ccd6e1;box-shadow:0 20px 90px #0004;border-radius:20px;max-width:520px;width:calc(100% - 32px);padding:28px;color:var(--navy)}dialog::backdrop{background:#0c193b99}dialog h2{margin-top:0;line-height:1.2}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px}#results{padding:26px;border-radius:20px;border:2px solid #567ca3;background:white;margin-bottom:30px}#results h2{margin:8px 0}.score{font-size:38px;font-weight:850;color:var(--deep)}.missed-links{margin:20px 0;display:flex;gap:9px;flex-wrap:wrap}.missed-links a{min-width:34px;padding:4px 8px;border:1px solid #c8d2df;border-radius:6px;text-decoration:none;text-align:center}.feedback{padding:16px 18px;margin-top:16px;border-radius:10px;background:#edf7f0;border-left:4px solid var(--correct);color:#213c2b}.feedback.is-incorrect{background:#fff3ef;border-color:var(--wrong);color:#542828}.feedback h3{margin:0 0 10px;font-size:18px}.feedback p{margin:7px 0}.feedback .source-note{margin-top:12px;font-size:12px}.answer-tag{display:block;margin-top:5px;font-size:12px}.choice.answer-correct{border-color:#54a574;background:#edf8f0}.choice.answer-incorrect{border-color:#d98080;background:#fff1ee}.locked .choice{cursor:default}.locked input{opacity:1}.end-nav{display:flex;justify-content:space-between;gap:20px;margin-top:26px;font-weight:700;font-size:14px}footer{padding:25px 20px;text-align:center;color:var(--muted);font-size:13px;border-top:1px solid var(--line);background:#fff8}[hidden]{display:none!important}@media(max-width:760px){.card-grid{grid-template-columns:1fr}.top-inner{min-height:65px;padding:18px 20px}.brand{display:none}.hero-inner{padding:32px 20px}.container{padding:22px 16px 48px}.intro{padding:20px}.question{padding:20px 17px}.question legend{font-size:17px}.choice{padding:12px 11px;gap:9px}.choice-text{font-size:16px}.section-nav a{font-size:12px}.primary,.secondary{font-size:15px}.submit-area{padding:22px}.score{font-size:32px}}@media print{body{background:white;font-size:12pt}.topbar,.hero,.progressbar,.section-nav,.submit-area,dialog,.end-nav,footer,button{display:none!important}.container{max-width:none;padding:0}.intro{padding:0;border:0}.question{border:1px solid #aaa;padding:15px;margin-bottom:20px}.choice{padding:6px}.letter{width:20px;height:20px;flex-basis:20px}.feedback{background:white}.source-note{font-size:8pt}}
