/* FindVault V69 customer mobile hotfix — auth, scan, modal and bottom-safe-area fixes. */
html{max-width:100%;overflow-x:hidden}
input[type="checkbox"],input[type="radio"]{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;padding:0!important;flex:0 0 20px!important;accent-color:#14b8a6}
body.fvu-has-mobile-dock{padding-bottom:calc(96px + env(safe-area-inset-bottom))!important}
body.fv-modal-open{overflow:hidden!important}
body.fv-modal-open .fvu-mobile-dock,
body.fv-modal-open .soc-mobile-bottom,
body.fv-modal-open .fv-language-panel,
body.fv-modal-open .fv-language-switcher,
body.fv-modal-open [data-language-switcher]{display:none!important}
.fv-auth-notice{margin:12px 0;padding:12px 14px;border:1px solid rgba(56,189,248,.28);border-radius:14px;background:rgba(14,165,233,.08);color:#dbeafe;font-size:13px;line-height:1.55}
.fv-auth-notice b{display:block;margin-bottom:3px;color:#e0f2fe}
.fv-terms-row{display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;align-items:start!important;gap:10px!important;margin:14px 0 0!important;line-height:1.55}
.fv-terms-row input{margin:2px 0 0!important}
.fv-terms-copy{min-width:0}
.fv-auth-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;margin-top:14px!important}
.fv-auth-actions .btn{width:100%;min-width:0;white-space:normal;line-height:1.25}
.fv-inline-password{display:grid!important;grid-template-columns:minmax(0,1fr) 52px!important;gap:8px!important;align-items:stretch!important}
.fv-inline-password .btn{width:52px!important;min-width:52px!important;padding:0!important}

/* Social composer: footer always visible above safe area. */
.soc-dialog>form{min-height:0}
@media(max-width:900px){
  .fvu-mobile-dock{min-height:76px;padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important}
  .fvu-mobile-dock a,.fvu-mobile-dock button{min-width:0!important;font-size:10px!important;line-height:1.15!important}
  .fvu-mobile-dock a span,.fvu-mobile-dock button span{font-size:20px!important}
  .soc-modal.show{display:flex!important;align-items:flex-end!important;justify-content:center!important;padding:0!important}
  .soc-dialog{width:100%!important;height:min(94dvh,820px)!important;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)))!important;border-radius:24px 24px 0 0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
  .soc-dialog-head{position:relative!important;flex:0 0 auto!important;padding:14px 16px!important}
  .soc-dialog>form{display:flex!important;flex:1 1 auto!important;min-height:0!important;flex-direction:column!important;overflow:hidden!important}
  .soc-dialog-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:14px 16px 24px!important;overscroll-behavior:contain}
  .soc-submit-row{position:relative!important;inset:auto!important;z-index:6!important;flex:0 0 auto!important;display:grid!important;grid-template-columns:.8fr 1.2fr!important;padding:11px 14px calc(11px + env(safe-area-inset-bottom))!important;box-shadow:0 -8px 24px rgba(16,24,40,.10)!important}
  .soc-submit-row button{min-height:50px!important}
  .soc-photo-box input[type="file"]{font-size:14px!important;min-height:48px!important}
}
@media(max-width:620px){
  .fv-auth-actions{grid-template-columns:1fr!important}
  .fv-auth-actions .btn{min-height:52px!important}
  .fv-auth-notice{font-size:12px}
  .soc-dialog-head h2{font-size:23px!important}
  .soc-dialog-head p{font-size:12px!important}
}

/* Scan page: primary actions first; secondary tools stay in a compact drawer. */
.scan-more-actions{margin-top:12px;border:1px solid rgba(148,163,184,.22);border-radius:15px;background:rgba(15,23,42,.5);overflow:hidden}
.scan-more-actions summary{cursor:pointer;padding:13px 15px;font-weight:900;color:#dbeafe;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px}
.scan-more-actions summary::-webkit-details-marker{display:none}
.scan-more-actions summary::after{content:'＋';font-size:20px;color:#7dd3fc}
.scan-more-actions[open] summary::after{content:'−'}
.scan-more-actions .actions{margin:0;padding:0 12px 12px}
@media(max-width:560px){
  .scan-primary-actions{grid-template-columns:1fr 1fr!important}
  .scan-primary-actions .btn:first-child{grid-column:1/-1}
  .scan-primary-actions .btn,.scan-more-actions .btn{width:100%!important;min-height:50px!important;font-size:13px!important;white-space:normal!important;line-height:1.25!important;padding:11px 8px!important}
  .scan-more-actions .actions{grid-template-columns:1fr 1fr!important}
  .statusCard{padding:14px!important}
}
