/* Struck Cathode Gauze — the token layer.
 *
 * Four roles, and everything on this site is one of them:
 *   ground  the ink-blue black the tube sits in
 *   gauze   the fine bronze anode mesh laid over the ground
 *   ghost   a value that exists but is not struck
 *   glow    the one value struck forward, crisp and haloed
 *
 * Two hues only. Bone is not a third hue, it is the prose weight of the
 * ground's own light. Anything reaching for a fourth colour is decoration and
 * does not belong to this world.
 */

@font-face {
  font-family: 'Oswald';
  src: url('/fonts/oswald-latin.woff2') format('woff2');
  font-weight: 400 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Public Sans';
  src: url('/fonts/publicsans-latin.woff2') format('woff2');
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}

:root {
  /* ---- ground ---------------------------------------------------------- */
  --ground: #0a0e14;
  --ground-deep: #06080d;
  --ground-lift: #0e141d;

  /* ---- gauze ----------------------------------------------------------- */
  /* The mesh is bronze wire seen edge-on: present everywhere, readable
   * nowhere. Density is the only grouping device this world has, so these
   * three steps are what replace borders, cards and dividers. */
  --gauze: #7a6a4f;
  --gauze-thin: rgba(122, 106, 79, 0.10);
  --gauze-mid: rgba(122, 106, 79, 0.20);
  --gauze-dense: rgba(122, 106, 79, 0.34);

  /* ---- ghost ----------------------------------------------------------- */
  /* An unlit value is still a value the visitor has to read and choose, so
   * ghost text sits at a real contrast ratio and takes its unlit character
   * from having no halo, not from being faint. Only the decorative numeral
   * layer behind the page is allowed to drop below legibility. */
  --bone: #e8e4da;
  --ghost: rgba(232, 228, 218, 0.72);
  --ghost-quiet: rgba(232, 228, 218, 0.54);
  --ghost-deep: rgba(232, 228, 218, 0.16);
  --ghost-decor: rgba(232, 228, 218, 0.05);

  /* ---- glow ------------------------------------------------------------ */
  --cathode: #ff7a18;
  --cathode-soft: #ffa04f;
  --cathode-deep: #c25200;
  /* A struck value is haloed — that is the world's own word for it, and the
   * halo is the effect itself rather than a shadow standing in for depth. */
  --halo: 0 0 0.5rem rgba(255, 122, 24, 0.55), 0 0 1.6rem rgba(255, 122, 24, 0.22);
  --halo-soft: 0 0 0.4rem rgba(255, 122, 24, 0.35);
  /* Real depth, where something genuinely sits above the plane, carries an
   * offset and a blur like any honest shadow. */
  --lift: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.55);

  /* ---- refused --------------------------------------------------------- */
  /* A quality this video never had. Drawn, labelled, and dark — never
   * dropped from the list, because absence is designed here. */
  --refused: rgba(232, 228, 218, 0.28);
  --refused-ground: rgba(255, 255, 255, 0.015);

  /* ---- decayed --------------------------------------------------------- */
  /* A link on its way out. Keeps an afterglow instead of switching to a
   * warning colour, because this world has no third hue to warn in. */
  --decayed: #a86a3a;

  /* ---- type ------------------------------------------------------------ */
  --face-display: 'Oswald', 'Arial Narrow', sans-serif;
  --face-body: 'Public Sans', system-ui, -apple-system, sans-serif;

  --step--1: 0.8125rem;
  --step-0: 1rem;
  --step-1: 1.25rem;
  --step-2: clamp(1.5rem, 1.2rem + 1.4vw, 2rem);
  --step-3: clamp(2rem, 1.5rem + 2.6vw, 3.25rem);
  --step-4: clamp(2.75rem, 1.7rem + 5vw, 5rem);

  --track-label: 0.14em;
  --track-display: -0.01em;

  /* ---- measure --------------------------------------------------------- */
  --measure: 68ch;

  /* ---- space ----------------------------------------------------------- */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;
  --sp-8: 4.5rem;
  --sp-9: 7rem;

  /* ---- one beat --------------------------------------------------------
   * Values snap; only the decay of the old glow is allowed to take time. */
  --beat: 260ms;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}
