.kjvlb-form-wrap{max-width:980px;margin:30px auto;padding:0 18px;font-family:Arial,Helvetica,sans-serif;color:#222;line-height:1.5}.kjvlb-header{border-bottom:3px solid #2f6f9f;text-align:center;padding:18px 10px 12px;margin-bottom:18px}.kjvlb-header h1{font-size:32px;margin:0 0 4px}.kjvlb-header p{margin:0;font-style:italic;font-weight:600}.kjvlb-meta{display:grid;grid-template-columns:1fr 1fr;background:#f1f3f6;border:1px solid #c7ccd3;margin-bottom:24px}.kjvlb-meta>div{padding:10px 12px;border-right:1px solid #c7ccd3;border-bottom:1px solid #c7ccd3}.kjvlb-meta>div:nth-child(2n){border-right:0}.kjvlb-meta>div:nth-last-child(-n+2){border-bottom:0}.kjvlb-form-wrap section{margin:0 0 28px}.kjvlb-form-wrap h2{font-size:21px;background:#f1f3f6;padding:9px 12px;margin:0 0 15px;border-left:5px solid #2f6f9f}.kjvlb-form-wrap h3{font-size:18px;margin:24px 0 12px}.kjvlb-grid{display:grid;gap:14px}.kjvlb-grid.two{grid-template-columns:1fr 1fr}.kjvlb-form-wrap label{display:block;font-weight:600}.kjvlb-form-wrap input[type=text],.kjvlb-form-wrap input[type=email],.kjvlb-form-wrap input[type=tel],.kjvlb-form-wrap input[type=date]{width:100%;box-sizing:border-box;padding:11px 12px;margin-top:5px;border:1px solid #aeb5bd;border-radius:3px;background:#fff;font:inherit}.kjvlb-table-wrap{overflow-x:auto}.kjvlb-form-wrap table{width:100%;border-collapse:collapse;font-size:15px}.kjvlb-form-wrap th,.kjvlb-form-wrap td{border:1px solid #c7ccd3;padding:9px;vertical-align:top;text-align:left}.kjvlb-form-wrap th{background:#f1f3f6}.kjvlb-check{display:flex!important;gap:10px;align-items:flex-start;margin:13px 0;font-weight:400!important}.kjvlb-check input{margin-top:5px;flex:0 0 auto}.kjvlb-important{padding:13px 15px;background:#fff8dc;border:1px solid #e4d17c;margin:15px 0}.kjvlb-sign-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:15px}.kjvlb-signature{display:block;width:100%;height:145px;border:1px solid #9ea6ae;background:#fff;touch-action:none;margin-top:6px;border-radius:3px}.kjvlb-clear{margin-top:6px;border:0;background:#eee;padding:6px 10px;border-radius:3px;cursor:pointer}.kjvlb-submit-section{border-top:1px solid #ccd1d6;padding-top:20px}.kjvlb-submit{background:#2f6f9f;color:#fff;border:0;border-radius:4px;padding:14px 24px;font-size:17px;font-weight:700;cursor:pointer}.kjvlb-small{font-size:13px;color:#555}.kjvlb-notice{padding:15px 18px;margin-bottom:20px;border-radius:4px}.kjvlb-notice.success{background:#e9f7ed;border:1px solid #9fd0aa}.kjvlb-notice.error{background:#fff0f0;border:1px solid #dfa0a0}@media(max-width:700px){.kjvlb-grid.two,.kjvlb-sign-grid{grid-template-columns:1fr}.kjvlb-meta{grid-template-columns:1fr}.kjvlb-meta>div,.kjvlb-meta>div:nth-child(2n){border-right:0;border-bottom:1px solid #c7ccd3}.kjvlb-meta>div:last-child{border-bottom:0}.kjvlb-header h1{font-size:27px}}
/* Sichtbare Unterschriftsfelder – Avada-kompatibel */
.kjvlb-form-wrap canvas.kjvlb-signature{
  display:block !important;
  width:100% !important;
  min-width:100% !important;
  height:170px !important;
  min-height:170px !important;
  box-sizing:border-box !important;
  border:2px solid #8b949e !important;
  border-radius:6px !important;
  background:#fff !important;
  box-shadow:inset 0 0 0 1px #e8eaed !important;
  cursor:crosshair !important;
  touch-action:none !important;
}
.kjvlb-signature-wrap{position:relative}
.kjvlb-signature-hint{
  display:block;
  margin:7px 0 4px;
  font-size:13px;
  font-weight:400;
  color:#555;
}
.kjvlb-form-wrap .kjvlb-clear{
  font-size:13px !important;
  padding:7px 12px !important;
}
/* Besonders gut sichtbarer Absende-Button */
.kjvlb-form-wrap .kjvlb-submit{
  display:block !important;
  width:100% !important;
  min-height:64px !important;
  padding:18px 30px !important;
  font-size:20px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  border-radius:6px !important;
  margin-top:18px !important;
  box-shadow:0 3px 8px rgba(0,0,0,.12) !important;
}
@media(max-width:700px){
  .kjvlb-form-wrap canvas.kjvlb-signature{
    height:180px !important;
    min-height:180px !important;
  }
  .kjvlb-form-wrap .kjvlb-submit{
    min-height:70px !important;
    font-size:19px !important;
    padding:18px 20px !important;
  }
}

/* V4: robuste Signaturfläche gegen Avada-Theme-Overrides */
.kjvlb-form-wrap canvas.kjvlb-signature {
  position: relative !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  height: 170px !important;
  min-height: 170px !important;
  max-height: none !important;
  background: #ffffff !important;
  border: 2px dashed #6f7780 !important;
  border-radius: 6px !important;
  box-sizing: border-box !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  cursor: crosshair !important;
  pointer-events: auto !important;
  touch-action: none !important;
  -webkit-user-select: none !important;
  user-select: none !important;
  z-index: 2 !important;
}
.kjvlb-form-wrap .kjvlb-signature-hint {
  display: block !important;
  visibility: visible !important;
  margin: 7px 0 5px !important;
  color: #444 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}
.kjvlb-form-wrap .kjvlb-submit {
  width: 100% !important;
  min-height: 70px !important;
  font-size: 21px !important;
  padding: 20px 30px !important;
}
@media(max-width:700px){
  .kjvlb-form-wrap canvas.kjvlb-signature {
    height: 185px !important;
    min-height: 185px !important;
  }
  .kjvlb-form-wrap .kjvlb-submit {
    min-height: 74px !important;
    font-size: 20px !important;
  }
}

/* Jagdtan für alle ausfüllbaren Felder */
.kjvlb-form-wrap input[type="text"],
.kjvlb-form-wrap input[type="email"],
.kjvlb-form-wrap input[type="tel"],
.kjvlb-form-wrap input[type="date"]{
  background-color:#b29a78 !important;
  border-color:#9d845f !important;
  color:#1f1b17 !important;
}
.kjvlb-form-wrap input::placeholder{
  color:#4a4035 !important;
  opacity:.85;
}
.kjvlb-form-wrap input:focus{
  background-color:#b29a78 !important;
  border-color:#806846 !important;
  box-shadow:0 0 0 2px rgba(178,154,120,.35) !important;
}
.kjvlb-form-wrap canvas.kjvlb-signature{
  background-color:#b29a78 !important;
  border-color:#806846 !important;
}

/* Safari / Avada: Signatur-Canvas als sichtbares Block-Element */
.kjvlb-form-wrap canvas.kjvlb-signature,
canvas.kjvlb-signature {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  height: 170px !important;
  min-height: 170px !important;
  max-height: none !important;
  box-sizing: border-box !important;
  background: #b29a78 !important;
  border: 2px solid #806846 !important;
  border-radius: 6px !important;
  margin: 8px 0 !important;
  padding: 0 !important;
  pointer-events: auto !important;
  touch-action: none !important;
  cursor: crosshair !important;
  -webkit-user-select: none !important;
  user-select: none !important;
}

/* FINAL TAN OVERRIDE – Avada/Fusion */
body .kjvlb-form-wrap input[type="text"],
body .kjvlb-form-wrap input[type="email"],
body .kjvlb-form-wrap input[type="tel"],
body .kjvlb-form-wrap input[type="date"],
body .kjvlb-form-wrap input[type="number"],
body .kjvlb-form-wrap input[type="search"],
body .kjvlb-form-wrap input[type="url"],
body .kjvlb-form-wrap input.kjvlb-input,
body .kjvlb-form-wrap .fusion-form-field input,
body .kjvlb-form-wrap .fusion-form input {
    background: #b29a78 !important;
    background-color: #b29a78 !important;
    background-image: none !important;
    color: #1f1b17 !important;
    border-color: #806846 !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

body .kjvlb-form-wrap input[type="text"]:focus,
body .kjvlb-form-wrap input[type="email"]:focus,
body .kjvlb-form-wrap input[type="tel"]:focus,
body .kjvlb-form-wrap input[type="date"]:focus,
body .kjvlb-form-wrap input[type="number"]:focus,
body .kjvlb-form-wrap input[type="search"]:focus,
body .kjvlb-form-wrap input[type="url"]:focus,
body .kjvlb-form-wrap .fusion-form-field input:focus,
body .kjvlb-form-wrap .fusion-form input:focus {
    background: #b29a78 !important;
    background-color: #b29a78 !important;
    color: #1f1b17 !important;
    border-color: #6f5a3d !important;
    box-shadow: 0 0 0 2px rgba(128,104,70,.25) !important;
}

/* Browser autofill can otherwise reintroduce a different background. */
body .kjvlb-form-wrap input:-webkit-autofill,
body .kjvlb-form-wrap input:-webkit-autofill:hover,
body .kjvlb-form-wrap input:-webkit-autofill:focus {
    -webkit-text-fill-color: #1f1b17 !important;
    -webkit-box-shadow: 0 0 0 1000px #b29a78 inset !important;
    box-shadow: 0 0 0 1000px #b29a78 inset !important;
    background-color: #b29a78 !important;
}

/* Sehr großer Absende-Button */
body .kjvlb-form-wrap .kjvlb-submit,
body .kjvlb-form-wrap button.kjvlb-submit {
    display: block !important;
    width: 100% !important;
    min-height: 90px !important;
    height: auto !important;
    padding: 28px 36px !important;
    margin: 25px 0 10px !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: .2px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
}
body .kjvlb-form-wrap .kjvlb-submit:hover,
body .kjvlb-form-wrap button.kjvlb-submit:hover {
    filter: brightness(.92) !important;
}
@media(max-width:700px){
    body .kjvlb-form-wrap .kjvlb-submit,
    body .kjvlb-form-wrap button.kjvlb-submit {
        min-height: 96px !important;
        padding: 28px 18px !important;
        font-size: 24px !important;
    }
}

/* V3.5 – persistent signature box exists in HTML, not created by JS */
body .kjvlb-form-wrap .kjvlb-signature-box{
  display:block !important;
  position:relative !important;
  width:100% !important;
  height:180px !important;
  min-height:180px !important;
  background:#b29a78 !important;
  border:2px solid #806846 !important;
  border-radius:7px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  margin:8px 0 !important;
}
body .kjvlb-form-wrap .kjvlb-signature-box .kjvlb-signature-image{
  display:none;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  pointer-events:none !important;
  z-index:1 !important;
}
body .kjvlb-form-wrap .kjvlb-signature-box canvas.kjvlb-signature{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  z-index:2 !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:crosshair !important;
}

/* V3.7 – once a signature src exists, always show the image */
body .kjvlb-form-wrap .kjvlb-signature-image[data-signature-synced="1"]{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}

/* V3.8 – signature is displayed as the container's background image */
body .kjvlb-form-wrap .kjvlb-signature-box{
  background-color:#b29a78 !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:contain !important;
  overflow:hidden !important;
}
body .kjvlb-form-wrap .kjvlb-signature-box.kjvlb-has-signature{
  background-color:#b29a78 !important;
}
body .kjvlb-form-wrap .kjvlb-signature-box canvas.kjvlb-signature{
  background:transparent !important;
}

/* V4.0 – isolated signature popup */
.kjvlb-signature-popup-trigger{display:flex!important;align-items:center!important;gap:14px!important;flex-wrap:wrap!important;margin:8px 0 10px!important}
.kjvlb-open-signature{min-height:52px!important;padding:12px 22px!important;font-size:18px!important;font-weight:700!important;border:0!important;border-radius:7px!important;cursor:pointer!important;background:#b29a78!important;color:#fff!important}
.kjvlb-signature-status{font-weight:600!important}
.kjvlb-popup-signature-box{display:none!important}
#kjvlb-signature-modal{display:none;position:fixed!important;inset:0!important;z-index:2147483647!important}
#kjvlb-signature-modal.is-open{display:block!important}
#kjvlb-signature-modal .kjvlb-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62)}
#kjvlb-signature-modal .kjvlb-modal-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 30px));background:#fff;border-radius:12px;padding:20px;box-sizing:border-box;box-shadow:0 15px 60px rgba(0,0,0,.35)}
#kjvlb-signature-modal .kjvlb-modal-head{display:flex;justify-content:space-between;align-items:center;font-size:22px}
#kjvlb-signature-modal .kjvlb-modal-close{border:0;background:transparent;font-size:32px;cursor:pointer;line-height:1}
#kjvlb-signature-modal .kjvlb-modal-help{margin:8px 0 14px}
#kjvlb-signature-modal .kjvlb-modal-signature{height:260px;border:2px solid #806846;border-radius:8px;background:#fff;overflow:hidden}
#kjvlb-signature-modal #kjvlb-popup-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}
#kjvlb-signature-modal .kjvlb-modal-actions{display:flex;justify-content:space-between;gap:12px;margin-top:14px}
#kjvlb-signature-modal .kjvlb-modal-actions button{min-height:50px;padding:12px 20px;border-radius:7px;font-size:17px;font-weight:700;cursor:pointer}
#kjvlb-signature-modal .kjvlb-modal-save{background:#b29a78!important;color:#fff!important;border:0!important}
#kjvlb-signature-modal .kjvlb-modal-clear{background:#eee!important;border:1px solid #aaa!important}
body.kjvlb-signature-modal-open{overflow:hidden!important}

/* V4.1 – independent popup drawing surface */
#kjvlb-signature-modal{display:none!important;position:fixed!important;inset:0!important;z-index:2147483647!important}
#kjvlb-signature-modal.is-open{display:block!important}
#kjvlb-signature-modal .kjvlb-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.65)!important}
#kjvlb-signature-modal .kjvlb-modal-panel{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:min(760px,calc(100vw - 24px))!important;background:#fff!important;border-radius:12px!important;padding:20px!important;box-sizing:border-box!important}
#kjvlb-signature-modal .kjvlb-modal-signature{height:280px!important;border:2px solid #806846!important;border-radius:8px!important;background:#fff!important;overflow:hidden!important}
#kjvlb-signature-modal #kjvlb-popup-canvas{display:block!important;width:100%!important;height:100%!important;background:#fff!important;touch-action:none!important;cursor:crosshair!important}
#kjvlb-signature-modal .kjvlb-modal-actions{display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:14px!important}
#kjvlb-signature-modal .kjvlb-modal-actions button{min-height:52px!important;padding:12px 20px!important;border-radius:7px!important;font-size:17px!important;font-weight:700!important;cursor:pointer!important}
#kjvlb-signature-modal .kjvlb-modal-save{background:#b29a78!important;color:#fff!important;border:0!important}
#kjvlb-signature-modal .kjvlb-modal-clear{background:#eee!important;border:1px solid #aaa!important}
#kjvlb-signature-modal .kjvlb-modal-close{border:0!important;background:transparent!important;font-size:32px!important;cursor:pointer!important}
body.kjvlb-signature-modal-open{overflow:hidden!important}

/* V4.2 – static modal + inline handlers */
#kjvlb-signature-modal.kjvlb-signature-modal-static{
  display:none!important;position:fixed!important;inset:0!important;
  z-index:2147483647!important;
}
#kjvlb-signature-modal.kjvlb-signature-modal-static.is-open{display:block!important}
#kjvlb-signature-modal .kjvlb-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.65)!important}
#kjvlb-signature-modal .kjvlb-modal-panel{
  position:absolute!important;left:50%!important;top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:min(760px,calc(100vw - 24px))!important;
  background:#fff!important;border-radius:12px!important;padding:20px!important;
  box-sizing:border-box!important;box-shadow:0 15px 60px rgba(0,0,0,.35)!important;
}
#kjvlb-signature-modal .kjvlb-modal-head{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:22px!important}
#kjvlb-signature-modal .kjvlb-modal-close{border:0!important;background:transparent!important;font-size:32px!important;cursor:pointer!important}
#kjvlb-signature-modal .kjvlb-modal-help{margin:8px 0 14px!important}
#kjvlb-signature-modal .kjvlb-modal-signature{
  height:280px!important;border:2px solid #806846!important;border-radius:8px!important;
  background:#fff!important;overflow:hidden!important;
}
#kjvlb-signature-modal #kjvlb-popup-canvas{
  display:block!important;width:100%!important;height:100%!important;
  background:#fff!important;touch-action:none!important;cursor:crosshair!important;
}
#kjvlb-signature-modal .kjvlb-modal-actions{
  display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:14px!important;
}
#kjvlb-signature-modal .kjvlb-modal-actions button{
  min-height:52px!important;padding:12px 20px!important;border-radius:7px!important;
  font-size:17px!important;font-weight:700!important;cursor:pointer!important;
}
#kjvlb-signature-modal .kjvlb-modal-save{background:#b29a78!important;color:#fff!important;border:0!important}
#kjvlb-signature-modal .kjvlb-modal-clear{background:#eee!important;border:1px solid #aaa!important}
body.kjvlb-signature-modal-open{overflow:hidden!important}

/* V4.4 – hide the old inline signature canvas/box; signing happens only in popup */
body .kjvlb-form-wrap .kjvlb-popup-signature-box{
  display:none !important;
}

/* V4.16 – final submit button */
.kjvlb-form-wrap button[type="submit"],
.kjvlb-form-wrap input[type="submit"],
.kjvlb-submit-button,
.kjvlb-form-submit {
  background-color: #c4c9b2 !important;
  border-color: #c4c9b2 !important;
}
