/* css.slopped.site exhibit: Rule 110. Generated by css/exhibits/rule-110.mjs; edit that. */
.x-rule-110 .ca { position: relative; display: grid; grid-template-columns: minmax(0, 480px) minmax(0, 1fr); grid-template-rows: auto 1fr; grid-template-areas: "board controls" "board table"; align-items: start; gap: 18px 34px; counter-reset: set gens; }
.x-rule-110 .controls { grid-area: controls; position: relative; display: grid; justify-items: start; gap: 10px; }
.x-rule-110 .board { grid-area: board; display: grid; grid-template-columns: repeat(16, minmax(0, 1fr)); gap: 2px; padding: 6px; border: 1.5px solid var(--ink); border-radius: 10px; background: var(--paper); }
.x-rule-110 .p { aspect-ratio: 1; border-radius: 3px; background: repeating-linear-gradient(45deg, var(--line) 0 2px, transparent 2px 5px); }
.x-rule-110 .seed { background: var(--panel); outline: 1px dashed var(--muted); outline-offset: -1px; cursor: pointer; }
.x-rule-110 .ca:has(.r1:checked) .seed { cursor: default; pointer-events: none; outline: 0; }
.x-rule-110 .step-face { pointer-events: none; display: inline-flex; flex-direction: column; justify-content: center; width: 200px; height: 64px; padding: 0 22px; border-radius: 999px; background: var(--ink); color: var(--paper); font: 1000 24px/1.05 var(--head); font-synthesis: none; }
.x-rule-110 .step-face small { font: 700 13px Arial, Helvetica, sans-serif; opacity: .8; }
.x-rule-110 .ca:has(.on:not(.r0):hover, .off:hover) .step-face { background: var(--acid); color: var(--on-acid); }
.x-rule-110 .ca:has(.on:not(.r0):focus-visible, .off:focus-visible) .step-face { outline: 3px solid var(--focus); outline-offset: 4px; }
.x-rule-110 .where { margin: 0; font: 700 15px var(--mono); }
.x-rule-110 .finished { display: none; margin: 0; padding: 12px 14px; border-radius: 10px; background: var(--acid); color: var(--on-acid); font-weight: 700; }
.x-rule-110 .ca:has(#n16-15:checked, #f16-15:checked) .finished { display: block; }
.x-rule-110 .ca:has(#n16-15:checked, #f16-15:checked) .step-face { opacity: .3; }
.x-rule-110 .table { grid-area: table; display: flex; flex-wrap: wrap; gap: 10px 14px; max-width: 440px; padding-top: 14px; border-top: 1px solid var(--line); }
.x-rule-110 .table::before { content: "The rule: each cell from the three above it"; flex-basis: 100%; color: var(--muted); font-size: 13px; font-weight: 700; }
.x-rule-110 .t { display: grid; justify-items: center; gap: 3px; }
.x-rule-110 .nb, .x-rule-110 .to { display: flex; gap: 2px; }
.x-rule-110 .t i { width: 14px; height: 14px; border: 1px solid var(--ink); border-radius: 2px; }
.x-rule-110 .t i.b1 { background: var(--ink); }
/* the counters: every decided cell, and every finished generation */
.x-rule-110 :is(.on, .off):not(.r0):checked { counter-increment: set; }
.x-rule-110 .cL:not(.r0):checked { counter-increment: set gens; }
.x-rule-110 .where::after { content: "Generations done: " counter(gens) " of 16. Cells set: " counter(set) "."; }

/* every box is hidden (visibility, not display, so the counters still count it) unless a rule below shows it */
.x-rule-110 .on, .x-rule-110 .off { visibility: hidden; position: absolute; top: 0; left: calc(min(480px, 100%) + 34px); width: 200px; height: 64px; margin: 0; opacity: 0; cursor: pointer; z-index: 1; }
/* the seed is editable until the first step: its boxes are real, and the cells in the top row are their labels */
.x-rule-110 .r0.on { width: 1px; height: 1px; }
.x-rule-110 .ca:not(:has(.r1:checked)) .r0.on { visibility: visible; }
#n0-0:focus-visible ~ .board > :nth-child(1),
#n0-1:focus-visible ~ .board > :nth-child(2),
#n0-2:focus-visible ~ .board > :nth-child(3),
#n0-3:focus-visible ~ .board > :nth-child(4),
#n0-4:focus-visible ~ .board > :nth-child(5),
#n0-5:focus-visible ~ .board > :nth-child(6),
#n0-6:focus-visible ~ .board > :nth-child(7),
#n0-7:focus-visible ~ .board > :nth-child(8),
#n0-8:focus-visible ~ .board > :nth-child(9),
#n0-9:focus-visible ~ .board > :nth-child(10),
#n0-10:focus-visible ~ .board > :nth-child(11),
#n0-11:focus-visible ~ .board > :nth-child(12),
#n0-12:focus-visible ~ .board > :nth-child(13),
#n0-13:focus-visible ~ .board > :nth-child(14),
#n0-14:focus-visible ~ .board > :nth-child(15),
#n0-15:focus-visible ~ .board > :nth-child(16) { outline: 3px solid var(--focus); outline-offset: 1px; }
/* the box just set stays until the next one is (so keyboard focus has somewhere to stay; Space again undoes it) */
.x-rule-110 .on:not(.r0):checked:has(+ .off + .on:not(:checked) + .off:not(:checked)),
.x-rule-110 .off:not(.r0):checked:has(+ .on:not(:checked) + .off:not(:checked)) { visibility: visible; }
/* key */
/* A cell's parents are 2N+2, 2N and 2N−2 boxes back (N = 16 cells per generation, two boxes per cell), and the
   previous cell is 2 back. So one selector per row of the rule's table finds the right box for the next cell. */
/* 110 → 1: the on box is the right one */
.x-rule-110 .on:checked + * + .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),

/* 111 → 0: the off box is the right one */
.x-rule-110 .on:checked + * + .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked) + .off:not(:checked) { visibility: visible; }
/* …and 30 more like these: the other neighbourhoods, the two edges, and the previous cell set off */
/* /key */
.x-rule-110 .on:checked + * + .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked) + .off:not(:checked),
.x-rule-110 .on:checked + * + .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked) + .off:not(:checked),
.x-rule-110 .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.cL:not(:checked) + .off:not(:checked),
.x-rule-110 .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.cL:not(:checked) + .off:not(:checked),
.x-rule-110 .on:checked + * + .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.cL:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.cL:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked) + .off:not(:checked),
.x-rule-110 .on:checked + * + .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked) + .off:not(:checked),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.c0:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.c0:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.c0:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:checked + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.c0:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.cL:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.cL:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.c0:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:checked + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.c0:not(:checked):has(+ .off:not(:checked)),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on:not(.c0):not(.cL):not(:checked) + .off:not(:checked),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on:not(.c0):not(.cL):not(:checked) + .off:not(:checked),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.c0:not(:checked) + .off:not(:checked),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.c0:not(:checked) + .off:not(:checked),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on:checked + .off + .on.cL:not(:checked) + .off:not(:checked),
.x-rule-110 .on:not(:checked) + * + .on:not(:checked) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + .on + .off:checked + .on.cL:not(:checked) + .off:not(:checked) { visibility: visible; }

