/*
  Quick Services — Design tokens
  Fuente: Manual de Identidad Quick Services v2.1 (QS-BID-01).
  No inventar valores aquí: todo token viene de una sección específica del manual.
*/

:root {
  /* Color — Manual §06 Paleta de color */
  --qs-magenta: #E2095A;      /* acción / urgencia — CTA, datos clave */
  --qs-cyan: #2BA9E0;         /* dato / técnico — proceso, categorías, estados informativos */
  --qs-black: #0B0B0C;
  --qs-white: #FFFFFF;

  /* Neutros de interfaz — Manual §06 */
  --qs-ink-900: #0B0B0C;
  --qs-ink-700: #3A3A3F;
  --qs-ink-500: #6D6D73;
  --qs-ink-400: #9A9AA0;
  --qs-line-200: #D9D9DC;
  --qs-surface-100: #F2F2F3;
  --qs-paper-000: #FFFFFF;

  /* Opacidades permitidas — Manual §07 */
  --qs-opacity-watermark: 0.12;

  /* Tipografía — Manual §08/§09 */
  --qs-font-display: "Archivo", "Helvetica Neue", Arial, sans-serif;
  --qs-font-mono: "IBM Plex Mono", Consolas, "Courier New", monospace;

  --qs-fs-display: 64px;   --qs-lh-display: 58px;  --qs-fw-display: 900; --qs-ls-display: -0.04em;
  --qs-fs-h1: 40px;        --qs-lh-h1: 44px;       --qs-fw-h1: 800;      --qs-ls-h1: -0.03em;
  --qs-fs-h2: 30px;        --qs-lh-h2: 36px;       --qs-fw-h2: 800;      --qs-ls-h2: -0.02em;
  --qs-fs-h3: 24px;        --qs-lh-h3: 30px;       --qs-fw-h3: 700;
  --qs-fs-h4: 19px;        --qs-lh-h4: 26px;       --qs-fw-h4: 700;
  --qs-fs-body-l: 17px;    --qs-lh-body-l: 26px;   --qs-fw-body: 400;
  --qs-fs-body: 16px;      --qs-lh-body: 24px;
  --qs-fs-caption: 12px;   --qs-lh-caption: 18px;
  --qs-fs-label: 10px;     --qs-lh-label: 16px;    --qs-fw-label: 600;   --qs-ls-label: 0.14em;

  /* Grid — Manual §15 */
  --qs-gutter: 24px;
  --qs-margin-desktop: 40px;
  --qs-margin-mobile: 20px;

  /* Espaciado — escala base 8, Manual §15 */
  --qs-space-1: 8px;
  --qs-space-2: 16px;
  --qs-space-3: 24px;
  --qs-space-4: 40px;
  --qs-space-5: 64px;
  --qs-space-6: 96px;

  /* Radio — Manual §13: esquinas rectas sin excepciones */
  --qs-radius: 0px;
  --qs-border-width: 1.5px;

  /* Botones — Manual §13 */
  --qs-btn-h-s: 36px;
  --qs-btn-h-m: 44px;
  --qs-btn-h-l: 52px;

  /* Motion — tabla de timing, Manual §16 */
  --qs-ease-hover: ease-out;
  --qs-dur-hover: 120ms;
  --qs-ease-focus: linear;
  --qs-dur-focus: 90ms;
  --qs-ease-reveal: cubic-bezier(.16, 1, .3, 1);
  --qs-dur-reveal: 240ms;
  --qs-dur-panel: 320ms;
  --qs-dur-page: 400ms;
  --qs-dur-loader: 900ms;

  /* Líneas de velocidad — Manual §10 */
  --qs-lines-stroke-digital: 4px;
  --qs-lines-stroke-editorial: 8px;
  --qs-lines-stroke-negative: 3px;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --qs-dur-hover: 120ms;
    --qs-dur-reveal: 120ms;
    --qs-dur-panel: 120ms;
    --qs-dur-page: 120ms;
  }
}
