/* DARTAVA PHONE TRUE TOUCH SCROLLER — October 2026
   Fixes long pages being trapped behind document/WebView viewport locks.
   One scroll area between top brand bar and fixed 6-tab bottom nav.
   Does NOT apply to desktop, sign-in or fullscreen scoring overlays. */
@media (max-width:820px) {
html:has(body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-shell){
 height:100%!important;max-height:100%!important;
 overflow:hidden!important;overscroll-behavior:none!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]):has(.r3-phone-shell){
 height:100%!important;max-height:100dvh!important;min-height:0!important;
 overflow:hidden!important;overscroll-behavior:none!important;
 touch-action:auto!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) #r3-product-root:has(.r3-phone-shell){
 height:100dvh!important;min-height:0!important;max-height:100dvh!important;
 overflow:hidden!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-shell{
 display:flex!important;flex-direction:column!important;
 width:100%!important;height:100dvh!important;min-height:0!important;max-height:100dvh!important;
 box-sizing:border-box!important;
 padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))!important;
 overflow:hidden!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-top{
 position:relative!important;top:auto!important;flex:0 0 auto!important;
 min-height:60px!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-main{
 display:block!important;
 flex:1 1 auto!important;min-height:0!important;max-height:none!important;
 height:auto!important;
 overflow-x:hidden!important;overflow-y:auto!important;
 overscroll-behavior-x:contain!important;overscroll-behavior-y:contain!important;
 touch-action:pan-y!important;scroll-behavior:auto!important;
 -webkit-overflow-scrolling:touch!important;
 padding-bottom:26px!important;
 scrollbar-width:thin;scrollbar-color:#694b86 transparent;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-main > [data-r3-page]{
 display:flow-root!important;min-height:100%!important;height:auto!important;
 max-height:none!important;overflow:visible!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-main :is(.dvgo-home,.r3-phone-page,.r3-phone-section){
 height:auto!important;max-height:none!important;overflow-y:visible!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-nav{
 height:calc(72px + env(safe-area-inset-bottom,0px))!important;
 min-height:72px!important;
}
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .dt2-oche-tabs{
 touch-action:pan-x pinch-zoom!important;
}
}
/* Old Android WebViews: 100vh fallback used before the supported 100dvh rule. */
@supports not (height:100dvh) {
@media(max-width:820px) {
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) .r3-phone-shell,
body:is([data-r3-surface="mobile"],[data-r3-surface="app"]) #r3-product-root:has(.r3-phone-shell){
 height:100vh!important;max-height:100vh!important;
}
}
}
/* Important: dialogs, Board Vision camera and fullscreen match are mounted
   outside this scroller and retain their existing own fixed/overflow rules. */
