/*
 * LazyConMan — design tokens.
 * Palette: blue-violet ink ground, aqua-cyan + violet accent gradient,
 * signal-green reserved exclusively for live / secure status cues.
 */

/* Self-hosted faces (SIL OFL). Vendored under styles/fonts — no third-party
   requests at runtime, so font-src 'self' covers them with no CSP change. */
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/space-grotesk-500.woff2") format("woff2");
}
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/space-grotesk-700.woff2") format("woff2");
}
@font-face {
  font-family: "Space Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/space-mono-400.woff2") format("woff2");
}
@font-face {
  font-family: "Space Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/space-mono-700.woff2") format("woff2");
}

:root {
  /* Ground + surfaces (blue-violet ink band) */
  --ground: #07090f;
  --surface: #0c1018;
  --surface-2: #11161f;
  --line: #1d2430;
  --line-bright: #2b3647;

  /* Text */
  --text: #e6ebf5;
  --text-dim: #9aa6bd;
  --text-faint: #5d6982;

  /* Accents */
  --accent: #2fe4d6;        /* aqua-cyan */
  --accent-2: #7b61ff;      /* violet */
  --signal: #54f0a8;        /* live / secure — used sparingly */
  --danger: #ff6b6b;        /* the "old way" / blocked */

  --accent-grad: linear-gradient(115deg, var(--accent) 0%, var(--accent-2) 100%);
  --accent-glow: 0 0 0 1px rgba(47, 228, 214, 0.18), 0 14px 40px -12px rgba(47, 228, 214, 0.35);

  /* Type — vendored display + mono (self-hosted woff2), system body. */
  --font-display: "Space Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-body: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
  --font-mono: "Space Mono", ui-monospace, "Cascadia Code", Consolas, monospace;

  /* Type scale */
  --step--1: clamp(0.78rem, 0.74rem + 0.2vw, 0.86rem);
  --step-0: clamp(0.95rem, 0.9rem + 0.25vw, 1.05rem);
  --step-1: clamp(1.2rem, 1.05rem + 0.7vw, 1.5rem);
  --step-2: clamp(1.6rem, 1.3rem + 1.5vw, 2.3rem);
  --step-3: clamp(2rem, 1.5rem + 2.6vw, 3.6rem);
  --step-4: clamp(2.3rem, 1.4rem + 4.2vw, 5.6rem);

  /* Spacing rhythm */
  --space-xs: 0.5rem;
  --space-s: 0.875rem;
  --space-m: 1.5rem;
  --space-l: 2.5rem;
  --space-xl: 4.25rem;
  --space-2xl: 8.5rem;

  --radius: 14px;
  --radius-s: 8px;
  --maxw: 1180px;

  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
}
