/* Estilos propios del sistema APS124CCFP, pensados para complementar Bootstrap 5 (no reemplazarlo). */
body { font-family: Arial, Helvetica, sans-serif; background: #f4f6f8; color: #222; }
.contenedor { max-width: 950px; margin: 20px auto; background: #fff; padding: 25px 30px; border-radius: 6px; box-shadow: 0 1px 4px rgba(0,0,0,.1); }
h1 { color: #003893; border-bottom: 3px solid #FFCD00; padding-bottom: 8px; }
.ayuda { background: #eef4ff; border-left: 4px solid #003893; padding: 10px 14px; font-size: 14px; border-radius: 4px; }

/* -------- Dashboard (index.php) -------- */
.dash-header { display: flex; align-items: center; gap: 14px; border-bottom: 3px solid #FFCD00; padding-bottom: 14px; margin-bottom: 22px; }
.dash-header .franja { width: 10px; height: 46px; border-radius: 4px; background: linear-gradient(180deg,#FFCD00 0 33%,#003893 33% 66%,#C8102E 66% 100%); }
.dash-header h1 { border: none; margin: 0; padding: 0; }
.dash-header p { margin: 2px 0 0; color: #555; font-size: 13px; }

.stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 14px; margin-bottom: 28px; }
.stat-card { background: #fff; border: 1px solid #e5e9f0; border-left: 5px solid #003893; border-radius: 6px; padding: 14px 16px; }
.stat-card .num { font-size: 28px; font-weight: bold; color: #003893; line-height: 1.1; }
.stat-card .lbl { font-size: 12px; color: #666; margin-top: 4px; }
.stat-card.amarillo { border-left-color: #FFCD00; }
.stat-card.rojo { border-left-color: #C8102E; }
.stat-card.verde { border-left-color: #1a7a1a; }

.acciones-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 16px; margin-bottom: 10px; }
.accion-card { display: block; background: #fff; border: 1px solid #e5e9f0; border-radius: 8px; padding: 18px; text-decoration: none; color: #222; transition: box-shadow .15s, transform .15s; }
.accion-card:hover { box-shadow: 0 4px 14px rgba(0,56,147,.15); transform: translateY(-2px); }
.accion-card .icono { width: 38px; height: 38px; margin-bottom: 10px; }
.accion-card h3 { margin: 0 0 6px; color: #003893; font-size: 16px; }
.accion-card p { margin: 0; font-size: 13px; color: #666; }
.accion-card.destacada { border-top: 4px solid #C8102E; }

.seccion-titulo { font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: #888; margin: 24px 0 10px; font-weight: bold; }

/* -------- Barra de usuario autenticado -------- */
.barra-usuario { background: #eef4ff; }

/* -------- Formularios Tipo 2 / Tipo 3 por secciones (wizard) -------- */
.paso-formulario h5 { color: #003893; border-bottom: 1px solid #e5e9f0; padding-bottom: 6px; }

/* -------- Responsive: telefonos -------- */
@media (max-width: 576px) {
    .contenedor { margin: 0; border-radius: 0; padding: 14px; box-shadow: none; }
    h1 { font-size: 1.3rem; }
    .stats-grid, .acciones-grid { grid-template-columns: 1fr; }
    .barra-usuario { flex-wrap: wrap; gap: 6px; }
    .acciones { flex-wrap: wrap; }
}
