@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/aguacol/fonts/outfit-latin.woff2") format("woff2");
}

:root {
  color-scheme: light;

  /* Primitivos de marca */
  --aguacol-brand-navy-950: #030326;
  --aguacol-brand-navy-900: #05053c;
  --aguacol-brand-blue-800: #001699;
  --aguacol-brand-blue-700: #002bbf;
  --aguacol-brand-blue-600: #001496;
  --aguacol-brand-cyan-500: #009ff7;
  --aguacol-brand-cyan-400: #00c7ff;
  --aguacol-brand-green-500: #61bc00;
  --aguacol-neutral-0: #fff;
  --aguacol-neutral-50: #f6f7fd;
  --aguacol-neutral-100: #f3f5fb;
  --aguacol-neutral-200: #dde3f0;
  --aguacol-neutral-300: #cbd5e1;
  --aguacol-neutral-500: #69727d;
  --aguacol-neutral-700: #474747;
  --aguacol-neutral-800: #333;
  --aguacol-neutral-900: #1f2f42;

  /* Semánticos: el valor oscuro se redefine en theme-dark.css */
  --aguacol-bg-app: var(--aguacol-neutral-50);
  --aguacol-bg-surface: var(--aguacol-neutral-0);
  --aguacol-bg-elevated: var(--aguacol-neutral-0);
  --aguacol-bg-navigation: #edf2fa;
  --aguacol-bg-card: var(--aguacol-neutral-0);
  --aguacol-bg-field: var(--aguacol-neutral-0);
  --aguacol-bg-subtle: var(--aguacol-neutral-100);
  --aguacol-text-primary: var(--aguacol-neutral-900);
  --aguacol-text-secondary: #55657a;
  --aguacol-text-disabled: #8895a7;
  --aguacol-border: var(--aguacol-neutral-200);
  --aguacol-divider: #e7ebf4;
  --aguacol-action-primary: var(--aguacol-brand-blue-700);
  --aguacol-action-primary-hover: var(--aguacol-brand-blue-800);
  --aguacol-action-secondary: #e8edff;
  --aguacol-action-destructive: #b42318;
  --aguacol-focus: var(--aguacol-brand-cyan-500);
  --aguacol-selection: #d9f3ff;
  --aguacol-success: #287a00;
  --aguacol-warning: #9a6700;
  --aguacol-error: #b42318;
  --aguacol-info: #006da8;
  --aguacol-overlay: rgb(3 3 38 / 64%);
  --aguacol-gradient-brand: linear-gradient(135deg, #001699 0%, #00c7ff 100%);
  --aguacol-shadow-sm: 0 1px 2px rgb(31 47 66 / 7%);
  --aguacol-shadow-md: 0 8px 24px rgb(31 47 66 / 10%);
  --aguacol-shadow-lg: 0 20px 48px rgb(31 47 66 / 16%);
  --aguacol-radius-control: 9px;
  --aguacol-radius-card: 14px;
  --aguacol-radius-dialog: 16px;
  --aguacol-radius-pill: 999px;
  --aguacol-space-1: 4px;
  --aguacol-space-2: 8px;
  --aguacol-space-3: 12px;
  --aguacol-space-4: 16px;
  --aguacol-space-5: 20px;
  --aguacol-space-6: 24px;
  --aguacol-space-8: 32px;
  --aguacol-space-10: 40px;
  --aguacol-control-height: 34px;
  --aguacol-control-height-touch: 44px;
  --aguacol-content-max: 1440px;
  --aguacol-font-family: "Outfit", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --aguacol-duration-fast: 120ms;
  --aguacol-duration-normal: 180ms;
  --aguacol-ease: cubic-bezier(0.2, 0, 0, 1);
  --aguacol-z-navigation: 100;
  --aguacol-z-overlay: 1040;
}

html,
body,
button,
input,
select,
textarea {
  font-family: var(--aguacol-font-family);
}

::selection {
  color: var(--aguacol-text-primary);
  background: var(--aguacol-selection);
}

:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--aguacol-focus) 55%, transparent);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
