/* Generated by scripts/build-tokens.mjs from tokens/: do not edit. */
/* Socle, the identity of the platform (specs product.md § Themes and universe identity). Its palette
   in three display modes (data-theme on <html>): night, the default (no attribute, or "night"), dim
   (the night with lighter backgrounds), day; "automatic" follows the system (day when it prefers
   light). The names of Socle first (--socle-*), then the roles the screens use (--color-*, --qr-*,
   --sign-*), then the type, the shapes and the scales. */
:root {
  color-scheme: dark;
  --socle-background: #0F1116;
  --socle-surface: #161B22;
  --socle-surface-2: #1C2129;
  --socle-line-soft: #262A30;
  --socle-line: #2A2F35;
  --socle-line-strong: #3E4248;
  --socle-line-control: #6D757F;
  --socle-text: #F3F5F9;
  --socle-muted: #9AA3B0;
  --socle-ember: #FF5A3C;
  --socle-on-ember: #1F0A05;
  --socle-ember-hover: #FF7358;
  --socle-sky: #5FB0FF;
  --socle-leaf: #2BC48A;
  --socle-amber: #FFB020;
  --socle-rose: #FF3D6E;
  --socle-on-rose: #1F0A05;
  --socle-ink: #1F0A05;
  --badge-solid-background-saturation: 36%;
  --badge-solid-background-lightness: 18%;
  --badge-solid-foreground-saturation: 90%;
  --badge-solid-foreground-lightness: 80%;
  --badge-soft-background-saturation: 30%;
  --badge-soft-background-lightness: 14%;
  --badge-soft-foreground-saturation: 85%;
  --badge-soft-foreground-lightness: 77%;
}
:root[data-theme="dim"] {
  --socle-background: #161B22;
  --socle-surface: #1C2129;
  --socle-surface-2: #22272F;
  --socle-line-soft: #2A2F35;
  --socle-line: #3E4248;
  --socle-line-strong: #4A4F56;
  --badge-solid-background-lightness: 22%;
  --badge-solid-foreground-lightness: 84%;
  --badge-soft-background-lightness: 18%;
  --badge-soft-foreground-lightness: 80%;
}
:root[data-theme="day"] {
  color-scheme: light;
  --socle-background: #FAF7F2;
  --socle-surface: #FFFFFF;
  --socle-surface-2: #F1ECE4;
  --socle-line-soft: #E8E2D8;
  --socle-line: #DED7CB;
  --socle-line-strong: #C8C0B2;
  --socle-line-control: #908979;
  --socle-text: #141A24;
  --socle-muted: #5B6779;
  --socle-ember: #D23A17;
  --socle-on-ember: #FFFFFF;
  --socle-ember-hover: #B8341A;
  --socle-kicker: #B8341A;
  --socle-sky: #1F6FD6;
  --socle-leaf: #148A5E;
  --socle-amber: #B97A00;
  --socle-rose: #D61E4E;
  --socle-on-rose: #FFFFFF;
  --badge-solid-background-saturation: 60%;
  --badge-solid-background-lightness: 88%;
  --badge-solid-foreground-saturation: 70%;
  --badge-solid-foreground-lightness: 24%;
  --badge-soft-background-saturation: 55%;
  --badge-soft-background-lightness: 95%;
  --badge-soft-foreground-saturation: 65%;
  --badge-soft-foreground-lightness: 27%;
}
@media (prefers-color-scheme: light) {
  :root[data-theme="automatic"] {
    color-scheme: light;
    --socle-background: #FAF7F2;
    --socle-surface: #FFFFFF;
    --socle-surface-2: #F1ECE4;
    --socle-line-soft: #E8E2D8;
    --socle-line: #DED7CB;
    --socle-line-strong: #C8C0B2;
    --socle-line-control: #908979;
    --socle-text: #141A24;
    --socle-muted: #5B6779;
    --socle-ember: #D23A17;
    --socle-on-ember: #FFFFFF;
    --socle-ember-hover: #B8341A;
    --socle-kicker: #B8341A;
    --socle-sky: #1F6FD6;
    --socle-leaf: #148A5E;
    --socle-amber: #B97A00;
    --socle-rose: #D61E4E;
    --socle-on-rose: #FFFFFF;
    --badge-solid-background-saturation: 60%;
    --badge-solid-background-lightness: 88%;
    --badge-solid-foreground-saturation: 70%;
    --badge-solid-foreground-lightness: 24%;
    --badge-soft-background-saturation: 55%;
    --badge-soft-background-lightness: 95%;
    --badge-soft-foreground-saturation: 65%;
    --badge-soft-foreground-lightness: 27%;
  }
}

