/* Archivo — carried in the stylesheet, not fetched. kit/fonts/*.woff2 */
@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-weight: 100 900;
  src: url(data:font/woff2;base64,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) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-weight: 100 900;
  src: url(data:font/woff2;base64,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) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* ══════════════════════════════════════════════════════════════════════════
   Modernist — design-system tokens. Retuned here and nowhere else, for all
   four applications. Light is the drawn theme; dark is derived from it by
   inverting the tonal ramps, so every component works in both without a
   single component-level dark rule.

   The dark palette is written ONCE, in the `@dark { … }` block below, and
   the builder emits it into both places it has to appear:

     @media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) }
     :root[data-theme="dark"]

   The first makes Auto follow the system; the second lets an explicit Night
   choice win over a light system. Hand-maintaining the same forty
   declarations in two selectors is how they drift, which is the whole
   reason this file exists.
   ══════════════════════════════════════════════════════════════════════ */

:root {
  --color-bg: #f3f2f2;
  --color-surface: #eae9e9;
  --color-text: #201e1d;
  --color-accent: #ec3013;
  /* `--color-accent-2: #e15b47` stood here and is gone as of 2026-09-06. It was
     referenced by nothing in `kit/` or `src/`, and — unlike every other colour
     in this block — it was absent from the `@dark` override below, so the first
     rule to use it would have carried a light-theme hex into the night theme
     and looked like a bug in that rule rather than a hole in this table. The
     ramp steps named `--color-accent-2-100` and `--color-accent-2-800` are a
     different pair, are used, and do flip; they stay. */
  /* — rules and boundaries, which are two jobs and were one token —

     `--color-divider` drew the 2px seams between sections AND the 1px edge of
     every input, button and checkbox, and those two have opposite
     requirements. A structural seam wants to be quiet: it is scaffolding, and
     at 40% it was drawing more attention than the content it separated. A
     control boundary is the opposite — WCAG 1.4.11 asks for 3:1 against the
     ground, because it is what tells a reader where the field is.

     Measured, the single token failed the second job while overdoing the
     first: 40% composites to #9e9d9d on the light ground, which is 2.37:1 —
     under 3:1 for every input in the suite — while simultaneously reading as a
     heavy stroke wherever it was 2px.

     So they are two tokens. The seam softens to 28% and de-noises the whole
     suite; the boundary goes to 55%, which measures 3.60:1 light and 5.99:1
     dark and puts every form control over the line for the first time. */
  --color-divider: color-mix(in srgb, #201e1d 28%, transparent);
  --color-border: color-mix(in srgb, #201e1d 55%, transparent);

  /* Tonal ramps — generated in OKLCH on one shared lightness scale, so the
     same step of any role matches the others in visual value. Read them
     semantically, not literally: 100 is the quietest wash a field can take,
     700–800 the darkest a small label can be set in. Dark theme reverses the
     numbers end for end and every use site keeps its meaning.

     **These are the steps the register spends, and no longer a scale.** Three
     full ramps of nine were generated and eleven of the twenty-seven were
     never read by any rule; they are gone, so the numbers here are gaps rather
     than a sequence — `neutral` runs 100, 200, 800 and `accent-2` is two ends
     and nothing between. Nothing is lost by that: every value is a literal in
     both blocks, so a step that went takes no other step's colour with it.

     What it costs is that a new step cannot be eyeballed between two of these.
     The scale is the one stated above — nine stops, OKLCH, one lightness ramp
     shared by all three roles — so generate the step on that scale and write it
     in, in both themes, at the reversed position in the dark one. What must not
     happen is a value picked to look about right beside its neighbours, because
     the whole reason the ramps match across roles is that not one of them was
     chosen that way. */
  --color-neutral-100: #f8f4f4;
  --color-neutral-200: #eae7e7;
  --color-neutral-800: #444141;

  --color-accent-100: #fff2ef;
  --color-accent-200: #ffe0d9;
  --color-accent-600: #dd2b0f;
  --color-accent-700: #ae1800;
  --color-accent-800: #7c1405;
  --color-accent-900: #4d170e;

  --color-accent-2-100: #fff2ef;
  --color-accent-2-800: #71261b;

  /* Text laid on a saturated accent field is fixed light in both themes —
     the field is the same red either way, so the ink on it must not flip. */
  --color-on-accent: #f3f2f2;

  /* The same red, one step down, for the case where the field carries small
     text rather than a mark.

     `--color-accent` against `--color-on-accent` measures 3.76:1 — enough for
     the poster statement, which is set large and needs 3:1, and short of the
     4.5:1 that a 14px button label needs. Rather than darken the brand and take
     every icon with it — the builder validates each module's mark against
     `--color-accent`, so moving it moves the artwork — the button field is its
     own token at 4.67:1, and the mark keeps the red it ships in.

     Not redefined in @dark, for the reason directly above: the field is the
     same red at night and the ink on it must not flip.

     Its two interaction states are fixed here too, and that is the part that
     was actually broken. They used to be `--color-accent-600` and `-700`, which
     are ramp steps — and the ramp reverses at night, so a primary button in the
     dark theme went to #ff9783 on hover and #ffc4b8 on press, both light tints,
     under ink that stays deliberately light. Measured: 1.88:1 hovered and
     1.36:1 pressed. The label disappeared at the moment it was being clicked.
     A field that does not flip needs states that do not flip either. */
  --color-accent-field: #d02a10;         /* 4.67:1 under --color-on-accent */
  --color-accent-field-hover: #b8210e;   /* 5.76:1 */
  --color-accent-field-active: #a01c0c;  /* 7.05:1 */
  /* The accent as ink rather than as a field, which is a different threshold
     and was the same value. `--color-accent` on the light ground is 3.76:1 —
     every link in the application, and `.btn-ghost`, sat under AA on the drawn
     theme. The field token is already the accent taken to the weight that text
     needs, so links use it and the mark keeps the brand red. The dark link is
     a separate value below and was never the problem: 7.22:1. */
  --color-link: var(--color-accent-field);
  --color-scrim: color-mix(in srgb, #2d2b2b 50%, transparent);

  /* — the secondary ink —
     Every quiet label in the system: the drive path, the snapshot age, the
     storage figures, the table headings, the footer. It was written inline as
     `color-mix(… 55%, transparent)` in seventeen places and `60%` in seven
     more, which is how a ramp gets retuned in one of them and not the rest.

     Both measured under 4.5:1 against the light ground — 3.65:1 at 55%, 4.24:1
     at 60% — which put the whole secondary layer below AA on the theme the kit
     calls the drawn one. At 65% it is 4.95:1 light and 6.99:1 dark, and the
     one declaration is now the only place it can drift from. */
  --color-text-muted: color-mix(in srgb, var(--color-text) 65%, transparent);
  /* For the label above a field, which sits closer to its control and can
     afford to be quieter than a label standing on its own. 5.81:1 light. */
  --color-text-label: color-mix(in srgb, var(--color-text) 70%, transparent);

  --font-heading: "Archivo", "Helvetica Neue", "Segoe UI Variable Text", "Segoe UI", Roboto, -apple-system, system-ui, Arial, sans-serif;
  --font-heading-weight: 800;
  --font-body: "Archivo", "Helvetica Neue", "Segoe UI Variable Text", "Segoe UI", Roboto, -apple-system, system-ui, Arial, sans-serif;
  --font-mono: "Cascadia Mono", "Consolas", "SFMono-Regular", ui-monospace, monospace;

  /* — the type ramp —
     Fifteen distinct font-sizes were written literally across the kit and the
     four module sheets, which is not a scale, it is a list of the sizes that
     happened to look right on the screen being drawn at the time. They are one
     ramp now and the literals are gone, so a step retunes everywhere at once.

     Everything is rem: a reader who has raised the browser's base size has said
     what they need, and a px type ramp is the declaration that overrules them.

     The UI ramp (`3xs`–`xl`) is fixed — chrome does not want to reflow when the
     viewport does. The display ramp (`2xl` up) is `clamp()`d, because a heading
     set at its desktop size is what pushes a phone into sideways scroll. */
  --text-3xs: 0.625rem;    /* 10px — kickers on a card, print column heads */
  --text-2xs: 0.6875rem;   /* 11px — tags, figcaption, table headings */
  --text-xs: 0.75rem;      /* 12px — hints, footnotes, the status bar */
  --text-sm: 0.8125rem;    /* 13px — dense labels and meta */
  --text-md: 0.875rem;     /* 14px — secondary body, button labels */
  --text-base: 0.9375rem;  /* 15px — body */
  --text-lg: 1rem;         /* 16px — the input floor, see --text-control */
  --text-xl: 1.0625rem;    /* 17px — card titles, the masthead standfirst */
  --text-2xl: clamp(1.125rem, 0.95rem + 0.7vw, 1.25rem);   /* h4, dialog title */
  --text-3xl: clamp(1.375rem, 1.05rem + 1.3vw, 1.5625rem); /* h3 */
  --text-4xl: clamp(1.625rem, 1.15rem + 1.9vw, 2rem);      /* h2 */
  --text-5xl: clamp(2rem, 1.3rem + 2.8vw, 2.625rem);       /* h1 */

  /* — the figure ramp —
     A number stated once and read at a glance is a different role from a
     heading: it is set in the heading face with tabular figures, and it wants
     its own three steps rather than borrowing the display ramp's. These were
     1.375, 1.625, 1.75 and 1.875rem written at five sites, where the 1.75 and
     the 1.875 were the same idea two decimal places apart. Three steps now, and
     the pair is one. `.cell .figure` keeps its own fluid ramp above these — it
     is the poster-sized figure and is the only one that needs to scale. */
  --figure-sm: 1.375rem;   /* file readout, the extension on a file tile */
  --figure-md: 1.625rem;   /* the facts under a poster statement */
  --figure-lg: 1.875rem;   /* a derived quantity, an insufficiency */

  /* Every control a finger lands on and a keyboard types into.
     16px is not a taste: below it, iOS Safari zooms the viewport on focus and
     does not zoom back out, so a keeper who tapped one field spends the rest of
     the entry scrolling a page that no longer fits. The whole form vocabulary
     reads this, so no control can be added below the floor by accident. */
  --text-control: var(--text-lg);

  /* — the spatial grid —
     4px base, doubling and half-stepping. Nothing in the system spaces itself
     off this ramp; a value that is not a step is a value nobody chose. */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;

  /* — standardised component padding —
     A card was 12px here and 16px there, a modal 16px, a tile 12px, a table
     cell 8px. They are four decisions now rather than a dozen sites. */
  --pad-card: var(--space-4);
  --pad-dialog: var(--space-4);
  --pad-cell: var(--space-4);
  --pad-tablecell: var(--space-2);

  /* — touch —
     44px is the target floor for anything a finger operates; 8px is the least
     clear water between two adjacent targets. Two dense variants sit below the
     floor on purpose and say so where they are defined: `.btn-sm` in the 28px
     strips, and ChemLog's `.input-sm` in the locker tables. */
  --touch-min: 44px;
  --touch-gap: var(--space-2);
  /* The dense floor, still above the 24px WCAG 2.5.8 minimum. */
  --touch-dense: 32px;

  /* — safe areas —
     Every mount ships `viewport-fit=cover`, which is what lets the design reach
     the edges of a notched screen and is also what puts the sticky nav under
     the notch. These are the insets, defaulted to zero so a desktop browser is
     unaffected, read by the fixed chrome in 02-scaffold.css — the nav takes the
     top inset, the toasts and the dialog backdrop the bottom and the sides. */
  --safe-t: env(safe-area-inset-top, 0px);
  --safe-r: env(safe-area-inset-right, 0px);
  --safe-b: env(safe-area-inset-bottom, 0px);
  --safe-l: env(safe-area-inset-left, 0px);

  /* The focus ring, in one place. It was written out longhand at seven sites in
     these three files — the global rule and the six that draw it on a visible
     partner because the real control is clipped — which is seven chances for
     one of them to drift and no way to change the ring for all of them at once.
     The *offset* deliberately stays at the call site: it is +2px on a control
     that stands alone and -2px on one inside a bordered group, and that is a
     fact about each control rather than about the ring. */
  --focus-ring: 2px solid var(--color-accent);
  --radius-md: 0px;
  --radius-lg: 0px;

  /* Elevation — derived from the ground: a soft ink-tinted shadow on a light
     theme, a hairline edge + ambient darkness on a dark one. One step, not
     three: `.dialog` is the only thing in this register that floats over the
     page it covers, and the two quieter steps went unspent for the reason the
     `.elev-*` classes did. */
  --shadow-lg: 0 12px 32px color-mix(in srgb, #2d2b2b 22%, transparent);
}

/* Dark — the same design at night on a darkened bridge. Only tokens are
   redefined: the ramps reverse end for end so `accent-100` stays "quietest
   wash" and `accent-700` stays "legible small label", which is all any
   component ever asked of them. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
  --color-bg: #201e1d;
  --color-surface: #2d2b2b;
  --color-text: #f3f2f2;
  --color-divider: color-mix(in srgb, #f3f2f2 24%, transparent);
  --color-border: color-mix(in srgb, #f3f2f2 55%, transparent);

  --color-neutral-100: #2d2b2b;
  --color-neutral-200: #444141;
  --color-neutral-800: #eae7e7;

  --color-accent-100: #4d170e;
  --color-accent-200: #7c1405;
  --color-accent-600: #ff9783;
  --color-accent-700: #ffc4b8;
  --color-accent-800: #ffe0d9;
  --color-accent-900: #fff2ef;

  --color-accent-2-100: #471d16;
  --color-accent-2-800: #ffe0da;

  --color-link: #ff8a72;
  --color-scrim: color-mix(in srgb, #000 66%, transparent);

  --shadow-lg: 0 12px 32px #00000073, 0 0 0 1px color-mix(in srgb, #f3f2f2 14%, transparent);
  }
}
:root[data-theme="dark"] {
  --color-bg: #201e1d;
  --color-surface: #2d2b2b;
  --color-text: #f3f2f2;
  --color-divider: color-mix(in srgb, #f3f2f2 24%, transparent);
  --color-border: color-mix(in srgb, #f3f2f2 55%, transparent);

  --color-neutral-100: #2d2b2b;
  --color-neutral-200: #444141;
  --color-neutral-800: #eae7e7;

  --color-accent-100: #4d170e;
  --color-accent-200: #7c1405;
  --color-accent-600: #ff9783;
  --color-accent-700: #ffc4b8;
  --color-accent-800: #ffe0d9;
  --color-accent-900: #fff2ef;

  --color-accent-2-100: #471d16;
  --color-accent-2-800: #ffe0da;

  --color-link: #ff8a72;
  --color-scrim: color-mix(in srgb, #000 66%, transparent);

  --shadow-lg: 0 12px 32px #00000073, 0 0 0 1px color-mix(in srgb, #f3f2f2 14%, transparent);
}

body {
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
}
h1, h2, h3, h4 { font-family: var(--font-heading); font-weight: var(--font-heading-weight); }

.grayscale{filter:grayscale(1) contrast(1.08)}

/* ══════════════════════════════════════════════════════════════════════════
   Components — built with the tokens above. Plain CSS on plain HTML: no
   framework, no build step.
   ══════════════════════════════════════════════════════════════════════ */

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font-size: var(--text-base); line-height: 1.55; font-weight: 400; }
/* `balance` on a heading and `pretty` on prose (set on `body` in the scaffold).
   A heading is a handful of words the browser can afford to measure whole, and
   the thing it fixes is the two-word second line — most visible on `.display`,
   which is the largest type in the system and the most likely to break badly on
   a narrow console. Prose is too long for `balance` to be worth the layout
   cost, and `pretty` is the cheaper rule that removes the orphan. */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading); font-weight: var(--font-heading-weight);
  line-height: 1.12; letter-spacing: -0.015em; margin: 0 0 var(--space-2);
  text-wrap: balance;
}
h1 { font-size: var(--text-5xl); }
h2 { font-size: var(--text-4xl); }
h3 { font-size: var(--text-3xl); }
h4 { font-size: var(--text-2xl); }
h5 { font-size: var(--text-lg); }
h6 { font-size: var(--text-sm); letter-spacing: 0.08em; text-transform: uppercase; }
p { margin: 0 0 var(--space-3); }
a { color: var(--color-link); text-underline-offset: 3px; }
img { display: block; max-width: 100%; }
figure { margin: 0; }
figcaption {
  font-size: var(--text-2xs); margin-top: var(--space-1);
  color: var(--color-text-muted);
}
.text-muted { color: var(--color-text-muted); }
:focus { outline: none; }
:focus-visible { outline: var(--focus-ring); outline-offset: 2px; }

/* The skip link — off-screen until it is focused, then the first thing on it.
   Not `display:none`, which would take it out of the tab order and so out of
   existence; moved off the top edge instead. `#main` takes focus with
   tabindex="-1" and would otherwise draw a ring around the whole screen, which
   is why the second rule is here rather than left to the global one above. */
.skip {
  position: absolute; left: var(--space-3); top: 0; z-index: 90;
  transform: translateY(-120%);
  /* The accent field, not the raw accent. `--color-accent` with white on it is
     4.20:1, and this is 13px text, which needs 4.5:1 — measured 2026-09-06, in
     both themes, by a sweep of every text node on the vessel screen. It was the
     last hardcoded `#fff` in a themed context and it broke the rule stated in
     02-scaffold.css: any accent area with words on it is a field, and the field
     tokens exist because the raw ramp steps reverse at night. `--color-accent-field`
     is 4.67:1 and does not flip. The smoke contrast probe never saw it because
     it samples `#app main` and this element sits outside `#app`. */
  background: var(--color-accent-field); color: var(--color-on-accent);
  padding: var(--space-2) var(--space-4);
  font-size: var(--text-sm); text-decoration: none;
}
.skip:focus-visible { transform: translateY(0); outline-offset: -4px; }
#main:focus-visible { outline: none; }

/* For text that exists only to be read aloud — the heading of a column of
   buttons, which needs no word above it on screen and cannot be blank to a
   reader moving through the table cell by cell. Clipped rather than hidden:
   `display:none` and `visibility:hidden` both take it out of the accessibility
   tree, which is the one thing it is here for. */
.sr-only {
  position: absolute; width: 1px; height: 1px; overflow: hidden;
  clip-path: inset(50%); white-space: nowrap;
}
::selection { background: color-mix(in srgb, var(--color-accent) 30%, transparent); }

/* — rules — */
.hr { height: 2px; border: 0; margin: var(--space-4) 0; background: var(--color-divider); }

/* — buttons — */
/* The horizontal padding was `calc(var(--space-3) * 1.2)` — 14.4px, a value
   arrived at by nudging rather than chosen, and the one declaration in the kit
   that could not land on a whole pixel. It is 16px, a step.

   `min-height` is the target floor: a button is an inline-flex box and was
   therefore only as tall as 14px of label plus its padding, which measured
   34.8px. Nothing about the padding says "44" on its own, so the floor is
   stated rather than arithmetic that happens to reach it. */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2);
  cursor: pointer; text-decoration: none;
  font-family: var(--font-heading); font-weight: var(--font-heading-weight);
  font-size: var(--text-md); line-height: 1.2; color: var(--color-text);
  background: transparent; border: 1px solid transparent;
  padding: var(--space-2) var(--space-4);
  min-height: var(--touch-min);
  border-radius: var(--radius-md);
}
.btn svg { display: block; }
.btn:disabled { opacity: 0.45; cursor: not-allowed; }
/* The field is `--color-accent-field` rather than `--color-accent`: a 14px
   label needs 4.5:1 and the brand red gives 3.76:1. See 00-tokens.css. */
