# Web 1.0 — style guide for coding agents

> Generated from the Aesthetary record for **Web 1.0**.
> Research: **Partly sourced** · Build guidance: recorded in 7 of 8 research dimensions.
> 16 sources attached. 5 claims graded by our research brief, no source attached.

## How to use this

Paste this file into your agent as context before asking it to design or build something in this visual language. It states what is established, what is our interpretation, and what nobody has established. Treat all three differently.

**The most important section is "Not researched yet".** Its purpose is to stop you and your agent inventing rules that sound right and are not recorded anywhere.

## What this language is

**Defining:** Tiled backgrounds, animated GIFs, centred tables, font tags

**Recognise it by:** Content laid out in visible HTML tables against a tiled background image, with link colours left at the browser's blue and purple or set once on the BODY tag, animated GIFs used as ornament and as status, and the page's own incompleteness announced rather than hidden. The diagnostic condition is that every visual device is a workaround: the table is there because there is no layout language, the spacer GIF because there is no margin, the font tag because there is no stylesheet. Web Brutalism reproduces the plainness on purpose and from a position of choice; this had no choice.

**Family:** Retro & Period Revival
**Era:** 1990s
**Native medium:** screen

**Scope:** The visual register of hand-authored pages from the Web 1.0 stage (roughly 1989–2004): table layout, CENTER, tiled BODY backgrounds, font tags, GIF ornament, as Aesthetary's language drawn from W3C specifications and dated period pages.

## What it is arguing

A page is a document that someone made by hand, and the tools available are a document markup language and a slow connection. Nothing is laid out properly because nothing can be; every layout decision is a workaround for a missing capability.

**It refuses:** Refuses the idea that a page should be designed rather than authored, and refuses any layout that the markup cannot express directly.

## What it is not

Commonly confused with these. Getting the difference right matters more than getting the surface right:

- Utilitarian
- Arcade

## Established rules

Grouped by what kind of claim each is. A requirement of the language and our own interpretation are not interchangeable.

**How to read each rule.** Every rule states two separate things, and neither stands in for the other:

- **Kind of claim** (the heading): Seen in the work · Graded by our research brief · No source attached · Seen in the work · Graded by our research brief · No source attached · Documented · Source attached · Documented · Source attached · Seen in the work.
- **Evidence** (how it is established): Graded by our research brief · No source attached (`DOCUMENTED`) · From our catalogue entry (`SUPPORTED`) · Our reading (`CURATORIAL`) · Not researched yet (`UNKNOWN`) · No grade recorded (no grade in the record). Where a claim has its own canonical label, the Evidence line gives that label instead of the grade.
- **Product area**: which of the twelve areas the rule belongs to (Layout, Typography, Color, Imagery, Surface, Interface, Motion, Motif, Technique, Form, Hierarchy, Density), mapped from its raw area label in bold. "Context" means the rule is about the Aesthetic (its name, origin, lineage) rather than a part of the design. "Not mapped" means the raw area has no single area yet.
- The code in brackets is the `grade` field at `implementationConstraints.tokenRules.value.rules[].provenance.grade` in https://aesthetary.com/data/web-1-0.json. "From our catalogue entry" means: Stated in Aesthetary’s existing catalogue entry. An outside source is named only where one is linked to the claim.

### Seen in the work

- **layout** — Composition: nested tables; centred; 640×480.
  - Kind of claim: Seen in the work · Evidence: Seen in the work · Product area: Layout

### Graded by our research brief · No source attached

_A research brief graded this documented, but no source is attached yet. A grade is not a source._

- **hierarchy** — Hierarchy is unusually literal: rank comes from the heading level tag and from horizontal rules dividing sections. Not from scale chosen by a designer — from <h1> through <h3> and <hr>. That is a real instruction and a genuinely different way to build a page.
  - Kind of claim: Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached · Product area: Hierarchy
- **imagery** — Imagery: animated GIF; low-bit-depth.
  - Kind of claim: Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached · Product area: Imagery