/* The roles, on the palette: the same in every mode (they follow the --socle-* of the mode), and again
   on .universe-themed, the surfaces a universe theme colors by setting --socle-* on them. The
   personal theme goes before ember with --personal-accent, --personal-on-accent and
   --personal-accent-hover (set by the app on the surfaces of the person, reset on a universe theme
   unless "my theme everywhere"); a palette entry left unset falls back as written. */
:root, .universe-themed {
  --color-background: var(--socle-background);
  --color-surface: var(--socle-surface);
  --color-surface-hover: var(--socle-surface-2);
  --color-border: var(--socle-line);
  --color-separator: var(--socle-line-soft, var(--socle-line));
  --color-border-strong: var(--socle-line-strong, color-mix(in srgb, var(--socle-muted) 70%, var(--socle-line)));
  --color-control-border: var(--socle-line-control, color-mix(in srgb, var(--socle-muted) 60%, var(--socle-line)));
  --color-text: var(--socle-text);
  --color-text-muted: var(--socle-muted);
  --color-primary: var(--socle-ember);
  --color-kicker: var(--socle-kicker, var(--socle-ember));
  --color-on-primary: var(--socle-on-ember);
  --color-primary-hover: var(--socle-ember-hover, color-mix(in srgb, var(--socle-ember) 86%, var(--socle-text)));
  --color-accent: var(--personal-accent, var(--socle-ember));
  --color-accent-fill: var(--personal-accent, var(--socle-ember));
  --color-accent-fill-hover: var(--personal-accent-hover, var(--socle-ember-hover, color-mix(in srgb, var(--socle-ember) 86%, var(--socle-text))));
  --color-on-accent: var(--personal-on-accent, var(--socle-on-ember));
  --color-link: var(--socle-sky);
  --color-accent-text: var(--socle-sky);
  --color-focus: var(--socle-sky);
  --color-universe: var(--socle-sky);
  --color-progress: var(--socle-leaf);
  --color-success: var(--socle-leaf);
  --color-warning: var(--socle-amber);
  --color-live: var(--socle-rose);
  --color-danger: var(--socle-rose);
  --color-on-danger: var(--socle-on-rose);
  --color-like: var(--socle-ember);
  --color-unread: var(--socle-ember);
  --color-on-unread: var(--socle-on-ember);
  --color-bubble-own: color-mix(in srgb, var(--socle-sky) 20%, var(--socle-surface));
  --color-on-bubble-own: var(--socle-text);
  --qr-paper: #FFFFFF;
  --qr-ink: #0F1116;
  --sign-universe: var(--socle-sky);
  --sign-account: var(--socle-text);
  --sign-tag: var(--socle-leaf);
  --sign-channel: var(--socle-rose);
}

/* Type: Sora for the titles and the figures, Figtree for the text, JetBrains Mono for the addresses,
   the signs, the counters and the code. Shapes: 14 px cards, 10 px small elements and fields, 6 px
   badges, pills for the buttons. A badge: background: hsl(var(--badge-hue)
   var(--badge-solid-background-saturation) var(--badge-solid-background-lightness)), with
   --badge-hue set on the badge (hueOf in tokens.ts). */
