/* ==========================================================================
   exp33 . THE WORDMARK AND HDR
   Loads after themes.css. No JS of its own, no markup.
   Companion: assets/hdr-event.css + the HDR module in assets/herograph.js.

   WHAT CHANGED, AND WHY
   This file used to paint the wordmark from PQ rasters at rest: the WHOLE mark
   from assets/hdr/wordmark-<theme>.png on the bright themes (terminal, night,
   acid, brutal) with `color:transparent !important` over the live text, and an
   enlarged .34em PQ period on the light themes. Under the founder's rule --
   HDR is an event, nothing is HDR at rest -- a wordmark sitting in a header is
   at rest, so both were rule violations: a permanently emitting logo is the
   neon-signage failure applied to a brand mark.

   They were also broken as raster work. Measured on exp33 at 1440 and 390:
     terminal  the raster is STALE. wordmark-manifest.json records the box it
               was cut for as 73.75 x 20.48 CSS px; the live element is now
               68.23 x 20.48. background-size:contain therefore fits it by
               width and paints it ~8% short vertically, and its ink stops 9
               device px inside the live text. Its colour is wrong too: it
               renders saturated #2BFF6F where this theme's wordmark ink is the
               pale phosphor #D2FFE2, because the raster was captured from
               exp28 / exp30, not from exp33.
     brutal    ink 5 device px narrower than the live text.
     riso      the period rendered BLUE. hdr-logo.css painted
               logo-dot-blue.png on every theme and riso had no override, so a
               theme whose period is hot pink (#FF3D9A) shipped a blue dot.
     paper riso olo verified
               the .34em period (6.95 CSS px) is wider than the period's own
               inline box (5.27 px) and sits lower, so the mark's ink box grew
               by ~200 device px and ran 3-5 px right and 4-5 px below the live
               text. No layout shift, but not the designed silhouette either.
     all bright themes
               `color:transparent !important` made the logo a single point of
               failure -- one 404 and the site has no wordmark -- and a bitmap
               is softer than live type at any dpr the raster was not cut for.
               At 200% page zoom the terminal mark went soft and dim.

   THE FIX IS A RETIREMENT, NOT A RE-CUT. Re-rasterising would have reproduced a
   permanently-HDR mark, so the resting mark is now the LIVE TEXT in every one of
   the eight themes: crisp at every dpr and zoom, correct in every theme's own
   ink by construction, impossible to go stale, and with no single point of
   failure. assets/hdr/wordmark-*.png and assets/hdr/logo-dot-*.png are left in
   the tree unreferenced.

   WHAT THE MARK DOES INSTEAD
   The period -- the one place the product signs its own claim -- flares once per
   loop of the hero graph, on the beat the graph resolves: ~150 ms at peak, then
   a phosphor decay. It is painted from a per-theme PQ disc, so on an HDR display
   the signature emits and on SDR it flares brighter. On a page with no hero
   graph nothing drives it and the mark simply rests. Measured off the live clock:
   the window opens at 19.70 s, holds its envelope at 1.000 to 19.82, and decays
   to 0.004 by 20.14 before the class leaves at 20.18 -- 480 ms end to end.

   NO THEME SIGNS PERMANENTLY. THE RETIREMENT IS TOTAL IN ALL EIGHT.
   For a while the tube was an exception: a founder ruling made terminal's period
   HDR by default, and assets/hdr-event.css section 7.3 painted the period's own
   live GLYPH from a flat PQ tile through background-clip:text at rest. The
   exception is withdrawn -- "Nothing is HDR at rest" admits no carve-out for a
   brand mark, and a wordmark sitting in a header is the definition of at rest.
   Section 7.3 now paints that glyph from an SDR colour through the same clip and
   swaps in the PQ tile only while html.hx-mark is on. On the tube --signal is
   #2BFF6F, which is exactly what the retired tile decoded to, so the resting mark
   is unchanged to the byte on any display and the change is only in headroom.
   What the mark does instead is what this file already gave it: the period flares
   once per loop of the hero graph, on the beat the graph resolves -- ~150 ms at
   peak, then a phosphor decay -- and on a page with no hero graph nothing drives
   it and the mark simply rests. The wordmark's LETTERS are live text in all eight
   themes, and the period rests dark, or in its own theme ink, in all eight too.
   ========================================================================== */

/* THE MARK NOW APPEARS TWICE ON THE HOME PAGE, AND THIS FILE OWNS ONLY ONE OF
   THEM. Founder ruling: "in hero can you highlight word 'proof' in copy as our
   logo, and with hdr?" -- so the first word of the hero subhead is set as the
   wordmark too. It is NOT a .wordmark element and it takes no rule from this
   file: it is `.hero33 .hero-sub .hero-wm`, its letterforms are quoted from the
   header mark in assets/s35-herocopy.css section 1b, and its emission is the
   PERIOD'S -- it shares the period's declaration block in assets/hdr-event.css
   section 7.3, with the rationale and the objection in 7.5 there. Two things
   follow for anyone editing this file. One: the retirement above still holds in
   both places -- neither instance of the mark is a raster, both are live text.
   Two: if the period's tier, aperture or fallback changes in 7.3, it changes for
   the subhead in the same edit, which is the point of sharing the block. */

/* ---------- the resting mark: live text, in the theme's own ink ----------
   Nothing here paints. These declarations exist to UNDO the previous resting
   raster explicitly, so the retirement survives a stylesheet being reordered. */
.wordmark{background-image:none;}
.wordmark,
html[data-theme="terminal"] .wordmark,
html[data-theme="night"] .wordmark,
html[data-theme="acid"] .wordmark,
html[data-theme="brutal"] .wordmark{
  color:var(--ink);
  -webkit-text-fill-color:currentColor;
}
html[data-theme="brutal"] .wordmark,
html[data-theme="acid"] .wordmark{color:#fff;}
/* -webkit-text-fill-color INHERITS as a resolved colour, so the currentColor
   above would reach the period and repaint it in the wordmark's ink. The period
   keeps whatever colour its theme gives it (site.css --signal, with riso and
   brutal overriding); re-resolving currentColor here is what preserves that. */
.wordmark .dot{-webkit-text-fill-color:currentColor;}

/* ---------- the flare layer -------------------------------------------
   A positioned ::after over the period's own optical centre. Zero opacity and
   no background-image at rest, so the computed background-image of this LAYER is
   `none` between heartbeats in every theme -- that is the assertion the
   HDR-as-an-event rule is checked against, and it is unaffected by terminal's
   persistently emissive glyph, which is a fill on .dot and not this overlay.
   assets/hdr-event.css turns the flare on for the length of one heartbeat, and
   retunes its size and offset onto the measured ink for terminal.
   The glyph underneath is never hidden, so the mark is complete with or without
   the flare, with CSS off, or with the assets missing. */
.wordmark .dot{position:relative;}
.wordmark .dot::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:.185em;                     /* image centre = period ink centre */
  width:.34em;
  height:.34em;
  margin-left:.01em;
  transform:translateX(-50%) scale(.72);
  background:no-repeat center/contain;
  pointer-events:none;
  opacity:0;
}
