/* Hanging File Desk — policy tokens (Appily Ninetyeight)
   Contrast: body #121A22 on #FFF (~16:1), mute #3A4654 on #FFF (~8:1),
   active nav #FFF on #BE123C (~5.2:1), links #0F766E on #FFF (~5.1:1) */
:root {
  --hf-ink: #121A22;
  --hf-folder: #1A2836;
  --hf-field: #EAF4FF;
  --hf-field-mint: #E0F8F0;
  --hf-surface: #FFFFFF;
  --hf-rose: #BE123C;
  --hf-rose-deep: #9F1239;
  --hf-teal: #0F766E;
  --hf-teal-deep: #115E59;
  --hf-amber: #B45309;
  --hf-mute: #3A4654;
  --hf-display: "Oswald", system-ui, sans-serif;
  --hf-ui: "Source Sans 3", system-ui, sans-serif;
  --hf-read: "Source Serif 4", Georgia, serif;
  --hf-radius: 14px;
  --hf-shadow: 0 14px 36px rgba(18, 26, 34, 0.12);
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body.a98-file {
  margin: 0;
  min-height: 100vh;
  font-family: var(--hf-ui);
  color: var(--hf-ink);
  background:
    radial-gradient(ellipse 65% 40% at 8% 0%, rgba(190, 18, 60, 0.1), transparent 55%),
    radial-gradient(ellipse 55% 35% at 95% 10%, rgba(15, 118, 110, 0.12), transparent 50%),
    linear-gradient(180deg, var(--hf-field) 0%, var(--hf-field-mint) 55%, #F4FBFF 100%);
  -webkit-font-smoothing: antialiased;
}

.hf-skip {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 100;
  padding: 0.6rem 1rem;
  background: var(--hf-rose);
  color: #fff;
  font-weight: 700;
  text-decoration: none;
}
.hf-skip:focus { left: 0.75rem; top: 0.75rem; }

body.hf-nav-open { overflow: hidden; }
