/* Bewerberbogen (öffentlich und über Empfehlungslink) */
.bew-page{--bew-brand:#4c2a85;--bew-deep:#320e3b;--bew-soft:#f2ecfa;--bew-line:#e4dcef;--bew-ok:#3f7a4a;background:#faf9fc;color:var(--bew-deep)}
.bew-main{max-width:860px;padding-top:56px;padding-bottom:96px}
.bew-hero .eyebrow{margin:0 0 14px}
.bew-hero h1{margin:0 0 16px;font-size:clamp(34px,5vw,54px);line-height:1.1;letter-spacing:-.035em}
.bew-lead{margin:0;max-width:60ch;font-size:19px;line-height:1.55;color:#4a3d5c}
.bew-facts{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0;list-style:none}
.bew-facts li{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--bew-line);font-size:14px;font-weight:600}
.bew-facts li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--bew-ok)}
.bew-invalid{margin:28px 0 0;padding:18px 22px;border-radius:16px;line-height:1.55}
.bew-invalid p{margin:6px 0 0;font-size:15px;color:#4a3d5c}
.bew-invalid{background:#fff4f0;border:1px solid #f0c9bb}
.bew-progress{position:sticky;top:calc(var(--header-height,84px) + 8px);z-index:5;display:flex;align-items:center;gap:12px;margin:32px 0 18px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 6px 20px rgba(50,14,59,.08);backdrop-filter:blur(6px)}
.bew-progress-track{flex:1;height:6px;border-radius:6px;background:var(--bew-line);overflow:hidden}
.bew-progress-bar{display:block;height:100%;width:0;border-radius:6px;background:linear-gradient(90deg,var(--bew-brand),#8b5fc7);transition:width .4s cubic-bezier(.22,.7,.2,1)}
.bew-progress-text{flex:none;min-width:84px;text-align:right;font-size:13px;font-weight:700;color:var(--bew-brand)}
.bew-form{display:flex;flex-direction:column;gap:18px}
.bew-card{margin:0;padding:26px 28px 28px;border:1px solid var(--bew-line);border-radius:20px;background:#fff;box-shadow:0 2px 0 rgba(50,14,59,.02)}
.bew-card legend{float:left;width:100%;display:flex;align-items:center;gap:12px;margin:0 0 20px;padding:0;font-family:'Manrope',sans-serif;font-size:21px;font-weight:800;letter-spacing:-.01em}
.bew-card legend+*{clear:both}
.bew-step{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--bew-soft);color:var(--bew-brand);font-size:15px;transition:background-color .3s ease,color .3s ease}
.bew-card.is-complete .bew-step{background:var(--bew-ok);color:#fff}
.bew-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.bew-grid .span-2{grid-column:1/-1}
.bew-grid{align-items:start}
.bew-card label:not(.check){margin:0}
.bew-card .bew-grid+.bew-field,.bew-card .bew-field+.bew-field,.bew-card .bew-field+.bew-grid,.bew-card .bew-grid+.bew-grid{margin-top:22px}
.bew-card label:not(.chip):not(.level):not(.check),.bew-label{display:block;font-size:14px;font-weight:700;color:var(--bew-deep)}
.bew-card label:not(.chip):not(.level):not(.check)>:is(input,select,textarea){display:block;margin-top:7px}
.bew-label{display:block;margin-bottom:10px}
.bew-card input:not([type=checkbox]):not([type=radio]),.bew-card select,.bew-card textarea{width:100%;box-sizing:border-box;padding:12px 14px;border:1.5px solid #d9d0e6;border-radius:12px;background:#fdfcff;color:var(--bew-deep);font:400 16px/1.4 'Source Sans 3',sans-serif;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.bew-card textarea{resize:vertical;min-height:52px}
.bew-card input:focus,.bew-card select:focus,.bew-card textarea:focus{outline:0;border-color:var(--bew-brand);background:#fff;box-shadow:0 0 0 4px rgba(76,42,133,.12)}
.bew-card .is-invalid input,.bew-card input.is-invalid,.bew-card [data-required-group].is-invalid{box-shadow:0 0 0 3px rgba(196,72,48,.25);border-color:#c44830;border-radius:12px}
.req{color:#b0466a}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip,.level{position:relative;cursor:pointer}
.chip input,.level input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1.5px solid #d9d0e6;border-radius:999px;background:#fff;font-size:15px;font-weight:600;color:#4a3d5c;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s ease}
.chip span::before{content:"";width:16px;height:16px;border-radius:5px;border:1.5px solid #b9acd0;background:#fff center/11px no-repeat;transition:inherit}
.chips-radio .chip span::before{border-radius:50%}
.chip:hover span{border-color:var(--bew-brand)}
.chip input:checked+span{background:var(--bew-soft);border-color:var(--bew-brand);color:var(--bew-brand)}
.chip input:checked+span::before{border-color:var(--bew-brand);background-color:var(--bew-brand);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5'/%3E%3C/svg%3E")}
.chip input:focus-visible+span,.level input:focus-visible+span{outline:2px solid var(--bew-brand);outline-offset:2px}
.chip:active span{transform:scale(.97)}
.levels{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:6px;padding:6px;border-radius:16px;background:#f6f3fa}
.level span{display:grid;place-items:center;height:46px;border-radius:11px;font-family:'Manrope',sans-serif;font-size:15px;font-weight:800;color:#6c5c82;transition:background-color .25s ease,color .25s ease,box-shadow .25s ease,transform .15s ease}
.level:hover span{background:#fff}
.level input:checked+span{background:var(--lv,#4c2a85);color:#fff;box-shadow:0 6px 16px rgba(76,42,133,.25)}
.level:active span{transform:scale(.96)}
.levels .level:nth-of-type(1){--lv:#9c88c2}.levels .level:nth-of-type(2){--lv:#8a72b8}.levels .level:nth-of-type(3){--lv:#7a5dad}.levels .level:nth-of-type(4){--lv:#6a48a1}.levels .level:nth-of-type(5){--lv:#5b3794}.levels .level:nth-of-type(6){--lv:#4c2a85}.levels .level:nth-of-type(7){--lv:#320e3b}
.level-none span{font-family:'Source Sans 3',sans-serif;font-weight:700;font-size:14px}
.levels .level-none{--lv:#7b6894}
.level-wide span{font-family:'Source Sans 3',sans-serif;font-size:14px}
.bew-hint{margin:10px 0 0;font-size:13.5px;line-height:1.5;color:#6c5c82}
.bew-after-chip{margin-top:12px}
.bew-inline{display:flex;gap:10px}
.bew-inline select{max-width:150px}
.bew-inline-label{max-width:320px}
.bew-langs{display:flex;flex-direction:column;gap:10px}
.bew-lang-row{display:grid;grid-template-columns:minmax(0,1fr) 170px 44px;gap:10px;animation:bew-in .3s ease}
.bew-remove{border:1.5px solid #d9d0e6;border-radius:12px;background:#fff;color:#6c5c82;font-size:20px;cursor:pointer}
.bew-remove:hover{border-color:#c44830;color:#c44830}
.bew-add{margin-top:12px;padding:10px 16px;border:1.5px dashed #b9acd0;border-radius:12px;background:transparent;color:var(--bew-brand);font:700 15px 'Source Sans 3',sans-serif;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}
.bew-add:hover{background:var(--bew-soft);border-color:var(--bew-brand)}
/* Berufserfahrung: Stellenblöcke wie ein kurzer Lebenslauf */
.bew-nojobs{margin:10px 0 14px}
.bew-jobs{display:grid;gap:14px}
.bew-jobs[hidden],.bew-add[hidden],.bew-job-date[hidden]{display:none}
.bew-job{padding:16px 18px 4px;border:1.5px solid var(--bew-line);border-radius:16px;background:#fcfbfe;animation:bew-in .3s ease}
.bew-job-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.bew-job-title{font-size:15px;font-weight:800;color:var(--bew-deep)}
.bew-job-remove{padding:6px 12px;border:1.5px solid #d9d0e6;border-radius:10px;background:#fff;color:#6c5c82;font:700 14px 'Source Sans 3',sans-serif;cursor:pointer}
.bew-job-remove:hover{border-color:#c44830;color:#c44830}
.bew-job-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.bew-job-wide,.bew-job-now{grid-column:1/-1}
.bew-job-now{margin:0 0 12px}
.bew-sublabel{display:block;font-size:14px;font-weight:700;color:var(--bew-deep)}
.bew-month{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px;margin-top:7px}
.bew-card select.is-invalid{box-shadow:0 0 0 3px rgba(196,72,48,.25);border-color:#c44830}
@media(max-width:700px){.bew-job{padding:14px 14px 4px}.bew-job-grid{grid-template-columns:minmax(0,1fr)}}
.check{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start;margin:0 0 14px;font-size:15.5px;line-height:1.55;color:#3f3a45;cursor:pointer}
.check input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--bew-brand)}
.check a{color:var(--bew-brand);text-decoration:underline;text-underline-offset:2px}
.check.is-invalid span{color:#a03a26}
.bew-card-confirm{background:linear-gradient(180deg,#fff,#fbf9fe)}
.bew-submit{margin-top:14px;padding:16px 28px;font-size:17px;border:0;cursor:pointer;background:var(--bew-brand);color:#fff;border-radius:999px;box-shadow:0 10px 24px rgba(76,42,133,.25);transition:transform .2s ease,box-shadow .2s ease}
.bew-submit:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(76,42,133,.3)}
.bew-status{margin:14px 0 0;font-weight:600}
.bew-status.is-error{color:#a03a26}
.bew-preview{margin-top:28px;padding:26px 28px;border-radius:20px;background:#fff;border:2px solid var(--bew-ok)}
.bew-preview h2{margin:0;font-size:24px}
.bew-summary{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:8px 18px;margin:18px 0 0;font-size:15px}
.bew-summary dt{font-weight:700;color:#6c5c82}
.bew-summary dd{margin:0;white-space:pre-wrap}
.bew-summary .is-source{color:var(--bew-brand);font-weight:800}
[hidden]{display:none!important}
@keyframes bew-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:700px){.bew-main{padding-top:32px}.bew-card{padding:20px 18px 22px;border-radius:18px}.bew-grid{grid-template-columns:minmax(0,1fr)}.levels{grid-template-columns:repeat(4,minmax(0,1fr))}.levels .level-wide{grid-column:span 2}.bew-lang-row{grid-template-columns:minmax(0,1fr) 44px}.bew-lang-row select{grid-column:1;grid-row:2}.bew-lang-row .bew-remove{grid-row:1/3;grid-column:2}.bew-summary{grid-template-columns:minmax(0,1fr)}.bew-summary dd{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){.bew-page *{transition:none!important;animation:none!important}}
.bew-hint-inline{display:block;margin-top:6px;font-weight:400}
/* E-Mail-Bestätigung */
.bew-verify{width:min(460px,calc(100vw - 32px));padding:0;border:0;border-radius:24px;background:#fff;color:var(--bew-deep,#320e3b);box-shadow:0 30px 80px rgba(50,14,59,.3);opacity:0;transform:translateY(12px) scale(.98);transition:opacity .25s ease,transform .3s cubic-bezier(.22,.7,.2,1)}
.bew-verify.is-open{opacity:1;transform:none}
.bew-verify::backdrop{background:rgba(50,14,59,.45);backdrop-filter:blur(4px)}
.bew-verify-inner{padding:30px 28px 24px;text-align:center}
.bew-verify-icon,.bew-done-icon{display:block;width:56px;height:56px;margin:0 auto 14px;border-radius:18px;background:#f2ecfa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234c2a85' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2.5'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E") center/28px no-repeat}
.bew-verify h2{margin:0 0 10px;font-size:23px;line-height:1.25}
.bew-verify p{margin:0 0 12px;font-size:15.5px;line-height:1.55;color:#4a3d5c}
.bew-verify strong{color:var(--bew-deep,#320e3b);word-break:break-all}
.bew-verify-demo{padding:10px 12px;border-radius:12px;background:#fff4cb;font-size:14px!important}
.bew-code{display:block;width:100%;box-sizing:border-box;margin:16px 0 6px;padding:14px;border:2px solid #d9d0e6;border-radius:16px;font:800 30px/1 'Manrope',monospace;letter-spacing:.45em;text-align:center;text-indent:.45em;color:var(--bew-deep,#320e3b);transition:border-color .2s ease,box-shadow .2s ease}
.bew-code:focus{outline:0;border-color:#4c2a85;box-shadow:0 0 0 4px rgba(76,42,133,.14)}
.bew-code::placeholder{color:#d9d0e6}
.bew-verify-status{min-height:22px;font-weight:600;font-size:14.5px!important}
.bew-verify-status.is-error{color:#a03a26!important}
.bew-verify .bew-submit{width:100%;margin-top:4px}
.bew-verify .bew-submit:disabled{opacity:.6;cursor:wait;transform:none}
.bew-verify-links{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 18px;margin:14px 0 6px}
.bew-verify-links button{border:0;background:none;padding:4px;color:#4c2a85;font:700 14px 'Source Sans 3',sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.bew-verify-links button:disabled{color:#a99bbf;text-decoration:none;cursor:default}
.bew-done{margin-top:28px;padding:40px 28px;border-radius:24px;background:linear-gradient(135deg,#ecf6e8,#f2ecfa);text-align:center}
.bew-done-icon{background:#3f7a4a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/30px no-repeat}
.bew-done h2{margin:0 0 10px;font-size:clamp(24px,3vw,32px)}
.bew-done p{margin:0 auto;max-width:48ch;color:#4a3d5c;font-size:17px;line-height:1.55}
