@font-face {
	font-family: Quentin;
	src: url("/static/fonts/Quentin.woff2") format("woff2");
	font-display: swap;
}

:root {
	color-scheme: light;

	/* Color */
	--bg: #f6f8fa;
	--bg-sunken: #eff2f0;
	--surface: #ffffff;
	--surface-2: #f0f0f0;
	--surface-pale: #eaf7f4;
	--ink: #17212b;
	--ink-soft: #5c6b7a;
	--ink-faint: #8b958f;
	--line: #e3e8ed;
	--line-strong: #c7cfc9;
	--accent: #95d30f;
	--accent-ink: #212121;
	--accent-hover: #7fb50c;
	--accent-soft: #eaf7f4;
	--accent-light: #b0d169;
	--ink-on-dark: #eaf7f4;
	--teal: #07c196;
	--navy: #0e2e50;
	--navy-deep: #081d36;
	--warn-accent: #fc9f32;
	--ok: #2f7d4f;
	--warn: #c2650d;
	--danger: #b3261e;
	--focus: #95d30f;
	--overlay-navy: linear-gradient(180deg, transparent 15%, rgba(8, 29, 54, .92) 100%);

	/* Visor */
	--vr-bg: #0b0f0d;
	--vr-glass: color-mix(in srgb, #ffffff 8%, transparent);
	--vr-glass-line: color-mix(in srgb, #ffffff 16%, transparent);
	--vr-ink: #f2f5f3;
	--vr-ink-soft: #b7c2bc;
	--vr-shadow: 0 8px 30px rgba(0, 0, 0, .45);

	/* Espacio */
	--s-1: .25rem;
	--s-2: .5rem;
	--s-3: .75rem;
	--s-4: 1rem;
	--s-5: 1.5rem;
	--s-6: 2rem;
	--s-7: 3rem;

	/* Radio */
	--r-xs: .25rem;
	--r-sm: .375rem;
	--r-md: .625rem;
	--r-lg: 1rem;
	--r-full: 999px;

	/* Sombra */
	--shadow-1: 0 1px 2px rgba(16, 22, 19, .06), 0 1px 3px rgba(16, 22, 19, .08);
	--shadow-2: 0 4px 10px rgba(16, 22, 19, .08), 0 8px 20px rgba(16, 22, 19, .10);
	--shadow-3: 0 10px 24px rgba(16, 22, 19, .10), 0 24px 48px rgba(16, 22, 19, .12);
	--shadow-hud: 0 8px 30px rgba(0, 0, 0, .35);

	/* Tipo */
	--font-sans: Roboto, system-ui, -apple-system, "Segoe UI", sans-serif;
	--font-display: "Bricolage Grotesque", system-ui, -apple-system, "Segoe UI", sans-serif;
	--font-script: Quentin, cursive;
	--fs-xs: .75rem;
	--fs-sm: .875rem;
	--fs-md: 1rem;
	--fs-lg: 1.125rem;
	--fs-xl: 1.375rem;
	--fs-2xl: 1.75rem;
	--fs-3xl: 2.25rem;
	--fs-4xl: 3rem;
	--fw-regular: 400;
	--fw-medium: 500;
	--fw-bold: 700;
	--lh-tight: 1.15;
	--lh-body: 1.55;
	--tracking-tight: -0.02em;

	/* Layout */
	--container: 1100px;
	--container-wide: 1400px;
	--card-min: 260px;
	--nav-h: 64px;

	/* Movimiento */
	--ease: cubic-bezier(.2, .8, .2, 1);
	--dur-1: 120ms;
	--dur-2: 240ms;
	--dur-3: 600ms;

	/* Capas */
	--z-hud: 10;
	--z-panel: 20;
	--z-modal: 30;
}
