/* Листы таблицы умножения */
.ma { width: 100%; height: 100%; display: grid; grid-template-columns: repeat(var(--cols), 1fr); grid-template-rows: repeat(var(--rows), 1fr);
  column-gap: 7mm; font: 600 var(--fs)/1 var(--head); font-variant-numeric: tabular-nums; color: #222; }
.ma-p { display: flex; align-items: center; gap: 3mm; white-space: nowrap; border-bottom: 1px dashed #e2e2e2; }
.ma-p i { font: 600 9pt var(--body); color: #999; font-style: normal; min-width: 6mm; }
.ma-b { display: inline-block; vertical-align: bottom; min-width: 2em; height: 1.25em; border: 1.5px solid #888; border-radius: 6px; text-align: center; margin: 0 .1em; }
.ma-b b, .ma-p b, .tb-r b, .tg td.ans { color: var(--teal); }
.chk { display: inline-block; width: 1.1em; height: 1.1em; border: 1.5px solid #888; border-radius: 50%; margin-left: .4em;
  text-align: center; font-size: .8em; line-height: 1.3em; vertical-align: middle; }
.bad { color: #d23; }
.tb-grid { width: 100%; height: 100%; display: grid; grid-template-columns: repeat(var(--cols), 1fr); gap: 5mm 6mm; align-content: center;
  font: 600 var(--fs)/1.35 var(--head); font-variant-numeric: tabular-nums; }
.tb { border: 1.5px solid #ddd; border-radius: 10px; padding: .4em .7em; }
.tb-h { font-size: 1.15em; color: var(--brand-dark); text-align: center; border-bottom: 1.5px solid #eee; margin-bottom: .2em; }
.tb-r { white-space: nowrap; display: flex; align-items: flex-end; gap: .25em; }
.tb-line { flex: 1; min-width: 1.6em; border-bottom: 1.4px solid #888; height: .9em; }
.tg { width: 100%; height: 100%; border-collapse: collapse; table-layout: fixed; font: 600 var(--fs) var(--head); text-align: center; font-variant-numeric: tabular-nums; }
.tg th, .tg td { border: 1.4px solid #555; }
.tg th { background: #fff1e3; color: var(--brand-dark); }
.tg th.corner { background: #ffd9c4; }
.tc { width: 100%; height: 100%; display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(var(--rows), 1fr); }
.tc-c { border: 1.5px dashed #999; display: flex; align-items: center; justify-content: center; font: 600 26pt var(--head); font-variant-numeric: tabular-nums; }
.tc-c.answer { color: var(--teal); }
.presets { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.preset { border: 0; background: #f3ede4; border-radius: 999px; padding: 5px 11px; font: 700 13px var(--body); cursor: pointer; color: var(--ink); }
.preset:hover { background: #ffe1d1; }
.tf[hidden] { display: none; }