- **form / motif / surface / technique** — Form / motif / surface / technique: tiled texture; hard edges.
  - Kind of claim: Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached · Product area: not mapped
- **motion** — Only looping GIF animation, running continuously and independent of scroll or interaction. Motion here is never triggered and never eases. It just runs.
  - Kind of claim: Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached · Product area: Motion

### Seen in the work

- **typography** — Typography: size and face set with the FONT tag; where no face is set, the browser default.
  - Kind of claim: Seen in the work · Evidence: Seen in the work · Product area: Typography
- **color** — Colour: set on the BODY tag — a tiled background image or a flat BGCOLOR ground, with text and link colours either left at the browser default or set per page.
  - Kind of claim: Seen in the work · Evidence: Seen in the work · Product area: Color

### Graded by our research brief · No source attached

_A research brief graded this documented, but no source is attached yet. A grade is not a source._

- **register** — The register is a period constraint, not a style: fixed-width tables, system fonts, tiled backgrounds and hand-authored markup are what the tools of the time produced.
  - Kind of claim: Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached · Product area: Context (not a design area)

### Documented · Source attached

- **motif** — A tiled background image is the recurring surface device: space tiles first, then paper, glass, water and wood sets passed around in free collections.
  - Kind of claim: Documented · Source attached · Evidence: Documented · Source attached · Product area: Motif

## Found in research

What research established from sources Aesthetary opened and checked. Each line names its area, how it is known, and where it is scoped. "Seen in the work" means the source documents particular works or products rather than the Aesthetic as a whole.

- **Interface** — Bordered tables were commonly rendered in bas-relief: a bevelled raised outer border with cells inset, a rendering convention described by HTML 3.2 rather than drawn by the author.
  - Evidence: Documented · Source attached · Claim: `kcc:interface-1` · Covers tables with BORDER set; without it the border is suppressed.
- **Interface** — The default horizontal rule is a two-colour 'groove'; a flat rule has to be requested with NOSHADE.
  - Evidence: Documented · Source attached · Claim: `kcc:interface-2` · Covers HTML 3.2 and 4.01.
- **Interface** — A linked image is generally shown with a coloured border, typically blue.
  - Evidence: Documented · Source attached · Claim: `kcc:interface-3`
- **Interface** — Form furniture is the browser's own controls plus image submit buttons; forms were often sent by email.
  - Evidence: Documented · Source attached · Claim: `kcc:interface-4`
- **Interface** — Amateur pages replaced browser and markup furniture with GIFs from free collections: their own back/forward buttons, image bullets instead of list markers, 88x31 promotional buttons.
  - Evidence: Documented · Source attached · Claim: `kcc:interface-5` · Covers amateur/vernacular pages specifically.
- **Technique** — Some pages were built using Server Side Includes or CGI.
  - Evidence: Documented · Source attached · Claim: `kcc:technique-1` · Covers encyclopedia support.
- **Technique** — Amateur pages were built modularly from free graphics collections, and elements were lifted from other pages by reading their source code.
  - Evidence: Documented · Source attached · Claim: `kcc:technique-2` · Covers the vernacular/amateur web, per Lialina and period collection pages.
- **Technique** — Professional sites broke with this: designed in Photoshop and sliced into pieces, a method Lialina contrasts with amateur modular construction.
  - Evidence: Documented · Source attached · Claim: `kcc:technique-4` · Covers boundary with professional late-1990s web design.
- **Technique** — Collection makers distributed page sets and invited users unfamiliar with them to copy their HTML source.
  - Evidence: Seen in the work · Claim: `kcc:technique-3` · Covers period background-set pages.
- **Form** — A web page has no three-dimensional organisation; the simulated relief it shows (bevelled tables, grooved rules) is interface rendering, filed under interface.
  - Evidence: Documented · Source attached · Claim: `kcc:form-1`

## Positions by area

The overall position recorded for each area. "No overall position recorded" means rules exist for the area but no position above them; the rules still apply. It is not the same as "Not established", which means nobody has researched the area.

