*{box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0;padding:2rem;max-width:1400px;margin-inline:auto;color:#222;background:#fafafa}h1{margin-top:0}nav{margin-bottom:1rem}nav a{color:#0366d6;text-decoration:none}nav a:hover{text-decoration:underline}.tagline{color:#555;font-style:italic;margin-top:-.5rem}.landing .demo-list{list-style:none;padding:0}.landing .demo-list li{border:1px solid #ddd;border-radius:6px;padding:1rem;margin-bottom:.75rem;background:#fff}.landing .demo-list a{font-weight:600;color:#0366d6;text-decoration:none}.landing .demo-list p{margin:.25rem 0 0;color:#555}.controls{display:flex;gap:1.5rem;align-items:center;padding:.75rem 1rem;background:#eef1f5;border-radius:6px;margin-bottom:1rem;flex-wrap:wrap}.merge-controls{display:flex;gap:.5rem;align-items:center}button{border:1px solid #ccc;background:#fff;border-radius:4px;padding:.25rem .75rem;cursor:pointer}button:hover:not(:disabled){background:#f0f0f0}button:disabled{opacity:.5;cursor:not-allowed}input[type=number],input[type=text]{border:1px solid #ccc;border-radius:4px;padding:.25rem .5rem;font:inherit;width:6rem}input[type=text]{width:8rem}select{border:1px solid #ccc;border-radius:4px;padding:.25rem;font:inherit}.replicas{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.replica{background:#fff;border:1px solid #ddd;border-radius:6px;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.replica h2{margin:0;font-size:1.1rem}.abstract .big-number{font-size:2.5rem;font-weight:600;font-variant-numeric:tabular-nums}.set-view{font-family:monospace}.concrete{font-size:.85rem;background:#f7f7f7;padding:.5rem;border-radius:4px}.concrete table{border-collapse:collapse}.concrete th,.concrete td{text-align:left;padding:.1rem .5rem .1rem 0}.op-form{border-top:1px solid #eee;padding-top:.5rem}.op-buttons{display:flex;gap:.25rem;align-items:center;flex-wrap:wrap}.history ol{font-size:.8rem;max-height:200px;overflow-y:auto;margin:.25rem 0 0;padding-left:1.5rem}.history code{color:#555;font-size:.8em}.reset{font-size:.8rem;align-self:flex-end;color:#a00}
