.grid-puzzles{--isl-sea:#2f6683;--isl-sea-mark:#d6ecf5;--isl-sea-join:#3d7695;--isl-land:#efdcae;--isl-land-mark:#66501f;--isl-land-join:#dfc78f;--isl-coast:#3f5348;--isl-grid:color-mix(in srgb, var(--ink) 24%, transparent);--isl-open:var(--card);--isl-bad-on-sea:#ffd3c6}:root[data-theme=dark] .grid-puzzles{--isl-sea:#357a9c;--isl-sea-mark:#e3f4fb;--isl-sea-join:#4386a8;--isl-land:#584a2c;--isl-land-mark:#f1dca6;--isl-land-join:#6b5a36;--isl-coast:#b3c2b1;--isl-grid:color-mix(in srgb, var(--ink) 20%, transparent)}@media (prefers-color-scheme:dark){:root[data-theme=system] .grid-puzzles{--isl-sea:#357a9c;--isl-sea-mark:#e3f4fb;--isl-sea-join:#4386a8;--isl-land:#584a2c;--isl-land-mark:#f1dca6;--isl-land-join:#6b5a36;--isl-coast:#b3c2b1;--isl-grid:color-mix(in srgb, var(--ink) 20%, transparent)}}.grid-puzzles .isl-progress{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;margin:0 0 12px;font-size:.875rem}.grid-puzzles .isl-board{grid-template-columns:repeat(var(--isl-size), minmax(0, 1fr));width:min(100%, calc(var(--isl-size) * 56px));border:2px solid var(--ink);background:var(--isl-open);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin-inline:auto;display:grid;container-type:inline-size}.grid-puzzles .isl-board .isl-cell{aspect-ratio:1;background:var(--isl-open);min-width:0;min-height:0;color:var(--ink);font:inherit;cursor:pointer;box-shadow:inset 0 0 0 var(--ring-width,0px) var(--ring,transparent), inset -1px 0 0 var(--edge-r,var(--isl-grid)), inset 0 -1px 0 var(--edge-b,var(--isl-grid)), inset 1px 0 0 var(--edge-l,transparent), inset 0 1px 0 var(--edge-t,transparent);-webkit-tap-highlight-color:transparent;border:0;border-radius:0;place-items:center;margin:0;padding:0;line-height:1;transition:background-color .12s ease-out;display:grid;position:relative}@media (hover:hover){.grid-puzzles .isl-board button.isl-cell.is-open:hover:not([aria-disabled=true]){background:color-mix(in oklab, var(--accent-soft) 70%, var(--isl-open))}}.grid-puzzles .isl-board .isl-cell.edge-r{--edge-r:transparent}.grid-puzzles .isl-board .isl-cell.edge-b{--edge-b:transparent}.grid-puzzles .isl-board .isl-cell.is-sea{background:var(--isl-sea);color:var(--isl-sea-mark)}.grid-puzzles .isl-board .isl-cell.is-land{background:var(--isl-land);color:var(--isl-land-mark)}.grid-puzzles .isl-board .isl-cell.is-sea.j-r{--edge-r:var(--isl-sea-join)}.grid-puzzles .isl-board .isl-cell.is-sea.j-b{--edge-b:var(--isl-sea-join)}.grid-puzzles .isl-board .isl-cell.is-land.j-r{--edge-r:var(--isl-land-join)}.grid-puzzles .isl-board .isl-cell.is-land.j-b{--edge-b:var(--isl-land-join)}.grid-puzzles .isl-board .isl-cell.s-r{--edge-r:transparent}.grid-puzzles .isl-board .isl-cell.s-b{--edge-b:transparent}.grid-puzzles .isl-board .isl-cell.c-r{--edge-r:var(--isl-coast)}.grid-puzzles .isl-board .isl-cell.c-b{--edge-b:var(--isl-coast)}.grid-puzzles .isl-board .isl-cell.c-l{--edge-l:var(--isl-coast)}.grid-puzzles .isl-board .isl-cell.c-t{--edge-t:var(--isl-coast)}.grid-puzzles .isl-glyph{pointer-events:none;width:60%;height:60%;display:block}.grid-puzzles .isl-board .isl-dot{width:46%;height:46%}.grid-puzzles .isl-number{color:var(--ink);font-variant-numeric:tabular-nums;pointer-events:none;font-weight:750;font-size:min(calc(100cqw / var(--isl-size) * .52), 1.75rem)}.grid-puzzles .isl-board .isl-cell.is-done:after{content:"";border-top:2px solid var(--isl-land-mark);border-radius:2px;position:absolute;bottom:15%;left:32%;right:32%}.grid-puzzles .isl-board .isl-cell.is-look{outline:2px dashed var(--ink);outline-offset:-5px;z-index:1}.grid-puzzles .isl-board .isl-cell.is-look.is-sea{outline-color:var(--isl-sea-mark)}.grid-puzzles .isl-board .isl-cell.is-applied{--ring-width:3px;--ring:var(--accent)}.grid-puzzles .isl-board .isl-cell.is-applied.is-sea{--ring:var(--isl-sea-mark)}.grid-puzzles .isl-board .isl-cell.is-conflict{outline:2px dashed var(--bad);outline-offset:-5px;z-index:1}.grid-puzzles .isl-board .isl-cell.is-conflict.is-sea{outline-color:var(--isl-bad-on-sea)}.grid-puzzles .isl-conflict-mark{background:var(--card);min-width:14px;color:var(--bad);text-align:center;border-radius:999px;padding:1px 3px;font-size:.6875rem;font-weight:800;line-height:1.1;position:absolute;top:2px;right:2px}.grid-puzzles .isl-board .isl-cell:focus-visible{outline:3px solid var(--accent);outline-offset:-3px;z-index:2}.grid-puzzles .isl-board .isl-cell.is-sea:focus-visible{outline-color:var(--isl-sea-mark)}.grid-puzzles .isl-board[data-solved] .isl-cell{cursor:default}.grid-puzzles .isl-selection{text-align:center;min-height:1.5em;color:var(--muted);margin:10px 0 0;font-size:.875rem}.grid-puzzles .isl-palette{justify-content:center;gap:8px;width:min(100%,460px);margin:8px auto 0;display:flex}.grid-puzzles .isl-palette button{text-align:center;flex:1 1 0;justify-content:center;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:inline-flex}.grid-puzzles .isl-palette .isl-glyph{width:28px;height:28px;box-shadow:inset 0 0 0 1px var(--isl-grid);border-radius:7px;flex:none;padding:3px}.grid-puzzles .isl-palette [data-tool=sea] .isl-glyph{background:var(--isl-sea);color:var(--isl-sea-mark)}.grid-puzzles .isl-palette [data-tool=island] .isl-glyph{background:var(--isl-land);color:var(--isl-land-mark);padding:7px}.grid-puzzles .isl-palette [data-tool=clear] .isl-glyph{background:var(--isl-open);color:var(--muted)}.grid-puzzles .isl-palette button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--accent)}.grid-puzzles .isl-tools{flex-wrap:wrap;justify-content:center;gap:8px;width:min(100%,460px);margin:8px auto 0;display:flex}.grid-puzzles .isl-tools button{flex:auto;min-width:0;padding-inline:10px;font-size:.875rem}.grid-puzzles .isl-feedback{text-align:center;margin:12px 0 0;line-height:1.6}.grid-puzzles .isl-feedback:empty{display:none}.grid-puzzles .isl-feedback.success{color:var(--good);font-weight:650}.grid-puzzles .isl-hint{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.grid-puzzles .isl-hint h3{margin:0 0 8px}.grid-puzzles .isl-hint p,.grid-puzzles .isl-hint li,.grid-puzzles .isl-help p,.grid-puzzles .isl-help li{max-width:68ch;line-height:1.6}.grid-puzzles .isl-hint .actions{justify-content:flex-start;align-items:stretch}.grid-puzzles .isl-help{margin-top:16px}.grid-puzzles .isl-methods,.grid-puzzles .isl-rules,.grid-puzzles .isl-about-methods,.grid-puzzles .isl-about-rules{margin:4px 0 12px;padding-left:22px}.grid-puzzles :is(.isl-methods,.isl-rules,.isl-about-methods,.isl-about-rules) li+li{margin-top:6px}.grid-puzzles .grid-review :is(.isl-palette,.isl-tools,.isl-selection,.isl-help,.isl-hint,.isl-feedback),.grid-puzzles[data-phase=playing] #grid-methods{display:none}.grid-puzzles .isl-example .example-scene{min-height:0;margin:8px 0 12px}.grid-puzzles .isl-example-board{touch-action:auto;width:168px}.grid-puzzles .isl-example-board .isl-cell{cursor:default}.grid-puzzles .isl-example-board .isl-number{font-size:1.25rem}.grid-puzzles .isl-example-board .isl-cell.is-choice{outline:2px dashed var(--accent);outline-offset:-5px}.grid-puzzles .isl-example-board .isl-cell.is-joined:before{content:"";border-block:2px dashed var(--bad);pointer-events:none;position:absolute;inset:3px 0}.grid-puzzles .isl-example-board .isl-cell.joined-first:before{border-left:2px dashed var(--bad);left:3px}.grid-puzzles .isl-example-board .isl-cell.joined-last:before{border-right:2px dashed var(--bad);right:3px}.grid-puzzles .isl-letter{color:currentColor;opacity:.85;font-size:.6875rem;font-weight:750;line-height:1;position:absolute;top:3px;left:4px}.grid-puzzles .isl-example-board .isl-cell.is-open .isl-letter{color:var(--accent);opacity:1;font-size:1rem;position:static}.grid-puzzles .isl-example .example-actions button{min-width:96px}@media (width<=650px){.grid-puzzles #grid-playing .isl-stage:has(.isl-board[data-size="8"])>.grid-board-scroll{--isl-board-gutter:max(16px, var(--page-gutter));width:calc(100% + var(--isl-board-gutter) * 2);max-width:none;margin-inline:calc(-1 * var(--isl-board-gutter))}.grid-puzzles .isl-tools button{flex:calc(50% - 4px)}.grid-puzzles .isl-palette button{flex-direction:column;gap:4px;padding:8px 4px}.grid-puzzles .isl-example-board{width:132px}.grid-puzzles .isl-example-board .isl-number{font-size:1.0625rem}}@media (prefers-reduced-motion:reduce){.grid-puzzles .isl-board .isl-cell{transition:none}}@media (forced-colors:active){.grid-puzzles .isl-board{forced-color-adjust:none;background:canvastext;border-color:canvastext;gap:1px}.grid-puzzles .isl-board .isl-cell,.grid-puzzles .isl-board .isl-cell.is-sea,.grid-puzzles .isl-board .isl-cell.is-land{color:canvastext;box-shadow:none;background:canvas}.grid-puzzles .isl-board .isl-cell:focus-visible,.grid-puzzles .isl-board .isl-cell.is-look,.grid-puzzles .isl-board .isl-cell.is-conflict{outline-color:highlight}.grid-puzzles .isl-number{color:canvastext}}@media print{.grid-puzzles :is(.isl-palette,.isl-tools,.isl-selection,.isl-feedback,.isl-hint,.isl-help,.grid-round-top){display:none!important}.grid-puzzles .isl-board .isl-cell{-webkit-print-color-adjust:exact;print-color-adjust:exact;outline:0!important}.grid-puzzles .isl-board .isl-cell.is-sea{color:#333!important;background:#d4d4d4!important}.grid-puzzles .isl-board .isl-cell.is-land,.grid-puzzles .isl-board .isl-cell.is-open{color:#333!important;background:#fff!important}.grid-puzzles .isl-number{color:#111!important}}
