/* Frogdoku: the board as a sheet of pond glass (William: "more liquid glass, less flat paint").
   One blur behind the whole board lets the painting show through; each pond is a thin tint of its colour, lit by a
   specular sheen and a bright top rim, and one soft glare crosses the sheet. Walls stay dark and crisp, because the
   rooms are the logic. High contrast (body.contrast) keeps the opaque, saturated rooms. */
body:not(.contrast) .play .boardWrap {
  background: linear-gradient(160deg, #ffffff2e, #ffffff0d 40%, #0a2a2433);
  -webkit-backdrop-filter: blur(6px) saturate(1.2);
  backdrop-filter: blur(6px) saturate(1.2);
  box-shadow:
    inset 0 1px 0 #ffffff66,
    inset 0 0 0 1px #ffffff26,
    0 0 0 1px #0b2a2499,
    0 16px 34px #020c0b66;
}
body:not(.contrast) .play .board {
  background: #0b2a2414;
  -webkit-backdrop-filter: blur(12px) saturate(0.55) brightness(1.22);
  backdrop-filter: blur(12px) saturate(0.55) brightness(1.22);
}
/* the frosted base is neutral (the blur desaturates and lifts the water), so each pond's hue survives: rose, coral and
   sand must stay tellable apart, they are the rules. The tint is the room colour, barely softened, mostly opaque. */
body:not(.contrast) .play .board .cell {
  background: color-mix(in srgb, var(--rc) 84%, transparent);
}
body:not(.contrast) .play .board .cell .tile {
  background: linear-gradient(150deg, #ffffff38, #ffffff0a 32%, transparent 58%, #0b2a2410);
  box-shadow:
    inset 0 1px 0 #ffffff80,
    inset 1px 0 0 #ffffff33,
    inset 0 -1px 0 #0b2a2426;
}
body:not(.contrast) .play .board .cell .tile::after {
  background: radial-gradient(60% 50% at 30% 22%, #ffffff2e, transparent 70%);
}
/* hints: the cells in question stay vivid, the rest fade into the water instead of going muddy */
body:not(.contrast) .play .board.focus .cell.hl {
  background: color-mix(in srgb, var(--rc) 82%, #ffffff33);
}
body:not(.contrast) .play .board.focus .cell:not(.hl) {
  background: color-mix(in srgb, var(--rc) 22%, #0b2a2466);
}
body:not(.contrast) .play .board.focus .cell:not(.hl) .tile {
  filter: none;
}
/* walls: deep pond teal rather than black, still the strongest line on screen */
body:not(.contrast) .play .walls .wl,
body:not(.contrast) .play .walls .wo {
  stroke: #082420;
}
/* the colour-blind patterns become light etching on the glass instead of dark print */
body:not(.contrast) .play .board.autoPat .cell .tile::before {
  filter: invert(1);
  opacity: 0.12;
}
/* marks sit on glass now: a thin dark edge keeps the X and the dot readable over any tint */
body:not(.contrast) .play .xm {
  filter: drop-shadow(0 1px 1px #0b2a24aa);
}
/* one glare across the whole sheet, above the panes, never catching taps */
body:not(.contrast) .play .board::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(
    118deg,
    transparent 16%,
    #ffffff24 25%,
    #ffffff0a 33%,
    transparent 40%,
    transparent 63%,
    #ffffff14 69%,
    transparent 75%
  );
  mix-blend-mode: screen;
}
/* the room strip under the board follows the same glass */
body:not(.contrast) .play .strip i {
  background: color-mix(in srgb, color-mix(in srgb, var(--rc) 78%, #fff) 70%, transparent);
  box-shadow: inset 0 1px 0 #ffffff80;
}

/* ---- the board as water (William + art review, round 3): thin wet-stone walls, no dark gutters inside a pond, each pond a
   translucent tint over a common water base, soft inner shade at the bottom. High contrast keeps the bold opaque board. */
body:not(.contrast) .play .board {
  background: linear-gradient(180deg, #8fe3dc66, #3fc6c055 55%, #2a9a9e66);
}
/* cells of one pond touch: the light 1px grid (.gl) marks cells, only real walls are dark */
body:not(.contrast) .play .board .cell .tile {
  inset: 0;
  border-radius: 0;
  box-shadow: inset 0 -4px 8px #0b201826;
}
body:not(.contrast) .play .board .cell {
  background: color-mix(in srgb, var(--rc) 66%, transparent);
}
body:not(.contrast) .play .walls .gl {
  stroke: #ffffff2e;
  stroke-width: 1px;
  vector-effect: non-scaling-stroke;
  fill: none;
}
body:not(.contrast) .play .walls .wl,
body:not(.contrast) .play .walls .wo {
  stroke: #0f3b3acc;
  filter: drop-shadow(-0.6px -0.6px 0 #ffffff59);
}
/* the frame: the UI's glass with the mascot's dark outline, so the board and Ribi read as one family */
body:not(.contrast) .play .boardWrap {
  box-shadow:
    inset 0 1px 0 #ffffff66,
    inset 0 0 0 1px #ffffff26,
    0 0 0 2px #1f5a4a,
    0 16px 34px #020c0b66;
}
/* one sheen per surface, not per cell: the tiles are flat tints, the sheet's single diagonal glare does the shine */
body:not(.contrast) .play .board .cell .tile {
  background: none;
}
body:not(.contrast) .play .board .cell .tile::after {
  display: none;
}
/* the X marks are white (William), with a thin dark shadow so they still read on the pale ponds; wrong ones stay red */
body .play .board .xm path {
  stroke: #fff;
  opacity: 0.96;
}
body .play .board .xm {
  filter: drop-shadow(0 1px 1.2px #0b2a24d9) drop-shadow(0 0 1px #0b2a2480);
}
body .play .board .cell.err .xm path {
  stroke: #ff6b6b;
  opacity: 1;
}
body .play .board.focus .cell:not(.hl) .xm path {
  stroke: #fff;
  opacity: 0.55;
}
/* End of src/styles/pond-glass.css */

/* End of dist-static/assets/pond-glass-tKxqArfu.css */
