/* ═══════════════════════════════════════════════════════════════
   ETHOS — tokens
   Shared design language for the kvmx.ru apps.
   ═══════════════════════════════════════════════════════════════ */

@font-face {
  font-family: 'Geist';
  src: url('/fonts/Geist-Variable.woff2') format('woff2');
  font-weight: 100 900; font-display: swap;
}
@font-face {
  font-family: 'Geist Mono';
  src: url('/fonts/GeistMono-Variable.woff2') format('woff2');
  font-weight: 100 900; font-display: swap;
}

:root {
  /* ── neutral ramp — warm, brown-tinted (dark, default) ── */
  --bg-0: #14110D;
  --bg-1: #1B1712;
  --bg-2: #221D17;
  --bg-3: #2C261D;
  --bg-4: #372F24;

  --line:    rgba(244, 234, 220, 0.09);
  --line-hi: rgba(244, 234, 220, 0.16);

  --text-hi:      #F4EEE4;
  --text-mid:     #B4AA98;
  --text-lo:      #756C5C;
  --text-machine: #9C917D;

  /* ── type ── */
  --sans: 'Geist', -apple-system, system-ui, sans-serif;
  --mono: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, monospace;

  /* ── motion ── */
  --ease: cubic-bezier(0.2, 0, 0, 1);
  --fast: 130ms;
  --med:  170ms;

  /* ── radii ── */
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 18px;
  --r-xl: 24px;

  /* ── elevation ── */
  --shadow-soft: 0 2px 8px rgba(0,0,0,0.35), 0 12px 32px rgba(0,0,0,0.28);
  --shadow-lift: 0 4px 14px rgba(0,0,0,0.40), 0 20px 48px rgba(0,0,0,0.34);

  /* ── accent slot (fallback) ── */
  --accent:       var(--text-mid);
  --accent-hi:    var(--text-hi);
  --accent-dim:   rgba(244, 234, 220, 0.10);
  --accent-line:  rgba(244, 234, 220, 0.24);
  --accent-glow:  rgba(244, 234, 220, 0.14);

  /* ── status (shared across apps) ── */
  --warn: #E8B84B;
  --danger: #D95C5C;
}

/* ── light theme ── */
[data-theme="light"] {
  --bg-0: #F1ECE3;
  --bg-1: #EAE4D8;
  --bg-2: #E2DACB;
  --bg-3: #D7CDBB;
  --bg-4: #C9BDA7;

  --line:    rgba(28, 22, 14, 0.10);
  --line-hi: rgba(28, 22, 14, 0.18);

  --text-hi:      #1B1712;
  --text-mid:     #544C3E;
  --text-lo:      #877E6C;
  --text-machine: #6B6252;

  --shadow-soft: 0 2px 8px rgba(60,45,25,0.10), 0 12px 32px rgba(60,45,25,0.08);
  --shadow-lift: 0 4px 14px rgba(60,45,25,0.12), 0 20px 48px rgba(60,45,25,0.10);
}

/* ═══════════════════════════════════════════════════════════════
   inference-router — steel blue · diamond motif
   ═══════════════════════════════════════════════════════════════ */
[data-app="router"] {
  --accent:      #5699B8;
  --accent-hi:   #6EB0CE;
  --accent-dim:  rgba(86, 153, 184, 0.14);
  --accent-line: rgba(86, 153, 184, 0.32);
  --accent-glow: rgba(86, 153, 184, 0.22);

  /* motif hook: network routing gradient */
  --np-graph: radial-gradient(120% 120% at 30% 20%, #5699B8 0%, #3A6F8A 40%, #1C4552 70%, #14262E 100%);
}