.btn-primary { background: var(--color-accent-field); color: var(--color-on-accent); }
.btn-primary:hover:not(:disabled) { background: var(--color-accent-field-hover); }
.btn-primary:active:not(:disabled) { background: var(--color-accent-field-active); }
.btn-secondary { border-color: var(--color-border); }
.btn-secondary:hover:not(:disabled) { background: color-mix(in srgb, var(--color-text) 7%, transparent); }
.btn-secondary:active:not(:disabled) { background: color-mix(in srgb, var(--color-text) 14%, transparent); }
/* Promoted out of ChemLog's own sheet, which is where it was defined because
   ChemLog's outbox screen was the only thing in the suite that discarded
   anything. Discarding a queued row became the platform's, and draws on every
   mount, so a class living in one module's stylesheet meant three unstyled
   buttons — which the suite's own check caught and nothing else would have.
   Outline rather than a field: destructive, but a queued row is not
   a record and this must not outshout the one field of red a screen is allowed.

   Being an outline is what makes the border the whole of the control's edge,
   and the border was `--color-accent-300`: 1.36:1 on the page and 1.25:1 on a
   dialog, against the 3:1 WCAG 1.4.11 asks of a boundary that has to be seen.
   The label was never the problem — `--color-accent-800` is 9.59:1 and 8.85:1
   — so the button read as red and barely read as a button, and it was *less*
   bounded than the `.btn-secondary` beside it at 3.65:1. That is the wrong way
   round: this now sits on the one irreversible control in a confirmation, and
   the safe answer next to it must not be the better-drawn one.

   `--color-accent-600` is 4.25:1 on the page and 3.91:1 on a dialog, 7.91:1
   and 6.71:1 dark. It is the first step up the ramp that clears 3:1 on both
   grounds in both themes, which is why it is the one taken — a step further to
   `-700` clears it too, at 6.41:1, and starts to carry the weight of the filled
   field this is deliberately not. The dialog is measured as well as the page
   because that is where a destructive confirm is actually read, and it is the
   darker ground of the two. */
