.vrg-rennersdorf-generator{--blue:#173a63;--blue2:#0f2a48;--bg:#f4f7fb;--card:#fff;--text:#152033;--muted:#5d6878;--line:#d6dde8;--accent:#2f6b4f;--warn:#a34218;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);border:1px solid var(--line);max-width:1100px;margin:24px auto;box-shadow:0 10px 26px rgba(0,0,0,.08)}
.vrg-rennersdorf-generator *{box-sizing:border-box}.vrg-rennersdorf-generator .vrg-topbar{background:var(--blue);color:#fff;padding:18px 22px;box-shadow:0 2px 6px rgba(0,0,0,.25)}.vrg-rennersdorf-generator .vrg-topbar h2{font-size:22px;line-height:1.25;margin:0 0 4px}.vrg-rennersdorf-generator .vrg-topbar p{margin:0;font-size:14px;opacity:.92}.vrg-rennersdorf-generator .vrg-view{padding:24px;max-width:940px;margin:0 auto}.vrg-rennersdorf-generator .vrg-card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:18px;margin:0 0 18px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.vrg-rennersdorf-generator h3{font-size:18px;margin:0 0 14px;color:#10243d}.vrg-rennersdorf-generator p{font-size:15px;line-height:1.55;margin:0 0 12px}.vrg-rennersdorf-generator .vrg-muted{font-size:13px;color:var(--muted)}.vrg-rennersdorf-generator .vrg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vrg-rennersdorf-generator .vrg-full{grid-column:1/-1}.vrg-rennersdorf-generator label{font-size:13px;color:#526070}.vrg-rennersdorf-generator input[type=text],.vrg-rennersdorf-generator input[type=email],.vrg-rennersdorf-generator textarea,.vrg-rennersdorf-generator select{width:100%;font:inherit;font-size:15px;border:1px solid #bac4d1;border-radius:4px;background:#fff;padding:10px;color:#111827;margin-top:4px}.vrg-rennersdorf-generator textarea{min-height:82px;resize:vertical}.vrg-rennersdorf-generator .vrg-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vrg-rennersdorf-generator .vrg-check{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);background:#fff;border-radius:6px;padding:11px;line-height:1.4;font-size:14px;cursor:pointer;color:var(--text)}.vrg-rennersdorf-generator .vrg-check input{margin-top:3px;flex:0 0 auto}.vrg-rennersdorf-generator .vrg-module{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;background:#fff;margin:10px 0;padding:12px;cursor:pointer;color:var(--text)}.vrg-rennersdorf-generator .vrg-module input{margin-top:4px;flex:0 0 auto}.vrg-rennersdorf-generator .vrg-module strong{display:block;margin-bottom:3px}.vrg-rennersdorf-generator .vrg-module small{display:block;font-size:13px;color:var(--muted);line-height:1.45}.vrg-rennersdorf-generator .vrg-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.vrg-rennersdorf-generator button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:12px 18px;font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.22);text-transform:uppercase}.vrg-rennersdorf-generator button:hover{background:var(--blue2)}.vrg-rennersdorf-generator button.vrg-secondary{background:#fff;color:var(--blue);border:1px solid var(--blue);box-shadow:none}.vrg-rennersdorf-generator button.vrg-secondary:hover{background:#eef3f9}.vrg-rennersdorf-generator .vrg-alert{padding:12px;border-radius:6px;margin:0 0 16px}.vrg-rennersdorf-generator .vrg-alert-warning{border-left:4px solid var(--warn);background:#fff7ed}.vrg-rennersdorf-generator .vrg-alert-note{border-left:4px solid var(--accent);background:#eef8f2}.vrg-rennersdorf-generator .vrg-error{display:none;color:#9a3412;font-size:14px;margin-top:10px}.vrg-rennersdorf-generator .vrg-output{width:100%;min-height:380px;border:1px dashed #aeb8c5;border-radius:4px;padding:14px;background:#fff;font-family:"Courier New",monospace;font-size:14px;line-height:1.5;white-space:pre-wrap}@media(max-width:760px){.vrg-rennersdorf-generator .vrg-view{padding:16px}.vrg-rennersdorf-generator .vrg-grid,.vrg-rennersdorf-generator .vrg-check-grid{grid-template-columns:1fr}.vrg-rennersdorf-generator .vrg-actions{flex-direction:column;align-items:flex-start}}
.vrg-rennersdorf-generator .vrg-alert-deadline{border:2px solid #a34218;border-left:8px solid #a34218;background:#fff3e6;color:#3b1d0c;box-shadow:0 2px 8px rgba(163,66,24,.18)}
.vrg-rennersdorf-generator .vrg-alert-deadline p{margin:0 0 6px}.vrg-rennersdorf-generator .vrg-alert-deadline p:last-child{margin-bottom:0}.vrg-rennersdorf-generator .vrg-deadline-date{font-weight:700}
.vrg-rennersdorf-generator .vrg-personal-grid{margin:10px 0 14px}
.vrg-rennersdorf-generator .vrg-personal-grid .vrg-check{background:#fbfdff}
.vrg-rennersdorf-generator .vrg-language-gateway{background:#fff;border-bottom:1px solid var(--line);padding:18px 22px 16px;text-align:center}
.vrg-rennersdorf-generator .vrg-language-gateway h2{font-size:20px;line-height:1.25;margin:0 0 8px;color:#10243d}
.vrg-rennersdorf-generator .vrg-language-gateway p{max-width:820px;margin:0 auto 14px;color:#34445a;font-size:15px}
.vrg-rennersdorf-generator .vrg-language-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.vrg-rennersdorf-generator .vrg-language-buttons button{background:#fff;color:var(--blue);border:1px solid #9fb0c4;border-radius:999px;box-shadow:none;padding:9px 13px;text-transform:none;font-weight:700;font-size:14px}
.vrg-rennersdorf-generator .vrg-language-buttons button:hover,.vrg-rennersdorf-generator .vrg-language-buttons button.is-active{background:var(--blue);color:#fff;border-color:var(--blue)}
.vrg-rennersdorf-generator .vrg-language-hidden{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:760px){.vrg-rennersdorf-generator .vrg-language-gateway{padding:16px 14px}.vrg-rennersdorf-generator .vrg-language-buttons{justify-content:flex-start}.vrg-rennersdorf-generator .vrg-language-buttons button{flex:1 1 30%;min-width:96px}}

.vrg-rennersdorf-generator .vrg-intro-card .vrg-intro-short{font-size:16px;line-height:1.65;color:#203047;margin-bottom:12px}
.vrg-rennersdorf-generator .vrg-intro-details{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.vrg-rennersdorf-generator .vrg-intro-details summary{cursor:pointer;color:#10243d;font-weight:800;line-height:1.4;margin-bottom:10px}
.vrg-rennersdorf-generator .vrg-intro-details p{font-size:15px;line-height:1.65;color:#26364b;margin:0 0 10px}

/* Optimierter integrierter Einstieg */
.vrg-rennersdorf-generator .vrg-intro-card{border-left:5px solid #173a63}
.vrg-rennersdorf-generator .vrg-intro-card h3{font-size:20px}
.vrg-rennersdorf-generator .vrg-intro-details{border-top:1px solid var(--line);padding-top:12px;margin-top:14px}
.vrg-rennersdorf-generator .vrg-intro-details summary{display:flex;align-items:center;gap:9px;cursor:pointer;color:#10243d;font-weight:800;line-height:1.4;margin-bottom:10px;padding:10px 12px;background:#f5f8fc;border:1px solid var(--line);border-radius:7px;list-style:none}
.vrg-rennersdorf-generator .vrg-intro-details summary::-webkit-details-marker{display:none}
.vrg-rennersdorf-generator .vrg-intro-details summary::before{content:'▸';font-size:14px;color:#173a63;transition:transform .15s ease}
.vrg-rennersdorf-generator .vrg-intro-details[open] summary::before{content:'▾'}
.vrg-rennersdorf-generator .vrg-intro-details summary:hover{background:#eef3f9}

/* Kampagnen-/Teilen-Panel */
.vrg-rennersdorf-generator .vrg-share-card{border-left:5px solid #2f6b4f;background:#fbfefc}
.vrg-rennersdorf-generator .vrg-share-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:18px;align-items:start}
.vrg-rennersdorf-generator .vrg-share-status{font-size:13px;color:#2f6b4f;margin:8px 0 0;font-weight:700}
.vrg-rennersdorf-generator .vrg-qr{text-align:center;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px}
.vrg-rennersdorf-generator .vrg-qr img{max-width:100%;height:auto;display:block;margin:0 auto 8px}
.vrg-rennersdorf-generator .vrg-qr small{display:block;color:var(--muted);font-size:12px;line-height:1.35}
@media(max-width:760px){.vrg-rennersdorf-generator .vrg-share-grid{grid-template-columns:1fr}.vrg-rennersdorf-generator .vrg-qr{max-width:260px}}


/* UX 3.5.77: Fortschritt, kompakter Einstieg, bessere Mobilbedienung */
.vrg-rennersdorf-generator .vrg-progress{margin:0 0 18px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;position:sticky;top:0;z-index:5;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.vrg-rennersdorf-generator .vrg-progress ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.vrg-rennersdorf-generator .vrg-progress li{font-size:12px;line-height:1.2;color:#6b7280;background:#f4f7fb;border:1px solid #e1e7f0;border-radius:999px;padding:7px 8px;text-align:center;font-weight:700}
.vrg-rennersdorf-generator .vrg-progress li.is-active{background:var(--blue);color:#fff;border-color:var(--blue)}
.vrg-rennersdorf-generator .vrg-progress li.is-done{background:#e8f4ee;color:#1d5d42;border-color:#b7dcc8}
.vrg-rennersdorf-generator .vrg-quick-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 8px}
.vrg-rennersdorf-generator .vrg-quick-steps div{display:flex;gap:9px;align-items:center;background:#f4f7fb;border:1px solid var(--line);border-radius:9px;padding:10px}
.vrg-rennersdorf-generator .vrg-quick-steps strong{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:999px;background:var(--blue);color:#fff}
.vrg-rennersdorf-generator .vrg-quick-steps span{font-size:13px;font-weight:700;color:#243447}
.vrg-rennersdorf-generator .vrg-recommended{margin:0 0 12px}
.vrg-rennersdorf-generator .vrg-module-details{border:1px solid var(--line);border-radius:8px;padding:0;margin:0 0 14px;background:#fff}
.vrg-rennersdorf-generator .vrg-module-details>summary{cursor:pointer;font-weight:800;color:#10243d;background:#f5f8fc;padding:12px 14px;border-radius:8px;list-style:none}
.vrg-rennersdorf-generator .vrg-module-details>summary::-webkit-details-marker{display:none}
.vrg-rennersdorf-generator .vrg-module-details>summary::before{content:'▸';margin-right:8px;color:var(--blue)}
.vrg-rennersdorf-generator .vrg-module-details[open]>summary{border-bottom:1px solid var(--line);border-radius:8px 8px 0 0}
.vrg-rennersdorf-generator .vrg-module-details[open]>summary::before{content:'▾'}
.vrg-rennersdorf-generator .vrg-module-details .vrg-muted,.vrg-rennersdorf-generator .vrg-module-details .vrg-module{margin-left:12px;margin-right:12px}
.vrg-rennersdorf-generator .vrg-module-details .vrg-muted{margin-top:12px}
.vrg-rennersdorf-generator .vrg-submit-card{border-left:5px solid var(--accent)}
.vrg-rennersdorf-generator .vrg-primary-action{font-size:16px;padding:14px 22px}
.vrg-rennersdorf-generator .vrg-result-hero{border-left:6px solid var(--accent);background:#fbfefc}
.vrg-rennersdorf-generator .vrg-result-actions button:first-child{font-size:16px}
.vrg-rennersdorf-generator .vrg-submit-checklist{border-left:6px solid #a34218}
.vrg-rennersdorf-generator .vrg-submit-checklist ol{margin:0 0 14px 22px;padding:0}
.vrg-rennersdorf-generator .vrg-submit-checklist li{font-size:15px;line-height:1.55;margin:0 0 7px}
.vrg-rennersdorf-generator .is-invalid-field{outline:2px solid #b42318!important;outline-offset:2px}
@media(max-width:760px){
  .vrg-rennersdorf-generator .vrg-progress{top:0;border-radius:0;margin:0 -16px 16px}
  .vrg-rennersdorf-generator .vrg-progress ol{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}
  .vrg-rennersdorf-generator .vrg-progress li{font-size:11px;padding:7px 3px}
  .vrg-rennersdorf-generator .vrg-progress li span{display:none}
  .vrg-rennersdorf-generator .vrg-quick-steps{grid-template-columns:1fr}
  .vrg-rennersdorf-generator button{width:100%;min-height:46px}
  .vrg-rennersdorf-generator .vrg-actions{width:100%;align-items:stretch}
  .vrg-rennersdorf-generator .vrg-check,.vrg-rennersdorf-generator .vrg-module{padding:13px;min-height:48px}
  .vrg-rennersdorf-generator .vrg-submit-actions{position:sticky;bottom:0;background:rgba(244,247,251,.96);padding:10px;border-top:1px solid var(--line);margin-left:-18px;margin-right:-18px;margin-bottom:-18px;z-index:6}
  .vrg-rennersdorf-generator .vrg-output{min-height:300px;font-size:13px}
}


/* 3.5.79: stabileres Scroll-to-error auf Smartphones */
.vrg-rennersdorf-generator label.is-invalid-field,
.vrg-rennersdorf-generator .vrg-card.is-invalid-field{
  box-shadow:0 0 0 3px rgba(180,35,24,.16);
  border-radius:8px;
}
.vrg-rennersdorf-generator input.is-invalid-field,
.vrg-rennersdorf-generator select.is-invalid-field,
.vrg-rennersdorf-generator textarea.is-invalid-field{
  scroll-margin-top:110px;
  scroll-margin-bottom:120px;
}
@media(max-width:760px){
  .vrg-rennersdorf-generator input.is-invalid-field,
  .vrg-rennersdorf-generator select.is-invalid-field,
  .vrg-rennersdorf-generator textarea.is-invalid-field,
  .vrg-rennersdorf-generator label.is-invalid-field{
    scroll-margin-top:95px;
    scroll-margin-bottom:150px;
  }
}


/* 3.5.83: Kompaktfassung als Standard, Langfassung optional */
.vrg-rennersdorf-generator .vrg-compact-note{font-size:14px;line-height:1.45}
.vrg-rennersdorf-generator .vrg-result-actions button[data-vrg-download-doc]{
  font-size:16px;
  padding:14px 22px;
  box-shadow:0 3px 10px rgba(13,58,97,.16);
}
.vrg-rennersdorf-generator .vrg-result-actions button[data-vrg-download-full-doc],
.vrg-rennersdorf-generator .vrg-result-actions button[data-vrg-download-full-txt]{
  background:#fff;
  border:1px solid #b7c6d7;
  color:#243447;
}
.vrg-rennersdorf-generator textarea[hidden]{display:none!important}


/* 3.5.91: zweisprachige Anzeige des Erklärungstextes unterhalb des Generators */
.vrg-page-translation{
  margin:24px 0;
  padding:16px;
  border:1px solid #cfd8e3;
  border-left:6px solid #0d3a61;
  border-radius:10px;
  background:#f7fafc;
}
.vrg-page-translation-toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
}
.vrg-page-translation-toolbar strong{
  margin-right:auto;
  color:#0f172a;
}
.vrg-page-translation-toolbar button{
  border:1px solid #0d3a61;
  background:#fff;
  color:#0d3a61;
  border-radius:999px;
  padding:8px 12px;
  font-weight:700;
  cursor:pointer;
}
.vrg-page-translation-toolbar button.is-active{
  background:#0d3a61;
  color:#fff;
}
.vrg-page-translation-note{
  font-size:13px;
  line-height:1.45;
  color:#475569;
  margin-bottom:12px;
}
.vrg-page-translation-en h2{
  margin-top:8px;
}
.vrg-page-translation-en h3{
  margin-top:18px;
}
.vrg-page-translation-en p,
.vrg-page-translation-en li{
  line-height:1.65;
}
.vrg-page-translation-cta{
  display:inline-block;
  margin-top:8px;
  padding:10px 14px;
  border-radius:999px;
  background:#0d3a61;
  color:#fff!important;
  text-decoration:none;
  font-weight:800;
}
@media(max-width:760px){
  .vrg-page-translation{padding:14px;margin:18px 0}
  .vrg-page-translation-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .vrg-page-translation-toolbar strong{grid-column:1/-1}
  .vrg-page-translation-toolbar button{width:100%}
}
