/* SMART Plus+ V45 / standalone operational pages. Scoped to avoid medical UI. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.ui-v34{font-family:'IBM Plex Sans Thai','Noto Sans Thai','Thonburi',Tahoma,system-ui,sans-serif;overflow-x:clip;min-width:0}
body.ui-v34 *{box-sizing:border-box}
body.ui-v34 :lang(th){word-break:normal;overflow-wrap:break-word;line-break:loose}
body.ui-v34 .system-nav{padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px));min-width:0}
body.ui-v34 .system-mark,body.ui-v34 .system-nav-links{min-width:0}
body.ui-v34 .system-nav-links{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
body.ui-v34 :is(main,.shell,.mobile-shell,.wrap,.attendance-app,.grid,.row,.panel,.card){max-width:100%;min-width:0}
body.ui-v34 :is(p,h1,h2,h3,h4,label,small,button,a){overflow-wrap:break-word}
body.ui-v34 :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px;max-width:100%;min-width:0}
body.ui-v34 :is(input,textarea,select,button){font-family:'IBM Plex Sans Thai','Noto Sans Thai','Thonburi',Tahoma,system-ui,sans-serif}
body.ui-v34 :is(a,button,input,select,textarea):focus-visible{outline:3px solid #dca42d;outline-offset:2px}
body.ui-v34 .table-wrap,body.ui-v34 .table-scroll,body.ui-v34 .roster-table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
@media(hover:none) and (pointer:coarse){body.ui-v34 :is(button,input,select,.system-nav-links a){min-height:44px}}
@media(max-width:700px){
 body.ui-v34 .system-nav{gap:8px;flex-wrap:nowrap}
 body.ui-v34 .system-mark{flex:0 0 auto}
 body.ui-v34 .system-mark b{font-size:clamp(12px,3.2vw,15px);line-height:1.35}
 body.ui-v34 .system-nav-links{flex:1 1 0;justify-content:flex-start}
 body.ui-v34 .system-nav-links a{font-size:11px;min-height:44px}
 body.ui-v34 :is(.card,.panel,.auth-card){min-width:0}
 body.ui-v34 h1{line-height:1.4}
 body.ui-v34 .mobile-shell,body.ui-v34 .shell,body.ui-v34 .wrap,body.ui-v34 .attendance-app{padding-bottom:calc(22px + env(safe-area-inset-bottom,0px))}
 body.ui-v34 .map,body.ui-v34 #map{max-width:100%}
}
@media(max-width:390px){
 body.ui-v34 .system-nav{padding-left:10px;padding-right:10px}
 body.ui-v34 .system-mark small{display:none}
 body.ui-v34 :is(.card,.panel,.auth-card){border-radius:16px}
}
@media(prefers-reduced-motion:reduce){body.ui-v34 *,body.ui-v34 *::before,body.ui-v34 *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
