/* Tablet shell reuses the same product UI; these rules only improve touch/reflow. */
html.sab-android{scroll-padding-top:20px}html.sab-android body{overscroll-behavior-y:contain}html.sab-android :is(button,.portal-link,input,select){touch-action:manipulation}html.sab-android :is(button,input,select){min-height:44px}html.sab-android input[type=checkbox],html.sab-android input[type=radio]{min-height:20px}html.sab-android dialog{max-height:calc(100dvh - 36px);max-width:calc(100vw - 32px);overflow:auto}html.sab-android .companion-launcher{bottom:20px}#sab-connection-banner{position:fixed;bottom:0;inset-inline:0;background:#633d18;color:#fff;padding:12px 20px;text-align:center;font:14px/1.5 Arial,sans-serif;z-index:2000}#sab-connection-banner[hidden],#sab-device-notice[hidden]{display:none}#sab-device-notice{position:fixed;bottom:32px;inset-inline:24px;max-width:600px;margin:auto;background:#5b2e3c;color:white;padding:16px 22px;border-radius:12px;z-index:2100;line-height:1.5}@media(pointer:coarse){button{min-height:44px}input:not([type=checkbox]):not([type=radio]),textarea,select{font-size:16px}input[type=checkbox],input[type=radio]{width:20px;height:20px}a.portal-link{min-height:44px}}@media(max-width:800px){.owner-main{padding:28px 20px}.owner-login{width:auto;max-width:540px;margin:32px auto;padding:24px}.branches{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.owner-main h1{font-size:clamp(30px,5vw,48px)}.ticket-panel .modal-top{flex-wrap:wrap;gap:16px}}@media print{#sab-connection-banner,#sab-device-notice{display:none!important}}
