* { box-sizing: border-box; margin: 0; padding: 0; user-select: none; -webkit-user-select: none; } body { background-color: #0d1117; color: #ffffff; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; min-height: 100vh; display: flex; justify-content: center; align-items: flex-start; padding: 10px; overflow-x: hidden; } .app-container { width: 100%; max-width: 420px; display: flex; flex-direction: column; align-items: center; gap: 12px; } /* Header & Logo */ .header { width: 100%; text-align: center; padding: 5px 0; } .logo { max-width: 180px; height: auto; object-fit: contain; } /* Score Board */ .score-board { width: 100%; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; background: #161b22; padding: 10px; border-radius: 12px; border: 1px solid #30363d; } .score-item { display: flex; flex-direction: column; align-items: center; } .score-item .label { font-size: 10px; color: #8b949e; font-weight: bold; } .score-item .value { font-size: 16px; color: #58a6ff; font-weight: bold; } /* Game Area */ .game-area { position: relative; display: flex; justify-content: center; align-items: flex-start; gap: 10px; width: 100%; } #tetris { background: #010409; border: 3px solid #30363d; border-radius: 8px; max-width: 75vw; max-height: 48vh; height: auto; box-shadow: 0 8px 24px rgba(0,0,0,0.5); } .next-piece-container { display: flex; flex-direction: column; align-items: center; background: #161b22; padding: 8px; border-radius: 8px; border: 1px solid #30363d; } .next-piece-container .label { font-size: 10px; color: #8b949e; margin-bottom: 4px; } #next { background: #010409; border-radius: 4px; } /* Action Buttons */ .action-buttons { display: flex; gap: 10px; width: 100%; } .btn { flex: 1; padding: 12px; border: none; border-radius: 8px; font-weight: bold; font-size: 14px; cursor: pointer; } .btn.primary { background: #238636; color: #ffffff; } .btn.secondary { background: #21262d; color: #c9d1d9; border: 1px solid #30363d; } /* Touch Controls */ .touch-controls { width: 100%; display: flex; flex-direction: column; align-items: center; gap: 8px; margin-top: 4px; } .control-row { display: flex; justify-content: center; gap: 12px; width: 100%; } .btn-ctrl { width: 55px; height: 50px; background: #21262d; border: 1px solid #30363d; color: #ffffff; font-size: 18px; font-weight: bold; border-radius: 8px; display: flex; justify-content: center; align-items: center; touch-action: manipulation; } .btn-ctrl:active { background: #1f6feb; } .btn-wide { width: 180px; font-size: 12px; background: #1f6feb; }