/* Native scrolling: one scroll owner per entry dialog, no transformed layer. */
#cloud-auth-dialog.cloud-auth-dialog,
#pro-checkout-dialog.pro-checkout-dialog,
#onboarding-dialog.modal {
  position:fixed;
  inset:12px 0;
  width:min(560px,calc(100% - 24px));
  height:fit-content;
  max-width:none;
  max-height:calc(100vh - 24px);
  max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  margin:auto;
  padding:0;
  transform:none;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior-y:contain;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:auto;
  scroll-padding-block:76px 24px;
}
#onboarding-dialog #profile-form { max-height:none; overflow:visible; }
html.vwork-entry-modal-open,body.vwork-entry-modal-open { overflow:hidden!important; }
body.vwork-entry-modal-open .hero .scan-line { animation-play-state:paused; }
body.vwork-entry-modal-open .nd-demo *,body.vwork-entry-modal-open .nd-demo ::after { animation-play-state:paused!important; }
.pro-checkout-dialog .pro-feedback { position:static; box-shadow:none; }
.cloud-auth-content .cloud-account-heading.cloud-guest-heading { display:none; }
.cloud-auth-dialog .cloud-auth-content { padding:18px 18px 22px; }
.cloud-auth-dialog .cloud-auth-content h2 { font-size:30px; line-height:1.15; letter-spacing:-1px; }
.cloud-auth-content .modal-lede { margin:10px 0 14px; }
.cloud-auth-dialog [data-cloud-account-root] { margin-top:0; padding:16px; }
.cloud-account-form { gap:12px; }
.cloud-account-form>label { margin:0; gap:7px; font-size:12px; }
.cloud-account-form input:not([type="checkbox"]) { min-height:48px; font-size:16px; }
.cloud-auth-actions { grid-template-columns:1fr; gap:10px; }
body .cloud-auth-actions [data-cloud-action="create"] {
  min-height:52px; padding:15px 18px; border:1px solid #ffe99b!important;
  background:#f4d574!important; color:#192313!important; font-size:14px; font-weight:900;
  text-shadow:none!important; box-shadow:none!important; transform:none;
}
body .cloud-auth-actions [data-cloud-action="signin"] {
  display:flex; align-items:center; justify-content:space-between;
  min-height:50px; padding:14px 18px; border:1px solid #9aac8b!important;
  background:#294535!important; color:#fff6d4!important; font-size:14px; font-weight:800;
  text-shadow:none!important; box-shadow:none!important; transform:none;
}
.cloud-auth-actions button:focus-visible,.cloud-contact-save:focus-visible { outline:3px solid #fff3bc; outline-offset:3px; }
.cloud-auth-actions button:disabled { opacity:.65; cursor:wait; }
.cloud-account-form>.cloud-link-button { min-height:44px; font-size:12px; }
.cloud-status { font-size:12px; line-height:1.5; }
.cloud-phone-options { grid-column:1/-1; margin:0; min-width:0; color:#edf0e9; }
.cloud-phone-options summary { min-height:44px; padding:12px 0; cursor:pointer; color:#e8d497; font-size:12px; font-weight:800; }
.cloud-phone-options label { display:grid; gap:7px; font-size:12px; line-height:1.5; }
.cloud-phone-options .cloud-updates-consent { display:flex; align-items:flex-start; gap:10px; margin:12px 0; font-weight:500; letter-spacing:normal; }
.cloud-phone-options input[type="checkbox"] { flex:0 0 20px; width:20px; height:20px; min-height:20px; margin:2px 0 0; padding:0; accent-color:#f4d574; }
.cloud-phone-options .cloud-contact-note { display:block; margin:10px 0; font-size:11px; line-height:1.6; color:#d1d8cf; }
.cloud-contact-note a { color:#f4d574; }
.cloud-contact-form input[type="tel"] { width:100%; min-height:48px; padding:12px; border:1px solid #78917e; border-radius:12px; font-size:16px; background:#f6f6ef; color:#15231b; }
.cloud-contact-save { width:100%; min-height:48px; border:1px solid #e6c56b; border-radius:24px; background:#e6c56b; color:#15231b; padding:12px; font:800 13px Manrope,Arial,sans-serif; }
.cloud-contact-status { margin:10px 0 0; color:#dce9d6; font-size:12px; line-height:1.5; }
.cloud-contact-status.is-error { color:#ffc0b6; }
@media(max-width:700px),(pointer:coarse) {
  /* Blur recomposites the long page behind the sheet on every scroll frame. */
  #cloud-auth-dialog::backdrop,#pro-checkout-dialog::backdrop,#onboarding-dialog::backdrop {
    -webkit-backdrop-filter:none!important; backdrop-filter:none!important; background:rgba(6,12,8,.86);
  }
  html { scroll-behavior:auto; }
  body:not(.is-app-mode) .hero .scan-line { animation:none; }
  body:not(.is-app-mode) .nd-phone { box-shadow:0 0 0 1px #6d785c,0 8px 18px #0004; }
  /* Illustrative LP beams only, not the real camera or its processing screen. */
  body:not(.is-app-mode) .nd-demo .gd-beam,
  body:not(.is-app-mode) .nd-demo .nd-visual.is-scan::after { animation:none!important; top:50%; }
  #cloud-auth-dialog,#pro-checkout-dialog,#onboarding-dialog { box-shadow:0 8px 20px #0005!important; }
  .free-trial-hero,.free-trial-offer { box-shadow:none; }
  #cloud-auth-dialog input,#onboarding-dialog input,#onboarding-dialog select { font-size:16px; }
  .cloud-auth-content .cloud-photo-note { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .cloud-auth-actions button { transition:none; }
}
