{carousel} lays every {tab} inside it out
as a slide in a horizontal row that scrolls and snaps (CSS scroll snap). Each slide has
previous and next links, and below the row there is a dot per slide - plain links to the
slides' ids, so the carousel works without JavaScript. The previous link of the first slide
goes to the last and the next link of the last to the first. There is no autoplay.
The label of a {tab} is the slide's caption, and is optional here - unlike in
{tabs} and {accordion}.
label= names the whole carousel for a screen reader. The markup follows the
WAI-ARIA carousel pattern: a region with aria-roledescription="carousel", each
slide a group announced as "slide 2 of 4" with its caption.
A small script, written once per page with the CSP nonce when one is asked for, makes it
smoother: the links scroll only the row instead of the page, and the dot of the slide in view
is marked, also after a swipe. Scrolling is smooth unless reduced motion is asked for;
printed, the slides stand under each other. Under the strict check a carousel that never
closes, one without slides or with text between its slides is an error. The colours are
--pad-carousel-accent, -text, -muted,
-surface and -dot on .pad-carousel.