.arch-lab{display:grid; gap:1rem;}
.arch-lab label{
  display:grid; grid-template-columns:12rem 1fr 4rem; align-items:center; gap:.6rem;
  font-family:Consolas,"SF Mono",ui-monospace,monospace; font-size:.85rem;
}
.arch-lab input[type="range"]{width:100%;}
.arch-total{
  font-family:Consolas,"SF Mono",ui-monospace,monospace; font-size:.9rem;
  text-align:right;
}
.arch-total b{color:var(--signal-ink);}

.flatten-diagram{
  display:flex; align-items:center; justify-content:center; gap:1.2rem;
  margin:1.4rem 0; flex-wrap:wrap;
}
.flatten-grid{
  display:grid; grid-template-columns:repeat(3, 2.6rem); grid-template-rows:repeat(3, 2.6rem); gap:2px;
}
.flatten-row{
  display:grid; grid-auto-flow:column; grid-template-rows:2.6rem; gap:2px;
}
.flatten-grid div, .flatten-row div{
  display:flex; align-items:center; justify-content:center;
  background:var(--tile); border:1px solid var(--line);
  font-family:Consolas,"SF Mono",ui-monospace,monospace; font-size:.9rem;
}
.flatten-arrow{font-size:1.6rem; color:var(--signal-ink);}