- **Layout** — Specified
- **Typography** — Specified
- **Color** — Specified
- **Imagery** — Specified
- **Surface** — Specified
- **Interface** — Specified
- **Motion** — Specified
- **Motif** — Specified
- **Technique** — Specified

## Design grammar — web primitives

A starting grammar for a website in Web 1.0: a fixed 640-pixel canvas of nested, centred tables on a tiled ground, faces set with the FONT tag or left to the browser, headings and rules as the whole hierarchy, the browser’s own controls, and GIFs that loop and never ease.

Three kinds of line: **On the record** names a rule this record holds (its wording is under Established rules) and states what it becomes on the web. **Web translation** is Aesthetary's choice for the web, derived from the rules it cites; change it if you have a reason, keep the cited rule. **Not specified by the source** means the research reached this but the sources say nothing about it; **Not researched yet** means the research has not reached it yet. Either way, follow the instruction and do not invent a rule. Structured version: `designGrammar` in data/web-1-0.json.

### Colour

| Role | Value | Contrast | Use | Kind |
| --- | --- | --- | --- | --- |
| tile | `#C8C8C8` | — | The tiled BODY background: a coarse grey weave. | Web translation |
| cell | `#FFFFFF` | — | The content cell’s BGCOLOR. | Web translation |
| chrome | `#C0C0C0` | 11.5:1 (black on it) | Header and footer cells. | Web translation |
| side | `#DDDDDD` | 15.5:1 (black on it) | The navigation cell. | Web translation |
| text | `#000000` | 21:1 | Text. | On the record |
| link | `#0000EE` | 9.4:1 | Unvisited links, the browser default. | On the record |
| visited | `#551A8B` | 11.0:1 | Visited links, the browser default. | On the record |
| new | `#B00000` | 7.4:1 | The blinking NEW. | Web translation |

Other accents the record supports:

- flat ground (recorded as "a flat BGCOLOR ground"): `#FFFFFF`

- **On the record · Seen in the work** · `token_rule:color-5` → Set colour on the BODY tag: a tiled background image or a flat BGCOLOR, with text and link colours at the browser default or set per page.
- **On the record · Documented · Source attached** · `token_rule:w1-motif` → Tile the background: space first, then paper, glass, water and wood sets from free collections.
- **Web translation** — Set a flat BGCOLOR behind every text cell. _Why:_ Text straight on a tiled image loses legibility; a cell colour is the fix the table layout already offers. (`token_rule:color-5`)

### Typography

Family: the browser default, or a face set with the FONT tag. Stack: `"Times New Roman", Times, serif`

| Role | Size | Weight | Line height | Case | Tracking | Measure | Setting | Use |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| h1 | 2em | 700 | 1.2 | not specified | not specified | — | — | The page title. |
| h2 | 1.5em | 700 | 1.2 | not specified | not specified | — | — | Section heads. |
| body | 1rem | 400 | 1.4 | not specified | not specified | — | — | Everything else. |
| font-2 | 0.8125rem | 400 | 1.4 | not specified | not specified | — | <font size="2" face="Arial, Helvetica"> | Notes and footers. |

- **On the record · Seen in the work** · `token_rule:typography-4` → Set size and face with the FONT tag; where no face is set, the browser default.
- **Web translation** — Where <font> cannot be used, reproduce its size and face with CSS on a span. _Why:_ <font> is obsolete in current HTML; the rendering can be kept, the element cannot be relied on. (`token_rule:typography-4`)

### Grid and layout

No grid: nested tables, centred, 640 pixels wide. The canvas never reflows.

| Viewport | Columns |
| --- | --- |
| all | 2 |

Tokens: canvas `640px` · nav-cell `150px`

- **On the record · Seen in the work** · `token_rule:layout-3` → Lay out in nested tables, centred, for 640×480.
- **On the record · Graded by our research brief · No source attached** · `token_rule:w1-r1` → No responsive behaviour.
- **On the record · Graded by our research brief · No source attached** · `token_rule:hierarchy-13` → Rank by heading tag and horizontal rule, never by chosen scale.
- **Web translation** — Let the matte around the canvas scroll sideways on a narrow screen; never reflow the canvas. _Why:_ The constraint is the register, but the content must stay reachable; horizontal scroll keeps both. (`token_rule:layout-3`, `token_rule:w1-r1`)

