/* ============================================================
   Hub Lite — overrides locales
   Tailwind y Flowbite cargan vía CDN en el layout.
   Aquí van solo ajustes finos y utilidades que Tailwind no cubre.
   ============================================================ */

:root {
  /* Theme alineado con logo HUB Lite (slate-300 #CBD5E1 = color principal del logo) */
  --hub-bg:        #f8fafc;  /* slate-50 — fondo principal */
  --hub-surface:   #ffffff;  /* blanco — cards */
  --hub-surface-2: #f1f5f9;  /* slate-100 — elevado */
  --hub-border:    #e2e8f0;  /* slate-200 — bordes suaves */
  --hub-accent:    #cbd5e1;  /* slate-300 — color del logo, dividers/acentos */
  --hub-text:      #0f172a;  /* slate-900 — texto principal */
  --hub-muted:     #64748b;  /* slate-500 — texto secundario */
}

html, body {
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::-webkit-scrollbar         { width: 10px; height: 10px; }
::-webkit-scrollbar-track   { background: #f1f5f9; }
::-webkit-scrollbar-thumb   { background: #cbd5e1; border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-text-fill-color: #0f172a;
  -webkit-box-shadow: 0 0 0 1000px #ffffff inset;
  caret-color: #0f172a;
}

[x-cloak] { display: none !important; }

/* Tailwind se carga por CDN (cdn.tailwindcss.com) que NO procesa @apply en
   archivos .css externos. Por eso estos botones se definen en CSS plano. */
.btn-primary,
.btn-secondary,
.btn-danger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid transparent;
  transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
              border-color    150ms cubic-bezier(0.4, 0, 0.2, 1),
              color           150ms cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow      150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-primary:disabled,
.btn-secondary:disabled,
.btn-danger:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.btn-primary       { background-color: #1582f5; color: #ffffff; }   /* brand-600  */
.btn-primary:hover { background-color: #1269e0; }                   /* brand-700  */

.btn-secondary       { background-color: #1e293b; color: #e2e8f0; } /* slate-800  */
.btn-secondary:hover { background-color: #334155; }                 /* slate-700  */

.btn-danger       { background-color: #e11d48; color: #ffffff; }    /* rose-600   */
.btn-danger:hover { background-color: #be123c; }                    /* rose-700   */

@media print {
  aside, header, footer, .no-print { display: none !important; }
  main { margin: 0 !important; padding: 0 !important; }
}
