html,body{margin:0;height:100%;overflow:hidden;background:#fff;-webkit-user-select:none;user-select:none}.board-stage{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--c-page, #fff)}.puzzle{opacity:1;transition:opacity .8s ease-in-out;animation:fade-in .8s ease-in-out}.puzzle.leaving{opacity:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.board-wrap{--line: 1px;--line-heavy: 3px}.layout{position:relative;display:grid}.corner{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:center;padding:calc(var(--cell) * .1);box-sizing:border-box}.minimap{display:block;image-rendering:pixelated;outline:1px solid var(--c-grid)}.col-clues{display:grid;grid-auto-flow:column;grid-auto-columns:var(--cell)}.row-clues{display:grid;grid-auto-rows:var(--cell)}.clue-line{display:flex;transition:opacity .8s ease-in-out}.clue-line.col{flex-direction:column;width:var(--cell)}.clue-line.row{flex-direction:row;height:var(--cell)}.clue-line.faded{opacity:.3}.clue-cell{display:flex;align-items:center;justify-content:center;box-sizing:border-box;background:var(--c-clueBg);color:var(--c-clueText);font:600 calc(var(--clue) * .72) / 1 system-ui,sans-serif;border:1px solid var(--c-clueBlank)}.clue-line.col .clue-cell{width:var(--cell);height:var(--clue)}.clue-line.row .clue-cell{width:var(--clue);height:var(--cell)}.clue-cell.blank{background:var(--c-clueBlank);border-color:var(--c-clueBlank)}.col-marks{display:grid;grid-auto-flow:column;grid-auto-columns:var(--cell)}.row-marks{display:grid;grid-auto-rows:var(--cell)}.mark{box-sizing:border-box;transition:background-color .6s ease-in-out}.col-marks .mark{margin:2px calc(var(--cell) * .12)}.row-marks .mark{margin:calc(var(--cell) * .12) 2px}.mark.ok{background:var(--c-lineOk)}.mark.wrong{background:var(--c-lineWrong)}.board{display:grid;grid-auto-rows:var(--cell);outline:var(--line-heavy) solid var(--c-grid);cursor:default}.cell{box-sizing:border-box;border:var(--line) solid var(--c-grid);background:var(--c-cellUnknown);transition:background-color .15s ease-out;position:relative}.cell.filled{background:var(--c-cellFilled)}.cell.marked{background:var(--c-cellMarked)}.cell.gv{border-right-width:var(--line-heavy)}.cell.gh{border-bottom-width:var(--line-heavy)}.cell.glow{box-shadow:inset 0 0 calc(var(--cell) * .35) var(--c-glow)}.cell.hint{animation:hint-pulse 2.4s ease-in-out infinite}@keyframes hint-pulse{0%,to{box-shadow:inset 0 0 0 0 var(--c-nextHint)}50%{box-shadow:inset 0 0 0 calc(var(--cell) * .5) var(--c-nextHint)}}.cell.wobble{animation:wobble .6s ease-in-out}@keyframes wobble{0%,to{transform:translate(0)}25%{transform:translate(calc(var(--cell) * -.06))}75%{transform:translate(calc(var(--cell) * .06))}}.band{position:absolute;pointer-events:none;box-sizing:border-box;background:color-mix(in srgb,var(--c-hover) 16%,transparent);border:2px solid color-mix(in srgb,var(--c-hover) 55%,transparent)}.drag{position:absolute;pointer-events:none;box-sizing:border-box;background:color-mix(in srgb,var(--c-drag) 20%,transparent);border:3px solid var(--c-drag)}.col-clues,.row-clues,.col-marks,.row-marks,.corner{transition:opacity 1.5s ease-in-out}.board{transition:outline-color 1.5s ease-in-out}.board-wrap.revealed .col-clues,.board-wrap.revealed .row-clues,.board-wrap.revealed .col-marks,.board-wrap.revealed .row-marks,.board-wrap.revealed .corner{opacity:0}.board-wrap.revealed .board{outline-color:transparent}.board-wrap.revealed .cell{border-color:transparent;box-shadow:none;transition:background-color 1.5s ease-in-out,border-color 1.5s ease-in-out}.board-wrap.revealed .cell.unknown,.board-wrap.revealed .cell.marked{background:transparent}.board-wrap.revealed .cell.filled{background:var(--c-reveal)}.reveal-img{width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity 1.5s ease-in-out;z-index:1}.board-wrap.revealed .reveal-img{opacity:1}.board-wrap.has-image.revealed .cell.filled{background:transparent}@media(prefers-reduced-motion:reduce){.puzzle{transition-duration:.25s;animation-duration:.25s}.cell.hint{animation:none;box-shadow:inset 0 0 0 calc(var(--cell) * .25) var(--c-nextHint)}.cell.wobble{animation:wobble-soft .6s ease-in-out}@keyframes wobble-soft{50%{opacity:.6}}.col-clues,.row-clues,.col-marks,.row-marks,.corner,.board,.board-wrap.revealed .cell,.reveal-img{transition-duration:.25s}}.pause-wrap{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;transition:opacity .8s ease-in-out;background:radial-gradient(ellipse at 50% 55%,#e7f1ee,#cfe3df 55%,#b9d3ce)}.pause-wrap.on{opacity:1;pointer-events:auto}.pause-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.pause-glow{width:22vmin;height:22vmin;border-radius:50%;background:radial-gradient(circle,#fffdf3,#f7efc9 60%,#f7efc900 72%);animation:breathe 9s ease-in-out infinite}@keyframes breathe{0%,to{transform:scale(.85);opacity:.75}50%{transform:scale(1.1);opacity:1}}@media(prefers-reduced-motion:reduce){.pause-wrap{transition-duration:.25s}.pause-glow{animation:none}}.board-stage{box-sizing:border-box}.status{position:fixed;right:18px;bottom:8px;height:48px;display:flex;align-items:center;gap:18px;color:color-mix(in srgb,var(--c-cellFilled, #000) 72%,var(--c-page, #fff));font-family:system-ui,sans-serif}.next-btn{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 22px 0 26px;border-radius:23px;border:2px solid color-mix(in srgb,var(--c-cellFilled, #000) 28%,var(--c-page, #fff));background:color-mix(in srgb,var(--c-cellFilled, #000) 7%,var(--c-page, #fff));color:inherit;font:600 20px/1 system-ui,sans-serif;cursor:pointer;transition:background-color .4s ease-in-out}.next-btn:hover{background:color-mix(in srgb,var(--c-cellFilled, #000) 14%,var(--c-page, #fff))}.next-btn:focus-visible{outline:3px solid var(--c-hover, #3b6bdc);outline-offset:2px}.next-btn .chev{font-size:28px;line-height:1;margin-top:-3px}.battery .shell,.battery .nub{fill:none;stroke:currentColor;stroke-width:1.5}.battery .nub,.battery .level{fill:currentColor}.battery .bolt{fill:var(--c-page, #fff);stroke:currentColor;stroke-width:1;stroke-linejoin:round}.battery.low{color:#b7791f}.clock{display:flex;flex-direction:column;align-items:flex-end;gap:2px;line-height:1.05}.clock .time{font-size:22px;font-weight:600}.clock .date{font-size:14px}.wifi{flex:none}.wifi .arc{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}.wifi .dot{fill:currentColor}.wifi .slash{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;opacity:0}.wifi .arc,.wifi .dot,.wifi .slash{transition:opacity .8s ease-in-out}.wifi.off .arc,.wifi.off .dot{opacity:.3}.wifi.off .slash{opacity:.55}
