/* Recall reveals the paper in place. Concealed content keeps its authored
   footprint, so moves, comments and diagrams never reflow after a guess. */
[data-document-recall] {
  caret-color: transparent;
  user-select: none;
  -webkit-user-select: none;
}
[data-document-recall] [data-document-recall-masked] {
  visibility: hidden;
  pointer-events: none;
}
[data-document-recall] [data-document-recall-future],
[data-document-recall] [data-document-recall-comment] {
  pointer-events: none;
}
[data-document-recall] [data-document-recall-text] {
  color: transparent;
  -webkit-text-fill-color: transparent;
  text-shadow: none;
  background-image: linear-gradient(var(--map-border), var(--map-border));
  background-position: center;
  background-size: 100% .58em;
  background-repeat: no-repeat;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
[data-document-recall] :is([data-document-recall-future], [data-document-recall-comment]) :is(a, u, s, del),
[data-document-recall] :is(a, u, s, del):is([data-document-recall-future], [data-document-recall-comment]) {
  text-decoration-color: transparent;
}
[data-document-recall] [data-document-recall-future-diagram] {
  pointer-events: none;
}
[data-document-recall] [data-document-recall-future-diagram]:not([data-document-recall-target]) .opening-map-document-diagram-board {
  position: relative;
}
[data-document-recall] [data-document-recall-future-diagram]:not([data-document-recall-target]) .opening-map-document-diagram-board::after {
  content: '';
  position: absolute;
  z-index: 1;
  inset: 0;
  background: var(--map-border);
  outline: 1px solid var(--map-border);
  outline-offset: -1px;
  pointer-events: none;
}
[data-document-recall] .opening-map-repertoire-document-move[data-document-recall-masked] {
  position: relative;
}
[data-document-recall] .opening-map-repertoire-document-move[data-document-recall-masked]::after {
  content: '···';
  position: absolute;
  inset: 0;
  visibility: visible;
  color: var(--map-muted);
  text-align: center;
  text-align-last: center;
}
[data-document-recall] .opening-map-repertoire-document-move[data-document-recall-active]::after {
  content: '?';
  color: var(--map-accent);
  background: var(--map-control-hover);
  outline: 2px solid var(--map-accent);
  outline-offset: 1px;
  font-weight: 700;
}
[data-document-recall] .opening-map-document-diagram-controls,
[data-document-recall] .opening-map-document-branch-navigation,
[data-document-recall] .opening-map-document-move-placeholder,
[data-document-recall] .opening-map-document-move-caret {
  visibility: hidden;
  pointer-events: none;
}
[data-document-recall] .opening-map-document-diagram .opening-map-document-diagram-board {
  outline: none;
  cursor: default;
}
@media screen {
  [data-document-recall] .opening-map-document-diagram[data-document-recall-target] .opening-map-document-diagram-board {
    outline: 3px solid var(--map-accent);
    outline-offset: 3px;
  }
}
[data-document-recall] [data-document-recall-target] .arrows,
[data-document-recall] [data-document-recall-target] .markers {
  visibility: hidden;
}