### Shape and geometry

Tokens: radius `0` · relief `outset / inset` · rule `groove`

- **On the record · Graded by our research brief · No source attached** · `token_rule:surface-8` → Hard edges; tiled texture.
- **On the record · Documented** · `claim:kcc:interface-2` → The default horizontal rule is a two-colour groove; ask for a flat one with NOSHADE.
- **On the record · Documented** · `claim:kcc:form-1` → Relief is interface rendering, not form: bevelled tables and grooved rules are the browser’s, not the author’s.

### Imagery

- **On the record · Graded by our research brief · No source attached** · `token_rule:imagery-7` → Animated GIF, low bit depth.
- **On the record · Documented** · `claim:kcc:interface-3` → Give a linked image a coloured border, typically blue.
- **On the record · Documented** · `claim:kcc:interface-5`, `claim:kcc:technique-2` → Build from free graphics collections: image bullets, 88×31 buttons, lifted from other pages’ source.
- **Not specified by the source** — No licensed period GIFs are held here. _Instead:_ Use GIFs you have the rights to, or leave a labelled slot; do not redraw period graphics.

### How it was made

Hand-authored, modular, copied. Professional sites broke with this by slicing Photoshop comps; that is outside the register.

- **On the record · Graded by our research brief · No source attached** · `token_rule:w1-r1` → Author by hand, in markup; the tools of the time made the look.
- **On the record · Documented** · `claim:kcc:technique-2` → Build from free graphics collections and from other pages’ source.
- **On the record · Documented** · `claim:kcc:technique-4` → Sliced Photoshop layouts are the professional break with this, not part of it.

### Components

Anatomy, tokens and states below are Web translation: Aesthetary's specification for the screen. Each value line after them says whether it restates a rule this record holds.

#### Button

The browser’s own submit button, or an image standing in for one.

- Anatomy: native <button> or <input type="submit">, unstyled; or an <input type="image"> the author made or collected; label in the platform’s control font
- Tokens: appearance `native` · radius `native` · shadow `native` · transition `none`
- State, default: Whatever the platform draws.
- State, hover: Whatever the platform draws; nothing added.
- State, focus: The browser’s own focus ring, left on.
- State, active: The platform’s pressed state.
- State, disabled: The platform’s disabled state, plus the word “unavailable” in the label.
- Accessibility: An image submit button carries alt text naming the action.
- Accessibility: The native focus ring is never removed.
- **On the record · Documented** · `claim:kcc:interface-4` → Use the browser’s own controls, or an image submit button.
- **On the record · Documented** · `claim:kcc:interface-5` → On amateur pages, swap browser furniture for GIF buttons from free collections.
- **Web translation** — Keep the native focus ring and give every image button alt text. _Why:_ The era left controls to the browser; leaving the focus ring on is the same deference, and alt text is what makes an image button a button. (`claim:kcc:interface-4`)

#### Card

Not a card: a table cell with a BGCOLOR, inside a bordered table the browser draws in relief.

- Anatomy: <table border> drawn in bas-relief; cells inset, each with a flat BGCOLOR; heading tag, paragraph, link
- Tokens: border `4px outset #C0C0C0` · cell `1px inset #C0C0C0` · cell-ground `#FFFFFF` · radius `0`
- State, default: Raised table, inset cells.
- State, hover: Nothing changes.
- State, focus: The browser focus ring on the link inside.
- Accessibility: Layout tables carry role="presentation"; data tables keep their headers.
- Accessibility: Reading order is source order, cell by cell.
- **On the record · Documented** · `claim:kcc:interface-1` → Draw bordered tables in bas-relief: a raised outer border, cells inset.
- **On the record · Seen in the work** · `token_rule:layout-3` → Lay content out in nested tables, centred.
- **Web translation** — Mark layout tables role="presentation". _Why:_ Nested layout tables are the register; announcing them to a screen reader as data would misreport the page. (`token_rule:layout-3`)

