/* Gemeinsames Testskript (werkzeuge/selbsttest.*), Gestaltung wie die Designvorschau */
.cds-w-selbsttest { border: 2px solid var(--cds-akzent); border-radius: 16px; padding: 22px; margin: 0 0 1.75rem; background: #fff; }
.cds-st-kopf .cds-rubrik { margin: 0 0 .2rem; }
.cds-st-kopf h2 { margin: 0 0 .3rem; font-size: 1.35em; }
.cds-st-eckdaten { margin: 0 0 1rem; font-size: 15px; color: var(--cds-tinte-2); }
.cds-st-fortschritt span { display: block; height: 8px; background: var(--cds-flaeche-2); border-radius: 99px; overflow: hidden; }
.cds-st-fortschritt i { display: block; height: 100%; width: 0; background: var(--cds-marke); transition: width .25s; }
.cds-st-fortschritt p { font-size: 14px; color: var(--cds-tinte-2); margin: .4rem 0 .9rem; }
.cds-st-fragen { list-style: none; padding: 0; margin: 0; counter-reset: none; }
.cds-st-frage { margin: 0 0 1.4rem; padding: 0; }
.cds-st-frage::before { content: none !important; }
.cds-st--aktiv .cds-st-frage { margin: 0; }
.cds-st-frage fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.cds-st-frage legend { font-size: 1.08em; font-weight: 650; line-height: 1.4; margin: 0 0 .8rem; padding: 0; }
.cds-st-einleitung { display: block; font-size: .85em; font-weight: 500; color: var(--cds-tinte-2); margin-bottom: .2rem; }
.cds-st-optionen { display: grid; gap: 8px; }
.cds-st-optionen label { display: flex; gap: 12px; align-items: center; border: 1px solid var(--cds-linie); border-radius: 10px; padding: 12px 14px; cursor: pointer; font-size: 16px; line-height: 1.35; }
.cds-st-optionen label:hover { border-color: var(--cds-marke); }
.cds-st-optionen input { accent-color: var(--cds-marke); width: 20px; height: 20px; margin: 0; flex: none; }
.cds-st-optionen label:has(input:checked) { border-color: var(--cds-marke); background: var(--cds-marke-tint); }
.cds-st-optionen label:has(input:focus-visible) { outline: 3px solid var(--cds-akzent); outline-offset: 2px; }
.cds-st-optionen input:disabled + span { color: var(--cds-tinte-2); }
.cds-st-steuerung { margin: .9rem 0 0; }
.cds-st-zurueck { background: none; border: 0; padding: 0; font: inherit; font-size: 15px; color: var(--cds-tinte-2); cursor: pointer; text-decoration: underline; }
.cds-st-ergebnis:focus { outline: none; }
.cds-st-ergebnis-kopf { font-size: 14px; color: var(--cds-tinte-2); margin: .2rem 0 0; }
.cds-st-stufe { font-size: 1.3em; font-weight: 700; margin: .2rem 0 .6rem; line-height: 1.3; }
.cds-st-skala { display: flex; height: 14px; border-radius: 99px; overflow: hidden; }
.cds-st-skala span { display: block; height: 100%; opacity: .55; }
.cds-st-zeiger { position: relative; height: 18px; margin-bottom: .4rem; }
.cds-st-zeiger b { position: absolute; top: 0; transform: translateX(-50%); font-size: 14px; color: var(--cds-tinte); }
.cds-st-knoepfe { display: flex; gap: .6rem; flex-wrap: wrap; margin: 1rem 0 0; }
.cds-st-datenhinweis { font-size: 13px; color: var(--cds-tinte-2); margin: 1rem 0 0; }
