body{

background:#f4f7fb;
font-family:Arial,Helvetica,sans-serif;

}


.gzl-indicador-container{

max-width:1200px;
margin:auto;
padding:25px;

}


/* HERO */

.gzl-indicador-hero{

background:linear-gradient(135deg,#002856,#0093C9);
color:white;

padding:30px;

border-radius:14px;

box-shadow:0 10px 25px rgba(0,0,0,0.15);

}

.hero-title{

font-size:18px;
opacity:.9;

}

.hero-valor{

font-size:46px;
font-weight:700;
margin-top:8px;

}

.hero-moneda{

font-size:18px;
opacity:.8;

}

.hero-fecha{

font-size:13px;
opacity:.8;

}


/* GRID */

.gzl-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:15px;

margin-top:20px;

}


.gzl-mini-card{

background:white;

border-radius:10px;

padding:18px;

box-shadow:0 4px 12px rgba(0,0,0,0.05);

}


.gzl-mini-titulo{

font-size:13px;
color:#666;

}


.gzl-mini-valor{

font-size:22px;
font-weight:600;
color:#002856;

}


/* CARDS */

.gzl-card{

background:white;

margin-top:20px;

padding:20px;

border-radius:12px;

box-shadow:0 4px 15px rgba(0,0,0,0.05);


}

.gzl-chart-card{

background:white;

margin-top:20px;

padding:20px;

border-radius:12px;

box-shadow:0 4px 15px rgba(0,0,0,0.05);

}


.gzl-card-title{

font-size:18px;
font-weight:600;

margin-bottom:10px;

}


.gzl-info{

color:#666;
font-size:13px;

margin-bottom:20px;

}


/* TABLAS */

.tc-table{
width:100%;
border-collapse:collapse;
text-align:left;
}

.tc-table th{
background:#002856;
color:white;
text-align:left;
padding:10px;
}

.tc-table td{
padding:10px;
border-bottom:1px solid #eee;
text-align:left;
}

.tc-table tr:hover{
background:#f1f6ff;
}

.tc-valor{
font-weight:600;
}

.tc-table td{
text-align:left;
}

.tc-table td span{
text-align:left;
}


/* BADGES */

.badge-publicacion{

background:#0093C9;
color:white;

padding:3px 8px;
border-radius:6px;
font-size:12px;

}

.badge-arrastre{

background:#6b7280;
color:white;

padding:3px 8px;
border-radius:6px;
font-size:12px;

}


/* FILTROS */

.historial-filtros{

display:flex;
gap:10px;
flex-wrap:wrap;

margin-bottom:10px;

}

.filtro-select{

padding:8px;

border-radius:6px;

border:1px solid #ccc;

}


/* HISTORIAL */

.historial-table{

width:100%;
border-collapse:collapse;

}

.historial-table th{

background:#002856;
color:white;
padding:10px;

}

.historial-table td{

padding:10px;
border-bottom:1px solid #eee;

}


/* BOTONES */

.btn-exportar{

background:#0093C9;
color:white;

border:none;

padding:8px 15px;

border-radius:6px;

cursor:pointer;

}

.btn-exportar:hover{

background:#0077a6;

}
/* Corrige el espacio superior dentro del panel de uso frecuente */

.gzl-indicador-container{
margin-top:0;
padding-top:0;
}

/* elimina línea blanca de contenedores vacíos */

.gzl-indicador-container:first-child{
margin-top:0;
}
.gzl-chart-card canvas{
max-height:320px;
}

.btn-gzl{
background:#0f2f76 !important;
color:white !important;
border:none !important;
padding:10px 16px;
border-radius:8px;
font-size:13px;
cursor:pointer;
transition:.2s;
font-weight:500;
display:inline-block;
}

.btn-gzl:hover{
background:#42a5f5 !important;
}
.dashboard-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
gap:28px;
}
.dashboard-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
gap:28px;
}

/* ================================
RESUMEN INDICADORES DASHBOARD
================================ */

.gzl-resumen-dashboard{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:24px;

margin-top:25px;

align-items:stretch;

}

/* tarjetas del dashboard */

.gzl-resumen-dashboard .gzl-card{

display:flex;

flex-direction:column;

justify-content:space-between;

min-height:360px;

}

/* botón siempre abajo */

.gzl-resumen-dashboard .btn-gzl{

margin-top:auto;

}

/* tablas mini */

.gzl-resumen-dashboard .tc-table{

font-size:13px;

}

/* descripción */

.mini-desc{

margin-top:12px;

padding-left:16px;

font-size:13px;

color:#6b7280;

}

/* valor grande */

.hero-valor{

font-size:32px;

font-weight:700;

margin:8px 0;

}
@media(max-width:1200px){

.gzl-resumen-dashboard{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:700px){

.gzl-resumen-dashboard{
grid-template-columns:1fr;
}

}

.sem-badge {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            padding: 2px 7px;
            border-radius: 12px;
            font-size: 10px;
            font-weight: 700;
            white-space: nowrap;
            border: 1px solid rgba(0,0,0,.06);
        }
.sem-dot {
            width: 7px; height: 7px;
            border-radius: 50%;
            flex-shrink: 0;
        }

/* Matriz INPC año × mes */
.inpc-matriz th,
.inpc-matriz td {
    text-align: center;
    font-size: 12px;
    padding: 7px 6px;
    white-space: nowrap;
}
.inpc-matriz th:first-child,
.inpc-matriz td:first-child {
    text-align: left;
}
.inpc-matriz .celda-vacia {
    color: #bbb;
}

