*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text}html,body{touch-action:manipulation;overscroll-behavior:none;-webkit-overflow-scrolling:touch}button{touch-action:manipulation;position:relative;overflow:hidden}button:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}button:active:after{width:200%;height:200%}input,textarea,button{-webkit-appearance:none;border-radius:0}body{position:fixed;width:100%;height:100%}#root{height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}@media(hover:none)and (pointer:coarse){.mahjong-tile{min-width:44px!important;min-height:44px!important}button{min-height:44px;min-width:44px}.gap-1{gap:.5rem}.gap-2{gap:.75rem}}button,a,[onclick]{touch-action:manipulation}.custom-scrollbar{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@keyframes touch-ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.touch-feedback:active:before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);animation:touch-ripple .6s ease-out;pointer-events:none}@supports (padding: max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom))}}input:focus,textarea:focus,button:focus{outline:none;-webkit-focus-ring-color:transparent}body{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}
