/* Bewerbungsformular – ergänzt style.css und legal.css (gleiche Tokens wie die Webseite) */
.apply-form{display:block}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.field{display:grid;gap:7px;align-content:start}
.field.wide{grid-column:1/-1}
.field>span{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-l)}
.field em,.check em,.hint em{color:#ffd36b;font-style:normal}
.field small{text-transform:none;letter-spacing:0;color:#7f95c4}
.field input,.field select,.field textarea{width:100%;padding:12px 14px;border-radius:8px;border:1px solid rgba(100,160,255,.35);background:rgba(3,8,24,.7);
  color:var(--ice);font:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}
.field textarea{resize:vertical;min-height:110px;line-height:1.5}
.field select{appearance:none;cursor:pointer;padding-right:38px;
  background-image:linear-gradient(45deg,transparent 50%,var(--blue-l) 50%),linear-gradient(135deg,var(--blue-l) 50%,transparent 50%);
  background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-size:6px 6px;background-repeat:no-repeat}
.field select option{background:#0a1535;color:var(--ice)}
.field input::placeholder,.field textarea::placeholder{color:#5f75a3}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px rgba(63,140,255,.25)}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:#ff6b7a;box-shadow:0 0 0 3px rgba(255,107,122,.2)}
.count{justify-self:end;font-size:.78rem;color:#7f95c4;font-variant-numeric:tabular-nums}
.count.short{color:#ffd36b}

/* Honigtopf: aus dem Bild geschoben, nicht display:none (manche Bots prüfen das) */
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

.check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;color:#b5c8ee;font-size:.95rem}
.check input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--blue);cursor:pointer}
.check.invalid span{color:#ffb3bb}
.send-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:22px}
.send-row .btn{border:0;cursor:pointer;font-family:inherit}
.send-row .btn:disabled{opacity:.6;cursor:wait;transform:none}

.captcha{display:flex;align-items:center;gap:10px;font-size:.86rem;color:#8fa9d8}
.captcha i{flex:none;width:18px;height:18px;border-radius:50%;border:2px solid rgba(143,195,255,.45)}
.captcha.busy i{border-color:rgba(143,195,255,.25);border-top-color:var(--blue-l);animation:capspin .8s linear infinite}
.captcha.ok{color:#4fd6a4}
.captcha.ok i{border-color:#4fd6a4;background:radial-gradient(circle,#4fd6a4 45%,transparent 50%);box-shadow:0 0 10px rgba(79,214,164,.6)}
.captcha.err{color:#ffd36b}
.captcha.err i{border-color:#ffd36b}
@keyframes capspin{to{transform:rotate(360deg)}}

.form-msg{margin-top:16px;padding:12px 14px;border-radius:10px;background:rgba(255,107,122,.1);border:1px solid rgba(255,107,122,.5);color:#ffc2c8!important}
.legal .hint{margin-top:16px;font-size:.84rem;color:#7f95c4}
.apply-done{text-align:center}
.apply-done:focus{outline:0}
.apply-done .btn{text-decoration:none;color:#fff}

@media (max-width:760px){
  .fields{grid-template-columns:1fr}
  .send-row .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.captcha.busy i{animation:none}}
