The architecture design for a peer-to-peer chess mobile application can be structured into three primary layers: a user interface, a service layer, and a data layer. For the User Interface, I recommend utilizing Flutter due to its capability for multi-platform support. The Flutter framework is well-suited to meet the graphical requirements of the chessboard, chess pieces, user interactions, and responses. The Service layer contains the core logic of the application, which includes managing peer-to-peer connections and enforcing game rules. We can leverage the WebRTC protocol to facilitate P2P connections between users. The Data layer manages the game state, which encompasses the positions of the pieces on the board. It is essential to store the game's status for each move to ensure that the game can be resumed in case of any disruptions during the gameplay session. SQLite is a strong candidate for local storage. In summary, the architecture would feature a Flutter front end, WebRTC for peer-to-peer communication, and SQLite for local data storage. Regarding the game data, an object-oriented approach would likely be most effective, with various classes representing the properties and rules of the different chess pieces, while their positions would be updated and maintained in a game state database.