/* Mobile form comfort. No layout/print changes on desktop; native validation stays. */
@media screen and (max-width:767.98px){
  body.uc-login-body .uc-mobile-form :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px!important;min-height:48px!important}
  body :is(#main-content,.modal,.offcanvas,.uc-login-body) .uc-mobile-form {
    --uc-control-h:48px;scroll-margin-top:76px;
  }
  body :is(#main-content,.modal,.offcanvas,.uc-login-body) .uc-mobile-form :is(.form-control,.form-select,input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=password],textarea,select){
    min-height:48px!important;font-size:16px!important;scroll-margin:80px 0 100px;
  }
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form .row>[class*=col-]:not(.col-auto){
    flex:0 0 100%;max-width:100%;width:100%;
  }
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form .row {--bs-gutter-y:1rem}
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form :is(.form-label,.form-group>label){
    display:block;margin-bottom:8px;line-height:1.4;font-size:14px;
  }
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form textarea {min-height:112px!important;resize:vertical}
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form :is(.btn,button[type=submit]) {min-height:48px;white-space:normal}
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form :is(.form-check-label,label:has(input[type=checkbox]),label:has(input[type=radio])) {min-height:44px;padding-top:8px;padding-bottom:8px;cursor:pointer}
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form .form-check-input {width:20px;height:20px;margin-top:10px}
  body :is(#main-content,.modal,.offcanvas) .uc-mobile-form :is(.invalid-feedback,.form-text,.hint){font-size:13px;line-height:1.5}
  body.uc-form-keyboard #main-content .sticky-save-bar {position:static!important;bottom:auto!important}
  body #main-content :is(#loanSignatureCanvas,#refiSignatureCanvas,#signatureCanvas){
    height:300px!important;width:100%;display:block;touch-action:none;user-select:none;background:#fff;color-scheme:light;
  }
  body #main-content :is(.signature-canvas-wrap,.signature-wrap){border-radius:var(--uc-radius,16px);overflow:hidden}
  body #main-content :is(.signature-panel,.sign-actions) .btn {min-height:48px}
  body #main-content :is(.signature-panel,.sign-actions) :is(.d-flex,.sign-actions){flex-wrap:wrap;gap:10px!important}
  body #main-content :is(.signature-status,#signatureStatus,#fingerprintStatus){font-size:14px;line-height:1.5}
}

/* Local, explainable form assistance; no network or stored customer data. */
.uc-assist-guide{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px;margin-bottom:18px;border:1px solid var(--uc-border,#cbd3cc);border-radius:14px;background:var(--uc-surface,#fff);color:var(--uc-ink,#203d2b);font-size:14px}
.uc-assist-search{margin:8px 0 12px;padding:10px;border:1px solid var(--uc-border,#cbd3cc);border-radius:12px;background:var(--uc-surface,#fff);color:var(--uc-ink,#203d2b)}
.uc-assist-search summary{cursor:pointer;padding:6px;font-size:14px;font-weight:600;min-height:36px}
.uc-assist-search input{margin-top:10px;width:100%}
.uc-assist-results{display:grid;gap:6px;max-height:260px;overflow-y:auto;overscroll-behavior:contain}
.uc-assist-option{font:inherit;text-align:left;min-height:48px;border:1px solid var(--uc-border,#cbd3cc);border-radius:10px;padding:10px;background:var(--uc-surface,#fff);color:var(--uc-ink,#203d2b);white-space:normal}
.uc-assist-option:focus-visible{outline:3px solid var(--uc-primary,#365a3f);outline-offset:2px}
.uc-assist-status,.uc-assist-related{font-size:14px;line-height:1.5;margin:8px 0;color:var(--uc-ink,#203d2b)}
.uc-assist-related .btn{margin-top:6px}
@media(max-width:767.98px){.uc-assist-guide .btn{width:100%}.uc-assist-search summary{min-height:44px}}
@media print{.uc-assist-guide,.uc-assist-search,.uc-assist-related{display:none!important}}

.uc-assist-ai{margin-bottom:16px;padding:14px;border:1px solid var(--uc-border,#cbd3cc);border-radius:14px;background:var(--uc-surface,#fff);color:var(--uc-ink,#203d2b);font-size:14px}.uc-assist-ai summary{cursor:pointer;min-height:36px;font-weight:600}.uc-assist-ai p{margin:10px 0}.uc-assist-answer{white-space:pre-line;overflow-wrap:anywhere}@media print{.uc-assist-ai{display:none!important}}
