/* Versicherungswerk Formular-Engine, CD: Blau #002050, Gold #F0A000 */
:root{--blau:#002050;--gold:#F0A000;--text:#1A1A1A;--linie:#D0D4DC;--grau:#666;--fehler:#B00020;--bg:#F5F6F8}
*{box-sizing:border-box}
body{margin:0;font-family:"Segoe UI",Inter,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);font-size:16px;line-height:1.5}
.vw-top{background:#fff;border-bottom:3px solid var(--gold)}
.vw-top-in{max-width:820px;margin:0 auto;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.vw-top img{height:38px;width:auto;display:block}
.vw-top a.vw-back{color:var(--blau);font-size:14px;text-decoration:none}
.vw-top a.vw-back:hover{text-decoration:underline}
.vw-main{max-width:820px;margin:0 auto;padding:28px 16px 48px}
.vw-main h1{color:var(--blau);font-weight:600;font-size:28px;line-height:1.2;margin:0 0 8px}
.vw-sub{color:var(--grau);margin:0 0 22px}
.vw-progress{margin:0 0 16px}
.vw-progress-text{font-size:14px;color:var(--blau);font-weight:600;margin-bottom:6px}
.vw-track{height:6px;background:var(--linie);border-radius:3px;overflow:hidden}
.vw-fill{height:100%;background:var(--gold);transition:width .3s}
.vw-card{background:#fff;border:1px solid var(--linie);border-left:4px solid var(--gold);border-radius:6px;padding:22px 22px 18px}
.vw-card h2{color:var(--blau);font-size:20px;font-weight:600;margin:0 0 14px;outline:none}
.vw-note{color:var(--grau);margin:-6px 0 14px;font-size:15px}
.vw-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.vw-full{grid-column:1/-1}
.vw-spacer{display:none}
@media (min-width:640px){.vw-spacer{display:block}}
.vw-hidden{display:none!important}
.vw-label{display:block;font-weight:600;font-size:14px;margin-bottom:5px}
.vw-req{color:var(--fehler)}
.vw-field input[type=text],.vw-field input[type=email],.vw-field input[type=tel],.vw-field input[type=date],.vw-field input[type=number],.vw-field select,.vw-field textarea{width:100%;font:inherit;padding:10px 11px;border:1px solid #B8BEC9;border-radius:4px;background:#fff;color:var(--text)}
.vw-field input:focus,.vw-field select:focus,.vw-field textarea:focus{outline:2px solid var(--blau);outline-offset:1px;border-color:var(--blau)}
[aria-invalid=true]{border-color:var(--fehler)!important;background:#FFF6F7!important}
.vw-choices[aria-invalid=true]{background:transparent!important;border-left:3px solid var(--fehler);padding-left:8px}
.vw-choices{display:flex;flex-wrap:wrap;gap:8px 18px}
.vw-choice{display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:15px;padding:4px 0}
.vw-choice input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--blau);flex:none}
.vw-err{color:var(--fehler);font-size:13.5px;min-height:0;margin-top:4px}
.vw-err:empty{display:none}
.vw-hint{color:var(--grau);font-size:13px;margin-top:4px}
.vw-static{background:#FFF8E6;border-left:3px solid var(--gold);padding:10px 12px;font-size:14.5px}
.vw-filename{font-size:13px;color:var(--grau);margin-bottom:4px}
.vw-nav{display:flex;justify-content:space-between;gap:12px;margin-top:16px}
.vw-btn{display:inline-block;background:var(--blau);color:#fff;border:0;border-radius:4px;padding:12px 22px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.vw-btn:hover{background:#0A3470}
.vw-btn:disabled{opacity:.6;cursor:wait}
.vw-btn2{background:#fff;color:var(--blau);border:1px solid var(--blau)}
.vw-btn2:hover{background:#EEF1F6}
.vw-link{background:none;border:0;color:var(--blau);text-decoration:underline;cursor:pointer;font:inherit;font-size:14px;padding:0}
.vw-errsum{border:1px solid var(--fehler);background:#FFF6F7;border-radius:4px;padding:12px 14px;margin:0 0 16px;outline:none}
.vw-errsum ul{margin:6px 0 0;padding-left:18px}
.vw-errsum a{color:var(--fehler)}
.vw-errsum p{margin:6px 0}
.vw-restored{background:#EEF1F6;border-radius:4px;padding:8px 12px;margin-bottom:12px;font-size:14px}
.vw-summary h3{color:var(--blau);font-size:16px;margin:0}
.vw-sumsec{border-bottom:1px solid var(--linie);padding:12px 0}
.vw-sumhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.vw-summary dl{display:grid;grid-template-columns:minmax(140px,40%) 1fr;gap:3px 14px;margin:0;font-size:14.5px}
.vw-summary dt{color:var(--grau)}
.vw-summary dd{margin:0;word-break:break-word}
.vw-muted{color:var(--grau)}
.vw-final{padding-top:16px;display:flex;flex-direction:column;gap:10px}
.vw-final a{color:var(--blau)}
.vw-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.vw-done p{margin:0 0 12px}
.vw-foot{max-width:820px;margin:0 auto;padding:0 16px 30px;color:var(--grau);font-size:12px}
.vw-foot a{color:var(--grau)}
@media (max-width:639px){.vw-grid{grid-template-columns:1fr}.vw-main h1{font-size:23px}.vw-card{padding:18px 14px}.vw-summary dl{grid-template-columns:1fr}.vw-summary dd{margin-bottom:6px}}
/* v1.3: Dateivorschau, Uhrzeit */
.vw-filelist{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}
.vw-fileitem{position:relative;width:76px;height:76px;border:1px solid var(--linie,#D0D4DC);border-radius:6px;overflow:hidden;background:#fff}
.vw-fileitem img{width:100%;height:100%;object-fit:cover;display:block}
.vw-filepdf{display:flex;align-items:center;justify-content:center;height:100%;font-size:13px;font-weight:600;color:#002050}
.vw-fileremove{position:absolute;top:2px;right:2px;width:24px;height:24px;border:0;border-radius:12px;background:rgba(0,32,80,.85);color:#fff;font-size:16px;line-height:24px;cursor:pointer;padding:0}
.vw-filelist .vw-filename{flex-basis:100%}
.vw-time{display:flex;align-items:center;gap:6px}
.vw-time select{width:auto;min-width:96px}

/* v1.4 Drag-and-drop (große Ablagefläche) */
.vw-drop{border:2px dashed #9AA3B2;border-radius:8px;padding:30px 16px;min-height:150px;background:#FAFBFC;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;transition:background .15s,border-color .15s}
.vw-drop::before{content:"";width:34px;height:34px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23002050' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V4'/%3E%3Cpath d='M7 9l5-5 5 5'/%3E%3Cpath d='M4 16v3a1 1 0 001 1h14a1 1 0 001-1v-3'/%3E%3C/svg%3E")}
.vw-drop-on{border-color:var(--gold);background:#FFF6E0}
.vw-drop-txt{font-size:16px;color:var(--blau);font-weight:600;margin:0}
.vw-drop input[type=file]{max-width:100%}
@media (hover:none){.vw-drop{border:0;padding:0;min-height:0;background:transparent;align-items:flex-start;text-align:left}.vw-drop::before,.vw-drop-txt{display:none}}
/* v1.4 Einbettung */
.vw-embed body{background:#fff}
.vw-embed .vw-top,.vw-embed .vw-foot,.vw-embed .vw-main>h1,.vw-embed .vw-sub{display:none}
.vw-embed .vw-main{padding:8px 4px 12px}
