/* Fraction strips: strips under each fraction, the fraction wall, and the printed sheet */
.fs-strip { display: block; width: 100%; height: auto; }
.fs-part { fill: #fff; stroke: #263049; stroke-width: .35; }
.fs-lab { font: 600 3px/1 var(--f-m); fill: #263049; }
.fs-wall { display: grid; gap: 1.5px; max-width: 46rem; margin: 0 auto; }
.fs-preview { margin: 0 0 1.25rem; padding: 1rem; border: 1px solid var(--edge); border-radius: .75rem; background: #fff; }
.fs-stage { display: grid; justify-items: center; gap: 1rem; width: min(40rem, 92vw); }
.fs-q { font: 600 1.25rem/1.4 var(--f-b), var(--cjk); margin: 0; text-align: center; }
.fs-frac { display: inline-grid; justify-items: center; line-height: 1.05; font-family: var(--f-m); vertical-align: middle; }
.fs-frac > span:first-child { border-bottom: .09em solid currentColor; padding: 0 .2em; min-width: 1.1em; text-align: center; }
.fs-choices { display: flex; gap: .75rem; align-items: stretch; justify-content: center; flex-wrap: wrap; }
.fs-pick { position: relative; font-size: clamp(1.75rem, 7vw, 2.75rem); min-width: 3.2em; padding: .3em .6em; }
.fs-pick.fs-same { font-size: 1.125rem; }
.fs-pick.fs-right { box-shadow: 0 0 0 4px var(--mint); }
.fs-strips { display: grid; gap: .5rem; width: min(36rem, 88vw); }
.fs-strip-box { width: min(36rem, 88vw); }
.fs-eq { display: flex; align-items: center; gap: .4em; }
.fs-eq .ans { display: inline-block; min-width: 1.2em; min-height: 1.1em; }
/* printed sheet */
.fs-sheet { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 1.5rem; }
.fs-sheet li { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: .5rem; break-inside: avoid; }
.fs-item { display: inline-flex; align-items: center; gap: .4em; font-size: 1.25rem; }
.fs-box { display: inline-grid; place-items: center; width: 1.6em; height: 1.6em; border: 1.5px solid #263049; border-radius: 50%; }
.fs-blank { display: inline-block; min-width: 1.4em; min-height: 1.1em; border: 1.5px solid #263049; border-bottom: 0; }
.fs-mini { display: grid; gap: 2px; min-width: 0; }
@media print {
  .fs-sheet { gap: 5mm 8mm; }
  .fs-sheet li { min-height: 14mm; }
  .fs-item { font-size: 14pt; }
  .fs-wall { max-width: none; gap: 1.2mm; }
}
