/* house.css: capa de la casa sobre Tabler 1.6.1 (ver house/README.md).
   Solo variables --house-* y correcciones medidas. Va DESPUÉS de tabler.min.css.
   var() sin fallback: si falta Tabler, que se note. */

/* D1 tipografía (decidido 2026-10-02, opción a): la de 1.6.1, fuente del
   sistema y fw-bold 700, sin override. Aquí no se escribe nada a propósito. */

:root,
[data-bs-theme] {
  /* D2 color por tipo de dato (decidido 2026-10-02, opción c): DATAHUB + identificador azure + url cyan */
  --house-tipo-medida: var(--tblr-orange);
  --house-tipo-categoria: var(--tblr-purple);
  --house-tipo-fecha: var(--tblr-blue);
  --house-tipo-geo: var(--tblr-green);
  --house-tipo-dueno: var(--tblr-red);
  --house-tipo-identificador: var(--tblr-azure);
  --house-tipo-url: var(--tblr-cyan);
  --house-tipo-texto: var(--tblr-secondary);

  /* Color por significado (gráficas, estados) */
  --house-bien: var(--tblr-success);
  --house-mal: var(--tblr-danger);
  --house-aviso: var(--tblr-warning);
  --house-neutro: var(--tblr-secondary);
  --house-principal: var(--tblr-primary);
  --house-frio: var(--tblr-azure);
  --house-calor: var(--tblr-orange);
  --house-rampa-1: var(--tblr-azure);
  --house-rampa-2: var(--tblr-green);
  --house-rampa-3: var(--tblr-yellow);
  --house-rampa-4: var(--tblr-orange);
  --house-rampa-5: var(--tblr-red);

  /* Series sin significado propio (comparar fuentes, p. ej.), en este orden y
     sin ciclar: una 5.ª serie va a "Otros" o a gráficas pequeñas. Validado
     para daltonismo en claro y oscuro: 1-3 se distinguen siempre; 4 se
     confunde con 1 en protanopía, así que con 4 series leyenda y etiqueta
     directa en cada línea. */
  --house-serie-1: var(--tblr-blue);
  --house-serie-2: var(--tblr-orange);
  --house-serie-3: var(--tblr-teal);
  --house-serie-4: var(--tblr-purple);
}

:root {
  /* Superficie oscura del hero: lo único que Tabler no tiene */
  --house-hero-inicio: #182433;
  --house-hero-fin: #0f1926;
  --house-tinta: #fff;
  --house-tinta-suave: rgb(255 255 255 / .75);
  --house-tinta-tenue: rgb(255 255 255 / .65);
  --house-borde-oscuro: rgb(255 255 255 / .12);
  --house-poso: rgb(0 0 0 / .28);
  --house-trama: rgb(255 255 255 / .035);
  --house-acento-oscuro: var(--house-tinta-suave);

  /* Radios y aire: los de Tabler, por su nombre */
  --house-radio: var(--tblr-border-radius-lg);
  --house-radio-pildora: var(--tblr-border-radius-pill);
  --house-aire: var(--tblr-spacer-3);
  --house-aire-ancho: var(--tblr-spacer-4);
  --house-aire-amplio: calc(2 * var(--tblr-spacer-4));

  /* Medidas de composición (módulos) */
  --house-panel-lateral: 440px;
  --house-cajon-alto: 82dvh;
  --house-acceso-panel: 28rem;
  --house-acceso-interior: 22rem;
  --house-logo-alto: 2rem;
  --house-hero-alto-movil: 13.75rem;
  --house-buscador-ancho: 18rem;
  --house-menu-alto: 15rem;
  --house-grafo-alto: 26rem;
  --house-grafo-alto-movil: 18rem;
  --house-lista-alto-movil: 22rem;
  --house-json-alto: 60vh;
}

/* Corrección: 1.6.1 sigue sin proteger .avatar del encogido flex
   (medido: 23-26px en vez de 32px en la rejilla de apps a 390px). */
.avatar { flex-shrink: 0; }

/* Corrección (D3): Tabler 1.6.1 oculta .nav-link-icon entre md y lg en el
   navbar horizontal; la casa lo deja visible a todos los anchos. Mismo
   selector que Tabler: gana por ir después, sin !important. "inline" es el
   valor que tiene a los demás anchos (dentro del .nav-link flex). */
@media (min-width: 768px) and (max-width: 991.98px) {
  .navbar-expand-md:not(.navbar-vertical) .navbar-nav .nav-link-icon { display: inline; }
}

/* Anchos y altos de offcanvas de la casa: clase sobre el .offcanvas de Tabler */
.offcanvas.house-panel-lateral { --tblr-offcanvas-width: var(--house-panel-lateral); }
.offcanvas.house-cajon { --tblr-offcanvas-height: var(--house-cajon-alto); }
/* Tabler no limita el ancho del offcanvas: en móvil, panel lateral a todo el ancho */
@media (max-width: 575.98px) {
  .offcanvas.house-panel-lateral { --tblr-offcanvas-width: 100%; }
}

/* <pre> que respeta saltos y ajusta líneas largas (.text-wrap se come los saltos) */
.house-pre-ajustado { white-space: pre-wrap; }
