/* 5. MÓDULO: DASHBOARD / HOME (AJUSTADO) */
.dashboard-header { margin-bottom: 1.5rem; }
.dashboard-greeting { font-weight: 300; font-size: 1.6rem; color: #444; margin: 0; }
.dashboard-user-name { font-weight: 700; color: #222; }

/* Hero Card (Noticia Principal) - ALTURA REDUCIDA */
.hero-card {
    height: 280px; /* Reducido de 400px a 280px */
    border: none;
    position: relative;
    margin-bottom: 1.5rem;
    justify-content: flex-end;
}
.hero-bg {
    width: 100%; height: 100%; object-fit: cover;
    position: absolute; top: 0; left: 0;
    transition: transform 0.5s ease;
}
.hero-card:hover .hero-bg { transform: scale(1.03); }
.hero-fallback-gradient {
    background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
}
.hero-content {
    position: relative; z-index: 2; 
    padding: 1.5rem; /* Padding reducido */
    width: 100%;
    background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, transparent 100%);
    color: white; pointer-events: none;
}
.hero-link-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 10; }
.hero-badge {
    background: var(--primary); color: white; padding: 3px 8px;
    border-radius: 4px; font-family: var(--font-ui); font-size: 0.7rem; font-weight: 700; text-transform: uppercase;
    display: inline-block; margin-bottom: 0.4rem;
}
.hero-title { font-size: 1.6rem; margin: 0.3rem 0; line-height: 1.1; text-shadow: 0 2px 4px rgba(0,0,0,0.6); }

/* Noticias Secundarias Grid */
.news-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); /* Tarjetas un poco más angostas */
    gap: 1.25rem;
}
.news-img-wrapper {
    height: 140px; /* Reducido de 180px a 140px */
    width: 100%; overflow: hidden; background-color: #eee;
}
.news-img { width: 100%; height: 100%; object-fit: cover; }
.news-img-placeholder {
    width: 100%; height: 140px; background: #eee;
    display: flex; align-items: center; justify-content: center; font-size: 2rem; color: #ccc;
}
.news-title { font-size: 1rem; margin: 0.5rem 0; line-height: 1.3; font-weight: 700; }
.news-title a { color: var(--text-main); }
.news-title a:hover { color: var(--primary); }

/* Widgets */
.widget-card { padding: var(--card-padding); margin-bottom: 1.25rem; border-left: 4px solid transparent;height: auto !important; min-height: auto !important; }
.widget-title { font-size: 1rem; display: flex; align-items: center; gap: 0.5rem; margin-bottom: 0.75rem; }
.widget-stat { font-size: 2rem; font-weight: 800; display: block; line-height: 1; margin-bottom: 0.25rem; font-family: var(--font-title); }
.widget-link { margin-top: auto; font-family: var(--font-ui); font-weight: 600; display: inline-flex; align-items: center; gap: 5px; font-size: 0.9rem; }

.widget-notifications { border-left-color: #6f42c1; }
.text-notification { color: #6f42c1 !important; }
.widget-support { border-left-color: #17a2b8; }
.text-support { color: #17a2b8 !important; }


.col-lg-3 .widget-card {
    padding: 0.8rem 1rem !important; /* Más ajustado que el estándar de 1.25rem */
    margin-bottom: 1rem !important;
}

.widget-title i {
    font-size: 1.1rem;
}

