/* Nonogram, Manu Arcade No. XV
   Game-specific styling only. The shell (masthead, hud, seal, toggles,
   board-frame, overlay, colophon) comes from ../_shared/palette.css.
   No em dashes in any on-screen copy by house style. */

/* The gold "progress" gauge glyph. */
.gauge-glyph.gold { color: var(--gold-deep); }

/* Size selector: a small segmented row of manuscript tabs. */
.sizes {
  display: inline-flex;
  gap: 6px;
  padding: 4px;
  border-radius: 9px;
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(0,0,0,.04)), var(--parchment-deep);
  box-shadow: inset 0 0 0 1px rgba(200,156,58,.4);
}
.size-btn {
  font-family: var(--caps);
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 12px;
  color: var(--ink-light);
  background: transparent;
  border: none;
  padding: 7px 13px;
  border-radius: 6px;
  cursor: pointer;
  transition: color .2s var(--ease), background .2s var(--ease);
}
.size-btn:hover { color: var(--oxblood); }
.size-btn[aria-pressed="true"] {
  color: var(--parchment);
  background: var(--oxblood);
  box-shadow: inset 0 1px 0 rgba(227,183,84,.3), 0 1px 3px rgba(61,15,18,.3);
}

/* The fill/mark mode toggle reuses .toggle but swaps its two labels. */
.toggle.mode { min-width: 58px; text-align: center; }
.toggle.mode .mode-mark { display: none; }
.toggle.mode[aria-pressed="true"] .mode-fill { display: none; }
.toggle.mode[aria-pressed="true"] .mode-mark { display: inline; }
/* When in mark mode, tint it like an active marking pen rather than a press. */
.toggle.mode[aria-pressed="true"] {
  color: var(--parchment);
  background: var(--forest);
  border-color: var(--forest);
}

/* The board is a (slightly taller-than-wide) pane sized by the renderer. */
.board-frame {
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
  max-width: 100%;
}
#board {
  display: block;
  touch-action: none;       /* we handle fill / cross / drag ourselves */
  cursor: pointer;
  border-radius: 6px;
  max-width: 100%;
}

/* Instruction caption floats just below the grid until the first action. */
.hint-overlay {
  position: absolute;
  left: 50%;
  bottom: -30px;
  transform: translateX(-50%);
  margin: 0;
  max-width: 96vw;
  text-align: center;
  font-family: var(--hand);
  font-style: italic;
  font-size: clamp(12px, 3vw, 15px);
  color: var(--ink-light);
  pointer-events: none;
  opacity: 1;
  transition: opacity .5s var(--ease), transform .5s var(--ease);
}
.hint-overlay.gone {
  opacity: 0;
  transform: translateX(-50%) translateY(8px);
}

/* The seal "won" treatment glows gold, mirroring the sibling games' state. */
.seal-face { line-height: 1; transition: transform .3s var(--ease); }
.seal.won {
  background: radial-gradient(circle at 38% 32%, var(--gold-bright), var(--gold) 55%, var(--gold-deep) 100%);
  color: var(--cream);
}
.seal:active .seal-face { transform: rotate(-90deg); }

@media (max-width: 420px) {
  .hud { gap: 8px; }
  .sizes { gap: 4px; }
  .size-btn { padding: 6px 10px; }
}
