.leadem-gad7-tool { margin:10px 0 0;text-align:left }
.leadem-gad7-button { background:#4687b0;border:2px solid #4687b0;border-radius:3px;color:#fff;cursor:pointer;font:inherit;font-size:15px;font-weight:600;min-height:44px;padding:10px 25px }
.leadem-gad7-button:hover { background:#326f97;border-color:#326f97;color:#fff }
.leadem-gad7-button:focus-visible,.leadem-gad7-modal__close:focus-visible,.leadem-gad7-question input:focus-visible { box-shadow:0 0 0 3px #fff,0 0 0 6px #132573;outline:0 }
body.leadem-gad7-modal-open { overflow:hidden }
.leadem-gad7-modal[hidden],.leadem-gad7-result[hidden],.leadem-gad7-form__download[hidden] { display:none!important }
.leadem-gad7-modal { align-items:center;background:rgba(0,0,0,.6);box-sizing:border-box;display:flex;inset:0;justify-content:center;opacity:0;padding:24px;position:fixed;transition:opacity .2s ease;z-index:99999 }
.leadem-gad7-modal.is-open { opacity:1 }
.leadem-gad7-modal *,.leadem-gad7-modal *::before,.leadem-gad7-modal *::after { box-sizing:border-box }
.leadem-gad7-modal__panel { background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);color:#333;max-height:90vh;max-width:800px;overflow-y:auto;padding:40px 45px;position:relative;width:100% }
.leadem-gad7-modal__close { align-items:center;background:none;border:0;color:#333;cursor:pointer;display:flex;font:28px/1 Arial,sans-serif;height:38px;justify-content:center;position:absolute;right:14px;top:10px;width:38px }
.leadem-gad7-modal__close:hover { background:#f1f3f6 }
.leadem-gad7-modal__title { color:#132573;font-size:28px;margin:0 35px 10px 0 }
.leadem-gad7-modal__introduction { color:#555;font-size:15px;line-height:1.6;margin:0 0 25px }
.leadem-gad7-header { align-items:start;border-bottom:2px solid #132573;display:grid;gap:12px;grid-template-columns:28px 1fr 340px;margin-bottom:15px;padding-bottom:10px }
.leadem-gad7-header>strong { color:#132573;font-size:14px }
.leadem-gad7-header>div,.leadem-gad7-question__options { display:grid;grid-template-columns:75px 75px 90px 75px;justify-content:space-between }
.leadem-gad7-header>div span { color:#132573;font-size:12px;font-weight:600;text-align:center }
.leadem-gad7-question { align-items:center;border:0;display:grid;gap:12px;grid-template-columns:1fr 340px;margin:0 0 14px;padding:7px }
.leadem-gad7-question.has-error { background:#fff3f2;border-radius:6px }
.leadem-gad7-question legend { align-items:center;color:#333;display:flex;float:left;font-size:14px;font-weight:600;gap:12px;margin:0;padding:0;width:100% }
.leadem-gad7-question__number { align-items:center;background:#132573;border-radius:50%;color:#fff;display:flex;flex:0 0 28px;font-size:13px;height:28px;justify-content:center }
.leadem-gad7-question__options label { cursor:pointer;text-align:center }
.leadem-gad7-form__message { background:#fff3f2;border-left:4px solid #b3261e;border-radius:4px;color:#7d1b17;font-weight:600;margin-bottom:18px;padding:13px 16px }
.leadem-gad7-form__actions,.leadem-gad7-form__download { margin-bottom:20px;text-align:center }
.leadem-gad7-button--primary { background:#132573;border-color:#132573;border-radius:999px;padding:11px 34px }
.leadem-gad7-result { background:#f0f4ff;border-left:4px solid #132573;border-radius:8px;color:#132573;margin-bottom:15px;padding:20px 25px }
.leadem-gad7-result p { margin:0 }
.leadem-gad7-result__score { font-size:18px;font-weight:700;margin-bottom:10px!important }
.leadem-gad7-difficulty { background:#f8f9fa;border:0;border-radius:8px;margin:0 0 20px;padding:20px 25px }
.leadem-gad7-difficulty legend { color:#333;font-size:15px;font-weight:600;line-height:1.5;margin-bottom:12px }
.leadem-gad7-difficulty label { color:#555;cursor:pointer;display:block;margin-bottom:8px }
.leadem-gad7-table-wrap { margin-bottom:15px;overflow-x:auto }
.leadem-gad7-table { border-collapse:collapse;font-size:14px;width:100% }
.leadem-gad7-table th { background:#132573;color:#fff;padding:10px 12px;text-align:left }
.leadem-gad7-table td { border-bottom:1px solid #eee;padding:10px 12px }
.leadem-gad7-table tbody tr:nth-child(odd) { background:#f8f9fa }
.leadem-gad7-citation { color:#888;font-size:12px;font-style:italic;line-height:1.5;margin:0 }
@media(max-width:700px){
	.leadem-gad7-modal{padding:12px}.leadem-gad7-modal__panel{max-height:94vh;padding:34px 20px 28px}.leadem-gad7-modal__title{font-size:24px}
	.leadem-gad7-header{display:none}.leadem-gad7-question{display:block;margin-bottom:20px}.leadem-gad7-question legend{float:none;margin-bottom:10px}
	.leadem-gad7-question__options{gap:8px;grid-template-columns:1fr 1fr;margin-left:40px}.leadem-gad7-question__options label{align-items:center;border:1px solid #ddd;border-radius:5px;display:flex;gap:6px;padding:8px;text-align:left}
	.leadem-gad7-question__options .screen-reader-text{clip:auto!important;clip-path:none!important;height:auto!important;margin:0!important;overflow:visible!important;position:static!important;width:auto!important}
	.leadem-gad7-form__download .leadem-gad7-button{width:100%}
}
@media(prefers-reduced-motion:reduce){.leadem-gad7-button,.leadem-gad7-modal{transition:none}}
