/* ==========================================================================
   FLASHPOINT PCBA — design tokens
   Language: "Fab Drawing / Ignition"
   Two surfaces (graphite machine side / drafting-paper document side),
   copper + ENIG + silkscreen materials, ignition orange as the single brand accent.
   Authored for this site only. No tokens imported from any other site.
   ========================================================================== */

:root {
  /* ---- raw materials ------------------------------------------------ */
  --c-graphite-950: #07090A;
  --c-graphite-900: #0C1012;
  --c-graphite-800: #121A1D;
  --c-graphite-700: #182226;
  --c-graphite-600: #223035;
  --c-graphite-500: #33454B;

  --c-paper:        #F4F2EC;
  --c-paper-2:      #EBE8DF;
  --c-paper-3:      #E1DDD1;
  --c-white:        #FCFCFA;

  --c-ink-900:      #12171A;
  --c-ink-700:      #2B3538;
  --c-ink-500:      #5C676B;
  --c-ink-400:      #7C878B;
  --c-ink-300:      #A7B0B3;

  --c-ignite:       #FF5A1E;
  --c-ignite-deep:  #C93F0B;
  --c-ignite-soft:  #FFE7DC;
  --c-copper:       #C87F45;
  --c-gold:         #C79A28;
  --c-pass:         #1F8A5B;
  --c-pass-soft:    #DFF1E7;

  /* ---- surfaces (semantic; a dark band re-declares these locally) ---- */
  --bg:             var(--c-paper);
  --bg-alt:         var(--c-paper-2);
  --bg-raised:      var(--c-white);
  --fg:             var(--c-ink-900);
  --fg-muted:       var(--c-ink-500);
  --fg-faint:       var(--c-ink-400);
  --line:           #D6D2C4;
  --line-strong:    #BFB9A8;
  --accent:         var(--c-ignite);
  --accent-ink:     #FFFFFF;
  --focus:          var(--c-ignite);

  /* ---- type -------------------------------------------------------- */
  --font-sans: "Archivo", "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;

  --fs-display: clamp(2.45rem, 1.55rem + 3.3vw, 4.15rem);
  --fs-h1:      clamp(2rem, 1.4rem + 2.4vw, 3.15rem);
  --fs-h2:      clamp(1.6rem, 1.15rem + 1.65vw, 2.35rem);
  --fs-h3:      clamp(1.15rem, 1.03rem + 0.45vw, 1.4rem);
  --fs-h4:      1.0625rem;
  --fs-lead:    clamp(1.1rem, 1.03rem + 0.32vw, 1.28rem);
  --fs-body:    1.0625rem;
  --fs-sm:      0.9375rem;
  --fs-xs:      0.8125rem;
  --fs-micro:   0.75rem;

  --lh-tight:   1.04;
  --lh-snug:    1.22;
  --lh-body:    1.62;
  --track-tight: -0.018em;
  --track-wide:  0.14em;

  --w-prose:    68ch;

  /* ---- space / layout --------------------------------------------- */
  --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: 4rem;
  --sp-9: 5.5rem;   --sp-10: 7rem;

  --w-container: 1240px;
  --w-wide:      1480px;
  --w-narrow:    820px;
  --gutter:      clamp(1.15rem, 3.2vw, 2.75rem);
  --sec-y:       clamp(3.25rem, 5.6vw, 6rem);
  --sec-y-tight: clamp(2.25rem, 3.6vw, 3.75rem);

  --r-sharp: 2px;
  --r-soft:  5px;
  --r-pill:  999px;

  --sh-1: 0 1px 0 rgba(12,16,18,.05), 0 18px 40px -30px rgba(12,16,18,.45);
  --sh-2: 0 2px 4px -2px rgba(12,16,18,.18), 0 28px 60px -34px rgba(12,16,18,.5);

  --ease: cubic-bezier(.2,.62,.2,1);
  --dur-1: 140ms;
  --dur-2: 280ms;

  --nav-h: 68px;
}

/* Dark band: same components, machine-side materials. */
.band--dark,
.band--graphite {
  --bg:          var(--c-graphite-800);
  --bg-alt:      var(--c-graphite-900);
  --bg-raised:   var(--c-graphite-700);
  --fg:          #E9EEF0;
  --fg-muted:    #A6B1B5;
  --fg-faint:    #7E8A8E;
  --line:        #27343A;
  --line-strong: #3A4A50;
  --accent:      var(--c-ignite);
  --accent-ink:  #150800;
  color-scheme: dark;
}

.band--paper-2 { --bg: var(--c-paper-2); --bg-alt: var(--c-paper-3); }

/* Utility surface for a small dark inset inside a light page. */
.is-dark {
  --bg: var(--c-graphite-800); --fg: #E9EEF0; --fg-muted: #A6B1B5;
  --line: #27343A; --bg-raised: var(--c-graphite-700); background: var(--bg); color: var(--fg);
}

@media (max-width: 900px) {
  :root {
    /* The acceptance gate measures rendered text at 375px: nothing below 14px. */
    --fs-xs: 0.875rem;
    --fs-micro: 0.875rem;
  }
}