.btn-danger { color: var(--color-accent-800); border: 1px solid var(--color-accent-600); }
.btn-danger:hover:not(:disabled) { background: var(--color-accent-100); }
.btn-ghost { color: var(--color-link); padding-inline: var(--space-1); }
.btn-ghost:hover:not(:disabled) { background: color-mix(in srgb, var(--color-accent) 10%, transparent); }
.btn-ghost:active:not(:disabled) { background: color-mix(in srgb, var(--color-accent) 18%, transparent); }
/* The quiet button, and it belongs here rather than in a module's own sheet.
   It is emitted by the drive strip, the update strip, the draft strip and the
   launcher — all shared chrome — and it was defined only in ChemLog's
   `src/app.css`. Three of the four bundles therefore rendered it unstyled while
   ChemLog and the suite rendered it at 22.4px, which is under the 24px floor
   WCAG 2.5.8 sets for a pointer target. Small is a type size here, not a hit
   area: the padding holds the target at 32px however short the label. */
/* The one deliberate exception to the 44px floor, and it is bounded: `.btn-sm`
   is what the 28px strips and the table rows draw, and a 44px control cannot go
   in a 28px strip without the strip becoming something else. It holds
   `--touch-dense` (32px), which clears the 24px WCAG 2.5.8 minimum with room,
   and `.actions`/`.refadd` give it its 8px of clear water
   from the next target. Full-size `.btn` remains the default everywhere a
   button is not inside a strip. */
.btn-sm { font-size: var(--text-xs); padding: var(--space-1) var(--space-3); min-height: var(--touch-dense); }
.btn-icon { width: var(--touch-min); height: var(--touch-min); padding: 0; }

/* — forms — */
/* `.field-label` is the same line of type as the label, for the two slots that
   must not use a <label> element: one naming a group of controls rather than a
   single one, and one naming no control at all. See `fSlot()` in
   [03-dom.js](../src/03-dom.js). */
.field > label,
.field > .field-label {
  display: block; font-size: var(--text-xs); margin-bottom: var(--space-1);
  color: var(--color-text-label);
}
/* `--text-control`, and this is the line that keeps a phone usable.

   The field was 14px. Under 16px, iOS Safari zooms the viewport when a control
   takes focus and has no rule that ever zooms it back — so the first tap into
   any form on any of the four modules left the reader on a page wider than the
   screen, entering the remaining fields sideways. It reads the token rather
   than `1rem` so the floor is one declaration and `.input-sm` cannot quietly
   drop below it.

   36px → 44px for the same reason `.btn` gained a floor: this is the control a
   finger is aiming at, and 36 is under the target minimum. */
.input {
  width: 100%; min-height: var(--touch-min); padding: var(--space-2) var(--space-3); font: inherit;
  font-size: var(--text-control); color: var(--color-text); caret-color: var(--color-accent);
  background: var(--color-surface);
  border: 1px solid var(--color-border); border-radius: var(--radius-md);
}
/* Stronger than the resting edge, not weaker. This was 45% against a 40% rest,
   so hovering a field moved it 5% — and now that the rest is `--color-border` at
   55% it would have been a hover that made the boundary fainter. */
.input:hover { border-color: color-mix(in srgb, var(--color-text) 75%, transparent); }
.input:focus-visible { border-color: var(--color-accent); outline-offset: 0; }
/* 90px was the odd one out; two 48px steps is the same box on the grid. */
textarea.input { min-height: calc(var(--space-12) * 2); resize: vertical; }
/* The label is the target, not the 16px dot beside it. */
.radio { display: inline-flex; align-items: center; gap: var(--space-2); min-height: var(--touch-min); cursor: pointer; font-size: var(--text-md); }
.radio input, .seg-opt input { position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none; }
.radio .dot { width: 16px; height: 16px; flex: none; border-radius: 50%; border: 1.5px solid var(--color-border); }
.radio:hover .dot { border-color: var(--color-accent); }
.radio input:checked + .dot {
  border-color: var(--color-accent); background: var(--color-accent);
  box-shadow: inset 0 0 0 4px var(--color-bg);
}
.radio input:focus-visible + .dot { outline: var(--focus-ring); outline-offset: 2px; }
.seg { display: inline-flex; overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
/* 7px/36px were both off the ramp, and 36 was under the target floor. The
   options sit edge to edge inside one bordered box by design — the 8px of clear
   water the grid asks for between targets is what the border draws here. */
.seg-opt { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-3); min-height: var(--touch-min); font-size: var(--text-sm); cursor: pointer; }
.seg-opt + .seg-opt { border-left: 1px solid var(--color-border); }
/* Same field, same reason as .btn-primary above. */
.seg-opt:has(input:checked) { background: var(--color-accent-field); color: var(--color-on-accent); }
.seg-opt:not(:has(input:checked)):hover { background: color-mix(in srgb, var(--color-text) 7%, transparent); }
.seg-opt:has(input:focus-visible) { outline: var(--focus-ring); outline-offset: -2px; }

/* The card block and the three elevation classes that used to live here are
   gone, and for one reason. Not one of the five mounts emitted `.elev-sm`,
   `.elev-md` or `.elev-lg` in any markup, and this register emitted no `.card`,
   `.card-kicker`, `.card-title`, `.card-body` or `.card-meta` either — they were
   a vocabulary the system offered and nothing ever took, so the only thing they
   could still do was let a future screen stack a shadow, or a rounded surface,
   onto a design that carries structure with rules and tone instead.

   `--shadow-lg` stays as a token: `.dialog` uses it, which is the one place
   elevation is real, because a modal genuinely floats over the page it covers.
   Everything else separates by ground colour and a rule. */

/* — tags — */
.tag { display: inline-flex; align-items: center; font-size: var(--text-2xs); letter-spacing: 0.02em; padding: var(--space-1) var(--space-2); border-radius: calc(var(--radius-md) * 0.75); }
/* A tag set beside a nav link or a card title, rather than standing in a row of
   them. Was `style="margin-left:6px"` written at two platform call sites. */
.tag-inline { margin-left: var(--space-2); }
.tag-accent { background: var(--color-accent-100); color: var(--color-accent-800); }
.tag-accent-2 { background: var(--color-accent-2-100); color: var(--color-accent-2-800); }
.tag-neutral { background: var(--color-neutral-100); color: var(--color-neutral-800); }

/* — navigation — */
.nav { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-3) var(--space-4); border-bottom: 2px solid var(--color-divider); }
/* The brand is a two-part lockup — the module's name, then the vessel it is
   keeping the register for. The second part is a <small>, which the browser
   only shrinks: with no rule for it, it sat hard against the name and the nav
   read `ChemLogM/S NORDIC SAMPLE`, as one word.
   Set up like `.nav-slot`, which is the same shape at the other end of the same
   bar: baseline-aligned, one step of the grid between them, the secondary part
   muted and out of the heading weight so the name is what carries. */
