/* LEXERY tokens — site theme (light, technical) */
@font-face { font-family: 'Inter'; src: url('../fonts/Inter_18pt-Light.ttf') format('truetype'); font-weight: 300; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('../fonts/Inter_18pt-Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('../fonts/Inter_18pt-Medium.ttf') format('truetype'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('../fonts/Inter_18pt-SemiBold.ttf') format('truetype'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('../fonts/Inter_18pt-Bold.ttf') format('truetype'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'Inter Display'; src: url('../fonts/Inter_28pt-Light.ttf') format('truetype'); font-weight: 300; font-display: swap; }
@font-face { font-family: 'Inter Display'; src: url('../fonts/Inter_28pt-Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Inter Display'; src: url('../fonts/Inter_28pt-Medium.ttf') format('truetype'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'Inter Display'; src: url('../fonts/Inter_28pt-SemiBold.ttf') format('truetype'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Inter Display'; src: url('../fonts/Inter_28pt-Bold.ttf') format('truetype'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'Inter Display'; src: url('../fonts/Inter_28pt-Black.ttf') format('truetype'); font-weight: 900; font-display: swap; }

:root {
  --bg:        #FFFFFF;
  --bg-1:      #F7F9FC;
  --bg-2:      #EEF3F8;
  --bg-3:      #E3EAF3;
  --line:      rgba(16,24,40,0.10);
  --line-2:    rgba(16,24,40,0.16);
  --line-3:    rgba(16,24,40,0.26);
  --fg:        #101828;
  --fg-2:      #475467;
  --fg-3:      #667085;
  --fg-4:      #98A2B3;

  --accent:        #1E6FC7;
  --accent-bright: #2E8CF0;
  --accent-glow:   #5AA9FF;

  --green: #11885A;
  --amber: #B7791F;
  --red:   #D92D20;

  --font: 'Inter', system-ui, -apple-system, sans-serif;
  --font-display: 'Inter Display', 'Inter', system-ui, sans-serif;
  --font-mono: ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace;

  --r-sm: 6px;
  --r-md: 8px;
  --r-lg: 12px;
  --r-xl: 18px;

  --ease: cubic-bezier(0.19, 1, 0.22, 1);
}

* { box-sizing: border-box; }
html {
  min-height: 100%;
  margin: 0;
  padding: 0;
  background: var(--bg);
  overscroll-behavior: none;
}
body {
  min-height: 100dvh;
  margin: 0;
  padding: 0;
  overscroll-behavior: none;
}
body {
  background: var(--bg);
  color: var(--fg);
  font-family: var(--font);
  font-size: 15px;
  line-height: 1.55;
  letter-spacing: 0.005em;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
::selection { background: var(--accent); color: white; }

/* Subtle scrollbars */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: rgba(16,24,40,0.16); border-radius: 8px; }
::-webkit-scrollbar-track { background: transparent; }

/* Shared "noise" texture via SVG, very subtle */
.noise::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.4'/></svg>");
  opacity: 0.03; mix-blend-mode: overlay;
}
