[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #126c9e; outline-offset: 4px; }
#evaluation { scroll-margin-top: 6rem; }
.field small, #region-hint { color: #516879; font-weight: 500; }
.required-mark { color: #0c7761; }
.route-link, .examples-link { color: #09558c; text-decoration: underline; text-underline-offset: 3px; }
.route .examples-link, .examples-link { display: block; border: 0; padding: .45rem 0; background: transparent; color: #09558c; font-weight: 750; }
#question-progress { width: 100%; height: 1rem; accent-color: #148c73; }
.question-jumps { display: flex; flex-wrap: wrap; gap: .5rem; margin: .6rem 0 1.15rem; }
.question-jumps button { min-height: 44px; min-width: 44px; border: 1px solid #aac4d6; border-radius: .55rem; background: white; color: #0a426c; font-weight: 750; }
.question-jumps button[data-answered="true"] { background: #e3f4ed; border-color: #91c6b5; }
.question-jumps button[aria-current="step"] { background: #0a577d; color: white; border-color: #0a577d; }
.choices label:has(input:checked) { border-color: #148c73; background: #e6f5ee; }
#result-review details { padding: .7rem .8rem; margin: .6rem 0; border: 1px solid #d6e5eb; border-radius: .55rem; background: white; overflow-wrap: anywhere; }
#result-review summary { cursor: pointer; font-weight: 700; }
#result-review button { margin: .35rem 0 0; }
#answer-proof { overflow-wrap: anywhere; }