/* the picture: on boxes light their cell; off boxes, once decided, clear it */
#n0-0:checked ~ .board > :nth-child(1),
#n0-1:checked ~ .board > :nth-child(2),
#n0-2:checked ~ .board > :nth-child(3),
#n0-3:checked ~ .board > :nth-child(4),
#n0-4:checked ~ .board > :nth-child(5),
#n0-5:checked ~ .board > :nth-child(6),
#n0-6:checked ~ .board > :nth-child(7),
#n0-7:checked ~ .board > :nth-child(8),
#n0-8:checked ~ .board > :nth-child(9),
#n0-9:checked ~ .board > :nth-child(10),
#n0-10:checked ~ .board > :nth-child(11),
#n0-11:checked ~ .board > :nth-child(12),
#n0-12:checked ~ .board > :nth-child(13),
#n0-13:checked ~ .board > :nth-child(14),
#n0-14:checked ~ .board > :nth-child(15),
#n0-15:checked ~ .board > :nth-child(16),
#n1-0:checked ~ .board > :nth-child(17),
#n1-1:checked ~ .board > :nth-child(18),
#n1-2:checked ~ .board > :nth-child(19),
#n1-3:checked ~ .board > :nth-child(20),
#n1-4:checked ~ .board > :nth-child(21),
#n1-5:checked ~ .board > :nth-child(22),
#n1-6:checked ~ .board > :nth-child(23),
#n1-7:checked ~ .board > :nth-child(24),
#n1-8:checked ~ .board > :nth-child(25),
#n1-9:checked ~ .board > :nth-child(26),
#n1-10:checked ~ .board > :nth-child(27),
#n1-11:checked ~ .board > :nth-child(28),
#n1-12:checked ~ .board > :nth-child(29),
#n1-13:checked ~ .board > :nth-child(30),
#n1-14:checked ~ .board > :nth-child(31),
#n1-15:checked ~ .board > :nth-child(32),
#n2-0:checked ~ .board > :nth-child(33),
#n2-1:checked ~ .board > :nth-child(34),
#n2-2:checked ~ .board > :nth-child(35),
#n2-3:checked ~ .board > :nth-child(36),
#n2-4:checked ~ .board > :nth-child(37),
#n2-5:checked ~ .board > :nth-child(38),
#n2-6:checked ~ .board > :nth-child(39),
#n2-7:checked ~ .board > :nth-child(40),
#n2-8:checked ~ .board > :nth-child(41),
#n2-9:checked ~ .board > :nth-child(42),
#n2-10:checked ~ .board > :nth-child(43),
#n2-11:checked ~ .board > :nth-child(44),
#n2-12:checked ~ .board > :nth-child(45),
#n2-13:checked ~ .board > :nth-child(46),
#n2-14:checked ~ .board > :nth-child(47),
#n2-15:checked ~ .board > :nth-child(48),
#n3-0:checked ~ .board > :nth-child(49),
#n3-1:checked ~ .board > :nth-child(50),
#n3-2:checked ~ .board > :nth-child(51),
#n3-3:checked ~ .board > :nth-child(52),
#n3-4:checked ~ .board > :nth-child(53),
#n3-5:checked ~ .board > :nth-child(54),
#n3-6:checked ~ .board > :nth-child(55),
#n3-7:checked ~ .board > :nth-child(56),
#n3-8:checked ~ .board > :nth-child(57),
#n3-9:checked ~ .board > :nth-child(58),
#n3-10:checked ~ .board > :nth-child(59),
#n3-11:checked ~ .board > :nth-child(60),
#n3-12:checked ~ .board > :nth-child(61),
#n3-13:checked ~ .board > :nth-child(62),
#n3-14:checked ~ .board > :nth-child(63),
#n3-15:checked ~ .board > :nth-child(64),
#n4-0:checked ~ .board > :nth-child(65),
#n4-1:checked ~ .board > :nth-child(66),
#n4-2:checked ~ .board > :nth-child(67),
#n4-3:checked ~ .board > :nth-child(68),
#n4-4:checked ~ .board > :nth-child(69),
#n4-5:checked ~ .board > :nth-child(70),
#n4-6:checked ~ .board > :nth-child(71),
#n4-7:checked ~ .board > :nth-child(72),
#n4-8:checked ~ .board > :nth-child(73),
#n4-9:checked ~ .board > :nth-child(74),
#n4-10:checked ~ .board > :nth-child(75),
#n4-11:checked ~ .board > :nth-child(76),
#n4-12:checked ~ .board > :nth-child(77),
#n4-13:checked ~ .board > :nth-child(78),
#n4-14:checked ~ .board > :nth-child(79),
#n4-15:checked ~ .board > :nth-child(80),
#n5-0:checked ~ .board > :nth-child(81),
#n5-1:checked ~ .board > :nth-child(82),
#n5-2:checked ~ .board > :nth-child(83),
#n5-3:checked ~ .board > :nth-child(84),
#n5-4:checked ~ .board > :nth-child(85),
#n5-5:checked ~ .board > :nth-child(86),
#n5-6:checked ~ .board > :nth-child(87),
#n5-7:checked ~ .board > :nth-child(88),
#n5-8:checked ~ .board > :nth-child(89),
#n5-9:checked ~ .board > :nth-child(90),
#n5-10:checked ~ .board > :nth-child(91),
#n5-11:checked ~ .board > :nth-child(92),
#n5-12:checked ~ .board > :nth-child(93),
#n5-13:checked ~ .board > :nth-child(94),
#n5-14:checked ~ .board > :nth-child(95),
#n5-15:checked ~ .board > :nth-child(96),
#n6-0:checked ~ .board > :nth-child(97),
#n6-1:checked ~ .board > :nth-child(98),
#n6-2:checked ~ .board > :nth-child(99),
#n6-3:checked ~ .board > :nth-child(100),
#n6-4:checked ~ .board > :nth-child(101),
#n6-5:checked ~ .board > :nth-child(102),
#n6-6:checked ~ .board > :nth-child(103),
#n6-7:checked ~ .board > :nth-child(104),
#n6-8:checked ~ .board > :nth-child(105),
#n6-9:checked ~ .board > :nth-child(106),
#n6-10:checked ~ .board > :nth-child(107),
#n6-11:checked ~ .board > :nth-child(108),
#n6-12:checked ~ .board > :nth-child(109),
#n6-13:checked ~ .board > :nth-child(110),
#n6-14:checked ~ .board > :nth-child(111),
#n6-15:checked ~ .board > :nth-child(112),
#n7-0:checked ~ .board > :nth-child(113),
#n7-1:checked ~ .board > :nth-child(114),
#n7-2:checked ~ .board > :nth-child(115),
#n7-3:checked ~ .board > :nth-child(116),
#n7-4:checked ~ .board > :nth-child(117),
#n7-5:checked ~ .board > :nth-child(118),
#n7-6:checked ~ .board > :nth-child(119),
#n7-7:checked ~ .board > :nth-child(120),
#n7-8:checked ~ .board > :nth-child(121),
#n7-9:checked ~ .board > :nth-child(122),
#n7-10:checked ~ .board > :nth-child(123),
#n7-11:checked ~ .board > :nth-child(124),
#n7-12:checked ~ .board > :nth-child(125),
#n7-13:checked ~ .board > :nth-child(126),
#n7-14:checked ~ .board > :nth-child(127),
#n7-15:checked ~ .board > :nth-child(128),
#n8-0:checked ~ .board > :nth-child(129),
#n8-1:checked ~ .board > :nth-child(130),
#n8-2:checked ~ .board > :nth-child(131),
#n8-3:checked ~ .board > :nth-child(132),
#n8-4:checked ~ .board > :nth-child(133),
#n8-5:checked ~ .board > :nth-child(134),
#n8-6:checked ~ .board > :nth-child(135),
#n8-7:checked ~ .board > :nth-child(136),
#n8-8:checked ~ .board > :nth-child(137),
#n8-9:checked ~ .board > :nth-child(138),
#n8-10:checked ~ .board > :nth-child(139),
#n8-11:checked ~ .board > :nth-child(140),
#n8-12:checked ~ .board > :nth-child(141),
#n8-13:checked ~ .board > :nth-child(142),
#n8-14:checked ~ .board > :nth-child(143),
#n8-15:checked ~ .board > :nth-child(144),
#n9-0:checked ~ .board > :nth-child(145),
#n9-1:checked ~ .board > :nth-child(146),
#n9-2:checked ~ .board > :nth-child(147),
#n9-3:checked ~ .board > :nth-child(148),
#n9-4:checked ~ .board > :nth-child(149),
#n9-5:checked ~ .board > :nth-child(150),
#n9-6:checked ~ .board > :nth-child(151),
#n9-7:checked ~ .board > :nth-child(152),
#n9-8:checked ~ .board > :nth-child(153),
#n9-9:checked ~ .board > :nth-child(154),
#n9-10:checked ~ .board > :nth-child(155),
#n9-11:checked ~ .board > :nth-child(156),
#n9-12:checked ~ .board > :nth-child(157),
#n9-13:checked ~ .board > :nth-child(158),
#n9-14:checked ~ .board > :nth-child(159),
#n9-15:checked ~ .board > :nth-child(160),
#n10-0:checked ~ .board > :nth-child(161),
#n10-1:checked ~ .board > :nth-child(162),
#n10-2:checked ~ .board > :nth-child(163),
#n10-3:checked ~ .board > :nth-child(164),
#n10-4:checked ~ .board > :nth-child(165),
#n10-5:checked ~ .board > :nth-child(166),
#n10-6:checked ~ .board > :nth-child(167),
#n10-7:checked ~ .board > :nth-child(168),
#n10-8:checked ~ .board > :nth-child(169),
#n10-9:checked ~ .board > :nth-child(170),
#n10-10:checked ~ .board > :nth-child(171),
#n10-11:checked ~ .board > :nth-child(172),
#n10-12:checked ~ .board > :nth-child(173),
#n10-13:checked ~ .board > :nth-child(174),
#n10-14:checked ~ .board > :nth-child(175),
#n10-15:checked ~ .board > :nth-child(176),
#n11-0:checked ~ .board > :nth-child(177),
#n11-1:checked ~ .board > :nth-child(178),
#n11-2:checked ~ .board > :nth-child(179),
#n11-3:checked ~ .board > :nth-child(180),
#n11-4:checked ~ .board > :nth-child(181),
#n11-5:checked ~ .board > :nth-child(182),
#n11-6:checked ~ .board > :nth-child(183),
#n11-7:checked ~ .board > :nth-child(184),
#n11-8:checked ~ .board > :nth-child(185),
#n11-9:checked ~ .board > :nth-child(186),
#n11-10:checked ~ .board > :nth-child(187),
#n11-11:checked ~ .board > :nth-child(188),
#n11-12:checked ~ .board > :nth-child(189),
#n11-13:checked ~ .board > :nth-child(190),
#n11-14:checked ~ .board > :nth-child(191),
#n11-15:checked ~ .board > :nth-child(192),
#n12-0:checked ~ .board > :nth-child(193),
#n12-1:checked ~ .board > :nth-child(194),
#n12-2:checked ~ .board > :nth-child(195),
#n12-3:checked ~ .board > :nth-child(196),
#n12-4:checked ~ .board > :nth-child(197),
#n12-5:checked ~ .board > :nth-child(198),
#n12-6:checked ~ .board > :nth-child(199),
#n12-7:checked ~ .board > :nth-child(200),
#n12-8:checked ~ .board > :nth-child(201),
#n12-9:checked ~ .board > :nth-child(202),
#n12-10:checked ~ .board > :nth-child(203),
#n12-11:checked ~ .board > :nth-child(204),
#n12-12:checked ~ .board > :nth-child(205),
#n12-13:checked ~ .board > :nth-child(206),
#n12-14:checked ~ .board > :nth-child(207),
#n12-15:checked ~ .board > :nth-child(208),
#n13-0:checked ~ .board > :nth-child(209),
#n13-1:checked ~ .board > :nth-child(210),
#n13-2:checked ~ .board > :nth-child(211),
#n13-3:checked ~ .board > :nth-child(212),
#n13-4:checked ~ .board > :nth-child(213),
#n13-5:checked ~ .board > :nth-child(214),
#n13-6:checked ~ .board > :nth-child(215),
#n13-7:checked ~ .board > :nth-child(216),
#n13-8:checked ~ .board > :nth-child(217),
#n13-9:checked ~ .board > :nth-child(218),
#n13-10:checked ~ .board > :nth-child(219),
#n13-11:checked ~ .board > :nth-child(220),
#n13-12:checked ~ .board > :nth-child(221),
#n13-13:checked ~ .board > :nth-child(222),
#n13-14:checked ~ .board > :nth-child(223),
#n13-15:checked ~ .board > :nth-child(224),
#n14-0:checked ~ .board > :nth-child(225),
#n14-1:checked ~ .board > :nth-child(226),
#n14-2:checked ~ .board > :nth-child(227),
#n14-3:checked ~ .board > :nth-child(228),
#n14-4:checked ~ .board > :nth-child(229),
#n14-5:checked ~ .board > :nth-child(230),
#n14-6:checked ~ .board > :nth-child(231),
#n14-7:checked ~ .board > :nth-child(232),
#n14-8:checked ~ .board > :nth-child(233),
#n14-9:checked ~ .board > :nth-child(234),
#n14-10:checked ~ .board > :nth-child(235),
#n14-11:checked ~ .board > :nth-child(236),
#n14-12:checked ~ .board > :nth-child(237),
#n14-13:checked ~ .board > :nth-child(238),
#n14-14:checked ~ .board > :nth-child(239),
#n14-15:checked ~ .board > :nth-child(240),
#n15-0:checked ~ .board > :nth-child(241),
#n15-1:checked ~ .board > :nth-child(242),
#n15-2:checked ~ .board > :nth-child(243),
#n15-3:checked ~ .board > :nth-child(244),
#n15-4:checked ~ .board > :nth-child(245),
#n15-5:checked ~ .board > :nth-child(246),
#n15-6:checked ~ .board > :nth-child(247),
#n15-7:checked ~ .board > :nth-child(248),
#n15-8:checked ~ .board > :nth-child(249),
#n15-9:checked ~ .board > :nth-child(250),
#n15-10:checked ~ .board > :nth-child(251),
#n15-11:checked ~ .board > :nth-child(252),
#n15-12:checked ~ .board > :nth-child(253),
#n15-13:checked ~ .board > :nth-child(254),
#n15-14:checked ~ .board > :nth-child(255),
#n15-15:checked ~ .board > :nth-child(256),
#n16-0:checked ~ .board > :nth-child(257),
#n16-1:checked ~ .board > :nth-child(258),
#n16-2:checked ~ .board > :nth-child(259),
#n16-3:checked ~ .board > :nth-child(260),
#n16-4:checked ~ .board > :nth-child(261),
#n16-5:checked ~ .board > :nth-child(262),
#n16-6:checked ~ .board > :nth-child(263),
#n16-7:checked ~ .board > :nth-child(264),
#n16-8:checked ~ .board > :nth-child(265),
#n16-9:checked ~ .board > :nth-child(266),
#n16-10:checked ~ .board > :nth-child(267),
#n16-11:checked ~ .board > :nth-child(268),
#n16-12:checked ~ .board > :nth-child(269),
#n16-13:checked ~ .board > :nth-child(270),
#n16-14:checked ~ .board > :nth-child(271),
#n16-15:checked ~ .board > :nth-child(272) { background: var(--ink); }
#f1-0:checked ~ .board > :nth-child(17),
#f1-1:checked ~ .board > :nth-child(18),
#f1-2:checked ~ .board > :nth-child(19),
#f1-3:checked ~ .board > :nth-child(20),
#f1-4:checked ~ .board > :nth-child(21),
#f1-5:checked ~ .board > :nth-child(22),
#f1-6:checked ~ .board > :nth-child(23),
#f1-7:checked ~ .board > :nth-child(24),
#f1-8:checked ~ .board > :nth-child(25),
#f1-9:checked ~ .board > :nth-child(26),
#f1-10:checked ~ .board > :nth-child(27),
#f1-11:checked ~ .board > :nth-child(28),
#f1-12:checked ~ .board > :nth-child(29),
#f1-13:checked ~ .board > :nth-child(30),
#f1-14:checked ~ .board > :nth-child(31),
#f1-15:checked ~ .board > :nth-child(32),
#f2-0:checked ~ .board > :nth-child(33),
#f2-1:checked ~ .board > :nth-child(34),
#f2-2:checked ~ .board > :nth-child(35),
#f2-3:checked ~ .board > :nth-child(36),
#f2-4:checked ~ .board > :nth-child(37),
#f2-5:checked ~ .board > :nth-child(38),
#f2-6:checked ~ .board > :nth-child(39),
#f2-7:checked ~ .board > :nth-child(40),
#f2-8:checked ~ .board > :nth-child(41),
#f2-9:checked ~ .board > :nth-child(42),
#f2-10:checked ~ .board > :nth-child(43),
#f2-11:checked ~ .board > :nth-child(44),
#f2-12:checked ~ .board > :nth-child(45),
#f2-13:checked ~ .board > :nth-child(46),
#f2-14:checked ~ .board > :nth-child(47),
#f2-15:checked ~ .board > :nth-child(48),
#f3-0:checked ~ .board > :nth-child(49),
#f3-1:checked ~ .board > :nth-child(50),
#f3-2:checked ~ .board > :nth-child(51),
#f3-3:checked ~ .board > :nth-child(52),
#f3-4:checked ~ .board > :nth-child(53),
#f3-5:checked ~ .board > :nth-child(54),
#f3-6:checked ~ .board > :nth-child(55),
#f3-7:checked ~ .board > :nth-child(56),
#f3-8:checked ~ .board > :nth-child(57),
#f3-9:checked ~ .board > :nth-child(58),
#f3-10:checked ~ .board > :nth-child(59),
#f3-11:checked ~ .board > :nth-child(60),
#f3-12:checked ~ .board > :nth-child(61),
#f3-13:checked ~ .board > :nth-child(62),
#f3-14:checked ~ .board > :nth-child(63),
#f3-15:checked ~ .board > :nth-child(64),
#f4-0:checked ~ .board > :nth-child(65),
#f4-1:checked ~ .board > :nth-child(66),
#f4-2:checked ~ .board > :nth-child(67),
#f4-3:checked ~ .board > :nth-child(68),
#f4-4:checked ~ .board > :nth-child(69),
#f4-5:checked ~ .board > :nth-child(70),
#f4-6:checked ~ .board > :nth-child(71),
#f4-7:checked ~ .board > :nth-child(72),
#f4-8:checked ~ .board > :nth-child(73),
#f4-9:checked ~ .board > :nth-child(74),
#f4-10:checked ~ .board > :nth-child(75),
#f4-11:checked ~ .board > :nth-child(76),
#f4-12:checked ~ .board > :nth-child(77),
#f4-13:checked ~ .board > :nth-child(78),
#f4-14:checked ~ .board > :nth-child(79),
#f4-15:checked ~ .board > :nth-child(80),
#f5-0:checked ~ .board > :nth-child(81),
#f5-1:checked ~ .board > :nth-child(82),
#f5-2:checked ~ .board > :nth-child(83),
#f5-3:checked ~ .board > :nth-child(84),
#f5-4:checked ~ .board > :nth-child(85),
#f5-5:checked ~ .board > :nth-child(86),
#f5-6:checked ~ .board > :nth-child(87),
#f5-7:checked ~ .board > :nth-child(88),
#f5-8:checked ~ .board > :nth-child(89),
#f5-9:checked ~ .board > :nth-child(90),
#f5-10:checked ~ .board > :nth-child(91),
#f5-11:checked ~ .board > :nth-child(92),
#f5-12:checked ~ .board > :nth-child(93),
#f5-13:checked ~ .board > :nth-child(94),
#f5-14:checked ~ .board > :nth-child(95),
#f5-15:checked ~ .board > :nth-child(96),
#f6-0:checked ~ .board > :nth-child(97),
#f6-1:checked ~ .board > :nth-child(98),
#f6-2:checked ~ .board > :nth-child(99),
#f6-3:checked ~ .board > :nth-child(100),
#f6-4:checked ~ .board > :nth-child(101),
#f6-5:checked ~ .board > :nth-child(102),
#f6-6:checked ~ .board > :nth-child(103),
#f6-7:checked ~ .board > :nth-child(104),
#f6-8:checked ~ .board > :nth-child(105),
#f6-9:checked ~ .board > :nth-child(106),
#f6-10:checked ~ .board > :nth-child(107),
#f6-11:checked ~ .board > :nth-child(108),
#f6-12:checked ~ .board > :nth-child(109),
#f6-13:checked ~ .board > :nth-child(110),
#f6-14:checked ~ .board > :nth-child(111),
#f6-15:checked ~ .board > :nth-child(112),
#f7-0:checked ~ .board > :nth-child(113),
#f7-1:checked ~ .board > :nth-child(114),
#f7-2:checked ~ .board > :nth-child(115),
#f7-3:checked ~ .board > :nth-child(116),
#f7-4:checked ~ .board > :nth-child(117),
#f7-5:checked ~ .board > :nth-child(118),
#f7-6:checked ~ .board > :nth-child(119),
#f7-7:checked ~ .board > :nth-child(120),
#f7-8:checked ~ .board > :nth-child(121),
#f7-9:checked ~ .board > :nth-child(122),
#f7-10:checked ~ .board > :nth-child(123),
#f7-11:checked ~ .board > :nth-child(124),
#f7-12:checked ~ .board > :nth-child(125),
#f7-13:checked ~ .board > :nth-child(126),
#f7-14:checked ~ .board > :nth-child(127),
#f7-15:checked ~ .board > :nth-child(128),
#f8-0:checked ~ .board > :nth-child(129),
#f8-1:checked ~ .board > :nth-child(130),
#f8-2:checked ~ .board > :nth-child(131),
#f8-3:checked ~ .board > :nth-child(132),
#f8-4:checked ~ .board > :nth-child(133),
#f8-5:checked ~ .board > :nth-child(134),
#f8-6:checked ~ .board > :nth-child(135),
#f8-7:checked ~ .board > :nth-child(136),
#f8-8:checked ~ .board > :nth-child(137),
#f8-9:checked ~ .board > :nth-child(138),
#f8-10:checked ~ .board > :nth-child(139),
#f8-11:checked ~ .board > :nth-child(140),
#f8-12:checked ~ .board > :nth-child(141),
#f8-13:checked ~ .board > :nth-child(142),
#f8-14:checked ~ .board > :nth-child(143),
#f8-15:checked ~ .board > :nth-child(144),
#f9-0:checked ~ .board > :nth-child(145),
#f9-1:checked ~ .board > :nth-child(146),
#f9-2:checked ~ .board > :nth-child(147),
#f9-3:checked ~ .board > :nth-child(148),
#f9-4:checked ~ .board > :nth-child(149),
#f9-5:checked ~ .board > :nth-child(150),
#f9-6:checked ~ .board > :nth-child(151),
#f9-7:checked ~ .board > :nth-child(152),
#f9-8:checked ~ .board > :nth-child(153),
#f9-9:checked ~ .board > :nth-child(154),
#f9-10:checked ~ .board > :nth-child(155),
#f9-11:checked ~ .board > :nth-child(156),
#f9-12:checked ~ .board > :nth-child(157),
#f9-13:checked ~ .board > :nth-child(158),
#f9-14:checked ~ .board > :nth-child(159),
#f9-15:checked ~ .board > :nth-child(160),
#f10-0:checked ~ .board > :nth-child(161),
#f10-1:checked ~ .board > :nth-child(162),
#f10-2:checked ~ .board > :nth-child(163),
#f10-3:checked ~ .board > :nth-child(164),
#f10-4:checked ~ .board > :nth-child(165),
#f10-5:checked ~ .board > :nth-child(166),
#f10-6:checked ~ .board > :nth-child(167),
#f10-7:checked ~ .board > :nth-child(168),
#f10-8:checked ~ .board > :nth-child(169),
#f10-9:checked ~ .board > :nth-child(170),
#f10-10:checked ~ .board > :nth-child(171),
#f10-11:checked ~ .board > :nth-child(172),
#f10-12:checked ~ .board > :nth-child(173),
#f10-13:checked ~ .board > :nth-child(174),
#f10-14:checked ~ .board > :nth-child(175),
#f10-15:checked ~ .board > :nth-child(176),
#f11-0:checked ~ .board > :nth-child(177),
#f11-1:checked ~ .board > :nth-child(178),
#f11-2:checked ~ .board > :nth-child(179),
#f11-3:checked ~ .board > :nth-child(180),
#f11-4:checked ~ .board > :nth-child(181),
#f11-5:checked ~ .board > :nth-child(182),
#f11-6:checked ~ .board > :nth-child(183),
#f11-7:checked ~ .board > :nth-child(184),
#f11-8:checked ~ .board > :nth-child(185),
#f11-9:checked ~ .board > :nth-child(186),
#f11-10:checked ~ .board > :nth-child(187),
#f11-11:checked ~ .board > :nth-child(188),
#f11-12:checked ~ .board > :nth-child(189),
#f11-13:checked ~ .board > :nth-child(190),
#f11-14:checked ~ .board > :nth-child(191),
#f11-15:checked ~ .board > :nth-child(192),
#f12-0:checked ~ .board > :nth-child(193),
#f12-1:checked ~ .board > :nth-child(194),
#f12-2:checked ~ .board > :nth-child(195),
#f12-3:checked ~ .board > :nth-child(196),
#f12-4:checked ~ .board > :nth-child(197),
#f12-5:checked ~ .board > :nth-child(198),
#f12-6:checked ~ .board > :nth-child(199),
#f12-7:checked ~ .board > :nth-child(200),
#f12-8:checked ~ .board > :nth-child(201),
#f12-9:checked ~ .board > :nth-child(202),
#f12-10:checked ~ .board > :nth-child(203),
#f12-11:checked ~ .board > :nth-child(204),
#f12-12:checked ~ .board > :nth-child(205),
#f12-13:checked ~ .board > :nth-child(206),
#f12-14:checked ~ .board > :nth-child(207),
#f12-15:checked ~ .board > :nth-child(208),
#f13-0:checked ~ .board > :nth-child(209),
#f13-1:checked ~ .board > :nth-child(210),
#f13-2:checked ~ .board > :nth-child(211),
#f13-3:checked ~ .board > :nth-child(212),
#f13-4:checked ~ .board > :nth-child(213),
#f13-5:checked ~ .board > :nth-child(214),
#f13-6:checked ~ .board > :nth-child(215),
#f13-7:checked ~ .board > :nth-child(216),
#f13-8:checked ~ .board > :nth-child(217),
#f13-9:checked ~ .board > :nth-child(218),
#f13-10:checked ~ .board > :nth-child(219),
#f13-11:checked ~ .board > :nth-child(220),
#f13-12:checked ~ .board > :nth-child(221),
#f13-13:checked ~ .board > :nth-child(222),
#f13-14:checked ~ .board > :nth-child(223),
#f13-15:checked ~ .board > :nth-child(224),
#f14-0:checked ~ .board > :nth-child(225),
#f14-1:checked ~ .board > :nth-child(226),
#f14-2:checked ~ .board > :nth-child(227),
#f14-3:checked ~ .board > :nth-child(228),
#f14-4:checked ~ .board > :nth-child(229),
#f14-5:checked ~ .board > :nth-child(230),
#f14-6:checked ~ .board > :nth-child(231),
#f14-7:checked ~ .board > :nth-child(232),
#f14-8:checked ~ .board > :nth-child(233),
#f14-9:checked ~ .board > :nth-child(234),
#f14-10:checked ~ .board > :nth-child(235),
#f14-11:checked ~ .board > :nth-child(236),
#f14-12:checked ~ .board > :nth-child(237),
#f14-13:checked ~ .board > :nth-child(238),
#f14-14:checked ~ .board > :nth-child(239),
#f14-15:checked ~ .board > :nth-child(240),
#f15-0:checked ~ .board > :nth-child(241),
#f15-1:checked ~ .board > :nth-child(242),
#f15-2:checked ~ .board > :nth-child(243),
#f15-3:checked ~ .board > :nth-child(244),
#f15-4:checked ~ .board > :nth-child(245),
#f15-5:checked ~ .board > :nth-child(246),
#f15-6:checked ~ .board > :nth-child(247),
#f15-7:checked ~ .board > :nth-child(248),
#f15-8:checked ~ .board > :nth-child(249),
#f15-9:checked ~ .board > :nth-child(250),
#f15-10:checked ~ .board > :nth-child(251),
#f15-11:checked ~ .board > :nth-child(252),
#f15-12:checked ~ .board > :nth-child(253),
#f15-13:checked ~ .board > :nth-child(254),
#f15-14:checked ~ .board > :nth-child(255),
#f15-15:checked ~ .board > :nth-child(256),
#f16-0:checked ~ .board > :nth-child(257),
#f16-1:checked ~ .board > :nth-child(258),
#f16-2:checked ~ .board > :nth-child(259),
#f16-3:checked ~ .board > :nth-child(260),
#f16-4:checked ~ .board > :nth-child(261),
#f16-5:checked ~ .board > :nth-child(262),
#f16-6:checked ~ .board > :nth-child(263),
#f16-7:checked ~ .board > :nth-child(264),
#f16-8:checked ~ .board > :nth-child(265),
#f16-9:checked ~ .board > :nth-child(266),
#f16-10:checked ~ .board > :nth-child(267),
#f16-11:checked ~ .board > :nth-child(268),
#f16-12:checked ~ .board > :nth-child(269),
#f16-13:checked ~ .board > :nth-child(270),
#f16-14:checked ~ .board > :nth-child(271),
#f16-15:checked ~ .board > :nth-child(272) { background: var(--card); }

@media (max-width: 860px) {
  .x-rule-110 .ca { grid-template-columns: minmax(0, 1fr); grid-template-areas: "controls" "board" "table"; }
  .x-rule-110 .on, .x-rule-110 .off { left: 0; }
}

/* live support notes (built from css/exhibits.js) */
.sup-checkbox-hack .sup-no { display: none; }
@supports not selector(:checked) { .sup-checkbox-hack .sup-yes { display: none; } .sup-checkbox-hack .sup-no { display: inline; } .sup-checkbox-hack { --sup: var(--no); } }
