/**
 * CERP (ChilERP) - Google Material 3 / MUI X Theme Tokens & AG Grid / ECharts Styles
 * Desarrollado por SCHUBIGER.CL (https://schubiger.cl)
 * Vigencia: 01-09-2026
 */

/* =========================================================================
   1. CSS VARIABLES (MATERIAL 3 & GOOGLE WORKSPACE)
   ========================================================================= */
:root {
  --mui-primary: #0b57d0;
  --mui-primary-hover: #0842a0;
  --mui-primary-container: #d3e3fd;
  --mui-on-primary-container: #041e49;
  --mui-secondary: #00639b;
  --mui-surface: #ffffff;
  --mui-surface-variant: #f1f5f9;
  --mui-background: #f8fafc;
  --mui-on-surface: #1f2937;
  --mui-outline: #cbd5e1;
  --mui-radius-sm: 8px;
  --mui-radius-md: 14px;
  --mui-radius-lg: 20px;
  --mui-radius-full: 9999px;
  --mui-shadow-1: 0 1px 3px rgba(60,64,67,0.08), 0 1px 2px rgba(60,64,67,0.04);
  --mui-shadow-2: 0 4px 6px -1px rgba(0,0,0,0.07), 0 2px 4px -1px rgba(0,0,0,0.04);
  --mui-shadow-3: 0 10px 15px -3px rgba(0,0,0,0.08), 0 4px 6px -2px rgba(0,0,0,0.03);
}

/* =========================================================================
   2. AG GRID CUSTOM MATERIAL THEME
   ========================================================================= */
.ag-theme-cerp {
  --ag-font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --ag-font-size: 13.5px;
  --ag-background-color: #ffffff;
  --ag-header-background-color: #f8fafc;
  --ag-header-foreground-color: #475569;
  --ag-header-cell-hover-background-color: #f1f5f9;
  --ag-border-color: #e2e8f0;
  --ag-row-border-color: #f1f5f9;
  --ag-row-hover-color: #f8fafc;
  --ag-selected-row-background-color: #eff6ff;
  --ag-odd-row-background-color: #ffffff;
  --ag-borders: solid 1px;
  --ag-border-radius: 12px;
  --ag-cell-horizontal-padding: 16px;
  --ag-header-height: 44px;
  --ag-row-height: 48px;
}

.ag-theme-cerp .ag-root-wrapper {
  border-radius: var(--mui-radius-md);
  border: 1px solid #e2e8f0;
  box-shadow: var(--mui-shadow-1);
  overflow: hidden;
}

.ag-theme-cerp .ag-header-cell-label {
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.ag-theme-cerp .ag-paging-panel {
  background: #f8fafc;
  border-top: 1px solid #e2e8f0;
  padding: 10px 16px;
  font-size: 12.5px;
  color: #64748b;
}

.ag-theme-cerp .ag-paging-button {
  border-radius: 6px;
  color: #0b57d0;
}

/* =========================================================================
   3. REACT MUI X DATA CARD WIDGETS
   ========================================================================= */
.cerp-mui-kpi-card {
  background: #ffffff;
  border-radius: var(--mui-radius-md);
  border: 1px solid #e2e8f0;
  padding: 20px 22px;
  box-shadow: var(--mui-shadow-1);
  transition: all 0.2s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.cerp-mui-kpi-card:hover {
  box-shadow: var(--mui-shadow-2);
  transform: translateY(-2px);
  border-color: #cbd5e1;
}

.cerp-mui-kpi-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}

.cerp-mui-kpi-title {
  font-size: 13px;
  font-weight: 600;
  color: #64748b;
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.cerp-mui-kpi-value {
  font-size: 26px;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: -0.5px;
  line-height: 1.1;
}

.cerp-mui-kpi-badge {
  font-size: 11.5px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 6px;
}

.cerp-mui-kpi-badge.up {
  background: #dcfce7;
  color: #15803d;
}

.cerp-mui-kpi-badge.neutral {
  background: #f1f5f9;
  color: #475569;
}

/* =========================================================================
   4. APACHE ECHARTS CONTAINERS
   ========================================================================= */
.cerp-echarts-container {
  background: #ffffff;
  border-radius: var(--mui-radius-md);
  border: 1px solid #e2e8f0;
  box-shadow: var(--mui-shadow-1);
  padding: 20px 22px;
  margin-bottom: 20px;
  transition: box-shadow 0.2s ease;
}

.cerp-echarts-container:hover {
  box-shadow: var(--mui-shadow-2);
}

.cerp-echarts-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 12px;
}

.cerp-echarts-title {
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.cerp-echarts-chart {
  width: 100%;
  height: 320px;
}

/* =========================================================================
   5. MODO OSCURO (DARK THEME MUI X / AG GRID / ECHARTS)
   ========================================================================= */
body.cerp-theme-dark .ag-theme-cerp {
  --ag-background-color: #1e293b;
  --ag-header-background-color: #0f172a;
  --ag-header-foreground-color: #94a3b8;
  --ag-header-cell-hover-background-color: #1e293b;
  --ag-border-color: #334155;
  --ag-row-border-color: #334155;
  --ag-row-hover-color: #0f172a;
  --ag-selected-row-background-color: #1e3a8a;
  --ag-odd-row-background-color: #1e293b;
  --ag-foreground-color: #f8fafc;
}

body.cerp-theme-dark .ag-theme-cerp .ag-paging-panel {
  background: #0f172a;
  border-top-color: #334155;
  color: #94a3b8;
}

body.cerp-theme-dark .cerp-mui-kpi-card,
body.cerp-theme-dark .cerp-echarts-container {
  background: #1e293b;
  border-color: #334155;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.4);
}

body.cerp-theme-dark .cerp-mui-kpi-value,
body.cerp-theme-dark .cerp-echarts-title {
  color: #ffffff;
}

body.cerp-theme-dark .cerp-echarts-header {
  border-bottom-color: #334155;
}
