/* Shared responsive web baseline for desktop, iPad and iOS/Android touch browsers. */
.fi-panel-admin .fi-user-avatar,.ehr-person-avatar{aspect-ratio:1;border:0;border-radius:10px;object-fit:cover;box-shadow:none}
.fi-topbar .fi-user-menu .fi-user-avatar{border:0;border-radius:8px;box-shadow:none}
.fi-main,.fi-page,.fi-ta,.fi-ta-ctn{min-width:0}
.fi-ta-content{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
@media(hover:none) and (pointer:coarse){
 /* 16px prevents Safari's automatic input zoom while preserving user pinch zoom. */
 .fi-main input:not([type="checkbox"]):not([type="radio"]),.fi-main select,.fi-main textarea,.fi-main .choices__input,.ehr-login__field input{font-size:16px!important}
 .fi-main .fi-btn,.fi-topbar .fi-icon-btn{min-height:44px}
 .fi-main .fi-btn{touch-action:manipulation}
 .ehr-topbar-action{width:40px;height:40px}
 .fi-topbar .fi-user-menu>.fi-dropdown-trigger>button{display:grid;place-items:center;min-width:40px;min-height:40px}
 .ehr-login__field input{scroll-margin-block:24px}
}
@media(max-width:639px){
 .fi-topbar nav{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
 .ehr-login{padding-left:max(11px,env(safe-area-inset-left));padding-right:max(11px,env(safe-area-inset-right));padding-bottom:max(20px,env(safe-area-inset-bottom))}
}

/* Icon-only row actions retain a full touch/keyboard target. */
.ehr-table-row-action.fi-icon-btn{min-width:44px;min-height:44px;touch-action:manipulation}
