/* GACA English Test – test form. Inherits the theme's fonts. */
.gaca-test { --gaca-primary: #4a326c; max-width: 820px; margin: 0 auto 2em; }
.gaca-test .gaca-intro { margin-bottom: 1.2em; }
.gaca-test .gaca-field { margin: 0 0 1em; }
.gaca-test .gaca-field label { display: block; font-weight: 600; margin-bottom: .3em; }
.gaca-test .gaca-field input { width: 100%; max-width: 420px; padding: .55em .7em; border: 1px solid #bbb; border-radius: 4px; font: inherit; box-sizing: border-box; }
.gaca-test .gaca-field input.gaca-invalid { border-color: #d63638; box-shadow: 0 0 0 1px #d63638; }
.gaca-test .gaca-req { color: #d63638; }
.gaca-test .gaca-block { margin: 0 0 1.4em; padding: 1em 1.1em; background: #f6f7f9; border-left: 4px solid var(--gaca-primary); border-radius: 3px; }
.gaca-test .gaca-block audio, .gaca-test .gaca-block .wp-audio-shortcode { max-width: 100%; margin-top: .6em; }
.gaca-test .gaca-question { margin: 0 0 1.4em; padding: 0 0 1.2em; border-bottom: 1px solid #e3e3e3; }
.gaca-test .gaca-qtext { margin-bottom: .6em; }
.gaca-test .gaca-qtext p { margin: 0 0 .4em; }
.gaca-test .gaca-answers { display: flex; flex-direction: column; gap: .35em; }
.gaca-test .gaca-answers.gaca-horizontal { flex-direction: row; flex-wrap: wrap; gap: .5em 1.4em; }
.gaca-test .gaca-answer { display: flex; align-items: flex-start; gap: .5em; cursor: pointer; padding: .3em .45em; border-radius: 4px; }
.gaca-test .gaca-answer:hover { background: #f3f1f7; }
.gaca-test .gaca-answer input { margin-top: .3em; accent-color: var(--gaca-primary); }
.gaca-test select { padding: .45em; min-width: 200px; font: inherit; }
.gaca-test .gaca-nav { display: flex; align-items: center; gap: .8em; margin-top: 1.2em; }
.gaca-test .gaca-progress { margin-left: auto; color: #666; font-size: .9em; }
.gaca-test .gaca-btn { background: var(--gaca-primary) !important; color: #fff !important; border: 0; border-radius: 4px; padding: .65em 1.6em; font: inherit; font-weight: 600; cursor: pointer; }
.gaca-test .gaca-btn[disabled] { opacity: .6; cursor: wait; }
.gaca-test .gaca-btn[hidden] { display: none; }
.gaca-test .gaca-prev { background: #777 !important; }
.gaca-test .gaca-error { margin-top: 1em; padding: .7em 1em; background: #fcf0f1; border-left: 4px solid #d63638; color: #8a1f21; }
.gaca-test.gaca-notice { padding: 1em 1.2em; border: 1px solid #ddd; border-radius: 4px; }

/* Timed / adaptive mode (Oxford Pro). */
.gaca-test .gaca-timer { font-weight: 700; color: var(--gaca-primary); font-variant-numeric: tabular-nums; padding: .2em .6em; border: 1px solid currentColor; border-radius: 4px; }
.gaca-test .gaca-timer-low { color: #d63638; }
