/*
 * Paleta corporativa Fernández Sera
 * Sobrescribe variables del tema Sneat sin recompilar core.css
 */

:root,
[data-bs-theme="light"] {
  /* Marca — rojos */
  --bs-purple: #c41415;
  --bs-red: #a61916;
  --bs-primary: #c41415;
  --bs-danger: #a61916;
  --bs-primary-rgb: 196, 20, 21;
  --bs-danger-rgb: 166, 25, 22;

  /* Neutros */
  --bs-black: #2b2b2b;
  --bs-black-rgb: 43, 43, 43;
  --bs-dark: #2b2b2b;
  --bs-dark-rgb: 43, 43, 43;
  --bs-secondary: #6b7280;
  --bs-secondary-rgb: 107, 114, 128;
  --bs-gray: #6b7280;
  --bs-gray-rgb: 107, 114, 128;
  --bs-light: #f3f4f6;
  --bs-light-rgb: 243, 244, 246;

  --bs-gray-25: #f5f5f9;
  --bs-gray-60: #eeeff3;
  --bs-gray-80: #e8e9ef;
  --bs-gray-100: #e5e7eb;
  --bs-gray-200: #d1d5db;
  --bs-gray-300: #b8bec8;
  --bs-gray-400: #9ca3af;
  --bs-gray-500: #6b7280;
  --bs-gray-600: #6b7280;
  --bs-gray-700: #4b5563;
  --bs-gray-800: #374151;
  --bs-gray-900: #111111;

  /* Énfasis primary */
  --bs-primary-text-emphasis: #7a0d0d;
  --bs-primary-bg-subtle: #fde8e8;
  --bs-primary-border-subtle: #f5b8b8;
  --bs-danger-text-emphasis: #7a0d0d;
  --bs-danger-bg-subtle: #fde8e8;
  --bs-danger-border-subtle: #f0a8a8;

  /* Cuerpo y superficies — gris leve (canvas) + tarjetas blancas */
  --bs-body-color: #4b5563;
  --bs-body-color-rgb: 75, 85, 99;
  --bs-body-bg: #f5f5f9;
  --bs-body-bg-rgb: 245, 245, 249;
  --bs-emphasis-color: #111111;
  --bs-emphasis-color-rgb: 17, 17, 17;
  --bs-secondary-color: #6b7280;
  --bs-secondary-color-rgb: 107, 114, 128;
  --bs-secondary-bg: #f3f4f6;
  --bs-secondary-bg-rgb: 243, 244, 246;
  --bs-tertiary-bg: #eceef1;
  --bs-tertiary-bg-rgb: 236, 238, 241;
  --bs-heading-color: #111111;

  /* Enlaces */
  --bs-link-color: #c41415;
  --bs-link-color-rgb: 196, 20, 21;
  --bs-link-hover-color: #d30f15;
  --bs-link-hover-color-rgb: 211, 15, 21;

  /* Bordes y sombras */
  --bs-border-color: #e5e7eb;
  --bs-border-color-translucent: rgba(43, 43, 43, 0.12);
  --bs-box-shadow: 0 0.1875rem 0.5rem 0 rgba(43, 43, 43, 0.1);
  --bs-box-shadow-sm: 0 0.125rem 0.375rem 0 rgba(43, 43, 43, 0.08);
  --bs-box-shadow-lg: 0 0.25rem 0.75rem 0 rgba(43, 43, 43, 0.14);

  /* Layout Sneat */
  --bs-base-color: #2b2b2b;
  --bs-base-color-rgb: 43, 43, 43;
  --bs-paper-bg: #fff;
  --bs-paper-bg-rgb: 255, 255, 255;
  --bs-navbar-box-shadow: 0 0.125rem 0.375rem rgba(43, 43, 43, 0.08);
  --bs-form-invalid-color: #a61916;
  --bs-form-invalid-border-color: #a61916;
}

[data-bs-theme="dark"] {
  --bs-primary: #d30f15;
  --bs-danger: #a61916;
  --bs-primary-rgb: 211, 15, 21;
  --bs-danger-rgb: 166, 25, 22;

  --bs-primary-text-emphasis: #f5a3a3;
  --bs-primary-bg-subtle: #3d1515;
  --bs-primary-border-subtle: #5c1a1a;
  --bs-danger-text-emphasis: #f0a0a0;
  --bs-danger-bg-subtle: #351212;
  --bs-danger-border-subtle: #4d1818;

  --bs-body-color: #d1d5db;
  --bs-body-color-rgb: 209, 213, 219;
  --bs-body-bg: #111111;
  --bs-body-bg-rgb: 17, 17, 17;
  --bs-emphasis-color: #fdfdfb;
  --bs-emphasis-color-rgb: 253, 253, 251;
  --bs-secondary-color: #9ca3af;
  --bs-secondary-color-rgb: 156, 163, 175;
  --bs-secondary-bg: #374151;
  --bs-secondary-bg-rgb: 55, 65, 81;
  --bs-heading-color: #fdfdfb;

  --bs-link-color: #d30f15;
  --bs-link-color-rgb: 211, 15, 21;
  --bs-link-hover-color: #f04449;
  --bs-link-hover-color-rgb: 240, 68, 73;

  --bs-border-color: #374151;
  --bs-base-color: #fdfdfb;
  --bs-base-color-rgb: 253, 253, 251;
  --bs-paper-bg: #2b2b2b;
  --bs-paper-bg-rgb: 43, 43, 43;
  --bs-navbar-box-shadow: 0 0 10px #1f1f1f;
}

.apexcharts-theme-dark {
  --bs-primary: #d30f15;
  --bs-danger: #a61916;
  --bs-border-color: #374151;
  --bs-body-color: #d1d5db;
  --bs-heading-color: #fdfdfb;
  --bs-paper-bg: #2b2b2b;
  --bs-base-color: #fdfdfb;
  --bs-secondary-color: #9ca3af;
}