.nav-brand { display: flex; align-items: baseline; gap: var(--space-2); font-family: var(--font-heading); font-weight: var(--font-heading-weight); font-size: var(--text-xl); margin-right: auto; }
.nav-brand small { font-weight: 400; font-size: var(--text-xs); color: var(--color-text-muted); }
/* These are the most-used controls in the application, on a console that may
   be a touchscreen operated in motion. They measured 21.7px tall — under the
   24px WCAG 2.5.8 floor — because an inline anchor is only as tall as its line
   box. The padding takes them to 44px without moving the text. */
.nav a {
  color:var(--color-text-muted); text-decoration: none; font-size:var(--text-sm);
  display: inline-flex; align-items: center; min-height: var(--touch-min);
}
.nav a:hover{ color:var(--color-text); }
.nav a[aria-current='page']{ color:var(--color-accent-700); font-weight:600; }

/* — tables — */
.table { width: 100%; border-collapse: collapse; font-size: var(--text-md); }
.table th {
  text-align: left; font-size: var(--text-2xs); letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--color-text-muted);
  padding: var(--pad-tablecell); border-bottom: 2px solid var(--color-divider);
}
/* A column header a click orders the table by. The button *is* the header
   text rather than an icon beside it, so the whole label is the target and a
   reader who is being read to hears one control per column; the arrow is
   `aria-hidden` and `aria-sort` on the cell is what says which way it went.
   It inherits the header's own typography deliberately: a column that sorts
   should not look like a different kind of thing from one that does not. */
.table th .th-sort {
  font: inherit; letter-spacing: inherit; text-transform: inherit; color: inherit;
  background: none; border: 0; padding: 0; margin: 0; cursor: pointer; text-align: inherit;
}
.table th .th-sort:hover { color: var(--color-accent-700); }
.table th[aria-sort='ascending'] .th-sort, .table th[aria-sort='descending'] .th-sort { color: var(--color-text); }

/* One row height across the four registers, and it is `--touch-min` rather than
   a padding that happens to look right, because a register row is a control:
   wireRowNav() makes rows `tabindex`-able and clicking one opens the record. A
   33px row was a 33px target. `height` on a cell is a minimum, so a row whose
   text wraps still grows. `.table.dense` opts down for the locker listings. */
.table td { height: var(--touch-min); padding: var(--space-3) var(--pad-tablecell); border-bottom: 1px solid var(--color-divider); }
.table tbody tr:hover { background: color-mix(in srgb, var(--color-text) 4%, transparent); }
/* — dialog — */
/* The backdrop is `position:fixed` and therefore spans the notch and the home
   indicator both. Its padding is what keeps the dialog itself clear of them. */