#### Input

The platform’s own text field, with its label as plain text beside it; the form posts, often by email.

- Anatomy: native <input>, unstyled; label as plain text; a submit button or image
- Tokens: appearance `native` · font `native`
- State, default: Native.
- State, focus: The browser’s own focus ring.
- State, error: A line of plain text saying what went wrong, prefixed “Error:”.
- State, disabled: Native disabled.
- Accessibility: Every field has a <label>.
- Accessibility: Errors are words, not colour.
- **On the record · Documented** · `claim:kcc:interface-4` → Use the browser’s own form controls; forms were often sent by email.
- **Web translation** — Tie every label to its field with <label for>. _Why:_ The era often set labels as loose text; a <label> keeps the look and makes the field findable. (`claim:kcc:interface-4`)

#### Navigation

A column of links in the left table cell, separated by line breaks.

- Anatomy: links in a narrow left cell; <br> between them; optionally the page’s own back/forward GIFs
- Tokens: link `#0000EE` · visited `#551A8B` · underline `always` · cell `#DDDDDD` · width `150px`
- State, default: Underlined, in the link colour.
- State, hover: Nothing changes.
- State, focus: The browser focus ring.
- State, current: Plain bold text, not a link.
- Accessibility: Underlines stay, so links are found without colour.
- Accessibility: aria-current on the current page.
- **On the record · Seen in the work** · `token_rule:color-5` → Set link colours on the BODY tag or leave them at the browser default.
- **On the record · Documented** · `claim:kcc:interface-5` → Amateur pages made their own back and forward buttons from collected GIFs.
- **Web translation** — Put the links in a 150px left cell, one per line. _Why:_ The fixed canvas leaves a narrow column beside the content; a line break was the only spacing available. (`token_rule:layout-3`)

### Motion

Durations, easing and the rest of this specification are Web translation: Aesthetary's choice for the screen.

- Durations: loop 1.2s
- Easing: loop `steps()`
- Transforms: none
- Entrance: none
- Hover: Nothing moves on hover.
- Reduced motion: Loops stop on their first frame.
- **On the record · Graded by our research brief · No source attached** · `token_rule:motion-14` → Only looping GIF animation, continuous, never triggered, never eased.
- **Web translation** — Reproduce a loop in CSS with steps(), and stop it under prefers-reduced-motion. _Why:_ A stepped keyframe is a GIF’s frame change; a loop that cannot be stopped is a barrier the era never had to consider. (`token_rule:motion-14`)

### Deliberately not added

- **Period GIFs** (imagery): None is licensed here; slots are labelled instead.
- **Density** (layout): Not specified by the source.

## Coverage — what has been looked at

One row per research dimension a research pass considered. "Not researched yet" (`UNKNOWN`) means exactly that; a dimension can carry an Aesthetary recommendation and still be unresearched, and those are different things.

| Research dimension | Evidence | Resolved by | Carries a rule |
| --- | --- | --- | --- |
| Composition | Specified · Graded by our research brief | follows the recorded claim | yes |
| Typography | Specified · Graded by our research brief | follows the recorded claim | yes |
| Hierarchy | Specified · Graded by our research brief | follows the recorded claim | yes |
| Colour | Specified · Graded by our research brief | follows the recorded claim | yes |
| Density | Not specified by the source | Aesthetary decided | no |
| Imagery | Specified · Graded by our research brief | follows the recorded claim | yes |
| Form / motif / surface / technique | Not specified by the source: form · Specified: motif, surface, technique | follows the recorded claim | yes |
| Motion | Specified · Graded by our research brief | follows the recorded claim | yes |

## Not researched yet

Nobody has established a position for this language on:

- Form

**Do not fill these in.** An absent position is absent research, not permission and not a blank for you to complete. If the work needs a decision in one of these areas, make it on other grounds and do not attribute it to this language.

## Grade your own work

