/* Kit de diseño de Bufete by OnePDA: tokens (0.5.19). Todo valor de diseño vive aquí; kit.css y los estilos de cada pantalla solo los usan.
 * Tema: claro por defecto; «Dispositivo» lo resuelve antes de pintar (data-tema="claro|oscuro" en <html>, ver vendor/onepda-modulos/modulos/prefs/antes-de-pintar.js);
 * sin ese atributo, el navegador decide con prefers-color-scheme. Oscuro = grafito, nunca negro puro.
 * Un solo acento: --k-acento-tono (y --k-acento-croma) lo cambia el despacho; todo lo demás se deriva. El acento va SOLO en la acción principal, lo seleccionado y los enlaces. */

/* Tipografía: Space Grotesk para todo; Space Mono solo para cifras y códigos. Sin serif. */
@font-face { font-family: "Space Grotesk"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../vendor/onepda-modulos/modulos/marca/fuentes/space-grotesk-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02FF, U+1E00-1EFF, U+2020-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Space Grotesk"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../vendor/onepda-modulos/modulos/marca/fuentes/space-grotesk-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Space Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("fuentes/space-mono-latin-ext-400.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Space Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("fuentes/space-mono-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: "Space Mono"; font-style: normal; font-weight: 700; font-display: swap; src: url("fuentes/space-mono-latin-ext-700.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Space Mono"; font-style: normal; font-weight: 700; font-display: swap; src: url("fuentes/space-mono-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; }

/* ---- Valores que no cambian con el tema ---- */
:root {
  --k-fuente: "Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
  --k-mono: "Space Mono", ui-monospace, "SF Mono", Menlo, monospace;

  /* Tamaños en rem: siguen el tamaño de letra del dispositivo y «Texto más grande» (que sube la raíz). Ninguno baja de 15 px. */
  --k-t-titulo: 1.875rem;        /* 30 px, título de página */
  --k-t-titulo-movil: 1.5rem;    /* 24 px */
  --k-t-seccion: 1.25rem;        /* 20 px, título de sección */
  --k-t-cuerpo: 1.0625rem;       /* 17 px */
  --k-t-sec: 0.9375rem;          /* 15 px, texto secundario: nunca menos */
  --k-t-boton: 1rem;             /* 16 px */
  --k-t-cifra: 0.9375rem;        /* 15 px, Space Mono en tablas y filas */
  --k-t-cifra-grande: 1.25rem;   /* 20 px, número de expediente en el encabezado */
  --k-lh-cuerpo: 1.5;
  --k-lh-titulo: 1.15;
  --k-tr-titulo: -0.024em;       /* apretado en títulos grandes */
  --k-tr-seccion: -0.012em;

  /* Espacio sobre una base de 4 px, en rem */
  --k-e-1: 0.25rem; --k-e-2: 0.5rem; --k-e-3: 0.75rem; --k-e-4: 1rem; --k-e-5: 1.25rem; --k-e-6: 1.5rem;
  --k-e-8: 2rem; --k-e-10: 2.5rem; --k-e-12: 3rem; --k-e-16: 4rem;

  /* Esquinas: tres pasos, cada nivel anidado baja uno */
  --k-r-1: 6px; --k-r-2: 8px; --k-r-3: 12px; --k-r-4: 16px;

  /* Movimiento: corto y sin rebote */
  --k-dur: 180ms; --k-dur-rapida: 120ms; --k-dur-panel: 220ms;
  --k-ease: cubic-bezier(0.2, 0.7, 0.2, 1);

  /* Medidas */
  --k-objetivo: 44px;
  --k-rail-ancho: 248px; --k-rail-ancho-cerrado: 76px;
  --k-barra-alto: 80px; --k-tabbar-alto: 64px; --k-ancho-pagina: 1120px;
  --k-linea-ancho: 1px;
}
[data-texto="grande"] { --k-t-boton: 1.0625rem; }

/* ---- Claro (por defecto): fondo blanco cálido, superficies blancas, tinta casi negra ---- */
:root {
  color-scheme: light;
  --k-acento-tono: 265; --k-acento-croma: 0.13;                    /* azul tinta profundo; el despacho puede elegir otro tono */
  --k-fondo: #f6f5f2; --k-superficie: #ffffff; --k-superficie-2: #f1f0ec; --k-superficie-3: #e8e6e0;
  --k-tinta: #1a1a18; --k-tinta-2: #57564f; --k-tinta-3: #6b6a63;  /* 17:1, 7.4:1, 5.4:1 sobre blanco */
  --k-linea: #e7e5df; --k-linea-fuerte: #cfcdc5;                   /* línea fina de 1 px; borde de controles */
  --k-acento: oklch(0.38 var(--k-acento-croma) var(--k-acento-tono));
  --k-acento-hover: oklch(0.31 var(--k-acento-croma) var(--k-acento-tono));
  --k-acento-suave: oklch(0.958 calc(var(--k-acento-croma) * 0.13) var(--k-acento-tono));
  --k-sobre-acento: #ffffff;
  --k-foco: #1a1a18;
  --k-rojo: #b42318;  --k-rojo-marca: #d92d20;  --k-rojo-suave: #fdeeec;      /* hoy o vencido */
  --k-ambar: #8a5200; --k-ambar-marca: #c47a00;  --k-ambar-suave: #fbf0da;    /* próximos días */
  --k-verde: #1b6e43; --k-verde-marca: #2e9d63;  --k-verde-suave: #e4f2ea;    /* hecho */
  --k-esqueleto: #ebe9e3;
  --k-materia-penal: #8b5a55; --k-materia-civil: #4c687d; --k-materia-comercial: #716184; --k-materia-cobro: #7a653d; --k-materia-laboral: #536f58; --k-materia-familia: #8b5d73; --k-materia-pensiones: #80604b; --k-materia-contencioso: #526f78; --k-materia-constitucional: #665d86; --k-materia-agrario: #637547; --k-materia-concursal: #78616c; --k-materia-transito: #756850; --k-materia-notarial: #596b62; --k-materia-otra: #686862;
  --k-escrim: rgb(26 26 24 / 0.34);
  --k-sombra-flota: 0 1px 2px rgb(26 26 24 / 0.06), 0 14px 36px -8px rgb(26 26 24 / 0.2);
}

/* ---- Oscuro: grafito (no negro), la misma jerarquía ---- */
:root[data-tema="oscuro"] {
  color-scheme: dark;
  --k-fondo: #161615; --k-superficie: #1f1f1d; --k-superficie-2: #272725; --k-superficie-3: #30302d;
  --k-tinta: #eeede9; --k-tinta-2: #b7b6af; --k-tinta-3: #94938c;
  --k-linea: #2c2c29; --k-linea-fuerte: #42423e;
  --k-acento: oklch(0.8 calc(var(--k-acento-croma) * 0.7) var(--k-acento-tono));
  --k-acento-hover: oklch(0.86 calc(var(--k-acento-croma) * 0.6) var(--k-acento-tono));
  --k-acento-suave: oklch(0.31 calc(var(--k-acento-croma) * 0.45) var(--k-acento-tono));
  --k-sobre-acento: #101114;
  --k-foco: #eeede9;
  --k-rojo: #ff9087; --k-rojo-marca: #f0645c; --k-rojo-suave: #3b2321;
  --k-ambar: #f0b84f; --k-ambar-marca: #e0a030; --k-ambar-suave: #382d17;
  --k-verde: #6fd09a; --k-verde-marca: #4cb87e; --k-verde-suave: #1c3225;
  --k-esqueleto: #2b2b28;
  --k-materia-penal: #e3aaa2; --k-materia-civil: #a8c8df; --k-materia-comercial: #c8b6dd; --k-materia-cobro: #d6bd82; --k-materia-laboral: #afd3ae; --k-materia-familia: #e2afc5; --k-materia-pensiones: #dcb99b; --k-materia-contencioso: #a9cdd5; --k-materia-constitucional: #c5bbed; --k-materia-agrario: #c1d990; --k-materia-concursal: #dbbbc9; --k-materia-transito: #d4c38d; --k-materia-notarial: #b7d0c2; --k-materia-otra: #c2c1bb;
  --k-escrim: rgb(0 0 0 / 0.56);
  --k-sombra-flota: 0 1px 2px rgb(0 0 0 / 0.4), 0 16px 40px -8px rgb(0 0 0 / 0.55);
}
/* Sin atributo de tema, el dispositivo decide (mismos valores que arriba). */
@media (prefers-color-scheme: dark) {
  :root:not([data-tema]) {
    color-scheme: dark;
    --k-fondo: #161615; --k-superficie: #1f1f1d; --k-superficie-2: #272725; --k-superficie-3: #30302d;
    --k-tinta: #eeede9; --k-tinta-2: #b7b6af; --k-tinta-3: #94938c;
    --k-linea: #2c2c29; --k-linea-fuerte: #42423e;
    --k-acento: oklch(0.8 calc(var(--k-acento-croma) * 0.7) var(--k-acento-tono));
    --k-acento-hover: oklch(0.86 calc(var(--k-acento-croma) * 0.6) var(--k-acento-tono));
    --k-acento-suave: oklch(0.31 calc(var(--k-acento-croma) * 0.45) var(--k-acento-tono));
    --k-sobre-acento: #101114;
    --k-foco: #eeede9;
    --k-rojo: #ff9087; --k-rojo-marca: #f0645c; --k-rojo-suave: #3b2321;
    --k-ambar: #f0b84f; --k-ambar-marca: #e0a030; --k-ambar-suave: #382d17;
    --k-verde: #6fd09a; --k-verde-marca: #4cb87e; --k-verde-suave: #1c3225;
    --k-esqueleto: #2b2b28;
    --k-materia-penal: #e3aaa2; --k-materia-civil: #a8c8df; --k-materia-comercial: #c8b6dd; --k-materia-cobro: #d6bd82; --k-materia-laboral: #afd3ae; --k-materia-familia: #e2afc5; --k-materia-pensiones: #dcb99b; --k-materia-contencioso: #a9cdd5; --k-materia-constitucional: #c5bbed; --k-materia-agrario: #c1d990; --k-materia-concursal: #dbbbc9; --k-materia-transito: #d4c38d; --k-materia-notarial: #b7d0c2; --k-materia-otra: #c2c1bb;
    --k-escrim: rgb(0 0 0 / 0.56);
    --k-sombra-flota: 0 1px 2px rgb(0 0 0 / 0.4), 0 16px 40px -8px rgb(0 0 0 / 0.55);
  }
}

/* ---- Color del despacho: UN solo token de tono (y, para el grafito, el croma) ---- */
:root[data-acento="verde"]    { --k-acento-tono: 160; --k-acento-croma: 0.095; }
:root[data-acento="granate"]  { --k-acento-tono: 12;  --k-acento-croma: 0.14; }
:root[data-acento="petroleo"] { --k-acento-tono: 205; --k-acento-croma: 0.085; }
:root[data-acento="grafito"]  { --k-acento-tono: 260; --k-acento-croma: 0.015; }