:root {
  --font-family-display: "Sora", "Avenir Next", "Segoe UI", system-ui, sans-serif;
  --font-family-sans: "Figtree", "Inter", "Noto Sans", "Noto Sans Arabic", "Noto Sans Devanagari", "Noto Sans SC", "Noto Sans Bengali", "Helvetica Neue", "Segoe UI", "Arial", system-ui, sans-serif;
  --font-family-mono: "JetBrains Mono", "SF Mono", ui-monospace, "Menlo", "Consolas", monospace;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-heavy: 800;
  --font-size-xs: 13px;
  --font-size-sm: 14px;
  --font-size-md: 15px;
  --font-size-lg: 17px;
  --font-size-xl: 20px;
  --font-size-2xl: 23px;
  --font-size-3xl: 31px;
  --font-size-display: 64px;
  --font-line-height-tight: 1.2;
  --font-line-height-normal: 1.4;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-full: 9999px;
  --motion-duration-fast: 120ms;
  --motion-duration-normal: 200ms;
}
@media print { :root[data-theme] {
  color-scheme: light;
  --socle-background: #FAF7F2;
  --socle-surface: #FFFFFF;
  --socle-surface-2: #F1ECE4;
  --socle-line-soft: #E8E2D8;
  --socle-line: #DED7CB;
  --socle-line-strong: #C8C0B2;
  --socle-line-control: #908979;
  --socle-text: #141A24;
  --socle-muted: #5B6779;
  --socle-ember: #D23A17;
  --socle-on-ember: #FFFFFF;
  --socle-ember-hover: #B8341A;
  --socle-kicker: #B8341A;
  --socle-sky: #1F6FD6;
  --socle-leaf: #148A5E;
  --socle-amber: #B97A00;
  --socle-rose: #D61E4E;
  --socle-on-rose: #FFFFFF;
  --badge-solid-background-saturation: 60%;
  --badge-solid-background-lightness: 88%;
  --badge-solid-foreground-saturation: 70%;
  --badge-solid-foreground-lightness: 24%;
  --badge-soft-background-saturation: 55%;
  --badge-soft-background-lightness: 95%;
  --badge-soft-foreground-saturation: 65%;
  --badge-soft-foreground-lightness: 27%;
} }
/* The legal pages, in Socle, as the landing and the legal pages of the web app (src/docs/docs.css):
   the list of the pages beside the text on a wide window, the text in a readable measure, its table
   of contents on the other side. The tokens come first, inlined by the build from the design system
   (never edited here): no color is written in this file, each comes from a role. Night by default,
   day when the device prefers light (data-theme="automatic"), day on paper (the build adds the day
   values of the tokens for print). Readable without JavaScript. */
:root { --gutter: clamp(16px, 4.5vw, 56px); --wide: 1200px; }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: var(--color-background); color: var(--color-text); font-family: var(--font-family-sans); font-size: var(--font-size-md); line-height: 1.55; overflow-x: hidden; overflow-x: clip; }
h1, h2, h3, .brand { font-family: var(--font-family-display); }
p { text-wrap: pretty; }
a { color: var(--color-link); }
:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 2px; }
.wrap { max-width: calc(var(--wide) + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter); }
.skip { position: absolute; inset-inline-start: 8px; top: -100px; z-index: 10; padding: 10px 16px; border-radius: var(--radius-full); background: var(--color-surface); color: var(--color-text); font-weight: var(--font-weight-semibold); }
.skip:focus { top: 8px; }
/* The scripts Sora and Figtree do not draw: their titles in the text stack, never spaced out
   (Arabic letters join), with more room between the lines. */
:is(:lang(ar), :lang(hi), :lang(zh-Hans), :lang(ja), :lang(ko), :lang(th), :lang(bn)) :is(h1, h2, h3, .brand-legal) { font-family: var(--font-family-sans); letter-spacing: 0 !important; }