17 checks: 7 mechanically testable, 9 needing a person to look, 0 needing a source Aesthetary does not hold, 1 with no recorded position. 1 further research dimension produced no rule (Density). This rubric is silent on it. 1 context rule is listed apart: known about this Aesthetic, not something to check finished work against. Scores do not add up. A failure against a required rule and a departure from something we invented are not the same result, and no total should let them cancel.

### Recognition — does this read as the intended Aesthetic?

- **[visual_human · recognition signature · Evidence: No grade recorded]** Strip every logo, word and borrowed image out of your work, then show it to someone who knows the collection. Do they land on this Aesthetic? The signature to hold is: Content laid out in visible HTML tables against a tiled background image, with link colours left at the browser's blue and purple or set once on the BODY tag, animated GIFs used as ornament and as status, and the page's own incompleteness announced rather than hidden. The diagnostic condition is that every visual device is a workaround: the table is there because there is no layout language, the spacer GIF because there is no margin, the font tag because there is no stylesheet. Web Brutalism reproduces the plainness on purpose and from a position of choice; this had no choice.
  - _If it fails:_ The work may be competent and still read as a different Aesthetic, or as none. Nothing below matters until this passes.

### Fidelity — are its defining rules present?

- **[mechanical · Seen in the work · Evidence: Seen in the work]** Does your work hold this? Composition: nested tables; centred; 640×480.
  - _If it fails:_ The result is not this Aesthetic. This is a requirement of the language, not a preference.
- **[visual_human · Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached]** Does your work hold this? Hierarchy is unusually literal: rank comes from the heading level tag and from horizontal rules dividing sections. Not from scale chosen by a designer — from <h1> through <h3> and <hr>. That is a real instruction and a genuinely different way to build a page.
  - _If it fails:_ The result is not this Aesthetic. This is a requirement of the language, not a preference.
- **[visual_human · Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached]** Does your work hold this? Imagery: animated GIF; low-bit-depth.
  - _If it fails:_ The result is not this Aesthetic. This is a requirement of the language, not a preference.
- **[visual_human · Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached]** Does your work hold this? Form / motif / surface / technique: tiled texture; hard edges.
  - _If it fails:_ The result is not this Aesthetic. This is a requirement of the language, not a preference.
- **[visual_human · Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached]** Does your work hold this? Only looping GIF animation, running continuously and independent of scroll or interaction. Motion here is never triggered and never eases. It just runs.
  - _If it fails:_ The result is not this Aesthetic. This is a requirement of the language, not a preference.

### Implementation — were those rules translated appropriately into this medium?

- **[visual_human · Seen in the work · Evidence: Seen in the work]** Your work may depart from this — but knowingly, not by accident. Typography: size and face set with the FONT tag; where no face is set, the browser default.
  - _If it fails:_ A defensible departure, and you should be able to say why you made it.
- **[visual_human · Seen in the work · Evidence: Seen in the work]** Your work may depart from this — but knowingly, not by accident. Colour: set on the BODY tag — a tiled background image or a flat BGCOLOR ground, with text and link colours either left at the browser default or set per page.
  - _If it fails:_ A defensible departure, and you should be able to say why you made it.
- **[visual_human · Documented · Source attached · Evidence: Documented · Source attached]** Your work may depart from this — but knowingly, not by accident. A tiled background image is the recurring surface device: space tiles first, then paper, glass, water and wood sets passed around in free collections.
  - _If it fails:_ A defensible departure, and you should be able to say why you made it.

### Avoidance — known failure modes, neighbour drift, cloning

- **[mechanical · recorded failure mode · Evidence: No grade recorded]** Check your work against this: No CSS-era layout (flexbox, grid, custom properties).
  - _If it fails:_ A failure mode recorded in our research brief: recorded judgement about what weakens this Aesthetic, not a requirement of the language.
- **[mechanical · recorded failure mode · Evidence: No grade recorded]** Check your work against this: No link colours restyled through a stylesheet: where a page sets them, it sets them once on the BODY tag.
  - _If it fails:_ A failure mode recorded in our research brief: recorded judgement about what weakens this Aesthetic, not a requirement of the language.
