/* /assets/css/global.css - Integralis Ecosystem Styles */

:root {
  /* Marca Oficial Integralis*/
  --integralis: #7c6ff3;
  --integralis-dark: #06245C;
  --integralis-hover: #04328a;
  
  /* Neutros y Secundarios */
  --color-white: #FFFFFF;
  --color-gray-light: #CCCCCC;
  --color-gray: #808080;
  --color-dark: #333333;
  --color-black: #000000;
  
  /* Configuración Tema Claro (Default) */
  --bg-main: var(--color-white);
  --bg-card: var(--color-white);
  --border-color: var(--color-gray-light);
  --text-main: var(--color-dark);
  --text-muted: var(--color-gray);
  --danger: #e74c3c;
  --warning: #f39c12;
  --shadow: 0 4px 12px rgba(5, 63, 171, 0.1);
  --topbar-bg: var(--integralis-dark);
  --topbar-text: var(--color-white);
  --bottomnav-bg: var(--color-white);
}

[data-theme="dark"] {
  /* Configuración Tema Oscuro */
  --bg-main: var(--color-black);
  --bg-card: #121212;
  --border-color: var(--color-dark);
  --text-main: var(--color-white);
  --text-muted: var(--color-gray);
  --shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
  --topbar-bg: var(--integralis-dark);
  --topbar-text: var(--color-white);
  --bottomnav-bg: #121212;
}

 @font-face {
      font-family: 'Google Sans';
      src: url('/assets/fonts/google-sans.ttf') format('truetype');
      font-weight: 400;
      font-style: normal;
      font-display: swap;
    }

    @font-face {
      font-family: 'Google Sans';
      src: url('/assets/fonts/google-sans-bold.ttf') format('truetype');
      font-weight: 700;
      font-style: normal;
      font-display: swap;
    }

/* 2. Asignación tipográfica global preservando íconos */
body, input, button, select, textarea, p, span, h1, h2, h3, h4, h5, h6 {
    font-family: 'Google Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* 3. Excepción explícita para restaurar Font Awesome */
.fa, .fas, .far, .fal, .fad, .fab, .fa-solid, .fa-regular, .fa-brands {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 900;
}


* { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Google Sans', sans-serif !important; }
body { 
  background-color: var(--bg-main); 
  color: var(--text-main); 
  min-height: 100vh; 
  overflow-x: hidden;
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* Tarjetas y Contenedores */
.card-integralis {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 24px;
  box-shadow: var(--shadow);
  transition: background-color 0.3s ease, border-color 0.3s ease;
}

/* Formularios */
.form-group { margin-bottom: 16px; text-align: left; }
.form-group label { display: block; font-size: 0.88rem; font-weight: 600; margin-bottom: 6px; color: var(--text-main); }
.form-control {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  background: var(--bg-card);
  font-size: 0.95rem;
  color: var(--text-main);
  outline: none;
  transition: border-color 0.2s;
}
.form-control:focus { border-color: var(--integralis); }

/* Botones con Color Oficial */
.btn-integralis {
  background: var(--integralis) !important;
  color: var(--color-white) !important;
  border: none;
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  width: 100%;
  transition: background 0.2s;
}
.btn-integralis:hover { background: var(--integralis-hover) !important; }

/* Botón Modo Demo */
.btn-demo-mode {
  background:  var(--integralis) !important;
  color: var(--integralis);
  border: 2px solid var(--integralis);
  padding: 10px 20px;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  width: 100%;
  transition: all 0.2s ease;
  font-size: 0.85rem;
}
.btn-demo-mode:hover {
  background: var(--integralis);
  color: var(--color-white);
}

/* /assets/css/global.css */

/* Importante: Proteger la fuente de FontAwesome contra reseteos globales */
i.fa-solid,
i.fa-regular,
i.fa-brands,
.fa-solid,
.fas {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important; /* Requerido para renderizado de íconos sólidos */
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
}


#spa-dinamico-wrapper { padding-bottom: 75px; }