/* Bewerbungsformular. Grundregeln aus dem Kontaktformular (page.0dac90732b.css, .bdt-hsf) übernommen.
   Farben nur über CD-Tokens aus bl.css (body bzw. body.active-light-mode), damit Hell- und Dunkelmodus
   stimmen. Kontraste (WCAG AA) prüft tests/test_form_a11y.py. Präfix "body .bdt-hsf.bdt-bew", weil
   page.css (Hellmodus) und bl.css mit (0,3,1) und !important färben; diese Datei lädt danach. */
body .bdt-hsf.bdt-bew{background:var(--lp-card)!important;border:1px solid var(--lp-bd)!important;border-radius:0!important;padding:36px;font-family:var(--bl-ui),Arial,sans-serif;color:var(--lp-tx)}
.bdt-hsf .bdt-hsf-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.bdt-hsf .f{margin:0 0 18px;grid-column:1/-1}
.bdt-hsf .opt-f{margin-top:-4px}
.bdt-hsf .f.half{grid-column:auto}
body .bdt-hsf.bdt-bew label,body .bdt-hsf.bdt-bew legend{display:block;color:var(--lp-h);font-weight:600;font-size:15px;margin:0 0 6px;padding:0}
body .bdt-hsf.bdt-bew .req{color:var(--lp-p2)}
body .bdt-hsf.bdt-bew .desc{font-size:13px;color:var(--lp-mu)!important;margin:4px 0 0}
body .bdt-hsf.bdt-bew input[type=text],body .bdt-hsf.bdt-bew input[type=email],body .bdt-hsf.bdt-bew input[type=tel],body .bdt-hsf.bdt-bew input[type=number],body .bdt-hsf.bdt-bew input[type=date],body .bdt-hsf.bdt-bew select,body .bdt-hsf.bdt-bew textarea{width:100%;box-sizing:border-box;font:400 16px/1.4 var(--bl-ui),Arial,sans-serif;color:var(--lp-h)!important;background-color:var(--lp-card2)!important;border:1px solid var(--lp-mu)!important;border-radius:0!important;padding:12px 14px!important;min-height:48px;height:auto;margin:0;box-shadow:none!important;-webkit-appearance:none;appearance:none}
body .bdt-hsf.bdt-bew select{background-image:linear-gradient(45deg,transparent 50%,var(--lp-p2) 50%),linear-gradient(135deg,var(--lp-p2) 50%,transparent 50%)!important;background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%!important;background-size:6px 6px!important;background-repeat:no-repeat!important;padding-right:40px!important}
body .bdt-hsf.bdt-bew select option{color:var(--lp-h);background:var(--lp-card)}
.bdt-hsf .bootstrap-select{width:100%!important;display:block!important;position:relative}
.bdt-hsf .bootstrap-select>.dropdown-toggle,.bdt-hsf .bootstrap-select>.dropdown-menu{display:none!important}
.bdt-hsf .bootstrap-select>select{position:static!important;opacity:1!important;width:100%!important;height:auto!important;min-height:48px;left:auto!important;bottom:auto!important;display:block!important;z-index:auto!important;pointer-events:auto!important}
.bdt-hsf select{width:100%!important;font-size:16px!important}
.bdt-hsf textarea{min-height:150px;resize:vertical}
body .bdt-hsf.bdt-bew input::placeholder,body .bdt-hsf.bdt-bew textarea::placeholder{color:var(--lp-mu);opacity:1}
body .bdt-hsf.bdt-bew input:focus,body .bdt-hsf.bdt-bew select:focus,body .bdt-hsf.bdt-bew textarea:focus{outline:2px solid var(--bl-focus)!important;outline-offset:2px;border-color:var(--bl-focus)!important}
.bdt-hsf fieldset{border:0;margin:0;padding:0;min-width:0}
body .bdt-hsf.bdt-bew .opt{padding-left:0!important;display:flex!important;align-items:flex-start;gap:10px;margin:0 0 8px;color:var(--lp-tx);font-weight:400;cursor:pointer}
body .bdt-hsf.bdt-bew .opt input{appearance:none!important;-webkit-appearance:none!important;opacity:1!important;visibility:visible!important;position:static!important;pointer-events:auto!important;flex:0 0 20px;width:20px!important;height:20px!important;min-height:0!important;padding:0!important;margin:2px 0 0!important;border:2px solid var(--lp-mu)!important;border-radius:0!important;background:0 0!important;display:grid;place-content:center;cursor:pointer}
.bdt-hsf .opt input::before{display:none!important}
body .bdt-hsf.bdt-bew .opt input:checked{border-color:var(--lp-p2)!important;background:0 0!important}
body .bdt-hsf.bdt-bew .opt input:checked::after{content:"";width:10px;height:10px;background:var(--lp-p2)}
.bdt-hsf .opt input[type=radio]:checked::after{width:8px;height:8px}
body .bdt-hsf.bdt-bew .opt input:focus-visible{outline:2px solid var(--bl-focus)!important;outline-offset:2px}
/* Fehler: Farbe über --bl-err-bar statt --lp-h; Form (2px, links 6px, X-Icon aus bl.css) wie im CD. */
body .bdt-hsf.bdt-bew .err{display:block;min-height:0;color:var(--bl-err-bar)!important;font-size:14px;font-weight:500;margin:6px 0 0}
body .bdt-hsf.bdt-bew .f [aria-invalid=true][aria-invalid]{border:2px solid var(--bl-err-bar)!important;border-left-width:6px!important}
body .bdt-hsf.bdt-bew .f .opt input[aria-invalid=true][aria-invalid],body .bdt-hsf.bdt-bew .f altcha-widget input[aria-invalid=true][aria-invalid]{border-width:2px!important}
.bdt-hsf .bdt-hsf-act{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:6px}
.bdt-hsf .bdt-hsf-act .btn-default{border-radius:0}
.bdt-hsf .bdt-hsf-act .btn-default[disabled],.bdt-hsf .bdt-hsf-act .btn-default[aria-disabled=true]{opacity:.6;cursor:progress}
body .bdt-hsf.bdt-bew a,body .bdt-hsf.bdt-bew .opt a{color:var(--bl-lnk)!important;text-decoration:underline}
.bdt-hsf .opt-f .err{margin-left:30px}
@media (max-width:575px){body .bdt-hsf.bdt-bew{padding:22px 16px}.bdt-hsf .bdt-hsf-fields{grid-template-columns:1fr}.bdt-hsf .f.half{grid-column:1/-1}.bdt-hsf .bdt-hsf-act .btn-default{width:100%;justify-content:center}}
/* Ergänzungen Bewerbungsformular */
.bdt-bew .hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
body .bdt-hsf.bdt-bew input[type=file]{width:100%;box-sizing:border-box;color:var(--lp-tx);font:400 15px/1.4 var(--bl-ui),Arial,sans-serif;padding:10px 0}
body .bdt-hsf.bdt-bew .bew-preview{font-size:14px;color:var(--lp-tx)!important;margin:6px 0 0}
body .bdt-hsf.bdt-bew .bew-preview q{color:var(--lp-h);quotes:"„" "“"}
.bdt-bew .bew-newtab{white-space:nowrap}
/* Fehlerzusammenfassung: Fokus per Skript (tabindex=-1). */
body .bdt-hsf.bdt-bew .bew-summary{margin:0 0 22px;padding:16px 18px;border:2px solid var(--bl-err-bar);border-left-width:6px;background:var(--lp-card2);color:var(--lp-h)}
body .bdt-hsf.bdt-bew .bew-summary[hidden]{display:none}
body .bdt-hsf.bdt-bew .bew-summary:focus{outline:2px solid var(--bl-focus)!important;outline-offset:2px}
body .bdt-hsf.bdt-bew .bew-summary h2{margin:0 0 8px;font-size:17px;color:var(--lp-h)}
body .bdt-hsf.bdt-bew .bew-summary ul{margin:0;padding-left:20px}
body .bdt-hsf.bdt-bew .bew-summary li{margin:4px 0;color:var(--lp-tx)}
body .bdt-hsf.bdt-bew .bew-status{margin:16px 0 0;font-size:15px;color:var(--lp-tx)}
body .bdt-hsf.bdt-bew .bew-status:empty{display:none}
body .bdt-hsf.bdt-bew .bew-status.is-error{color:var(--lp-h);border-left:6px solid var(--bl-err-bar);padding-left:12px}
/* Erfolg ohne Fehlerbalken: Häkchen in Primärfarbe statt linker Kante. */
body .bdt-hsf.bdt-bew .bew-status.is-ok{color:var(--lp-h);border-left:0;padding-left:0}
/* Häkchen nur optisch: Alternativtext leer (zweite Angabe); ältere Browser nutzen die erste. */
body .bdt-hsf.bdt-bew .bew-status.is-ok::before{content:"✓\00a0";content:"✓\00a0" / "";color:var(--lp-p2);font-weight:700}
body .bdt-hsf.bdt-bew .bew-mail{font-size:14px;margin:14px 0 0;color:var(--lp-mu)}
.bdt-bew altcha-widget{display:block;margin:4px 0 18px;max-width:320px}
/* ALTCHA 3.5 (light DOM): CD-Tokens statt der Widget-Standardfarben (light-dark()), Hell/Dunkel folgt dem
   Seitenumschalter über color-scheme. Kontraste prüft tests/test_form_a11y.py (AltchaKontrastTest). */
