/* Poppins Latin (Google Fonts v24), SIL OFL1.1: fonts/OFL-Poppins.txt.
   Copia local sin modificación: Ñ, tildes y signos españoles incluidos. */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./fonts/poppins-latin-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(./fonts/poppins-latin-500.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(./fonts/poppins-latin-600.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(./fonts/poppins-latin-700.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(./fonts/poppins-latin-800.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* ============================================================================
   ¡Ñam! · TOKENS COMPARTIDOS (2026-09-06)
   Una sola hoja para las cinco caras: cliente (/pedir), aliado (/restaurante),
   domiciliario (/domi), operación (/op) y la puerta (/acceso).

   Por qué existe: cada app tenía su propio gris de texto (#6B6B74 / #71717A /
   #8A8A92 / #A1A1AA), seis radios distintos y los colores de estado (--ok,
   --warn, --info) —que nacieron para FONDOS— se usaban como tinta de texto y
   daban 1,9–3,3:1. Cada arreglo de contraste había que hacerlo cuatro veces y
   por eso se quedaba a medias (auditoría 2026-09-06).

   Reglas:
   · Todo par fondo/tinta de aquí mide ≥ 4,5:1 (WCAG AA texto normal).
   · Los --nam-*-bg son para fondos; los --nam-*-ink para texto. Nunca al revés.
   · Cada página conserva sus variables cortas (--r, --gray, …) apuntando aquí
     con un valor de respaldo, así sigue funcionando aunque esta hoja no cargue.
   ============================================================================ */
:root{
  /* Marca */
  --nam-r:#D83429;        /* rojo ¡Ñam! · 4,7:1 con blanco: solo texto ≥14px bold o fondos */
  --nam-rd:#B71C1C;       /* vino · 6,6:1 con blanco: el rojo para texto pequeño */
  --nam-r-dark:#FF7A76;   /* rojo para TEXTO sobre fondo oscuro · 6,5:1 */
  --nam-crema:#FBEEE7;

  /* Tema claro (cliente, aliado, acceso) */
  --nam-ink:#1A1A1D;
  --nam-ink-2:#52525B;    /* etiquetas y subtítulos · 7,2:1 sobre #F6F6F7 */
  --nam-gray:#5F5F69;     /* gris de apoyo · 5,8:1 sobre #F6F6F7, 6,3:1 sobre blanco */
  --nam-soft:#F6F6F7;
  --nam-card:#FFFFFF;
  --nam-line:#ECECEE;
  --nam-line-2:#D9D9DE;

  /* Tema oscuro (domi, operación) */
  --nam-d-bg:#0F0F11;
  --nam-d-card:#1B1B1F;
  --nam-d-card-2:#232328;
  --nam-d-line:#2C2C31;
  --nam-d-txt:#F2F2F3;
  --nam-d-gray:#A1A1AA;   /* 6,7:1 sobre la tarjeta oscura */
  --nam-d-dim:#8F8F98;    /* el gris más tenue permitido · 5,4:1 */

  /* Estados del pedido · par fondo/tinta · TEMA CLARO */
  --st-pendiente-bg:#EDE9FE; --st-pendiente-ink:#5B21B6;   /* 7,6:1 */
  --st-nueva-bg:#DBEAFE;     --st-nueva-ink:#1D4ED8;       /* 5,5:1 */
  --st-asignada-bg:#FEF3C7;  --st-asignada-ink:#92400E;    /* 6,4:1 (también En curso) */
  --st-entregada-bg:#DCFCE7; --st-entregada-ink:#166534;   /* 6,5:1 (también Listo) */
  --st-cancelada-bg:#FEE2E2; --st-cancelada-ink:#991B1B;   /* 6,8:1 */

  /* Estados · TEMA OSCURO (tinta clara sobre el mismo tinte al 16–18 %) */
  --st-d-pendiente-ink:#D8B4FE;
  --st-d-nueva-ink:#93C5FD;
  --st-d-asignada-ink:#FBBF24;
  --st-d-entregada-ink:#4ADE80;
  --st-d-cancelada-ink:#FCA5A5;

  /* Confirmaciones (botones sólidos). El verde #22C55E con texto blanco da
     2,3:1: en claro se usa el verde-700 con blanco, en oscuro el verde de
     siempre con tinta casi negra (receta del panel del domi, 6,8:1). */
  --nam-ok:#22C55E;      --nam-ok-ink:#0B2A14;      /* oscuro: fondo + tinta */
  --nam-ok-solid:#15803D;                           /* claro: fondo, texto blanco · 5,0:1 */
  --nam-warn:#F59E0B;    --nam-warn-ink:#1A1A1D;    /* ámbar con tinta oscura · 8,1:1 */
  --nam-warn-solid:#B45309;                         /* ámbar con texto blanco · 5,0:1 */
  --nam-info:#3B82F6;    --nam-info-solid:#1D4ED8;  /* azul con blanco · 6,7:1 */
  --nam-gold:#F5A623;    --nam-gold-ink:#1A1A1D;    /* estrellas/calificar · 8,6:1 */

  /* Forma */
  --nam-rad-s:12px; --nam-rad:16px; --nam-rad-l:22px; --nam-pill:999px;
  --nam-sh:0 2px 12px rgba(20,20,30,.06);
  --nam-sh-2:0 6px 22px rgba(20,20,30,.10);

  /* Tipografía (Poppins) · escala 11 / 12,5 / 14 / 16 / 19 / 24. Nada por debajo de 11 px. */
  --nam-fs-1:11px; --nam-fs-2:12.5px; --nam-fs-3:14px; --nam-fs-4:16px; --nam-fs-5:19px; --nam-fs-6:24px;

  /* Toques */
  --nam-tap:48px; --nam-tap-l:56px; --nam-tap-xl:60px;
}

/* Foco visible en las cuatro interfaces, incluso cuando el estilo local quita outline. */
:is(button,a,summary,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid #2563EB!important;outline-offset:3px;
}

/* Respuesta táctil estable: no animar dimensiones ni desplazar el contenido. */
button, a, summary{touch-action:manipulation}
button{font-family:inherit}
button:disabled{cursor:default;opacity:.65}
button[aria-busy="true"]{cursor:wait}
button svg, a svg{flex-shrink:0}
input,textarea,select{scroll-margin-block:100px}
#pq-x{white-space:pre-line}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