- **[mechanical · recorded failure mode · Evidence: No grade recorded]** Check your work against this: No responsive behaviour.
  - _If it fails:_ A failure mode recorded in our research brief: recorded judgement about what weakens this Aesthetic, not a requirement of the language.
- **[mechanical · recorded failure mode · Evidence: No grade recorded]** Check your work against this: No easing, no scroll-triggered anything.
  - _If it fails:_ A failure mode recorded in our research brief: recorded judgement about what weakens this Aesthetic, not a requirement of the language.
- **[mechanical · recorded failure mode · Evidence: No grade recorded]** Check your work against this: No intentional-looking minimalism.
  - _If it fails:_ A failure mode recorded in our research brief: recorded judgement about what weakens this Aesthetic, not a requirement of the language.
- **[visual_human · recorded failure mode · Evidence: No grade recorded]** Have you made any of these changes? Each one moves the work into a neighbouring Aesthetic: Against Web Brutalism: compulsion versus choice. Web Brutalism has CSS and declines it; this had no CSS to decline. The visual overlap is high and the intent is opposite. Against Utilitarian: Utilitarian is contemporary and fast on purpose; this is slow and unstyled by force. Anti-signature: any evidence of deliberate restraint turns it into Web Brutalism. Modern system fonts turn it into Utilitarian.
  - _If it fails:_ You have built the neighbour. That may be fine — but name which Aesthetic you are in.
- **[mechanical · declared closure · Evidence: No grade recorded]** Check your work against this: No link colours restyled through a stylesheet: where a page sets them, it sets them once on the BODY tag.
  - _If it fails:_ This one is closed, not open. The record says generation must not go here.

### Accessibility — the Aesthetic preserved without its inaccessible practice

- **[unassessable · no recorded position · Evidence: Not researched yet (`UNKNOWN`)]** Does this Aesthetic conflict with any usability floor? Nobody has recorded one for it.
  - _If it fails:_ Nothing — and that is the problem. An unrecorded conflict is not an absent one. Hold AA on reading matter and decide the rest on other grounds.

### Context — known about this Aesthetic, not a check

Where the Aesthetic comes from, what it is called, how it sits among its neighbours. Use it to understand the work; do not score finished work against it.

- The register is a period constraint, not a style: fixed-width tables, system fonts, tiled backgrounds and hand-authored markup are what the tools of the time produced. _(Graded by our research brief · No source attached · Evidence: Graded by our research brief · No source attached)_

**Not covered at all:** Density: Not specified by the source. These research dimensions produced no rule, so there is no check. Treat them as unscored, never as passed and never as failed.

## Rules for the agent

1. Do not invent rules for any area listed under **Not researched yet**.
2. Do not treat an absent position as permission to do anything you like — say that the language has no position, and decide on other grounds.
3. Keep our interpretations separable from the language's own requirements. If asked to justify a choice, cite which kind of claim it came from.
4. If you need something this record does not contain, say so rather than producing a confident answer from the aesthetic's name.
5. When you self-score against "Grade your own work", score only checks marked `mechanical`. Declare `visual_human` and `evidence_dependent` checks unjudged rather than guessing, and never score an `unassessable` one.
6. Evidence "Not researched yet" (`UNKNOWN`) is never a failure. It means nobody researched the dimension, so departing from what is written there costs nothing and must not be reported as a defect. "No grade recorded" is not a grade either: do not treat it as our decision or as an outside source.
7. In **Design grammar**, a "Web translation" line is our choice for the web and may be changed with a reason; the rules it cites may not. Never present a translation as a property of the language.

## Provenance

- Record: `web-1-0` · status `draft` · research `partly_researched`
- Full structured record: https://aesthetary.com/data/web-1-0.json
- Human-readable record: https://aesthetary.com/a/web-1-0.html
- This file is a snapshot. The record may have changed since; check the page above.

_Aesthetary is an alpha. Where a page says nothing, nobody has done the work yet._
