*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.sudoku-game{display:flex;justify-content:center;align-items:center;padding:20px;min-height:80vh}.game-setup{background:#fff;padding:40px;border-radius:15px;box-shadow:0 10px 40px #0000004d;max-width:500px;width:100%}.game-setup h2{margin:0 0 30px;font-size:2rem;color:#333;text-align:center}.difficulty-buttons{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.difficulty-buttons button{padding:20px;font-size:1.2rem;font-weight:600;border:3px solid #e9ecef;border-radius:10px;cursor:pointer;background:#fff;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:5px}.difficulty-buttons button span{font-size:.9rem;color:#868e96;font-weight:400}.difficulty-buttons button:hover{border-color:#667eea;transform:translateY(-2px)}.difficulty-buttons button.active{border-color:#667eea;background:#667eea;color:#fff;box-shadow:0 4px 12px #667eea66}.difficulty-buttons button.active span{color:#ffffffe6}.start-button{width:100%;padding:15px;font-size:1.3rem;font-weight:700;border:none;border-radius:10px;cursor:pointer;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transition:all .3s ease}.start-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.game-container{background:#fff;padding:30px;border-radius:15px;box-shadow:0 10px 40px #0000004d;max-width:600px;width:100%}.game-info{display:flex;justify-content:space-around;margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:10px}.info-item{display:flex;flex-direction:column;align-items:center;gap:5px}.label{font-size:.9rem;color:#868e96;font-weight:600}.value{font-size:1.5rem;font-weight:700;color:#333}.mistakes-count{color:#ff6b6b}.completion-message{grid-column:1 / -1;text-align:center;font-size:1.2rem;font-weight:700;color:#51cf66;padding:10px;background:#d3f9d8;border-radius:8px;margin-top:10px}.sudoku-board{display:grid;grid-template-columns:repeat(9,1fr);gap:0;margin:20px auto;width:100%;max-width:450px;aspect-ratio:1;border:3px solid #333;background:#333}.cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;background:#fff;cursor:pointer;transition:all .2s ease;border:1px solid #dee2e6}.cell:hover:not(.given){background:#e7f5ff}.cell.selected{background:#d0ebff;border:2px solid #667eea}.cell.given{background:#f8f9fa;color:#333;font-weight:700;cursor:default}.cell.incorrect{color:#ff6b6b}.cell:nth-child(9n+3),.cell:nth-child(9n+6){border-right:2px solid #333}.cell:nth-child(n+19):nth-child(-n+27),.cell:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid #333}.number-pad{display:grid;grid-template-columns:repeat(9,1fr);gap:8px;margin:20px 0}.number-pad button{aspect-ratio:1;font-size:1.2rem;font-weight:600;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;background:#fff;color:#333;transition:all .2s ease}.number-pad button:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea;transform:scale(1.05)}.number-pad button:disabled{opacity:.5;cursor:not-allowed}.controls{display:flex;gap:10px}.controls button{flex:1;padding:12px 20px;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;background:#667eea;color:#fff}.controls button:hover:not(:disabled){background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.controls button:disabled{background:#ced4da;cursor:not-allowed;opacity:.6}@media(max-width:768px){.game-container{padding:20px}.sudoku-board{max-width:100%}.cell{font-size:1.2rem}.number-pad button{font-size:1rem}}@media(max-width:480px){.sudoku-game{padding:10px}.game-setup{padding:25px 15px}.game-setup h2{font-size:1.5rem}.difficulty-buttons button{padding:15px;font-size:1.1rem}.game-container{padding:15px}.game-info{flex-direction:column;gap:10px}.cell{font-size:1rem}.number-pad{gap:5px}.number-pad button{font-size:.9rem}.controls button{padding:10px 15px;font-size:.9rem}}@media(max-width:360px){.cell{font-size:.9rem}.number-pad button{font-size:.8rem}}.App{text-align:center;padding:20px;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}h1{color:#fff;margin-bottom:20px;font-size:2.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}@media(max-width:768px){.App{padding:15px}h1{font-size:2rem;margin-bottom:15px}}@media(max-width:480px){.App{padding:10px}h1{font-size:1.5rem;margin-bottom:10px}}