.dialog-backdrop {
  position: fixed; inset: 0; z-index: 40; display: grid; place-items: center;
  padding: calc(var(--pad-dialog) + var(--safe-t)) calc(var(--pad-dialog) + var(--safe-r))
           calc(var(--pad-dialog) + var(--safe-b)) calc(var(--pad-dialog) + var(--safe-l));
  background: var(--color-scrim);
}
.dialog { width: min(440px, 100%); display: flex; flex-direction: column; gap: var(--space-3); padding: var(--pad-dialog); border-radius: var(--radius-lg); background: var(--color-surface); box-shadow: var(--shadow-lg); }
.dialog-wide { width: min(900px, 100%); }
.dialog-wide .viewer { height: min(70vh, 620px); border: 1px solid var(--color-divider); background: var(--color-bg); overflow: auto; display: grid; place-items: center; }
.dialog-wide .viewer iframe { width: 100%; height: 100%; border: 0; background: #fff; }
.dialog-wide .viewer img { max-width: 100%; max-height: 100%; width: auto; }
.dialog-title { font-family: var(--font-heading); font-weight: var(--font-heading-weight); font-size: var(--text-2xl); text-wrap: balance; }
.dialog-body { font-size: var(--text-md); opacity: 0.85; }
.dialog-actions { display: flex; justify-content: flex-end; gap: var(--touch-gap); margin-top: var(--space-2); }

/* ══════════════════════════════════════════════════════════════════════════
   SHIPLOG page scaffolding. Layout only — every colour, font, radius and
   shadow comes from the tokens above. The grid shows: equal-width cells,
   2px seams between sections, everything flush left. Red is spent as a mark,
   with one field moment per screen — the statement the screen exists to make.
   ══════════════════════════════════════════════════════════════════════ */

/* `--edge` is the one page gutter, and every strip that spans the window reads
   it so the nav, the notice bar, the masthead and the status bar all start
   their text on the same vertical line as the body copy.

   It was `clamp(1.125rem,4vw,3.5rem)` — 18px to 56px, neither end on the 4px
   grid. It is 16px on a phone, growing to 32px on a desktop: the same two ends
   the spatial scale already names, so the page margin is a step of the system
   rather than a number beside it. The 1440px `.wrap` is what sets the measure
   on a wide screen; the gutter past that point was width nobody was reading.

   `--edge-l`/`--edge-r` are the same gutter with the notch added, and are what
   every full-window strip uses. On a landscape phone the inset is the whole
   difference between a nav that starts beside the camera and one that starts
   underneath it. The plain `--edge` remains for the vertical rhythm and for
   anything that is already inside a safe container. */
:root{
  --leading:1.625rem; --half:.8125rem;
  --edge:clamp(1rem,4vw,2rem);
  --edge-l:calc(var(--edge) + var(--safe-l));
  --edge-r:calc(var(--edge) + var(--safe-r));
}
html{ background:var(--color-bg); }
body{ margin:0; text-wrap:pretty; -webkit-tap-highlight-color:transparent; }
.wrap{ max-width:1440px; margin:0 auto; padding:0 var(--edge-r) 0 var(--edge-l); }
.pt0{ padding-top:0 !important; }
/* `padding-block`, not the four-value shorthand.

   It was `padding:var(--space-8) 0`, which sets the horizontal padding to zero
   — and `.section` is declared after `.wrap` at the same specificity, so every
   element carrying both, which is most content on every screen, lost the
   gutter `.wrap` had just given it. Measured at 375px: `.wrap.masthead` and a
   bare `.wrap` both had 16px of it and `.wrap.section` had none, so a table or
   a paragraph inside one started at x=0, hard against the edge of the window.
   Above 1440px the `max-width` centring hid it; at every width below, which is
   every phone, tablet and most laptops, it did not.

   It also broke the one thing that depends on the gutter existing: `.idx` on
   the launcher bleeds its hover field outward with `margin-inline:-12px`, and
   with nothing to bleed into that is 12px past the edge of the viewport and a
   page that scrolls sideways. This restores what the shorthand was taking. */
.section{ padding-block:var(--space-8); }
.rule2{ height:2px; border:0; margin:0; background:var(--color-divider); }
.footnote{ font-size:var(--text-xs); margin-top:var(--space-3); }
.stack{ display:flex; gap:var(--space-3); flex-wrap:wrap; align-items:center; }

/* — spacing utilities —
   The small set that replaces the static `style="margin-top:16px"` attributes
   the screens had grown. Every value is a step; there is deliberately no
   arbitrary-value escape hatch, so a spacing that is not on the ramp has to be
   argued for in a component rule rather than typed into the markup.

   Only the steps a screen actually takes are here. The ramp offered nine and
   the register took three, and the six nobody used were a vocabulary that could
   only grow — a utility nothing emits cannot be found by reading the markup,
   so it is added to rather than removed. Add a step back the moment a screen
   needs it; do not keep one against the day one might. */
.mt-1{ margin-top:var(--space-1); }
.mt-4{ margin-top:var(--space-4); }
.flush{ margin:0; }
/* The body measure the record blocks use, set here rather than by hand on each. */
.measure{ max-width:62ch; }

/* — nav —
   Sticky at the top of every screen, which on a notched phone means it is the
   element the notch lands on. `padding-top` takes the inset on top of the
   spacing it already had, so the links sit below the cutout rather than behind
   it, and `max()` means a device with no inset is unchanged.

   The inline padding keeps its existing centring arithmetic — it aligns the nav
   text with `.wrap` on a wide screen — and adds the landscape insets to it. */
.nav{
  padding-inline:max(var(--edge-l),calc((100% - 1440px) / 2 + var(--edge-l)))
                 max(var(--edge-r),calc((100% - 1440px) / 2 + var(--edge-r)));
  padding-top:calc(var(--space-3) + var(--safe-t));
  flex-wrap:wrap; gap:var(--space-3); position:sticky; top:0; background:var(--color-bg); z-index:5;
}
.nav a{ white-space:nowrap; }
.nav-spacer{ flex:1; }
.nav .btn-icon{ width:var(--touch-min); height:var(--touch-min); border:1px solid var(--color-border); font-size:var(--text-sm); }
@media(max-width:640px){ .nav-brand{ font-size:var(--text-lg); } .nav-spacer{ flex-basis:100%; height:0; } }

/* — locked strip — */
.lockbar{ border-bottom:2px solid var(--color-divider); background:var(--color-surface); }
.lockbar-in{ display:flex; gap:var(--space-3); align-items:center; flex-wrap:wrap; padding:var(--space-2) var(--edge-r) var(--space-2) var(--edge-l); font-size:var(--text-sm); }
.lockbar .who{ color:var(--color-text-muted); }
.lockbar .btn{ padding-block:var(--space-1); }

/* — masthead — */
/* The back link is the only thing in the crumb bar, so it is a standalone
   control rather than a link inside a sentence — WCAG 2.5.8's inline exception
   does not cover it, and it measured 13.6px tall. The anchor carries the 44px
   target and the bar drops its own vertical padding, so the strip keeps the
   height it had and the hit area is the whole of it. */
.crumb{ padding:0 var(--edge-r) 0 var(--edge-l); }
.crumb a{ font-size:var(--text-sm); text-decoration:none; display:inline-flex; align-items:center; min-height:var(--touch-min); }
.crumb a:hover{ text-decoration:underline; }
.masthead{ padding:var(--space-8) var(--edge-r) var(--space-6) var(--edge-l); }
/* The three declarations that are here because a kicker is no longer always a
   <span>. kicker() ([03-dom.js](../src/platform/03-dom.js)) takes `{ as: 'h2' }`,
   so a section label can be the heading of the block it labels rather than a
   line of type above it — and the moment it is one, the element rules for
   `h1, h2, h3, h4` reach it: the heading face at weight 800, and
   `text-wrap: balance` from 01-components.css. Those are element selectors, and
   a class does not outrank them by being more specific, it outranks them by
   naming the property — so the property has to be named.

   Stated as the body's own values rather than as `unset`, and `text-wrap`
   inherits so a kicker keeps whatever `body`'s `pretty` becomes. The point is
   that the two spellings render identically: a screen that changes a label from
   a span to a heading is making a statement about document structure, and it
   must not also, silently, be making one about type. */
.kicker{
  display:block; font-size:var(--text-xs); line-height:var(--half); letter-spacing:.08em;
  text-transform:uppercase; color:var(--color-accent-700);
  font-family:var(--font-body); font-weight:400; text-wrap:inherit;
  font-feature-settings:"tnum" 1; margin:0 0 var(--space-3);
}
.display{
  font-family:var(--font-heading); font-weight:var(--font-heading-weight);
  font-size:clamp(2.5rem,7.5vw,5.5rem); line-height:1.02; letter-spacing:-.025em;
  margin:0 0 var(--space-3); margin-left:-.058em; text-wrap:balance;
}
.display.sm{ font-size:clamp(2rem,5vw,3.5rem); }
.masthead .sub{ font-size:var(--text-xl); line-height:var(--leading); margin:0; max-width:62ch; }
.masthead .meta{ display:flex; gap:var(--space-6); flex-wrap:wrap; margin-top:var(--space-4); font-size:var(--text-sm); font-feature-settings:"tnum" 1; }
.masthead .meta b{ display:block; font-weight:600; font-size:var(--text-base); }
.masthead .meta span{ color:var(--color-text-muted); font-size:var(--text-2xs); letter-spacing:.08em; text-transform:uppercase; }

/* — modular cells — */
.cells{ display:grid; gap:2px; background:var(--color-divider); border-block:2px solid var(--color-divider); }
/* Three and four, which are the two counts the register's strips actually
   carry. Two, five and six were offered and never taken; a width nothing emits
   still has to be kept working at every breakpoint below it, so the ramp is the
   counts in use and grows when a strip needs one. */
.cells-3{ grid-template-columns:repeat(3,1fr); }
.cells-4{ grid-template-columns:repeat(4,1fr); }
@media(max-width:640px){ .cells-3,.cells-4{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:400px){ .cells-3,.cells-4{ grid-template-columns:1fr; } }
.cell{ background:var(--color-bg); padding:var(--pad-cell); }
.cell .k{ font-size:var(--text-2xs); letter-spacing:.08em; text-transform:uppercase; color:var(--color-text-muted); }
.cell .figure{
  font-family:var(--font-heading); font-weight:var(--font-heading-weight);
  font-size:clamp(2.375rem,5vw,3.5rem); line-height:1; letter-spacing:-.035em;
  margin:var(--space-2) 0 var(--space-1); font-feature-settings:"tnum" 1;
}
.cell .figure.sm{ font-size:clamp(1.375rem,2.6vw,1.875rem); }
.cell .figure.xs{ font-size:clamp(1.0625rem,2vw,1.3125rem); letter-spacing:-.02em; }
.cell .n{ font-size:var(--text-xs); color:var(--color-text-muted); font-feature-settings:"tnum" 1; }
.cell.flag{ background:var(--color-accent-100); }
.cell.flag .figure{ color:var(--color-accent-700); }
.cell.warn{ background:var(--color-accent-2-100); }
.cell.warn .figure{ color:var(--color-accent-2-800); }
a.cell{ color:inherit; text-decoration:none; display:block; }
a.cell:hover{ background:color-mix(in srgb,var(--color-text) 5%,transparent); }

/* — the one field of red — */
/* The field token, not the mark token. The statement is set large enough to
   pass at 3:1 on either, but the poster also carries `.note` at 15px and
   `.facts span` at 11px, and those need 4.5:1 — which is the whole distinction
   the two tokens exist to draw. Any accent area with words on it is a field. */
.poster{ background:var(--color-accent-field); color:var(--color-on-accent); padding:var(--space-8) 0; margin-top:var(--space-8); }
.poster .stmt{
  font-family:var(--font-heading); font-weight:var(--font-heading-weight);
  font-size:clamp(1.625rem,4.2vw,2.75rem); line-height:1.06; letter-spacing:-.02em;
  margin:0; max-width:22ch;
}
.poster .stmt .line{ display:block; }
.poster .note{ font-size:var(--text-base); line-height:var(--leading); margin:var(--space-4) 0 0; max-width:58ch; }
.poster .rule{ height:2px; background:color-mix(in srgb,var(--color-on-accent) 45%,transparent); border:0; margin:var(--space-6) 0; }
.poster .facts{ display:flex; gap:var(--space-8); flex-wrap:wrap; font-size:var(--text-sm); font-feature-settings:"tnum" 1; }
.poster .facts b{ display:block; font-family:var(--font-heading); font-weight:var(--font-heading-weight); font-size:var(--figure-md); line-height:1.1; }
/* No opacity here, and that is the rule above being kept rather than an
   exception to it. `--color-on-accent` on `--color-accent-field` is 4.67:1 —
   chosen to clear 4.5 for exactly this line of 11px type, with 0.17 to spare.
   `opacity:.85` spent it and more: measured on the built page it rendered at
   3.72:1, so the one label the tokens were picked for was the one thing on the
   poster failing. Uppercase and the letter-spacing are what set it back from
   the figure above it; they cost no contrast. */
.poster .facts span{ font-size:var(--text-2xs); letter-spacing:.08em; text-transform:uppercase; }

/* — insufficient / empty — */
.insufficient{ border-block:2px solid var(--color-divider); padding:var(--pad-cell); display:flex; gap:var(--space-6); align-items:baseline; flex-wrap:wrap; }
.insufficient .figure{ font-family:var(--font-heading); font-weight:var(--font-heading-weight); font-size:var(--figure-lg); letter-spacing:-.03em; }
.insufficient p{ margin:0; max-width:58ch; font-size:var(--text-base); }

/* — survey window bar: open ─ due ─ close, against today — */
.window{ position:relative; height:14px; background:var(--color-neutral-200); margin:var(--space-2) 0 var(--space-1); }
.window i{ position:absolute; top:0; bottom:0; background:color-mix(in srgb,var(--color-text) 22%, transparent); }
.window i.open{ background:color-mix(in srgb,var(--color-accent) 26%, transparent); }
.window b{ position:absolute; top:-3px; bottom:-3px; width:2px; background:var(--color-text); }
.window b.today{ background:var(--color-accent); width:3px; }
.window-legend{ display:flex; gap:var(--space-4); flex-wrap:wrap; font-size:var(--text-2xs); letter-spacing:.06em; text-transform:uppercase; color:var(--color-text-muted); font-feature-settings:"tnum" 1; }

/* — tables —
   A register table has more columns than a phone has width. Rather than
   shrink the type or drop the data, the table scrolls inside its own frame
   and the page itself never moves sideways. */
/* `position:relative` so the pane is the containing block for anything inside
   it that is positioned. `.sr-only` — the name on a column of buttons — is
   `position:absolute`, and an absolutely positioned box whose containing block
   is outside the scroll container is not clipped by it: it escaped to the
   initial containing block at the table's full unscrolled width and made the
   whole document scroll sideways, 658px of it on a 320px screen. */
.tablewrap{ position:relative; overflow-x:auto; overscroll-behavior-x:contain; }
.tablewrap::after{
  content:""; position:absolute; inset:0 0 0 auto; width:40px; pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--color-bg) 82%); opacity:0;
  transition:opacity 120ms ease;
}
.tablewrap.tablewrap-can-scroll:not(.tablewrap-at-end)::after{ opacity:1; }
/* On desktop, use the available frame before asking the reader to pan. Fixed
   tracks let long labels wrap into their column; values that must stay whole
   remain nowrap below. The pane still owns overflow, so an unusually wide
   value or an added column can be reached without moving the page sideways. */
@media(min-width:721px){
  .tablewrap > .table{ min-width:0; table-layout:fixed; }
  .tablewrap:not(.tablewrap-overflow) > .table th:first-child,
  .tablewrap:not(.tablewrap-overflow) > .table td:first-child{ width:14%; }
  .tablewrap:not(.tablewrap-overflow) > .table th:nth-child(2),
  .tablewrap:not(.tablewrap-overflow) > .table td:nth-child(2){ width:28%; }
  .tablewrap > .table th,.tablewrap > .table td{ overflow-wrap:anywhere; }
  .tablewrap-overflow > .table{ min-width:max-content; table-layout:auto; }
}