/* The header: the mark and the name (the landing in this language), the legal home, the languages. */
.top { display: flex; align-items: center; justify-content: space-between; gap: 12px 16px; padding-block: 14px; flex-wrap: wrap; border-bottom: 1px solid var(--color-separator); }
.top-start { display: flex; align-items: center; gap: 8px 20px; flex-wrap: wrap; }
.brand { display: inline-flex; align-items: center; gap: 8px; color: var(--color-text); text-decoration: none; font-weight: var(--font-weight-heavy); font-size: var(--font-size-xl); letter-spacing: -.02em; }
.brand img { display: block; width: 44px; height: 44px; margin: -4px; }
.brand b { color: var(--color-primary); }
.brand-legal { color: var(--color-text-muted); text-decoration: none; font-weight: var(--font-weight-semibold); padding: 6px 12px; border-radius: var(--radius-full); }
.brand-legal:hover { color: var(--color-text); background: var(--color-surface-hover); }
/* The languages: a menu that opens without JavaScript (details), the same page in each language. */
.langs { position: relative; font-size: var(--font-size-sm); }
.langs summary { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border-radius: var(--radius-full); border: 1px solid var(--color-control-border); color: var(--color-text); cursor: pointer; list-style: none; font-weight: var(--font-weight-medium); }
.langs summary::-webkit-details-marker { display: none; }
.langs summary svg { width: 18px; height: 18px; flex: none; }
.langs summary:hover { background: var(--color-surface-hover); }
.langs ul { position: absolute; inset-inline-end: 0; top: calc(100% + 6px); z-index: 5; margin: 0; padding: 6px; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, max-content)); gap: 2px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); width: max-content; max-width: calc(100vw - 2 * var(--gutter)); }
.langs ul a { display: block; padding: 8px 12px; border-radius: var(--radius-md); color: var(--color-text-muted); text-decoration: none; white-space: nowrap; }
.langs ul a:hover { color: var(--color-text); background: var(--color-surface-hover); }
.langs ul a[aria-current="page"] { color: var(--color-text); font-weight: var(--font-weight-bold); background: var(--color-surface-hover); }

main { padding-block: clamp(24px, 4vw, 48px) clamp(48px, 7vw, 96px); }
main:focus { outline: none; }
.muted { color: var(--color-text-muted); }
.kicker { margin: 0; color: var(--color-kicker); font-family: var(--font-family-mono); font-size: var(--font-size-xs); font-weight: var(--font-weight-semibold); letter-spacing: .06em; text-transform: uppercase; }

/* The home of the legal pages, in a language (and the choice of a language). */
.docs-hero { max-width: 760px; margin: 0 auto; text-align: center; display: grid; justify-items: center; gap: var(--space-2); padding-block: var(--space-6) var(--space-8); }
.docs-hero h1 { margin: 0; font-size: clamp(36px, 5.5vw, 60px); line-height: 1.05; letter-spacing: -0.03em; font-weight: var(--font-weight-heavy); }
.lead { font-size: var(--font-size-lg); color: var(--color-text-muted); }
.docs-hero .lead { margin: var(--space-2) 0 0; }
.docs-index { max-width: 1040px; margin: 0 auto; display: grid; gap: var(--space-12); }
.docs-section h2 { margin: 0 0 var(--space-4); font-size: var(--font-size-2xl); }
.entry-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: var(--space-3); }
.entry-card { height: 100%; display: grid; align-content: start; gap: var(--space-1); padding: var(--space-4) var(--space-6); border-radius: var(--radius-lg); border: 1px solid var(--color-border); background: var(--color-surface); color: var(--color-text); text-decoration: none; }
.entry-card:hover { border-color: var(--color-accent); background: var(--color-surface-hover); }
.entry-title { font-weight: var(--font-weight-bold); }
.entry-card .muted { font-size: var(--font-size-sm); line-height: 1.45; }
.choices { max-width: 760px; margin: 0 auto; list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: var(--space-2); }
.choices a { display: block; padding: var(--space-3) var(--space-4); border-radius: var(--radius-lg); border: 1px solid var(--color-border); background: var(--color-surface); color: var(--color-text); text-decoration: none; font-weight: var(--font-weight-semibold); }
.choices a:hover { border-color: var(--color-accent); background: var(--color-surface-hover); }

