* { box-sizing: border-box; }
body { margin: 0; }
button, select, input { font: inherit; }
button, a, select { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
button:disabled, select:disabled, input:disabled { cursor: wait; opacity: .55; }
[hidden] { display: none !important; }
.visually-hidden, :root:not([data-classic="true"]) .date-full {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
.classic-mark { display: none; }
.entry-image[src$="/itc.svg"] { --image-logo-bg: #17202b; }
.results, .results-body, .field, .entry article { min-width: 0; }
.skip-link { position: absolute; top: -100px; left: 20px; z-index: 10; }
.skip-link:focus { top: 12px; }

/* Black Ice tokens (dark theme, theme=current, also the default before scripts run).
   Values come from the "1888LABS theme proposals" canvas, 21 Oct 2026, which refines the Cyberdeck
   Black Ice table (handoff README, 14 Jul 2026). Contrast ratios are WCAG 2.x against --bi-surface
   unless the comment says otherwise. Scope everything in styles.css under this selector. */

:root:not([data-classic="true"]):not([data-theme="modlabs"]) {
  color-scheme: dark;

  /* Grounds and lines. */
  --bi-bg: #05080f;              /* page */
  --bi-topbar: #070b12;          /* top bar, entry date gutter, index gap rows */
  --bi-surface: #0a1019;         /* cells, rows, plates */
  --bi-hover: #101a28;
  --bi-active: #102237;          /* pressed toggles, active index row */
  --bi-track: #0f1a28;           /* meter track */
  --bi-line: #1a2a3d;            /* hairlines inside grids and lists */
  --bi-line-strong: #23384f;     /* outer strokes of plates and toggles, control underlines */
  --bi-tag-line: #2b425b;        /* topic tag stroke, dashed gap lines */
  --bi-grid-texture: linear-gradient(rgba(143, 163, 186, 0.07) 1px, rgba(143, 163, 186, 0) 1px),
                     linear-gradient(90deg, rgba(143, 163, 186, 0.07) 1px, rgba(143, 163, 186, 0) 1px);
  --bi-grid-size: 24px 24px;

  /* Text. */
  --bi-text: #dbe7f4;            /* 15.21:1 */
  --bi-text-2: #b3c3d4;          /* summaries, intro line: 10.6:1 */
  --bi-muted: #8fa3ba;           /* meta, original titles: 7.37:1 */
  --bi-muted-2: #7f93ab;         /* micro-labels: 6.05:1 (6.25:1 on --bi-topbar) */
  --bi-faint: #6b829c;           /* smallest labels: 4.81:1 (4.97:1 on --bi-topbar). The Cyberdeck value
                                    #4a5d73 measured 2.96:1 and is retired. */

  /* One accent. The other Cyberdeck colours stay only as state colours. */
  --bi-accent: #3fd9ff;          /* 11.43:1; 9.63:1 on --bi-active */
  --bi-accent-hover: #7ae6ff;
  --bi-accent-dim: #216c82;      /* 52 % mix of the accent into --bi-bg: meter fills, accent strokes */
  --bi-accent-ink: #04121c;      /* text on an accent fill: 11.35:1 */
  --bi-warn: #f7c554;            /* unverified dates: 11.87:1 */
  --bi-breach: #ff5e8a;          /* invalid range, load error: 6.56:1 */

  /* Type. Geologica covers Latin and Cyrillic; its SHRP axis (0-100) sharpens corners. */
  --bi-font: Geologica, "Segoe UI", system-ui, sans-serif;
  --bi-font-mono: "IBM Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;

  /* Chamfers: top-left and bottom-right corners cut, never border-radius. Inner = outer - 0.5 px. */
  --bi-cut-4: polygon(4px 0, 100% 0, 100% calc(100% - 4px), calc(100% - 4px) 100%, 0 100%, 0 4px);
  --bi-cut-3-5: polygon(3.5px 0, 100% 0, 100% calc(100% - 3.5px), calc(100% - 3.5px) 100%, 0 100%, 0 3.5px);
  --bi-cut-6: polygon(6px 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%, 0 6px);
  --bi-cut-5-5: polygon(5.5px 0, 100% 0, 100% calc(100% - 5.5px), calc(100% - 5.5px) 100%, 0 100%, 0 5.5px);
  --bi-cut-7: polygon(7px 0, 100% 0, 100% calc(100% - 7px), calc(100% - 7px) 100%, 0 100%, 0 7px);
  --bi-cut-6-5: polygon(6.5px 0, 100% 0, 100% calc(100% - 6.5px), calc(100% - 6.5px) 100%, 0 100%, 0 6.5px);
  --bi-cut-11: polygon(11px 0, 100% 0, 100% calc(100% - 11px), calc(100% - 11px) 100%, 0 100%, 0 11px);
  --bi-cut-10-5: polygon(10.5px 0, 100% 0, 100% calc(100% - 10.5px), calc(100% - 10.5px) 100%, 0 100%, 0 10.5px);
  --bi-cut-start-6-5: polygon(6.5px 0, 100% 0, 100% 100%, 0 100%, 0 6.5px);   /* first segment */
  --bi-cut-end-6-5: polygon(0 0, 100% 0, 100% calc(100% - 6.5px), calc(100% - 6.5px) 100%, 0 100%); /* last segment */

  /* Geometry. */
  --bi-max: 1320px;
  --bi-pad-x: clamp(16px, 3vw, 40px);
  --bi-index-w: 232px;
  --bi-gutter-w: 104px;
}

:root:not([data-classic="true"]):not([data-theme="modlabs"]) {
  font-family: var(--bi-font); color: var(--bi-text); background: var(--bi-bg); overflow-x: clip;
  body { background: var(--bi-bg); }
  a { color: var(--bi-muted); text-underline-offset: .2em; }
  a:hover { color: var(--bi-text); }
  :focus-visible { outline: 2px solid var(--bi-accent); outline-offset: -2px; }
  ::selection { background: var(--bi-accent); color: var(--bi-accent-ink); }
  .shell { max-width: var(--bi-max); margin: auto; padding: 0 var(--bi-pad-x) 56px; }
  .intro { position: relative; isolation: isolate; display: flex; align-items: center; gap: 16px 22px; padding: 12px 0; margin-bottom: 28px; }
  .intro::before { content: ""; position: absolute; z-index: -1; inset: 0 calc((1320px - 100vw) / 2 - 40px); background: var(--bi-grid-texture), var(--bi-topbar); background-size: var(--bi-grid-size); border-bottom: 1px solid var(--bi-line); pointer-events: none; }
  .brand-block { display: flex; align-items: center; gap: 12px; flex: none; }
  h1 { margin: 0; font-size: 21px; line-height: 1; font-weight: 700; letter-spacing: .035em; font-variation-settings: "SHRP" 100; white-space: nowrap; }
  h1 span, .range-accent { color: var(--bi-accent); }
  .deck-key { padding: 1px; background: var(--bi-accent-dim); clip-path: var(--bi-cut-7); }
  .deck-key-grid { display: grid; grid-template-columns: repeat(2,18px); gap: 1px; background: var(--bi-line-strong); clip-path: var(--bi-cut-6-5); font: 600 12px/18px var(--bi-font-mono); text-align: center; }
  .deck-key-grid span { background: var(--bi-surface); color: var(--bi-text-2); }
  .deck-key-grid span:first-child { background: var(--bi-accent); color: var(--bi-accent-ink); }
  .intro-detail { display: flex; align-items: center; gap: 14px; }
  .intro-detail::before { content: ""; width: 1px; height: 26px; background: var(--bi-line-strong); flex: none; margin-right: 8px; }
  .intro-line { margin: 0; font-size: 14px; color: var(--bi-text-2); white-space: nowrap; }
  .range { margin: 0; font: 500 14px var(--bi-font-mono); letter-spacing: .04em; white-space: nowrap; }
  .header-actions { display: flex; margin-left: auto; gap: 10px; flex: none; }
  .languages, .theme-toggle { display: flex; gap: 1px; padding: 1px; border: 0; background: var(--bi-line-strong); clip-path: var(--bi-cut-7); }
  .languages button, .theme-toggle > span { display: inline-flex; align-items: center; justify-content: center; height: 32px; min-width: 44px; padding: 0 12px; border: 0; background: var(--bi-surface); color: var(--bi-muted); font: 500 12px var(--bi-font-mono); letter-spacing: .08em; }
  .languages button:first-child, .theme-toggle > span:first-child { clip-path: var(--bi-cut-start-6-5); }
  .languages button:last-child, .theme-toggle > span:last-child { clip-path: var(--bi-cut-end-6-5); }
  .languages button[aria-pressed="true"], .theme-toggle[aria-checked="false"] > span:first-child, .theme-toggle[aria-checked="true"] > span:last-child { background: var(--bi-active); color: var(--bi-accent); font-weight: 600; box-shadow: inset 0 -2px 0 var(--bi-accent); }
  .languages button:hover, .theme-toggle:hover > span { color: var(--bi-text); }
  .facet, .rail-label, .reset-long, .days-strip, .results-head, .results-end, .footer-bar, .title-date, .modlabs-mark, .tld, .theme-toggle .theme-track { display: none; }
  .archive-layout { display: grid; grid-template-columns: var(--bi-index-w) minmax(0,1fr); gap: 28px; align-items: start; }
  .rail { display: contents; }
  .controls { grid-column: 1 / -1; grid-row: 1; margin: 0; padding: 1px; background: var(--bi-line-strong); clip-path: var(--bi-cut-11); }
  .controls-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 1px; background: var(--bi-line); clip-path: var(--bi-cut-10-5); }
  .field, .filter-status { display: flex; flex-direction: column; gap: 6px; padding: 12px 16px 10px; background: var(--bi-surface); }
  .field > span, .status-label { font: 10.5px var(--bi-font-mono); text-transform: uppercase; letter-spacing: .14em; color: var(--bi-muted-2); }
  select, input { width: 100%; min-width: 0; height: 32px; padding: 0 22px 0 0; border: 0; border-bottom: 1px solid var(--bi-line-strong); border-radius: 0; background: transparent; color: var(--bi-text); font: 500 14px var(--bi-font); }
  select { appearance: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%233fd9ff' stroke-width='1.5'/%3E%3C/svg%3E") right 2px center / 10px 6px no-repeat; }
  option { background: var(--bi-surface); color: var(--bi-text); }
  input[type="date"] { font: 13px var(--bi-font-mono); color: var(--bi-muted); padding-right: 0; color-scheme: dark; }
  input[aria-invalid="true"] { border-color: var(--bi-breach); }
  .filter-status { display: grid; grid-template-columns: 1fr auto; align-content: start; align-items: center; column-gap: 8px; }
  .status-label { grid-column: 1 / -1; }
  .result-count { margin: 0; font: 13px var(--bi-font-mono); white-space: nowrap; color: var(--bi-muted); min-height: 32px; display: flex; align-items: center; }
  .count-n { font-size: 20px; font-weight: 600; color: var(--bi-text); }
  .count-total, .count-slash { font-size: 13px; color: var(--bi-muted-2); }
  .count-slash { padding: 0 8px; }
  .count-label, .count-of, .count-unit { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .reset { position: relative; isolation: isolate; min-height: 30px; padding: 0 12px; border: 0; background: var(--bi-accent-dim); clip-path: polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px); color: var(--bi-accent); font: 500 11px var(--bi-font-mono); text-transform: uppercase; letter-spacing: .12em; }
  .reset::before { content: ""; position: absolute; inset: 1px; z-index: -1; background: var(--bi-surface); clip-path: polygon(4.5px 0,100% 0,100% calc(100% - 4.5px),calc(100% - 4.5px) 100%,0 100%,0 4.5px); }
  .reset:disabled { color: var(--bi-faint); background: var(--bi-line-strong); cursor: default; opacity: 1; }
  .group-index { grid-column: 1; grid-row: 2; padding: 1px; position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow: auto; background: var(--bi-line-strong); clip-path: var(--bi-cut-11); }
  .index-body { display: flex; flex-direction: column; gap: 1px; background: var(--bi-line); clip-path: var(--bi-cut-10-5); }
  .index-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 0; padding: 13px 14px 11px 16px; background: var(--bi-surface); font: 10.5px var(--bi-font-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--bi-muted-2); }
  .index-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 1px; }
  .index-item { display: grid; grid-template-columns: 44px minmax(0,1fr) 30px; align-items: center; gap: 12px; padding: 8px 14px 8px 16px; background: var(--bi-surface); text-decoration: none; }
  .index-name { font: 500 13px var(--bi-font-mono); color: var(--bi-text-2); }
  .index-meter { display: block; height: 4px; background: var(--bi-track); }
  .index-fill { display: block; height: 4px; background: var(--bi-accent-dim); }
  .index-count { font: 12px var(--bi-font-mono); color: var(--bi-muted); text-align: right; }
  .index-item:hover { background: var(--bi-hover); }
  .index-item[aria-current="true"] { background: var(--bi-active); box-shadow: inset 2px 0 0 var(--bi-accent); }
  .index-item[aria-current="true"] .index-name { color: var(--bi-accent); }
  .index-item[aria-current="true"] .index-fill { background: var(--bi-accent); }
  .index-item[aria-current="true"] .index-count { color: var(--bi-text); }
  .index-gap { display: grid; grid-template-columns: 84px minmax(0,1fr) 30px; align-items: center; gap: 12px; padding: 9px 14px 9px 16px; background: var(--bi-topbar); }
  .index-gap .index-name { font: 11px var(--bi-font-mono); color: var(--bi-faint); }
  .index-gap .index-meter { height: 0; background: none; border-top: 1px dashed var(--bi-tag-line); }
  .group-index.by-topic .index-item { grid-template-columns: minmax(0,1fr) 48px 26px; gap: 8px; }
  .group-index.by-topic .index-name { font: 13px var(--bi-font); overflow-wrap: anywhere; }
  .results { grid-column: 2; grid-row: 2; }
  .group + .group { margin-top: 44px; }
  .group-heading { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
  .group-heading::after { content: ""; height: 1px; background: var(--bi-line); flex: 1; }
  .group-heading h2 { margin: 0; font: 700 44px/1 var(--bi-font); letter-spacing: -.01em; font-variation-settings: "SHRP" 100; font-variant-numeric: tabular-nums; scroll-margin-top: 16px; }
  .group.by-topic h2 { font-size: 28px; font-weight: 600; overflow-wrap: anywhere; }
  .group-count, .group-top { font: 11px var(--bi-font-mono); text-transform: uppercase; letter-spacing: .14em; color: var(--bi-muted-2); }
  .group-top { order: 1; color: var(--bi-muted); text-decoration: none; white-space: nowrap; }
  .entries { list-style: none; margin: 0; padding: 1px; display: flex; flex-direction: column; gap: 1px; background: var(--bi-line); }
  .entry { background: var(--bi-surface); }
  .entry article { position: relative; padding: 18px 24px 22px 129px; background: linear-gradient(90deg,var(--gutter, #070b12) 0 104px,#1a2a3d 104px 105px,transparent 105px); }
  .entry:hover { background: var(--bi-hover); --gutter: var(--bi-hover); }
  .entry-date { position: absolute; left: 0; top: 0; width: 104px; padding: 20px 16px; display: flex; flex-direction: column; gap: 7px; }
  .date-short, .date-numeric { display: none; }
  .date-day { font: 500 30px/1 var(--bi-font-mono); color: var(--bi-text); }
  .date-monthyear { font: 11px var(--bi-font-mono); color: var(--bi-muted-2); text-transform: uppercase; letter-spacing: .12em; white-space: nowrap; }
  .is-provisional .date-day { font-size: 22px; }
  .meta { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; font: 11.5px/1.4 var(--bi-font-mono); text-transform: uppercase; letter-spacing: .08em; color: var(--bi-muted); }
  .topic-name { position: relative; isolation: isolate; padding: 4px 9px; background: var(--bi-tag-line); clip-path: var(--bi-cut-4); font-size: 10.5px; }
  .topic-name::before { content: ""; position: absolute; inset: 1px; z-index: -1; background: var(--bi-surface); clip-path: var(--bi-cut-3-5); }
  .date-note.unverified { color: var(--bi-warn); }
  .entry h3 { margin: 10px 0 0; font: 600 19px/1.32 var(--bi-font); letter-spacing: -.005em; text-wrap: pretty; overflow-wrap: anywhere; }
  .article-link { color: var(--bi-text); text-decoration: none; }
  .article-link:hover { color: var(--bi-accent-hover); }
  .article-link::after, .alternate::after { content: ""; display: inline-block; width: 12px; height: 12px; margin-left: 7px; background: var(--bi-accent); mask: url('./assets/arrow-ne.svg') center / contain no-repeat; }
  .original-title { margin: 8px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--bi-muted); overflow-wrap: anywhere; }
  .original-label { margin-right: 8px; font: 10.5px var(--bi-font-mono); text-transform: uppercase; letter-spacing: .14em; color: var(--bi-faint); }
  .entry-excerpt { display: flow-root; }
  .entry-image { float: right; width: 176px; height: 132px; object-fit: contain; margin: 12px 0 10px 20px; padding: 5px; background: #0b1421; border: 1px solid var(--bi-accent-dim); box-shadow: inset 0 0 0 3px var(--bi-surface); }
  .entry-image[data-kind="logo"] { padding: 14px; background: var(--image-logo-bg, #f3f5f5); box-shadow: none; }
  .summary { margin: 12px 0 0; max-width: 72ch; font-size: 15px; line-height: 1.62; color: var(--bi-text-2); text-wrap: pretty; }
  .source-note { margin: 12px 0 0; padding-top: 10px; border-top: 1px dashed var(--bi-tag-line); font-size: 13px; line-height: 1.55; color: var(--bi-muted); max-width: 72ch; }
  .alternate { display: inline-flex; align-items: center; min-height: 32px; font: 11px var(--bi-font-mono); text-transform: uppercase; letter-spacing: .1em; }
  .footer { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--bi-line); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px 24px; font: 11px var(--bi-font-mono); text-transform: uppercase; letter-spacing: .12em; color: var(--bi-muted-2); }
  .footer p { margin: 0; }
  .footer-links { display: flex; align-items: center; gap: 22px; }
  .footer a { text-decoration: none; }
  .filter-message, .error { position: relative; isolation: isolate; background: var(--bi-line-strong); clip-path: var(--bi-cut-11); margin: 0; padding: 16px 20px; font-size: 15px; line-height: 1.6; color: var(--bi-text-2); }
  .filter-message::before, .error::before { content: ""; position: absolute; inset: 1px; z-index: -1; background: var(--bi-surface); clip-path: var(--bi-cut-10-5); }
  .filter-message.invalid, .error { background: var(--bi-breach); }
  .error button { height: 44px; padding: 0 16px; border: 0; background: var(--bi-accent); color: var(--bi-accent-ink); clip-path: var(--bi-cut-7); font: 600 12px var(--bi-font-mono); text-transform: uppercase; }
  .error button:focus-visible, .skip-link:focus-visible { outline-color: var(--bi-accent-ink); }
  .skip-link { background: var(--bi-accent); color: var(--bi-accent-ink); clip-path: var(--bi-cut-7); padding: 12px; }
  @media (max-width: 1319px) {
    .intro::before { inset-inline: calc(-1 * var(--bi-pad-x)); }
    .field, .filter-status { padding-inline: 12px; }
    .reset { padding-inline: 8px; }
    .count-slash { padding-inline: 5px; }
  }
  @media (min-width: 1000px) and (max-width: 1199px) {
    .controls-grid { grid-template-columns: repeat(5,minmax(0,1fr)) minmax(172px,1.15fr); }
    .intro { gap: 16px; }
    .intro-detail { gap: 10px; }
    .intro-detail::before { margin: 0; }
  }
  @media (max-width: 999px) {
    .intro { flex-wrap: wrap; }
    .intro-detail { order: 2; width: 100%; }
    .intro-detail::before { display: none; }
    .archive-layout { grid-template-columns: minmax(0,1fr); }
    .controls-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .group-index { position: static; grid-column: 1; grid-row: 2; max-height: none; padding: 0; background: transparent; clip-path: none; overflow: visible; min-width: 0; }
    .index-body { display: block; background: transparent; clip-path: none; }
    .index-head, .index-meter, .index-gap { display: none; }
    .index-list { flex-direction: row; gap: 8px; overflow-x: auto; scrollbar-width: none; }
    .index-list > li { flex: none; }
    .index-item, .group-index.by-topic .index-item { position: relative; isolation: isolate; display: flex; align-items: center; gap: 8px; height: 44px; padding: 0 13px; background: var(--bi-line-strong); clip-path: var(--bi-cut-6); }
    .index-item::before { content: ""; position: absolute; inset: 1px; z-index: -1; background: var(--bi-surface); clip-path: var(--bi-cut-5-5); }
    .index-item[aria-current="true"] { background: var(--bi-accent-dim); box-shadow: none; }
    .index-item[aria-current="true"]::before { background: var(--bi-active); box-shadow: inset 0 -2px 0 var(--bi-accent); }
    .index-count { font-size: 11px; color: var(--bi-muted-2); }
    .results { grid-column: 1; grid-row: 3; }
  }
  @media (max-width: 639px) {
    .shell { padding-inline: 16px; }
    .intro { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px 8px; padding: 12px 0 14px; margin-bottom: 16px; }
    .intro::before { inset-inline: -16px; }
    .header-actions { display: contents; }
    .brand-block { gap: 10px; }
    h1 { font-size: 20px; }
    .languages { grid-row: 1; grid-column: 2; justify-self: end; }
    .intro-detail { grid-row: 2; grid-column: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
    .intro-line { font-size: 13px; white-space: normal; }
    .range { font-size: 13px; }
    .theme-toggle { grid-row: 2; grid-column: 2; justify-self: end; }
    .languages button, .theme-toggle > span { height: 42px; min-width: 46px; }
    .controls-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .field, .filter-status { padding: 10px 12px 6px 14px; gap: 4px; }
    select, input { height: 40px; }
    .filter-status { display: flex; align-items: stretch; }
    .result-count { min-height: 32px; }
    .count-n { font-size: 19px; }
    .reset { min-height: 44px; padding: 6px; line-height: 1.4; }
    .reset-short { display: none; }
    .reset-long { display: inline; }
    .group-index { margin: 0 -16px; }
    .index-list { padding-inline: 16px; }
    .group-heading h2 { font-size: 36px; }
    .group.by-topic h2 { font-size: 24px; }
    .group-top { display: none; }
    .group-count { flex-shrink: 0; }
    .entry article { padding: 16px 16px 18px; background: none; }
    .entry-date { position: static; display: inline; width: auto; padding: 0; }
    .date-day, .date-monthyear { display: none; }
    .date-numeric { display: inline; color: var(--bi-text-2); }
    .meta { font-size: 11px; gap: 6px 12px; }
    .entry h3 { font-size: 17px; line-height: 1.36; }
    .summary { font-size: 14.5px; line-height: 1.6; margin-top: 10px; }
    .entry-image { width: 112px; height: 84px; margin: 10px 0 8px 14px; padding: 3px; }
    .entry-image[data-kind="logo"] { padding: 8px; }
    .footer { flex-direction: column; align-items: flex-start; gap: 4px; }
    .footer a { display: inline-flex; align-items: center; min-height: 44px; }
  }
}
