.simon-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; max-width: 400px; margin: 0 auto; } .simon-btn { aspect-ratio: 1; border-radius: 16px; border: 4px solid rgba(255, 255, 255, 0.1); cursor: pointer; transition: all 0.1s ease-out; position: relative; } .simon-btn:active { transform: scale(0.95); } .simon-btn.active { filter: brightness(1.5); border-color: rgba(255, 255, 255, 0.8); box-shadow: 0 0 20px currentColor; transform: scale(0.98); } .simon-green { background-color: #4ade80; color: #4ade80; } .simon-red { background-color: #f87171; color: #f87171; } .simon-yellow { background-color: #facc15; color: #facc15; } .simon-blue { background-color: #60a5fa; color: #60a5fa; } .simon-btn::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient( circle at center, rgba(255, 255, 255, 0.2) 0%, transparent 70% ); opacity: 0; transition: opacity 0.2s; } .simon-btn:hover::after { opacity: 1; } .simon-btn.disabled { cursor: not-allowed; opacity: 0.8; }