/* A page: the list of the pages, the text, its table of contents. */
.docs-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr) 220px; gap: clamp(24px, 4vw, 56px); align-items: start; }
.docs-nav, .docs-toc { position: sticky; top: 24px; max-height: calc(100vh - 48px); overflow-y: auto; font-size: var(--font-size-sm); padding-bottom: var(--space-6); }
.docs-nav-home { display: block; margin-bottom: var(--space-4); font-weight: var(--font-weight-heavy); color: var(--color-text); font-size: var(--font-size-md); text-decoration: none; }
.docs-nav-group + .docs-nav-group { margin-top: var(--space-4); }
.docs-nav-title { margin: 0 0 var(--space-2); font-size: var(--font-size-xs); font-weight: var(--font-weight-bold); text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-text-muted); }
:is(:lang(ar), :lang(hi), :lang(zh-Hans), :lang(ja), :lang(ko), :lang(th), :lang(bn)) :is(.docs-nav-title, .kicker) { text-transform: none; letter-spacing: 0; font-family: var(--font-family-sans); }
.docs-nav ul, .toc-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1px; }
.docs-nav a, .toc-list a { display: block; padding: 6px var(--space-3); border-radius: var(--radius-md); color: var(--color-text-muted); line-height: 1.35; text-decoration: none; }
.docs-nav a:hover, .toc-list a:hover { color: var(--color-text); background: var(--color-surface-hover); }
.docs-nav a[aria-current="page"] { color: var(--color-text); background: var(--color-surface-hover); font-weight: var(--font-weight-bold); box-shadow: inset 3px 0 0 var(--color-accent); }
[dir="rtl"] .docs-nav a[aria-current="page"] { box-shadow: inset -3px 0 0 var(--color-accent); }
.toc-list li.sub a { padding-inline-start: var(--space-6); }
.docs-toc-inline { display: none; margin: var(--space-6) 0 0; border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-surface); }
.docs-toc-inline summary { min-height: 48px; display: flex; align-items: center; padding: 0 var(--space-4); cursor: pointer; font-weight: var(--font-weight-bold); }
.docs-toc-inline .toc-list { padding: 0 var(--space-2) var(--space-3); }

.doc-article { min-width: 0; max-width: 760px; }
.breadcrumb ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2); font-size: var(--font-size-sm); color: var(--color-text-muted); }
.breadcrumb a { color: var(--color-text-muted); }
.breadcrumb li + li::before { content: "›"; margin-inline-end: var(--space-2); }
[dir="rtl"] .breadcrumb li + li::before { content: "‹"; }
.doc-article > h1 { margin: var(--space-3) 0 0; font-size: clamp(32px, 4.4vw, 48px); line-height: 1.1; letter-spacing: -0.025em; font-weight: var(--font-weight-heavy); }
:is(:lang(ar), :lang(hi), :lang(zh-Hans), :lang(ja), :lang(ko), :lang(th), :lang(bn)) .doc-article > h1 { line-height: 1.3; }
.doc-article > .lead { margin: var(--space-3) 0 0; }

