{
  "id": "v1-hp-1871",
  "long_id": "v1.home-pages-90s.blog.s01.p08.t07.u01",
  "name": "Personal home page: the fan page, 1998",
  "era": {
    "slug": "home-pages-90s",
    "code": "hp",
    "name": "Personal home pages",
    "years": [
      1996,
      2001
    ],
    "description": "The amateur web of 1996 to 2001: tiled patterned backgrounds, bright text on black or deep colours, centred everything, big coloured headings, ruled dividers, link lists, visitor counters, guestbooks and web rings, all in the browser default fonts."
  },
  "archetype": "blog",
  "mode": "mix",
  "viewport": {
    "width": 800,
    "fluid": false
  },
  "summary": "A fan page as people built them for themselves on free web space between 1996 and 2001: one centred column set straight on a tiled starfield, a huge coloured name at the top, a rainbow bar and a thick-bordered table of sections under it. Text is bright on black in the browser's own serif (white body text, yellow and lime headings, cyan links, pink visited links), every box has a 4px or 6px ridged border, and the page carries the furniture of its kind: a hit counter of boxed digits, \"NEW!\" marks, an \"under construction\" strip, awards, a web ring box and a guestbook. It is loud, centred and hand-made, and it was common until page builders and weblogs replaced it after 2001.",
  "url": "https://chrono.skin/s/v1-hp-1871",
  "preview_url": "https://chrono.skin/s/v1-hp-1871/specimen.html",
  "files": {
    "STYLE.md": "# Personal home page: the fan page, 1998\n\n## Summary\n\nA fan page as people built them for themselves on free web space between 1996 and 2001: one centred column set straight on a tiled starfield, a huge coloured name at the top, a rainbow bar and a thick-bordered table of sections under it. Text is bright on black in the browser's own serif (white body text, yellow and lime headings, cyan links, pink visited links), every box has a 4px or 6px ridged border, and the page carries the furniture of its kind: a hit counter of boxed digits, \"NEW!\" marks, an \"under construction\" strip, awards, a web ring box and a guestbook. It is loud, centred and hand-made, and it was common until page builders and weblogs replaced it after 2001.\n\n## Layout\n\n- Fixed, not fluid: `--size-page` is 700px, centred in an 800px window by `.ds-page__frame`. The frame has no fill and no border: everything stands on `--fill-page`, the tile, as text stood on a background picture.\n- One column, one axis. The header, welcome box, counters, section titles, pictures, boxes, awards and footer are centred; news, tables, forms and running text are left-aligned inside their boxes.\n- The specimen is one example site, a fan page for a made-up television serial, of six views. `.ds-nav` and `.ds-footer` are written once outside the views.\n- Home view from the top: `.ds-nav` (the `.ds-brand` at `--text-display`, an italic tagline, a `.ds-rule--rainbow`, then `.ds-nav__links`, a six-cell table of sections), then `.ds-page__main`: the `.ds-hero` welcome box, the `.ds-construction` strip, the `.ds-stat` counters, a `.ds-heading` over the `.ds-list` of dated news, a rainbow rule, a heading over the `.ds-grid` of four framed pictures, and `.ds-page__pair` with two `.ds-panel` boxes (web ring, poll).\n- Inner pages keep the header and footer and drop the welcome box and counters. `.ds-page__inner` opens with `.ds-page__head`: the centred `.ds-breadcrumb`, the `.ds-page-header` strip (title and one italic line at the left, one button at the right) and, where the page has parts, the `.ds-tabs` row. Below it the page stays one column, with `.ds-rule--rainbow` between unrelated blocks. Only the page of running text uses `.ds-page__columns`: `.ds-prose` and a `--size-side` (190px) `.ds-sidebar` at the right.\n- Views: `home`; `episodes` (tabs for the seasons, the episode table with its key of status badges, page numbers); `about` (running text, the sidebar, the line that shows link states); `gallery` (eight framed pictures and the empty state of a season with none); `links` (two boxes of bulleted links and the awards); `guestbook` (entries, notices, the form to sign, the delete message box).\n- Spacing: `--space-1` 2px between table cells and digits; `--space-2` 4px cell and strip padding; `--space-3` 8px between a title and its block, between buttons and form rows, the height of the rainbow bar; `--space-4` 12px box padding and paragraph spacing; `--space-5` 16px between blocks and columns; `--space-6` 28px list indent, the gap between counters and the side padding of the welcome box.\n- Fixed sizes: `--size-label` 170px form labels, `--size-field` 240px inputs, `--size-area` 340px textarea, `--size-check` 16px, `--size-dialog` 380px, `--size-icon` 40px, `--size-award` 124px, `--size-date` 84px date column of the news, `--size-thumb` 92px height of a framed picture.\n\n## Typography and colour roles\n\nThis style combines the parts of different styles of one era. Where a note below names a value that differs from `tokens.css`, the tokens are right.\n\n- The conventions of the era hold. `--color-page` and `--color-canvas` are of one lightness and every text, heading, link and status colour is legible on the page, the surfaces and the four `--color-fill-*` blocks. Fills that bring their own text: `--fill-bar` with `--color-bar-text` (the menu bar, table heads, the dialog title), `--fill-bar-alt` with `--color-bar-alt-text` (panel and sidebar title strips, the hovered menu cell), `--fill-inverse` with `--color-inverse-text` (the day block, the current tab, counter digits), `--fill-accent` with `--color-accent-text` (the current menu cell, \"NEW!\", the current page number, the hovered drop-down line, the blocks of a progress bar, the current carousel square), `--color-notice` with `--color-notice-text` (notices, tooltips, the construction strip), `--color-danger-surface` with `--color-danger`.\n- Status colours double as fills: status badges and the destructive button are filled with `--color-success`, `--color-warning` or `--color-danger` and lettered in `--color-canvas`.\n- `--color-surface-strong` is the ground between the figures of the strip, the track of a progress bar and the idle carousel squares; `--color-surface-alt` is alternate rows, idle tabs, inline code, the picture well of a print, the carousel's foot and the empty state.\n- Headings: `--color-heading` (mint here) for the name, the poster title, page titles, h1, h3, figures and the place of the next date; `--color-heading-alt` (pink) for section titles, h2, taglines, dates, form labels, tooltip triggers and percentages. `--color-accent-alt` (yellow) marks bullets, list markers, the path separator and the italic \"Updated!\" word.\n- Type here: `--font-body` and `--font-ui` are Helvetica at 13px and 11px, `--font-heading` is Copperplate (a commercial face of the period; the stack falls back to Helvetica) set in capitals with 1px tracking at 15, 19 and 27px and the name at 40px with 2px. `--font-mono` Lucida Console sets dates, figures, percentages and the textarea. Buttons, menu cells, tabs and table heads are bold 11px capitals. Links are underlined and lose the line under the pointer; menu, tab and page-number links carry none.\n- Surface here: `--border-style` `solid`, 2px for boxes and 4px (`--border-width-strong`) for the menu bar, the poster, panels, tables, the carousel, the dialog and the lines under headings. `--shadow-panel` is a hard black line inside the frame, `--shadow-text` a hard 2px black drop under capitals on the tile and on bars. No radius, no soft shadow, no transitions. `--fill-page` is a harlequin of 44px diamonds; bars are brightest in the middle.\n- Written literally in `components.css`: `outset` and `inset` bevels on buttons, the brand tile, form controls, the picture well and the progress track; `dotted` lines between rows; the dotted underline of a tooltip trigger; the percentage widths of `.ds-progress__bar--NN`; `calc()` over `--size-icon` for the carousel drawing.\n\n## Components\n\n- `.ds-page`: on `<body>`; the tiled page and body type. `.ds-page__frame` the centred column; `.ds-page__main` and `.ds-page__inner` stack blocks `--space-5` apart; `.ds-page__head` stacks path, page header and tabs; `.ds-page__columns` text plus sidebar; `.ds-page__pair` two equal boxes; `.ds-section` a heading with its block.\n- `.ds-nav`: the centred header. `.ds-nav__tagline` the italic line; `.ds-nav__links` the table of sections, six `.ds-nav__item` / `.ds-nav__link` cells in `--fill-bar` inside a `--border-width-strong` ridge; the cell of the view that shows takes `--fill-accent` (one selector per view, or `is-current`).\n- `.ds-brand`: mark and name, centred. `.ds-brand__mark` is a tile dressed like the button (`--fill-button`, `--color-button-text`, outset bevel, `--radius-control`, `--shadow-control`) holding the mark as inline SVG with square caps; `.ds-brand__name` is the name at `--text-display` in `--color-heading`. Name and mark are placeholders for the installing project's own.\n- `.ds-hero`: the welcome box on `--fill-panel` in a thick ridge with `--shadow-dialog`: `.ds-hero__title`, `.ds-hero__lead`, `.ds-hero__action` (a `.ds-button--large` and a secondary button), `.ds-hero__hint` (the \"last updated\" line).\n- `.ds-page-header`: a ridged strip: `.ds-page-header__text` with `.ds-page-header__title` and the italic `.ds-page-header__lead`, and `.ds-page-header__action` at the right.\n- `.ds-heading`: a centred section title in `--color-heading-alt`.\n- `.ds-rule`: a carved rule; `.ds-rule--short` is 60% wide; `.ds-rule--rainbow` is the six-step bar, the usual divider.\n- `.ds-construction`: the diagonal-striped strip with `.ds-construction__text` on it. `.ds-blink`: add to one small mark for the slow blink.\n- `.ds-prose`: running text; styles `h1`, `h2`, `h3`, `p`, `ul`, `ol`, `strong`, `code`; `.ds-prose__lead`, `.ds-prose__code` for a block of markup.\n- `.ds-link`: every link; states `is-visited`, `is-hover`, `is-active`, `is-focus`; `.ds-link--quiet` small, `.ds-link--strong` bold, `.ds-link--plain` on a coloured fill. `.ds-links` wraps a line of them. `.ds-icon` holds a small drawing before a link.\n- `.ds-bullets`: a link list with coloured diamonds, `.ds-bullets__item` holding a `.ds-bullets__text`.\n- `.ds-button`: a bevelled grey key; `.ds-button--secondary`, `.ds-button--danger`, `.ds-button--large`; states `is-hover`, `is-pressed`, `is-focus`, `is-disabled`. `.ds-buttons` lays out a row.\n- `.ds-form`: two columns, right-aligned `.ds-form__label` and `.ds-form__field`; `.ds-form__input` (`--short`, `is-error`), `.ds-form__select`, `.ds-form__textarea`, `.ds-form__check`, `.ds-form__hint`, `.ds-form__error`, `.ds-form__actions`.\n- `.ds-table`: a thick ridge round cells that stand `--space-1` apart on `--color-surface-strong`: `.ds-table__head` (`--num`), `.ds-table__cell` (`--num`, `--group`), `.ds-table__row--alt`, `.ds-table__desc`, `.ds-table__caption`.\n- `.ds-stat`: the row of counters; each `.ds-stat__item` is a `.ds-stat__value` of boxed `.ds-stat__digit` spans in `--fill-inverse` over a `.ds-stat__label`.\n- `.ds-list`: dated news in a ridged box: `.ds-list__item` with a `.ds-list__meta` date and a `.ds-list__body`; `.ds-list__more` under it. `.ds-list--entries` is the guestbook: `.ds-list__title`, meta, `.ds-list__text`.\n- `.ds-panel`: a thick yellow-ridged box: `.ds-panel__title` strip, `.ds-panel__body`, `.ds-panel__text`, `.ds-panel__form`. `.ds-ring` with `.ds-ring__item` is the bracketed previous, random, next line of a web ring.\n- `.ds-grid`: four framed pictures to a row: `.ds-grid__cell` (`--2`, `--3`, `--4` pick the fill) holds a `.ds-grid__pic` block with a line drawing, a `.ds-grid__title` link and a `.ds-grid__text` file size.\n- `.ds-tabs`: a one-row table of `.ds-tabs__item` / `.ds-tabs__tab` cells, the current one (`is-current`) in `--fill-inverse`.\n- `.ds-badge`: a solid \"NEW!\" label; `.ds-badge--text` an italic coloured word, `.ds-badge--count` a muted count, `.ds-badge--success`, `.ds-badge--warning`, `.ds-badge--danger` status labels; `.ds-badges` the key line.\n- `.ds-awards` and `.ds-award`: prize pictures as bordered badges on `--fill-inverse`: `.ds-award__star`, `.ds-award__title`, `.ds-award__text`.\n- `.ds-sidebar`: a column of `.ds-sidebar__block` boxes, each a `.ds-sidebar__title` strip over a `.ds-sidebar__list` of `.ds-sidebar__item` lines.\n- `.ds-notice`: a centred line on `--color-notice`; `.ds-notice__label`; `.ds-notice--error`. `.ds-notices` stacks them.\n- `.ds-pagination`: a centred line: `.ds-pagination__label`, `.ds-pagination__link` with `is-current` and `is-disabled`.\n- `.ds-breadcrumb`: a small centred path, `.ds-breadcrumb__item` separated by a coloured mark, the last `is-current`.\n- `.ds-dialog`: a message box in the page flow: `.ds-dialog__title` bar, `.ds-dialog__body`, `.ds-dialog__actions`. No backdrop.\n- `.ds-empty`: `.ds-empty__title`, `.ds-empty__text` and a button on `--color-surface-alt`.\n- `.ds-footer`: a rainbow bar, `.ds-footer__links` with `.ds-footer__item`, the `.ds-footer__mail` link, the italic `.ds-footer__note` (\"best viewed at\") and `.ds-footer__legal`.\n- `.ds-view`: one screen of the example site; `.ds-view--home` shows when the address names none.\n\n## Never\n\n- `content-width <= 700px`: one fixed 700px column.\n- `font-size <= 40px`: the name is the largest text.\n- `font-size >= 11px`: small print is 11px.\n- `font-weight >= 400`: regular and bold only.\n- `font-families <= 3`: Helvetica, the engraved face of the headings and one monospace.\n- `border-radius <= 0px`: nothing on these pages had a rounded corner.\n- `box-shadow = none`: depth comes from ridged borders only.\n- `text-shadow = none`: text is flat.\n- `border-width <= 6px`: the thickest ridge is 6px.\n- `transition = none`: nothing eases on hover.\n\n## Extending\n\nDerive a new component from the nearest one in the specimen and use tokens only. A new section is a centred `.ds-heading` over a ridged box, with a `.ds-rule--rainbow` before it; a new box is a `.ds-panel`; a new figure is a counter in `.ds-stat`. Keep everything on the centre axis, keep text bright on the tile, keep links underlined, and never add radius, soft shadows, hover transitions, a second navigation or a muted palette.\n",
    "components.css": "/* Layout tokens (structure part). A fan page of 1998: one centred column of\n   700px set straight on the tiled page of an 800px window, everything on the\n   middle axis, 16px between blocks. */\n:root {\n  --size-page: 700px;\n  --size-side: 190px;\n  --size-label: 170px;\n  --size-field: 240px;\n  --size-area: 340px;\n  --size-check: 16px;\n  --size-dialog: 380px;\n  --size-icon: 40px;\n  --size-award: 124px;\n  --size-date: 84px;\n  --size-thumb: 92px;\n  --space-1: 2px;\n  --space-2: 4px;\n  --space-3: 8px;\n  --space-4: 12px;\n  --space-5: 16px;\n  --space-6: 28px;\n}\n\n/* ---------- shell: no sheet, the column stands on the tile ---------- */\n.ds-page {\n  margin: 0;\n  padding: 0;\n  background: var(--fill-page);\n  color: var(--color-text);\n  font-family: var(--font-body);\n  font-size: var(--text-base);\n  font-weight: var(--weight-body);\n  line-height: var(--line-body);\n}\n.ds-page__frame {\n  box-sizing: border-box;\n  width: var(--size-page);\n  margin: 0 auto;\n  padding: var(--space-4) 0 var(--space-5);\n  border-radius: var(--radius-page);\n  text-align: center;\n}\n.ds-page__main,\n.ds-page__inner {\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-5);\n  min-width: 0;\n  padding: var(--space-5) 0 0;\n}\n.ds-page__head {\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-3);\n}\n/* The one page of running text: the text and a narrow column of boxes. */\n.ds-page__columns {\n  display: grid;\n  grid-template-columns: minmax(0, 1fr) var(--size-side);\n  column-gap: var(--space-5);\n  align-items: start;\n}\n/* Two equal boxes side by side. */\n.ds-page__pair {\n  display: grid;\n  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);\n  gap: var(--space-5);\n  align-items: stretch;\n}\n.ds-section {\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-3);\n  min-width: 0;\n}\n\n/* Section title: big, coloured, centred, straight on the tile. */\n.ds-heading {\n  margin: 0;\n  color: var(--color-heading-alt);\n  font-family: var(--font-heading);\n  font-size: var(--text-h2);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n  letter-spacing: var(--heading-tracking);\n  text-transform: var(--heading-transform);\n  text-align: center;\n}\n\n/* ---------- nav: the huge name, a rainbow bar, a framed table of sections ---------- */\n.ds-nav {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: var(--space-3);\n  text-align: center;\n}\n.ds-brand {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: var(--space-4);\n  color: var(--color-heading);\n  text-decoration: none;\n}\n.ds-brand__mark {\n  display: flex;\n  flex: none;\n  align-items: center;\n  justify-content: center;\n  box-sizing: border-box;\n  width: var(--text-display);\n  height: var(--text-display);\n  background: var(--fill-button);\n  color: var(--color-button-text);\n  border: var(--border-width) outset var(--color-button);\n  border-radius: var(--radius-control);\n  box-shadow: var(--shadow-control);\n}\n.ds-brand__mark svg {\n  display: block;\n  width: 100%;\n  height: 100%;\n}\n.ds-brand__name {\n  font-family: var(--font-heading);\n  font-size: var(--text-display);\n  font-weight: var(--weight-display);\n  line-height: var(--line-display);\n  letter-spacing: var(--display-tracking);\n  text-transform: var(--heading-transform);\n  text-shadow: var(--shadow-text);\n}\n.ds-nav__tagline {\n  color: var(--color-heading-alt);\n  font-size: var(--text-large);\n  font-style: italic;\n}\n.ds-nav .ds-rule {\n  align-self: stretch;\n}\n/* A table with a thick border and one cell for each section. */\n.ds-nav__links {\n  display: grid;\n  grid-template-columns: repeat(6, minmax(0, 1fr));\n  gap: var(--space-1);\n  align-self: stretch;\n  margin: 0;\n  padding: var(--space-1);\n  list-style: none;\n  background: var(--color-surface-strong);\n  border: var(--border-width-strong) var(--border-style) var(--color-border-strong);\n}\n.ds-nav__item {\n  display: flex;\n}\n.ds-nav__link {\n  flex: 1;\n  padding: var(--space-3) var(--space-1);\n  background: var(--fill-bar);\n  color: var(--color-bar-text);\n  font-family: var(--font-ui);\n  font-size: var(--text-ui);\n  font-weight: var(--weight-bold);\n  text-transform: var(--ui-transform);\n  text-decoration: var(--link-decoration-quiet);\n  text-shadow: var(--shadow-text);\n}\n.ds-nav__link:hover,\n.ds-nav__link.is-hover {\n  background: var(--fill-bar-alt);\n  color: var(--color-bar-alt-text);\n}\n/* The section that is showing: the accent fill, no underline. One selector\n   for each view, and the home link when the address names no view. */\n.ds-nav__link.is-current,\n.ds-page:not(:has(.ds-view:target)) .ds-nav__link[href=\"#home\"],\n.ds-page:has(#home:target) .ds-nav__link[href=\"#home\"],\n.ds-page:has(#episodes:target) .ds-nav__link[href=\"#episodes\"],\n.ds-page:has(#about:target) .ds-nav__link[href=\"#about\"],\n.ds-page:has(#gallery:target) .ds-nav__link[href=\"#gallery\"],\n.ds-page:has(#links:target) .ds-nav__link[href=\"#links\"],\n.ds-page:has(#guestbook:target) .ds-nav__link[href=\"#guestbook\"] {\n  background: var(--fill-accent);\n  color: var(--color-accent-text);\n  text-decoration: none;\n}\n\n/* ---------- hero: the welcome box ---------- */\n.ds-hero {\n  padding: var(--space-4) var(--space-6);\n  background: var(--fill-panel);\n  color: var(--color-text);\n  border: var(--border-width-strong) var(--border-style) var(--color-border);\n  border-radius: var(--radius-page);\n  box-shadow: var(--shadow-dialog);\n  text-align: center;\n}\n.ds-hero__title {\n  margin: 0;\n  color: var(--color-heading);\n  font-family: var(--font-heading);\n  font-size: var(--text-h1);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n  letter-spacing: var(--heading-tracking);\n  text-transform: var(--heading-transform);\n}\n.ds-hero__lead {\n  margin: var(--space-3) 0;\n  font-size: var(--text-large);\n}\n.ds-hero__action {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  justify-content: center;\n  gap: var(--space-3);\n}\n.ds-hero__hint {\n  margin: var(--space-3) 0 0;\n  color: var(--color-text-muted);\n  font-size: var(--text-small);\n}\n\n/* ---------- page header: a ruled strip, title at the left, action at the right ---------- */\n.ds-page-header {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: var(--space-4);\n  padding: var(--space-3) var(--space-4);\n  background: var(--fill-panel);\n  border: var(--border-width) var(--border-style) var(--color-border);\n  text-align: left;\n}\n.ds-page-header__text {\n  flex: 1;\n  min-width: 0;\n}\n.ds-page-header__title {\n  margin: 0;\n  color: var(--color-heading);\n  font-family: var(--font-heading);\n  font-size: var(--text-h1);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n  letter-spacing: var(--heading-tracking);\n  text-transform: var(--heading-transform);\n}\n.ds-page-header__lead {\n  margin: var(--space-1) 0 0;\n  color: var(--color-heading-alt);\n  font-style: italic;\n}\n.ds-page-header__action {\n  flex: none;\n}\n\n/* ---------- table: thick outer frame, cells apart on a coloured ground ---------- */\n.ds-table {\n  width: 100%;\n  border-collapse: separate;\n  border-spacing: var(--space-1);\n  background: var(--color-surface-strong);\n  color: var(--color-text);\n  border: var(--border-width-strong) var(--border-style) var(--color-border);\n  border-radius: var(--radius-panel);\n  box-shadow: var(--shadow-panel);\n  font-size: var(--text-base);\n}\n.ds-table__head {\n  padding: var(--space-2) var(--space-3);\n  background: var(--fill-bar);\n  color: var(--color-bar-text);\n  font-family: var(--font-ui);\n  font-size: var(--text-ui);\n  font-weight: var(--weight-bold);\n  text-align: left;\n  text-shadow: var(--shadow-text);\n  text-transform: var(--ui-transform);\n}\n.ds-table__cell {\n  padding: var(--space-2) var(--space-3);\n  background: var(--color-surface);\n  text-align: left;\n  vertical-align: top;\n}\n.ds-table__cell--num,\n.ds-table__head--num {\n  text-align: right;\n}\n.ds-table__row--alt .ds-table__cell {\n  background: var(--color-surface-alt);\n}\n.ds-table__cell--group {\n  background: var(--color-fill-1);\n  text-align: center;\n}\n.ds-table__desc {\n  display: block;\n  color: var(--color-text-muted);\n  font-size: var(--text-small);\n}\n.ds-table__caption {\n  caption-side: bottom;\n  padding: var(--space-3) 0 var(--space-1);\n  background: var(--color-surface);\n  color: var(--color-text);\n  font-size: var(--text-small);\n  text-align: center;\n}\n\n/* ---------- stats: hit counters of boxed digits ---------- */\n.ds-stat {\n  display: flex;\n  justify-content: center;\n  gap: var(--space-6);\n  margin: 0;\n  padding: 0;\n  list-style: none;\n  text-align: center;\n}\n.ds-stat__item {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: var(--space-2);\n}\n.ds-stat__value {\n  display: flex;\n  gap: var(--space-1);\n  padding: var(--space-1);\n  background: var(--color-surface-strong);\n  border: var(--border-width) var(--border-style) var(--color-border);\n}\n.ds-stat__digit {\n  display: block;\n  padding: calc(var(--space-1) - var(--figure-shift)) var(--space-2) calc(var(--space-1) + var(--figure-shift));\n  background: var(--fill-inverse);\n  color: var(--color-inverse-text);\n  font-family: var(--font-mono);\n  font-size: var(--text-h2);\n  font-weight: var(--weight-bold);\n  line-height: var(--line-display);\n}\n.ds-stat__label {\n  display: block;\n  color: var(--color-heading-alt);\n  font-size: var(--text-small);\n}\n\n/* ---------- list: dated news, or signed entries ---------- */\n.ds-list {\n  margin: 0;\n  padding: var(--space-2) var(--space-4);\n  list-style: none;\n  background: var(--fill-panel);\n  color: var(--color-text);\n  border: var(--border-width) var(--border-style) var(--color-border);\n  box-shadow: var(--shadow-panel);\n  font-size: var(--text-base);\n  text-align: left;\n}\n.ds-list__item {\n  display: grid;\n  grid-template-columns: var(--size-date) minmax(0, 1fr);\n  column-gap: var(--space-3);\n  align-items: baseline;\n  padding: var(--space-2) 0;\n  border-bottom: var(--border-width) dotted var(--color-border-muted);\n}\n.ds-list__item:last-child {\n  border-bottom: 0;\n}\n.ds-list__meta {\n  color: var(--color-heading-alt);\n  font-family: var(--font-mono);\n  font-size: var(--text-small);\n  font-weight: var(--weight-bold);\n}\n.ds-list__body {\n  min-width: 0;\n}\n.ds-list__more {\n  margin: 0;\n  font-size: var(--text-small);\n  font-weight: var(--weight-bold);\n  text-align: center;\n}\n/* Guestbook entries: the name and where from, then the message. */\n.ds-list--entries .ds-list__item {\n  display: block;\n}\n.ds-list__title {\n  color: var(--color-heading);\n  font-weight: var(--weight-bold);\n}\n.ds-list__text {\n  margin: var(--space-1) 0 0;\n}\n\n/* ---------- panel: a thick-framed box with a title strip ---------- */\n.ds-panel {\n  background: var(--fill-panel);\n  color: var(--color-text);\n  border: var(--border-width-strong) var(--border-style) var(--color-border-strong);\n  border-radius: var(--radius-panel);\n  box-shadow: var(--shadow-panel);\n  text-align: center;\n}\n.ds-panel__title {\n  margin: 0;\n  padding: var(--space-2) var(--space-3);\n  background: var(--fill-bar-alt);\n  color: var(--color-bar-alt-text);\n  font-family: var(--font-heading);\n  font-size: var(--text-large);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n  letter-spacing: var(--heading-tracking);\n  text-transform: var(--heading-transform);\n  text-shadow: var(--shadow-text);\n}\n.ds-panel__body {\n  padding: var(--space-3) var(--space-4);\n}\n.ds-panel__text {\n  margin: 0 0 var(--space-3);\n}\n.ds-panel__text:last-child {\n  margin: 0;\n}\n/* A one-question form on one line. */\n.ds-panel__form {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  justify-content: center;\n  gap: var(--space-3);\n  margin: 0;\n}\n/* The web ring line: previous, random, next. */\n.ds-ring {\n  display: flex;\n  justify-content: center;\n  gap: var(--space-4);\n  margin: 0;\n  padding: 0;\n  list-style: none;\n  font-weight: var(--weight-bold);\n}\n.ds-ring__item::before {\n  content: \"[ \";\n  color: var(--color-text-muted);\n}\n.ds-ring__item::after {\n  content: \" ]\";\n  color: var(--color-text-muted);\n}\n\n/* ---------- grid: a row of framed pictures with a caption under each ---------- */\n.ds-grid {\n  display: grid;\n  grid-template-columns: repeat(4, minmax(0, 1fr));\n  gap: var(--space-5);\n}\n.ds-grid__cell {\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-2);\n  min-width: 0;\n  text-align: center;\n}\n.ds-grid__pic {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  height: var(--size-thumb);\n  background: var(--color-fill-1);\n  color: var(--color-heading);\n  border: var(--border-width-strong) var(--border-style) var(--color-border);\n  border-radius: var(--radius-page);\n  box-shadow: var(--shadow-panel);\n}\n.ds-grid__cell--2 .ds-grid__pic {\n  background: var(--color-fill-2);\n}\n.ds-grid__cell--3 .ds-grid__pic {\n  background: var(--color-fill-3);\n}\n.ds-grid__cell--4 .ds-grid__pic {\n  background: var(--color-fill-4);\n}\n.ds-grid__pic svg {\n  display: block;\n  width: var(--size-icon);\n  height: var(--size-icon);\n}\n.ds-grid__title {\n  margin: 0;\n  font-weight: var(--weight-bold);\n}\n.ds-grid__text {\n  margin: 0;\n  color: var(--color-text-muted);\n  font-size: var(--text-small);\n}\n\n/* ---------- tabs: a small table of one row, the current cell inverted ---------- */\n.ds-tabs {\n  display: flex;\n  justify-content: center;\n  gap: var(--space-1);\n  margin: 0 auto;\n  padding: var(--space-1);\n  list-style: none;\n  background: var(--color-surface-strong);\n  border: var(--border-width) var(--border-style) var(--color-border);\n  font-family: var(--font-ui);\n  font-size: var(--text-ui);\n  text-transform: var(--ui-transform);\n}\n.ds-tabs__item {\n  display: flex;\n}\n.ds-tabs__tab {\n  padding: var(--space-2) var(--space-4);\n  background: var(--color-surface-alt);\n  color: var(--color-link);\n  text-decoration: var(--link-decoration-quiet);\n}\n.ds-tabs__tab:hover,\n.ds-tabs__tab.is-hover {\n  color: var(--color-link-hover);\n}\n.ds-tabs__tab.is-current {\n  background: var(--fill-inverse);\n  color: var(--color-inverse-text);\n  font-weight: var(--weight-bold);\n  text-decoration: none;\n}\n\n/* ---------- sidebar: a column of small framed boxes ---------- */\n.ds-sidebar {\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-4);\n  text-align: left;\n}\n.ds-sidebar__block {\n  background: var(--fill-panel);\n  border: var(--border-width) var(--border-style) var(--color-border);\n  box-shadow: var(--shadow-panel);\n}\n.ds-sidebar__title {\n  margin: 0;\n  padding: var(--space-1) var(--space-2);\n  background: var(--fill-bar-alt);\n  color: var(--color-bar-alt-text);\n  font-family: var(--font-heading);\n  font-size: var(--text-base);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n  letter-spacing: var(--heading-tracking);\n  text-transform: var(--heading-transform);\n  text-align: center;\n  text-shadow: var(--shadow-text);\n}\n.ds-sidebar__list {\n  margin: 0;\n  padding: var(--space-2) var(--space-3);\n  list-style: none;\n  font-size: var(--text-small);\n}\n.ds-sidebar__item {\n  padding: var(--space-1) 0;\n}\n.ds-sidebar__item + .ds-sidebar__item {\n  border-top: var(--border-width) dotted var(--color-border-muted);\n}\n\n/* ---------- pagination ---------- */\n.ds-pagination {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  align-items: baseline;\n  gap: var(--space-3);\n  margin: 0;\n  padding: 0;\n  list-style: none;\n  font-size: var(--text-base);\n  font-weight: var(--weight-bold);\n}\n.ds-pagination__label {\n  color: var(--color-heading-alt);\n  font-style: italic;\n  font-weight: var(--weight-body);\n}\n.ds-pagination__link {\n  color: var(--color-link);\n  text-decoration: var(--link-decoration-quiet);\n}\n.ds-pagination__link:hover,\n.ds-pagination__link.is-hover {\n  color: var(--color-link-hover);\n}\n.ds-pagination__link.is-current {\n  padding: 0 var(--space-2);\n  background: var(--fill-accent);\n  color: var(--color-accent-text);\n  text-decoration: none;\n}\n.ds-pagination__link.is-disabled {\n  color: var(--color-disabled-text);\n  text-decoration: none;\n}\n\n/* ---------- breadcrumb: \"you are here\", centred, small ---------- */\n.ds-breadcrumb {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  margin: 0;\n  padding: 0;\n  list-style: none;\n  font-size: var(--text-small);\n}\n.ds-breadcrumb__item + .ds-breadcrumb__item::before {\n  content: \"\\00bb\";\n  padding: 0 var(--space-3);\n  color: var(--color-accent-alt);\n  font-weight: var(--weight-bold);\n}\n.ds-breadcrumb__item.is-current {\n  color: var(--color-heading);\n  font-weight: var(--weight-bold);\n}\n\n/* ---------- footer ---------- */\n.ds-footer {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: var(--space-3);\n  padding: var(--space-5) 0 0;\n  text-align: center;\n}\n.ds-footer .ds-rule {\n  align-self: stretch;\n}\n.ds-footer__links {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  margin: 0;\n  padding: 0;\n  list-style: none;\n  font-size: var(--text-small);\n}\n.ds-footer__item + .ds-footer__item::before {\n  content: \"|\";\n  padding: 0 var(--space-3);\n  color: var(--color-text-muted);\n}\n.ds-footer__mail {\n  margin: 0;\n  font-size: var(--text-large);\n  font-weight: var(--weight-bold);\n}\n.ds-footer__note {\n  margin: 0;\n  color: var(--color-heading-alt);\n  font-style: italic;\n}\n.ds-footer__legal {\n  margin: 0;\n  color: var(--color-text-muted);\n  font-size: var(--text-small);\n}\n\n/* ---------- views: one screen of the example site shows at a time ---------- */\n.ds-view { display: none; }\n.ds-view:target, .ds-page:not(:has(.ds-view:target)) .ds-view--home { display: block; }\n.ds-view:target { scroll-margin-top: 100vh; }\n\n/* ---------- rules: the plain carved one and the rainbow bar ---------- */\n.ds-rule {\n  box-sizing: border-box;\n  width: 100%;\n  height: 0;\n  margin: 0 auto;\n  border: 0;\n  border-top: var(--border-width) var(--border-style) var(--color-border);\n}\n.ds-rule--short {\n  width: 60%;\n}\n/* Six hard steps of the palette's loudest colours, as a divider picture was. */\n.ds-rule--rainbow {\n  height: var(--space-3);\n  border: 0;\n  background: linear-gradient(90deg, var(--color-danger) 0 16.66%, var(--color-warning) 16.66% 33.33%, var(--color-heading) 33.33% 50%, var(--color-success) 50% 66.66%, var(--color-link) 66.66% 83.33%, var(--color-link-visited) 83.33%);\n}\n\n/* ---------- under construction: a strip of diagonal stripes ---------- */\n.ds-construction {\n  box-sizing: border-box;\n  margin: 0;\n  padding: var(--space-2);\n  background: repeating-linear-gradient(-45deg, var(--color-notice) 0 var(--space-4), var(--color-notice-text) var(--space-4) calc(var(--space-4) * 2));\n  border: var(--border-width) var(--border-style) var(--color-border);\n  text-align: center;\n}\n.ds-construction__text {\n  display: inline-block;\n  padding: var(--space-1) var(--space-4);\n  background: var(--color-notice);\n  color: var(--color-notice-text);\n  font-family: var(--font-ui);\n  font-size: var(--text-ui);\n  font-weight: var(--weight-bold);\n  text-transform: var(--ui-transform);\n}\n\n/* ---------- blink: a slow two-step dim, only when motion is welcome ---------- */\n@media (prefers-reduced-motion: no-preference) {\n  .ds-blink {\n    animation: ds-blink 1.6s steps(2, jump-none) infinite;\n  }\n}\n@keyframes ds-blink {\n  from { opacity: 1; }\n  to { opacity: 0.6; }\n}\n\n/* ---------- links ---------- */\n.ds-link {\n  color: var(--color-link);\n  text-decoration: var(--link-decoration);\n  transition: var(--transition);\n}\n.ds-link:visited,\n.ds-link.is-visited {\n  color: var(--color-link-visited);\n}\n.ds-link:hover,\n.ds-link.is-hover {\n  color: var(--color-link-hover);\n  text-decoration: var(--link-decoration-hover);\n}\n.ds-link:active,\n.ds-link.is-active {\n  color: var(--color-link-active);\n}\n.ds-link:focus-visible,\n.ds-link.is-focus {\n  outline: var(--focus-ring);\n}\n.ds-link--quiet,\n.ds-link--quiet:visited,\n.ds-link--quiet.is-visited {\n  color: var(--color-link-quiet);\n  font-size: var(--text-small);\n  text-decoration: var(--link-decoration-quiet);\n}\n.ds-link--strong {\n  font-weight: var(--weight-bold);\n}\n/* A link on a bar, a notice or another coloured fill takes that fill's text colour. */\n.ds-link--plain,\n.ds-link--plain:visited,\n.ds-link--plain:hover,\n.ds-link--plain.is-hover {\n  color: inherit;\n  text-decoration: underline;\n}\n.ds-links {\n  margin: 0 0 var(--space-4);\n}\n/* The little drawing before an e-mail link or over a picture link. */\n.ds-icon {\n  display: inline-block;\n  width: var(--text-large);\n  height: var(--text-large);\n  vertical-align: middle;\n  color: var(--color-accent-alt);\n}\n.ds-icon svg {\n  display: block;\n  width: 100%;\n  height: 100%;\n}\n\n/* ---------- bullets: a link list with coloured diamonds ---------- */\n.ds-bullets {\n  margin: 0;\n  padding: 0;\n  list-style: none;\n  text-align: left;\n}\n.ds-bullets__item {\n  display: flex;\n  align-items: baseline;\n  gap: var(--space-3);\n  padding: var(--space-1) 0;\n}\n.ds-bullets__item::before {\n  content: \"\";\n  flex: none;\n  width: var(--space-3);\n  height: var(--space-3);\n  background: var(--color-accent-alt);\n  transform: rotate(45deg);\n}\n.ds-bullets__item:nth-child(3n+2)::before {\n  background: var(--color-heading-alt);\n}\n.ds-bullets__item:nth-child(3n)::before {\n  background: var(--color-warning);\n}\n.ds-bullets__text {\n  min-width: 0;\n}\n\n/* ---------- prose ---------- */\n.ds-prose {\n  color: var(--color-text);\n  font-family: var(--font-body);\n  font-size: var(--text-base);\n  line-height: var(--line-body);\n  text-align: left;\n}\n.ds-prose h1,\n.ds-prose h2,\n.ds-prose h3 {\n  margin: var(--space-5) 0 var(--space-2);\n  color: var(--color-heading);\n  font-family: var(--font-heading);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n  letter-spacing: var(--heading-tracking);\n  text-transform: var(--heading-transform);\n}\n.ds-prose h1 {\n  margin-top: 0;\n  font-size: var(--text-h1);\n  text-align: center;\n}\n.ds-prose h2 {\n  color: var(--color-heading-alt);\n  font-size: var(--text-h2);\n}\n.ds-prose h3 {\n  font-size: var(--text-h3);\n}\n.ds-prose p {\n  margin: 0 0 var(--space-4);\n}\n.ds-prose ul,\n.ds-prose ol {\n  margin: 0 0 var(--space-4);\n  padding: 0 0 0 var(--space-6);\n}\n.ds-prose li::marker {\n  color: var(--color-accent-alt);\n}\n.ds-prose strong {\n  color: var(--color-heading-alt);\n  font-weight: var(--weight-bold);\n}\n.ds-prose code {\n  padding: 0 var(--space-1);\n  background: var(--color-surface-alt);\n  font-family: var(--font-mono);\n  font-size: var(--text-base);\n}\n.ds-prose__lead {\n  color: var(--color-heading-alt);\n  font-size: var(--text-large);\n  font-style: italic;\n  text-align: center;\n}\n/* A block of markup to copy. */\n.ds-prose__code {\n  margin: 0 0 var(--space-4);\n  padding: var(--space-3);\n  overflow: hidden;\n  background: var(--color-surface-alt);\n  color: var(--color-text);\n  border: var(--border-width) var(--border-style) var(--color-border-muted);\n  font-family: var(--font-mono);\n  font-size: var(--text-small);\n  white-space: pre-wrap;\n}\n\n/* ---------- buttons ---------- */\n.ds-buttons {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  gap: var(--space-3);\n}\n.ds-button {\n  display: inline-block;\n  box-sizing: border-box;\n  margin: 0;\n  padding: var(--space-1) var(--space-4);\n  background: var(--fill-button);\n  color: var(--color-button-text);\n  border: var(--border-width) outset var(--color-button);\n  border-radius: var(--radius-control);\n  box-shadow: var(--shadow-control);\n  font-family: var(--font-ui);\n  font-size: var(--text-ui);\n  font-weight: var(--weight-ui);\n  line-height: var(--line-heading);\n  text-transform: var(--ui-transform);\n  text-decoration: none;\n  transition: var(--transition);\n  cursor: default;\n}\n.ds-button:hover,\n.ds-button.is-hover {\n  background: var(--fill-button-hover);\n  color: var(--color-button-hover-text);\n  box-shadow: var(--shadow-control-hover);\n}\n.ds-button:active,\n.ds-button.is-pressed {\n  border-style: inset;\n  box-shadow: var(--shadow-control-pressed);\n}\n.ds-button:focus-visible,\n.ds-button.is-focus {\n  outline: var(--focus-ring);\n}\n.ds-button--secondary,\n.ds-button--secondary:hover,\n.ds-button--secondary.is-hover {\n  background: var(--fill-button-secondary);\n  color: var(--color-button-secondary-text);\n  border-color: var(--color-button-secondary);\n}\n.ds-button--large {\n  padding: var(--space-2) var(--space-5);\n  font-size: var(--text-large);\n  font-weight: var(--weight-bold);\n}\n/* Destructive action: the danger colour as the fill, the sheet colour as the label. */\n.ds-button--danger,\n.ds-button--danger:hover,\n.ds-button--danger.is-hover {\n  background: var(--color-danger);\n  color: var(--color-canvas);\n  border-color: var(--color-danger);\n  font-weight: var(--weight-bold);\n}\n.ds-button:disabled,\n.ds-button.is-disabled {\n  background: var(--color-disabled);\n  color: var(--color-disabled-text);\n  border-color: var(--color-disabled);\n  box-shadow: none;\n}\n\n/* ---------- form ---------- */\n.ds-form {\n  display: grid;\n  grid-template-columns: var(--size-label) minmax(0, 1fr);\n  column-gap: var(--space-3);\n  row-gap: var(--space-3);\n  align-items: baseline;\n  margin: 0;\n  color: var(--color-text);\n  font-family: var(--font-body);\n  font-size: var(--text-base);\n  text-align: left;\n}\n.ds-form__label {\n  color: var(--color-heading-alt);\n  font-weight: var(--weight-bold);\n  text-align: right;\n}\n.ds-form__field {\n  min-width: 0;\n}\n.ds-form__input,\n.ds-form__select,\n.ds-form__textarea {\n  box-sizing: border-box;\n  margin: 0;\n  padding: var(--space-1) var(--space-2);\n  background: var(--fill-input);\n  color: var(--color-input-text);\n  border: var(--border-width) inset var(--color-input-border);\n  border-radius: var(--radius-control);\n  font-family: var(--font-ui);\n  font-size: var(--text-ui);\n  transition: var(--transition);\n}\n.ds-form__input {\n  width: var(--size-field);\n  max-width: 100%;\n}\n.ds-form__textarea {\n  display: block;\n  width: var(--size-area);\n  max-width: 100%;\n  font-family: var(--font-mono);\n}\n.ds-form__input:focus-visible,\n.ds-form__select:focus-visible,\n.ds-form__textarea:focus-visible,\n.ds-form__input.is-focus {\n  outline: var(--focus-ring);\n}\n.ds-form__input.is-error {\n  border-color: var(--color-danger);\n}\n.ds-form__input:disabled,\n.ds-form__input.is-disabled {\n  background: var(--color-disabled);\n  color: var(--color-disabled-text);\n}\n.ds-form__check {\n  appearance: none;\n  box-sizing: border-box;\n  width: var(--size-check);\n  height: var(--size-check);\n  margin: 0 var(--space-2) 0 0;\n  padding: var(--space-1);\n  vertical-align: middle;\n  background-color: var(--color-input);\n  border: var(--border-width) inset var(--color-input-border);\n  border-radius: var(--radius-control);\n}\n/* The tick is a block of the field's text colour inside the field's own fill. */\n.ds-form__check:checked::before,\n.ds-form__check.is-checked::before {\n  content: \"\";\n  display: block;\n  width: 100%;\n  height: 100%;\n  background-color: var(--color-input-text);\n}\n.ds-form__hint {\n  color: var(--color-text-muted);\n  font-size: var(--text-small);\n}\n.ds-form__error {\n  display: block;\n  color: var(--color-danger);\n  font-weight: var(--weight-bold);\n}\n.ds-form__actions {\n  grid-column: 2;\n  display: flex;\n  flex-wrap: wrap;\n  gap: var(--space-3);\n  padding: var(--space-2) 0 0;\n}\n\n/* ---------- badge ---------- */\n.ds-badge {\n  display: inline-block;\n  padding: 0 var(--space-2);\n  background: var(--fill-accent);\n  color: var(--color-accent-text);\n  border-radius: var(--radius-pill);\n  font-family: var(--font-ui);\n  font-size: var(--text-small);\n  font-weight: var(--weight-bold);\n  line-height: var(--line-body);\n  text-transform: var(--ui-transform);\n  vertical-align: baseline;\n}\n/* The usual mark beside a link: a loud italic word with no box. */\n.ds-badge--text {\n  padding: 0;\n  background: transparent;\n  color: var(--color-accent-alt);\n  font-style: italic;\n}\n.ds-badge--count {\n  padding: 0;\n  background: transparent;\n  color: var(--color-text-muted);\n  font-weight: var(--weight-body);\n}\n/* Status labels: the status colour as the fill, the sheet colour as the word. */\n.ds-badge--success {\n  background: var(--color-success);\n  color: var(--color-canvas);\n}\n.ds-badge--warning {\n  background: var(--color-warning);\n  color: var(--color-canvas);\n}\n.ds-badge--danger {\n  background: var(--color-danger);\n  color: var(--color-canvas);\n}\n.ds-badges {\n  display: block;\n  padding: 0 0 var(--space-2);\n}\n\n/* ---------- award: a prize picture drawn as a bordered badge ---------- */\n.ds-awards {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  gap: var(--space-4);\n}\n.ds-award {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  box-sizing: border-box;\n  width: var(--size-award);\n  padding: var(--space-2);\n  background: var(--fill-inverse);\n  color: var(--color-inverse-text);\n  border: var(--border-width-strong) var(--border-style) var(--color-border-strong);\n  text-align: center;\n}\n.ds-award__star {\n  display: block;\n  width: var(--size-icon);\n  height: var(--size-icon);\n}\n.ds-award__star svg {\n  display: block;\n  width: 100%;\n  height: 100%;\n}\n.ds-award__title {\n  font-family: var(--font-heading);\n  font-size: var(--text-base);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n}\n.ds-award__text {\n  font-family: var(--font-ui);\n  font-size: var(--text-small);\n}\n\n/* ---------- notice ---------- */\n.ds-notices {\n  display: flex;\n  flex-direction: column;\n  gap: var(--space-3);\n}\n.ds-notice {\n  margin: 0;\n  padding: var(--space-2) var(--space-4);\n  background: var(--color-notice);\n  color: var(--color-notice-text);\n  border: var(--border-width) var(--border-style) var(--color-border);\n  border-radius: var(--radius-panel);\n  font-family: var(--font-body);\n  font-size: var(--text-base);\n  text-align: center;\n}\n.ds-notice--error {\n  background: var(--color-danger-surface);\n  color: var(--color-danger);\n  border-color: var(--color-danger);\n}\n.ds-notice__label {\n  font-weight: var(--weight-bold);\n}\n\n/* ---------- dialog: a message box in the page flow ---------- */\n.ds-dialog {\n  position: static;\n  box-sizing: border-box;\n  width: var(--size-dialog);\n  max-width: 100%;\n  margin: 0 auto;\n  padding: 0;\n  background: var(--fill-panel);\n  color: var(--color-text);\n  border: var(--border-width-strong) var(--border-style) var(--color-border-strong);\n  border-radius: var(--radius-panel);\n  box-shadow: var(--shadow-dialog);\n  font-family: var(--font-body);\n  font-size: var(--text-base);\n}\n.ds-dialog__title {\n  margin: 0;\n  padding: var(--space-1) var(--space-3);\n  background: var(--fill-bar);\n  color: var(--color-bar-text);\n  font-family: var(--font-ui);\n  font-size: var(--text-ui);\n  font-weight: var(--weight-bold);\n  text-align: left;\n  text-shadow: var(--shadow-text);\n  text-transform: var(--ui-transform);\n}\n.ds-dialog__body {\n  margin: 0;\n  padding: var(--space-4) var(--space-4) var(--space-3);\n  text-align: center;\n}\n.ds-dialog__actions {\n  display: flex;\n  justify-content: center;\n  gap: var(--space-3);\n  padding: 0 var(--space-3) var(--space-4);\n}\n\n/* ---------- empty state ---------- */\n.ds-empty {\n  padding: var(--space-4);\n  background: var(--color-surface-alt);\n  color: var(--color-text);\n  border: var(--border-width) var(--border-style) var(--color-border-muted);\n  font-size: var(--text-base);\n  text-align: center;\n}\n.ds-empty__title {\n  margin: 0 0 var(--space-2);\n  color: var(--color-heading);\n  font-family: var(--font-heading);\n  font-size: var(--text-large);\n  font-weight: var(--weight-heading);\n  line-height: var(--line-heading);\n  letter-spacing: var(--heading-tracking);\n  text-transform: var(--heading-transform);\n}\n.ds-empty__text {\n  margin: 0 0 var(--space-3);\n}\n",
    "specimen.html": "<!doctype html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<title>chronoskin: a fan page on a free host, 1996 to 2001: specimen</title>\n<link rel=\"stylesheet\" href=\"tokens.css\">\n<link rel=\"stylesheet\" href=\"components.css\">\n</head>\n<body class=\"ds-page\" data-component=\"shell\">\n\n<div class=\"ds-page__frame\">\n\n  <header class=\"ds-nav\" data-component=\"nav\">\n    <a class=\"ds-brand\" data-component=\"brand\" href=\"#\">\n      <span class=\"ds-brand__mark\"><svg viewBox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\"><path fill-rule=\"evenodd\" d=\"M12.00 2.00L13.66 5.82L17.00 3.34L16.53 7.47L20.66 7.00L18.18 10.34L22.00 12.00L18.18 13.66L20.66 17.00L16.53 16.53L17.00 20.66L13.66 18.18L12.00 22.00L10.34 18.18L7.00 20.66L7.47 16.53L3.34 17.00L5.82 13.66L2.00 12.00L5.82 10.34L3.34 7.00L7.47 7.47L7.00 3.34L10.34 5.82ZM9.4 12a2.6 2.6 0 1 0 5.2 0a2.6 2.6 0 1 0 -5.2 0Z\"/></svg></span>\n      <span class=\"ds-brand__name\">chronoskin</span>\n    </a>\n    <span class=\"ds-nav__tagline\">The UNOFFICIAL fan page for the TV serial \"Starlane Seven\"!!</span>\n    <hr class=\"ds-rule ds-rule--rainbow\">\n    <ul class=\"ds-nav__links\">\n      <li class=\"ds-nav__item\"><a class=\"ds-nav__link\" href=\"#home\">Home</a></li>\n      <li class=\"ds-nav__item\"><a class=\"ds-nav__link\" href=\"#episodes\">Episodes</a></li>\n      <li class=\"ds-nav__item\"><a class=\"ds-nav__link\" href=\"#about\">The Show</a></li>\n      <li class=\"ds-nav__item\"><a class=\"ds-nav__link\" href=\"#gallery\">Pictures</a></li>\n      <li class=\"ds-nav__item\"><a class=\"ds-nav__link\" href=\"#links\">Links</a></li>\n      <li class=\"ds-nav__item\"><a class=\"ds-nav__link\" href=\"#guestbook\">Guestbook</a></li>\n    </ul>\n  </header>\n\n  <section class=\"ds-view ds-view--home\" id=\"home\">\n    <main class=\"ds-page__main\">\n\n      <section class=\"ds-hero\" data-component=\"hero\">\n        <h1 class=\"ds-hero__title\">Welcome aboard, Starlaners!</h1>\n        <p class=\"ds-hero__lead\">Episode reviews, pictures, news and every Starlane Seven link I can find, all on one page made by a fan for the fans.</p>\n        <div class=\"ds-hero__action\">\n          <a class=\"ds-button ds-button--large\" href=\"#guestbook\">Sign My Guestbook</a>\n          <a class=\"ds-button ds-button--secondary\" href=\"#episodes\">Go to the Episode Guide</a>\n        </div>\n        <p class=\"ds-hero__hint\">Last updated: Sunday 14 March 1999. This page is not connected with the makers of the show.</p>\n      </section>\n\n      <p class=\"ds-construction\"><span class=\"ds-construction__text\">Under construction: the season 3 pages are not finished yet!</span></p>\n\n      <ul class=\"ds-stat\" data-component=\"stats\">\n        <li class=\"ds-stat__item\"><span class=\"ds-stat__value\"><span class=\"ds-stat__digit\">0</span><span class=\"ds-stat__digit\">2</span><span class=\"ds-stat__digit\">7</span><span class=\"ds-stat__digit\">4</span><span class=\"ds-stat__digit\">1</span><span class=\"ds-stat__digit\">9</span></span> <span class=\"ds-stat__label\">visitors since 2 June 1997</span></li>\n        <li class=\"ds-stat__item\"><span class=\"ds-stat__value\"><span class=\"ds-stat__digit\">0</span><span class=\"ds-stat__digit\">3</span><span class=\"ds-stat__digit\">1</span><span class=\"ds-stat__digit\">2</span></span> <span class=\"ds-stat__label\">names in the guestbook</span></li>\n        <li class=\"ds-stat__item\"><span class=\"ds-stat__value\"><span class=\"ds-stat__digit\">0</span><span class=\"ds-stat__digit\">0</span><span class=\"ds-stat__digit\">5</span><span class=\"ds-stat__digit\">2</span></span> <span class=\"ds-stat__label\">episodes reviewed</span></li>\n      </ul>\n\n      <section class=\"ds-section\">\n        <h2 class=\"ds-heading\">Starlane News</h2>\n        <ul class=\"ds-list\" data-component=\"list\">\n          <li class=\"ds-list__item\"><span class=\"ds-list__meta\">14 Mar 99</span> <span class=\"ds-list__body\"><a class=\"ds-link\" href=\"#episodes\">My review of \"The Long Dark Orbit\"</a> is up at last. <span class=\"ds-badge ds-blink\">NEW!</span></span></li>\n          <li class=\"ds-list__item\"><span class=\"ds-list__meta\">07 Mar 99</span> <span class=\"ds-list__body\">Twelve <a class=\"ds-link\" href=\"#gallery\">pictures of the bridge set</a> added to the gallery. <span class=\"ds-badge ds-badge--text\">Updated!</span></span></li>\n          <li class=\"ds-list__item\"><span class=\"ds-list__meta\">21 Feb 99</span> <span class=\"ds-list__body\">Season 3 is said to begin in the autumn. <a class=\"ds-link is-visited\" href=\"#about\">What we know so far</a></span></li>\n          <li class=\"ds-list__item\"><span class=\"ds-list__meta\">02 Feb 99</span> <span class=\"ds-list__body\">chronoskin has won an award! See it on the <a class=\"ds-link\" href=\"#links\">links page</a>.</span></li>\n          <li class=\"ds-list__item\"><span class=\"ds-list__meta\">18 Jan 99</span> <span class=\"ds-list__body\">The guestbook works again. <a class=\"ds-link\" href=\"#guestbook\">Please sign it!</a></span></li>\n        </ul>\n        <p class=\"ds-list__more\"><a class=\"ds-link\" href=\"#home\">Older news...</a></p>\n      </section>\n\n      <hr class=\"ds-rule ds-rule--rainbow\">\n\n      <section class=\"ds-section\">\n        <h2 class=\"ds-heading\">Newest Pictures</h2>\n        <div class=\"ds-grid\" data-component=\"grid\">\n          <div class=\"ds-grid__cell\">\n            <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M12 2l4 9v7l-4 3-4-3v-7zM8 13l-5 5M16 13l5 5\"/></svg></a>\n            <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">The Seven</a></p>\n            <p class=\"ds-grid__text\">ship7.gif, 14 K</p>\n          </div>\n          <div class=\"ds-grid__cell ds-grid__cell--2\">\n            <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"8\" r=\"4\"/><path d=\"M4 21c1-6 15-6 16 0\"/></svg></a>\n            <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">Captain Vale</a></p>\n            <p class=\"ds-grid__text\">vale2.jpg, 22 K</p>\n          </div>\n          <div class=\"ds-grid__cell ds-grid__cell--3\">\n            <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"6\"/><path d=\"M2 15c5 3 15 0 20-6\"/></svg></a>\n            <p class=\"ds-grid__title\"><a class=\"ds-link is-visited\" href=\"#gallery\">Planet Oru</a></p>\n            <p class=\"ds-grid__text\">oru.jpg, 31 K</p>\n          </div>\n          <div class=\"ds-grid__cell ds-grid__cell--4\">\n            <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M3 5h18v14H3zM3 10h18M8 5v14M16 5v14\"/></svg></a>\n            <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">The Bridge</a></p>\n            <p class=\"ds-grid__text\">bridge.jpg, 27 K</p>\n          </div>\n        </div>\n      </section>\n\n      <div class=\"ds-page__pair\">\n        <section class=\"ds-panel\" data-component=\"panel\">\n          <h2 class=\"ds-panel__title\">The Starlane Fans Web Ring</h2>\n          <div class=\"ds-panel__body\">\n            <p class=\"ds-panel__text\">chronoskin is site 12 of 41 in the ring.</p>\n            <ul class=\"ds-ring\">\n              <li class=\"ds-ring__item\"><a class=\"ds-link\" href=\"#links\">Previous</a></li>\n              <li class=\"ds-ring__item\"><a class=\"ds-link\" href=\"#links\">Random</a></li>\n              <li class=\"ds-ring__item\"><a class=\"ds-link\" href=\"#links\">Next</a></li>\n            </ul>\n          </div>\n        </section>\n        <section class=\"ds-panel\">\n          <h2 class=\"ds-panel__title\">This Month's Poll</h2>\n          <div class=\"ds-panel__body\">\n            <form class=\"ds-panel__form\" action=\"#home\">\n              <label for=\"h-poll\">Best of the crew?</label>\n              <select class=\"ds-form__select\" id=\"h-poll\">\n                <option>Captain Vale</option>\n                <option>Doctor Imre</option>\n                <option>Pilot Sunde</option>\n              </select>\n              <button class=\"ds-button\" type=\"button\">Vote</button>\n            </form>\n          </div>\n        </section>\n      </div>\n\n    </main>\n  </section>\n\n  <section class=\"ds-view\" id=\"episodes\">\n    <div class=\"ds-page__inner\">\n\n      <div class=\"ds-page__head\">\n        <nav aria-label=\"You are here\">\n          <ol class=\"ds-breadcrumb\" data-component=\"breadcrumb\">\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#home\">Home</a></li>\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#episodes\">Episodes</a></li>\n            <li class=\"ds-breadcrumb__item is-current\">Season 2</li>\n          </ol>\n        </nav>\n        <header class=\"ds-page-header\" data-component=\"page-header\">\n          <div class=\"ds-page-header__text\">\n            <h1 class=\"ds-page-header__title\">Episode Guide</h1>\n            <p class=\"ds-page-header__lead\">All 52 episodes, with my score out of ten for each.</p>\n          </div>\n          <div class=\"ds-page-header__action\">\n            <a class=\"ds-button\" href=\"#guestbook\">Tell Me Your Favourite</a>\n          </div>\n        </header>\n        <ul class=\"ds-tabs\" data-component=\"tabs\">\n          <li class=\"ds-tabs__item\"><a class=\"ds-tabs__tab\" href=\"#episodes\">Season 1</a></li>\n          <li class=\"ds-tabs__item\"><a class=\"ds-tabs__tab is-current\" href=\"#episodes\">Season 2</a></li>\n          <li class=\"ds-tabs__item\"><a class=\"ds-tabs__tab\" href=\"#episodes\">Season 3</a></li>\n          <li class=\"ds-tabs__item\"><a class=\"ds-tabs__tab\" href=\"#episodes\">The Specials</a></li>\n        </ul>\n      </div>\n\n      <table class=\"ds-table\" data-component=\"table\">\n        <caption class=\"ds-table__caption\">\n          <span class=\"ds-badges\" data-component=\"badge\">Key: <span class=\"ds-badge ds-badge--success\">REVIEWED</span> my review is up <span class=\"ds-badge ds-badge--warning\">SOON</span> I am writing it <span class=\"ds-badge ds-badge--danger\">NO TAPE</span> I missed it <span class=\"ds-badge\">NEW!</span> added this month</span>\n          Scores are my own. <a class=\"ds-link\" href=\"#guestbook\">Tell me where I am wrong</a>\n        </caption>\n        <thead>\n          <tr>\n            <th class=\"ds-table__head ds-table__head--num\" scope=\"col\">No.</th>\n            <th class=\"ds-table__head\" scope=\"col\">Episode</th>\n            <th class=\"ds-table__head\" scope=\"col\">First shown</th>\n            <th class=\"ds-table__head\" scope=\"col\">Review</th>\n            <th class=\"ds-table__head ds-table__head--num\" scope=\"col\">Score</th>\n          </tr>\n        </thead>\n        <tbody>\n          <tr>\n            <td class=\"ds-table__cell ds-table__cell--num\">2.01</td>\n            <td class=\"ds-table__cell\"><a class=\"ds-link is-visited\" href=\"#about\">Seven Lights Out</a> <span class=\"ds-table__desc\">The ship wakes with nobody at the helm.</span></td>\n            <td class=\"ds-table__cell\">12 Sep 1998</td>\n            <td class=\"ds-table__cell\"><span class=\"ds-badge ds-badge--success\">REVIEWED</span></td>\n            <td class=\"ds-table__cell ds-table__cell--num\">9</td>\n          </tr>\n          <tr class=\"ds-table__row--alt\">\n            <td class=\"ds-table__cell ds-table__cell--num\">2.02</td>\n            <td class=\"ds-table__cell\"><a class=\"ds-link\" href=\"#about\">The Salt Moon</a> <span class=\"ds-table__desc\">Imre finds a garden where none should grow.</span></td>\n            <td class=\"ds-table__cell\">19 Sep 1998</td>\n            <td class=\"ds-table__cell\"><span class=\"ds-badge ds-badge--success\">REVIEWED</span></td>\n            <td class=\"ds-table__cell ds-table__cell--num\">7</td>\n          </tr>\n          <tr>\n            <td class=\"ds-table__cell ds-table__cell--num\">2.03</td>\n            <td class=\"ds-table__cell\"><a class=\"ds-link\" href=\"#about\">The Long Dark Orbit</a> <span class=\"ds-badge\">NEW!</span> <span class=\"ds-table__desc\">Two days, one airlock and no answers.</span></td>\n            <td class=\"ds-table__cell\">26 Sep 1998</td>\n            <td class=\"ds-table__cell\"><span class=\"ds-badge ds-badge--success\">REVIEWED</span></td>\n            <td class=\"ds-table__cell ds-table__cell--num\">10</td>\n          </tr>\n          <tr class=\"ds-table__row--alt\">\n            <td class=\"ds-table__cell ds-table__cell--num\">2.04</td>\n            <td class=\"ds-table__cell\">A Signal from Oru <span class=\"ds-table__desc\">Sunde answers a call sent forty years ago.</span></td>\n            <td class=\"ds-table__cell\">03 Oct 1998</td>\n            <td class=\"ds-table__cell\"><span class=\"ds-badge ds-badge--warning\">SOON</span></td>\n            <td class=\"ds-table__cell ds-table__cell--num\">8</td>\n          </tr>\n          <tr>\n            <td class=\"ds-table__cell ds-table__cell--num\">2.05</td>\n            <td class=\"ds-table__cell\">Paper Stars <span class=\"ds-table__desc\">The one with the school play. So I am told.</span></td>\n            <td class=\"ds-table__cell\">10 Oct 1998</td>\n            <td class=\"ds-table__cell\"><span class=\"ds-badge ds-badge--danger\">NO TAPE</span></td>\n            <td class=\"ds-table__cell ds-table__cell--num\">0</td>\n          </tr>\n          <tr>\n            <td class=\"ds-table__cell ds-table__cell--group\" colspan=\"5\">Have you got \"Paper Stars\" on tape? <a class=\"ds-link\" href=\"#guestbook\">Please write to me!</a></td>\n          </tr>\n        </tbody>\n      </table>\n\n      <ol class=\"ds-pagination\" data-component=\"pagination\">\n        <li class=\"ds-pagination__label\">Season 2, page:</li>\n        <li><span class=\"ds-pagination__link is-disabled\">&lt;&lt; Back</span></li>\n        <li><span class=\"ds-pagination__link is-current\">1</span></li>\n        <li><a class=\"ds-pagination__link\" href=\"#episodes\">2</a></li>\n        <li><a class=\"ds-pagination__link\" href=\"#episodes\">3</a></li>\n        <li><a class=\"ds-pagination__link\" href=\"#episodes\">4</a></li>\n        <li><a class=\"ds-pagination__link\" href=\"#episodes\">Next &gt;&gt;</a></li>\n      </ol>\n\n    </div>\n  </section>\n\n  <section class=\"ds-view\" id=\"about\">\n    <div class=\"ds-page__inner\">\n\n      <div class=\"ds-page__head\">\n        <nav aria-label=\"You are here\">\n          <ol class=\"ds-breadcrumb\">\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#home\">Home</a></li>\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#about\">The Show</a></li>\n            <li class=\"ds-breadcrumb__item is-current\">What It Is</li>\n          </ol>\n        </nav>\n        <header class=\"ds-page-header\">\n          <div class=\"ds-page-header__text\">\n            <h1 class=\"ds-page-header__title\">The Show</h1>\n            <p class=\"ds-page-header__lead\">What Starlane Seven is, and why I made this page.</p>\n          </div>\n          <div class=\"ds-page-header__action\">\n            <a class=\"ds-button ds-button--secondary\" href=\"#episodes\">Episode Guide</a>\n          </div>\n        </header>\n      </div>\n\n      <div class=\"ds-page__columns\">\n        <article class=\"ds-prose\" data-component=\"typography\">\n          <h1>Seven people, one very old ship</h1>\n          <p class=\"ds-prose__lead\">If you have never seen it, start here!</p>\n          <p>Starlane Seven is a serial about the crew of a cargo ship that should have been scrapped years ago. It is shown late on Saturdays, it has <strong>no laser fights at all</strong>, and it is the best thing on television.</p>\n          <h2>Why this page?</h2>\n          <p>Because in 1997 I could not find a single page about the show, so I made one. Everything on chronoskin is typed by hand in a text editor and saved as <code>index.html</code>. You will find here:</p>\n          <ul>\n            <li>a review of every episode I have on tape;</li>\n            <li>pictures, all small files for slow modems;</li>\n            <li>the news, when there is any.</li>\n          </ul>\n          <h3>How the links look</h3>\n          <p class=\"ds-links\" data-component=\"links\">\n            <a class=\"ds-link\" href=\"#about\">A link you have not followed</a>,\n            <a class=\"ds-link is-visited\" href=\"#about\">one you have visited</a>,\n            <a class=\"ds-link is-hover\" href=\"#about\">one under the pointer</a>,\n            <a class=\"ds-link is-active\" href=\"#about\">one as you click it</a>,\n            <a class=\"ds-link ds-link--strong\" href=\"#about\">a bold link</a> and\n            <a class=\"ds-link ds-link--quiet\" href=\"#about\">a small link</a>.\n          </p>\n          <h3>Write to me</h3>\n          <p>I read every letter. The quickest way to say hello is the <a class=\"ds-link\" href=\"#guestbook\">guestbook</a>.</p>\n        </article>\n\n        <aside class=\"ds-sidebar\" data-component=\"sidebar\">\n          <section class=\"ds-sidebar__block\">\n            <h2 class=\"ds-sidebar__title\">Fact File</h2>\n            <ul class=\"ds-sidebar__list\">\n              <li class=\"ds-sidebar__item\">First shown: 1996</li>\n              <li class=\"ds-sidebar__item\">Episodes so far: 52</li>\n              <li class=\"ds-sidebar__item\">Length: 45 minutes</li>\n              <li class=\"ds-sidebar__item\">My favourite: <a class=\"ds-link\" href=\"#episodes\">2.03</a></li>\n            </ul>\n          </section>\n          <section class=\"ds-sidebar__block\">\n            <h2 class=\"ds-sidebar__title\">The Crew</h2>\n            <ul class=\"ds-sidebar__list\">\n              <li class=\"ds-sidebar__item\"><a class=\"ds-link\" href=\"#gallery\">Captain Vale</a></li>\n              <li class=\"ds-sidebar__item\"><a class=\"ds-link\" href=\"#gallery\">Doctor Imre</a></li>\n              <li class=\"ds-sidebar__item\"><a class=\"ds-link is-visited\" href=\"#gallery\">Pilot Sunde</a></li>\n              <li class=\"ds-sidebar__item\"><a class=\"ds-link\" href=\"#gallery\">The other four</a> <span class=\"ds-badge ds-badge--count\">(4)</span></li>\n            </ul>\n          </section>\n          <section class=\"ds-sidebar__block\">\n            <h2 class=\"ds-sidebar__title\">Read Next</h2>\n            <ul class=\"ds-sidebar__list\">\n              <li class=\"ds-sidebar__item\"><a class=\"ds-link\" href=\"#episodes\">Season 2 reviews</a></li>\n              <li class=\"ds-sidebar__item\"><a class=\"ds-link\" href=\"#links\">Other fan pages</a></li>\n            </ul>\n          </section>\n        </aside>\n      </div>\n\n    </div>\n  </section>\n\n  <section class=\"ds-view\" id=\"gallery\">\n    <div class=\"ds-page__inner\">\n\n      <div class=\"ds-page__head\">\n        <nav aria-label=\"You are here\">\n          <ol class=\"ds-breadcrumb\">\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#home\">Home</a></li>\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#gallery\">Pictures</a></li>\n            <li class=\"ds-breadcrumb__item is-current\">Seasons 1 and 2</li>\n          </ol>\n        </nav>\n        <header class=\"ds-page-header\">\n          <div class=\"ds-page-header__text\">\n            <h1 class=\"ds-page-header__title\">Picture Gallery</h1>\n            <p class=\"ds-page-header__lead\">Click a picture to see it full size. Please be patient!</p>\n          </div>\n          <div class=\"ds-page-header__action\">\n            <a class=\"ds-button\" href=\"#guestbook\">Send Me a Picture</a>\n          </div>\n        </header>\n      </div>\n\n      <div class=\"ds-grid\">\n        <div class=\"ds-grid__cell\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M12 2l4 9v7l-4 3-4-3v-7zM8 13l-5 5M16 13l5 5\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">The Seven</a></p>\n          <p class=\"ds-grid__text\">ship7.gif, 14 K</p>\n        </div>\n        <div class=\"ds-grid__cell ds-grid__cell--2\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"8\" r=\"4\"/><path d=\"M4 21c1-6 15-6 16 0\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">Captain Vale</a></p>\n          <p class=\"ds-grid__text\">vale2.jpg, 22 K</p>\n        </div>\n        <div class=\"ds-grid__cell ds-grid__cell--3\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"6\"/><path d=\"M2 15c5 3 15 0 20-6\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link is-visited\" href=\"#gallery\">Planet Oru</a></p>\n          <p class=\"ds-grid__text\">oru.jpg, 31 K</p>\n        </div>\n        <div class=\"ds-grid__cell ds-grid__cell--4\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M3 5h18v14H3zM3 10h18M8 5v14M16 5v14\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">The Bridge</a></p>\n          <p class=\"ds-grid__text\">bridge.jpg, 27 K</p>\n        </div>\n        <div class=\"ds-grid__cell ds-grid__cell--3\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"8\" r=\"4\"/><path d=\"M4 21c1-6 15-6 16 0\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">Doctor Imre</a></p>\n          <p class=\"ds-grid__text\">imre.jpg, 19 K</p>\n        </div>\n        <div class=\"ds-grid__cell ds-grid__cell--4\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M4 20l4-12 4 8 3-5 5 9z\"/><circle cx=\"17\" cy=\"5\" r=\"2\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">The Salt Moon</a></p>\n          <p class=\"ds-grid__text\">moon.jpg, 34 K</p>\n        </div>\n        <div class=\"ds-grid__cell\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"8\" r=\"4\"/><path d=\"M4 21c1-6 15-6 16 0\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link is-visited\" href=\"#gallery\">Pilot Sunde</a></p>\n          <p class=\"ds-grid__text\">sunde.jpg, 20 K</p>\n        </div>\n        <div class=\"ds-grid__cell ds-grid__cell--2\">\n          <a class=\"ds-grid__pic\" href=\"#gallery\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M5 3h14v18H5zM9 8h6M9 12h6M9 16h3\"/></svg></a>\n          <p class=\"ds-grid__title\"><a class=\"ds-link\" href=\"#gallery\">A Script Page</a></p>\n          <p class=\"ds-grid__text\">script.gif, 41 K</p>\n        </div>\n      </div>\n\n      <hr class=\"ds-rule ds-rule--rainbow\">\n\n      <section class=\"ds-section\">\n        <h2 class=\"ds-heading\">Season 3 Pictures</h2>\n        <div class=\"ds-empty\" data-component=\"empty\">\n          <h3 class=\"ds-empty__title\">Nothing here yet!</h3>\n          <p class=\"ds-empty__text\">Season 3 has not been shown, so there are no pictures. If you have one, I would love to put it here with your name.</p>\n          <a class=\"ds-button\" href=\"#guestbook\">Send Me a Picture</a>\n        </div>\n      </section>\n\n    </div>\n  </section>\n\n  <section class=\"ds-view\" id=\"links\">\n    <div class=\"ds-page__inner\">\n\n      <div class=\"ds-page__head\">\n        <nav aria-label=\"You are here\">\n          <ol class=\"ds-breadcrumb\">\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#home\">Home</a></li>\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#links\">Links</a></li>\n            <li class=\"ds-breadcrumb__item is-current\">Fan Pages and Awards</li>\n          </ol>\n        </nav>\n        <header class=\"ds-page-header\">\n          <div class=\"ds-page-header__text\">\n            <h1 class=\"ds-page-header__title\">Cool Links</h1>\n            <p class=\"ds-page-header__lead\">Every one visited by me. Tell me if one is dead!</p>\n          </div>\n          <div class=\"ds-page-header__action\">\n            <a class=\"ds-button\" href=\"#guestbook\">Add Your Page</a>\n          </div>\n        </header>\n      </div>\n\n      <div class=\"ds-page__pair\">\n        <section class=\"ds-panel\">\n          <h2 class=\"ds-panel__title\">Other Fan Pages</h2>\n          <div class=\"ds-panel__body\">\n            <ul class=\"ds-bullets\">\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">Deck Four</a>, the biggest picture archive</span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link is-visited\" href=\"#links\">Imre's Garden</a>, all about the Doctor</span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">The Oru Signal</a> <span class=\"ds-badge ds-badge--text\">Cool!</span></span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">Sunde's Logbook</a>, fan stories</span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">Cargo Bay Chat</a>, Sundays at nine</span></li>\n            </ul>\n          </div>\n        </section>\n        <section class=\"ds-panel\">\n          <h2 class=\"ds-panel__title\">Help for Your Own Page</h2>\n          <div class=\"ds-panel__body\">\n            <ul class=\"ds-bullets\">\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">Free star backgrounds</a></span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">A counter for your page</a></span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">Get a free guestbook</a> <span class=\"ds-badge\">NEW!</span></span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link is-visited\" href=\"#links\">How to write a table</a></span></li>\n              <li class=\"ds-bullets__item\"><span class=\"ds-bullets__text\"><a class=\"ds-link\" href=\"#links\">Join the web ring</a></span></li>\n            </ul>\n          </div>\n        </section>\n      </div>\n\n      <hr class=\"ds-rule ds-rule--rainbow\">\n\n      <section class=\"ds-section\">\n        <h2 class=\"ds-heading\">Awards This Page Has Won</h2>\n        <div class=\"ds-awards\">\n          <div class=\"ds-award\"><span class=\"ds-award__star\"><svg viewBox=\"0 0 24 24\" fill=\"currentColor\" stroke=\"none\" aria-hidden=\"true\"><path d=\"M12 2l3 7h7l-5.500 4.500 2 7.500-6.500-4.500-6.500 4.500 2-7.500L2 9h7z\"/></svg></span><span class=\"ds-award__title\">Stellar Site</span><span class=\"ds-award__text\">February 1999</span></div>\n          <div class=\"ds-award\"><span class=\"ds-award__star\"><svg viewBox=\"0 0 24 24\" fill=\"currentColor\" stroke=\"none\" aria-hidden=\"true\"><path d=\"M12 2l3 7h7l-5.500 4.500 2 7.500-6.500-4.500-6.500 4.500 2-7.500L2 9h7z\"/></svg></span><span class=\"ds-award__title\">Fan Page of the Week</span><span class=\"ds-award__text\">Deck Four</span></div>\n          <div class=\"ds-award\"><span class=\"ds-award__star\"><svg viewBox=\"0 0 24 24\" fill=\"currentColor\" stroke=\"none\" aria-hidden=\"true\"><path d=\"M12 2l3 7h7l-5.500 4.500 2 7.500-6.500-4.500-6.500 4.500 2-7.500L2 9h7z\"/></svg></span><span class=\"ds-award__title\">Top 5% of Fan Pages</span><span class=\"ds-award__text\">1998</span></div>\n          <div class=\"ds-award\"><span class=\"ds-award__star\"><svg viewBox=\"0 0 24 24\" fill=\"currentColor\" stroke=\"none\" aria-hidden=\"true\"><path d=\"M12 2l3 7h7l-5.500 4.500 2 7.500-6.500-4.500-6.500 4.500 2-7.500L2 9h7z\"/></svg></span><span class=\"ds-award__title\">Kid Safe Page</span><span class=\"ds-award__text\">all ages</span></div>\n        </div>\n        <p class=\"ds-list__more\"><a class=\"ds-link\" href=\"#guestbook\">Want to give chronoskin an award? Write to me!</a></p>\n      </section>\n\n    </div>\n  </section>\n\n  <section class=\"ds-view\" id=\"guestbook\">\n    <div class=\"ds-page__inner\">\n\n      <div class=\"ds-page__head\">\n        <nav aria-label=\"You are here\">\n          <ol class=\"ds-breadcrumb\">\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#home\">Home</a></li>\n            <li class=\"ds-breadcrumb__item\"><a class=\"ds-link\" href=\"#guestbook\">Guestbook</a></li>\n            <li class=\"ds-breadcrumb__item is-current\">Sign It</li>\n          </ol>\n        </nav>\n        <header class=\"ds-page-header\">\n          <div class=\"ds-page-header__text\">\n            <h1 class=\"ds-page-header__title\">My Guestbook</h1>\n            <p class=\"ds-page-header__lead\">312 Starlaners have signed. You are next!</p>\n          </div>\n          <div class=\"ds-page-header__action\">\n            <a class=\"ds-button ds-button--secondary\" href=\"#home\">Back to the Front Page</a>\n          </div>\n        </header>\n      </div>\n\n      <ul class=\"ds-list ds-list--entries\">\n        <li class=\"ds-list__item\"><span class=\"ds-list__title\">Mirela</span> <span class=\"ds-list__meta\">from a town by a lake, 11 Mar 99</span>\n          <p class=\"ds-list__text\">At last a page for us! Your review of 2.03 says everything I felt. Vale forever!</p></li>\n        <li class=\"ds-list__item\"><span class=\"ds-list__title\">Deck Four Dan</span> <span class=\"ds-list__meta\">found you through the web ring, 28 Feb 99</span>\n          <p class=\"ds-list__text\">Great page, I have linked you from mine. Your counter is beating my counter.</p></li>\n        <li class=\"ds-list__item\"><span class=\"ds-list__title\">T. Okoro</span> <span class=\"ds-list__meta\">just surfed in, 02 Feb 99</span>\n          <p class=\"ds-list__text\">Never seen the show but now I want to. When is it on? <a class=\"ds-link\" href=\"#episodes\">Found it, thanks.</a></p></li>\n      </ul>\n      <p class=\"ds-list__more\"><a class=\"ds-link\" href=\"#guestbook\">Read all 312 entries...</a></p>\n\n      <hr class=\"ds-rule ds-rule--rainbow\">\n\n      <section class=\"ds-section\">\n        <h2 class=\"ds-heading\">Sign the Guestbook</h2>\n        <div class=\"ds-notices\" data-component=\"notice\">\n          <p class=\"ds-notice\"><span class=\"ds-notice__label\">Please note:</span> no tags in your message, and no spoilers for season 3!</p>\n          <p class=\"ds-notice ds-notice--error\"><span class=\"ds-notice__label\">Oops!</span> Your entry was not added. Please type a name and try again.</p>\n        </div>\n      </section>\n\n      <form class=\"ds-form\" data-component=\"form\" action=\"#guestbook\">\n        <label class=\"ds-form__label\" for=\"g-name\">Your name:</label>\n        <div class=\"ds-form__field\">\n          <input class=\"ds-form__input is-error\" id=\"g-name\" type=\"text\">\n          <span class=\"ds-form__error\">A name is needed, even a made-up one.</span>\n        </div>\n        <label class=\"ds-form__label\" for=\"g-mail\">Your e-mail:</label>\n        <div class=\"ds-form__field\">\n          <input class=\"ds-form__input\" id=\"g-mail\" type=\"text\" value=\"you@example.net\">\n          <span class=\"ds-form__hint\">(not shown on the page)</span>\n        </div>\n        <label class=\"ds-form__label\" for=\"g-how\">How did you find me?</label>\n        <div class=\"ds-form__field\">\n          <select class=\"ds-form__select\" id=\"g-how\">\n            <option>The web ring</option>\n            <option>A search engine</option>\n            <option>A friend told me</option>\n            <option>Just surfed in</option>\n          </select>\n        </div>\n        <span class=\"ds-form__label\">Also:</span>\n        <div class=\"ds-form__field\">\n          <label><input class=\"ds-form__check\" type=\"checkbox\" checked>Add my home page to the links</label>\n        </div>\n        <label class=\"ds-form__label\" for=\"g-note\">Your message:</label>\n        <div class=\"ds-form__field\">\n          <textarea class=\"ds-form__textarea\" id=\"g-note\" rows=\"4\">Greetings from</textarea>\n        </div>\n        <div class=\"ds-form__actions\" data-component=\"buttons\">\n          <button class=\"ds-button\" type=\"button\">Sign the Guestbook</button>\n          <button class=\"ds-button ds-button--secondary\" type=\"button\">Clear</button>\n          <button class=\"ds-button\" type=\"button\" disabled>Preview</button>\n          <button class=\"ds-button ds-button--danger\" type=\"button\">Delete My Entry</button>\n        </div>\n      </form>\n\n      <section class=\"ds-dialog\" data-component=\"dialog\" role=\"dialog\" aria-labelledby=\"d-title\">\n        <h2 class=\"ds-dialog__title\" id=\"d-title\">Delete your entry?</h2>\n        <p class=\"ds-dialog__body\">Your entry of 11 March will be taken out of the guestbook. This cannot be undone!</p>\n        <div class=\"ds-dialog__actions\">\n          <button class=\"ds-button ds-button--danger\" type=\"button\">Delete It</button>\n          <button class=\"ds-button ds-button--secondary\" type=\"button\">Keep It</button>\n        </div>\n      </section>\n\n    </div>\n  </section>\n\n  <footer class=\"ds-footer\" data-component=\"footer\">\n    <hr class=\"ds-rule ds-rule--rainbow\">\n    <ul class=\"ds-footer__links\">\n      <li class=\"ds-footer__item\"><a class=\"ds-link\" href=\"#home\">Home</a></li>\n      <li class=\"ds-footer__item\"><a class=\"ds-link\" href=\"#episodes\">Episodes</a></li>\n      <li class=\"ds-footer__item\"><a class=\"ds-link\" href=\"#about\">The Show</a></li>\n      <li class=\"ds-footer__item\"><a class=\"ds-link\" href=\"#gallery\">Pictures</a></li>\n      <li class=\"ds-footer__item\"><a class=\"ds-link\" href=\"#links\">Links</a></li>\n      <li class=\"ds-footer__item\"><a class=\"ds-link\" href=\"#guestbook\">Guestbook</a></li>\n    </ul>\n    <p class=\"ds-footer__mail\"><span class=\"ds-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M3 6h18v12H3zM3 6l9 7 9-7\"/></svg></span> <a class=\"ds-link\" href=\"#guestbook\">E-mail me!</a></p>\n    <p class=\"ds-footer__note\">chronoskin is best viewed at 800x600 in 256 colours or more.</p>\n    <p class=\"ds-footer__legal\">This is a fan page. Words and layout copyright 1997 to 1999 chronoskin. Starlane Seven belongs to its makers.</p>\n  </footer>\n\n</div>\n</body>\n</html>\n",
    "style.json": "{\n  \"id\": \"v1.home-pages-90s.blog.s01.p08.t07.u01\",\n  \"library\": \"2026.10.09-1346\",\n  \"era\": {\n    \"slug\": \"home-pages-90s\",\n    \"years\": [\n      1996,\n      2001\n    ]\n  },\n  \"archetype\": \"blog\",\n  \"mode\": \"mix\",\n  \"markup\": \"modern\",\n  \"viewport\": {\n    \"width\": 800,\n    \"fluid\": false\n  },\n  \"source\": \"https://chrono.skin/s/v1-hp-1871\",\n  \"short\": \"v1-hp-1871\"\n}\n",
    "tokens.css": "/* @part palette */\n:root {\n  --color-page: #98d0ff;\n  --color-canvas: #ffffff;\n  --color-surface: #ffffff;\n  --color-surface-alt: #ffffd0;\n  --color-surface-strong: #cce6ff;\n  --color-bar: #0068ff;\n  --color-bar-text: #ffffff;\n  --color-bar-alt: #003098;\n  --color-bar-alt-text: #ffffd0;\n  --color-inverse: #000000;\n  --color-inverse-text: #ffffff;\n  --color-text: #000000;\n  --color-text-muted: #606060;\n  --color-heading: #003098;\n  --color-heading-alt: #c84400;\n  --color-link: #0000ee;\n  --color-link-quiet: #0033cc;\n  --color-link-visited: #551a8b;\n  --color-link-hover: #ff3300;\n  --color-link-active: #ff0000;\n  --color-border: #989898;\n  --color-border-strong: #0030d0;\n  --color-border-muted: #b0c8e0;\n  --color-accent: #ff6600;\n  --color-accent-text: #ffffff;\n  --color-accent-alt: #b8007a;\n  --color-fill-1: #cce6ff;\n  --color-fill-2: #ffffd0;\n  --color-fill-3: #d9f2d9;\n  --color-fill-4: #ffe0cc;\n  --color-button: #f0f0f0;\n  --color-button-text: #000000;\n  --color-button-hover-text: #0030d0;\n  --color-button-secondary: #0068ff;\n  --color-button-secondary-text: #ffffff;\n  --color-input: #ffffff;\n  --color-input-text: #000000;\n  --color-input-border: #686868;\n  --color-disabled: #e0e0e0;\n  --color-disabled-text: #909090;\n  --color-danger: #cc0000;\n  --color-danger-surface: #ffe6e6;\n  --color-success: #007a00;\n  --color-warning: #b85c00;\n  --color-notice: #ffffd0;\n  --color-notice-text: #000000;\n  --color-focus: #0030d0;\n  --color-shadow: #5c8fc7;\n  --color-overlay: rgba(0, 48, 152, 0.5);\n}\n\n/* @part type */\n:root {\n  --font-body: Helvetica, Arial, \"Liberation Sans\", sans-serif;\n  --font-heading: \"Copperplate Gothic Bold\", Copperplate, \"Copperplate Gothic Light\", Helvetica, sans-serif;\n  --font-ui: Helvetica, Arial, \"Liberation Sans\", sans-serif;\n  --font-mono: \"Lucida Console\", \"Lucida Sans Typewriter\", \"Courier New\", monospace;\n  --text-base: 13px;\n  --text-small: 11px;\n  --text-ui: 11px;\n  --text-large: 15px;\n  --text-display: 40px;\n  --text-h1: 27px;\n  --text-h2: 19px;\n  --text-h3: 15px;\n  --line-body: 1.35;\n  --line-heading: 1.2;\n  --line-display: 1.1;\n  --weight-body: 400;\n  --weight-bold: 700;\n  --weight-heading: 700;\n  --weight-display: 700;\n  --weight-ui: 700;\n  --heading-transform: uppercase;\n  --heading-tracking: 1px;\n  --display-tracking: 2px;\n  --figure-shift: 0em;\n  --ui-transform: uppercase;\n  --link-decoration: underline;\n  --link-decoration-hover: none;\n  --link-decoration-quiet: none;\n}\n\n/* @part surface */\n:root {\n  --border-width: 4px;\n  --border-width-strong: 6px;\n  --border-style: ridge;\n  --radius-control: 0;\n  --radius-panel: 0;\n  --radius-pill: 0;\n  --radius-page: 0;\n  --shadow-panel: none;\n  --shadow-control: none;\n  --shadow-control-hover: none;\n  --shadow-control-pressed: none;\n  --shadow-dialog: none;\n  --shadow-text: none;\n  --fill-page: radial-gradient(circle at 12% 18%, var(--color-text) 0 1px, transparent 1.5px) 0 0 / 160px 160px, radial-gradient(circle at 64% 9%, var(--color-text-muted) 0 1px, transparent 1.5px) 0 0 / 160px 160px, radial-gradient(circle at 38% 52%, var(--color-heading) 0 1.5px, transparent 2px) 0 0 / 160px 160px, radial-gradient(circle at 86% 61%, var(--color-text) 0 1px, transparent 1.5px) 0 0 / 160px 160px, radial-gradient(circle at 21% 84%, var(--color-link) 0 1px, transparent 1.5px) 0 0 / 160px 160px, radial-gradient(circle at 71% 93%, var(--color-text-muted) 0 1px, transparent 1.5px) 0 0 / 160px 160px, radial-gradient(circle at 52% 31%, var(--color-text-muted) 0 0.5px, transparent 1px) 0 0 / 80px 80px, var(--color-page);\n  --fill-bar: var(--color-bar);\n  --fill-bar-alt: var(--color-bar-alt);\n  --fill-inverse: var(--color-inverse);\n  --fill-accent: var(--color-accent);\n  --fill-panel: var(--color-surface);\n  --fill-button: var(--color-button);\n  --fill-button-hover: var(--color-button);\n  --fill-button-secondary: var(--color-button-secondary);\n  --fill-input: var(--color-input);\n  --focus-ring: 1px dotted var(--color-focus);\n  --transition: none;\n  --backdrop-blur: 0px;\n}\n"
  }
}
