*{margin:0;padding:0;box-sizing:border-box;}
html,body{width:100%;height:100%;overflow:hidden;position:fixed;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;}
body{background:#000;font-family:'Arial',sans-serif;}
#game{position:absolute;}
canvas{display:block;touch-action:none;-webkit-touch-callout:none;user-select:none;}
#ui{position:absolute;top:8px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:22px;font-weight:bold;text-shadow:2px 2px 4px rgba(0,0,0,0.5);pointer-events:none;}
.overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:rgba(0,0,0,0.7);}
.overlay h1{color:#fff;font-size:48px;margin-bottom:20px;text-shadow:3px 3px 6px rgba(0,0,0,0.8);text-align:center;}
.scene-label{color:rgba(255,255,255,0.7);font-size:16px;margin-bottom:4px;text-align:center;letter-spacing:1px;}
.overlay p,.overlay .info{color:#fff;font-size:18px;margin-bottom:20px;text-align:center;max-width:500px;line-height:1.6;}
.overlay .stats{color:#ffd700;font-size:24px;margin:10px 0;text-align:center;display:flex;flex-direction:column;align-items:center;}
button{background:#ff6b35;color:#fff;border:none;padding:15px 40px;font-size:20px;font-weight:bold;border-radius:8px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.3);transition:all 0.2s;pointer-events:auto;}
button:hover{background:#ff8555;transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.4);}
button:active{transform:translateY(0);}
@keyframes newBestPulse{0%{transform:scale(1);text-shadow:0 0 12px #ffaa00,0 0 24px #ff8800;}100%{transform:scale(1.15);text-shadow:0 0 20px #ffee00,0 0 40px #ffaa00,0 0 60px #ff6600;}}

/* Rotate overlay for portrait mobile */
#rotate-overlay{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#2a4858;z-index:99999;justify-content:center;align-items:center;flex-direction:column;}
#rotate-overlay .rotate-icon{font-size:80px;margin-bottom:20px;animation:rotate-hint 2s ease-in-out infinite;}
#rotate-overlay p{color:#fff;font-size:22px;text-align:center;font-family:inherit;padding:0 20px;}
@keyframes rotate-hint{0%,100%{transform:rotate(0deg);}50%{transform:rotate(90deg);}}
@media screen and (orientation:portrait){
#rotate-overlay{display:flex !important;}
}
@media screen and (orientation:landscape){
#rotate-overlay{display:none !important;}
}
