/* GENERATED from broadsides/source/aac.block.html by tools/build-site.mjs.
   Do not edit. Edit the block at its source and re-run tools/sync-broadsides.mjs. */


@font-face{font-family:'Atkinson Hyperlegible Next';font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/atkinson-hyperlegible-next-roman-latin.woff2) format('woff2')}
@font-face{font-family:'Atkinson Hyperlegible Next';font-style:italic;font-weight:200 800;font-display:swap;src:url(/fonts/atkinson-hyperlegible-next-italic-latin.woff2) format('woff2')}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/spacemono-normal-400-latin.woff2) format('woff2')}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/spacemono-normal-700-latin.woff2) format('woff2')}
@font-face{font-family:'Space Mono';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/spacemono-italic-400-latin.woff2) format('woff2')}
/* Scoped reset. Never `*` on its own — this block's CSS is document-wide. */
.sb-root, .sb-root * { box-sizing: border-box; }
.sb-root p, .sb-root h1, .sb-root h2, .sb-root ul, .sb-root li, .sb-root figure { margin: 0; padding: 0; }
.sb-root ul { list-style: none; }

.sb-root {
  --sb-sheet:  #ffffff;
  --sb-ink:    #002b36;   /* Solarized base03 · 15.0:1 on white */
  --sb-ink-2:  #073642;   /* base02 · 13.0:1 — secondary prose   */
  --sb-ink-3:  #586e75;   /* base01 ·  5.4:1 — small print only  */
  --sb-spot:   #96215c;   /* Solarized magenta, darkened ·     7.9:1 */
  --sb-spot-2: #0d5f59;   /* Solarized cyan, darkened · 7.5:1 */
  --sb-rule:   #d8d2c4;

  font-family: 'Atkinson Hyperlegible Next', system-ui, -apple-system, sans-serif;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
  max-width: 100%;
}