/* The first column stays while the rest of the row scrolls, on a screen narrow
   enough that the row cannot be read whole.

   Measured 2026-09-06 on a 375px viewport: the vessel's certificate table is
   1 086px inside a 343px pane, and the only column on screen is the certificate's
   name. Expires, Days and Status — the three the screen exists to show — are
   behind a sideways scroll, and once a reader is over there nothing says which
   certificate they are looking at. A rule that hid columns past the fourth used
   to live in this file and was deleted as data loss (the argument is still
   below, under `.drop`); that reasoning stands, so nothing is hidden here
   either. The name is simply pinned.

   Three things this needs that are not obvious:

   `border-collapse:separate` — `position:sticky` on a `td` does nothing under
   `collapse`, because the cell is not the thing painting its own box. Switching
   to `separate` stops the table drawing the cell borders too, so the row rules
   have to be re-drawn as inset shadows. That is the same trick, and the same
   reason, as the sticky `thead` above; it is only wider.

   A width cap — an uncapped sticky column takes its natural width, which for a
   certificate name is wider than the viewport, and then the pinned column *is*
   the whole screen and the scrolled columns are pushed off the far side. That
   looks exactly like the bug this fixes.

   `z-index` above the sticky heading's, and an opaque ground on both, so the
   corner cell where the two crossings meet is drawn once and by the right one.

   Only under 720px. Above it the table fits, nothing scrolls sideways, and a
   pinned column would be a seam drawn down a table for no reason — and the
   `border-collapse` switch, which is the part of this with reach, stays out of
   the layout everybody actually reads the register in. */
@media (max-width:720px){
  .tablewrap > .table{ min-width:max-content; table-layout:auto; border-collapse:separate; border-spacing:0; }
  .tablewrap > .table th{ border-bottom:0; box-shadow:inset 0 -2px 0 var(--color-divider); }
  .tablewrap > .table td{ border-bottom:0; box-shadow:inset 0 -1px 0 var(--color-divider); }
  .tablewrap > .table td:first-child,.tablewrap > .table th:first-child{
    position:sticky; left:0; z-index:2;
    background:var(--color-bg);
    max-width:168px; min-width:168px; white-space:normal;
  }
  .tablewrap > .table th:first-child{ z-index:3; box-shadow:inset -1px 0 0 var(--color-divider),inset 0 -2px 0 var(--color-divider); }
  .tablewrap > .table td:first-child{ box-shadow:inset -1px 0 0 var(--color-divider),inset 0 -1px 0 var(--color-divider); }
  /* The pinned cell carries its own ground, so a flagged row has to say so
     there as well or the one column that is always on screen is the one column
     that never shows the flag. */
  .tablewrap > .table tr.rowflag td:first-child{ background:var(--color-accent-100); }
  .tablewrap-tall > .table thead th:first-child{ z-index:4; }
}

/* A table longer than a screen becomes a bounded pane with its heading pinned,
   so the column a figure sits under is still readable at row two hundred.
   Applied by frameTables() past a row count ([03-dom.js](../src/03-dom.js)).

   `box-shadow` rather than the `border-bottom` the heading already carries:
   under `border-collapse:collapse` a border on a sticky cell is painted by the
   table rather than by the cell, and scrolls away with the rows underneath it —
   leaving the heading floating with no rule under it. An inset shadow is drawn
   by the cell and stays.

   The ground has to be opaque or the rows show through the heading, and it is
   `--color-bg` rather than `--color-surface` because that is what the table
   sits on and a heading in a different tone reads as a second component. */
.tablewrap-tall{
  max-height:max(320px, calc(100dvh - 15rem));
  overscroll-behavior:contain;
  border-bottom:2px solid var(--color-divider);
}
.tablewrap-tall thead th{
  position:sticky; top:0; z-index:1;
  background:var(--color-bg);
  box-shadow:inset 0 -2px 0 var(--color-divider);
}
.table td.num,.table th.num{ text-align:right; font-feature-settings:"tnum" 1; white-space:nowrap; }
.table .mark{ color:var(--color-accent-700); font-weight:600; }
.table .warn{ color:var(--color-accent-2-800); font-weight:600; }
.table .dim{ color:var(--color-text-muted); }
.table .port,.table .strong{ font-weight:600; }
.table .lc{ color:var(--color-text-muted); font-size:var(--text-xs); letter-spacing:.06em; }
/* A second line inside a cell, under the thing it is about. The certificate
   rows carry the endorsement verdict here — `4 endorsement windows closed with
   no survey recorded` — which is a fact about the row and not a column of its
   own: it is absent on most rows, it is a sentence rather than a value, and a
   column would have to be drawn empty six times to show it twice.

   `.sub.mark` rather than letting `.mark` alone carry it, because `.table .mark`
   and `.table .sub` are the same specificity and the colour would then fall to
   whichever the file happens to state last. Measured on the page ground:
   `--color-accent-700` is 5.4:1 in day and 6.1:1 at night, either side of the
   4.5:1 this size needs. */
.table .sub{
  display:block; margin-top:3px;
  font-size:var(--text-xs); font-weight:400; line-height:1.35;
  color:var(--color-text-muted); letter-spacing:0;
}
.table .sub.mark{ color:var(--color-accent-700); }
/* Both selectors, and the second is a defect the fork caused: the pointer and
   the focus ring were written against `data-go`, which is ShipLog' attribute
   alone. DiscLog's rows are `data-open` and PortLog's are `data-port` — both
   opened a record on click and on Enter, and neither showed a hand over the row
   or a ring around the focused one. `tabindex` is what the three have in
   common, and it is what wireRowNav() maintains
   ([03-dom.js](../src/03-dom.js)). */
.table tbody tr[data-go],
.table tbody tr[tabindex]{ cursor:pointer; }
/* And a hover to go with the pointer, which is the half that was missing.
   `.table tbody tr:hover` in 01-components.css already washes *every* row at 4%
   — that is the reading wash, the row your eye is on, and a table of figures
   nothing can open gets it too. So it says nothing about whether a click will
   land, and on a seven-column register, where the pointer is usually somewhere
   in the middle of a wide row rather than on its text, that is the whole
   question a keeper is asking of it.

   Twice the ink, then: 8%, which is far enough from 4% to be read as a
   different statement rather than as the same one drawn slightly harder. Measured on the 8% ground: body text 12.72:1 light
   and 11.92:1 dark, and `.dim` — the quietest thing a row carries — 4.64:1 and
   6.01:1, so the muted cells stay over AA on the row being pointed at. */
.table tbody tr[data-go]:hover,
.table tbody tr[tabindex]:hover{ background:color-mix(in srgb,var(--color-text) 8%,transparent); }
.table tbody tr[data-go]:focus-visible,
.table tbody tr[tabindex]:focus-visible{ outline:var(--focus-ring); outline-offset:-2px; }
.table tr.rowflag td{ background:var(--color-accent-100); }
/* A flagged row paints its cells, and a cell ground is opaque — so the hover
   above, which is on the <tr>, is drawn underneath the flag and cannot be seen
   through it. The rows that most need to say they can be opened are exactly the
   overdue ones, so they get their own hover: the flag deepens by one ramp step
   rather than being replaced by a neutral wash, which keeps the row plainly
   flagged and makes it plainly the row under the pointer. On
   `--color-accent-200`: body text 13.37:1 light and 9.59:1 dark, `.mark`
   5.77:1 and 7.06:1, `.dim` 4.73:1 and 4.74:1. */
.table tbody tr.rowflag[data-go]:hover td,
.table tbody tr.rowflag[tabindex]:hover td{ background:var(--color-accent-200); }
/* There was a `@media(max-width:760px)` here hiding every column past the
   fourth on a `.table.drop`. On the vessel screen those columns are Expires,
   Days and Status — the three facts the register exists to state — so a phone
   was shown a certificate's name, category, number and issuer and nothing about
   whether it was still valid. That is data loss wearing a responsive rule's
   clothes, and the narrower the screen the more of the answer it took.

   The pane above is the answer and always was: `.tablewrap` is
   `overflow-x:auto`, and frameTables() ([03-dom.js](../src/platform/03-dom.js))
   gives every pane a tab stop and, where it can name one truthfully, a region
   role — so the columns past the fold are reached by scrolling the table, with
   a finger or a keyboard, while the page itself stays put. `.drop` is now a
   class nothing styles; it is still written by five screens, and removing it
   from them belongs to whoever owns those files. */

/* — record block — */
.record{ border-block:2px solid var(--color-divider); padding:var(--pad-cell) 0; margin-bottom:var(--space-6); }
.record:last-child{ margin-bottom:0; }
.record-h{ display:flex; gap:var(--space-4); align-items:baseline; flex-wrap:wrap; margin-bottom:var(--space-4); }
/* An h2, sized as an h3 was.

   The record header is the first level under the screen's own <h1>, so h3 was
   a level skipped — `heading-order`, and for a reader moving by heading it
   reads as a missing section rather than as a smaller one. The kit sizes
   headings by tag, so correcting the level would have made every record title
   jump a size; the size is pinned here instead. Same trick as `.display sm`:
   the level says what the thing is, a rule says how big it looks. */
/* `h3` and not `h2`, since 2026-09-06. Each of these cards sits *inside* a
   section whose own heading is an `h2` — "Surveys / 3 on file" — so as siblings
   of it they told a screen reader that a survey was a peer of the section
   holding it, and the outline of the home screen listed eleven headings at one
   level with no shape to move through. The size is unchanged: this is a rule
   about the document, not about the type. */
.record-h h3{ margin:0; }
.record-h .m{ font-size:var(--text-sm); color:var(--color-text-muted); font-feature-settings:"tnum" 1; }
.record-h .r{ margin-left:auto; display:flex; gap:var(--space-2); flex-wrap:wrap; }
.record p{ font-size:var(--text-lg); line-height:var(--leading); max-width:62ch; }

