*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#1a202c;color:#e2e8f0;overflow-x:hidden}#root{width:100%;min-height:100vh}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#2d3748}::-webkit-scrollbar-thumb{background:#4a5568;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#718096}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:fadeIn .3s ease-out}.slide-in{animation:slideIn .3s ease-out}button{transition:all .2s ease}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}button:active:not(:disabled){transform:translateY(0)}input,textarea{transition:border-color .2s ease}input:focus,textarea:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.card-hover{transition:transform .2s ease,box-shadow .2s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0006}.spinner{border:3px solid rgba(255,255,255,.1);border-top-color:#4299e1;border-radius:50%;width:40px;height:40px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.text-shadow{text-shadow:2px 2px 4px rgba(0,0,0,.5)}.glass-effect{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}*{-webkit-tap-highlight-color:rgba(59,130,246,.3);-webkit-touch-callout:none}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}button,a,.clickable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media(max-width:768px){button,a.button,input[type=button],input[type=submit]{min-height:44px;min-width:44px;padding:12px 20px}}@media(display-mode:standalone){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:768px){body{font-size:14px}.container{padding-left:16px;padding-right:16px}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr!important}input,select,textarea{font-size:16px;padding:12px}.modal-content{width:95vw;max-width:95vw;margin:20px auto}::-webkit-scrollbar{width:0;height:0}}@media(min-width:768px)and (max-width:1024px){.container{max-width:720px}}@media(min-width:1024px){.container{max-width:1200px}}@media(max-width:1024px){.game-board{transform:scale(.75);transform-origin:top center}}@media(max-width:768px){.game-board{transform:scale(.55);transform-origin:top center}.game-container{overflow-x:auto;-webkit-overflow-scrolling:touch}}.swipeable{touch-action:pan-y;-webkit-user-select:none;user-select:none}.no-zoom{touch-action:manipulation}.draggable{cursor:move;cursor:grab;touch-action:none}.draggable:active{cursor:grabbing}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){button{border:2px solid currentColor}}@media(orientation:landscape)and (max-height:500px){.game-board{transform:scale(.5)}}@media print{body{background:#fff;color:#000}.no-print{display:none!important}}
