.sudoku-game{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--color-bg);padding:20px;font-family:var(--font-main)}.sudoku-game .game-container{position:relative;background:var(--color-bg-secondary);border-radius:var(--primary-border-radious);border:2px solid var(--color-border);padding:20px;box-shadow:0 12px 40px rgba(0,0,0,.4);width:100%;max-width:600px;display:flex;flex-direction:column;gap:20px}.sudoku-game .game-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:15px}.sudoku-game .game-header .title-section{flex:1 1;min-width:150px}.sudoku-game .game-header .title-section h1{font-size:2.5em;margin:0;color:var(--color-primary);font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.sudoku-game .game-header .title-section .difficulty-badge{display:inline-block;margin-top:5px;padding:4px 12px;background:var(--color-bg-tertiary);border-radius:12px;font-size:.85em;text-transform:capitalize;color:var(--color-text);border:1px solid var(--color-border)}.sudoku-game .game-header .info-section{display:flex;flex-direction:column;gap:10px}.sudoku-game .game-header .info-section .time-display{background:var(--color-bg-tertiary);border-radius:8px;padding:10px 15px;text-align:center;border:1px solid var(--color-border);color:var(--color-text);font-weight:600;font-size:1.1em}.sudoku-game .difficulty-select{text-align:center;padding:40px 20px}.sudoku-game .difficulty-select h1{font-size:3em;margin:0 0 10px;color:var(--color-primary);font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.sudoku-game .difficulty-select p{margin:0 0 30px;color:var(--color-text);opacity:.8;font-size:1.1em}.sudoku-game .difficulty-select .difficulty-buttons{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.sudoku-game .difficulty-select .difficulty-btn{background:linear-gradient(135deg,var(--color-btn-bg),#ff8c00);color:var(--color-btn-text);border:none;padding:18px 40px;font-size:1.3em;font-weight:700;border-radius:12px;cursor:pointer;transition:all .3s ease;font-family:var(--font-main);text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px rgba(249,153,0,.3)}.sudoku-game .difficulty-select .difficulty-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(249,153,0,.4);background:linear-gradient(135deg,#ff8c00,var(--color-btn-bg))}.sudoku-game .difficulty-select .difficulty-btn:active{transform:translateY(-1px)}.sudoku-game .difficulty-select .difficulty-btn.easy{background:linear-gradient(135deg,var(--color-success),#28a745);box-shadow:0 4px 15px rgba(56,204,112,.3)}.sudoku-game .difficulty-select .difficulty-btn.easy:hover{box-shadow:0 8px 25px rgba(56,204,112,.4);background:linear-gradient(135deg,#28a745,var(--color-success))}.sudoku-game .difficulty-select .difficulty-btn.medium{background:linear-gradient(135deg,var(--color-primary),#ff8c00)}.sudoku-game .difficulty-select .difficulty-btn.hard{background:linear-gradient(135deg,var(--color-error),#ff6b6b);box-shadow:0 4px 15px rgba(255,77,79,.3)}.sudoku-game .difficulty-select .difficulty-btn.hard:hover{box-shadow:0 8px 25px rgba(255,77,79,.4);background:linear-gradient(135deg,#ff6b6b,var(--color-error))}.sudoku-game .difficulty-select .continue-btn{background:var(--color-bg-tertiary);color:var(--color-text);border:2px solid var(--color-border);padding:15px 30px;font-size:1.1em;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;font-family:var(--font-main);width:100%}.sudoku-game .difficulty-select .continue-btn:hover{background:var(--color-card);border-color:var(--color-primary)}.sudoku-game .sudoku-grid{display:grid;grid-template-columns:repeat(9,1fr);grid-gap:2px;gap:2px;background:var(--color-border);border:3px solid var(--color-border);border-radius:8px;padding:2px;aspect-ratio:1;max-width:100%}.sudoku-game .cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);cursor:pointer;transition:all .2s ease;font-size:1.5em;font-weight:600;color:var(--color-text);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.sudoku-game .cell span{display:block}.sudoku-game .cell.given{background:var(--color-bg-tertiary);color:var(--color-text);font-weight:700;cursor:default}.sudoku-game .cell.selected{background:var(--color-primary);color:var(--color-btn-text);z-index:10;transform:scale(1.05);box-shadow:0 0 0 2px var(--color-primary)}.sudoku-game .cell.error{background:rgba(255,77,79,.2);color:var(--color-error)}.sudoku-game .cell.error.selected{background:rgba(255,77,79,.4)}.sudoku-game .cell.box-border{border-top:2px solid var(--color-border);border-left:2px solid var(--color-border)}.sudoku-game .cell:hover:not(.given):not(.selected){background:var(--color-bg-tertiary)}.sudoku-game .game-controls{display:flex;flex-direction:column;gap:15px}.sudoku-game .number-pad{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.sudoku-game .number-btn{aspect-ratio:1;background:linear-gradient(135deg,var(--color-bg-secondary),var(--color-bg-tertiary));border:2px solid var(--color-border);color:var(--color-text);border-radius:8px;font-size:1.5em;font-weight:700;cursor:pointer;transition:all .2s ease;font-family:var(--font-main)}.sudoku-game .number-btn:hover:not(:disabled){transform:translateY(-2px);border-color:var(--color-primary);background:var(--color-primary);color:var(--color-btn-text);box-shadow:0 4px 12px rgba(249,153,0,.3)}.sudoku-game .number-btn:active:not(:disabled){transform:scale(.95)}.sudoku-game .number-btn:disabled{opacity:.4;cursor:not-allowed}.sudoku-game .action-buttons{display:flex;gap:10px}.sudoku-game .action-btn{flex:1 1;padding:15px 20px;background:linear-gradient(135deg,var(--color-btn-bg),#ff8c00);color:var(--color-btn-text);border:none;border-radius:8px;font-size:1.1em;font-weight:700;cursor:pointer;transition:all .3s ease;font-family:var(--font-main);text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px rgba(249,153,0,.3)}.sudoku-game .action-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px rgba(249,153,0,.4);background:linear-gradient(135deg,#ff8c00,var(--color-btn-bg))}.sudoku-game .action-btn:active:not(:disabled){transform:translateY(-1px)}.sudoku-game .action-btn:disabled{opacity:.5;cursor:not-allowed}.sudoku-game .action-btn.clear{background:var(--color-bg-tertiary);color:var(--color-text);border:2px solid var(--color-border);box-shadow:none}.sudoku-game .action-btn.clear:hover:not(:disabled){background:var(--color-card);border-color:var(--color-error);color:var(--color-error);transform:translateY(-2px)}.sudoku-game .action-btn.new-game{flex:2 1}.sudoku-game .game-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,.85);border-radius:var(--primary-border-radious);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100}.sudoku-game .completion-message{text-align:center;padding:40px 30px;background:var(--color-bg-secondary);border-radius:16px;border:2px solid var(--color-success);max-width:400px;width:90%;box-shadow:0 8px 32px rgba(0,0,0,.3)}.sudoku-game .completion-message h2{font-size:2.5em;margin-bottom:20px;font-weight:700;color:var(--color-success);text-shadow:2px 2px 4px rgba(0,0,0,.3)}.sudoku-game .completion-message p{margin:15px 0;color:var(--color-text);font-size:1.1em;line-height:1.6}.sudoku-game .completion-message .time-result{color:var(--color-primary);font-weight:700;font-size:1.3em}.sudoku-game .completion-message .completion-buttons{display:flex;gap:10px;justify-content:center;margin-top:25px;flex-wrap:wrap}.sudoku-game .action-button{background:linear-gradient(135deg,var(--color-btn-bg),#ff8c00);color:var(--color-btn-text);border:none;padding:15px 30px;font-size:1.1em;font-weight:700;border-radius:12px;cursor:pointer;transition:all .3s ease;font-family:var(--font-main);text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px rgba(249,153,0,.3)}.sudoku-game .action-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(249,153,0,.4);background:linear-gradient(135deg,#ff8c00,var(--color-btn-bg))}.sudoku-game .action-button:active{transform:translateY(-1px)}.sudoku-game .action-button.secondary{background:var(--color-bg-tertiary);color:var(--color-text);border:2px solid var(--color-border);box-shadow:none}.sudoku-game .action-button.secondary:hover{background:var(--color-card);border-color:var(--color-primary)}@media(max-width:768px){.sudoku-game{padding:10px}.sudoku-game .game-container{padding:15px;width:calc(100% - 20px);border-radius:12px}.sudoku-game .game-header .title-section h1{font-size:2em}.sudoku-game .game-header .info-section .time-display{padding:8px 12px;font-size:1em}.sudoku-game .difficulty-select{padding:30px 15px}.sudoku-game .difficulty-select h1{font-size:2.5em}.sudoku-game .difficulty-select .difficulty-btn{padding:15px 30px;font-size:1.1em}.sudoku-game .cell{font-size:1.2em}.sudoku-game .number-btn{font-size:1.3em}.sudoku-game .action-btn{padding:12px 16px;font-size:1em}.sudoku-game .completion-message{padding:25px 20px}.sudoku-game .completion-message h2{font-size:1.8em}.sudoku-game .completion-message p{font-size:1em;margin:10px 0}}@media(max-width:480px){.sudoku-game{padding:5px}.sudoku-game .game-container{padding:10px;border-radius:8px}.sudoku-game .game-header{flex-direction:column}.sudoku-game .game-header .title-section h1{font-size:1.8em}.sudoku-game .difficulty-select{padding:20px 10px}.sudoku-game .difficulty-select h1{font-size:2em}.sudoku-game .difficulty-select .difficulty-btn{padding:12px 24px;font-size:1em}.sudoku-game .cell{font-size:1em}.sudoku-game .number-btn{font-size:1.1em}.sudoku-game .action-buttons{flex-direction:column}.sudoku-game .action-btn{width:100%}}@media(prefers-reduced-motion:reduce){.sudoku-game .action-btn,.sudoku-game .action-button,.sudoku-game .cell,.sudoku-game .difficulty-btn,.sudoku-game .number-btn{transition:none}.sudoku-game .action-btn:active,.sudoku-game .action-btn:hover,.sudoku-game .action-button:active,.sudoku-game .action-button:hover,.sudoku-game .cell:active,.sudoku-game .cell:hover,.sudoku-game .difficulty-btn:active,.sudoku-game .difficulty-btn:hover,.sudoku-game .number-btn:active,.sudoku-game .number-btn:hover{transform:none}}