/* — toolbar: search + band filter — */
.toolbar{ display:flex; gap:var(--space-3); flex-wrap:wrap; align-items:center; padding-bottom:var(--space-4); }
.toolbar .search{ flex:1; min-width:200px; max-width:420px; }

/* — forms — */
.formgrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:var(--space-4) var(--space-6); }
.formgrid.one{ grid-template-columns:1fr; }
@media(max-width:720px){ .formgrid{ grid-template-columns:1fr; } }
.field.wide{ grid-column:1 / -1; }
.check{ display:flex; align-items:center; gap:var(--space-2); font-size:var(--text-md); cursor:pointer; margin-bottom:var(--space-2); }
.check input{ position:absolute; opacity:0; width:0; height:0; }
.check .box{ width:16px; height:16px; flex:none; border:1.5px solid var(--color-border); }
.check:hover .box{ border-color:var(--color-accent); }
.check input:checked + .box{ background:var(--color-accent); border-color:var(--color-accent); box-shadow:inset 0 0 0 3px var(--color-bg); }
.check input:focus-visible + .box{ outline:var(--focus-ring); outline-offset:2px; }
.formerror{ margin-top:var(--space-3); font-size:var(--text-md); color:var(--color-accent-800); background:var(--color-accent-100); padding:var(--space-3); border-left:2px solid var(--color-accent); }

/* — compression / file readout — */
.compress{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--color-divider); margin-top:var(--space-3); }
@media(max-width:560px){ .compress{ grid-template-columns:1fr; } }
.compress div{ background:var(--color-surface); padding:var(--pad-card); }
.compress .k{ font-size:var(--text-2xs); letter-spacing:.08em; text-transform:uppercase; color:var(--color-text-muted); }
.compress .v{ font-family:var(--font-heading); font-weight:var(--font-heading-weight); font-size:var(--figure-sm); font-feature-settings:"tnum" 1; }

/* — paths / destination — */
.path{ font-size:var(--text-md); font-weight:600; font-feature-settings:"tnum" 1; word-break:break-all; }
.destination{ display:flex; gap:var(--space-3); align-items:baseline; flex-wrap:wrap; border:1px solid var(--color-divider); padding:var(--pad-card); margin-top:var(--space-4); }
/* The reader's variant: a destination carrying stacked prose rather than a row
   of facts. Was `style="display:block"` in ShipLog's document reader. */
.destination-block{ display:block; }
.destination .why{ font-size:var(--text-sm); color:var(--color-text-muted); max-width:58ch; }
.problem{ font-size:var(--text-md); margin-bottom:var(--space-2); color:var(--color-accent-800); }

/* — calendar horizon — */
.month{ border-top:2px solid var(--color-divider); padding-top:var(--space-3); margin-top:var(--space-6); }
.month:first-of-type{ margin-top:0; }
/* And the month, for the same reason — it was an h4 directly under the
   Calendar screen's h1, two levels down in one step. */
.month h2{ margin:0 0 var(--space-3); font-size:var(--text-2xl); font-feature-settings:"tnum" 1; }
.evrow{ display:grid; grid-template-columns:86px 1fr auto; gap:var(--space-3); align-items:baseline; padding:var(--space-2) 0; border-bottom:1px solid var(--color-divider); cursor:pointer; }
/* Every row on the calendar opens the record behind it — there is no inert
   variant of this row — so the pointer belongs on the class, and it belongs
   here rather than being assigned by the screen that builds them. A cursor set
   from JavaScript is a style rule that cannot be found by reading the
   stylesheet, and this one arrived alone: the row had a hand over it and no
   hover, no ring and nothing a keyboard could reach.

   Same wash and same ring as a clickable table row above, because it is the
   same gesture on a different shape. The selectors name no attribute
   deliberately: `:focus-visible` matches only what something has already made
   focusable, so the ring is right whether the row ends up carrying
   `tabindex="0"`, a `role="button"`, or both. */
.evrow:hover{ background:color-mix(in srgb,var(--color-text) 8%,transparent); }
.evrow:focus-visible{ outline:var(--focus-ring); outline-offset:-2px; }
.evrow .d{ font-size:var(--text-sm); font-weight:600; font-feature-settings:"tnum" 1; }
.evrow .t{ font-size:var(--text-base); }
.evrow .v{ display:block; font-size:var(--text-xs); color:var(--color-text-muted); }
@media(max-width:560px){ .evrow{ grid-template-columns:70px 1fr; } .evrow .r{ grid-column:2; } }

/* — evidence / documents — */
.evidence{ display:flex; gap:var(--space-2); flex-wrap:wrap; align-items:flex-end; }
.evidence figure{ width:170px; }
.evidence img{ width:100%; height:auto; }
.file-add{ height:var(--space-12); }
/* The label is the control here: the <input type="file"> inside it is clipped
   by `.sr-only`, which keeps it in the accessibility tree and in the tab order
   and leaves its focus ring drawn around a 1px box nobody can see. So the ring
   is drawn by the thing a reader is actually looking at, which is the same
   trick `.radio` and `.seg-opt` already use for their hidden inputs — this is
   the third of them and the one that was missing. Offset outward rather than
   `.seg-opt`'s inset, because this button stands on its own rather than inside
   a bordered group, so it matches the global `:focus-visible` exactly. */
.file-add:has(input:focus-visible){ outline:var(--focus-ring); outline-offset:2px; }
.file-add.is-disabled{ opacity:.45; pointer-events:none; }
.filetile{ width:170px; border:1px solid var(--color-divider); padding:var(--pad-card); background:var(--color-surface); }
.filetile .ext{ font-family:var(--font-heading); font-weight:var(--font-heading-weight); font-size:var(--figure-sm); letter-spacing:-.02em; }

/* A count, a button, and the rows behind it when somebody asks for them.

   Not `<details>`/`<summary>`: this application rebuilds `#app` on every paint,
   so an `open` attribute set by the browser is thrown away by the next render
   and the panel shuts itself while somebody is reading it. The open state is a
   field on `S` and the rows are simply not emitted when it is false — which
   also keeps them out of the tab order and out of the accessibility tree
   without a single `hidden` attribute to get wrong.

   The rule below is spacing only. The button is `.btn.btn-secondary` and the
   table inside is `.table`, both unchanged: a disclosure is an arrangement of
   things this kit already has, not a new thing to style. */
.disclosure{ margin-top:var(--space-4); }
.disclosure > .tablewrap,.disclosure > table{ margin-top:var(--space-3); }

.actions{ display:flex; gap:var(--touch-gap); flex-wrap:wrap; margin-top:var(--space-4); }
/* The gap the module footer used to hold open below the last row of a screen.
   The footer is gone; the space is not the footer's, it is the screen's. The
   launcher's own footer sits directly on this, which is why `.foot` no longer
   carries a margin of its own. */
main{ padding-block-end:var(--space-8); }

/* ══════════════════════════════════════════════════════════════════════════
   Shared additions — components the other three modules brought with them,
   promoted here so all four have the same vocabulary available whether or not
   a given screen uses it.
   ══════════════════════════════════════════════════════════════════════ */

/* — nav slot —
   The one app-specific corner of the nav. Replaces the four one-off classes
   the modules each grew for it (.nav-id, .nav-who, .nav-vessel, .nav-sel):
   whatever an app puts to the right of the links goes in here and is spaced
   the same everywhere. */
.nav-slot{ display:flex; align-items:baseline; gap:var(--space-1); font-size:var(--text-xs); text-align:right; line-height:1.3; }
.nav-slot b{ font-size:var(--text-sm); }
.nav-slot span{ color:var(--color-text-muted); }

/* — drive state strip —
   ChemLog's `.banner` family, generalised. A module that cannot reach its
   folder has to say so on every screen and offer the one click that fixes it;
   this is that strip, and it is the same strip in all four. */
.drivebar{ border-bottom:2px solid var(--color-divider); }
.drivebar-in{ display:flex; gap:var(--space-4); align-items:baseline; flex-wrap:wrap; padding:var(--space-3) var(--edge-r) var(--space-3) var(--edge-l); font-size:var(--text-md); }
.drivebar-in .grow{ flex:1; min-width:min(100%,340px); }
.drivebar-note{ background:var(--color-accent-100); color:var(--color-accent-800); }
.drivebar-warn{ background:var(--color-accent-200); color:var(--color-accent-900); }

/* — typography odds and ends — */
.mono{ font-family:var(--font-mono); font-size:var(--text-sm); }
.num{ font-feature-settings:"tnum" 1; }
.hint{ font-size:var(--text-xs); color:var(--color-text-muted); }
/* The tally beside a heading — "March  4 items". It has to opt out of both the
   heading's size and its weight, which is what made it `style="font-size:13px;
   font-weight:400"` in the calendar. A count is not a heading, and 13px was the
   one px-valued font-size left in the suite. */
.head-count{ font-size:var(--text-sm); font-weight:400; }

/* — a row of controls under a label —
   DiscLog's reference-list editor came here whole, and only its input row was
   ever taken: the list above it — `.reflist` and `.refrow` — went unemitted on
   every screen, because this register's own lists are tables and the library
   editor draws its rows as one. What is left is the row of controls a `fSlot`
   puts under a label, which five call sites do use. */
.refadd{ display:flex; gap:var(--touch-gap); flex-wrap:wrap; margin-top:var(--space-3); }
.refadd .input{ width:auto; flex:1; min-width:160px; }

/* — the stop screen —
   Shown when the browser has no folder picker. Deliberately a full page and
   not a banner: the application does not degrade, it declines. */
