/* Flash mental math */
.fl-stage { display: grid; justify-items: center; gap: 1rem; width: 100%; }
.fl-num { font: 600 clamp(5.625rem, 30vw, 15rem)/1 var(--f-m); min-height: 1.1em; letter-spacing: -.02em; }
.fl-go { min-width: 12.5rem; min-height: 5rem; font-size: 1.625rem !important; }
.fl-seen { font: 500 1.125rem/1.5 var(--f-m); color: var(--ink2); text-align: center; max-width: 90vw; }
.ho.projector { --grid: #fff; background-image: none; }
.ho.projector .fl-num { font-size: min(60vh, 46vw); }
.ho.projector .hold-tip, .ho.projector .count { font-size: 1.125rem; }
.fl-sheet.screen { display: flex; flex-wrap: wrap; gap: .875rem; }
.fl-col { border-collapse: collapse; font: 600 1.125rem/1.5 var(--f-m); }
.fl-col caption { font-size: .75em; color: var(--ink2); text-align: left; }
.fl-col td { text-align: right; padding: 0 .375rem; border-left: 1px solid var(--edge); border-right: 1px solid var(--edge); }
.fl-col td.sg { border-right: 0; width: 1em; color: var(--ink); }
.fl-col tr.tot td { border-top: 2px solid var(--ink); border-bottom: 1px solid var(--edge); height: 1.8em; }
@media print {
  .fl-sheet.print { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6mm 4mm; align-content: start; }
  .fl-sheet.print .fl-col { width: 100%; font-size: 13pt; }
  .fl-sheet.print .fl-col td { border-color: #8FA8CC; }
  .fl-sheet.print .fl-col tr.tot td { border-top: .5mm solid #263049; height: 9mm; }
}
