{"id":5281,"date":"2026-07-23T17:25:25","date_gmt":"2026-07-23T20:25:25","guid":{"rendered":"https:\/\/muttstudio.com.br\/games\/minefield\/"},"modified":"2026-07-23T18:47:24","modified_gmt":"2026-07-23T21:47:24","slug":"minefield","status":"publish","type":"page","link":"https:\/\/muttstudio.com.br\/en\/games\/minefield\/","title":{"rendered":"Minefield"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"5281\" class=\"elementor elementor-5281 elementor-5244\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e374f28 e-flex e-con-boxed e-con e-parent\" data-id=\"e374f28\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0b7e5f8 elementor-widget elementor-widget-html\" data-id=\"0b7e5f8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<style>\n  :root{\n    --paper:#F4F4F2;\n    --panel:#1C2128;\n    --panel-soft:#262C35;\n    --ink:#20262E;\n    --ink-soft:#5C6470;\n    --brass:#8FB99B;\n    --brass-soft:#DCEBE0;\n    --error:#C0524A;\n    --success:#4F8A63;\n    --line-thin: rgba(28,33,40,0.14);\n    --line-thick: #1C2128;\n    --radius: 14px;\n    --mono: 'Courier New', 'Cascadia Code', 'SF Mono', monospace;\n    --sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  }\n\n  *{ box-sizing:border-box; }\n\n  .app{\n    width:100%;\n    max-width:480px;\n    margin: 0 auto;   \/* \u2190 centraliza horizontalmente *\/\n\n  }\n\n  .title-block{\n    text-align:center;\n    margin-bottom:22px;\n  }\n\n  .title-block h1{\n    font-family: var(--mono);\n    font-size:2rem;\n    letter-spacing: 0.04em;\n    margin:0 0 6px;\n    color:var(--panel);\n    position:relative;\n    display:inline-block;\n  }\n\n  .title-block h1::after{\n    content:'';\n    position:absolute;\n    left:8%;\n    right:8%;\n    bottom:-6px;\n    height:3px;\n    background: var(--brass);\n    border-radius:2px;\n  }\n\n  .title-block p{\n    margin:14px 0 0;\n    color:var(--ink-soft);\n    font-size:0.92rem;\n  }\n\n  .status-row{\n    display:flex;\n    justify-content:space-between;\n    align-items:center;\n    gap:12px;\n    margin-bottom:16px;\n  }\n\n  .status-card{\n    background:var(--panel);\n    color:#fff;\n    border-radius: var(--radius);\n    padding:12px 18px;\n    display:flex;\n    align-items:center;\n    gap:10px;\n    font-family:var(--mono);\n    font-size:1.15rem;\n    flex:1;\n  }\n\n  .status-card.errors{\n    justify-content:flex-end;\n    background: var(--panel-soft);\n  }\n\n  .status-card .label{\n    font-family: var(--sans);\n    font-size:0.72rem;\n    color:#9AA3AF;\n    text-transform:uppercase;\n    letter-spacing:0.08em;\n  }\n\n  #pause-btn{\n    background:none;\n    border:none;\n    cursor:pointer;\n    color:var(--brass);\n    padding:2px;\n    display:flex;\n    align-items:center;\n  }\n  #pause-btn svg{ width:20px; height:20px; }\n\n  #errors-count.shake{\n    animation: shake 0.35s;\n    color: var(--error);\n  }\n  @keyframes shake{\n    0%,100%{ transform: translateX(0); }\n    25%{ transform: translateX(-4px); }\n    75%{ transform: translateX(4px); }\n  }\n\n  .tabs{\n    display:flex;\n    background: rgba(28,33,40,0.06);\n    border-radius: var(--radius);\n    padding:5px;\n    margin-bottom:20px;\n    gap:4px;\n  }\n\n  .tab{\n    flex:1;\n    border:none;\n    background:transparent;\n    padding:10px 0;\n    border-radius: 10px;\n    font-family: var(--sans);\n    font-weight:600;\n    font-size:0.92rem;\n    color: var(--ink-soft);\n    cursor:pointer;\n    transition: background 0.15s, color 0.15s;\n  }\n\n  .tab.active{\n    background:#fff;\n    color: var(--panel);\n    box-shadow: 0 2px 6px rgba(0,0,0,0.08);\n  }\n\n  .board-wrap{\n    position:relative;\n  }\n\n  .board{\n    display:grid;\n    grid-template-columns: repeat(9, 1fr);\n    grid-template-rows: repeat(9, 1fr);\n    background:#fff;\n    border:2.5px solid var(--line-thick);\n    border-radius: 0;\n    overflow:hidden;\n    aspect-ratio:1\/1;\n    box-shadow: 0 8px 24px rgba(28,33,40,0.10);\n  }\n\n  .cell{\n    display:flex;\n    align-items:center;\n    justify-content:center;\n    font-family: var(--mono);\n    font-size: clamp(1rem, 4vw, 1.5rem);\n    font-weight:600;\n    color: var(--panel);\n    background:#fff;\n    cursor:pointer;\n    border:1px solid var(--line-thin);\n    user-select:none;\n    position:relative;\n    transition: background 0.12s;\n  }\n\n  .cell.given{\n    color:#3a4048;\n    cursor:default;\n    font-weight:700;\n  }\n\n  .cell.selected{\n    background: var(--brass-soft);\n  }\n\n  .cell.peer{\n    background: rgba(143,185,155,0.14);\n  }\n\n  .cell.same-value:not(.selected){\n    background: rgba(143,185,155,0.30);\n  }\n\n  .cell.error{\n    color: var(--error);\n  }\n\n  .cell.hinted{\n    color: var(--success);\n  }\n\n  .cell:nth-child(3n){ border-right: 2px solid var(--line-thick); }\n  .cell:nth-child(9n+1){ border-left: 2px solid var(--line-thick); }\n  .cell:nth-child(n){ }\n\n  .board .cell:nth-child(-n+9){ border-top: 2px solid var(--line-thick); }\n\n  \/* thick horizontal lines every 3 rows -> apply via row index using nth-child ranges *\/\n  .row-thick-top{ border-top: 2px solid var(--line-thick) !important; }\n\n  .win-banner{\n    position:absolute;\n    inset:0;\n    background: rgba(28,33,40,0.92);\n    color:#fff;\n    display:none;\n    flex-direction:column;\n    align-items:center;\n    justify-content:center;\n    border-radius:0;\n    text-align:center;\n    padding:20px;\n    gap:8px;\n  }\n  .win-banner.show{ display:flex; }\n  .win-banner .big{\n    font-family: var(--mono);\n    font-size:1.6rem;\n    color: var(--brass-soft);\n  }\n  .win-banner .small{\n    font-size:0.85rem;\n    color:#C7CBD1;\n  }\n  .win-banner button{\n    margin-top:12px;\n    background: var(--brass);\n    border:none;\n    color:var(--panel);\n    font-weight:700;\n    padding:10px 20px;\n    border-radius:10px;\n    cursor:pointer;\n    font-size:0.9rem;\n  }\n\n  .pad{\n    display:grid;\n    grid-template-columns: repeat(5,1fr);\n    gap:10px;\n    margin-top:24px;\n  }\n\n  .pad button{\n    aspect-ratio:1\/1;\n    border-radius:12px;\n    border:1px solid rgba(28,33,40,0.12);\n    background:#fff;\n    font-family: var(--mono);\n    font-size:1.3rem;\n    font-weight:700;\n    color: var(--panel);\n    cursor:pointer;\n    box-shadow: 0 2px 4px rgba(28,33,40,0.05);\n    transition: transform 0.08s, background 0.12s;\n  }\n\n  .pad button:active{\n    transform: scale(0.94);\n    background: var(--brass-soft);\n  }\n\n  .pad button.erase svg{ width:20px; height:20px; }\n  .pad button.erase{ display:flex; align-items:center; justify-content:center; color:var(--ink-soft); }\n\n  .pad button:disabled{\n    opacity:0.35;\n    cursor:default;\n  }\n\n  .actions{\n    display:flex;\n    gap:12px;\n    margin-top:18px;\n  }\n\n  .actions button{\n    flex:1;\n    padding:13px 0;\n    border-radius: var(--radius);\n    border:none;\n    background: rgba(28,33,40,0.06);\n    color: var(--panel);\n    font-weight:600;\n    font-size:0.9rem;\n    cursor:pointer;\n    display:flex;\n    align-items:center;\n    justify-content:center;\n    gap:8px;\n  }\n\n  .actions button svg{ width:16px; height:16px; }\n\n  .actions button:active{ background: rgba(28,33,40,0.12); }\n\n\n\n@media (max-width: 480px){\n  .pad{\n    grid-template-columns: repeat(3, 1fr);\n    max-width: 260px;\n    margin-left: auto;\n    margin-right: auto;\n  }\n  .pad button.erase{\n    grid-column: 2 \/ 3;\n  }\n}\n<\/style>\n<\/head>\n<body>\n\n<div class=\"app\">\n  <div class=\"title-block\">\n    <h1>Sudoku<\/h1>\n    <p>Escolha a dificuldade e resolva o quebra-cabe\u00e7a o mais r\u00e1pido que puder.<\/p>\n  <\/div>\n\n  <div class=\"status-row\">\n    <div class=\"status-card timer\">\n      <button id=\"pause-btn\" title=\"Pausar\/Retomar\">\n        <svg id=\"pause-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"13\" r=\"8\"\/><path d=\"M12 9v4l2.5 2.5\"\/><path d=\"M9 2h6\"\/><\/svg>\n      <\/button>\n      <span id=\"timer\">00:00<\/span>\n    <\/div>\n    <div class=\"status-card errors\">\n      <span class=\"label\">Erros:&nbsp;<\/span><span id=\"errors-count\">0<\/span>\n    <\/div>\n  <\/div>\n\n  <div class=\"tabs\">\n    <button class=\"tab\" data-level=\"facil\">F\u00e1cil<\/button>\n    <button class=\"tab active\" data-level=\"medio\">M\u00e9dio<\/button>\n    <button class=\"tab\" data-level=\"dificil\">Dif\u00edcil<\/button>\n  <\/div>\n\n  <div class=\"board-wrap\">\n    <div class=\"board\" id=\"board\"><\/div>\n    <div class=\"win-banner\" id=\"win-banner\">\n      <div class=\"big\">Conclu\u00eddo!<\/div>\n      <div class=\"small\" id=\"win-time\"><\/div>\n      <button id=\"win-new\">Jogar novamente<\/button>\n    <\/div>\n  <\/div>\n\n  <div class=\"pad\" id=\"pad\">\n    <button data-num=\"1\">1<\/button>\n    <button data-num=\"2\">2<\/button>\n    <button data-num=\"3\">3<\/button>\n    <button data-num=\"4\">4<\/button>\n    <button data-num=\"5\">5<\/button>\n    <button data-num=\"6\">6<\/button>\n    <button data-num=\"7\">7<\/button>\n    <button data-num=\"8\">8<\/button>\n    <button data-num=\"9\">9<\/button>\n    <button class=\"erase\" data-num=\"0\" title=\"Apagar\">\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M19 20H8l-6-6 9-9 8 8-6 7z\"\/><path d=\"M12 12l6 6\"\/><\/svg>\n    <\/button>\n  <\/div>\n\n  <div class=\"actions\">\n    <button id=\"hint-btn\">\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M9 18h6M10 21h4M12 3a6 6 0 0 0-4 10.5c.6.6 1 1.4 1 2.5h6c0-1.1.4-1.9 1-2.5A6 6 0 0 0 12 3z\"\/><\/svg>\n      Dica\n    <\/button>\n    <button id=\"new-game-btn\">\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M23 4v6h-6M1 20v-6h6\"\/><path d=\"M3.5 9a9 9 0 0 1 14.6-3.4L23 10M1 14l4.9 4.4A9 9 0 0 0 20.5 15\"\/><\/svg>\n      Novo jogo\n    <\/button>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  const N = 9;\n  const DIFFICULTY_CLUES = { facil: 40, medio: 32, dificil: 25 };\n\n  let solution = [];\n  let puzzle = [];       \/\/ current state of the board (0 = empty)\n  let givens = [];       \/\/ boolean mask of original clues\n  let selected = null;   \/\/ {r,c}\n  let errors = 0;\n  let seconds = 0;\n  let timerHandle = null;\n  let paused = false;\n  let level = 'medio';\n  let solved = false;\n\n  \/\/ ---------- Sudoku generation ----------\n\n  function emptyGrid(){\n    return Array.from({length:N}, () => Array(N).fill(0));\n  }\n\n  function shuffle(arr){\n    for(let i = arr.length - 1; i > 0; i--){\n      const j = Math.floor(Math.random() * (i+1));\n      [arr[i], arr[j]] = [arr[j], arr[i]];\n    }\n    return arr;\n  }\n\n  function isValid(grid, r, c, val){\n    for(let i=0;i<N;i++){\n      if(grid[r][i] === val) return false;\n      if(grid[i][c] === val) return false;\n    }\n    const br = Math.floor(r\/3)*3, bc = Math.floor(c\/3)*3;\n    for(let i=0;i<3;i++){\n      for(let j=0;j<3;j++){\n        if(grid[br+i][bc+j] === val) return false;\n      }\n    }\n    return true;\n  }\n\n  function findEmpty(grid){\n    for(let r=0;r<N;r++){\n      for(let c=0;c<N;c++){\n        if(grid[r][c] === 0) return [r,c];\n      }\n    }\n    return null;\n  }\n\n  function fillGrid(grid){\n    const spot = findEmpty(grid);\n    if(!spot) return true;\n    const [r,c] = spot;\n    const nums = shuffle([1,2,3,4,5,6,7,8,9]);\n    for(const val of nums){\n      if(isValid(grid, r, c, val)){\n        grid[r][c] = val;\n        if(fillGrid(grid)) return true;\n        grid[r][c] = 0;\n      }\n    }\n    return false;\n  }\n\n  \/\/ counts solutions, stopping early once it finds more than 1\n  function countSolutions(grid, limit){\n    const spot = findEmpty(grid);\n    if(!spot) return 1;\n    const [r,c] = spot;\n    let count = 0;\n    for(let val=1; val<=9; val++){\n      if(isValid(grid, r, c, val)){\n        grid[r][c] = val;\n        count += countSolutions(grid, limit - count);\n        grid[r][c] = 0;\n        if(count >= limit) return count;\n      }\n    }\n    return count;\n  }\n\n  function generatePuzzle(cluesTarget){\n    const full = emptyGrid();\n    fillGrid(full);\n    const sol = full.map(row => row.slice());\n\n    const working = full.map(row => row.slice());\n    const positions = shuffle(\n      Array.from({length:81}, (_,i) => [Math.floor(i\/9), i%9])\n    );\n\n    let cellsFilled = 81;\n    for(const [r,c] of positions){\n      if(cellsFilled <= cluesTarget) break;\n      const backup = working[r][c];\n      working[r][c] = 0;\n      const copy = working.map(row => row.slice());\n      const solCount = countSolutions(copy, 2);\n      if(solCount === 1){\n        cellsFilled--;\n      } else {\n        working[r][c] = backup;\n      }\n    }\n    return { puzzle: working, solution: sol };\n  }\n\n  \/\/ ---------- Rendering ----------\n\n  const boardEl = document.getElementById('board');\n  const timerEl = document.getElementById('timer');\n  const errorsEl = document.getElementById('errors-count');\n  const winBanner = document.getElementById('win-banner');\n  const winTime = document.getElementById('win-time');\n\n  function buildBoardDOM(){\n    boardEl.innerHTML = '';\n    for(let r=0;r<9;r++){\n      for(let c=0;c<9;c++){\n        const cell = document.createElement('div');\n        cell.className = 'cell';\n        cell.dataset.r = r;\n        cell.dataset.c = c;\n        if(r % 3 === 0) cell.classList.add('row-thick-top');\n        cell.addEventListener('click', () => selectCell(r,c));\n        boardEl.appendChild(cell);\n      }\n    }\n  }\n\n  function render(){\n    const cells = boardEl.children;\n    for(let r=0;r<9;r++){\n      for(let c=0;c<9;c++){\n        const idx = r*9 + c;\n        const cell = cells[idx];\n        const val = puzzle[r][c];\n        cell.textContent = val === 0 ? '' : val;\n        cell.classList.toggle('given', givens[r][c]);\n        cell.classList.remove('selected','peer','same-value','error','hinted');\n\n        if(val !== 0 && !givens[r][c] && val !== solution[r][c]){\n          cell.classList.add('error');\n        }\n      }\n    }\n    if(selected){\n      const {r,c} = selected;\n      highlightPeers(r,c);\n    }\n  }\n\n  function highlightPeers(r,c){\n    const cells = boardEl.children;\n    const val = puzzle[r][c];\n    for(let rr=0; rr<9; rr++){\n      for(let cc=0; cc<9; cc++){\n        const idx = rr*9+cc;\n        const cell = cells[idx];\n        const sameRow = rr === r;\n        const sameCol = cc === c;\n        const sameBox = Math.floor(rr\/3) === Math.floor(r\/3) && Math.floor(cc\/3) === Math.floor(c\/3);\n        if(rr === r && cc === c){\n          cell.classList.add('selected');\n        } else if(sameRow || sameCol || sameBox){\n          cell.classList.add('peer');\n        }\n        if(val !== 0 && puzzle[rr][cc] === val){\n          cell.classList.add('same-value');\n        }\n      }\n    }\n  }\n\n  function selectCell(r,c){\n    if(solved || paused) return;\n    selected = {r,c};\n    render();\n  }\n\n  \/\/ ---------- Timer ----------\n\n  function formatTime(total){\n    const m = Math.floor(total\/60).toString().padStart(2,'0');\n    const s = (total%60).toString().padStart(2,'0');\n    return m + ':' + s;\n  }\n\n  function startTimer(){\n    stopTimer();\n    timerHandle = setInterval(() => {\n      if(!paused && !solved){\n        seconds++;\n        timerEl.textContent = formatTime(seconds);\n      }\n    }, 1000);\n  }\n\n  function stopTimer(){\n    if(timerHandle) clearInterval(timerHandle);\n    timerHandle = null;\n  }\n\n  const pauseBtn = document.getElementById('pause-btn');\n  const pauseIcon = document.getElementById('pause-icon');\n  pauseBtn.addEventListener('click', () => {\n    if(solved) return;\n    paused = !paused;\n    boardEl.style.filter = paused ? 'blur(6px)' : 'none';\n    pauseIcon.innerHTML = paused\n      ? '<polygon points=\"6 3 20 12 6 21 6 3\"\/>'\n      : '<circle cx=\"12\" cy=\"13\" r=\"8\"\/><path d=\"M12 9v4l2.5 2.5\"\/><path d=\"M9 2h6\"\/>';\n  });\n\n  \/\/ ---------- Game actions ----------\n\n  function checkWin(){\n    for(let r=0;r<9;r++){\n      for(let c=0;c<9;c++){\n        if(puzzle[r][c] !== solution[r][c]) return false;\n      }\n    }\n    return true;\n  }\n\n  function setNumber(num){\n    if(!selected || solved || paused) return;\n    const {r,c} = selected;\n    if(givens[r][c]) return;\n\n    if(num === 0){\n      puzzle[r][c] = 0;\n      render();\n      return;\n    }\n\n    puzzle[r][c] = num;\n    if(num !== solution[r][c]){\n      errors++;\n      errorsEl.textContent = errors;\n      errorsEl.classList.remove('shake');\n      void errorsEl.offsetWidth;\n      errorsEl.classList.add('shake');\n    }\n    render();\n\n    if(checkWin()){\n      solved = true;\n      stopTimer();\n      winTime.textContent = 'Tempo: ' + formatTime(seconds) + '  \u2022  Erros: ' + errors;\n      winBanner.classList.add('show');\n    }\n  }\n\n  document.getElementById('pad').addEventListener('click', (e) => {\n    const btn = e.target.closest('button');\n    if(!btn) return;\n    setNumber(parseInt(btn.dataset.num, 10));\n  });\n\n  document.addEventListener('keydown', (e) => {\n    if(!selected) return;\n    if(e.key >= '1' && e.key <= '9'){ setNumber(parseInt(e.key,10)); }\n    if(e.key === 'Backspace' || e.key === 'Delete' || e.key === '0'){ setNumber(0); }\n    const {r,c} = selected;\n    if(e.key === 'ArrowUp' && r>0) selectCell(r-1,c);\n    if(e.key === 'ArrowDown' && r<8) selectCell(r+1,c);\n    if(e.key === 'ArrowLeft' && c>0) selectCell(r,c-1);\n    if(e.key === 'ArrowRight' && c<8) selectCell(r,c+1);\n  });\n\n  document.getElementById('hint-btn').addEventListener('click', () => {\n    if(solved || paused) return;\n    let target = selected;\n    if(!target || givens[target.r][target.c] || puzzle[target.r][target.c] === solution[target.r][target.c]){\n      \/\/ find some empty\/incorrect cell instead\n      outer:\n      for(let r=0;r<9;r++){\n        for(let c=0;c<9;c++){\n          if(!givens[r][c] && puzzle[r][c] !== solution[r][c]){\n            target = {r,c};\n            break outer;\n          }\n        }\n      }\n    }\n    if(!target) return;\n    selected = target;\n    puzzle[target.r][target.c] = solution[target.r][target.c];\n    render();\n    boardEl.children[target.r*9+target.c].classList.add('hinted');\n    if(checkWin()){\n      solved = true;\n      stopTimer();\n      winTime.textContent = 'Tempo: ' + formatTime(seconds) + '  \u2022  Erros: ' + errors;\n      winBanner.classList.add('show');\n    }\n  });\n\n  function newGame(){\n    const { puzzle: p, solution: s } = generatePuzzle(DIFFICULTY_CLUES[level]);\n    puzzle = p;\n    solution = s;\n    givens = puzzle.map(row => row.map(v => v !== 0));\n    selected = null;\n    errors = 0;\n    seconds = 0;\n    solved = false;\n    paused = false;\n    boardEl.style.filter = 'none';\n    errorsEl.textContent = '0';\n    timerEl.textContent = '00:00';\n    winBanner.classList.remove('show');\n    pauseIcon.innerHTML = '<circle cx=\"12\" cy=\"13\" r=\"8\"\/><path d=\"M12 9v4l2.5 2.5\"\/><path d=\"M9 2h6\"\/>';\n    render();\n    startTimer();\n  }\n\n  document.getElementById('new-game-btn').addEventListener('click', newGame);\n  document.getElementById('win-new').addEventListener('click', newGame);\n\n  document.querySelectorAll('.tab').forEach(tab => {\n    tab.addEventListener('click', () => {\n      document.querySelectorAll('.tab').forEach(t => t.classList.remove('active'));\n      tab.classList.add('active');\n      level = tab.dataset.level;\n      newGame();\n    });\n  });\n\n  \/\/ ---------- Init ----------\n  buildBoardDOM();\n  newGame();\n})();\n<\/script>\n<\/html>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>:root{ &#8211;paper:#F4F4F2; &#8211;panel:#1C2128; &#8211;panel-soft:#262C35; &#8211;ink:#20262E; &#8211;ink-soft:#5C6470; &#8211;brass:#8FB99B; &#8211;brass-soft:#DCEBE0; &#8211;error:#C0524A; &#8211;success:#4F8A63; &#8211;line-thin: rgba(28,33,40,0.14); &#8211;line-thick: #1C2128; &#8211;radius: 14px; &#8211;mono: &#8216;Courier New&#8217;, &#8216;Cascadia Code&#8217;, &#8216;SF Mono&#8217;, monospace; &#8211;sans: -apple-system, BlinkMacSystemFont, &#8216;Segoe UI&#8217;, Roboto, Helvetica, Arial, sans-serif; } *{ box-sizing:border-box; } .app{ width:100%; max-width:480px; margin: 0 auto; \/* \u2190 centraliza horizontalmente *\/ } .title-block{ text-align:center; margin-bottom:22px; } .title-block h1{ [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":5279,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-5281","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Minefield - Mutt Studio<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/muttstudio.com.br\/en\/games\/minefield\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Minefield - Mutt Studio\" \/>\n<meta property=\"og:description\" content=\":root{ &#8211;paper:#F4F4F2; &#8211;panel:#1C2128; &#8211;panel-soft:#262C35; &#8211;ink:#20262E; &#8211;ink-soft:#5C6470; &#8211;brass:#8FB99B; &#8211;brass-soft:#DCEBE0; &#8211;error:#C0524A; &#8211;success:#4F8A63; &#8211;line-thin: rgba(28,33,40,0.14); &#8211;line-thick: #1C2128; &#8211;radius: 14px; &#8211;mono: &#8216;Courier New&#8217;, &#8216;Cascadia Code&#8217;, &#8216;SF Mono&#8217;, monospace; &#8211;sans: -apple-system, BlinkMacSystemFont, &#8216;Segoe UI&#8217;, Roboto, Helvetica, Arial, sans-serif; } *{ box-sizing:border-box; } .app{ width:100%; max-width:480px; margin: 0 auto; \/* \u2190 centraliza horizontalmente *\/ } .title-block{ text-align:center; margin-bottom:22px; } .title-block h1{ [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/muttstudio.com.br\/en\/games\/minefield\/\" \/>\n<meta property=\"og:site_name\" content=\"Mutt Studio\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/muttstudio\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-23T21:47:24+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@muttstudio\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/games\\\/minefield\\\/\",\"url\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/games\\\/minefield\\\/\",\"name\":\"Minefield - Mutt Studio\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/#website\"},\"datePublished\":\"2026-07-23T20:25:25+00:00\",\"dateModified\":\"2026-07-23T21:47:24+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/games\\\/minefield\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/games\\\/minefield\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/games\\\/minefield\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Games\",\"item\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/games\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Minefield\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/\",\"name\":\"Mutt Studio\",\"description\":\"Resolvemos problemas com design e tecnologia.\",\"publisher\":{\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/#organization\",\"name\":\"Mutt Studio\",\"url\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/muttstudio.com.br\\\/wp-content\\\/uploads\\\/2022\\\/11\\\/logo-muttstudio-oficial-sem-fundo.svg\",\"contentUrl\":\"https:\\\/\\\/muttstudio.com.br\\\/wp-content\\\/uploads\\\/2022\\\/11\\\/logo-muttstudio-oficial-sem-fundo.svg\",\"width\":493,\"height\":117,\"caption\":\"Mutt Studio\"},\"image\":{\"@id\":\"https:\\\/\\\/muttstudio.com.br\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/muttstudio\",\"https:\\\/\\\/x.com\\\/muttstudio\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/muttstudio\",\"https:\\\/\\\/www.behance.net\\\/MuttStudio\",\"https:\\\/\\\/www.youtube.com\\\/@muttstudio\",\"https:\\\/\\\/www.instagram.com\\\/muttstudio\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Minefield - Mutt Studio","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/muttstudio.com.br\/en\/games\/minefield\/","og_locale":"en_US","og_type":"article","og_title":"Minefield - Mutt Studio","og_description":":root{ &#8211;paper:#F4F4F2; &#8211;panel:#1C2128; &#8211;panel-soft:#262C35; &#8211;ink:#20262E; &#8211;ink-soft:#5C6470; &#8211;brass:#8FB99B; &#8211;brass-soft:#DCEBE0; &#8211;error:#C0524A; &#8211;success:#4F8A63; &#8211;line-thin: rgba(28,33,40,0.14); &#8211;line-thick: #1C2128; &#8211;radius: 14px; &#8211;mono: &#8216;Courier New&#8217;, &#8216;Cascadia Code&#8217;, &#8216;SF Mono&#8217;, monospace; &#8211;sans: -apple-system, BlinkMacSystemFont, &#8216;Segoe UI&#8217;, Roboto, Helvetica, Arial, sans-serif; } *{ box-sizing:border-box; } .app{ width:100%; max-width:480px; margin: 0 auto; \/* \u2190 centraliza horizontalmente *\/ } .title-block{ text-align:center; margin-bottom:22px; } .title-block h1{ [&hellip;]","og_url":"https:\/\/muttstudio.com.br\/en\/games\/minefield\/","og_site_name":"Mutt Studio","article_publisher":"https:\/\/www.facebook.com\/muttstudio","article_modified_time":"2026-07-23T21:47:24+00:00","twitter_card":"summary_large_image","twitter_site":"@muttstudio","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/muttstudio.com.br\/en\/games\/minefield\/","url":"https:\/\/muttstudio.com.br\/en\/games\/minefield\/","name":"Minefield - Mutt Studio","isPartOf":{"@id":"https:\/\/muttstudio.com.br\/en\/#website"},"datePublished":"2026-07-23T20:25:25+00:00","dateModified":"2026-07-23T21:47:24+00:00","breadcrumb":{"@id":"https:\/\/muttstudio.com.br\/en\/games\/minefield\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/muttstudio.com.br\/en\/games\/minefield\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/muttstudio.com.br\/en\/games\/minefield\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/muttstudio.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Games","item":"https:\/\/muttstudio.com.br\/en\/games\/"},{"@type":"ListItem","position":3,"name":"Minefield"}]},{"@type":"WebSite","@id":"https:\/\/muttstudio.com.br\/en\/#website","url":"https:\/\/muttstudio.com.br\/en\/","name":"Mutt Studio","description":"Resolvemos problemas com design e tecnologia.","publisher":{"@id":"https:\/\/muttstudio.com.br\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/muttstudio.com.br\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/muttstudio.com.br\/en\/#organization","name":"Mutt Studio","url":"https:\/\/muttstudio.com.br\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/muttstudio.com.br\/en\/#\/schema\/logo\/image\/","url":"https:\/\/muttstudio.com.br\/wp-content\/uploads\/2022\/11\/logo-muttstudio-oficial-sem-fundo.svg","contentUrl":"https:\/\/muttstudio.com.br\/wp-content\/uploads\/2022\/11\/logo-muttstudio-oficial-sem-fundo.svg","width":493,"height":117,"caption":"Mutt Studio"},"image":{"@id":"https:\/\/muttstudio.com.br\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/muttstudio","https:\/\/x.com\/muttstudio","https:\/\/www.linkedin.com\/company\/muttstudio","https:\/\/www.behance.net\/MuttStudio","https:\/\/www.youtube.com\/@muttstudio","https:\/\/www.instagram.com\/muttstudio\/"]}]}},"_links":{"self":[{"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/pages\/5281","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/comments?post=5281"}],"version-history":[{"count":2,"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/pages\/5281\/revisions"}],"predecessor-version":[{"id":5283,"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/pages\/5281\/revisions\/5283"}],"up":[{"embeddable":true,"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/pages\/5279"}],"wp:attachment":[{"href":"https:\/\/muttstudio.com.br\/en\/wp-json\/wp\/v2\/media?parent=5281"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}