.bdt-bew altcha-widget{--altcha-color-base:var(--lp-card2);--altcha-color-base-content:var(--lp-tx);--altcha-color-primary:var(--lp-p2);--altcha-color-primary-content:var(--lp-card);--altcha-color-success:var(--lp-p2);--altcha-color-success-content:var(--lp-card);--altcha-color-error:var(--bl-err-bar);--altcha-color-error-content:var(--lp-card);--altcha-color-neutral:var(--lp-mu);--altcha-color-neutral-content:var(--lp-tx);--altcha-border-color:var(--lp-mu);--altcha-checkbox-border-color:var(--lp-mu);--altcha-checkbox-outline-color:var(--bl-focus);--altcha-checkbox-size:24px;--altcha-border-radius:0;--altcha-shadow:none;color-scheme:dark}
body.active-light-mode .bdt-bew altcha-widget{color-scheme:light}
/* page.css blendet alle Checkboxen aus (input[type=checkbox]{opacity:0;position:absolute}). */
.bdt-bew altcha-widget input[type=checkbox]{opacity:1!important;position:static!important;width:24px;height:24px}
.bdt-bew altcha-widget input[type=checkbox]:not(:checked){border-color:var(--lp-mu)!important;background-color:var(--lp-card)!important}
.bdt-bew altcha-widget .altcha-checkbox[data-loading=true] input[type=checkbox]{opacity:0!important}
.bdt-bew altcha-widget input[type=checkbox]:checked{background-color:var(--lp-p2)!important;border-color:var(--lp-p2)!important}
.bdt-bew altcha-widget input[type=checkbox]:focus-visible{outline:2px solid var(--bl-focus)!important;outline-offset:2px}
/* Klick auf die Mitte trifft sonst das Häkchen-SVG statt der Checkbox. */
.bdt-bew altcha-widget .altcha-checkbox svg{pointer-events:none}
/* Fehler-Popover des Widgets (role=alert, Text "error"/"expired") doppelt: steht schon in #bew-altcha-e und
   #bew-status. Nur die Variante error: dasselbe Popover-Bauteil trägt auch den Code-Challenge-Dialog. */
.bdt-bew altcha-widget .altcha-popover[data-variant=error]{display:none!important}
/* Rückfall, falls configuration (hideFooter/hideLogo) nicht greift. */
.bdt-bew altcha-widget .altcha-footer,.bdt-bew altcha-widget .altcha-logo{display:none!important}
.bdt-bew .bew-altcha-fallback{margin:4px 0 18px;padding:12px 14px;border:2px solid var(--bl-err-bar);border-left-width:6px;background:var(--lp-card2);color:var(--lp-h)}
.bdt-bew .bew-altcha-fallback[hidden]{display:none}
.bdt-bew button[disabled],.bdt-bew button[aria-disabled=true]{opacity:.6;cursor:progress}
@media (max-width:767px){.bdt-hsf .bdt-hsf-fields{grid-template-columns:1fr}body .bdt-hsf.bdt-bew{padding:24px}}
.bdt-bew .f[hidden]{display:none!important}
