:root{--kvikee-cyan: #22d3ee;--kvikee-card-bg: rgba(30, 41, 59, .9);--kvikee-border: rgba(255, 255, 255, .15)}.sudoku-wrapper{display:flex;flex-direction:column;align-items:center;width:100%;max-width:450px;padding:5px;margin:0 auto}.sudoku-title{font-family:Quicksand,sans-serif;font-size:2rem;font-weight:900;letter-spacing:-1px;margin:0;line-height:1;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase}.sudoku-board{display:grid;grid-template-columns:repeat(9,1fr);background:#0b1120;border:3px solid #fff;width:100%;aspect-ratio:1}.sudoku-cell{border:1px solid var(--kvikee-border);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:var(--kvikee-cyan);cursor:pointer;background:#0f172a;transition:background .1s;-webkit-user-select:none;user-select:none}.sudoku-cell.border-right-thick{border-right:2px solid #fff}.sudoku-cell.border-bottom-thick{border-bottom:2px solid #fff}.sudoku-cell.initial{color:#fff;cursor:default}.sudoku-cell.error{color:#ef4444!important;background:#ef444426!important}.sudoku-cell.region-complete{background:#22c55e1a}.sudoku-cell.region-complete.highlight{background:#22c55e33}.sudoku-cell.highlight{background:#22d3ee26}.sudoku-cell.same-val-highlight{background:#22d3ee66!important;text-shadow:0 0 10px rgba(34,211,238,.8)}.sudoku-cell.selected{background:#22d3ee99!important}.sudoku-keypad{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;width:100%}.sudoku-btn{width:calc(20% - 8px);aspect-ratio:1;font-size:1.1rem;font-weight:700;padding:0;display:flex;align-items:center;justify-content:center}.sudoku-btn:disabled{opacity:.1;cursor:not-allowed;background:transparent!important;border-color:var(--kvikee-border)!important;color:var(--kvikee-border)!important}.sudoku-btn.w-100{width:100%;aspect-ratio:auto;padding:6px;font-size:1rem}@media(max-height:700px){.sudoku-title{font-size:1.5rem}.sudoku-header{margin-bottom:.5rem!important}.sudoku-keypad{margin-top:1rem!important}.sudoku-wrapper{max-width:380px}}@media(max-width:400px){.sudoku-cell{font-size:1.15rem}.sudoku-wrapper{transform:scale(.95);transform-origin:top center}}@media(max-width:380px){.sudoku-wrapper{transform:scale(.9)}}@media(max-width:350px){.sudoku-wrapper{transform:scale(.8)}}
