/* Shared visual theme: reset, mono font, backdrop layers, panel, topbar chrome and
   signature. Linked before each page stylesheet; page files keep their unique rules. */

  :root {
    --bg: #0A0B10;
    --bg-2: #0F1118;
    --panel: #11141C;
    --panel-2: #161A24;
    --line: rgba(170, 138, 82, 0.18);
    --line-soft: rgba(255, 255, 255, 0.06);
    --gold: #AA8A52;
    --gold-hi: #C5A977;
    --gold-deep: #8A6A2A;
    --gold-soft: rgba(170, 138, 82, 0.12);
    --gold-glow: rgba(170, 138, 82, 0.35);
    --mint: #4DECAD;
    --mint-soft: rgba(77, 236, 173, 0.12);
    --mint-glow: rgba(77, 236, 173, 0.35);
    --text: #E8E6E1;
    --text-dim: rgba(232, 230, 225, 0.62);
    --text-faint: rgba(232, 230, 225, 0.55);
  }

  * { box-sizing: border-box; }

  html, body { margin: 0; padding: 0; background: var(--bg); color: var(--text); }

  .mono { font-family: 'JetBrains Mono', ui-monospace, monospace; font-feature-settings: "zero" on; }

  .nav-link { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }

  .nav-link:hover { color: var(--text); }

  .nav-link.active { color: var(--gold); border-color: var(--line); background: var(--gold-soft); }

  .signature { flex-wrap: wrap; gap: 12px 24px; }
  .signature a { display: inline-flex; align-items: center; min-height: 28px; padding: 4px 0; }
  @media (max-width: 640px), (pointer: coarse) {
    .signature a { min-height: 44px; padding: 12px 0; }
  }

  @keyframes blink { 50% { opacity: 0 } }

  a:focus-visible, button:focus-visible, select:focus-visible, input:focus-visible, summary:focus-visible {
    outline: 2px solid var(--gold); outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
  }