/* Botones y estados hover con acento corporativo */
.btn-primary {
  --bs-btn-bg: #c41415;
  --bs-btn-border-color: #c41415;
  --bs-btn-hover-bg: #d30f15;
  --bs-btn-hover-border-color: #d30f15;
  --bs-btn-active-bg: #a61916;
  --bs-btn-active-border-color: #a61916;
  --bs-btn-focus-shadow-rgb: 196, 20, 21;
}

[data-bs-theme="dark"] .btn-primary {
  --bs-btn-bg: #d30f15;
  --bs-btn-border-color: #d30f15;
  --bs-btn-hover-bg: #f04449;
  --bs-btn-hover-border-color: #f04449;
  --bs-btn-active-bg: #c41415;
  --bs-btn-active-border-color: #c41415;
}

.btn-outline-primary {
  --bs-btn-color: #c41415;
  --bs-btn-border-color: #c41415;
  --bs-btn-hover-bg: #c41415;
  --bs-btn-hover-border-color: #c41415;
  --bs-btn-active-bg: #a61916;
  --bs-btn-active-border-color: #a61916;
}

.text-primary {
  color: #c41415 !important;
}

.bg-primary {
  background-color: #c41415 !important;
}

.border-primary {
  border-color: #c41415 !important;
}

.page-item.active .page-link,
.page-item.active .page-link:hover,
.page-item.active .page-link:focus {
  background-color: #c41415;
  border-color: #c41415;
}

.form-check-input:checked {
  background-color: #c41415;
  border-color: #c41415;
}

.form-check-input:focus {
  border-color: #d30f15;
  box-shadow: 0 0 0 0.15rem rgba(196, 20, 21, 0.25);
}

.progress-bar {
  background-color: #c41415;
}

/* Logo corporativo FS */
.app-brand-logo .fs-brand-logo {
  display: block;
  width: 2rem;
  height: 2rem;
  object-fit: contain;
  background: transparent;
}

.app-brand-logo .fs-brand-mark {
  display: none;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  background: #c41415;
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1;
}

.authentication-wrapper .app-brand-logo .fs-brand-logo {
  width: 2.25rem;
  height: 2.25rem;
}

.authentication-wrapper .app-brand-logo .fs-brand-mark {
  display: none !important;
}

/* Marca lateral — título junto al logo (menú expandido) */
.menu .app-brand.demo {
  position: relative;
  height: auto;
  min-height: 64px;
  gap: 0.25rem;
  padding-inline-end: 2.75rem !important;
}

.menu .app-brand .app-brand-link {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  align-items: center;
}

.menu .app-brand .app-brand-logo {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.menu .app-brand .app-brand-link .app-brand-text,
.layout-navbar .app-brand .app-brand-text,
.layout-menu .app-brand .app-brand-logo ~ .app-brand-text {
  opacity: 1;
  visibility: visible;
  color: var(--bs-heading-color) !important;
  flex-shrink: 1;
  min-width: 0;
  max-width: 9.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.menu .app-brand .app-brand-text.demo {
  font-size: 1.0625rem;
  letter-spacing: 0;
  line-height: 1.2;
}

.layout-navbar .app-brand .app-brand-text {
  font-size: 1rem;
}

/* Menú contraído: monograma FS centrado (el PNG completo se ve mal en el ancho estrecho) */
@media (min-width: 1200px) {
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .app-brand.demo,
  .menu-collapsed:not(:hover) .app-brand.demo {
    padding-inline: 0 !important;
    justify-content: center;
  }

  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .app-brand .app-brand-link,
  .menu-collapsed:not(:hover) .app-brand .app-brand-link {
    flex: 0 0 auto;
    justify-content: center;
    overflow: visible;
    gap: 0 !important;
  }

  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .app-brand .app-brand-logo ~ .app-brand-text,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .app-brand .app-brand-text,
  .menu-collapsed:not(:hover) .app-brand .app-brand-logo ~ .app-brand-text,
  .menu-collapsed:not(:hover) .app-brand .app-brand-text {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    max-width: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .app-brand-logo .fs-brand-logo-full,
  .menu-collapsed:not(:hover) .app-brand-logo .fs-brand-logo-full {
    display: none !important;
  }

  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .app-brand-logo .fs-brand-mark,
  .menu-collapsed:not(:hover) .app-brand-logo .fs-brand-mark {
    display: inline-flex !important;
  }

  /* Iconos de menú: centrados y sin barra activa cortando el icono */
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .menu-inner > .menu-item.active::before {
    display: none;
  }

  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu .menu-inner > .menu-item > .menu-link {
    justify-content: center;
  }
}

html[data-bs-theme="light"] .authentication-wrapper.authentication-basic {
  background-color: var(--bs-body-bg);
}

/* Contraste layout: fondo gris + contenedores blancos (estilo Sneat) */
html[data-bs-theme="light"] .layout-wrapper,
html[data-bs-theme="light"] .layout-page,
html[data-bs-theme="light"] .content-wrapper {
  background-color: var(--bs-body-bg);
}

html[data-bs-theme="light"] .layout-menu .menu,
html[data-bs-theme="light"] #layout-menu {
  background-color: var(--bs-paper-bg);
}

html[data-bs-theme="light"] .layout-navbar.navbar-detached {
  background-color: var(--bs-paper-bg);
}

html[data-bs-theme="light"] .card {
  border: 1px solid var(--bs-border-color);
  box-shadow: var(--bs-box-shadow-sm);
}

html[data-bs-theme="light"] .card .card-header {
  background-color: transparent;
  border-bottom-color: var(--bs-border-color);
}