/* ── Controls (screen only; removed from the print document) ── */
.sb-controls { display: flex; gap: 0.6rem; margin-bottom: 1.1rem; align-items: center; flex-wrap: wrap; justify-content: center; }
.sb-ctrl-label { font-family: 'Space Mono', ui-monospace, monospace; font-size: 0.62rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--sb-ink-3); }
.sb-btn {
  font-family: 'Space Mono', ui-monospace, monospace;
  font-size: 0.68rem; letter-spacing: 0.16em; text-transform: uppercase;
  background: #fff; color: var(--sb-ink-2);
  border: 1px solid var(--sb-ink-3); border-radius: 2px;
  padding: 0.5rem 1rem; cursor: pointer; line-height: 1.2;
}
.sb-btn:hover { border-color: var(--sb-ink); color: var(--sb-ink); }
.sb-btn:focus-visible { outline: 3px solid var(--sb-spot); outline-offset: 2px; }
.sb-btn.is-active { background: var(--sb-ink); color: #fff; border-color: var(--sb-ink); }
.sb-ctrl-sep { width: 1px; height: 18px; background: var(--sb-rule); }

/* ── The sheet ── */
.sb-sheet {
  width: 190mm; max-width: 100%; min-height: 259mm;
  background: var(--sb-sheet); color: var(--sb-ink);
  padding: 11mm 12mm 9mm;
  display: flex; flex-direction: column;
  border: 1px solid var(--sb-rule);
  border-top: 3mm solid var(--sb-spot);
  print-color-adjust: exact; -webkit-print-color-adjust: exact;
}
.sb-sheet[hidden] { display: none; }
.sb-sheet--b { border-top-color: var(--sb-spot-2); }

/* ── Masthead ── */
.sb-mast { display: flex; justify-content: space-between; align-items: flex-start; gap: 6mm; padding-bottom: 3mm; border-bottom: 0.6mm solid var(--sb-ink); }
.sb-mast-org { font-family: 'Space Mono', ui-monospace, monospace; font-size: 6pt; letter-spacing: 0.28em; text-transform: uppercase; color: var(--sb-ink-2); line-height: 1.9; }
.sb-mast-org strong { display: block; font-size: 7pt; letter-spacing: 0.2em; color: var(--sb-ink); }
.sb-mast-side { font-family: 'Space Mono', ui-monospace, monospace; font-size: 6pt; letter-spacing: 0.22em; text-transform: uppercase; color: var(--sb-spot); text-align: right; line-height: 1.9; white-space: nowrap; }
.sb-sheet--b .sb-mast-side { color: var(--sb-spot-2); }

/* ── Face ── */
.sb-title { font-weight: 800; font-size: 34pt; line-height: 0.98; letter-spacing: -0.02em; text-transform: uppercase; margin-top: 5mm; color: var(--sb-ink); }
.sb-title em { font-style: normal; color: var(--sb-spot); }
.sb-standfirst { font-style: italic; font-weight: 300; font-size: 11.5pt; line-height: 1.44; color: var(--sb-ink-2); margin-top: 4mm; max-width: 158mm; }
.sb-rule { height: 0.8mm; background: var(--sb-ink); margin-top: 5mm; print-color-adjust: exact; -webkit-print-color-adjust: exact; }

.sb-claim { margin-top: 5mm; text-align: center; }
.sb-claim-line { font-weight: 800; font-size: 33pt; line-height: 1.06; letter-spacing: -0.02em; text-transform: uppercase; color: var(--sb-ink); }
.sb-claim-line em { font-style: normal; color: var(--sb-spot); }
.sb-claim-sub { font-family: 'Space Mono', ui-monospace, monospace; font-size: 8pt; letter-spacing: 0.18em; text-transform: uppercase; color: var(--sb-ink-2); margin-top: 3mm; line-height: 1.8; }

.sb-panels { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 7mm; margin-top: 5mm; }
.sb-panel { border-left: 0.8mm solid var(--sb-spot); padding-left: 3.5mm; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.sb-panel:nth-child(3) { border-left-color: var(--sb-spot-2); }
.sb-panel-name { font-family: 'Space Mono', ui-monospace, monospace; font-size: 7.4pt; font-weight: 700; letter-spacing: 0.13em; text-transform: uppercase; color: var(--sb-spot); margin-bottom: 2.2mm; line-height: 1.5; }
.sb-panel:nth-child(3) .sb-panel-name { color: var(--sb-spot-2); }
.sb-panel p { font-size: 10pt; line-height: 1.45; color: var(--sb-ink-2); }

.sb-quote { margin-top: 5mm; padding-left: 4mm; border-left: 0.8mm solid var(--sb-spot); print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.sb-quote p { font-style: italic; font-weight: 500; font-size: 12.5pt; line-height: 1.34; color: var(--sb-ink); }
.sb-quote cite { display: block; font-family: 'Space Mono', ui-monospace, monospace; font-style: normal; font-size: 6.8pt; letter-spacing: 0.13em; text-transform: uppercase; color: var(--sb-ink-3); margin-top: 2.2mm; line-height: 1.7; }
.sb-sheet--b .sb-quote { border-left-color: var(--sb-spot-2); }

/* ── Reverse ── */
.sb-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 5mm 9mm; margin-top: 5mm; }
.sb-colhead { font-family: 'Space Mono', ui-monospace, monospace; font-size: 8pt; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: var(--sb-spot-2); padding-bottom: 2.2mm; margin-bottom: 3.5mm; border-bottom: 0.4mm solid var(--sb-rule); print-color-adjust: exact; -webkit-print-color-adjust: exact; }

.sb-do li { font-size: 10.5pt; line-height: 1.42; color: var(--sb-ink-2); margin-bottom: 2.6mm; padding-left: 5mm; position: relative; }
.sb-do li::before { content: '→'; position: absolute; left: 0; color: var(--sb-spot-2); font-weight: 700; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.sb-do strong { color: var(--sb-ink); }

.sb-look li { font-family: 'Space Mono', ui-monospace, monospace; font-size: 8.4pt; line-height: 1.5; color: var(--sb-ink-2); margin-bottom: 1.6mm; padding-left: 5mm; position: relative; }
.sb-look li::before { content: '✓'; position: absolute; left: 0; color: var(--sb-spot); font-weight: 700; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
.sb-note { font-size: 10pt; line-height: 1.42; color: var(--sb-ink-2); margin-top: 3mm; }
.sb-note strong { color: var(--sb-ink); }

.sb-principle { margin-top: 4mm; padding-top: 3mm; border-top: 0.6mm solid var(--sb-ink); }
.sb-principle p { font-size: 10.5pt; line-height: 1.45; color: var(--sb-ink-2); margin-top: 2mm; }
.sb-principle strong { color: var(--sb-ink); }

.sb-refusals-note { margin-top: 3.5mm; }

.sb-sources { margin-top: 3.5mm; font-family: 'Space Mono', ui-monospace, monospace; font-size: 7pt; line-height: 1.6; color: var(--sb-ink-2); }
.sb-sources em { font-style: italic; }

/* ── Foot ── */
.sb-foot { margin-top: auto; padding-top: 3mm; border-top: 0.6mm solid var(--sb-ink); display: flex; justify-content: space-between; align-items: flex-end; gap: 6mm; }
.sb-foot-left { font-family: 'Space Mono', ui-monospace, monospace; font-size: 6pt; letter-spacing: 0.18em; text-transform: uppercase; color: var(--sb-ink-3); line-height: 1.95; }
.sb-foot-right { font-family: 'Space Mono', ui-monospace, monospace; font-weight: 700; font-size: 8pt; letter-spacing: 0.14em; text-transform: uppercase; color: var(--sb-spot); text-align: right; line-height: 1.5; }
.sb-sheet--b .sb-foot-right { color: var(--sb-spot-2); }

.sb-hint { font-family: 'Space Mono', ui-monospace, monospace; font-size: 0.55rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--sb-ink-3); text-align: center; margin-top: 1rem; }

/* If someone prints the WORDPRESS PAGE rather than using the Print button, the
   controls come with it — and `.sb-btn.is-active` is white text on a dark
   background, so the background drops out (browsers omit background graphics)
   and it prints as white-on-white. Caught by running the contrast gate against
   the published URL. These are screen furniture; they never belong on paper.
   Scoped to our own classes: this must not try to hide the theme's chrome. */
@media print {
  .sb-controls, .sb-hint { display: none !important; }
}

/* Breakpoint sits BELOW the narrowest printed page box — A4 at 9 mm margins is
   192 mm ≈ 726 px. Print media queries resolve against the page box, not the
   screen, so a breakpoint above that reflows on paper and silently clips. */
@media (max-width: 700px) {
  .sb-sheet { width: 100%; min-height: 0; padding: 8mm 6mm; }
  .sb-panels, .sb-cols { grid-template-columns: 1fr; }
  .sb-title { font-size: 26pt; }
  .sb-claim-line { font-size: 22pt; }
  .sb-foot { flex-direction: column; align-items: flex-start; gap: 3mm; }
  .sb-foot-right { text-align: left; }
}

@media print {
*{box-sizing:border-box;margin:0;padding:0}html,body{background:#fff}@page{size:auto;margin:9mm}.sb-root{display:block;max-width:none}.sb-controls,.sb-hint{display:none}.sb-sheet{width:100%;min-height:0;height:259mm;padding:0;border:0;border-top:3mm solid var(--sb-spot)}.sb-sheet--b{border-top-color:var(--sb-spot-2)}.sb-sheet--a{page-break-after:always;break-after:page}.sb-mast{padding-top:6mm}.sb-panel,.sb-do li,.sb-look li{page-break-inside:avoid;break-inside:avoid}
}
