/* Vollmacht Mobile Viewport V4 — natural document flow + compact intake choices. */

.vm-intake-choice.is-done{
  border-color:rgba(102,187,72,.34)!important;
  background:rgba(102,187,72,.055)!important;
}
.vm-intake-choice__done{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  justify-self:start!important;
  min-height:24px!important;
  margin-top:4px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(102,187,72,.28)!important;
  background:rgba(102,187,72,.10)!important;
  color:var(--bw-readable-positive,#7fcf68)!important;
  font-size:.66rem!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
}

@media(max-width:700px){
  html.bw-vm-viewport-v4{
    width:100%!important;
    max-width:100%!important;
    min-height:100%!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-x:none!important;
    overscroll-behavior-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-padding-bottom:calc(var(--bw-vm-keyboard-gap,0px) + 24px)!important;
  }
  body.bw-vm-viewport-v4{
    width:100%!important;
    max-width:100%!important;
    min-height:100dvh!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-x:none!important;
    overscroll-behavior-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.bw-vm-viewport-v4 .bw-header{
    width:100vw!important;
    max-width:100vw!important;
    overflow-x:clip!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:calc(100dvh - var(--bw-vm-header-height,66px))!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    overflow-x:hidden!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .member-workspace{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:8px 8px 18px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    overflow-x:hidden!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .member-authority-layout{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    overflow:visible!important;
    overflow-x:hidden!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .form-container{
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    margin:0!important;
    padding:12px 13px 14px!important;
    display:block!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    overflow-x:hidden!important;
    border-radius:18px!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .form-container *,
  body.bw-vm-viewport-v4 .member-authority-page #vollmacht-form,
  body.bw-vm-viewport-v4 .member-authority-page #vollmacht-form > .form-step{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page #vollmacht-form{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    overflow-x:hidden!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page #vollmacht-form>.form-step.active{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:visible!important;
    overflow-x:hidden!important;
    overscroll-behavior:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:1px 1px 4px!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .bw-vm-pane.is-active{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow-y:visible!important;
    overflow-x:hidden!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .row-2,
  body.bw-vm-viewport-v4 .member-authority-page .zwei-zaehlerfelder,
  body.bw-vm-viewport-v4 .member-authority-page .kundentyp-btns,
  body.bw-vm-viewport-v4 .member-authority-page .radio-row,
  body.bw-vm-viewport-v4 .member-authority-page .lieferanten-row{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page input,
  body.bw-vm-viewport-v4 .member-authority-page textarea,
  body.bw-vm-viewport-v4 .member-authority-page select,
  body.bw-vm-viewport-v4 .member-authority-page button{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .bw-vm-wizard-meta{
    margin:0 0 3px!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .form-header{
    margin:0 0 7px!important;
    font-size:clamp(1.35rem,6.6vw,1.78rem)!important;
    line-height:1.02!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .progress-container{
    height:5px!important;
    margin:0 0 9px!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .form-step input,
  body.bw-vm-viewport-v4 .member-authority-page .form-step select,
  body.bw-vm-viewport-v4 .member-authority-page .form-step textarea{
    min-height:40px!important;
    font-size:16px!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .left-label,
  body.bw-vm-viewport-v4 .member-authority-page .signature-label{
    margin-top:0!important;
    font-size:.72rem!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .bw-vm-pane.is-active{
    gap:7px!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .radio-row label{
    min-height:38px!important;
    padding:5px 9px!important;
    font-size:.79rem!important;
  }
  body.bw-vm-viewport-v4 .member-authority-page .step-buttons,
  body.bw-vm-viewport-v4 .member-authority-page .bw-vm-pane__actions{
    position:static!important;
    bottom:auto!important;
    margin-top:12px!important;
    padding-top:7px!important;
  }

  /* The visual viewport is advisory only. Natural document scrolling remains the
     scroll mechanism even while the iOS keyboard is open. */
  body.bw-vm-viewport-v4.bw-vm-keyboard-open .member-authority-page{
    height:auto!important;
    min-height:0!important;
    padding-bottom:calc(var(--bw-vm-keyboard-gap,0px) + 12px)!important;
  }
  body.bw-vm-viewport-v4.bw-vm-keyboard-open .member-authority-page #vollmacht-form>.form-step.active,
  body.bw-vm-viewport-v4.bw-vm-keyboard-open .member-authority-page .bw-vm-pane.is-active{
    height:auto!important;
    min-height:0!important;
    overflow-y:visible!important;
    overflow-x:hidden!important;
    scroll-padding-bottom:calc(var(--bw-vm-keyboard-gap,0px) + 24px)!important;
  }
  body.bw-vm-viewport-v4.bw-vm-keyboard-open .member-authority-page input:focus,
  body.bw-vm-viewport-v4.bw-vm-keyboard-open .member-authority-page select:focus,
  body.bw-vm-viewport-v4.bw-vm-keyboard-open .member-authority-page textarea:focus{
    scroll-margin-bottom:calc(var(--bw-vm-keyboard-gap,0px) + 34px)!important;
  }

  /* Intake stays a focused full-screen surface with one internal scroll host. */
  .vm-intake-overlay{
    width:100vw!important;
    max-width:100vw!important;
    overflow:hidden!important;
    overflow-x:hidden!important;
    padding:0!important;
  }
  .vm-intake-card{
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    overflow-x:hidden!important;
    border-radius:0!important;
  }
  .vm-intake-card__head{
    flex:0 0 auto!important;
    padding:15px 15px 12px!important;
    box-sizing:border-box!important;
  }
  .vm-intake-card__copy{
    min-width:0!important;
    max-width:calc(100% - 48px)!important;
  }
  .vm-intake-card__title{
    font-size:1.42rem!important;
    line-height:1.04!important;
  }
  .vm-intake-card__sub{
    margin-top:5px!important;
    font-size:.76rem!important;
    line-height:1.35!important;
  }
  .vm-intake-close{
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
  }
  .vm-intake-body{
    display:flex!important;
    flex-direction:column!important;
    align-content:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    padding:13px 14px 14px!important;
    box-sizing:border-box!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    gap:9px!important;
  }
  .vm-intake-choice-grid{
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-auto-rows:max-content!important;
    align-content:start!important;
    gap:8px!important;
  }
  .vm-intake-choice{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    min-height:70px!important;
    padding:12px 13px!important;
    box-sizing:border-box!important;
    align-content:center!important;
    gap:3px!important;
  }
  .vm-intake-choice strong{
    font-size:1rem!important;
    line-height:1.1!important;
  }
  .vm-intake-choice span:not(.vm-intake-choice__done){
    font-size:.72rem!important;
    line-height:1.32!important;
  }
  .vm-intake-note{
    flex:0 0 auto!important;
    min-height:0!important;
    padding:10px 11px!important;
    font-size:.73rem!important;
    line-height:1.4!important;
  }
  .vm-intake-body > .vm-intake-actions{
    flex:0 0 auto!important;
    margin-top:auto!important;
    padding-top:6px!important;
  }
  .vm-intake-body > .vm-intake-actions .vm-intake-btn{
    min-height:44px!important;
  }
}

@media(max-width:700px) and (max-height:760px){
  body.bw-vm-viewport-v4 .member-authority-page .form-container{padding:9px 11px 12px!important}
  body.bw-vm-viewport-v4 .member-authority-page .form-header{font-size:1.3rem!important;margin-bottom:5px!important}
  body.bw-vm-viewport-v4 .member-authority-page .progress-container{margin-bottom:7px!important}
  body.bw-vm-viewport-v4 .member-authority-page .form-step input,
  body.bw-vm-viewport-v4 .member-authority-page .form-step select,
  body.bw-vm-viewport-v4 .member-authority-page .form-step textarea{min-height:37px!important;font-size:16px!important}
  body.bw-vm-viewport-v4 .member-authority-page .bw-vm-pane.is-active{gap:5px!important}
  body.bw-vm-viewport-v4 .member-authority-page #signature-pad{height:132px!important;min-height:132px!important;max-height:132px!important}
  .vm-intake-card__head{padding:11px 13px 9px!important}
  .vm-intake-body{padding:10px 12px 11px!important;gap:7px!important}
  .vm-intake-choice{min-height:64px!important;padding:9px 11px!important}
}
