*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:contain;-webkit-tap-highlight-color:rgba(0,0,0,.1)}#root{width:100%;height:100vh;overflow:hidden}button,a,[role=button]{min-height:44px;min-width:44px;-webkit-tap-highlight-color:rgba(0,0,0,.1);touch-action:manipulation;-webkit-user-select:none;user-select:none}input,textarea,select{font-size:16px;touch-action:manipulation;appearance:none;-webkit-appearance:none;-moz-appearance:none}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){body{font-size:16px;line-height:1.5}button,a{padding:12px 16px}input,textarea,select{padding:12px;border-radius:8px}}@media (max-width: 768px) and (orientation: landscape){#root{height:100vh}}@media (max-width: 480px){button,a,[role=button]{min-height:48px;min-width:48px}}*:focus{outline:2px solid #2c5f7c;outline-offset:2px}*:focus:not(:focus-visible){outline:none}*:focus-visible{outline:2px solid #2c5f7c;outline-offset:2px}table{table-layout:auto}div[style*=overflowX]{scrollbar-width:thin;scrollbar-color:#888 #f1f1f1}div[style*=overflowX]::-webkit-scrollbar{height:6px}div[style*=overflowX]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}div[style*=overflowX]::-webkit-scrollbar-thumb{background:#888;border-radius:3px}div[style*=overflowX]::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){div[style*=overflowX]{position:relative}div[style*=overflowX]:after{content:"";position:absolute;top:0;right:0;bottom:0;width:30px;background:linear-gradient(to left,rgba(255,255,255,.9),transparent);pointer-events:none;opacity:0;transition:opacity .3s}div[style*=overflowX]:not([data-scrolled-end]):after{opacity:1}table td,table th{white-space:nowrap}}