.stop{ min-height:70vh; display:grid; place-items:center; padding:var(--space-8) var(--edge-r) var(--space-8) var(--edge-l); }
.stop .inner{ max-width:64ch; }

/* — print sheet — */
/* — the report sheet —

   The printable document surface, shared by all four modules. It began in
   ChemLog's own stylesheet, serving its walk-round sheet, and moved here when
   the other three gained registers of their own — the frame that builds it is
   [29-report.js](../src/29-report.js).

   **Fixed black on white in both themes, deliberately.** It is going on paper,
   and the theme the workstation happens to be in is not a property of paper.
   Every rule below writes its ink literally for that reason: a token that flips
   looks right on screen in day mode and prints, or renders at night, as
   something nobody can read. `.found` was the one rule here that reached for a
   theme token and it measured 2.01:1 on the white sheet at night.

   Column widths and any register-specific type stay with the module that
   knows about them; what is here is the frame every sheet has. */
.sheet{ background:#fff; color:#000; padding:var(--space-6); border:1px solid var(--color-divider); }
.sheet h2{ margin:0 0 var(--space-1); }
.sheet .sheethead{ display:flex; gap:var(--space-6); align-items:baseline; flex-wrap:wrap;
                   border-bottom:2px solid #000; padding-bottom:var(--space-3); margin-bottom:var(--space-3); }
.sheet .sheethead .m{ font-size:var(--text-xs); }
.sheet table{ width:100%; border-collapse:collapse; font-size:var(--text-sm); }
.sheet th{ text-align:left; font-size:var(--text-3xs); letter-spacing:.08em; text-transform:uppercase;
           border-bottom:1.5px solid #000; padding:var(--space-1); color:#000; }
.sheet td{ padding:var(--space-1); border-bottom:1px solid #bbb; }
/* Secondary ink. #605d5d is the day palette's -700 step written out, so it
   cannot flip: 6.52:1 on white, and still plainly quieter than the black. */
.sheet .found{ color:#605d5d; }
/* A box to write a figure in and a box to tick. Paper affordances, and the
   reason a walk-round sheet is worth printing at all. */
.sheet .box{ display:inline-block; width:64px; height:20px; border:1px solid #000; }
.sheet .tick{ display:inline-block; width:18px; height:18px; border:1px solid #000; }
.sheet .sheetfoot{ margin-top:var(--space-4); padding-top:var(--space-2); border-top:1.5px solid #000;
                   font-size:var(--text-2xs); display:flex; justify-content:space-between;
                   gap:var(--space-4); flex-wrap:wrap; }
/* Ruled lines to sign above. Scoped to the sheet, and DiscLog's on-screen
   `.sig` is scoped to `.sigs` for the matching reason: two modules both had a
   signature block and in the suite bundle one was painting the other. */
.sheet .sig{ margin-top:var(--space-6); display:flex; gap:var(--space-8); flex-wrap:wrap; font-size:var(--text-xs); }
.sheet .sig div{ border-top:1px solid #000; padding-top:var(--space-1); min-width:200px; }

/* — toasts —

   `S.notice` used to be `.noticebar`, in the flow above the screen, and moving
   it out of the flow is the whole point ([26-toast.js](../src/26-toast.js)):
   a strip inserted above a locker sweep pushes the table down under the
   reader's hands. So this keeps the noticebar's *language* — the accent wash,
   the accent text, the 2px rule — while owing the layout nothing. A reader who
   knew what that strip meant reads this the same way.

   Below `.dialog-backdrop` (40), because a dialog is the one thing that has
   actually taken the screen. The bottom inset is the safe area plus a step: it
   used to add the height of a status bar this register does not draw, and
   `body` reserved that same 28px under every screen for the same absent strip.
   Both are gone, so a toast sits one step off the bottom of the window and the
   last row of a register is the last row.

   The region ignores the pointer and each toast takes it back, so the strip of
   empty space beside a short message is not a dead zone over the screen. */
.toasts{
  position:fixed; z-index:30;
  inset:auto var(--edge-r) calc(var(--safe-b) + var(--space-3)) var(--edge-l);
  display:flex; flex-direction:column; align-items:flex-end; gap:var(--space-2);
  pointer-events:none;
}
.toast{
  pointer-events:auto;
  display:flex; align-items:baseline; gap:var(--space-3);
  max-width:min(560px, 100%);
  padding:var(--space-3);
  background:var(--color-accent-100); color:var(--color-accent-800);
  border:2px solid var(--color-divider); box-shadow:var(--shadow-lg);
  font-size:var(--text-md);
}
/* One that will not leave on its own — it carries an Undo, or it is the
   mirrored `S.notice`, which the reader dismisses. The heavier edge is the
   difference between being told something and being asked something. */
.toast-held{ border-left-width:6px; border-left-color:var(--color-accent-800); }
.toast-msg{ flex:1 1 auto; }
/* The 44px floor, on the one control in the suite that had never been given it:
   a 16px glyph with 4px either side, which measured 18x16 — not merely under
   the 44px floor on both axes but under WCAG 2.5.8's 24px on both of them, on a
   control that appears unannounced over whatever the reader was already aiming
   at.

   Stating `min-height` the way `.btn` does would make the toast 22px taller,
   which is the wrong trade: the notice is the content and the dismiss is not.
   So the target takes the space the toast already holds and is not using. The
   negative block margin is exactly `--space-3`, the toast's own padding, which
   leaves the button a 20px margin box — shorter than the message's line, so the
   flex line and the toast keep the height they had — while its border box grows
   symmetrically to the full 44 and covers the strip of padding above and below
   the text. `align-self:center` rather than the row's baseline, because a box
   sized by its target rather than by its glyph has no baseline worth aligning
   to; the glyph is then centred inside it by the flex properties here. */
.toast-x{
  flex:none; align-self:center; background:none; border:0; cursor:pointer;
  color:inherit; font:inherit; font-size:var(--text-lg); line-height:1;
  display:inline-flex; align-items:center; justify-content:center;
  min-width:var(--touch-min); min-height:var(--touch-min);
  margin-block:calc(var(--space-3) * -1);
  padding:0 var(--space-1);
}
/* Full width where 560px is most of the screen, so a message is not a column
   of two words down one edge. */
@media(max-width:560px){
  .toasts{ align-items:stretch; }
  .toast{ max-width:none; }
}

/* — a document, rendered from the file that holds it —
   The one screen in the register that is prose the whole way down: the terms
   this build is issued under, rendered out of TERMS.md by build.mjs and drawn
   by [30-terms.js](../src/platform/30-terms.js). Everything else here is
   tables, cells and forms, so the kit had no rule for a running heading, a
   paragraph after a paragraph or a bullet — and browser defaults for those are
   Times, a 1em h2 inside a section, and a list indented by 40 anonymous
   pixels.

   Measure before size. The cap is on the block rather than on each paragraph
   because a document is one column and not a stack of independently measured
   ones; 72ch is wider than the 62ch `.measure` gives a standfirst, which is
   the right way round — a standfirst is read in one glance and a clause is
   read a line at a time, where too narrow a column costs a return sweep per
   sentence.

   The heading rhythm is asymmetric on purpose: the space above a heading
   belongs to the section it opens, so it is larger than the space below it,
   and a reader scanning for "§6. No liability" sees where each section starts
   rather than a ladder of evenly spaced lines. */
.doc{ max-width:72ch; }
.doc h1{ margin:0 0 var(--space-4); }
.doc h2{ font-size:var(--text-3xl); margin:var(--space-8) 0 var(--space-3); }
.doc h3{ font-size:var(--text-2xl); margin:var(--space-6) 0 var(--space-2); }
.doc p, .doc li{ font-size:var(--text-base); line-height:var(--leading); }
.doc p{ margin:0 0 var(--space-4); }
.doc ul{ margin:0 0 var(--space-4); padding-left:var(--space-6); }
.doc li{ margin-bottom:var(--space-2); }
.doc hr{ margin:var(--space-8) 0; }
.doc code{ font-family:var(--font-mono); font-size:.9em; }

/* — print —
   Carried over from ChemLog, where it exists because the application cannot
   come to the locker and the walk-round sheet is how it gets there. It costs
   nothing in the other three and means any module in the set can be put on
   paper for an inspector who wants paper. */
@media print {
  @page { size: A4 portrait; margin: 14mm; }
  html, body { background: #fff; }
  body { font-size: 11pt; }
  /* The drive strip goes with the rest of the chrome, and for a reason of its
     own: a register printed for a port state inspection must not carry this
     console's queue depth into the paper record. What is on the sheet is the
     register; how much of this workstation's work has not been filed yet is
     not a fact about the vessel's compliance. */
  .nav, .lockbar, .drivebar, footer, .noprint, .crumb, .actions, .toolbar { display: none !important; }
  /* A pane is a screen affordance. On paper the whole table prints, and its
     heading repeats per page through `thead` rather than by sticking to
     anything. */
  .tablewrap, .tablewrap-tall { max-height: none; overflow: visible; border-bottom: 0; }
  .tablewrap-tall thead th { position: static; box-shadow: none; }
  .sheet { border: 0; padding: 0; }
  .sheet table { page-break-inside: auto; }
  .sheet tr { page-break-inside: avoid; }
  .wrap { max-width: none; padding: 0; }
  .cells { break-inside: avoid; }
  /* A 44px row is a touch target, and paper has none. On screen the height is
     what makes a clickable register row reachable; on A4 it is eleven wasted
     millimetres per row, which on a long register is whole extra sheets. */
  .table td { height: auto; }
}

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