/* The text of a page. */
.prose { margin-top: var(--space-8); font-size: var(--font-size-lg); line-height: 1.7; overflow-wrap: break-word; }
.prose > :first-child { margin-top: 0; }
.prose .updated { color: var(--color-text-muted); font-size: var(--font-size-md); }
.prose p, .prose ul, .prose ol, .prose blockquote, .prose pre, .prose .table-wrap { margin: 0 0 var(--space-4); }
.prose h2 { margin: var(--space-12) 0 var(--space-3); font-size: clamp(24px, 2.6vw, 30px); line-height: 1.2; letter-spacing: -0.015em; scroll-margin-top: 24px; }
.prose h3 { margin: var(--space-8) 0 var(--space-2); font-size: var(--font-size-xl); line-height: 1.3; scroll-margin-top: 24px; }
.prose h4, .prose h5, .prose h6 { margin: var(--space-6) 0 var(--space-2); font-size: var(--font-size-lg); scroll-margin-top: 24px; }
.heading-anchor { display: inline-grid; place-items: center; width: 32px; height: 32px; margin-inline-start: var(--space-1); vertical-align: middle; border-radius: var(--radius-md); color: var(--color-text-muted); opacity: 0; transition: opacity var(--motion-duration-fast); }
.heading-anchor svg { width: 16px; height: 16px; }
.prose :is(h2, h3, h4, h5, h6):hover .heading-anchor, .heading-anchor:focus-visible { opacity: 1; }
@media (hover: none) { .heading-anchor { opacity: 0.6; } }
.prose ul, .prose ol { padding-inline-start: 1.4em; }
.prose li + li { margin-top: var(--space-1); }
.prose li > ul, .prose li > ol { margin: var(--space-1) 0 0; }
.prose a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.prose code { font-family: var(--font-family-mono); font-size: 0.88em; padding: 1px 6px; border-radius: var(--radius-sm); background: var(--color-surface-hover); unicode-bidi: isolate; direction: ltr; }
.prose pre { padding: var(--space-4); border-radius: var(--radius-md); background: var(--color-surface); border: 1px solid var(--color-border); overflow-x: auto; font-size: var(--font-size-sm); line-height: 1.6; text-align: left; }
.prose pre code { padding: 0; background: none; font-size: inherit; }
.prose blockquote { padding: var(--space-3) var(--space-4); border-inline-start: 4px solid var(--color-border); color: var(--color-text-muted); }
.prose blockquote > :last-child { margin-bottom: 0; }
.prose blockquote.callout { border-radius: var(--radius-md); background: var(--color-surface); border-inline-start-color: var(--color-universe); color: var(--color-text); font-size: var(--font-size-md); }
.prose hr { border: 0; border-top: 1px solid var(--color-border); margin: var(--space-8) 0; }
.prose img { max-width: 100%; height: auto; border-radius: var(--radius-md); }
.table-wrap { overflow-x: auto; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.prose table { width: 100%; border-collapse: collapse; font-size: var(--font-size-md); line-height: 1.5; }
.prose th, .prose td { padding: var(--space-2) var(--space-3); border-bottom: 1px solid var(--color-border); text-align: start; vertical-align: top; }
.prose th { background: var(--color-surface); font-weight: var(--font-weight-bold); }
.prose tr:last-child td { border-bottom: 0; }

.pager { margin-top: var(--space-12); display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.pager-link { display: grid; gap: 2px; padding: var(--space-4); border-radius: var(--radius-lg); border: 1px solid var(--color-border); color: var(--color-text); font-weight: var(--font-weight-bold); text-decoration: none; }
.pager-link .muted { font-weight: var(--font-weight-regular); font-size: var(--font-size-sm); }
.pager-link:hover { border-color: var(--color-accent); }
.pager-link.next { text-align: end; grid-column: 2; }

footer { padding-block: 24px 40px; border-top: 1px solid var(--color-separator); color: var(--color-text-muted); font-size: var(--font-size-sm); display: flex; align-items: center; justify-content: space-between; gap: 8px 24px; flex-wrap: wrap; }
footer a { display: inline-flex; align-items: center; min-height: 32px; color: var(--color-text-muted); text-decoration: none; }
footer a:hover { color: var(--color-text); text-decoration: underline; }
.links { display: flex; flex-wrap: wrap; gap: 0 20px; }

@media (max-width: 1180px) {
  .docs-layout { grid-template-columns: 220px minmax(0, 1fr); }
  .docs-toc { display: none; }
  .docs-toc-inline { display: block; }
}
@media (max-width: 860px) {
  .docs-layout { grid-template-columns: minmax(0, 1fr); }
  .docs-nav { display: none; }
  .prose { font-size: var(--font-size-md); }
  .pager { grid-template-columns: minmax(0, 1fr); }
  .pager-link.next { grid-column: auto; }
}

/* On paper: the text only, in the colors of day (set by the build), the addresses of the links
   written after them. */
@media print {
  body { font-size: 11pt; }
  .skip, .langs, .brand-legal, .docs-nav, .docs-toc, .docs-toc-inline, .pager, .heading-anchor, footer .links { display: none !important; }
  .top, footer { border: 0; }
  main { padding: 0; }
  .docs-layout { display: block; }
  .doc-article { max-width: none; }
  .prose { font-size: 11pt; line-height: 1.5; }
  .prose a[href^="http"]::after { content: " (" attr(href) ")"; font-size: .9em; overflow-wrap: anywhere; }
  .prose :is(h2, h3, h4) { break-after: avoid; }
  .prose :is(table, blockquote, pre, li) { break-inside: avoid; }
  .table-wrap { overflow: visible; }
}
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
